基于嵌入式实时操作系统的智能矿灯设计

张帝1,2, 董飞1,2, 高彬1,2, 赵端1,2,3, 丁恩杰1,2,3

(1.中国矿业大学 信息与控制工程学院, 江苏 徐州 221008; 2.中国矿业大学 物联网(感知矿山)研究中心, 江苏 徐州 221008; 3.矿山互联网应用技术国家地方联合工程实验室, 江苏 徐州 221008)

摘要:针对目前煤矿矿灯功能单一,无法感知井下环境参数,未能和地面构成双向实时通信网络的问题,设计了基于嵌入式实时操作系统的智能矿灯。该智能矿灯以STM32芯片为主控核心,利用温度传感器、瓦斯传感器和加速度传感器分别采集环境温度、瓦斯浓度及人员运动状态;通过NRF24L01无线通信模块读取井下定位与物资标签状态,获取人员位置与物资信息;通过WiFi将数据上传到地面服务器进行显示和存储。该智能矿灯还具有手动报警与自动报警功能,上位机可下发信息,实现井下与地面的双向通信。测试结果表明,该智能矿灯性能稳定可靠,实时性高,操作方便。

关键词:智能矿灯; 嵌入式操作系统; 瓦斯浓度监测; 人员定位; WiFi; 双向通信

0 引言

当前,大多数煤矿井下使用的是传统矿灯,其功能较为单一,仅具有照明和人员定位功能,无法感知井下环境参数,无法获取井下物资管理的相关信息,且未能和地面构成双向实时通信网络[1]。因此,本文设计并研制了一种基于嵌入式操作系统的智能矿灯。该智能矿灯可实时感知井下环境参数、人员位置信息及物资管理信息,并将数据上传到地面服务器,让地面人员更加方便高效地了解井下情况。同时该矿灯还具有双向通信功能,地面上位机可下发信息和相关指令给井下工作人员,从而实现合理的人员分配、管理和井下安全监测,大幅度提高井下作业的安全性和生产效率,对煤矿安全开采和矿山物联网的实现具有重要意义[2]

1 智能矿灯硬件设计

基于嵌入式实时操作系统的智能矿灯主要由单片机主控模块、传感器电路、电源管理模块、无线通信模块等组成,如图1所示[3]

图1 系统硬件结构
Fig.1 System hardware structure

1.1 单片机主控模块

主控模块电路主要由单片机核心系统、Flash电路、时钟电路、电量检测、报警电路和指示灯组成。采用STM32F103作为主控芯片,该芯片内置独立看门狗与窗口看门狗,可以有效防止程序锁死跑飞,也可以进行芯片加密,安全可靠[4]。其供电电压为2.0~3.6 V,功耗低,能够很好地满足设计要求。Flash电路主要用于存储LCD液晶显示的汉字字模和本地需要显示的服务器下发信息。其中,外部Flash采用的是AT45DB041芯片。

1.2 传感器电路

智能矿灯中用到的传感器主要有瓦斯传感器、温度传感器和加速度传感器。温度传感器用于采集环境温度,采用具有数字式单总线接口的DS18B20,其温度测量范围为-55~+125 ℃;加速度传感器用于检测井下人员是否处于运动之中,判断人员生命体征是否出现异常。加速度传感器采用具有I2C与SPI数字输出功能的ADXL345三轴加速度计,该传感器采用GPIO口模拟I2C时序的方式驱动。

采用催化燃烧式甲烷传感器采集煤矿井下瓦斯浓度。由一个不带催化剂的元件和一个带催化剂的敏感元件组成惠斯通电桥测量电路,将恒定电流加载到催化元件上进行加热,使得敏感元件的阻值发生变化,而补偿元件阻值的不变,导致电桥不平衡,从而使输出电压不为零。输出电压通过放大电路等调理后,通过数据处理算法可换算得出瓦斯浓度[5]

1.3 电源管理模块

电源采用3.7 V磷酸铁锂电池,但矿灯还需要3.3,-3.3,2.8 V三种电压,因此,电源管理模块中需要设计电压转换电路。3.7 V转3.3 V采用TPS63031芯片实现,3.7 V转-3.3 V采用MAX828芯片实现,3.7 V转2.8 V采用RT9193芯片实现。针对瓦斯传感器功耗较高的问题,对瓦斯传感器采用脉冲供电,即间断供电[6]。通过脉冲供电对瓦斯传感器进行加热,传感器在加热1.2 s后可采集数据,脉冲供电周期为2 s,传感器平均输出电流由90 mA降为50 mA[7]

