一、项目概述
1.1 引言
煤炭、石油等化石能源是我国能源供应的主体,特别是煤炭在保障我国能源安全中,起着基础性作用。在我国目前的能源结构中,煤炭仍占能源总量中的70%左右。 可见煤炭已成为支撑我国经济发展的中坚力量,并且这一现状在短时间内不会有太大变化。
在我国最新制定的煤炭科技十二五发展规划中,提出了“绿色开采与生态矿山”的概念,这就要求提高煤矿生产的安全和采矿区周边环境的保护。虽然国家和企业已经为了改善生产条件作了很大努力,但这依旧是一个没有完全解决的问题。在我国煤炭生产中,不安全事故频频发生,对环境的破坏和因此导致的死亡事件也屡屡见诸报端。要解决这一现况,除了提高工人作业水平以外,必须要加大对矿井安全设备的投入。本此设计所选定的项目就是立足于实际,以促进煤炭安全生产和环境保护为目标。可以有效的减少矿井事故的发生,最大限度保证井下人员的安全和采矿区周边环境的和谐。
结合我们对煤炭严峻形势的认识和本次大赛的主题,我们将选题方向煤矿安全生产集中监控领域。本次设计对构建和谐社会和可持续性发展社会将具有十分重要的意义。
1.2 项目背景/选题动机
煤矿在我国的国民生产生活和经济发展中起着举足轻重的作用。现在中国发电量的大部分来自于煤电,煤炭经济在我国GDP中占有很大比重,可以说煤一朝一夕都在影响着中国的每一个家庭的生活。可是我们不能忽视的是,在煤炭产业促进我国经济发展和GDP增长的同时,在煤炭生产中所产生的安全问题和对环境的破坏问题让我们不得不去关注。
2005年3月9日,山西吕梁交城矿难,28人死亡
2006年2月1日晚上7时许,山西省晋城煤业集团所属寺河煤矿发生瓦斯爆炸事故,造成23名矿工死亡,另有53人一氧化碳中毒。
2007年03月06日湖南邵阳市邵东县宏发煤矿在维修巷道时发生瓦斯爆炸,15人死亡。
2008年01月20日,山西临汾市汾西县煤矿发生炸药爆炸,20人死亡。
2009年01月20日21时0分, 山西临汾地区汾西县永安镇蔚家岭村一非法私开煤矿窝点发生瓦斯爆炸,造成20人遇难。
……
当然这只是列举了一部分实例,这些惊心的实例时刻都在提醒我们煤炭安全生产的重要性。造成这一现象除了人为因素外,安全检测设备的落后和不到位也是一个重要的原因。中国的许多煤矿企业在生产中,伴生着严重的资源、环境、安全等问题,如果这一问题得不到解决将影响长远发展,这与可持续性发展的理论是背道而驰的。据调查,全国的煤炭企业除46%的高突矿井外,大部分已进入深水平开采,渗水、瓦斯、坍塌等已成为越来越大的安全隐患。增加新的高性能检测设备成为解决煤矿安全问题的关键,同时考虑到很多中小心型煤矿企业的在安全设施方面的投入能力,开发出一套经济实惠,使用方便,安全高效的安全检控设备成为当今中国大多数煤炭企业的迫切需求。
采煤工作面作为整个采煤作业现场的第一工作区,容易发生瓦斯爆炸、漏水和冒顶等事故,一旦发生矿难不但会直接影响到采煤工人的生命安全,更可能会对周边环境造成严重的破坏。因此,采煤工作区作为事故地带,是构成整个煤矿安全体系的最关键一环。如何保证采煤工作面的安全生产,一直是一个难以解决的严峻课题。
ATMEL公司的32位AVR嵌入式微处理器性能高、功耗低、价格适宜,特别是芯片内部集成了网络接口,简化了网络数据传送和远程控制实现的难度,它强大的数据处理能力为数字信号的处理提供了有力的支持,除此之外它还具有其它优良的性能,成为完成本次设计的最佳选择。本次设计拟采用基于AVR 32 AT32UC3A单片机控制器的EVK1100评估系统和开发系统为基础开发平台,结合套件本身所提供的资源,通过扩展其它板卡实现设计中要求的全部功能。鉴于AVR以上的优点,结合目前的煤矿采煤工作面的安全监控存在的不足,设计一款基于32位嵌入式AVR微处理器的采煤工作面安全集中监控系统,提供了一种新型嵌入式的方案,以达到进一步提高采煤工作面的安全性和可靠性。
考虑到作品的实用性,除实现对采煤工作面的监控以外,通过简单的修改(设计本身支持这种裁剪和功能扩成),本次设计成果也可以很容易的转换到其它安全监控领域,如其它采矿工作的安全监控、家居安全的监控、工厂生产车间安全生产和仓库防盗的监控、道路安全运营的监控等等。
山东科技大学原名山东煤矿学院,对煤炭的生产和研究都有很长的历史,在几十年的发展中积累了丰富的经验,在煤炭研究领域建立了健全的体系。目前拥有国家级煤矿矿山灾害实验室,在煤炭安全上从科研到开发,我校都走在了全国煤炭领域的前列。
同时我们嵌入式实验2003年成立,积累了很多的有关嵌入式系统设计的经验,学校拥有众多资深学者和教授,为中国煤炭事业和嵌入式的系统设计,发展培养了大量的人才。本次设计也得到有关老师的支持和鼓励,同时通过向他们的请教,让我们团队成员对这一系统的设计有了更加深刻的认识。相信通过老师的指导和我们的努力我们一定能够完成本次设计。
二、需求分析
2.1 功能要求
采煤工作面作为采煤工作的第一现场,那里的情况瞬时万变,是整个井下安全体系中最关键的一环。本次设计将重点关注如何确保采煤工作面安全生产这一严峻问题。
保证生产过程安全所采取的措施中,除了增强工人自身安全意识外,另一个重要的因素就是完善基于各种监控设备的预警系统和控制系统。在影响采煤工作面安全的各种可检测因素中,瓦斯浓度、顶板压力、水位、粉尘浓度成为关键,同时为了便于地面监控中心实时了解井下的工作场景,实时的现场画面监控也是必不不可少的。
综上因素,本次设计要求能够及时的,把采煤工作面顶板压力、水位、瓦斯浓度、粉尘浓度等物理量数据进行采集,并通过嵌入式32位AVR微处理器处理后通过网络及时上传到位于地面上的监控中心,便于安全监察人员和生产调度部门观察和抉择。在紧急重大的情况下及时采取相关措施将危害降到最低。同时,也在现场把瓦斯浓度、顶板压力、水位、粉尘浓实际的检测的数据,进行必要的判断和处理,以实现在一定的范围内对以上参数进行自适应调节和自动控制,以达到提高现场工作效率和安全系数的目的。
2.2 性能要求
考虑到采煤工作面所在的特殊环境,要求所设计的产品能够在这种特殊的环境下正常的运行。例如设计的低功耗性、防爆性、坚固性、和防潮绝缘性以及断电保护等,而根据相关规定,凡是要应用到煤矿井下的电气设备,其防爆性能要求较高,要么是保安型的,要么是本安型的。而要想得到以上资质,必须到相关煤矿防爆监测站进行有关的检测,检测通过后这些设备才能被用于井下作业。
针对本次设计大赛,由于受条件的限制,有关电气设备的防爆等无法实现和模拟,只能从电气设备的基本功能,结合嵌入式AVR微处理器的性能进行系统设计。
其它性能要求如下:
实时的采集采煤工作面的现场工作画面并通过网络向地面监控中心传输。为了达到实时的目的,采集图像的速率需最低为5幅/秒 ,同时为达到图像能正常传输这一目的,对采集的图像需要采取合适的压缩算法。
顶板压力、水位、瓦斯浓度、粉尘浓度等物理量数据采集的采样频率分别是 10秒,50秒,30秒,30秒。同时为了使采集的数据平滑,需要对采集的数据选择合适的数字滤波算法进行处理。
对采煤工作面顶板压力,瓦斯,煤尘,水位等的控制,按照超过规定参数上限80%时,才采取自适应调节和自动控制。通过自行处理调整控制,使其始终保持在规定参数上限80%以下。当超过这些参数安全上限时开始报警并及时将相关信息上传地面监控中心。
为更好的实现对采煤工作面顶板压力,瓦斯,煤尘,水位等规定参数的自动控制,采取PID数字控制算法。
三、方案设计
3.1 系统功能实现原理
此次设计的系统功能示意图如下图3.1所示:
本次设计是以一个基于AVR32 AT32UC3A单片机控制器的EVK1100评估套件和开发系统为核心,再将各个功能模块连接在一起,构成的一个完整系统。
首先由各种传感器采集信号,包括瓦斯浓度传感器、粉尘浓度传感器、压力传感器、井下水位传感器和视频采集模块等采集到的信号,先进行滤波、放大等处理,提取出其中有价值的信号,然后经过A/D转换以后成为便于处理的数字信号。为了提高信号的有效性和平滑度需对其进行数字滤波。而图像信号经过JPEG压缩算法处理以后可以通过网络,传递给用于监控的上位机。同时为了实现自动控制,对传感器传来的信号进行PID算法处理。当检测到参数超出规定值以后,产生报警信号,并将这一信号传寄给报警装置和地面监控中心,同时发出控制信号,这一信号经过D/A转换和放大处理以后对相关电机等进行控制,努力使相关参数恢复到正常范围以内。
通过在系统中增加网络模块,可以实现数据在网络中的有效传输,同时实现让任何接入到网络中的主机设备通过验证机制以后都可以访问到下位机传来的数据。为了统筹管理各个硬件模块的工作和充分利用系统的资源,在下位机中嵌入小型的uC/OS-II操作系统,同时为各个硬件模块开发相应的驱动程序,以实现应用层软件对底层设备的调用。
本次设计所涉及到的主要技术包括:①各信号的周期型采集实现;②模拟信号的滤波等处理;③数字滤波算法的实现;④uC/OS-II操作系统的移植;⑤相关驱动模块的开发;⑥lwip网络协议栈的嵌入;⑦自动闭环控制(PID算法)的实现;⑧JPEG图像压缩算法的实现。
3.2 系统硬件架构与资源配置
3.2.1系统硬件组成分析
系统的硬件总体结构框图如图3.2所示:
根据本次大赛的要求,考虑到本次设计对功能的要求以及其使用环境的特殊性,本次设计选用ATMEL公司的AVR 32 AT32UC3A芯片。这款芯片的指令集为紧凑型单周期RISC指令集,并且集成DSP指令集,具有很强的数据运算处理能力,并兼具高性能、低功耗等特点。完全能够满足本次设计所要求的性能稳定、功耗低等要求。为了充分利用系统的资源和发掘该款芯片的潜能,实现多任务的控制,在其中嵌入了实时性强可靠性高的操作系统uC/OS-II 。
在硬件的整体设计方面,主要分为四个部分,以各种传感器和画面采集器为中心的数据采集模块,以滤波整形电路为主的模拟信号处理模块,以MCU为中心的数字信号(数据)处理模块,和以地面上位机为中心的数据显示存储和处理模块。其中数据采集模块根据信号的不同处理方式又可以分为两类,以各种传感器为中心的信号采集模块和以摄像头为中心的现场画面采集模块。
给系统上电以后,首先运行系统自检程序,确认各个功能模块正常以后,系统进入正常运行模式。通过定时装置和给定的初始参数,系统依次选通各个信号采集模块。各个传感器和画面采集器将采集到得模拟信号经过处理以后进行A/D转换,然后提交给MCU。MCU根据预设计的程序处理各种信号,然后将处理好的信号传送到地面信息监控中心和系统本身自带的控制模块。
这里以瓦斯控制为例,采煤工作面的上隅角往往是瓦斯浓度最高的地方,可以通过在上隅角放置瓦斯浓度传感器,实时的检测那里的瓦斯浓度,从而保证工作环境的正常和采煤区周边环境的安全。系统采集到经过模拟信号处理和A/D转换以后的数据,经过处理以后,将结果发往地面控制中心和系统自带的控制模块。系统自带控制模块根据需要适时自适用的控制通风机的转速,将瓦斯的浓度控制在一个合理的范围,同时系统本身也可以接受地面控制中心发来的控制信息,对通风机的转速进行控制,从而实现系统的监和控。
考虑到实际的需要和处理器本身的处理能力,以及网络数据的传输压力。这里没有采用实时视频传输的方案,转而采用既能满足对进行状况的实时监测又能充分利用系统资源减小功耗的方案:通过采集画面的方式到达实时监控的目的。例如可以在规定的时间内多次采集采煤工作面现场的画面(例如5帧/s),然后将采集到得画面进行图像压缩处理,将处理后的数据上传到位于地面的控制中心,在显示器上显示出采煤工作面的画面,从而实现对井下采煤工作面的监控。
通过将采集处理以后的数据实时的传输到地面控制中心,存储到数据库。科研人员调用数据库中的数据,并对其进行分析,从中总结规律,从而找到更好的更安全的作业方案,进而更好的保护人员的安全和采煤区环境的稳定。
3.2.2板卡选用说明
由于ATMEL公司生产的以AVR(R)32 UC内核为基础的EVK1100平台,其MCU支持32位精简指令集(RISC),拥有512K字节闪存, 并拥有一个内置的10/100以太网媒体接入控制器(MAC),有一个SRAM/SDRAM外部总线接口,而它主频最高可达66MHz频率,而且还提供有完整的集成开发环境(IDE)。可以对其直接进行程序的烧写。此外板上还配备了LED矩阵,显示模块和足够多的外联接口等丰富资源。正是由于它具有的这些特点,可以很好的满足本此设计的各个需求。通过在32位AVR MCU上移植优秀的小型uC/OS-II系统,使得整个系统的资源得到更好的使用。
并且通过板上丰富的外接接口,可以与自制的板卡进行连接,进而进一步扩展系统的功能,例如针对各种被检信号的传感器,现场画面采集器、通风电机、井下压力自动报警装置、控制摄像头转动等,都可以通过接口与系统结合在一起。而且该平台自带以太网接口,可以方便的接入网络,实现信息通过网络进行的远距离传输的需要,同时通过一定的保密机制,可以通过任何一台接入网络的电脑实时的访问井下的监控系统,便于远程监控的专家的指导。
3.2.3系统器件使用清单
针对整个设计作品资源的分配,可以参见表3.2中的器件使用清单。
表3.2 器件使用清单
器件名称
用途
数量
器件名称
用途
数量
EVK1100板
处理中心
1
摄像头
截取图像
1
云台
控制摄像头转动
1
电脑
存储/显示
1
电机
模拟通风机
1
报警器
发出警告信息
1
瓦斯传感器
检测瓦斯浓度
若干
水位传感器
检测水位高度
若干
压力传感器
检测压力变化
若干
粉尘传感器
检测粉尘浓度
若干
电源
提供电压
1
网线
传输信号
若干
3.3系统软件架构
系统的软件总体架构如图3.3所示:
如图3.3所示,根据工作平台的不同,我们可以将软件的设计从总体上分为两部分,第一部分主要是在下位机中嵌入了小型操作系统uC/OS-II的工作平台,第二部分是运行WindowXP操作系统上位机的工台中以在下位机平台上的系统开发为主。
在下位机工作平台上,与3.1中硬件系统总体结构相对应的,我们又可以将软件系统细分为四部分。这四部分分别为信号采集模块、信号处理模块、控制模块和网络数据传输模块。在信号采集模块主要完成的功能为信号的选通,即在约定的时间周期内依次处理各个传感器或图像采集器传递过来的数据;如3.1中所述,这里的信号处理模块也分为两部分:图像信号处理作为单独的一部分;瓦斯浓度信号、顶板压力信号、粉尘浓度信号和井下水位信号的处理方法类似,所以把它整体看作一部分;电机控制模块主要包括通风电机控制模块和摄像头的云台控制模块;在网络传输模块主要完成数据的上下传输,实现远程控制等功能。实现各个功能模块的程序通过uC/OS-II进行统一的调度。通过给底层硬件开发驱动程序,对上层软件屏蔽器件的差距,方便应用层各功能模块程序的实现,和通过操作系统提供的接口对最底层硬件的控制。
在上位机工作平台上,借用上位机的显示设备和海量的存储空间,可以在基于微软的操作系统平台WindowsXP上开发出许多优良的软件并实现对从下位机传来的数据的存储。为了更好便于监控中心人员的查看,可以通过图形界面程序的设计增强人机的交互性和可观性。同时除了数据显示、数据存储和传递控制参数以外,还可以通过程序设计,调用存储在数据库中的数据对其进行分析,进一步挖掘潜藏在数据中的信息,从其中总结规律,为以后的安全工作产生工作提供重要数据,进一步提高井下工作的安全性和对周边生态环境的保护。
在这里给出的仅是系统软件的整体结构框图,重要模块的程序实现流程将在3.4中阐述。
3.4 系统软件流程
根据3.3的分析,在软件的设计方面,主要分为下位机和上位机两个部分。嵌入式系统(下位机)与通用型计算机系统(上位机)相比具有很多不同点,首先嵌入式系统通常是面向特定用户群而进行设计的,通常具有低功耗、体积小、集成度高等特点,再次嵌入式系统的硬件和软件都必须高效率地设计,同时嵌入式系统本身一般不具备开发能力。因此嵌入式系统和通用计算机系统在软件设计和实现方面存在许多差异。下面我们将分别阐述在下位机和上位机上运行的各主要功能模块的设计流程,其中以下位机的讲解为主。
3.4.1 uC/OS-II 系统控制模块
在下位机上,为了充分利用系统的资源,嵌入了一个成熟、开源的嵌入式操作系统uC/OS-II 。在本次设计中,uC/OS-II 的主要功能如图3.4.1所示:
uC/OS-II是有美国嵌入式系统专家Jean.J.Labrosse编写的一款源代码开放的实时嵌入式系统。与其他嵌入式操作系统系统相比,除具有源代码开放的有点外,他的可移植性强、功能相对强大,而且其稳定性与可靠性很高,因此本次设计选用这一款操作系统。
系统上电以后先运行自检程序,如果系统的功能模块出现异常,则产生报警信号,为了避免因发出声音警报可能造成的恐慌,本次设计通过EVK1100自带的LED灯阵列来提示异常,工作人员可以通过LED灯阵列显示的不同信号快速的查询到问题的所在点,及时的排除问题。
待判断系统各功能模块运行正常以后启动uC/OS-II。uC/OS-II可以大致分成核心、任务管理、时间处理、任务同步与通信和CPU移植等五个部分。在本次设计中,这五个部分都将涉及到。如图3.4.1所示,uC/OS-II正常启动以后,开始执行任务调度、任务同步、内存管理和时间管理等功能模块。其中网络通信功能在uC/OS-II中并没有提供,需要自己移植相关网络协议栈。在本次设计中,我们选择在uC/OS-II中移植lwip来实现TCP/IP协议栈。
lwip是瑞典计算机科学院的一个开源的TCP/IP协议栈实现,lwip是一个轻型的IP协议,有无操作系统的支持都可以运行,其对内存的需求并不高,差不多几百字节的RAM和40K左右的ROM就可以运行,这使lwip协议栈适合在低端的嵌入式系统中使用。因此lwip可以很好的满足本次设计的对网络功能的需求。
3.4.2信号处理模块的软件设计流程
根据信号的特征和信号处理的方式,这一模块的实现主要可以分为两大部分:第一部分为对传感器传来信号的处理,它们的信号处理流程相似,我们一瓦斯信号的处理流程做例进行详解;第二部分为图像信号处理模块,不同于前面所提到的信号的处理方式,其设计到图像采集和压缩等问题,因此我们将其实现流程单独讲解。
3.4.2.1非图像信号处理软件设计
(1)PID算法介绍
为了将瓦斯浓度维持在一个正常的水平,要求系统能够接受地面控制中心的控制参数对通风电机进行控制,同时为了体现灵活性,要求系统在平时能够自我调控,减少人的工作量。本次设计选用PID控制器实现平时系统的自我调节。系统能够根据瓦斯的浓度自动调节通风电机的转速,同时又能保证在紧急时刻将控制权交给地面控制中心。PID算法控制原理如图3.4.2.1-1所示:
PID是比例、积分、微分的缩写,将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,用这一控制量对被控对象进行控制,这样的控制器就称为PID控制器。本次设计之所以选择PID控制器,主要是考虑到PID具有以下优点:技术成熟、易被人们熟悉和掌握、不需要建立数学模型、控制效果好。
如图3.4.2.1-1所示,该系统有模拟PID控制器和被控对象组成。图中,r(t)是给定值,y(t)是系统的实际输出值,给定值与实际输出值构成控制偏差e(t),有e(t)=r(t)-y(t)。e(t)作为PID控制器的输入,u(t)作为控制器的输出和被控对象的输入。
模拟PID控制器的控制规律为:
式3.4.2.1
其中:y(t) ——调节器的输出信号;
e(t) ——调节器的偏差信号,它等于给定值与测量值之差;
KP——调节器的比例系数;
TI——调节器的积分时间;
TD——调节器的微分时间。
在式3.4.2.1中,比例环节的作用是对偏差瞬间做出快速反应。偏差一旦产生,控制器立即产生控制作用,使控制量向减少偏差的方向变化。积分环节的作用是把偏差的积累作为输出。在控制的过程中,只要有偏差存在,积分环节的输出就会不断增大。直到偏差e(t)=0,输出的u(t)才可能维持在某一常量,是系统在给定值r(t)不变的条件下趋于稳态。微分环节的作用是组织偏差的变化。它是根据偏差的变化趋势(变化速度)进行控制。偏差变化的越快,微分控制器的输出就越大,并能在偏差值变化之前进行修正。微分作用的引入,将有助于减少超调量,克服震荡,使系统趋于稳定。
(2)瓦斯控制模块程序流程
瓦斯控制模块的流程如如图3.4.2.1-2所示:
本程序在采样时刻到达以时,才会打开相关信号通道,在本模块中先采集瓦斯浓度信号,然后程序运行。
为了保证所设计产品的实用性和灵活性,允许其根据实际需要,因使用环境的不同或其它一些因素调节相应的初始参数。在程序的每次运行的开始都要检测是否有修改参数的请求,若有则保存修改后的参数,然后采集经A/D转换后的瓦斯浓度信号。通过数字信号滤波以后,将有用的信号传寄给PID控制单元,并通过网络模块上传到上位机。
数字滤波具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。常用的数字滤波方法有算数平均值滤波、中位值滤波、惯性滤波、加权平均值滤波和限幅滤波。从实际需要,本次设计采用的是算数平均值滤波。公式如下所示:
算数平均值滤波可以对周期脉动的采样值进行平滑加工。可以提高本次设计所采集数据的精确度。
(3)自动闭环过程控制模块框图
自动闭环控制过程如图3.4.2.1-4所示
PID算法的基本概念已经在(1)中介绍过,如图3.4.2.1-4整个过程为一个闭环控制。通过瓦斯浓度传感器检测到的浓度信号,经过模拟信号处理电路以后过滤掉干扰信号,然后经A/D转换器转换为便于MCU处理的数字信号。为了提高测量的精确度需要对数字信号进行滤波处理。经过数字滤波处理后,进入PID控制单元,控制信息经过D/A转换后成为模拟信号,为了对执行机构形成有力的驱动需要对其进行放大,因此添加了功率放大模块。这里执行机构主要指电机等电气设备,通过对其控制将被控对象(瓦斯)等控制在一个合理的范围,同时起到整体减少功耗的目的。
针对PID控制模块的程序实现,如图3.4.2.1-3所示。在本模块程序运行之前先要检测是否有来自于上位机的控制信号,若有,在跳过PID运算模块直接对被控量进行控制,否则,通过采集到得相关数据,自动的计算出用于PID运算的相关参数,然后利用这些参数进行PID运算,并产生信号量对被控端进行控制,努力使环境变量维持在正常水平。例如瓦斯浓度过高则加大通机转速,如瓦斯浓度正常维持通风机速率不变,若瓦斯浓度很低可以适度的降低通风机的转速以减小功耗。此外通过检测e(t)的大小判断瓦斯浓度是否超过正常值,若超过则产生报警信号。
3.4.2.2 图像信号处理
为了更快更好的网络中的传输图像,需要对采集到的信号进行压缩处理,压缩后的图像在保持不失真的情况下,可以降低网络流量,加快传输速度。
在综合考虑对采集到的图像信号进行处理可以选用的各种算法后,我们最后决定选用JPEG图像压缩算法。通过JPEG图片压缩算法能够将所采集到得图像压缩成可以满足需求的数据格式,而且考虑到JPEG格式是使用最广泛的图片格式,它采用的是特殊的压缩算法,将不易被人眼察觉的图像颜色删除,从而达到较大的压缩比(可达到2:1甚至40:1),有“身材娇小,容貌姣好”的美称,同时其算法在本次有限资源的开发平台中可以得以实现,因此本次设计选用JPEG压缩算法。
如图3.4.2.2-1所示,其所表达的是JPEG编码的整个工作方式的原理图,其流程主要为①色彩空间转换及采样,②正向离散余弦变化(FDCT), ③量化(Quantization),④直流系数(dc)的差分编码、直流系数(ac)的zig-zag扫描及行程编码,⑤熵编码(Entropy Coding)。
如图3.4.2.2-2所示,为图像处理模块的整体流程图。定时周期到达后,系统每次调用本程序模块运行时都要先查看是否有来自上位机的控制云台转动的消息。如有则根据其参数将摄像头转动到合适的角度,然后再进行现场画面的采集。系统每隔一段时间就采集一次经模拟信号处理单元处理以后再经A/D模块转换后的图片数据。然后将相关数据传寄到图片压缩模块,实现对图像数据的编码处理。这样使得图像的数据更小、更容易在信道上传播、也方便对图像的保存和查看。经压缩编码处理后的图像数据通过网络传输模块送至上位机,上位机通过相应的JPEG解码程序就可以实现对压缩图片的正常显示,并将相关数据进行存储以备以后查询。整个JPEG图像压缩算法的具体实现流程参见图3.4.2.2-3。
3.4.3上位机主要功能模块的软件实现
在上位机的各功能模块中,主要的功能模块就是对数据的分析和显示。其程序流程框图如图3.4.3所示:
程序正常运行以后,在平时的工作模式下(大多数时间内)系统仅是接收来自下位机的数据,然后将数据存储到数据库中并在屏幕上显示出来便于地面监控中心工作人员的查看。同时也可以调用数据库中的数据进行分析,并将结果在屏幕上显示出来。
如果下位机传来的是报警信号,则系统除了存储和显示相关信息外,还会启动地面紧急报警装置,提醒监控中心的人员井下发生紧急状况,可以让相关人员及时采取措施,将可能造成的危害降到最小。
当程序检测到有控制信号产生以后,立即通过网络给下位机发送强制控制信号,指导下位机完成控制动作。实现远程监控的作用。
3.5 系统预计实现结果
根据前面得分析,本次设计能够成功的实现预定的功能,且满足相关的性能要求。最终所完成的作品能够及时的对瓦斯浓度、顶板压力、粉尘浓度、水位和现场画面等信息进行采集,并且经过相应的针对各种信息的成型模块处理以后,将结果实时传输到位于地面的监控中心。而且根据某些特殊需求,其它连接在网络上的通过验证的主机也可以获得这些信息。当检测到得信号出现异常时,例如超出某个根据实际情况预设的范围后,系统本身除自我调控以外还能够及时的发出报警信息,提醒井下工作人员立即撤离,并由监控中心的工作人员及时做出部署,尽量将损失尽量降低到最低。
上位机程序的运行预期界面如下图所示: