基于ARM处理器与GPRS技术的水厂监控系统
扫描二维码
随时随地手机看文章
目前远程监控主要有以下方式:短距离长线监控、通过市话网、通过Internet网络、通过自组网络(CDPD网)及通过数传电台监控。
短距离长线监控和通过自组网络自行建设通信网络,信号质量得以保证,但建网初期投资巨大,运营期间维护耗费较高;通过市话网和Internet方式,通信效果好,信号量大,运营费用相对低廉,但接入网络受到限制,且网络运行效果取决于网络运营商,难以达到工业现场覆盖面;数传电台出现较早、应用广泛,信号传输实时性好、运行费用低,但建网初期投资巨大、传输范围有限,易受空间无线信号干扰。
通用分组无线业务GPRS(General Packet Radio Service)是在现有GSM系统上发展出来的一种新的承载业务,目的是为GSM用户提供分组形式的数据业务。
1 系统的总体结构
监控系统由现场数字量和模拟量采集及处理、GPRS组网通信、监测中心上位机软件三部分构成。其中,现场数据采集由系统监控终端完成,终端同时具有分析、记录采集数据供上位机查询,并在现场出现异常事件时主动上传报警信息的功能;GPRS通信网络是监测中心与现场监控终端之间数据传输的桥梁,使现场相关数据及时传送到监测中心计算机;监测中心软件一方面通过GPRS网络与现场监控终端进行双向通信,另一方面为用户提供一个可视化界面。监控系统的结构。
由于GPRS网络的工作方式是以IP地址寻址为基础的,所以上位机作为网络的服务器端,指定固定的IP和端口号,而终端只需要简单接入Internet,具备公网动态分配的IP地址即可。终端接入Internet具备IP之后,主动向上位机发送数据进行连接。当连接通道建立以后,上位机和终端即可以进行双工数据传输。
上位机根据用户要求,通过GPRS网络向终端发送数据帧。终端接收到数据帧后,先分析内容,再执行相应命令。
系统的具体控制目的是在水厂监控中心与水源地之间利用GPRS网络实现远程监控,在水源地处每口井都用继电器模块4060控制潜水泵的启停,电量模块采集电压及电流等信号,控制器MCU通过GPRS模块与控制中心进行数据交换。控制系统分为三个单元:控制中心(一水厂)、水源地及二水厂。
2 系统硬件设计
2.1 控制器选型
控制器MCU选用PHILIPS公司最新推出的基于32位ARM7TDMI-S、LQFP48封装的LPC2103,其带有32 KB嵌入的高速Flash存储器,128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。在完全掉电模式下,达到6 μA的低功耗水平,与高级51系列单片机相比,LPC2103具有极高的性价比优势,尤其是价格与单片机相差无几。
多个32位和16位定时器、一个改良的10位ADC、所有定时器上输出匹配的PWM特性、以及具有多达13个边沿或电平触发的外部中断管脚的32条高速GPIO线,使这些微控制器特别适用于工业控制和医疗系统中。
2.2 EsayJTAG-H仿真器
EasyJTAG-H仿真器是一款新型的仿真器,目前,可以支持LPC2103微控制器和部分ARM9芯片,支持ADS1.2集成开发环境,支持单步、全速及断点等调试功能,支持下载程序到片内Flash和特定型号的片外Flash,采用ARM公司提供的标准20引脚JTAG仿真调试接口。这款仿真器需要 H-JTAG软件(调试代理)的支持。
H-JTAG是一款简单易用的调试代理软件,功能和流行的MULTI-ICE类似。H-JTAG包含两个工具软件:H-JTAG SERVER和H-FLASHER。其中,H-JTAG SERVER实现调试代理的功能,H-FLASHER则实现了Flash烧写的功能。
H-JTAG支持ARM公司的RDI接口。通过RDI接口,H-JTAG能够支持大多数主流的ARM调试软件。JTAG调试接口。
调试软件(AXD/RVDS/IAR/KEIL)通过RDI接口与H-JTAG SERVER进行交互。H-JTAG SERVER通过与并口连接的JTAG调试板控制目标板。H-JTAG提供了灵活的JTAG接口设置,通过设置H-JTAG可以支持不同类型的JTAG调试板,如WIGGLER、SDT-JTAG。
2.3 GPRS模块选型
电量模块及继电器模块将采集到的数据通过RS232传送到处理器,然后由GPRS模块通过GPRS网络将数据传送到远端接在互联网上的网路端控制中心。选用MC55外接SIM卡,即可通过串行协议与ARM处理器通信,将采集信息以资料包的形式,先通过PPP与运营商的Internet服务器连接,然后把资料包发送到Internet上。
MC55包含了高性能GSM/GPRS应用的所有解决方案:基带处理器、供电电路、完整的无线电频段电路(包括电源放大器和天线接口)、电源放大器是从供电电压BATT+直接引出来的。MC55的软件存储在Flash中,静态RAM为GPRS连接提供了额外的存储空间。该单元应用程序的物理接口是通过板对板的连接器来实现的。它是由50个针脚构成,用来控制该单元、传输数据和声音信号及供电。MC55包含ASC0、ASC1两个串行接口,为综合人机接口界面提供更大的适应性。
2.3.1 启动MC55
通过ignition line/IGT(Power on)时,需要/IGT(Ignition)信号驱动到接地电压至少100 ms,并且最少距离VDD的最后一个下降沿10 ms,可以通过使用一个开漏极/集极驱动电路避免电流流入该引脚。在电池供电应用程序中,/IGT持续时间最少必须达到1 s,这段时间中连接充电器并且可以从Charge-only模式转换到Normal模式。
2.3.2 关闭MC55
(1)正常关闭程序——通过AT命令关闭
最安全的方式就是通过发送AT ^ SMSO命令关闭。程序可以使MC55从网络注销,使软件进入安全模式并且在断电之前保存数据。在这种模式下,只有RTC(实时时钟)保持运行。关闭该装置之前先发送
^SMSO:MS OFF
OK
^SHUTDOWN
发送AT^SMSO之后不要再发送其他的AT命令。这种方式为软件关闭。
(2)紧急情况关闭
紧急情况关闭方法称为硬件关闭,将板对板连接器的/EMERGOFF信号接地=直接关掉电源,软件控制的应用程序失效。
3 系统软件设计
3.1 控制器LPC2103软件设计
控制器LPC2103的软件功能主要分为三个方面:对现场采集量及继电器I/O量的处理、预警功能及与GPRS模块的通信。现场电量模块输出的电量信号较复杂,主要表现在精度高、种类多,且含有大量冗余信息,LPC2103针对这些问题作出相应处理,输出具有校验位、起始位、停止位的电压、电流、功率等信号。当采集量在允许范围之外时,LPC2103做出预警响应,优先上传到监控中心进行报警。LPC2103与GPRS模块通过串口发送AT指令实现通信。设计流程。[!--empirenews.page--]
3.2 GPRS模块设计
在本系统中,GPRS模块主要完成与LPC2103控制器之间的数据交换和通过移动公司的GPRS网络与远端计算机进行数据交换。模块的串口发送AT命令实现对模块的控制,该模块的主要功能有:(1)内嵌TCP/IP协议栈,能通过移动公司的GPRS网络进行数据交换;(2)SMS短信息的发送与接收; (3)GPRS数据包最高可达1.5 KB;(4)GPRS模块与ARM处理器器经AT指令集通过串口进行数据通信。GPRS模块与ARM处理器完成数据收、发的程序流程图。
3.3 上位机软件的编写
上位机采用Visual Basic与组态王6.53进行开发,软件设计主要包括通信程序的设计、数据管理程序的设计以及系统界面的设计。VB中提供了用于数据通信的MSCOMM 通信控件,如何利用该控件提供的属性、方法和事件是设计运行稳定、数据传输正确的通信程序的关键。
GPRS模块通信过程的实现:
(1)查看SIM卡是否插入
①命令:AT+CPIN?
②响应:READY:正常
ERROR:GPRS模块未检测到SIM卡
(2)查询是否附着GPRS网络
①命令:AT+CGATT?
②响应:AT+CGATT=1:附着网络;AT+CGATT=0:未附着网络
(3)查询是网络信号强度
①命令:AT+CGREG?
②响应:0~31,0表示当信号强度,>18时就可以进行GPRS通信
(4)拨号
①命令:ATD*99***1#
②响应:CONNNECT:拨号成功,可以进行PPP交互
NO CARRIER:拨号失败
本监控系统使ARM处理器与GPRS模块相结合,提高了系统的可靠性,解决了GPRS模块频繁通信出现的滞后性的问题,降低了数据的误码率。使用VB与组态王相结合设计的上位机程序,在保证了界面美观性的同时,解决了PC机与GPRS模块通信的问题,降低了开发成本。本系统已用于实际现场,效果良好。