煤矿瓦斯报警无线传感器网络节点设计与实现
2.2 微控制器ATmega128单片机
处理器模块是无线传感器网络节点的计算核心。本文采用的ATmega128L单片机外形小,集成度高,功耗低,支持睡眠模式,运行速度快,内部有一个10位的逐次逼近型ADC,有足够的外部通用I/O端口和通信接口,成本低且有安全性保证。
2.3 CC1000无线收发模块
无线收发模块完成节点数据的发送和接收及转发功能,这里采用Chipcon公司的单片无线收发通信芯片CC1000,其具有低电压(2.3~3.6V)、低功耗、高灵敏度、小尺寸、接收信号强度指示(RSSI)、可编程输出功率(-20~1OdBm)等特点。其FSK数传速度可达72.8kbps,具有250Hz步长可编程频率能力,适用于跳频协议。CC1000与单片机的通信通过三线串行接口(PDATA、PCLK和PALE)进行。图4是CC1000在系统中应用的电路原理图,外围元器件的参数是在发射频率为915MHz的条件下配置的。
2.4其他重要模块
除检测瓦斯浓度外,节点系统设计了温湿度传感器模块,不仅可以进行温湿度检测,还可以根据温湿度数据对瓦斯传感器校零。Sensirion公司高度集成的温湿度传感器芯片SHT11,采用串行时钟输入线SCK来与单片机保持通讯同步,串行数据线DATA收发通信协议命令和数据,能够直接提供温度在-40~120℃范围内、湿度在0~100%RH范围内的数字输出。
粉尘传感模块采用SHINYEI KAISHA公司的PPD4NS粉尘传感器,感知微米以上的粉尘,以检测单位体积内粉尘粒子的绝对个数。
报警节点的数据显示通过中文液晶显示器模块实现。
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的输出特性曲线,即可得到瓦斯浓度值。
评论