1.4 无线通信模块

采用NRF24L01模块采集井下人员定位标签信息和物资管理标签信息,由单片机控制转发,通过无线网络上传到地面服务器。该模块与单片机之间采用SPI通信方式[8]。NRF24L01芯片可设置为接收模式、发送模式、待机模式和掉电模式。数据包处理方式有ShockBurst和增强型2种,本文采用后一种模式,其可以使双向链接协议执行起来更为简易、有效。无线网络通信模块采用WIFI-LPB100超低功耗嵌入式WiFi模组,该模组与单片机之间采用串口通信,通过发送AT指令进行配置[9]

2 智能矿灯软件设计

软件开发平台选用Keil MDK。软件设计利用嵌入式实时操作系统μC/OS-II及STM32自带的库函数编程,大大缩短了程序开发工作量。嵌入式实时操作系统μC/OS-II可以将系统应用流程分割成多个任务,操作系统根据任务的优先级,通过调度器使得CPU分时执行各个任务,提高了CPU的利用率[10]。系统软件包括主程序、初始化子程序、数据采集处理程序、人机交互程序、无线网络通信程序等。本文主要介绍嵌入式实时操作系统μC/OS-II、系统主程序、数据采集处理程序及无线网络通信程序。

2.1 嵌入式实时操作系统μC/OS-II

μC/OS-II系统架构如图2所示。μC/OS-II系统大部分是运用C语言编写的程序文件,汇编文件很少。汇编文件应进行改写,以适应移植对象CPU[11]。由于STM32的软件开发平台MDK集成了汇编语言编译环境,所以改写较方便,移植过程也比较简单。移植时只需修改图2中OS_CPU.H、OS_CPU_A.ASM、OS_CPU_C.C三个文件即可。μC/OS-II完全能够满足本设计需求,可以最大程度减少开发工作量。

图2 μC/OS-II系统架构
Fig.2 Architecture of μC/OS-II system

2.2 系统主程序设计

系统主程序流程如图3所示。其中硬件初始化包括对STM32时钟、GPIO口、外设初始化驱动程序等的初始化。在多任务调度执行过程中,根据任务优先级的不同切换执行。系统任务分配与设计架构如图4所示。

2.3 数据采集处理程序设计

数据采集分传感器数据采集和定位标签与物资管理标签数据采集2个部分。将传感器数据采集处理分成3个任务函数轮流切换执行,优先级顺序依次是瓦斯浓度数据采集、温度数据采集和加速度计数据采集。只要其中一个任务函数执行过程中出现数据异常,则立即触发报警任务函数,上传异常数据并启动本地报警[12]。2.4 GHz无线模块的数据接收任务函数执行优先级低于传感器数据采集任务,采集到的数据以1 s为周期上传到地面服务器。瓦斯浓度数据采集流程如图5所示。

图3 系统主程序流程
Fig.3 Main program flow of the system

图4 系统任务分配与设计架构
Fig.4 Task allocation and design architecture of the system

2.4 无线网络通信程序设计

智能矿灯与地面服务器的双向通信是基于UDP协议的,智能矿灯完成发送数据后,需要等待一个“Wait Time”时长,即等待数据服务器发送的响应。当收到服务器发送的响应后,表示一次数据上传成功,随后进入待机状态,等待下一次数据上传。地面服务器接收到数据后,首先进行数据解析,判断是否为手动报警,如果不是,则智能矿灯为正常状态。地面服务器会再发送一个应答信号,如果智能矿灯在一个“Wait Time”时长后没有收到应答信号,则会持续向服务器发送数据包[13]

图5 瓦斯浓度数据采集流程
Fig.5 Data acquisition process of gas concentration

2.5 上位机管理软件设计

上位机管理软件功能包括实时显示与存储智能矿灯上传的数据和报警记录。上位机通过UDP Socket通信方式接收智能矿灯上传的数据,根据数据协议对数据包进行解析,并存储和显示。在Visual Studio 2008 .NET编程环境中,使用C#语言,通过Winform技术完成上位机软件的开发,数据库采用的是SQL Server 2005[14]

3 测试分析

3.1 测试结果

在3.7 V,10 A·h锂电池供电下,经过实测,灯头的平均输出电流为300 mA,传感器在脉冲供电模式下平均供电电流为50 mA,其他部分平均输出电流为150 mA,智能矿灯总体平均输出电流为500 mA, 10 A·h/500 mA=20 h。另外温度传感器、加速度传感器和瓦斯传感器监测正常,智能矿灯与上位机系统数据双向通信正常,实现了各项预期功能。

