(江南大学物联网工程学院,江苏 无锡 214122)
我国白酒历史悠久,与法国科涅克白兰地、英国苏格兰威士忌并称世界三大(蒸馏)名酒,采用成熟的纯种液态发酵、釜式或塔式蒸馏技术[1]。但由于纯手工监测的局限性,酒厂缺乏大量的数据积累来进一步研究环境与酿酒过程温度等诸多因素对酒品质的影响;并且依靠人力感知测温,既缺乏准确性,又浪费人力资源,即便现在大部分企业都使用半机械化的有线监控方式,当遇到恶劣的厂房环境时,如何布线仍是很大的难题。
无线传感器网络(wireless sensor network,WSN)是近几年来快速发展且倍受关注的新型网络技术,已成为国内外的热门研究课题[2]。本文将WSN技术引入酿酒过程监测系统,主要解决实际工程中布线难、设备点分散、灵活性差等问题。采用无线传感器网络技术不需要任何额外的布线,安装简单方便,稳定可靠,可维护性和可扩充性好。本文对传统网络节点做了一些优化设计,提高了节点的能耗和抗干扰性。系统在控制界面上采用组态软件LabVIEW编写控制程序,在不改变现有的工作流程和方式的情况下,即可实现环境数据的自动采集、生产流程的状态切换,以及酿酒过程的自动报警与生产状况查询[3]。
监测系统处于整个系统的顶层。监测系统通过基站接收来自路由节点的数据并转发给软件系统进行处理。各监测节点采集的温度、湿度等环境状态数据,需要通过无线模块转发给路由节点,通过路由节点转发给基站。基站与计算机网络相连,基站在获取数据后,将数据传给上位机软件进行处理和显示。各监测节点每固定时间间隔中采集一次信息,信息数据存放到事先定义好的帧格式内;然后以无线通信、动态组网的方式发送给附近的路由节点,路由节点经过处理转发给基站,基站获取信息并进行基本的处理;最后通过GPRS模块将数据传输给上位机进行处理和显示[4]。监测系统的工作示意图如图1所示。
图1 监测系统工作示意图
本监测系统是对酒厂车间里各无线传感器节点进行监测,因此整个系统分为数据接收和数据处理两部分。
由于传感器节点数目繁多,数据接收部分应当考虑安全、稳定、高效和并发处理数据的特性。每个传感器节点都将以自己的时间间隔上传数据,经过路由节点的处理与转发,基站收到路由节点上传的数据并通过GPRS上传至监控系统。这就要求系统能够并发处理大量的数据。
数据处理是系统的重要功能。原始数据到达后,系统需要判定它的真实性,如果数据失真则抛弃;当数据正确时,应当继续判定它属于何种数据,之后分情况进行处理,不同数据按照不同的情况对它进行提取和处理。处理完的数据应当存储至数据库,同时在上位机界面上显示出当前采集到的数据情况,如果遇到报警情况,则及时通过GSM模块将报警的内容发送到负责人的手机上。这样用户可以实时监测实时数据的变化,以达到信息化控制的目的。
整个监测系统有7个主要功能,具体如下。
① 监测数据管理(数据接收、数据筛选、数据处理、数据存储);
② 报警管理(报警规则、GSM短信报警、报警数据存储);
③ 监测对象管理(温度、湿度、开度、称重);
④ 监测信息查询(监测数据图形化显示、监测数据详细信息查询、查询历史数据、报警数据查询);
⑤ 组织机构管理(查询、增加、修改、删除);
⑥ 节点管理(查询、增加、修改、删除);
⑦ 基站管理(查询、增加、修改、删除)。
监测系统功能框图如图2所示。整个上位机界面均由虚拟仪器LabVIEW进行编程[5]。
图2 监测系统功能框图
2.2.1 系统流程
整个监测系统是一个数据处理的过程,可分为跟踪数据、处理数据、显示数据3个部分。整个系统流程如图3所示。
图3 监测系统流程图
2.2.2 监测系统与基站的通信
本文的监控系统采用GPRS传输数据的方式。系统采用服务器和客户端连接及数据传送模式。服务器一直处于监听连接,客户端周期性地发送连接请求,连接成功后进行数据发送和接收[6]。
在LabVIEW中,可采用TCP/IP节点来实现网络通信。监控系统与基站之间的通信过程如下。
① 监控系统打开通信通道,等待GPRS模块的连接请求。
② 监控系统接收GPRS模块的连接请求,处理连接并发送应答给GPRS。
③ GPRS模块接收到连接请求,连接成功后激活一个程序进程,发送数据并等待监控系统处理。
④ 监控系统端发送接收应答,关闭此通信连接。
⑤ 返回第一步,等待下一次请求。
服务器程序框图如图4所示。
图4 建立的服务器程序框图
2.2.3 监控系统与数据库的通信
数据库是本系统的核心部分,它记录整个系统各个环节的数据,供查询和分析,从而进一步对整个酿酒过程进行改进。目前,市场上数据库产品繁多,如 Microsoft SQL Server、Acess、Sybase、MySQL、Oracle等,各数据库均具有其独特的功能和特点。本文采用的 Microsoft SQL Server 是微软公司开发的一种关系型数据库管理系统,具有可靠性高、可用性强、可管理性好等诸多优点,可以根据用户自行定义的关系对数据进行管理、存储、处理等操作,为用户提供完整的数据库解决方案[7]。
上位机软件LabVIEW有多种方式与数据库进行通信[8-9],在此只举例说明一种方式,即用LabVIEW自带的工具包Database进行数据库访问。其操作步骤为:创建连接→打开连接→操作数据库→断开连接→销毁连接。这种方式在可靠性、可用性、可编程性、易用性和安全性等方面均优于其他方式。
2.2.4 监控系统与GSM模块的报警机制
系统内置GSM无线模块,管理人员不仅可以通过手机短信的方式查询当前系统参数,如发酵池温度、湿度等实时数值,还可以发送控制指令+设备名称来启动或停止目标设备。另外,当系统运行发生故障时,如温度偏离控制要求、出料口管道堵塞等,GSM无线模块能将故障信息通过短信方式通知班次、车间负责人,使信息能得到及时反馈,操作人员及时作出决策,安全可靠。
首先,需要选择好 GSM 短信模块所连接的串口编号和波特率,并成功打开串口。此时可以通过 LabVIEW 的 VISA 驱动程序串口读写 API 函数,对GSM 短信模块进行操作。按照上述要求,分别使用“AT+CMGF”、“AT+CSCS”、“AT+CNMI”、“AT+IPR”等指令设置 GSM 短信模块工作方式为 PDU 模式下的 UCS2 编码,并设置波特率为默认的115 200 bit/s。配置成功后,在读写前可以先使用 AT+“回车符”测试 GSM 无线模块与计算机的连接情况,如返回“OK”,则表示连接成功。
发送短信需要用到“AT+CMGS”AT 指令。该指令在正式发送短信内容前,需要先发送“AT+CMGS=”+“短信内容长度”+“回车符”至 GSM 无线模块。
3.1.1 采集节点
采集节点是酿酒生产过程中最底层的环节也是最重要的环节。采集节点包括CPU主控制模块、RS-232/RS- 485信号采集模块、开关信号采集输入/输出模块、SI4432无线部分、电池模块、电压/电源信号采集转换模块、脉冲信号采集模块。其中,CUP负责采集和处理温度数据以及完成对射频芯片的读写操作;无线射频模块SI4432无线部分负责无线发送或接收信号;电池模块采用可充电锂电池供电,是所有模块的能量来源。采集节点的原理图如图5所示。
图5 采集节点原理图
设计的采集节点具有多种采集接口,可用于工业仪表最常见的输出信号,如电压信号(1~5 V/0~10 V)、电流信号(4~20 mA)、脉冲信号以及RS-232/RS- 485输出信号等。整个数据采集通过低功耗的STM8L芯片进行处理,通过SI4432无线模块将处理完的数据以一定的格式发送给路由节点[10~11]。
3.1.2 基站
基站是酿酒生产过程中最顶层的环节。它收集路由节点发送来的数据,数据经过处理通过GPRS传输给监测管理系统。与采集节点和路由节点相比,基站可以使用有源供电。
3.1.3 路由节点
路由节点对探测节点采集到的数据进行转发。与传感器探测节点相比,由于汇聚节点不需要对温度进行采集以及信号调理,因此为了减小体积、节约成本,汇聚节点只保留了处理器模块、无线收发模块和电源模块。
3.2.1 驱动程序设计
系统对每一个采集节点都进行了编号,以便于识别各自采集出来的数据是否属于温度、湿度等酿造过程的相关参数。系统采用轮询方式进行通信,每一组采集节点采集一条生产线上的相关数据,统一由1个路由节点进行轮询并接收各个节点数据,接收完该组所有数据后统一上传至基站。
基站和采集节点流程图如图6所示。
图6 基站及采集节点流程图
3.2.2 数据包协议设计
由于SI4432 芯片已将底层传输协议屏蔽,发酵罐的温度数据采集不需要对节点进行精确定位,且芯片传输距离远和穿透能力强,本文采用基于单跳形式进行广播通信,仅对无线通信协议中的数据包格式进行设计。根据节点硬件特点,定义数据包的传输格式如表1 所示。
表1中,前导码、同步字、帧长度以及CRC 校验在收发过程中由硬件自动处理,系统只需设定数据包的结构和部分寄存器值即可。
表1 数据包结构
前导码 (Preamble)用于帧同步,长度大小由寄存器编程实现,本系统采用噪声不容易产生的规律信号0x55AA 作为前导码。
同步字 (SyncWord),主要用于通知节点可以开始接收数据,本系统设置为0x2DD4作为同步字标志符。
帧长度(Packet Length),大小取决于其后面一共所占字节的多少,用于判定每帧的数据结束标志。
有效数据载荷 (Payload)为处理器需要加载的信息。其中,Sensor_ID为探测节点的编号;Sink_ID为汇聚节点的编号;COMM在对于上行数据包时固定为0xFF,当为下行数据包时对应为实际的寄存器命令参数;Data1~Datan为传感器探测节点需要发送的数据。
CRC(CRC校验)由内置CRC 校检,避免接收到错误的数据包。
3.3.1 节点的能耗问题
能耗一直是影响节点的重要问题,它是节点生命力的重要体现。本系统的节点硬件均采用超低功耗的芯片,并根据节点各自工作状态和信息采集需求,进行智能休眠以节省电能。同时,在软件上采用通信路由算法和低功耗节能算法进一步节省能耗。
3.3.2 节点间通信的抗干扰问题
干扰问题一直困扰着很多研究无线通信的学者。在本系统中作者根据多年经验提出以下3点在车间中抗干扰的方法。
① 为解决实际运行中行车等大型电机设备的频繁启停引起的浪涌电压,系统采用交流电源滤波稳压的措施进行抗干扰。
② 为解决变频电磁干扰,系统的基站节点采用光电隔离和GPRS的通信方式。
③ 为解决节点间频段的相互干扰,通过软件编程错开发送时间,组与组之间采用不同频段。
3.3.3 无线通信的传输距离问题
无线通信距离对整个系统的影响也相当大,一旦有几个节点不在通信距离范围之内,则会给设计者带来很大麻烦。所以在硬件设计上布局要合理,并且采用性能优良的SI4432无线发射模块,在无阻挡物的情况下可以传输1 000 m。同时提高无线模块的发射功率。
酿酒过程监测系统经过一段时间试运行,可以对上传数据进行安全、有效的存储与处理,系统上位机软件已达到监测的目的,很大程度上节省了劳动力。由于本系统只是试运行,监测手段和无线采集的手段只能对一些简单的数据进行监测,因此,系统有待进一步改进和完善。此外,可根据酒厂的具体需求,加入环境日照、风力、蒸锅温度、压力等,使系统更趋于完善。
[1] 刑明月,静文.宝丰酒—酿造技术[M].郑州:河南科学教育出版社,2002.
[2] 姜建钊,张漫,李钰,等.无线传感器网络数据终端设计与开发[J].农业工程学报,2010,26(12):94-97.
[3] 崔洋,郭坤亮,何丽莉,等.基于无线传感器网络的传统发酵过程监测系统[J].仪器仪表学报,2010,31(7):1490-1495.
[4] 李想.基于WSN的茅台酿酒过程监测系统的实现[D].长春:吉林大学,2008.
[5] 黄建宇,张启升,宋成军,等.基于LABVIEW的多传感器火灾远程监控报警系统的实现[J].科技信息,2010(7):9-11.
[6] 高丙朋,南新元,魏霞.GPRS技术在机场高杆灯监控系统中的应用[J].自动化仪表,2010,31(12):35-39.
[7] 虞益诚.SQL Server 2005数据库应用技术[M].北京:中国铁道出版社,2009:313-324.
[8] 文皓,南金瑞,董小瑞.动态网站连接数据库方法应用于LabVIEW的研究[J].化工自动化及仪表,2010,37(8):98-100.
[9] 吉顺祥,刘旺锁,宋晓婷.基于LabVIEW的数据库访问技术[J].船海工程,2007,36(3):125-128.
[10] 张玲,刘九维,何伟.基于SI4432的高性能无线收发应用平台设计[J].电子技术应用,2010,36(12):124-127.
[11] 高认璟,刘国新,唐祯安.基于Si4432的无线射频遥控系统设计[J].通信技术,2010,43(10):137-139.