基于Cortex-M3的无线电表采集器的研制
|
1.引言 2.采集系统的结构 近年来,电表的数字化程度越来越高,大多提供标准的通信总线结构,便于设计人员编程实现对电表数据的读取。在生产采集系统中,分散于厂区各个配电间的电表采集器与多个电表通过通讯接口相连,构成点对多点的主从网络,定时采集各表的电度值与电流值;在将整理后数据通过WIFI网络上传至WEB服务器的数据库中存储;终端客户可通过网络访问和查询服务器中的各个设备运行情况。 3.采集器的硬件设计 电表采集器以嵌入式Cortex-M3微控制器为核心,使用MAX485芯片与PZ162L型电表进行RS485总线形式通信,获取电表内部寄存器的数据;使用SD2405芯片获取系统时钟,以判断发送的时间;使用WIFI232模块连接WIFI网络,将组帧数据传送至服务器。电表采集器的硬件设计如图1所示。
3.1 主要部件的选择 电表采集器使用TI公司生产的32位Cortex-M3内核微控制器LM3S8962,存储方式为哈佛结构,其独立的指令总线和数据总线使得该芯片可以同时进行读写指令和数据的操作。 该芯片工作频率可达50MHz,有256K的FlashRAM,3个UART串口和一个I2C总线接口。通用I/O口功能设计为:MAX485接UART0,即Rx端接PA0口,Tx端接PA1口,控制口接PF0口;WIFI模块接UART1,即Rx端接PD2口,Tx端接PD3口,其电源控制口接PF1口;SD2405接I2C总线接口,即SDA端接PB2口,SCL端接PB3口;异常指示灯连PF2口;电度测试按键连PE0口,电流测试按键接PE1口。 WIFI模块采用第三方提供的串口与WIFI数据包的双向透明转发模块,型号为U S R -WIFI232-X,采集器将数据组帧以串行方式送至WIFI模块,WIFI模块则以网络终端形式再将数据转送至服务器。 系统时钟芯片SD2405是一种内置晶振、充电电池、具有标准IIC接口的实时时钟芯片,可通过5位地址寻址来读写片内32字节寄存器的数据(包括时间寄存器、报警寄存器、控制寄存器、通用SRAM寄存器)。 3.2 采集器与电表通信的实现 厂区使用的P Z 1 6 2 L型数字电表集成了RS485通信协议,因此设计增加了MAX485芯片来完成LM3S8962的RS485通信。微控制器采用UART0串口与MAX485传输数据,通信模式为8位数据位,1位停止位,无校验位,波特率为9600.而采集端的电表波特率也为9600,而表的A、B端与MAX485的A、B端相连,并共用地线。设计中使用通用接口PF0作为MAX485的控制口,置高电平时向总线发数据,置低电平时从总线接收数据。另外,由于每个采集器要采集多个电表,在对电表配置时,需保证使每个表的编号唯一,以免因目标冲突引起采集错误。 3.3 WIFI模块的供电控制 在电表采集器中,WIFI模块耗电量和发热量都较大,且实际每天仅需一次连接无线网络,故在硬件设计中加入了WIFI模块的供电控制电路。该电路使用ST111电压控制转换芯片,可将电路电压稳定在WIFI模块所需的3.3V上,而芯片的控制端则与通用接口PF1相连。 |









