蔡 凡
(闽南理工学院,福建 石狮 362700)
本系统采用MAX155高速同步AD采集模块构成的电参数测量系统,为电参数的测量提供技术支持。同步采集多路数据,使系统装置更加精简可靠,可方便地直接得出待测电网或用电电路的电压、电流有效值/峰值,以及电压、电流的相位差与功率等电参数。
系统总体由6个基本模块组成,分别是电源电路、电流预处理、电压预处理、MAX155同步AD采集、主控制、串口电路。
图1 系统总体模块组成
(1)系统电源电路模块。此模块主要功能是输出稳定的、纹波小的±5V直流电压,为MAX155同步AD采集模块提供±5V的工作电压,同时为其他模块提供+5V的工作电压。
(2)电流预处理模块。此模块主要功能是将待测电路交流电流信号转换成为适合MAX155输入要求的交流电压范围。
(3)电压预处理模块。此模块主要功能是将待测电路的交流电压信号转换成为适合MAX155输入需要的交流电压范围。
(4)MAX155同步AD采集模块。此模块主要功能是同步采集经前置处理后的电压、电流信号,然后通过串口电路送到计算机显示并储存。
(5)主控制模块。采用AT89C52单片机控制MAX155同步AD转换器模块采集模块电参数的采集,并进行数据处理,后通过接口控制串口模块。
(6)串口电路。利用MAX232电平转换实现与计算机之间的通信,把处理后的数据发送到计算机上显示储存。
主控制模块采用AT89C52芯片,主要负责控制MAX155同步AD转换器模块采集经前置处理后的电压、电流信号,并通过接口控制串口模块。为防止单片机死机,该模块应加上按键复位电路。
(1)单片机控制MAX155采集模块。单片机的P2口是一个内部带有上拉电阻的8位双向I/O口:当P2口写入数字“1”后,被内部上拉为高电平,可用作输入;而当P2口被外部下拉为低电平时,将输出电流,故用于MAX155同步AD转换器输出端数据的输入端。单片机的P3口也可同P2口一样作为I/O口,故可用于控制MAX155的BUSY忙信号、WR写信号、RD读信号、CS片选信号。单片机的ALE端以振荡器频率的1/6向外输出固定的脉冲信号。由于该系统晶振频率为12 MHz,故ALE端可提供2 MHz的时钟频率,满足MAX155的外部时钟频率范围(0.5~5 MHz),该系统直接由AT89C52芯片的ALE端为MAX155提供2 MHz的时钟频率。
(2)单片机控制串口通讯。AT89C52芯片通过RXD端和TXD端,分别接到串口电路中MAX232的R1OUT和T1IN来控制串口对数据的发送和接收。单片机控制串口通讯时需设置波特率,可用定时器1作为波特率发生器。本系统中,TMOD=0×21,TH1=0×E6,TL1=0 ×E6,设置波特率为1 200 bps。通过设置TMOD寄存器将定时器1设置成工作方式2,然后通过对8位计数器TH0和TL0赋初值来设置波特率。
系统采用并联电阻分流与串联电阻分压来检测及处理待测电路的电压与电流。在实际应用中,可根据具体待测电路来设计电压电流信号的预处理模块。信号预处理模块如图2所示。
图2 信号预处理模块
通过串联电阻R1得到V2:
其中V2送给MAX155同步AD采集器进行采集。通过并联R2和R3线路得到V1:
其中V1送到MAX155同步AD采集器完成采集。这种预处理方法实现起来简单方便,但因为串联电阻R对负载的工作环境产生影响而有一定误差。
(1)电压预处理模块。此模块的功能是对待测电路的电压预先进行处理,使得电压符合MAX155输入要求的交流电压范围。电压预处理模块可直接采用并联电阻分流的方法,待测电路两端电压不变再行检测电压,结合串联电阻分压得到符合MAX155输入电压范围要求,通过交流变送器AMT系列电压信号隔离变送模块进行转换。这样可避免并联分流带来的误差,同时也解决了变压器绝缘屏蔽效果不够给信号带来干扰等问题,以得到更准确的交流电压。
(2)电流预处理模块。此模块的功能主要是使电流符合MAX155输入要求的交流电压范围。电流预处理模块可直接采用串联电阻分压的方法,流经负载的电流基本不变,将串联电阻两端的电压送至MAX155。若该电压较小,可以接运算放大器放大到符合MAX155输入电压范围要求,电流较大时可通过电流互感器来电流传感器来实现。但在选取电流传感器时要注意,为了使后续MAX155能采集到电流周期信号,输出应随输入电流呈现周期变化。
MAX155同步AD转换器构成的采集电路,主要作用是负责采集并转换经前置处理电路处理后的电参数,然后通过串口送到计算机显示和储存,工作电压为±5 V。
电路采用的是4通道双端差分、双极性输入方式,通道A0— A1,A2— A3,A4— A5,A6— A7分别构成4组双端差分输入通道。本设计中只用到A0— A1,A2—A3,分别作为两路信号的差分输入通道。MODE引脚接高电平,VSS引脚接5V稳压电源。VDD端、VSS端分别接1个4.7 μF的电解电容和1个0.1 μF的瓷片电容到模拟位置,可有效滤除进入电源回路的高频成分,保证供电电压的稳定性。REFIN端接入外部基准源+5V稳压电源,同时通过1 个4.7 μF 的电解电容和 1 个 0.1 μF 的瓷片电容接到模拟位置。这样也能起到滤波作用,保证器件的稳定性。
串口电路模块主要负责电平转换,以实现与计算机的通信。电路采用为 +5V电源供电,经MAX232芯片进行电平转换,得到RS-232所需的±(3~15)V电压。RS-232中有9个引脚,本系统中只用到3个引脚,接收数据的2引脚RXD,发送数据的3引脚 TXD,5引脚接信号地。MAX232的T1IN、T2IN、R1OUT、R2OUT 为接 TTL/CMOS电平的引脚,T1OUT、T2OUT、R1IN、R2IN 为接 RS232 电平的引脚。系统选用其中一路进行发送/接收,R1OUT接 AT89C52的 RXD,T1IN接 AT89C52的 TXD,T1OUT接RS232的TXD,R1IN接RS232的发送端RXD。系统采用3端集成稳压块7805、7905,内部有过流、过热及调整管的保护电路,使用方便可靠,价格低廉。
系统电开机启动后,首先初始化各模块,然后启动MAX155同步AD转换器,开始同步采集经前置处理电路处理后的电压、电流信号;每采集一次就依次对4组差分输入通道进行转换,将数据储存在内部寄存器中,后按照时序依次读取所需通道的数据;最后由单片机进行数据处理,得出待测电路的电压、电流、相位差、有功功率等电参数,并通过串口送到计算机显示和存储。系统程序流程如图3所示:
图3 系统程序流程图
3.1.1 MAX155 采集转换程序
MAX155采集转换程序启动MAX155函数,同时给予CS和WR引脚一个低电平;MAX155随即开始同步采集差分通道输入的电压、电流信号,并依次对4组差分输入通道进行转换;接着检测MAX155的BUSY信号,低电平时继续转换,直至高电平时转换结束,然后写信号WR置于1,给RD读信号一个下降脉冲,依次读取所需差分通道的转换结果;接着重新回到采集转换初始化过程继续采集下一个,直至结束MAX155函数,最终完成采集转换。
3.1.2 数据处理程序
数据处理程序主要负责处理MAX155同步采集到的电压、电流周期信号,以得出待测电路的电压、电流、相位差、有功功率等电参数,并通过串口送到计算机显示和存储。
(1)读出待测电路的电压、电流参数。读取MAX155采集转换的结果,将电压、电流数据分别存放在数组 Vtemp[]、Ctemp[]中,然后通过 if((Num2&0×80)=0×80)循环语句判断数据的正负,即判断二进制码的符号位。若符号位为0,表示该数据为正值,则可直接通过串口函数传送到计算机上显示;若符号位为1,表示该数据为负值,则需取补码,且发送负号。这样就可以在计算机上显示采集到的电压、电流数据。
(2)算出电压电流的相位差。从数组Vtemp[]中逐次比较得出与前一个点符号不同的点,记此点为第i个采集点,将其赋予变量 j,同时也从数组Ctemp[]中逐次比较得出与前一个点符号不同的点,记此点为第i个采集点,将其赋予变量k,然后通过运算得出电压、电流信号之间的相位差。
(3)计算有功功率。有功功率计算公式为:
其中S为视在功率,U和I分别为电压、电流的有效值。
3.1.3 串口通信程序
串口通信程序主要负责与计算机的通信工作,将各类电参数传送到计算机上显示出来。串口通信程序流程图如图4所示。
串口通信,需先初始化,将定时器1作为波特率发生器,通过设置TMOD寄存器将定时器1设置成工作方式2,然后通过对8位计数器TH0和TL0赋初值来设置波特率。本系统中,TMOD=0×21,TH1=0×E6,TL1=0×E6,设置波特率为1 200 bps。并分别设置寄存器SCON和PCON。设置完成后即可开启定时器1,进行串口通信。
系统调试主要包括硬件调试即电源电路、主控电路、信号预处理模块、MAX155同步AD采集模块这几个功能模块的调试以及软件调试。检查各部分是否正常工作,在误差范围内电参数是否正常,根据表1所示内容进行调试。
图4 串口通信流程图
表1 系统调试内容
通过串口送到计算机显示,由程序调试可得同时采集的2路信号的数据输出,如图5所示。一个周期采集11个点,每行表示采集一个周期,电压信号和电流信号间分行间隔采集。
从图5可知,整个采集周期的数据呈规律性正负波动变化,而且第1个与第11个采样点数据接近。这说明输出信号周期与输入信号周期基本符合,故本系统可以实现同步采集到与实际输入波形周期变化规律基本一致的信号。完成上述调试后,才能接着进行幅值分析及数据处理。
图5 输出的原始数据
数据处理后的电压、电流波形周期变化与输入波形基本一致,且第1个采样点与最后的采样点数据接近。在此,系统设计时每个周期只采集了11个采样点,导致存在有一定的误差,输出电压、电流信号偏小,导致功率偏小。后续调整中,应增加采集点数,完善硬件软件调试及误差分析系统,以得出更准确的电参数。
综上所述,MAX155同步AD及单片机等构成的电参数测量系统,对供电电网或用电电路的电器电压、电流进行同步采集。利用了MAX155的同步采集转换性能,得出待测电路的电压、电流参数,电压电流的相位差,有功功率电参数。硬件设计电路及软件编程较简单。经过测试,可以同步采集到与输入信号波形周期变化规律基本一致的波形。
[1]磨少清,韦卫星,马明晓.基于MAX155的同步数据采集系统[J].现代电子技术,2005(8):101-102.
[2]Atmelcorporation.AT89C52[EB/OL].[1999-01-02].http://www.datsi.fi.upm.es/docencia/Micro_C/atmel/doc0313.pdf.
[3]刘艳玲.采用MAX232实现MCS-51单片机与PC机的通信[J].天津理工学院学报,1999(2):57-61.
[4]康华光.电子技术基础:数字部分[M].北京:高等教育出版社,2006:402-405.
[5]邢丽娟,杨世忠.高速多通道8位ADCs MAX 1 55/MAX 1 56的原理及应用[J].国外电子元器件,2004(5):64-68.