
2019年C题:线路负载及故障检测装置+828006A
简介
2019年C题:线路负载及故障检测装置
简介:2019年C题:线路负载及故障检测装置开源协议
:Public Domain
描述
一、题目分析

1、电阻、电容和电感元件参数测量

DDS信号来自实验室自制高速AD-DA电路板,利用 DDS 对其施加一个正弦激励信号,通过高速ADC将标准电阻两边的电压信号波形用SPI传输给单片机STM32F407通信,单片机通过fft算法得到其实部和虚部,由于电阻、电容、电感的实部虚部不同,以此可以判断是什么元件,再根据实部虚部计算其值。
2、负载结构判断

首先DDS产生0-100khz步进10khz的正弦波,利用高速 ADC 对标准电阻两点进行同步采样,MCU用FFT算法计算出标准电阻两点电压,求出输出比输入的增益,得到幅频特性,通过对幅频特性的分析最终判断负载结构。
结构包含混联在内共有14种情况,我们组只能测10种,剩下的4种太特殊太难区分。
3、短路断路判断

题目要求的导线为网线,其电阻与其长度呈线性关系,因此可以用电流源将导线长度用电压差表示出来,但由于其电阻值非常小,小电流的电流源不能满足,且电流源本身受温漂的影响较大,单独测量导线两端的电压会十分不稳定,因此我们增加了一段标准线圈,将它的电压与待测导线两端的电压作比值,再拟合出短路距离和电压值的函数,即可得到对应的短路点位置。
断路判断比较简单,直接判断AB两端的电压差是否接近0V即可。
二、硬件设计思路
总体流程图:

1.电流源
我们采用了TINA-TI中的例程Voltage_to_Current中的500mA Electronic Load方案,以满足题目需求的大电流500mA,使几欧姆的导线电阻能转换成数百毫安级别的电压,便于ADC测量。

2.继电器和模拟开关
信号频率不高,继电器无需采用高速继电器,使用普通继电器即可,我们采用了HRAH-S六脚继电器,结构简单,方便控制

模拟开关采用CD4053,标准线圈两端电压差连入ax-bx,待测导线两端电压差连入ay-by,通过ao-bo公共输出。


3.放大器
由于电流源通过网线内阻产生的电压差较小,并且前级的模拟开关输出为差分信号,因此我们选择INA128低功耗精密仪表放大器将电压差放大5倍,尽可能接近ADS8691的最小量程。
其增益电阻选择如下表所示:


由于题目发挥部分中需要加入噪声,可在R8R9后下拉一个104电容形成无源低通滤波器。
4.直流ADC
由于题目发挥部分要求加入噪声,我们选用了内部自带低通滤波器的ADS8691,此类器件由 5V 模拟单电源供电,但支持 ±12.288V、±6.144V、±10.24V、±5.12V 和 ±2.56V 实际双极输入范围以及 0V 至 12.288V、0V 至 10.24V、0V 至
6.144V 和 0V 至 5.12V 单极输入范围。各输入范围的增益和偏移误差均可在特定数值范围内进行调节,确保直流精度较高。
通过前级的放大器,将直流电压放大至接近最精确的最小量程0V 至 5.12V。


5.高速ADDA
用于提供测量元件和结构所需的正弦信号,并采集标准电阻两端信号,考虑到要采集两路的信号,我们选择的都是双通道的ADDA芯片,主控使用FPGA EP4CE6E22C8进行控制。
ADC芯片采用ADS5553双通道、14 位、65MSPS,前级通过全差分放大器输入信号。

一旦信号被输入捕获,输入样本将通过一系列小分辨率进行顺序转换,并将输出合并到一个数字校正逻辑模块中。 时钟的上升沿和下降沿都用于每半个时钟周期在管道中传播样本。 此过程导致数据延迟为16.5个时钟周期,此后输出数据将以14位并行字的形式提供,并以二进制2的补码格式进行编码。

时序图:
可根据对应需求的输入信号频率选择前级差分放大器:

两个ADC的每一个都提供14的数据,采用二进制补码格式(D13至D0,D13为MSB,D0为LSB),数据就绪信号(CLKOUT)和超范围指示器(OVR) )等于1,当输出达到满量程极限时。 另外,提供输出使能控制(引脚48和52)以使输出处于三态。
参考电路来自ADS5553的datasheet。
芯片手册Dual 14 Bit, 65 MSPS ADC datasheet (ti.com.cn)
DAC芯片采用DAC5672,14-Bit 275 MSPS

具有两种由MODE引脚选择的工作模式。

电路设计参考DAC5672的datasheet:


芯片手册:Dual 14 Bit 275 MSPS DAC datasheet (Rev. D) (ti.com.cn)
设计电路和驱动时需要注意的问题:
1、需要设计一个供电稳定的电源,因为功率较大,我们的板子用久了FPGA都有点发烫了。
2、ADC输入阻抗匹配、DAC输出阻抗匹配。
3、ADC的采样的频率低的时候,输出的数据一直就是默认的值,因为ADC的输入端口连接着一个电容,所以信号只有频率比较高得时候才能够通过。
4、全差分运放的输出的电压,按道理来说输出的电压应该是以CMA或者是CMB对称的,但是实际上的输出电压最大值接近CMA、CMB,
先来个仿真看看情况

全差分运放输出电压和输入电压之间的关系
可以看到ADC的测量的电压
High-level input voltage 2.4V
Low-level input voltage 0.8V
Reference voltage
REFSEL 参考电压的选择端口
Reference select. 1 → EXT. REF; 0 → INT. REF
拉低了,就是默认输出正电压
内部参考的电压
Reference bottom voltage, VREFM 1.01V
Reference top voltage, VREFP 2.16V
使用singTap采样输入信号的波形,刚开始是因为输入信号的频率比较低,
采样的频率又比较高,2K的内存存储的数据不完整,看不出来实际波形。

三、软件设计思路

主函数,以1s为周期反复判断情况,短路优先级最高

测量距离函数,同时判断电压范围,以此判断是否为短路,若不是,返回0以判断其他状态

判断结构函数,ADC测得的波形进行fft后,对结构类型进行判断。
float z_standard[2],z_standard_module;//标准阻抗 实部+虚部
float RX,CX;//电阻值和电阻的寄生并联电容


FPGA DAC驱动模块 刷新地址、ROM读取数据、数据输出

设置DDS的输出频率

四、实物功能测试

测短路点:35cm 误差在1cm以内


扫频信号由FPGA提供:

详细测试见视频,满足题目的基本要求和发挥部分,符合题目说明,无需人工干预,装置能实时自动检测负载变化、故障报警和短路故障点定位。短路故障点位置显示稳定。

测试视频:
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程

评论