随着国民经济的发展,企业和个人的用电量大幅提高。现在用户的用电时间比较集中,以致电力系统的负荷曲线变化很大。为了调整负荷曲线,充分利用发、供电设备容量,需要实现电价分时计费。复费率电能表就是按照高峰、低谷时间分别记录用电量,以便按不同的价格收取电费,鼓励用户主动采取避峰填谷的措施,以利于供电、用电双方。同时具有GPRS远程抄表、微机集中抄表、停电抄表、防盗电、计量有功无功电能和测量需量等功能的多功能电表可以代替几块表的功能,既节约了资金又减少了设备占用的面积,而且还降低了抄表的成本。本文基于TI公司的MSP430F449高性能单片机给出了一个多功能复费率三相电能表的解决方案。
2 系统总体结构和功能说明
整个系统分为两大模块,电能计量模块,电能数据处理及通讯模块。电能计量模块通过电能计量专用芯片采集有功无功电能、三相电压电流值、频率和功率因素等数据。然后,将采集到的数据通过专用数据总线传送到电能数据处理模块。电能数据处理模块将电能数据处理后存储到flash芯片中,同时可以在液晶上实时显示电能数据。需要抄表时,本系统提供三种通讯方式:红外、RS485和GPRS;从而可采用三种方式进行抄表:掌机抄表、微机集中抄表以及GPRS远程抄表。系统结构图如下图所示:
3 系统硬件电路设计
3.1 单片机MSP430F449简介
本系统中采用了TI公司的16位超低功耗高性能单片机MSP430F449,它具有64K Flash,2048Byte RAM,8通道12位高速A/D,两个UART通讯端口,同时它的内部集成有160段LCD液晶控制器,使得液晶硬件电路可以大为简化。MSP430F449在待机模式下耗电仅 为0.8μA,RAM保持模式低至0.1μA,运行时功耗为225μA/MIPS,仅需1μS时钟启动。MSP430F449的供电电压为1.8V ~ 3.6V,因此只需要一节锂电池就可以正常运行。
3.2 电能计量电路设计
电能计量电路的核心采用了深圳炬力公司的ATT7022电能计量专用芯片。它是一颗高精度三相电能专用计量芯片,适用于三相三线和三相四线应用。它能够测量各相以及合相的有功功率、无功功率、视在功率、有功能量以及无功能量,同时还能测量各相电流、电压有效值、功率因数、频率等参数,充分满足三相复费率多功能电能表的需求。ATT7022提供一个SPI接口,方便与外部MCU之间进行电能数据和校表参数的传递。而且作为国产的芯片在价格上也较为低廉,在满足设计要求的同时可以大大降低产品的生产成本。
电能计量电路如下图所示:
上图中介绍了A相的接法电路,B相和C相的电路与A相的电路相同。为了保证ATT7022有稳定的电压参考源,采用了TL431作为其外部电压基准。由于ATT7022的供电电压为5V,而单片机系统的供电电压为3V,所以两个模块之间的通讯需要进行电平转换才能正常交换数据,因此设计中采用了简单的电阻分压电路来达到电平转换的目的,经过测试后发现数据传输很稳定,未发生数据丢失的现象。
3.3 时钟电路设计
为了满足在不同的时段精确计算需量和费率的要求,复费率电表中需要具有精准可靠的实时时钟。但MSP430F449内部RTC时钟不够精确,因此在系统中我们采用了MAXIM公司的时钟芯片DS3231。DS3231是低成本、高精度I2C实时时钟,具有温度补偿晶体振荡器和晶体。该芯片中包含电池输入端,断开主电源时仍可保持精确的计时。集成晶体振荡器提高了芯片的长期精确度,并减少了生产线的元件数量。在工业温度范围内其精度可达到±3.5ppm.
DS3231的INT端口向单片机可以提供周期为1s的中断信号,单片机系统将根据该信号通过I2C通讯接口读取具体的时间日期数据,从而实时地计算出需量和各个时段的费率。另外,DS3231的32KHZ端口可以提供精确的32KHZ的脉冲信号,可以用来接受电力部门的相关实验测试。当停电时,时钟电路的备用电池将保证时钟芯片能够继续精确计时直至供电恢复。
3.4 通讯模块设计
本设计中主要采用了三种通讯方式来实现抄表功能,分别是:RS-485,红外传输和GPRS方式。
考虑到电能表会安装在户外,因此需要在RS-485总线接口上加上避雷的保护措施。我们采用的RS-485接口芯片是TI公司的SN65LBC184芯片,通过光耦NEC2501和单片机系统进行隔离,从而防止遭遇雷击时,对整个系统造成破坏。
红外通信时如果直接将数据通过红外发射管进行传输时,将会严重受到外界环境的干扰,常见的抗干扰方法是将需要传输的数据调制到30KHz~40KHz的载波上再进行发送。
MSP430F449单片机的管脚P1.5/ACLK可作为系统的低频辅助时钟输出口,可通过通用的32.768KHz时钟晶振直接驱动,无须采用额外的外部元件。利用P1.5驱动三极管产生频率为32.768KHz的载波。通过单片机的UART口的TXD脚驱动另一个串联的三极管进行二进制数据信号“0”和“1”的传输,从而达到红外数据发送的功能。在红外接收部分,利用红外一体化接收模块TSOP1838解调高频红外信号。当TSOP1838接收到高频红外信号时,接收管输出低电平;当TSOP1838没有接收到高频信号时,接收管将输出高电平。经接收管红外解调后的数据通过UART口的RXD管脚输入单片机进行相应的处理。
另外一种抄表方式是通过GPRS模块远程抄表。本设计中采用的GPRS模块为SonyEricsson公司的GR47模块。GR47是带有GSM/GPRS全套语音和数据功能的先进无线模块,具有体积小,功能全面的特点。它内嵌TCP/IP协议栈,从而可以最大程度的缩短GPRS产品的研发周期。GR47提供了3个UART端口用来和MCU进行通讯,因此可以通过MSP430F449的另一个UART端口对GR47模块进行控制,其控制命令为标准的AT指令。通过GPRS抄表可以方便地获得各个电能表中的数据,同时也可以对电能表进行广播校时。需要指出的是,GR47的峰值耗电电流为2A,所以需要在GR47的供电端加上1000uF左右的电解电容,电源芯片也应满足相应的要求,在本设计中采用了LM1084稳压芯片,它可以提供高达5A的输出电流。
3.5 停电抄表电路设计
本系统中的电源模块为开关电源,因此当一相或者两相交流电断相时,开关电源仍能向系统供电。但如果三相交流电全部断相时,系统的供电将会中断,因此需要考虑在停电后仍能抄表,同时要能对停电发生的时间进行记录。为了保证停电时,系统的核心部分仍能正常运行,我们采用了3.6V锂电池配合低功耗稳压芯片RH5RL30AA作为系统的后备电源,此外,在停电时单片机处于休眠状态,其他芯片的电源都通过三极管关断以降低功耗,经过测试,整个系统在休眠状态耗电电流小于10uA。当需要停电抄表时,系统可以通过按键中断唤醒,数据将会显示在液晶上以供抄表。
停电时是用电池作为电源,而正常供电时是使用开关电源作为电源。如何在电池供电和开关电源供电两者之间切换,这是一个需要考虑的问题,下面给出一个简单的方法来解决这一问题。开关电源供电电路经过稳压芯片稳压到3.3V左右,而电池供电电路经过稳压芯片稳压到3V左右,在两个电路的输出端都加上肖特基二极管5819,这样在正常供电时,由于开关电源供电电路的输出比电池供电电路高0.3V,电池供电电路由于5819的反向不可导通将被切断供电;而在停电时,开关电源供电电路输出为0,电池供电电路在5819正向导通后将向系统供电。电源切换电路如下图所示:
在正常供电时,锂电池的电压可以由MSP430F449内部的12位A/D采样获得,这样当电池电压低于3.3V时,可以通过电池充电电路对其充电,直到电池电压上升到达到锂电池充电限制电压4.2V时再停止充电。电池充电电路可以通过单片机IO口控制三极管开断稳压芯片输出来实现。
4 系统软件设计
下面介绍系统功能的软件实现:
1)初始化:对LCD、存储器进行自检,并对数据进行初始化,若系统为第一次上电,所有数据都将初始化为0,否则将从存储器读取相应值对数据进行初始化。
2)时间模块:根据DS3231提供的时间脉冲进行时间计量,为系统数据处理模块提供时间度量并且为用户提供当前时间显示。
3)数据处理模块:本模块为软件设计的核心,主要作用是将计量芯片提供的有功无功电能、三相电压电流值、频率和功率因素等数据进行处理,结合当前时段和费率,得到用户的各费率各时段实际用电量以及最大需量等,并在某一指定时刻(可设置)将数据保存到存储器中。本电表可以保存多月数据,并能够通过RS485、红外接口和GPRS模块向抄表系统提供任意当前或已保存数据。本模块还具有记录断相时间、断流时间等功能。
4)校表模块:为了匹配各种不同的外设,ATT7022提供了校表功能。本模块用于对ATT7022内部各校表寄存器进行设置使其与外设匹配以增加测量精确度。
5)显示模块:通过LCD显示时间、四象限有功无功电能、三相电压电流值、频率、功率因素、各时段各费率用电量以及最大需量等。并可通过按钮对显示界面进行操作。
6)停电处理模块:停电时系统不访问数据处理模块,整个系统将进入休眠状态,从而使系统处于超低功耗模式,通过按键中断可以将系统唤醒。
7) 通讯模块:通讯模块分为红外、RS485和GPRS通讯。
8)中断处理模块:系统主要有三个中断处理模块,分别为定时、通讯和停电中断。
5 结束语
基于MSP430F449单片机的多功能复费率三相电能表集成了多种功能,在电能计量芯片ATT7022和时钟芯片DS3231的配合下对于电能的计量可以达到很高的精度。由于通过多种方式降低系统功耗,经过测试,在停电时整个系统的功耗极低,从而保证了停电抄表功能的实现。整个系统的生产成本较低,并且各项技术指标都达到了国内关于三相复费率电能表的技术标准,因此具有良好的市场前景和应用价值。 |