0 引 言
传统的数据采集系统,由于通信线路的限制,数据传输距离不可能很远。采用以太网传输,大大提高了数据的传输距离,但是由于以太网使用的TCP/IP协议较复杂,采用普通的廉价微处理器不能实现。在监测点分布范围广,数量多时,使用以太网构造数据采集系统的代价比较昂贵。利用短消息(SMS)进行远程无线通信,它具有通信成本低,不受通信线路及地区限制,保密性、可靠性高,抗干扰能力强等特点。利用短信息系统进行无线通信还具有双向数据传输功能,性能稳定,为远程数据传送和监控设备的通信提供了一个强大的支持平台。这里介绍的远程数据采集系统就是基于此开发完成的。
1 远程数据采集系统结构设计
远程数据采集系统由监控中心和数据采集终端两部分组成。监控中心由带有移动通信装置TC35模块的监控计算机和数据库服务器构成。TC35通信模块的通信通过RS 232串口与监控计算机连接;数据采集终端由以单片机为核心的数据采集器和TC35模块和传感器模块组成,监控中心和数据采集终端通过无线通信网络联成一体,系统结构图如图1所示。系统中数据、指令的接收和发送都是通过短信来实现的。
监控中心接收数据采集终端的数据并向终端发送组态和控制信号等,实现整个系统的管理、数据存储、数据库管理等功能。上位机监控站可并行地设置多个站点,采用不同的权限管理构成完整的监控体系,它的位置不受地域限制。数据采集终端安装于采集现场,与现场监控仪表和设备相连接,用以监测现场环境参数以及环保设备的运行状态,并将现场采集的数据经编码、压缩、存储后,由GSM网络实时传送到上位机监控站,同时接收上位机监控站发送的命令控制现场设备。
2 数据采集终端硬件实现
数据采集终端与现场仪表及设备相连接,实现数据采集、处理、发送以及设备控制等功能。它是一个智能化可独立运行的系统,具有良好的可靠性,能够自动处理通信堵塞、外部干扰等异常状况,保证系统稳定不间断运行,并长期保存现场历史数据。它主要由单片机电源部分、数据采集处理部分、TC35接口电路、传感器模块、输出控制器等部分组成。其硬件结构框图如图2所示。
2.1 电源电路设计
电源部分采用220 V交流电源供电,经电压转换、全波整流后接入供电电路,为整个系统供电。电源部分为数据采集处理部分提供3.3 V电压和隔离的24 V电压;为无线接口部分提供约3.6 V电压。
2.2 数据采集处理部分
数据采集处理部分由中央微处理器、键盘显示电路、数据存储器、实时时钟等组成。中央微处理器选用AT89C51。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
键盘和显示电路模块用来初始设定或者当用户操作人员在现场时,可以通过此人机界面,将初始状态和一些命令要求置入单片机,使其完成特定的功能。
实时时钟为数据的存储和发送提供精确的绝对时间,亦可通过上位机监控站对终端监控站时间进行设定和校准。数据存储器采用大容量FLASH存储器,可对现场采样数据进行长期存储。
2.3TC35i接口电路
TC35i是SIEMENS公司推出的新一代一款双频900/1 800 MHz高度集成的无线通信GSM模块,可以快速、安全、可靠地实现系统方案中的数据、短信息服务和传真。TC35i无线模块内部结构如图3所示,TC35i共有40个引脚,这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。它通过ZIF连接器分别与电源电路、启动与关机电路、数据通信电路、语音通信电路、SIM卡电路、指示灯电路等连接。
TC35i接口电路的设计主要是40针的电缆与单片机的信号接口。TC35i的1~5脚提供3.3~5.5 V峰值电压和2 A的直流电源;6~10接地;15脚为点火信号,接到单片机的P1.3脚,可以通过软件启动模块;16~23脚是RS 232串口的功能引脚,其中18脚,19脚分别为发送RXD和接收TXD引脚;24~29脚对应的是SIM卡的引脚;32脚为指示灯引脚,当未插入SIM卡或者40脚的电缆没有接好或者模块正在入网时,指示灯处于闪亮状态,亮600 ms灭600 ms,当模块登录网络时,指示灯亮75 ms灭3 S。
3 数据采集终端软件的设计
数据采集终端软件的设计用C语言开发。主要用于实现单片机系统数据通信模块TC35的初始化、现场数据的定期采集、控制端口的数据输出、告警短信的发送、指令信息的接收及分析执行等功能。数据采集终端软件的设计包括主程序、串口中断服务程序和看门狗程序。软件设计的关键是单片机如何利用AT命令控制TC35模块发送和接收短消息。
(1)主程序。负责单片机、TC35的初始化,连续循环采集各通道值,再经数值滤波处理后存储该值。主程序在完成单片机和TC35模块的初始化后,将立即开放串口中断,进行中断扫描,监控是否有数据到来,以便实时接收上位机发来的短信数据,主程序流程如图4所示。
(2)串口中断服务程序。负责短信的接收和发送。如果发现有新短信,则根据自定义协议从短信内容中提取来自监测中心的命令数据。如果是查询监测站点的状态命令,则将传感器采集到的数据通过TC35终端以短信息的形式发送到监控中心;如果是设置运行参数命令,则根据命令修改设备中相应的运行参数。
(3)看门狗程序。负责监视中断服务程序的运行时间,若在规定的时间内未完成任务,则强行退出,程序从入口重新执行,以防止死机现象。
4 监测中心软件的设计
主站监控软件采用VC++进行前台开发,监控中心的软件采用模块化方式设计,主要的软件模块包括用户管理模块、通信控制模块、数据管理模块、报警处理模块。系统完成远程数据采集的关键是短信息的成功接收与发送,因此通信控制模块是监测中心软件设计的重点。
监控中心PC机通过RS 232串口和TC35连接,通过发送AT命令与它通信。在Windows环境下完成串口通信,目前主要有以下两种方法:一种是利用Win-dows API通信函数,另外一种是使用现有的ActiveX控件即MSComm控件来实现。该系统采用前一种方法,因为监控中心要根据监测设备的多少动态地决定需要多少个TC235,也就是要动态决定需要哪几个串口。如果采用串口通用控件,在系统软件运行初始,就启动所有的串口线程,会浪费系统资源。
5 结 语
SMS短信息的远程数据采集系统将现代通信技术融合到传统产业中,实现远程数据的采集技术,为远程数据采集系统提供一种便捷的无线数据传输方式。系统具有不受通信线路及地区限制,可靠性高,抗干扰能力强等特点;系统硬件结构简单,主要由软件实现监控过程,便于维护和扩展。该系统对于覆盖范围广,数据量较少,监测点分散的监测监控领域具有一定的参考价值。