MAX6675芯片内部集成了冷端补偿电路。该芯片有简单的3位串行SPI接口,可将温度信号转换成12位的数字量,温度分辨率达O.
MAlX6675采用标准的SPI串行外设总线与ARM7进行对接,因此该芯片只能作为从设备(即串行接口芯片)。SPI(SeriaI Peripheral Int-eRFace)总线系统是一种同步串行外设接口,是Motorola公司推出的总线标准,它可以使ARM7单片机与各种外围设备以串行方式进行通信。由于S
4 GPRS无线数据传输模块
温度采集处理模块采集到的数据通过SPI总线传送到处理器,经过串口AT指令传输到GPRS模块,然后由GPRS模块通过GPRS网络和Internet网络将数据传送到远端接在互联网上的控制中心主机,在控制中心的网络上可以通过组态软件建立小型集散控制系统。至于组态软件的选择,可以根据需要选用商业组态软件,或者像笔者硕士毕业论文所做的小型集散控制系统控制软件。
有关利用AT命令操作GPRS模块在相关文献中已有描述,这里以华为GTM
基于ARM系列的32位单片机RAM资源比较丰富,利用C、C++等高级语言就能够编写应用软件。在这里选用C语言开发GPRS模块功能程序。利用ARM7S
GPRS模块是具有登陆GPRS网络功能的芯片加上相应的协助处理数字电路,在模块内部装上开通GPRS功能的移动电话卡,通过串行协议与ARM7处理器进行通信。将数据以数据包的形式,先通过PPP和运营商的Internet接入服务器连接,然后把数据包发送到Internet上,最后到达控制中心主机。数据的发送和接收遵循自有的点到点传输协议,保证数据安全、可靠的发送和接收。
GPRS无线数据传输模块软件结构设计总体可分为4个部分:
①参数配置部分。投入安装前,通过串口将系统与PC机连接起来,在PC机上的超级终端设置远程监控中心主机IP地址、端口、设备ID以及心跳时间等参数,在系统运行中也可以通过串口、GPRS或者短信命令来设置系统相关参数。
②连接远程监控中心主机。在这一部分,系统将发起1个TCP或UDP连接到远程监控中心。本系统选用基于TCP的自有点到点协议处理通信。
③自有协议处理。这个协议包括“登陆”、“数据”、“心跳”、“退出”及应答命令。“登陆”、“心跳”、“退出”命令及应答命令是协议的状态维持部分,系统与监控中心主机的双向沟通通过“数据”命令传递。基于ARM7处理器的内存配置可以达到8 MB,因此在软件设计中可以维护好基于TCP的点到点自有协议,使数据的传输更安全,确保关键数据不丢失。
④数据传输。处理器首先判断接收的数据是温度数据还是报警信号:如果是报警数据,则立刻停止其他数据的传输,将报警数据迅速发送出去;如果是温度数据,则按照一定的间隔传回监控中心。系统还通过GPRS模块读出从控制中心传来的各种命令,进行相应的处理。
5 远程监控软件模块
监控端位于监控管理中心,分为数据采集端和控制端两部分。数据采集端使用高性能PC机或者商业服务器,运行Windows XP/2000/2003Server系统或者Linux系统。在这里采用Delphi7语言编写基于CLX组件的数据采集系统,基于CLX组件的软件可以方便地移植到Linux系统中。数据采集系统将采集到数据存储在Oracle 9i数据库中,以便日后查询和制作报表。同时将数据通过TCP协议实时发送到各个控制端。
控制端模块采用笔者自己用Delphi7语言编写的组态软件。通过相关接口,组态软件与数据采集端进行数据交换。工作人员通过控制端查看系统中多个终端的温度采集数据和系统状态,也可以根据实际情况发送相关的命令到数据采集端,最后到达温度检测终端执行。控制端监控主界面运行图如图3所示。
结语
基于ARM7处理器的嵌入式温度远程无线监控系统,通过SPI接口连接MAX6675,不断地采集现场的监控温度,并通过自有点到点协议基于GPRS网络发送数据给远端的监控管理中心。在温度数据超过或者低于临界值时,及时发出报警,并将报警信号传回监控中心,实现了温度的无线远程监控,推进了工业温度监控的无线化、智能化,极大地减少了现场的硬件布线时间,同时也可作为移动在线检测终端使用。