0 引 言
在各类社会公共场合或企业生产区间,如果发生易燃易爆、有毒有害等危险气体泄漏,却不能及时发现险情并采取补救措施,将会带来极其严重的后果。因此实现对危险气体的有效监测是非常重要的。危险气体监测系统一般具有以下特点:由于其监测目标和应用场合的特殊性,因此危险气体的浓度监测对准确性与实效性有着严格的要求。此外系统应当具备低成本、低功耗、安装简便等特点。传统的气体监测系统无法实施远程监控,过分依赖以电线电缆为基础的通信设施,可拓展性不足。即使是最新的无线气体监测系统,也存在成本高、节点类型单一等缺陷。在实际运用中,由于监测区域面积较大,将会导致系统缺乏良好的联动性,发现险情滞后和险情排除速度缓慢等问题。
针对上述特点和原因,本文设计了一种基于ZigBee模块网络并具备巡逻功能的危险气体监测系统。首先设计了一种危险等级划分方法,在最大程度上满足了准确性这一指标。其次设计实现了灵活独特的巡逻员手持节点,结合区域定位功能的应用,使得该系统能够及时发现气体的泄露并采取相关应对措施。最后基于ZigBee无线模块 的设计使系统具备了安装便捷和功耗低的特点。
1 系统总体机构
本系统主要包含底层ZigBee无线模块网络、上位机两大部分。系统总体结构如图1 所示。
图1 系统总体结构
ZigBee网络包括终端、路由器和协调器。其中终端定制了两种:固定监测节点(布置在监控区域内不同位置实施固定监测)和巡逻员手持节点(由巡逻员配备实施移动监测)。路由器除了用来路由信息的普通路由外还定制了锚节点(每个锚节点拥有唯一的路由ID用来实现区域定位功能),协调器实现信息的汇聚及格式的转换。上位机包括客户端监控软件及数据库服务。
2 系统工作流程
在本系统中,管理员可以通过协调器上的OK键,CANCEL 键对所有固定监测节点进行开启与关闭操作。固定监测节点接收到协调器发出的开启命令后,随即向离该节点最近的锚节点申请路由ID。
当成功收到路由ID 后,将自身监测状态置为开启,同时向协调器返回开启成功命令。在开启状态下,当气体发生泄漏导致浓度超标时,传感器采集模块会输出低电平。这时固定监测节点会同时向协调器和巡逻员手持节点发送险情信息,信息包括险情等级与险情位置。
协调器在接收到固定监测节点发来的各种信息后,会将ZigBee数据帧解析转化成串口帧,这样管理员可以通过上位机客户端实时有效的掌握整个监测区域的情况。
巡逻员手持节点作为独立可移动的监测节点,当其在巡逻过程中自身监测到气体泄漏时,会发出声光报警。巡逻员在个人不能解决险情的情况下,可通过节点上的HELP 键向其他巡逻员发送包含该节点所在区域位置信息的请求支援命令,除此之外,当巡逻员手持节点接收到固定监测节点险情信息或其他巡逻员手持节点求助信息时,会发出声光报警与LCD 显示,便于巡逻员快速准确赶往以便排除隐患。当险情被排除后巡逻员可通过固定监测节点上的撤销险情键清除险情,将固定监测节点重新设置为监测状态。
在遇到设备检修等特殊情况下管理员可以通过协调器上的CANCEL 键暂时关闭监测系统,并在检修完毕后通过OK 键重新开启。
3 下位机子系统设计
3. 1 系统硬件设计下位机子系统的硬件设计主要包括:固定监测节点,巡逻员手持监测节点、锚节点、路由节点和协调器5 部分。
协调器主要负责建立ZigBee数传网络,同时汇聚和处理来自底层网络的监测信息。在本系统中协调器还负责所有固定监测节点的开启与关闭。协调器硬件部分由CC2530 模块、电源管理单元、串口转USB(Universal Serial BUS) 模块、JTAG ( Joint TestAction Group)接口、USB 接口等电路组成。
锚节点与路由节点主要负责信息的路由,其中锚节点是在路由节点的基础上增加了区域定位的功能,二者硬件部分组成完全一致,包括由C2530 模块、电源管理单元及天线、晶振等电路。监测节点上所采用的TGS813 是对甲烷、丙烷、异丁烷灵敏度很高的半导体型气敏传感器。当存在检知对象气体时,其电导率随空气中气体浓度增加而增大。使用简单的电路即可将电导率的变化,转换为与该气体浓度相对应的电压信号。传感器数据采集电路如图2 所示。
图2 传感器采集处理电路
通过调节电路中的Rd1 可改变电压比较器“+”端的参考电压,从而设定气体报警浓度阈值。巡逻员手持节点是为提高险情排除效率而特别设计的终端节点,该节点随巡逻员在网络内自由移动。不仅可以独立监测,还能实现与固定监测节点、其他巡逻员手持节点间的联动。为了实现这一灵活特性,硬件部分需要包括CC2530 模块、电源管理模块、天线、晶振、蜂鸣器、按键、液晶显示模块、以及传感器采集模块。
固定监测节点负责对危险气体浓度的监测,其硬件部分主要包括CC2530 模块、电源管理模块、天线、晶振、蜂鸣器以及传感器采集模块。节点结构如图3 所示。
图3 固定监测节点结构
由于半导体型气体传感器比较容易受到外界环境的影响,而且对危险气体的监测相较于常见的温湿度监测有着更高的严肃性。为了提高系统的可靠性和防止发生误报,本文提出了一种简单的危险等级划分方法:固定监测节点中采用了两块传感器采集模块,并且其中一块拥有独立的电源管理模块。
气体传感器2 采集模块的气体报警浓度阈值根据GB50493-2009《石油化工可燃气体和有毒气体检测报警设计规范》设置成标准值。而气体传感器1采集模块则设置为标准值的90%。危险等级划分方法见表1。
表1 危险等级划分
表在完成所有硬件设备的设计后,对它们共有的CC2530 模块进行了简单的功耗分析,根据CC2530芯片数据手册可知单个芯片在发送工作模式下功耗约为91 mW。本系统中由CC2530 芯片加上简单的外围电路组成的模块经过实测功耗为115 mW,说明该无线模块的功耗较低。
3. 2 系统软件设计
下位机子系统的软件设计主要包括:固定监测节点,巡逻员手持监测节点、协调器3 部分。
协调器的软件部分主要实现通过获取OK 键及CANCEL 键的键值对所有固定监测节点的开启与关闭。同时完成底层各种信息的汇聚并在完成ZigBee数据采集到串口数据的格式转换。具体流程图见图4。
图4 协调器流程
固定监测节点软件部分主要实现接收协调器开启命令后的路由ID 申请请求,成功开启或关闭后对协调器的反馈和发生险情后对巡逻员手持节点和协调器的报警信息发送。具体流程图见图5。
图5 固定监测节点流程
巡逻员手持节点的软件部分主要实现两部分内容。首先是实现自身对气体泄漏的监测以及通过读取HELP 键值的改变发出请求帮助的信息。其次是对接收到的固定监测节点报警信息或其他巡逻员请求帮助信息的处理。具体流程图见图6。
图6 巡逻员手持节点流程
4 上位机应用程序设计
为了方便管理员管理,系统需要设计一款PC端监控管理软件。由于C/ S 架构能够合理地将任务分配到服务器端和客户端实现,通讯开销较低,所以上位机将采用这种架构。系统采取三层架构并运用C#语言在Visual Studio 2010 环境下开发。
通过. NET Framework 框架的ADO. NET对SQLServer 2008 数据库进行操作。
考虑到危险气体监控的严肃性及重要性,上位机监控管理软件只有管理员一项。主要实现对固定监测节点的添加与删除,对所有监测节点安全状态、危险等级和所在区域位置信息的监测查看,对历史数据的查看与分析以及修改密码功能。
5 实验结果
5. 1 传感器测试调节电路板上的电阻Rd1,将酒精浓度报警阈值设为1800 ppm。按图7 搭建好实验环境,向实验瓶内滴入不同体积的酒精,浓度检测仪器可实时显示酒精浓度,实现结果如图7 所示。
图7 传感器测试
5. 2 系统测试
按照系统总体结构搭建好实验系统,采用酒精作为实验气体。系统通电后自动组建ZigBee数传模块网络,按下协调器上OK 键开启固定监测节点。
当固定监测节点传感器1 监测到超过阈值浓度的目标气体后,会发出声光报警,由于固定监测节点传感器2 未监测到超过阈值浓度的对象气体,根据危险等级划分方法,固定监测节点会同时向协调器和巡逻员手持节点发送危险等级为2 的报警信息。实验结果如图8 所示。
图8 固定监测节点等级2 报警
巡逻员手持节点发出声光报警并显示了险情节点所在区域位置信息和危险等级,协调器显示了危险等级。
为了进一步验证系统区域定位和危险等级划分的功能,系统重新选用了ID 不同的固定监测节点和锚节点,同时模拟不同的泄漏情况,让固定监测节点上两个采集模块都充分接触到超过阈值浓度的目标气体。实现结果见图9。
图9 固定监测节点等级2 报警
当某个巡逻员手持节点监测到超过阈值浓度的甲烷会发出声光报警及LCD 危险提示。如果巡逻员按下HELP 键后,其他巡逻员手持节点会显示该节点所在区域位置信息和ASK FOR HELP 求助信息,实验结果见图10。
图10 巡逻员手持节点报警及求助
6 结 语
本系统为石油化工企业的气体泄漏情况进行实时有效的ZigBee数据采集而设计,利用ZigBee无线模块网络和气体传感器的结合,通过添加具备移动监测功能的巡逻员手持节点克服了以往无线气体监测系统的灵活性差,响应不够及时等缺点,提高企业保护生命及财产安全的能力,实际运行试验结果表明,该ZigBee数传模块系统能够正常实现上述功能。但不可否认的是系统目前还存在许多缺点,比如:对于气体的不确定性以及实际环境中各种干扰,本系统中采用的气体采集处理电路没有做深入的考虑,这也将是以后继续研究的方向。