3.2 测试数据分析

采用不同体积分数瓦斯气体进行测试,测试数据见表1,人员定位信息见表2,数据上传速率和丢包率见表3。

由表1可知,瓦斯体积分数监测数据与实际数据对比,误差在0.1%左右。人员位置的测试是根据智能矿灯读取的定位标签的信息与时间计算出位置信息,与实际位置信息对比,确定误差。用WiFi和井下智能网关将智能矿灯采集到的数据上传到地面服务器,得出上传时间在2.2 s左右。结合3组测试数据可知,本文设计的智能矿灯具有传感器测量精度高、人员定位准确及数据传输速率快等优点。

表1 瓦斯体积分数监测数据

Table 1 Monitoring data of gas concentration

组数瓦斯体积分数/%系统监测数据/%误差/%10.50.550.0521.01.100.1031.51.580.0842.02.090.0952.52.620.1263.03.160.1673.53.630.1384.04.110.1194.54.690.19105.05.200.20

表2 人员定位信息

Table 2 Information of personnel persitioning

组数实际位置/m系统定位/m误差/m1100102.02.02150152.32.33200203.03.04250252.62.65300302.02.06350352.22.27400402.32.38450452.02.09500501.81.810550552.12.1

表3 数据上传速率和丢包率

Table 3 Data upload rate and packet loss rate

组数上传速率/s丢包率/%12.5422.3532.2542.3552.0462.1472.2482.3492.24102.25

4 结语

基于嵌入式实时操作系统的智能矿灯采用高性能、低功耗的STM32微处理器为硬件平台,移植μC/OS-II操作系统,基于操作系统和STM32库函数进行软件设计,大大简化了程序开发工作量。测试结果表明,该矿灯系统具有安全可靠、响应速度快、性能稳定、抗干扰能力强等特点。

参考文献(References):

[1] 朱广.基于人员定位及瓦斯监测的智能矿灯设计[J].机械工程师,2013(5):79-81.

ZHU Guang.The design of intelligent miner's lamp based on the personnel positioning and gas monitoring[J].Mechanical Engineer,2013(5):79-81.

[2] 姚建铨,丁恩杰,张申,等.感知矿山物联网愿景与发展趋势[J].工矿自动化,2016,42(9):1-5.

YAO Jianquan,DING Enjie,ZHANG Shen,et al. Prospect of perception mine internet of things and its development trend[J]. Industry and Mine Automation,2016,42(9):1-5.

[3] 赵舒畅,曹利波,任玉东.基于STM32智能矿灯系统设计[J].煤炭工程,2014,46(6):25-27.

ZHAO Shuchang,CAO Libo,REN Yudong.Design on intelligent miner's lamp system based on STM32[J].Coal Engineering,2014,46(6):25-27.

[4] 宋磊,彭道刚,赵斌斌,等.基于嵌入式STM32的Modbus RTU协议实现[J].仪表技术,2014(11):33-36.

SONG Lei,PENG Daogang,ZHAO Binbin,et al. Implementation of Modbus RTU communication protocol based on STM32[J]. Instrumentation Technology,2014(11):33-36.

[5] 刘海波,沈晶.催化燃烧式瓦斯传感器技术研究进展[J].智能计算机与应用,2011,1(5):71-73.

LIU Haibo,SHEN Jing.Research advances on catalyzing burning gas sensors[J].Intelligent Computer and Applications,2011,1(5):71-73.

[6] 曹凯,李念强,王永玲.矿灯智能充电管理系统[J].工业控制计算机,2012,25(11):102-103.

CAO Kai,LI Nianqiang,WANG Yongling.Intelligent management system for miner's lamp-charging[J].Industrial Control Computer,2012,25(11):102-103.

[7] 丁恩杰,李欣,陈春旭,等.采用脉冲供电的催化传感器的工作性能研究[J].传感器与微系统,2014,33(12):31-33.

DING Enjie,LI Xin,CHEN Chunxu,et al.Study on operating characteristic of catalytic sensor using pulse power supply[J].Transducer and Microsystem Technologies,2014,33(12):31-33.

[8] 陈城,李瑞祥,刘婷婷,等.基于nRF24L01的无线数据传输系统研究[J].电子科技,2016,29(11):22-24.

