APP下载

基于ATT7022A与MSP430的智能三相电力计量仪表的设计与实现

2014-07-18巢玉江袁红兵冯锋

机械制造与自动化 2014年2期
关键词:电表寄存器串口

巢玉江, 袁红兵,冯锋

(1.南京理工大学 机械工程学院,江苏 南京 210094;2.南京理工大学 无锡研究院,江苏 无锡 214000)

基于ATT7022A与MSP430的智能三相电力计量仪表的设计与实现

巢玉江1, 袁红兵2,冯锋2

(1.南京理工大学 机械工程学院,江苏 南京 210094;2.南京理工大学 无锡研究院,江苏 无锡 214000)

介绍了一款以电能计量芯片ATT7022A为基础,以MSP430系列的MSP430F149为主控芯片的三相电参数采集仪表。通过RS-485总线能实现信号和数据的输入输出、计算、控制等功能。通信协议采用Modbus-RTU协议格式,增强了可靠性和实用性。现场运行表明, 系统稳定可靠, 具有较高的实用价值。

ATT7022A;MSP430;Modbus-RTU协议;三相交流电

0 引言

近年来,随着科技的快速发展,电子式电能表在国内和国际上得到迅速推广。但是许多企业里设备的电器控制柜还是老式机械式电能表,这种电表功能单一,精度不高,数据不能远程共享。随着越来越多的企业开始向生产和管理自动化转变,智能三相电表应运而生。

本文设计的多功能三相三线电表主要应用于大功率设备(如潜水泵)的电力参数的测量。在数据传输方面,由于RS-485总线以差分平衡方式传输信号,所以具有抗干扰性好、传输距离远等特点,非常适用于组成工业级的多机通信系统。Modbus协议是智能仪表的通用协议,更是增加了本仪表的通用性,与其他设备实现无缝对接。

1 系统架构设计

整个系统由三相电能芯片ATT7022A、MSP430F149单片机、数码管显示电路、接口电路等组成部分。系统的整体架构如图1所示。

图1 系统框图

2 硬件电路设计

1) ATT7022A的特性

ATT7022A的一款多功能三相电能计量专用芯片,该芯片具有高精度,在输入动态工作范围(1000∶1)内,非线性误差小于0.1%;对有功、无功功率的测量精度分别达到0.2s和0.5s,对有功、无功电能测量精确度达到0.5s和2级;所能测量的电能参数包括有功、无功、视在功率、双向有功和四象限无功电能、基波/谐波电能以及总电能、电压和电流有效值、相位、频率以及21次谐波的有功、无功和视在功率等;具有SPI接口,方便的进行软件调试电表,读测量数据;适用于三相三线和三相四线电表[1]。

2) 单片机的选型

MSP430F149单片机是美国TI(德州仪器)公司近年推广的16位高性能混合信号处理器。它有看门狗定时器(WDT)、模拟比较器A、定时器A(Timer_A)、定时器B(Timer_B)、串口0/1(USART0/1)、硬件乘法器、12位ADC、I2C总线直接数据存取(DMA)以及端口1~6(P1~P6)等外围模块。由于它具有处理能力强、运算速度快、集成度高、外部设备丰富、超低功耗等优点,而且有很高的性价比,因此在许多领域内都得到了广泛的应用[2]。MSP430F149单片机本身具有硬件支持的SPI接口,所以软件的设置就非常简单,并且CPU有更多的时间去处理其他的任务。

3) 具体电路的设计

本方案主要有测量单元(ATT7022A)、MCU(MSP430F149)、数码管显示、电源、电平转换电路、通信接口电路、按键等部分。

a) 测量单元:测量三相电各相的电压电流、有功功率、无功功率等参数。主要有电压互感器、电流互感器、芯片ATT7022A组成。电压电流信号分别通过互感器和测量电路送给ATT7022A处理,ATT7022A处理完的数据通过SPI提供给MCU。ATT7022A内部集成了6路16位A/D转换器,电流通道有效值在2mV至1V范围内,电压有效值在10mV与1V的范围内。前端的采集电路如图2所示。

图2 前端采集电路

b) 芯片与MCU之间的通信:由于单片机工作电压为3.3V,ATT7022A的高电平为5V,所以芯片与MCU之间SPI通信需要电平转换电路。此处选用芯片SN74LVC4245。此芯片通过2脚(DIR)和22脚(/OE)来选择3.3V与5V的转换,这两个脚与单片机的IO口相连。转换关系为:当/OE、DIR都为低电平时,3.3V→5V;当/OE、DIR都为高电平时,5V→3.3V;当/OE为高电平时,为阻断态。此芯片的转换时间在2~5ns,当SPI的波特率为9600时,足够满足需求。

考虑到SPI传输信号线有可能受到干扰或者出现抖动,可以在SPI信号线上串联一个小电阻。这个电阻与IC输入端的寄生电容C结合起来可构成一个低通滤波器,可以消除SPI接口信号上的任何振荡,一般推荐使用10~100Ω的电阻。如果数字输入端的内部电容不够大,还可在这个输入端加一个外接电容,可选10pF左右的电容。对于这两个电阻电容参数选择要根据SPI通讯速率以及外部 MCU 的型号进行分析并需要作些相关的实验以确定电阻电容值是否合适。具体的接线框图如图3所示。

图3 ATT7022A与MCU的接线框图

c) 通信接口电路:MSP430F149单片机有两个串口-USART0/1。单片机串口0通过MAX3232芯片电平转换可以与PC机的串口相连,实现上位机与下位机的通信。在设备的调试过程中有很重要的作用,也可以通过串口,实现上位机软件对设备的配置。比如:设备地址、波特率、数据位数等参数的配置。单片机串口1通过芯片MAX485,实现485信号的输出,可以实现带多个此类设备。具体如图4所示。

