张玉平
(山西阳城阳泰集团有限责任公司宇昌煤矿, 山西 阳城 048105)
煤矿生产环境比较特殊,液压支架压力、煤柱压力以及巷道围岩压力一直是影响煤炭安全生产的重要因素[1-2],因此煤矿井下压力监测系统是现代化综采工作面的重要一环。传统的压力监测系统多采用有线通信的方式,由于压力传感器节点较多、并且工作面空间狭小、环境较为恶劣,因此有线通信存在布线困难、通信线缆易磨损、可靠性较差的问题[3-5]。针对这一问题,设计了基于ZigBee无线通信的压力监测系统。
系统总体结构图如图1所示,压力监测系统主要由传感器节点、数据采集分站以及监控主机构成。其中传感器节点负责采集节点处的压力信息,并将这些信息通过ZigBee无线通信网络上传至数据采集分站,从而降低了布线难度,提高了数据传输的可靠性,不同传感器节点所采用的传感器类型并不相同,包括液压支架压力传感器、煤柱应力传感器、顶板应力传感器;数据采集分站一般布置在巷道入口处,用于接收所处巷道内的传感器节点上传的信息,并将这些信息通过RS485总线进一步上传至监控主机;监控主机位于地面监控室,负责将各个位置的压力传感器数据可视化,工人通过监控主机可实现对煤矿井下压力的实时远程监测。
为了减少系统布线,传感器节点均采用电池供电,为延长传感器节点的使用寿命,在设计时必须将功耗作为重要参考要素。传感器节点硬件结构如图2所示,包括射频模块、数据显示模块、数据处理模块、数据采集模块以及电源等。
图1 压力监测系统总体结构图
图2 无线传感器节点硬件结构图
1)数据采集模块。压力传感器是数据采集模块的核心,压力传感器的原理是传感器在受到压力后,其中的应变片会发生形变,应变片的形变会造成其电阻值的变化,从而在电桥上形成与压力成正比的电压信号,并且能够保证很好的线性关系,控制器通过分析电压信号即可获得该处的压力信号。
2)数据处理模块。由于传感器采用自供电方式,因此对处理器的功耗有着较高的要求,控制核心选用CC2530,该芯片以增强型8051为内核,集成了ZigBee协议栈,具有成本低、功耗小的特点,在睡眠模式下,CC2530的电流仅仅只有不到1uA,即使在工作模式下,其发送和接收数据时所需要的电流分别是29 mA和24 mA,也维持在一个比较低的水平。CC2530集成了12位模数转换器,可以将压力传感器发出的电压信号转换成处理器可以识别的数字信号,并将转换之后的数字信号通过DMA传输到存储器进行保存。
3)射频模块。传感器节点采用ZigBee无线通信上传信息,CC2530不仅可以作为控制核心,由于其为ZigBee提供了完善的片上SOC解决方案,因此CC2530还要充当射频芯片,其通信频率为2.4 GHz。井下工作环境较差,空间狭小且障碍物较多,因此采用范围扩展器CC2591与CC2530配合使用,提高通信距离,保证无线通信的稳定性。
数据采集分站结构如图3所示。数据采集分站主要由射频模块、微控制器、触摸屏以及通信模块构成。射频模块依然由CC2530和CC2591组成,负责接收来自传感器节点的信息;但是由于数据采集分站需要处理的数据量较大,所以CC2530不再作为控制核心,微控制器选用32位嵌入式芯片STM32F103VET6,该芯片的主频可以达到72 MHz,性能强大,CC2530和STM32微控制器通过SPI总线完成通信;数据采集模块将各位置压力信息汇总后通过RS485总线传输至上位机;工作人员也可以通过触摸屏实时监测各位置的压力信息并可以发出控制命令。
图3 数据采集分站硬件结构图
由于煤矿井下巷道较为狭长,对无线通信距离有着较高要求,本文在ZigBee通信“多跳”特性的基础上提出了线性接力传输方式。井下无线通信机制如图4所示,首先给每个传感器节点设定一个唯一确定的地址,将数据采集分站作为ZigBee通信网络的协调器,并把其地址设置为0×0000,把距离数据采集分站最近的1号传感节点的地址设置为0×0001,然后其他节点的地址依次类推。完成对传感器节点的初始化工作之后,所有节点开始默认等待接收同步时间。首先由数据采集分站向1号传感器节点发送同步时间命令,1号传感器节点在收到同步时间命令后一方面回传给数据采集分站一个应答指令,另一方面也会根据命令启动睡眠定时器,然后将时间同步命令发送给下一个传感器节点,即2号节点;2号节点在收到同步时间命令后的处理程序与前者一致,并且1号节点在收到2号节点发送的应答指令后会转换到接收状态,用于接收2号节点发出的指令;随后的节点不断转发同步时间命令,直到发送至最后一个传感器节点N。
图4 井下无线通信机制示意图
传感器如果发送10次同步时间命令后仍没有收到应答指令,即确认其为最后一个节点,并将其采集的数据传输至上一个,即N-1号节点,N-1号节点在接收到信息后会给N号节点发送一个应答信号,N号节点接收到应答信号确认其发送的信息已被接收后即进入睡眠模式;然后N-1号节点将自身采集到的数据以及N号节点采集到的数据打包发送至N-2号节点,并重复上述过程,这样以此类推,所有节点采集到的压力信息就都被传输到数据采集分站中。
要降低无线传感器功耗,提高使用寿命,除了在硬件设计上选用低功耗芯片外,在软件设计方面也需要进行低功耗优化。软件程序需要重点进行优化的环节有三部分,包括信息收发程序、时间同步通信机制程序以及控制器调度程序。节点的工作流程如图5所示。
传感器节点通过无线通信收发数据是该装置工作过程中功耗最大的环节,要降低该环节的功耗首先是要取消故障节点的数据收发能力,当节点由于故障无法完成正常通信后,即将该节点的工作模式由网络模式转换到单机模式,在单机模式下的传感器节点能够正常采集数据,但是无法完成数据的收发,而无线通信网络中的其他节点也不再使用该节点转发数据。
引入时间同步通信机制本身就可以降低无线传感器节点的功耗。这是因为射频模块在收发数据时所需要的功耗很高,而在睡眠模式下功耗很低;为了降低功耗就需要无线传感器网络在较短的时间完成通信,其他时间都进入睡眠模式,时间同步机制能够保证同时唤醒节点,在快速完成通信后同时进入睡眠状态,这样在保证低功耗的同时还能使各无线传感器节点之间的功耗平衡。
CC2530作为控制核心,主要采用中断的方式调用子程序,从而减少主循环程序中轮询的子程序数量,模数转换程序即采用中断处理方式,控制器只有在采集到数据时才会调用程序进行转换,不需要转换数据时就直接进入待机模式,从而降低了处理器的功耗。
无线传感器节点的工作流程为:被唤醒、采集数据、接收数据、发送数据、进入睡眠状态。在这5个环节中,CC2530的工作电流并不相同,采集数据的工作电流I1为12.8 mA,接收数据的工作电流I2为35 mA,发送数据时的电流I3为53 mA,睡眠状态的电流I4为0.001 mA,数据显示时的电流I5为45 mA。
在一个数据周期T内数据采集时间T1=200 ms、数据接收时间T2=2 s、数据发送时间T3=15 ms、命令转发时间T4=1.5 ms、指令接收时间T5=2 s、数据显示时间T6=5 s。其余时间节点处于睡眠状态,睡眠状态时间T7=T-(T1+T2+T3+T4+T5+T6)。
将一次周期时间T设定为30 min,那么一个周期内单节点的电量消耗计算公式如下:
代入数据计算得Q1=145165.2836 mA·ms。
由于单节点的周期为30 min,所以每天需要完成48个周期,设定工作人员每天查看10次数据,因此一天消耗的电量计算公式如下:
代入数据计算得Q'1=2.56 mA·ms。
由于无线传感器节点的电池电量为2.4 A·h,假设电池的转换效率为80%,即电池实际可用电量为1.92 A·h,因此无线传感器节点可以连续工作750 d,完全满足现场要求。
基于ZigBee无线通信的压力监测系统可靠性高、布线难度低,解决了煤矿井下压力有线监测系统存在的问题。该系统引入了时间同步机制,降低了功耗,经过计算,无线传感器节点的使用寿命能够满足煤矿井下要求。