新型电网电压监测仪的组成和驱动程序设计
摘 要:针对电网电压数据的实时监测,提出了一种基于STC12C5A60S2微处理器的方案。该系统包括电压采集模块、转换模块和数据显示模块,可以显示实时时间和电压,并具有电压越限报警、系统变比设定、系统电压系数调节、电压统计等功能。该系统采用了最新的1T高性能51单片机和存储器,加快了系统的处理和存储速度。软件采用高级语言编写,主要包括初始化、按键扫描、菜单处理、电压统计等模块化子程序。
关键词:电压监测仪;STC12C5A60S2微控制器;实时时间;交直流变换
中图分类号:TP29 文献标识码:B
文章编号:1004-373X(2010)03-131-03
Design and Implement of New Voltage Monitoring Instrument Based on STC12C5A60S2
CHEN Weifeng,DENG Xiaoying,LV Tianwen
(College of Physics Science and Technology,Yangzhou University,Yangzhou,225002,China)
Abstract:A design based on micro-controller STC12C5A60S2 is introduced because of the demand of monitoring the real-time voltage on power grid.This system consists of the voltage data acquisition module and the display module,which can display the real time and real-time voltage.It contains the functions as below:warning when the voltage beyond or above the limit and the setting of ratio and system coefficient,and the statistic of the voltage etc.The latest and high effective 1T8051 single chip microcomputer and memory are used to fasten the speed of execution and storage.The program is edited by the high-level language,which contains the subroutines such as initialization of the system and the key scanning,handling of menu and statistic of the voltage.
Keywords:voltage monitoring instrument;STC12C5A60S2 micro-controller;real time;D/C conversion
0 引 言
电压监测系统是对电网电压质量进行监测并自动记录的智能化仪表系统,为统计电压的合格率及其他参数、反映电压质量的管理提供正确的数据[1]。电压监测系统的最小组合为一台智能电压监测仪。通过仪表的使用,即可实现对电压监测点的各种电压参数进行测量并记录,同时给出电压合格率、电压偏高不合格率、电压偏低不合格率等计算结果。电压监测系统的另外一种组合是由电压监测仪加上电卡、通讯机及上位计算机等配套设备组成。电压监测仪所记录的数据很多,通过仪表键盘来查询抄录十分耗时耗工,而直接用小打印机打印也有许多缺点和不便之处[2]。本系统可实现电网电压集中监测,并有查询、统计报表、电压越限报警、典型工作日设定、系统变比和电压值误差系数可调整等一系列功能[3]。
1 系统设计
采集模块以高性能微处理器STC12C5A60S2为核心[4],外围由信号变换、实时时钟、串行通信和大容量串行存储器等模块电路构成。整个系统结构组成如图1所示。
图1 系统结构
STC12C5A60S2是宏晶科技今年新推出的一款处理器,全面兼容传统的51系列。STC12C5A60S2是一个时钟/及其周期,增强型51内核,速度比普通的8051快8~12倍。工作电压比较宽,为3.3~5.5 V。增加第二复位功能引脚,并且具有外部掉电检测电路,可在掉电时,及时将数据保存进E2PROM。内部有1 280 B的RAM数据存储器。芯片内部有E2PROM功能,擦写次数达10万次以上。具有ISP/IAP功能,8通道10位高速ADC,速度可达2.5×105次/s,2路PWM还可作2路D/A使用。内部已经集成了独立的波特率发生器,此系列单片机串行通信的速率可以不由内部定时器T1的溢出率来决定,这样可以让T1来实现定时或者计数的功能。此系列的单片机还有双串口的功能,一个串口可以被系统使用,剩下的串口可以用来作系统程序调试信息的输出,避免一个串口被占用的情况下,只能使用I/O口去模拟UART时序的麻烦。
监测系统是弱电系统,而电网电压一般是220 V左右的交流电,不能由系统直接进行测量。必须把测量的电压通过带缓冲器的降压器,降至3~4 V的交流小信号。
降压之后的电压信号为交流小信号,再通过真有效值转换芯片AD536转换成有效值相等的直流信号并输出[5]。
AD536转换输出的直流信号通过V/F变换芯片LM331输出其直流信号所对应频率的数字脉冲,供单片机进行采集,从而单片机计算出直流信号的大小。在本设计中没有采用传统的A/D转换器把模拟信号变成数字信号,而是采用LM331进行V/F变换[6]。
V/F变换的电路图如图2所示。
图2 V/F变换电路图
LM331的动态范围宽,可达100 dB;线性度好,最大非线性度失真小于0.01%,工作频率低到0.1 Hz时尚有较好的线性;变换精度高,数字分辨率可达12 b;外围电路简单,只需接入几个外部元件就可方便构成V/F变换电路,并且容易保证转换精度[7]。根据上面的电路和数据手册可以得出LM331输出频率的计算公式:
Fout=Vb2.09 VR2+R1R41R5C4
LM331输出的数字脉冲通过光耦TLP521进行隔离,再送入单片机的定时器T1进行计数。定时器T0用来定时,每隔1 s钟单片机在T0的定时中断服务程序中读取T1计数器的值,因为间隔是1 s,所以读出来的值就是LM331输出脉冲频率的大小。由上面的公式可以计算出AD536输出的有效值Vb,进而可以推算出此时测量电网电压的大小[1]。
根据要求,此系统需要记录历史电压。这里选择铁电存储器FM24C512,它是一款容量高达512 KB的非易失性存储器,它采用了先进的铁电处理技术[8]。原理图如图3所示。
图3 FM24C512原理图
FM24C512以总线速度进行写操作,无须延时。下一个总线周期可以立即开始,无需进行数据轮询,最高总线频率高达1 MHz。另外,FM24C512具有比E2PROM高得多的写操作次数。而且,因为写操作不需要在内部提升电路写电路的电源供电电压,所以,在写操作过程中,FRAM比E2PROM消耗的功率要低得多。
FM24C512使用I2C通信协议,简化了与微控制器的接口电路。它使用极少的管脚,占用极小的板空间,只使用两个管脚和处理器进行通信,一个是时钟线SCL,另一个是数据线SDA。因为所使用的主处理器没有相关的I2C通信接口,所以只能用两个I/O口去模拟I2C的时序。时序图如图4所示。
图4 FM24C512工作时序图
在记录历史电压时,实时时间芯片DS1302产生的时间作为记录电压的参考[9]。DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5~5.5 V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1302兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力[10]。它与单片机的连接如图5所示。
DS1302与CPU的连接只需要三条线,即时钟线(SCLK)、数据线(IO)、复位线(RST)。相应的时序图如图6所示。
图5 DS1302与单片机的连接
图6 DS1302工作时序图
根据图6,就可以编出相应读取DS1302时间的子程序。
uchar Rd_1302(uchar add)
{
uchar ucda;
Ds_Rst = 0;//先把复位口拉低
Ds_Clk = 0;//再把时钟口清零
Ds_Rst = 1;//把复位口至高,准备写入地址
Input_Byte(add);//设定操作寄存器的地址
ucda = OutPutByte(); //读出相应寄存器数据
Ds_Rst = 0;//把时钟线恢复至低电平
return ucda; //返回读取的数据
}
为了增强人机的交互性能,选用金鹏电子的OCMJ12232液晶显示模块作为系统的显示部分。OCMJ12232的显示方式为点阵图形,可以显示任意图形或者汉字,内带8 192个中文点阵,具有并行和串行两种接口方式。本设计采用了串行接口方式,具有占用I/O资源少,编程简单等特点。
2 流程设计
系统程序由显示模块、按键扫描模块、频率计数模块、记录统计模块、系统菜单模块等组成。在软件编写过程中,记录统计模块较为复杂,其算法为:程序判断是否到了下一秒钟,如果没有则继续采集电压再进行判断,否则进行有关电压秒记录的处理;接着判断是否到了一分钟,如果没有则退出,否则进行有关电压分钟记录的处理;下一步再判断是否到了一小时,如果没有则退出,否则进行有关电压小时记录的处理;以此类推,还
要判断是否满了一天、一个月的情况。其中,还需要判断是否是典型工作日,每个月可以设置三个典型工作日,典型工作日中每个小时的记录都被保存下来,以便用户查看。流程图如图7所示。
图7 软件流程图
3 结 语
本文详细介绍了基于STC12C5A32AD的电压监测系统,适用于0~480 V交流电压的监测。本设计已经完成了设计和调试,并通过了客户的验收,成功运行在电网公司的监控大厅。
参考文献
[1]杜秀芳,曹玉强,张静.智能型真有效值电压检测仪[J].兵工自动化,2006,25(5),84-87.
[2] 张建民,黄剑.DC-100/C电压监测系统的研制[J].华东电力,2001(4):31-32.
[3]孔湧,段峥辉.GSM短信电压监测仪的应用分析[J].电力设备,2005,12(6):61-63.
[4]宏晶科技.STC12C5A60AD系列单片机器件手册[EB/OL].http://www.mcu-memory.com,2009.
[5]赵鹏,李志刚.AD536的性能及其应用[J].国外电子测量技术,2004(2):17-19.
[6]刘滨.VM-I型电压监测记录仪的结构与功能[J].吉林电力技术,1997(2):50-51.
[7]漆文辉.变电站电压质量监测系统的研制[J].仪器仪表学报,2002,23(5):192-197.
[8]Ramtron半导体.FM24C512铁电存储器系列手册[EB/OL].http://www.ramtron.com,2006.
[9]朱杰斌.时钟芯片在电压监测仪校验装置中的应用[J].微计算机信息,2006,22(2):288-290.
[10]美信半导体.DS1302可涓流充电时间保持芯片数据手册[EB/OL].http://www.maxim-ic.com,2003.