图4 232和485电路

d) 数码管和按键电路:主要负责电能、功率、电能等一系列参数的现实工作和地址和一些参数的设置工作。

e) 电源电路:本设备采用24V直流电供电,经过7805芯片产生5V电压供给ATT7022A芯片工作,再经过一个1117-3.3电源芯片产生3.3V电压供单片机等使用。

f) DS1302时钟:给设备提供一个准确的参考时间。

3 系统软件的设计

1) 多功能电表程序结构流程图如图5所示。多功能电表的软件设计主要是进行测量数据的处理、数据的传输、电能的累加、异常情况的判断和处理。主要完成ATT7022A芯片的初始化、单片机时钟初始化、串口和SPI通讯的初始化、DS1302实时时钟的初始化等,主程序中对各个参数的测量和计算。中断程序中是SPI中断和串口的中断服务程序,及时响应各种功能命令[3]。

电量计量程序是该多功能电表的主要部分。主要是通过单片机SPI去读ATT7022A电压寄存器、电流寄存器、功率寄存器;相序检查;电压负序与零序不平衡度、电流负序与零序不平衡度计算。在电表数据处理过程中,最重要是要判断出ATT7022A是否在正常工作。定时读取ATT7022A提供的校表寄存器的校验和寄存器的值。当发现校验出错时,单片机对ATT7022A复位并重新写入校表数据。

2) 电力电参数的计算

3) Modbus通信协议

Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控[4]。

控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。本设备采用MODBUS-RTU通讯协议。MODBUS协议在一根通讯线上采用主从应答方式的通讯连接方式。首先,主计算机的信号寻址到一台唯一地址的终端设备(从机),然后,终端设备发出的应答信号以相反的方向传输给主机,即:在一根单独的通讯线上信号沿着相反的两个方向传输所有的通讯数据流(半双工的工作模式)。

数据帧的结构:即报文格式。

地址码功能码数据码校验码1个BYTE1个BYTEN个BYTE2个BYTE

地址码是帧的开头部分,标明了用户指定的终端设备的地址。校验码采用CRC校验方式。具体的功能码在此不详细列出。

4 软件校表

ATT7022A支持全数字校表,即软件校表。经过校正的仪表,有功精度可高达0.5s,无功精度2级。如果选择软件校表,那么SCF、S0、S1全部接高电平或者全部悬空不接。由于构成电流、电压通道的抗混叠滤波器RC元件存在容差, 导致2个通道相位失配, 给最终测量带来误差。引起该误差的相位可以与互感器的角差同时得到校正。ATT7022A提供的校表参数寄存器包括相位补偿区域设置、相位校正、功率增益校正、电压/ 电流校正、比差补偿设置、启动电流、高频脉冲输出设置、断相阈值电压设置和合相能量累加模式等寄存器。每个寄存器3个字节, 地址不连续地分布在0x01~0x3F之间。校表是电能表设计中非常重要的环节,ATT7022A通电复位后, 校表寄存器的初始数据为默认值, 此时读出的计量参数值和实际参数值不符, 因而需要对校表寄存器进行设置, 以将测量值减小到误差范围之内。校表可按高频输出参数设置、比差补偿区域设置、角差补偿区域设置、功率增益校正、相位校正、启动电流设置、功率增益校正、参量累加模式设置、电压校正、电流校正先后顺序进行[5]。

5 总结

按以上思路设计的基于ATT7022A的多功能电表实现对有功、无功、视在功率、双向有功和四象限无功电能, 以及电压和电流有效值、相位、频率等电参数的准确测量。电表的线路设计简单、计量精度高。已经经过大量实验的考验,实验结果表明该电能表有很好的稳定性,并且精度高,成本低,有很高的性价比。这种基于ATT7022A的多功能电表就将在我校研究院一个水利项目上得到大量应用。

[1] 炬力集成电路设计有限公司.ATT7022A用户手册[Z].珠海:炬力集成电路设计有限公司,2005.

[2] 胡大可.MSP430系列FLASH型超低功耗16位单片机[M].北京:北京航空航天大学出版社,2001.

[3] 龙健,徐岩.基于ATT7022A的三相三线多功能电能表[J].PLC&FA,1606—5123(2010)07—0061-0:2-4.

[4] Modbus通信协议.

[5] 陈四根,陈涛.基于ATT7022A电能计量芯片电力监控终端设计[J].东北电力技术,1004- 7913 (2007) 06- 0042- 04:4-5.

Design of Electric Monitoring Terminals Based on IC ATT7022A and MSP430F149

CHAO Yu-jiang1, YUAN Hong-bin2, FENG Feng2

(1.School of Mechanical Engineering Nanjing University of Science and Technology, Nanjing 210094, China;2.Wuxi Institute of Nanjing University of Science and Technology, Wuxi 214000, China)

This paper introduces a collection instrument based on a chip ATT7022A and MCU(MSP430F149).It can be used to achieve many functions by RS-485 bus ,such as signal and data input, output,calculation and the control. To enhance reliability and practicability, Modbus protocol format is used. Field operation shows that the system is stable and reliable and has high practical value.

ATT7022A; MSP430; Modbus-RTU; three-phase AC

巢玉江(1987-),男,江苏沭阳人,硕士,研究方向为嵌入式开发和机电一体化设计。

TH89;TP29

B

1671-5276(2014)02-0180-04

2013-03-07

猜你喜欢

电表寄存器串口
巧判电表测量对象
电表“对”与“错”归类巧掌握
浅谈AB PLC串口跟RFID传感器的通讯应用
Lite寄存器模型的设计与实现
分簇结构向量寄存器分配策略研究*
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
一种电表模拟软件的应用研究
高速数模转换器AD9779/AD9788的应用