基于STM32单片机和EM310的无线终端设计
扫描二维码
随时随地手机看文章
0引言
在监测监控及数据采集系统(SCADA)系统中,采集数据的实时性和准确性对系统有很大的影响,合适的通信网络可以有效提高SCADA系统的效益,本文设计的GPRS无线终端在SCADA系统中的应用解决了上述问题,除满足数据实时性和准确性外,还具有建设成本低.结构简单.传输容量大.可远程控制等优势.
1 终端简介
1.1终端结构
无线终端由EM310GSM模块和STM32F103单片机构成,以STM32F103单片机为核心,STM32F103单片机有丰富的通信接口,用于连接EM310和现场仪表;还有丰富的I/O资源,可以扩展较大容量的RAM,一方面存储指令集,用于解读指令并作出相应的动作;另一方面用于暂时存储监测点采集到的数据.终端利用GPRS技术与控制中心进行通信,GPRS的通讯网络具有建设成本低.联网快速.传输容量大.传输高速等优点.如图1为该无线终端和监测点仪表的结构图.
1.2终端在SCADA系统中的应用
在SCADA系统中无线终端的主要任务是通过GPRS网络
和Intemet网络实现监测点与控制中心之间的数据收发,其结构如图2所示.
1.2硬件设计
终端主要实现的功能有:数据收发.指令解读和控制监测点仪表.满足以上功能,电路主要分成几个部分:EM310模块电路.外扩RAM电路.仪表串口电路.
(1)EM310 模块在SCADA系统对无线模块传输数据的速度和容量有一定 的要求,另外,在某些系统对终端的工作温度要求较高.EM310 与西门子MC55相比具有髙低温范围大,可以应用到一些温度 要求比较高的场合;与GTM900B相比,体积较小,功能较强, EM310内置协议找,一次可以发2K字节,能够满足大多SCA- DA系统的要求;有MUX功能,能实现大数据量的传输.
EM310模块的作角是从STM32单片机的串口上接收数据 并发送和接收无线数据通过串口传输给STM32单片机,在连接 GPRS网络时需要SIM卡的验证,同时通过LPG引脚显示当前 的状态.因此,EM310模块电路主要包括串口部分.SIM卡连接 部分和LPG指示灯连接部分,另外还有启动和复位部分.
如图 3 所示 SIM_CLK.SIM_VCC.SIMJO.SIM_RST 分别 为SIM卡的时钟.电源.数据以及复位线;LPG用于连接网络状 态指示灯;RST为复位管脚,低电平有效,此管脚在靠近50PINB2B连接器处并联100nF的电容到GND,用于静电释放防护; TERM-ON为开关机管脚,将TERM-ON管脚拉低50ms,即可 开机,再将TERMJ3N管脚拉低50ms,即可关机.VDD-IO为 I/O 口电源管脚,VDD-IO人电压U与/DTR./RTS./TXD外加 串联电阻R的关系计算公式:R=3.5 * U-11.3K.
(2)外扩RAM
外扩RAM用于存储指令集和暂时存储仪表检测数据.当终端收到数据包时,单片机会根据收到的数据包,在RAM中找到与该数据包相应程序段,并运行该程序段,即做出控制中心要求的动作,如读取仪表的参数.设置仪表参数.读取监测数据等.
RAM的读写速度很大程度上决定了终端收到数据包后的响应速度,因此终端选用高速静态RAM IS61LV25616,采用ISSI的高性能CMOS技术,利用高度可靠的工艺和创新的电路设计技术,具有高性能和低功耗的特点.
IS61LV25616有待机模式,该模式在CMOS输入电平下的功率耗散减少,在终端没有收到指令也无需发送数据时RAM可以处于待机模式;该芯片还可以通过使能接口的连接很好地实现内存的扩展;数据访问包括高字节访问和低字节访问两种.
(3)仪表串口
仪表串口用于监测点仪表与单片机之间的连接,仪表串口电路选择RS232转TTL电平的形式,如图4,DB9的1.4.6短接,RS232电平通过收发器SP3223EA进行数据的收发.在SP3223EA中C1+和C1一之间接极性电容作为电压倍增器的泵电容,C2+和C2一之间接极性电容作为反向电荷泵电容,TXfN为TTL/CMOS驱动器输入,TxOUT为RS一232驱动器输出,RxlN为RS一232接收器输入,RxOUT为TTL/CMOS接收器输出.[!--empirenews.page--]
SP3223EA通过倍增和反向实现TTL电平到RS232电平的转换.
2软件设计与调试
软件设计需要通过串口通信实现EM310的初始化.参数的设置.数据的发送和接收.
2.1程序流程图
单片机与EM310连接的串口是串口1,与仪表串口是串口2,在主程序中首先定义一些全局变量,然后进行初始化,包括系统及外设时钟的初始化.外设及通用lP端口的初始化.串口初始化.定时器初始化,最后进入循环一直检测是否有收到数据或者仪表串口是否需要发送数据.若收到数据则进入接收数据的子程序,若需要发送数据则进入发送数据的子程序.程序流程图如图5所示.
2.2调试过程与结果
这里采用了串口调试工具模拟监测点仪表,可以给GPRS无线数据终端传数据,再由EM310发送到控制中心,也可以从EM310读取其收到的数据;用TestGPRS软件模拟控制中心软件.可以显示从串口调试工具发送来的数据,也可以通过网络向串口调试工具发送数据.
(1)EM310初始化
EM310的初始化包括信号检测.SIM卡检测.模式选择.注册网关.用户名和密码.在信号强度足够.SlM卡正确连接的情况下就可以进行注册了,首先进行模式选择,确定是否让模块对输入输出数据进行压缩转换;然后注册网关.用户名和密码;最后等待分配lP.初始化顺序为:①检测信号强度;②检测SIM卡是否正确连接;③选择模式;④注册网关;⑤注册用户名和密码.
(2)设置命令及收发测试
设置命令主要是协议类型.IP和端口号的设置,IP和端口号必须与数据中心的lP.端口号一致,之后才能通过AT命令进行数据的收发.设置和收发数据的方法如下:
发送:AT%IPOPEN=“TCP”“210.32.34.65″,8001
返回:CONNECT
发送:AT%IPSEND=”31323334354142″发送数据 12345AB
返回:%IPSEND:1,15
OK
利用TestGPRS软件向8001端口发送AB1234,然后在串 口测试工具里会显示:%IPDATA:1,1,6
发送:AT%IPDR
返回:%IPDR: 1,1,6, “414231323334″
OK
3结束语
本方案可以应用于一般的SCADA系统,具有结构简单,扩展性强.建设成本低.传输速度快.连接快速的特点,能够有效解决偏僻监测点通信网络构建成本高.难度大的问题,调试结果证明方案的可行性.STM32单片机丰富的I/O资源和通信接口资源等,可以满足各种SCADA系统终端的需求,便于用户二次开发.