CHEN Cheng,LI Ruixiang,LIU Tingting,et al.Research on wireless data transmission system based on nRF24L01[J].Electronic Science and Technology,2016,29(11):22-24,27.

[9] 吴静然,李秀凤,吴倩.基于WiFi的煤矿井下智能终端设计[J].工矿自动化,2013,39(4):5-8.

WU Jingran,LI Xiufeng,WU Qian.Design of underground intelligent terminal based on WiFi[J].Industry and Mine Automation,2013,39(4):5-8.

[10] 武术,张颖杰,黄力国.基于μC/OS-Ⅱ的环境监测仪的研制[J].科技风,2014(7):39.

[11] 李祁,王凤芹,张燕红.嵌入式实时操作系统μC/OS-Ⅱ在STM32开发板上的应用[J].计算机与数字工程,2014,42(1):164-168.

LI Qi,WANG Fengqin,ZHANG Yanhong.Application of real-time embedded μC/OS-II on STM32[J].Computer and Digital Engineering,2014,42(1):164-168.

[12] 慕灯聪,孟磊,丁恩杰,等.煤岩应力分布式监测系统设计[J].工矿自动化,2015,41(10):1-4.

MU Dengcong,MENG Lei,DING Enjie,et al. Design of distributed coal-rock stress monitoring system[J]. Industry and Mine Automation,2015,41(10):1-4.

[13] 王发,艾红.基于ARM7人机接口与UDP协议的数据采集[J].北京信息科技大学学报(自然科学版),2014,29(1):90-94.

WANG Fa,AI Hong. Human-machine interface and data acquisition of UDP protocol based on ARM7[J]. Journal of Beijing Information Science & Technology University(Natural Science Edition),2014,29(1):90-94.

[14] 张晓熙.基于Winform的电子卷宗采集与管理系统设计[J].计算机光盘软件与应用,2015,18(3):287-288.

Design of intelligent miner lamp based on embedded real-time operating system

ZHANG Di1,2, DONG Fei1,2, GAO Bin1,2, ZHAO Duan1,2,3, DING Enjie1,2,3

(1.School of Information and Control Engineering, China University of Mining and Technology, Xuzhou 221008, China; 2.Internet of Things (Perception Mine) Research Center, China University of Mining and Technology, Xuzhou 221008, China; 3.National and Local Joint Engineering Laboratory of Internet Application Technology on Mine, Xuzhou 221008, China)

Abstract:In view of problems of being unable to sense underground environment parameters and failing to form two-way real-time communication network between underground and ground caused by single function of miner lamp , an intelligent miner lamp based on embedded real-time operating system was designed. The lamp takes STM32 chip as main control center, and collects environmental temperature, gas concentration and personnel movement status by using temperature sensor, gas sensor and acceleration sensor respectively. The NRF24L01 wireless communication module reads status of underground positioning and material label to obtain personnel position and material information; data is uploaded to the ground server via WiFi for display and storage. The lamp has both manual alarm and automatic alarm functions, the host computer can send information to achieve two-way communication between underground and ground. Test results show that the intelligent miner lamp is stable and reliable, easy to operate, and has high real-time performance.

Key words:intelligent miner lamp; embedded operating system; gas concentration monitoring; personnel positioning; WiFi; two-way communication

文章编号:1671-251X(2018)02-0023-05

DOI:10.13272/j.issn.1671-251x.2017090026

中图分类号:TD621

文献标志码:A 网络出版时间:2018-01-08 16:27

网络出版地址:http://kns.cnki.net/kcms/detail/32.1627.TP.20180105.0952.001.html

收稿日期:2017-09-11;

修回日期:2017-12-19;

责任编辑:胡娴。

基金项目:江苏省产学研联合创新资金前瞻性联合研究资助项目(BY2015023-04);江苏省研究生培养创新工程项目(KYLX_1385)。

作者简介:张帝(1993-),男,安徽灵璧人,硕士研究生,主要研究方向为矿井灾害软件开发与应用,E-mail:dizhang509@163.com。通信作者:董飞(1993-),男,安徽合肥人,硕士研究生,主要研究方向为嵌入式系统设计,E-mail:feidong@cumt.edu.cn。

引用格式:张帝,董飞,高彬,等.基于嵌入式实时操作系统的智能矿灯设计[J].工矿自动化,2018,44(2):23-27.

ZHANG Di,DONG Fei,GAO Bin,et al.Design of intelligent miner lamp based on embedded real-time operating system[J].Industry and Mine Automation,2018,44(2):23-27.