线性近似算法在介损测量中的应用
能不能通过改进软件算法提高过零时差比较的相位检测精度呢?实践证明,合理的算法确实对提高过零时差比较的相位检测精度有很大的帮助,实测数据接近西林电桥的检测精度。对前端模拟信号利用模拟加数字相结合进行滤波,加之合理的软件算法,在实际应用中收到了良好的效果。
整个系统的前端信号采样部分如下:
向量图如下
电力系统的容性设备在正常工作时会产生一定的泄露电流, 泄露电流中包含容性分量Ic和阻性分量Ir,容性分量对设备的安全运行不会产生危害,阻性分量产生有功功率,表现为设备发热,达到一定程度将危害设备的安全运行。Ir的大小是由容性设备的介质损耗即tgδ决定的,因此动态地监测介质损耗的变化是保障电力系统安全运行的一项重要措施。
由于过零时差比较检测的原始数据和设备的实际介损值不成线性,可以尝试用线性化近似代替,线性近似算法依据以下原理:
用CPLD器件EPM7160构建24位计数器,以下VHDL代码从略,外部时钟选10M,最大计时间T=167.8ms,一个工频周期为20ms,有充足的余量保证在一个工频周期内完成采样而计数器不回零,这样可以减少MCU的软件开销,相位分辨率接近0.1`,完全可满足要求。一个完整的采样周期是这样的:CT信号经由负变正过零触发,此时的上升沿将时间捕捉,接着PT信号经由负变正过零触发,此时的上升沿将时间捕捉,然后停止计数器并发出中断请求信号,MCU读取时间值并计算时间差,连续采样50次,取平均值。
假定介损处于上图中n1点时的相位时差为90000(δ=10度),n2点时的相位时差为60000(δ=50度),n3点时的相位时差为30000(δ=80度),理想情况下电流超前电压90度时相位时差为100000,即δ=0。在角度很小的情况下,介损tgδ值约等于弧度值。n1点的实际介损tgδ*100(%)=17.63。n2点的实际介损tgδ*100(%)=119.18,n3点的实际介损tgδ*100(%)=567.13。以下给出此功能函数的C51源程序:
extern unsigned long int phase_data; file://相位时差采样原始数据
extern float true_value; file://实际介损值
extern bit over_flag; file://过量程标志
void data_split()
{
if(phase_data>90000)
true_value =((100000- phase_data)/10000)*17.63;
else if(60000<phase_data<=90000)
true_value =17.63+((90000- phase_data)/30000)*(119.18-17.63);&nb