基于多通信模式的通用工业远程监控系统设计
2012-11-26刘法龙高炳像
刘法龙,刘 俊,高炳像
(杭州电子科技大学自动化学院,浙江杭州310018)
0 引言
在现代实际工业生产当中,各种远距离分散工业设备的工作状态、温度、压力、流量等数据变量实时监控问题广泛存在于煤炭、石化、电力、水利、气象、交通等重要生产部门[1]。由于这些重要部门与人们的生活息息相关,其对数据采集的可靠性与监控的实时性要求非常严格。目前,大多数生产部门一般选择使用数传电台、GPRS/CDMA、以太网等数据传输模式中的某一种,但却无法满足实际工业领域中对于数据变量采集的可靠性要求[2]。针对这一问题,研发出一套集成多种通信模式的通用数据传输设备,确保了数据采集和传输的可靠性,并给出对应的通用工业远程监控组网设计方案。样机试验结果表明该设备使用方便,系统组网工作可靠稳定。
1 基于PLC的常用参数采集方案设计
工业生产设备中经常需要采集温度、压力、流量等变量。下面给出基于PLC的几种常用参数的数据采集系统。实际工业生产中温度这个参数是无处不在的,因为其能直接反映出生产设备是否处于最佳状态[3]。温度的测量变送系统如图1所示,热电偶(温度传感器)测得的温度经温度变送器变送成为标准电信号:4—20mA,经过数显仪表在现场进行显示,然后由PLC的模拟量采集通道送给上位机,压力与流量数据采集系统原理同上。
图1 温度变送模块
2 通用数据传输设备设计方案
2.1 通用数据传输设备硬件组成及结构设计
本文设计了一套集成多种通信模式的通用数据传输设备,通用数据传输设备的硬件结构如图2所示。其硬件部分包括微控制器以及RAM与Flash单元,网络通信模块与其他辅助模块。微控制器(MCU)采用 ARM7-LPC2214,外扩512KB的SRAM和2MB的片外FLASH用于参数保存,网络通信模块包括内嵌 TCP/IP协议栈GPRS模块MC55,CDMA模块EM200,以太网模块同样采用内嵌协议栈的网络芯片W5100。其中以太网模块与微处理器之间通过并行总线相连,而CDMA和GPRS模块均通过串行总线与微处理器相连,由于LPC2214自身的两组串口已分配完毕,因此便需要通过串口扩展单元新建两组串口用于连接CDMA与GPRS单元,串口扩展单元通过LPC2214外部扩展并行总线与微处理器单元相连。
图2 通用数据传输设备硬件结构图
2.2 实时通信设计方案
微控制器需要管理两组串口,考虑到实时性的要求,采用轮询的方式来处理串口收发明显是不合理的,下面结合GPRS单元中的MC55模块来具体阐述收发端数据传送的基本过程。如图3、4所示列出了收发端数据传送示意图。
2.2.1 接收端的处理
图3中,串口0用于通信终端与外部工业控制设备交换数据,MC55模块则通过串口1与微控制器通信。接收端将来自GPRS网络上的数据传输给远程监控中心,其中串口1采取中断方式接收数据,串口0采取查询方式发送数据。
2.2.2 发送端的处理
发送端接收工业控制设备的数据,将其通过GPRS网络送至接收端。若仍采用上面中断加轮询的方式是不可取的,MCU通过串口1对MC55的操作是依照AT指令集来完成,执行下一条AT指令需要模块执行后返回值的指示,在MCU要求MC55通过TCP/UDP协议发送数据时,当返回值指示成功后才可以开始下一次发送。即串口0需要接收来自现场设备的数据,同时串口1需要接收来自MC55的AT命令执行后的响应,在接收时间上两者产生冲突的概率较大。
在实际工作中,为了保证无丢失地接收来自现场设备的数据,串口0的中断优先级必然要求高于串口1,但是串口1发送给MCU的应答响应是下一步操作的依据,因此也要完整接收。在实际测试中,若串口0和串口1均设定在较高波特率(如115 200bps);即使MCU的两个串口自带16Byte缓冲区,却仍然难以兼顾两个串口的接收操作,经实验测定,在两个串口同时连续接收50 000个字节后,高中断优先级的串口0可以无丢失地接收这50 000个字节,而低中断优先级的串口1会丢失近6 000个字节。因此需要在确保串口0无丢失接收现场设备数据的前提下对串口1的接收进行特殊处理。
解决方案是扩大串口1自带缓冲区,使其能够完整容纳TCP/UDP发送数据AT指令的应答结果,根据MC55技术手册,通过TCP/UDP协议发送数据指令的响应结果在18至21个字节 ,因此缓冲区须大于等于21个字节,MCU自身串口缓冲区有16个字节,扩大串口1的缓冲区须另选择芯片,综合考虑选择具备64个字节缓冲区的TL16C752B。该芯片具有64Byte的FIFO,触发中断FIFO深度可设定,可支持最高3Mbps的波特率,支持硬件自动流控。
此方案在实际中可满足实时性要求,图4中,串口0中断接收来自现场的数据,MCU将其按照一定的AT指令格式打包发送给MC55模块,MC55完成发送后,将响应结果通过串口1返回给MCU,若其正忙于接收来自现场的数据,则响应结果被压入芯片缓冲区中,并通过中断的方式停止MCU对串口1的接收操作,当MCU检测到串口0处于接收空闲状态时便立即读取缓冲区中的数据,MCU视应答响应结果成功与否,判断是否启动新一轮数据的发送。
3 通用工业远程监控系统设计方案
整个通信终端组网示意图如图5所示,通信终端通过串口与工业控制设备相连,工业控制设备再与各类传感器相连,传感器负责采集温度、压力、流量等各种模拟量及引起报警的量值,将采集到的实时值数据传到发送端,通信终端有GPRS、Ethernet、CDMA与数传电台四种通信模式可以选择,这样便可以根据具体的实际情况选择不同的通信模式,充分利用多种通信模式的优点,弥补各自的缺点,实现优势互补。其中应该说明一点的是当采用GPRS、Ethernet、CDMA这3种网络模式之一时,由于其所采用的TCP协议并不支持客户端之间的直接通信,需要通过引入中间服务器的方式实现点对点的通信[4]。
3.1 智能选择接入网络
通用数据传输设备有手动模式与自动模式两种可供用户选择的通信组网方式,当使用手动模式时,用户根据所需要的具体通信模式对设备拨码开关进行相应设置。由于实际工业生产中不同领域对通信模式的接入方式要求不同,因此本套设备引入了自动模式用于智能选择接入网络。智能选择网络是指通信终端在使 Ethernet、GPRS、CDMA 这三种网络模式时,在点对点通信中,根据自身所处网络环境智能选择最后用于通信的网络。
图5 通用数据传输设备组网设计图
举例说明智能选择的具体过程:以Ethernet接入为例,将拨码开关设置为自动模式后,实时操作系统启动后先进入网络测试任务,该任务先读取Flash中的参数,然后对以太网单元初始化,完成后开始以太网测试任务,首先指定服务器端测试端口为60 000,通信终端向服务器的60 000端口发出链接请求,建立链接后,服务器每隔1s向通信终端发送100个字节的测试数据,反复发送20次,通信终端收到2 000个字节后立刻向服务器发出关闭链接请求,服务器收到请求后停止向通信终端发送测试数据,至此该测试链接关闭,客户端计算出接收该20次数据所用时间,检查这2 000个字节中是否有误,出现错误字节则标记该网络不稳定,CDMA和GPRS网络测试完全同上,3种网络测试完成后,比较其中稳定的网络,正式通信时即采用该网络。
4 结束语
油田、煤矿、化工等工业生产部门常常分布在人烟稀少的偏僻地区,分布区域广且现场人员较少,面临人为和自然因素破坏的危险,远程实时数据采集、传输、处理是安全生产管理的重要环节,实时数据监控任务较为艰巨[5]。本文研发的通用工业远程监控系统可以最大程度地适应不同网络的接入环境,具有智能选择最佳网络的功能,由于本套系统中的通用数据传输设备集成了多种通信模式的特点,其可应用于煤矿、电力、油田、城市水处理、报警系统、灌溉、森林等系统或设施中的实时数据传输。
[1] 汤宗清.GPRS/CDMA在高速公路电力监控系统中的应用[J].机电技术,2011,8(4):95-99.
[2] 郭雷宇,魏长军.无线数传电台在供水调度系统的应用[J].电子元器件应用,2010,12(5):64-65.
[3] 郭荣祥,马和平,陈树树.数传电台与GPRS相结合的水厂遥控系统研究和设计[J].通信与信息处理,2010,29(11):54-57.
[4] Yang Li,Cao Xie-dong,Yuan Hai- yan.Technologies research of remote monitor system on oil-gas production [J].Computer Engineering,2009,35(1):247 -249.
[5] Gu Yaning,Su Hongye,Dong Lida,Shen Lihui.Remote surveillance industrial terminal base on wireless communication techniques[J].Computer Measurement& Control,2007.15(3):288 -290.