μc/oS-ll在煤矿井下环境监测系统中的应用

时间:2022-08-13 02:57:00

μc/oS-ll在煤矿井下环境监测系统中的应用

摘要:针对常见煤矿井下环境检测仪检测参数单一、占用传输线较多的缺点,本文设计了多传感器融合的井下环境检测系统。该系统对采集到的信息进行数据融合,使系统决策更加科学合理,同时减少了巷道内的走线数量。实际使用表明,系统具有较好的实时性、可靠性,并具有良好的扩展和升级能力。

关键词:μc/OS-II;煤矿;环境监测;任务规划

中图分类号:TP311.1 文献标识码:A DOI:10.3969/j.issn.1003-6970.2012.01.017

引言

为保障煤矿安全生产和职工人身安全,早在2001年国家煤矿安全监察局就颁布并实施了《煤矿安全规程》,并不断对之做出修订。《煤矿安全规程》对煤矿井下安全工作环境、报警方法等做了详细规定。煤矿井下环境检测的理论研究工作已趋于成熟,众多相关文献已经发表,国内外也已有多款成型产品,例如凯茂CO 100精密型一氧化碳仪、cosmos X0-2200氧气计。从现场应用情况来看,虽然已有的参数检测设备能够较好地满足测量需求,但仍存在下述缺点:一,测量参数单一,无法对测量点的环境做出准确的判断,需要将数据传送至地面做进一步处理;二,每个检测设备需要一路传输线。

针对上述问题,在对徐矿集团旗下若干煤矿进行设备更新项目中,设计了多传感器融合的井下环境检测系统,系统利用多传感器数据融合技术,对井下环境做出更加科学合理的判定,降低误报率。测量数据经一路传输线传送至井下分站,降低了走线成本和复杂度。本项目开发过程中使用了嵌入式实时操作系统μC/OS-II,μC/OS-II的引入是系统设计成功的关键。本文介绍了嵌入式操作系统(Embedded OperationSystem,EOS)相关概念和设计原则,并以煤矿井下环境监测系统的设计过程为例分析了基于μC/OS-II的实时多任务系统的开发要点。

1嵌入式操作系统

EOS的概念容易和嵌入式系统混淆。简而言之,EOS属于软件范畴,而嵌入式系统是软件和硬件的综合体,但并不是所有的嵌入式系统都必须使用EOS。从技术角度来讲,EOS是一种用途广泛的的系统软件,负责嵌入式系统的全部软、硬件资源的分配、调度、控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。

对于实时多任务EOS的开发,关键是合理地进行任务划分。对于任务的划分,并没有统一的标准,也很少有相关论文对任务划分的原则有较详细的介绍。本文列出本项目任务划分所依据的主要原则:

(a)解耦原则:任务之间的耦合关系是影响软件复杂度的重要因素,紧密相关的功能应尽量组成一个任务,以减少任务耦合;应尽量使用数据耦合,少用控制耦合和特征耦合。具体方法可参见软件工程类书籍。

(b)实时性原则:大多数商业内核都是占先式实时内核,即在就绪条件下,内核总是运行优先级最高的任务,因此对实时性要求高的功能应采用高优先级任务实现,占用CPU时间较长的任务应尽量赋予较低的优先级。

(c)I/0决定原则:对每个独立的硬件(例如GPIO)进行操作的驱动程序应放在一个任务中完成,以避免资源冲突。

任务的划分不能一成不变地遵循上述原则,必须结合项目的特点和需求作具体的分析,下文以μC/OS-II在煤矿井下环境监测系统中的应用来说明。

2系统设计

文献[4]分析指出,煤矿井下环境参数的检测至少应包括可燃性气体、02、CO和温度的测量。经过现场考察也发现在井下巷道内众多地点均需要对上述四个参数进行检测,因此设计了四参量环境监测系统。系统对检测到的模拟、数字信号处理后显示、决策(是否报警)并将数据传送至分站。该项目需求分析如下:

提供简单的用户接口。采用液晶分时显示测量结果,用户通过按键查看指定参数。

提供煤矿常用传输接口。采集到的数据需要在地面实时显示和存储,因此需要进行数据传输。

正常检测外的系统自检功能等。

软硬件设计具备良好的扩展性,方便系统升级。

2.1硬件实现

据需求分析得出硬件设计框图如图1所示。MCU选用NXP公司的LPC2214,该芯片基于ARM7TDMI-S内核,内含256KB高速Flash,16KBSRAM;片内集成8路10位ADC、两个32位定时器(带4路捕获和4路比较通道)、6路PWM、多达9个外部中断源;常用总线接口有1个12C接口、2个SPI接口、2个UART接口,完全满足应用及扩展需求。

待测模拟量包括甲烷、CO、02三个参量,3个模拟量分别通过信号调理电路送入MCU片内ADC;温度信号由数字式单总线温度传感器DSl8820获取;由于按键较少,可采用独立按键直接连接至MCU的GPIO;液晶显示模块LCM需要模拟总线连接;传输接口采用井下常用的RS485接口,预留RJ45接口、CAN总线接口,在一定程度上提高系统的通用性。

2.2软件实现

通过需求分析及硬件设计发现,该系统任务较多,且需使用慢器件,如DSl8820、LCM,因此不适合使用简单的“前后台系统”,即应用程序是一个无限循环,循环中调用相应的功能函数完成对应的工作,用中断服务程序处理异步事件。系统对实时性、可确定性、可靠性有较高需求,因此以μC/OS-II嵌入式实时操作系统为基础完成软件设计较为合适。

μC/OS-II是一个完全占先式实时内核,即在满足运行就绪条件下,“C/OS-II总是运行优先级最高的任务。应用程序最多可以管理56个用户任务,μC/OS-II提供很多系统服务,例如邮箱、消息队列、信号量、内存申请与释放等。图2是系统多任务规划框图,图中每个方框代表一个任务。

由图2可以看出,任务划分结构清晰,μC/OS-II的任务编写具有一定的规律,从而方便了系统的扩展。当需要添加新的功能时,可以直接增加新任务,也可以修改已有的任务,这对软件的维护是相当有益的。在编写任务代码时,大量使用了指向任务实体的指针和数据传递指针,从而在一定程度上提高了程序的封装性能,加强了任务模块的可重用性。

3结论与展望

μC/OS-II采用基于优先级的任务调度策略,因此在进行任务划分时,必须依据实时性原则为每个任务分配合适的优先级。μC/OS-II的绝大部分源码采用移植性很强的ANSI C编写,因此具有很好地可移植性,但是C语言是面向过程的,不具有面向对象特性,各功能模块的通用性差。在开发过程中,设计人员需要编写大量相似的程序段,因此有必要开发面向对象的任务表达模型,以及对应的操作系统,进一步提高软件模块的可重用性和可维护性。

参考文献

[1]国家安全生产监督管理总局国家煤矿安全监察局.煤矿安全规程[M].煤炭工业出版社(北京):2011.3

[2]广州集仪电子科技有限公司.气体检测仪器网[EB/OL][2012.1]

[3]瞿杨霞.基于嵌入式Linux的流媒体网络收音机系统的设计与研究[D].太原:中北大学,2008

0u Yang xia.The Design and Research 0f Stream MediaIntemet Radio System Based 0n Embedded Linux[D].TAIYuan:North University 0f China,2008

[4]张华.采用CAN总线的煤矿安监系统井下分站的设计[D].武汉:武汉理工大学,2009.5下转第65页

上一篇:基于GM8180的管道机器人视频控制器硬件设计 下一篇:特种设备智能系统设计中的关键技术