基于MSP430单片机的智能型复费率单相电能表设计
扫描二维码
随时随地手机看文章
0引言
人均用电量大幅度增加使得“一户一表制”得到大面积推广,对电能表的要求和需求大幅度增加。为鼓励用户在低谷时段用电,缓解用电紧张,电力部门已试行峰谷不同电价的计费办法,同时采用智能化远程抄表、自动计量计费等方法以解决人工抄表存在的诸多问题,减轻劳动强度,提高管理水平。微机集中抄表管理系统是一种比较理想的解决方案,基础是根据电力部门的复费率电能表技术条件及通信规约设计出具有通信接口和分时计费功能的电子式复费率电能表。该仪表是以高性能微控制器为主控芯片进行分时计量控制的新型智能型计量仪表,具有分时段计费和连续计量功能,可以达到计划用电的目的。这里给出了一种基于超低功耗 MSP430单片机的复费率电能表的硬件实现方案和软件设计思想。
1 硬件电路设计
1.1系统总体结构
本方案中硬件采用TI公司高性能的16位超低功耗单片机MSP430F413作为主控MCU[1],它具有 8Kflash,16位RISC结构,CPU中的16个寄存器和常数发生器使MSP430微控制器能达到最高的代码效率;灵活的时钟源;数字控制的DCO 可使器件从低功耗迅速唤醒,同时结合电量计量专用芯片AD7755,可以使电表硬件部分大为简化,而且很方便实现智能控制。系统总体结构如图1所示。
1.2 时钟电路设计
智能分时计费电能表中必须要有实时时钟,分为硬时钟和软时钟两种。在众多的实时时钟芯片中,我们选用了PHILIPS公司的PCF8563。它是一款具有极低功耗的多功能时钟/日历芯片,具有多种报警功能、定时器功能、时钟输出功能及中断输出功能,可以完成各种复杂的定时服务。尤其是其采用I2C总线通讯方式,不但使外围电路极其简洁,而且也增加了芯片的可靠性。
本系统PCF8563与MSP430接口采用图2所示接口方案。接口采用3根口线,PCF8563的INT脚产生周期为1s的脉冲中断信号给MSP430单片机的P1.4引脚作为中断触发信号,产生中断后,通过I2C总线读取PCF8563的基准时间。按I2C总线规约,PCF8563的从地址:读地址SLAR为A3H、写地址SLAW为A2H,PCF8563I2C通信实现有字节写/读两种状态。由于在MSP430单片机中没有I2C总线的硬件,所以采用软件模拟I2C读写数据的方法。
1.3 电能计量电路
电量测量采用美国ADI公司的AD7755作为测量芯片,它是一种量程宽、精度高,内部具有掉电、上电自动复位电路的高准确度电能测量专用集成电路[2]。 AD7755为低功耗的CMOS芯片,内部除了ADC和滤波、相乘电路外都采用了数字电路,有效的去除了尖脉冲等干扰信号,使得它在恶劣的环境条件下仍能保持极高的准确度和长期的稳定性。引脚CF以较高频率形式输出有功功率瞬时值,用于与MCU接口,其接线图如图3所示。
AD7755的CF输出端输出的脉冲频率正比于平均有功功率,通过它可以求平均功率和一个积分周期内消耗的电能:
平均功率 = 平均频率= 脉冲个数/积分时间
电能 = 平均功率 积分时间= 脉冲个数
在正常运行时,积分时间可以定为1到2秒,这取决于显示部分更新的需要。
1.4 液晶显示电路
在MSP430F413单片机中,液晶驱动作为一个外围模块集成于片内,极大的简化了液晶显示部分的接口设计,只要选择合适的液晶显示器,采用合适的驱动方式即可完成数据的显示。
液晶显示板的公共极由COMn信号驱动,段极由SEGn驱动。而液晶的驱动又有多种方法:静态驱动、2MUX驱动、3MUX驱动、4MUX驱动等。不同的驱动方案所占用的单片机引脚数是相同的,采用2MUX驱动8位液晶显示所需的引脚数为2+8*8/2,输出引脚与液晶显示器件的连接如下:
PIN号 1 2 3 4 5 6 …… 29 30 31 32
430引脚 S0 S1 S2 S3 S4 S5 …… S28 S29 S30 S31 COM0 COM1
LCD COM0 1f 1h 1d 1e 2f 2h …… 8f 8h 8d 8e COM0
LCD COM1 1a 1b 1c 1g 2a 2b …… 8a 8b 8c 8g COM1
通过设定液晶控制寄存器LCDCTL中的控制位来控制数据的显示,这里设定为4MUX显示模式,向液晶显示缓存LCMDX写入要显示的数据,片内驱动控制电路就会输出相应的驱动信号完成显示。
1.5 串行接口
数据通信方式主要有并行数据通信与串行数据通信两种。考虑到串行数据通信只需要一对数据传送线进行信息的传送,所需传输线条数极少,传送成本较低, 特别适用于分级、分层和分布式控制系统以及远距离通信之中,故本设计选择串行数据通信。RS-232C接口电路是最常用的接口之一,缺点是只能用于短距离的数据通信。RS-485接口在总线上允许连接多达128个收发器,具有良好的抗噪声干扰性、长的传输距离和多站能力等优点。在此我们选用RS-485接口。
本设计采用Maxim公司生产的MAX487芯片作为RS485通信收发器[3],MAX487芯片具有RS-485通信协议,可以带下位机128个、传输距离大于1km、传输速率达250kb/s。单片机可以通过RS485总线方式与主控计算机相连,主控计算机可以向智能电表发出遥控指令,采集到当前的电量数据和历史数据,构成了主从式的RS485通信应用系统。
MAX487与MSP430的接口电路如图4所示。图中DE为发送器使能端,DE为1时发送器可以工作。DI为输入端,A、B为输出端。当DE为0 时,发送器停止工作,且输出端为高阻。 为输入使能端,为0时允许接收器工作,A、B为输入端,RO为输出端; 为1时接收器被禁止,RO为高阻状态。MSP430通过P2.1和P2.2来控制收发器的工作状态,从而达到与主机通信的目的。
2 软件程序设计
2.1 软件设计思想
单相复费率电能表的软件主要是实现电量数据采集和处理,并通过RS485接口实现与抄表系统的数据交换。
2.2 软件程序框图
系统主程序框图如图5所示。
电量处理模块的功能是由计量芯片提供计量脉冲,CPU对计量脉冲计数,结合当前时段和费率,累计用户峰、平、谷各时段的实际用电量。
通信模块的功能是按照通讯规约实现与抄表器和抄表系统的可靠通信,由抄表系统读取用户电量数据和设置时段、费率、地址等电表参数。
显示模块的功能是显示用户的峰、平、谷、总电量及时间、上月电量等信息。
3 系统抗干扰性设计
智能复费率电能表主要是基于单片机的系统,单片机系统极易受到强电磁场、温度、湿度等的干扰,在诸多干扰源中,来自电网电压的波动、尖脉冲干扰、瞬间断电对单片机的工作是一些很重要的干扰源,它使单片机不能连续正常工作。电网瞬间断电或电压突然下降将使微机系统陷入混乱状态,电网电压恢复正常后,微机系统难以恢复正常,有效的方法就是掉电保护,掉电信号由硬件电路检测到,加到单片机的外部中断输入端。软件中将掉电中断规定为高级中断,使系统能够及时对掉电作出反应,在掉电中断子程序中,首先进行现场保护,把当时的重要状态参数、中间结果、某些片内专用寄存器的内容一一从片外RAM中调入单片机内部 RAM中;其次是对有关外设做出妥善处理,使外设处于某一个非工作状态,最后在片内RAM的某些单元做上特定标记。采用上电自动复位电路,使单片机上电后保持两种确定的状态,要么复位,要么工作,电源突然出现的短脉冲不会造成异常状态,确保系统正常工作。
4 结束语
智能型复费率电能表作为一个智能型器件,十分适用于高层建筑、密集的住宅区等密集用户区的集中管理,配合适当的通讯规约,可以方便的与管理计算机接口或通过集控器构成远程自动抄表网络。本设计方案采用低功耗器件,成本较低,便于集成。经过试验,本文所设计的复费率电能表的各项技术指标均达到国家多费率电能表的技术标准,具有一定的推广价值和较好的市场前景。
参考文献
[1] 魏小龙. MSP430系列单片机接口技术及系统方案设计实例 .[M] .北京:北京航空航天大学出版社. 2002.
[2] 陈惠明.等. 多费率电能表的设计.[J]. 电气技术与自动化.2003.(5).
[3] 缑冬青等.基于RS485串行口的自动抄表系统.[J].河南科技大学学报(自然科学版).2003.(1).