煤矿瓦斯报警无线传感器网络节点设计与实现
时间:12-28
来源:互联网
点击:
3 瓦斯传感器网络节点系统的软件实现
3.1 软件系统的总体设计
软件系统的主要功能包括传感器数据采集与处理、无线收发、液晶显示和节点定位等,采用模块化设计。传感器数据采集与处理模块主要设置瓦斯信号的采集参数并控制采集、读取温湿度传感器的数据输出并计算露点;无线收发模块通过设置寄存器控制对命令或数据的接收和发送;液晶显示模块实现对瓦斯浓度、温湿度等数据的本地实时显示;节点定位模块对节点进行实时定位。

节点系统要支持传感器网络,需要考虑网络层的支持,方便系统扩展,因此系统软件的实现是在嵌入式操作系统上进行的,与基于硬件的C语言直接编程相比,这种方式对功能扩展、功耗控制、网络协议优化等有很大帮助。嵌入式操作系统选用了加州大学伯克利分校的基于事件驱动的TinyOS操作系统。软件开发过程是:首先用C语言设计程序,然后在处理器上移植TinyOS操作系统,利用其编程语言(nesC)在TinyOS下编译。
3.2 软件系统实现
3.2.1 数据采集与处理
瓦斯浓度信号的采集控制模块主要完成采集参数选择(数据放大倍数档位转换)与数据计算工作。A/D转换器输出的最大值为511,采用450、50作为档位判断上下限,分别设置10x、50x、200x三个信号调理档位。瓦斯浓度计算时,根据A/D转换器的数字输出,由差分输入转换公式ADC=(V+-V-)·GAIN·512/VREF计算出差分电压△V,再根据LXK-3的输出特性曲线,即可得到瓦斯浓度值。
温湿度传感器的数据通过DATA线直接读取,控制流程如下:用一组启动传输时序进行数据传输的初始化,然后发送一组测量命令(‘00000101’表示相对湿度,‘00000011’表示摄氏温度)后,释放DATA线,等待SHT11下拉DATA至低电平,表示测量结束,同时接收数据。
对于粉尘传感器模块,计算数据端口输出脉冲中低电平的占空比即可得到粉尘浓度。
3.2.2 无线收发程序
无线收发程序负责接收来自基站或其他节点的命令或数据,并发送本节点或转发其他节点的数据。首先进行CC1000的寄存器初始化配置,然后通过改变寄存器的值,进入待机、发送或接收模式。图5为无线收发的控制流程图。

3.2.3 液晶显示驱动程序
液晶显示器与单片机的接口协议为请求/应答(REQ/BUSY)握手方式。向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节。
3.2.4 节点定位算法
采用基于接收信号强度指示(RSSI)定位算法实现节点的精确定位:已知发射节点的发射信号强度,接收节点根据收到信号的强度计算出信号的传播损耗,然后根据信号传播模型公式(1)将传输损耗转化为距离,再利用三边测量法计算出未知节点的位置。在实际定位中,要保证未知节点处于三个以上发射信号强度和位置坐标已知的参考节点的通信范围内,未知节点根据接收信号强度计算出信号的传播损耗,进而计算出节点位置。
PR(d)=PT-10nlog(d)-γ(1)
其中,PR(d)为接收信号强度(dBm);PT为发送信号强度(dBm);n为路径长度和传输损耗之间的比例因子;d为参考节点与未知节点之间的距离;γ为修正因子,根据经验进行修正。
瓦斯传感器网络节点系统能够通过无线传感器网络实现对井下温度、湿度、瓦斯和粉尘等参数和井下工作人员位置的实时监测,主要功能包括瓦斯浓度及温湿度检测、液晶显示、定位和无线收发等功能,可以实现瓦斯浓度4%以内的检测,且当持续半分钟检测到瓦斯浓度高于1%时,蜂鸣器发出报警信号。此外,根据煤矿的温湿度参数自动对瓦斯传感器校零,从而提高瓦斯浓度报警器的准确性。节点系统的LCD能够动态显示环境的温湿度和瓦斯浓度。无线模块可以把测到的瓦斯浓度和井下人员的位置信息发送到煤矿瓦斯监控的基站,再传送到总控中心,以便随时了解矿下瓦斯浓度和井下人员所处位置。该无线模块在室内环境下传输距离为20~30米,可以满足井下作业要求。节点系统稳定工作状态下的响应时间小于20秒,可满足实时监控要求。
随着无线传感器节点数目的增多、功能的进一步完善和监控管理平台的建立,本无线网络传感器系统将适用于各类气体以及人员位置监控的现代化管理,不仅能够进行安全监测、协助事故抢险救援,还能够用于人员调度、监控、考勤等,从而提高矿山的管理水平与工作效率。
3.1 软件系统的总体设计
软件系统的主要功能包括传感器数据采集与处理、无线收发、液晶显示和节点定位等,采用模块化设计。传感器数据采集与处理模块主要设置瓦斯信号的采集参数并控制采集、读取温湿度传感器的数据输出并计算露点;无线收发模块通过设置寄存器控制对命令或数据的接收和发送;液晶显示模块实现对瓦斯浓度、温湿度等数据的本地实时显示;节点定位模块对节点进行实时定位。

