在软件的设计中采用精细分段、逐次比较式测量方法;数字平滑滤波克服了干扰,牛顿迭代法解决了电路的非线性和各步积累误差,浮点运算保证了运算精度和测量范围。
5.1 双CPU协同处理的软件设计
系统中AT89C52主要负责信号输入放大处理、A/D转换、及按键查询处理和系统时钟调整功能,根据按键输入转入相应功能并写入RAM的1001H单元,同时将实时数据写入6264的相应单元,供AT89C55查询读取后进行计算和显示,这部分的程序设计用汇编语言完成;AT89C55部分主要根据6264相应位置字节状态分别转入显示时钟、计算、显示、打印功能,因为这部分主要是数据处理和数据计算,所以用C51来实现。两部分软件分别烧录到自己的单片机内,分工明确。
5.2 系统软件滤波方法
为了防止脉冲干扰,采用软件滤波的方法-中位值平均滤波法(防脉冲干扰平均滤波法),具体方法是:连续采样N个数据,去掉一个最大值和一个最小值,然后计算N-2个数据的算术平均值,N值的选取一般为3~14,在本设计中N=5。这种软件滤波的方法融合了中位值滤波法和算术平均滤波法两种滤波的优点,可消除由于脉冲干扰所引起的采样值偏差。
5.3 CPU共用RAM的处理问题
在双CPU的设计中,需要一个RAM来作为两个CPU连接的桥梁,为了降低硬件成本,本系统的设计中没有采用双口RAM,而是采用价格比较低廉的6264,通过I/O口的握手判定协议来解决双CPU共同使用RAM产生冲突的问题。
AT89C52和AT89C55对6264的控制原则是片选谁用谁选通,自己不用就置高,AT89C52通过地址锁存控制信号口来实现对6264的控制,将AT89C52的地址锁存控制信号口与6264的片选端相连并与AT89C55的外部中断口相接,同时将AT89C52的地址总线端、存储器控制信号口分别与AT89C55的输入输出口相接,作为各自CPU通知对方自己是否占用6264使用权的通路,具体来说,当AT89C55不使用6264时,将输出口置高,而输出口又与AT89C52的存储器控制信号口相连,所以AT89C52通过判断序存储器控制信号口的高低,可以判断6264是否被占用。AT89C55用外部中断口作为6264的控制端口,与AT89C52对6264的控制方式相同。
5.4 提高测量精度的方法
为了解决模拟电路的非线性和测量时的非直线关系,在温度、电导率的计算方面采用精细分段、逐次比较式测量方法,并采用牛顿迭代法提高测量精度,浮点运算保证了测量范围和运算精度。
6 结论
介绍了绝缘子污秽闪络的形成过程,分析了绝缘子污秽测量的各种方法,并选定等值盐密作为衡量污秽等级的参数,在此基础上设计了等值盐密测量仪。该仪器具有如下特点:(1)采用AT89C52和AT89C55双CPU,增强了系统的数据处理能力,从而提高了测量精度;(2)采用价格低廉的RAM6264代替价格比较高的双口RAM,降低了硬件成本;(3)数据的前期处理用汇编语言实现,数据的计算、显示和打印用C51完成,两部分软件分别烧录到自己的单片机内,分工明确,协调工作;(4)采用精细分段、逐次比较式测量方法;采用中位值平均滤波法的数字平滑滤波克服脉冲干扰,在温度和电导的计算上采用了牛顿迭代法,解决了电路的非线性和各步积累误差,提高了测量精度,采用了浮点运算保证了运算精度。
所设计的双处理器电导盐密测量仪,能够实现温度、电导和盐密多个参数的测量,仪器在用于污秽溶液盐密度测试的同时,也可作为智能电导率测试仪使用。该仪器做适当的改进后可用于电力系统输变电设备的结冰度测量。