节点系统要支持传感器网络,需要考虑网络层的支持,方便系统扩展,因此系统软件的实现是在嵌入式操作系统上进行的,与基于硬件的C语言直接编程相比,这种方式对功能扩展、功耗控制、网络协议优化等有很大帮助。嵌入式操作系统选用了加州大学伯克利分校的基于事件驱动的TinyOS操作系统。软件开发过程是:首先用C语言设计程序,然后在处理器上移植TinyOS操作系统,利用其编程语言(nesC)在TinyOS下编译。
3.2 软件系统实现
3.2.1 数据采集与处理
瓦斯浓度信号的采集控制模块主要完成采集参数选择(数据放大倍数档位转换)与数据计算工作。A/D转换器输出的最大值为511,采用450、50作为档位判断上下限,分别设置10x、50x、200x三个信号调理档位。瓦斯浓度计算时,根据A/D转换器的数字输出,由差分输入转换公式ADC=(V+-V-)·GAIN·512/VREF计算出差分电压△V,再根据LXK-3的输出特性曲线,即可得到瓦斯浓度值。
温湿度传感器的数据通过DATA线直接读取,控制流程如下:用一组启动传输时序进行数据传输的初始化,然后发送一组测量命令(‘00000101’表示相对湿度,‘00000011’表示摄氏温度)后,释放DATA线,等待SHT11下拉DATA至低电平,表示测量结束,同时接收数据。
对于粉尘传感器模块,计算数据端口输出脉冲中低电平的占空比即可得到粉尘浓度。
3.2.2 无线收发程序
无线收发程序负责接收来自基站或其他节点的命令或数据,并发送本节点或转发其他节点的数据。首先进行CC1000的寄存器初始化配置,然后通过改变寄存器的值,进入待机、发送或接收模式。图5为无线收发的控制流程图。

3.2.3 液晶显示驱动程序
液晶显示器与单片机的接口协议为请求/应答(REQ/BUSY)握手方式。向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节。
3.2.4 节点定位算法
采用基于接收信号强度指示(RSSI)定位算法实现节点的精确定位:已知发射节点的发射信号强度,接收节点根据收到信号的强度计算出信号的传播损耗,然后根据信号传播模型公式(1)将传输损耗转化为距离,再利用三边测量法计算出未知节点的位置。在实际定位中,要保证未知节点处于三个以上发射信号强度和位置坐标已知的参考节点的通信范围内,未知节点根据接收信号强度计算出信号的传播损耗,进而计算出节点位置。
PR(d)=PT-10nlog(d)-γ(1)
其中,PR(d)为接收信号强度(dBm);PT为发送信号强度(dBm);n为路径长度和传输损耗之间的比例因子;d为参考节点与未知节点之间的距离;γ为修正因子,根据经验进行修正。
瓦斯传感器网络节点系统能够通过无线传感器网络实现对井下温度、湿度、瓦斯和粉尘等参数和井下工作人员位置的实时监测,主要功能包括瓦斯浓度及温湿度检测、液晶显示、定位和无线收发等功能,可以实现瓦斯浓度4%以内的检测,且当持续半分钟检测到瓦斯浓度高于1%时,蜂鸣器发出报警信号。此外,根据煤矿的温湿度参数自动对瓦斯传感器校零,从而提高瓦斯浓度报警器的准确性。节点系统的LCD能够动态显示环境的温湿度和瓦斯浓度。无线模块可以把测到的瓦斯浓度和井下人员的位置信息发送到煤矿瓦斯监控的基站,再传送到总控中心,以便随时了解矿下瓦斯浓度和井下人员所处位置。该无线模块在室内环境下传输距离为20~30米,可以满足井下作业要求。节点系统稳定工作状态下的响应时间小于20秒,可满足实时监控要求。
随着无线传感器节点数目的增多、功能的进一步完善和监控管理平台的建立,本无线网络传感器系统将适用于各类气体以及人员位置监控的现代化管理,不仅能够进行安全监测、协助事故抢险救援,还能够用于人员调度、监控、考勤等,从而提高矿山的管理水平与工作效率。
传感器 嵌入式 单片机 半导体 红外 电阻 电路 电压 ADC 放大器 射频 显示器 C语言 LCD 相关文章:
- 多核及虚拟化技术在工业和安全领域的应用(05-23)
- 基于ARM核的AT75C220及其在指纹识别系统中的应用(05-24)
- 基于音频信号的轴承故障诊断方法(03-17)
- 采用信号调理IC驱动应变片电桥传感器(05-26)
- 基于nRF2401智能无线火灾监控系统设计(04-01)
- 家居安防无线监控报警系统(04-02)
