新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 物聯(lián)網(wǎng)技術(shù)的嵌入式礦下環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

物聯(lián)網(wǎng)技術(shù)的嵌入式礦下環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2016-10-29 來(lái)源:網(wǎng)絡(luò) 收藏

引言

本文引用地址:http://www.butianyuan.cn/article/201610/307688.htm

在“感知中國(guó)”的物聯(lián)網(wǎng)技術(shù)全面發(fā)展的環(huán)境下,“感知礦山”是中國(guó)物聯(lián)網(wǎng)技術(shù)應(yīng)用中重要的一環(huán),本設(shè)計(jì)所構(gòu)建的系統(tǒng)主要完成對(duì)礦井下環(huán)境參數(shù)的監(jiān)測(cè),實(shí)現(xiàn)井下工作人員的定位跟蹤、將收集的信息數(shù)據(jù)存儲(chǔ)并上傳到監(jiān)控中心,為煤礦企業(yè)的安全生產(chǎn)、管理者制定科學(xué)決策提供有效依據(jù)。該系統(tǒng)是一個(gè)集物聯(lián)網(wǎng)、互聯(lián)網(wǎng)、傳感器等技術(shù)于一體的綜合系統(tǒng),本文篇幅有限,主要闡述該系統(tǒng)的設(shè)計(jì)方案。

1 系統(tǒng)概述

1.1 系統(tǒng)構(gòu)成及部署

基于物聯(lián)網(wǎng)技術(shù)的嵌入式礦下環(huán)境監(jiān)測(cè)系統(tǒng),是基于PC、Cortex—A8及Cortex-M0等設(shè)計(jì),依托各項(xiàng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、傳感器等技術(shù)實(shí)現(xiàn),實(shí)現(xiàn)各個(gè)礦井井下環(huán)境的遠(yuǎn)程監(jiān)測(cè)、人員位置跟蹤,以實(shí)現(xiàn)最大限度的礦井環(huán)境監(jiān)測(cè)。

系統(tǒng)分為三大模塊:服務(wù)器端(PC)、數(shù)據(jù)處理平臺(tái)(A8)和遠(yuǎn)程環(huán)境監(jiān)測(cè)終端(M0)。

本系統(tǒng)在礦區(qū)的安裝布置方式如圖1所示。

a.jpg

煤礦的礦區(qū)特點(diǎn)是單個(gè)礦井縱深長(zhǎng),而范圍卻比較小,各個(gè)終端和數(shù)據(jù)處理中心進(jìn)行連接時(shí)必須使用級(jí)聯(lián)的方式,各個(gè)終端相互之間進(jìn)行逐級(jí)上報(bào),M0采集模塊完成數(shù)據(jù)采集,通過(guò)通信上報(bào)到A8前端數(shù)據(jù)處理中心,然后A8前端模塊集中將數(shù)據(jù)通過(guò)WEB方式提供給遠(yuǎn)程PC后臺(tái)。

1.2 系統(tǒng)功能描述

系統(tǒng)實(shí)現(xiàn)的基本功能主要包括:M0終端安裝在礦井的縱深方向,各個(gè)M0終端通過(guò)進(jìn)行級(jí)聯(lián),實(shí)現(xiàn)整個(gè)礦井的分布式數(shù)據(jù)采集;M0終端實(shí)時(shí)采集礦下環(huán)境數(shù)據(jù):溫度、濕度、瓦斯?jié)舛?、RFID刷卡數(shù)據(jù);最靠近數(shù)據(jù)處理中心的M0終端、通過(guò)通信,將采集到的環(huán)境數(shù)據(jù)及刷卡信息傳送給數(shù)據(jù)處理中心;數(shù)據(jù)處理中心(A8)接收到各個(gè)M0終端采集的數(shù)據(jù)后進(jìn)行統(tǒng)一處理(存儲(chǔ)、轉(zhuǎn)發(fā)、產(chǎn)生報(bào)警信息、更新到核心服務(wù)器端);數(shù)據(jù)處理中心(A8)通過(guò)GPRS模塊向綁定的手機(jī)發(fā)送報(bào)警信息;數(shù)據(jù)處理中心(A8)構(gòu)建嵌入式WEB服務(wù)器,用戶通過(guò)網(wǎng)絡(luò)和PC進(jìn)行監(jiān)控,并進(jìn)行相應(yīng)的參數(shù)設(shè)置;服務(wù)器PC端為總的數(shù)據(jù)處理后臺(tái),通過(guò)網(wǎng)絡(luò)連接到各個(gè)A8數(shù)據(jù)處理中心,下載各個(gè)數(shù)據(jù)中心數(shù)據(jù)以進(jìn)行二次數(shù)據(jù)處理。

1.3 系統(tǒng)通信方式

在本系統(tǒng)中,三個(gè)模塊間使用了以下幾種通信方式。

PC后臺(tái)和A8數(shù)據(jù)處理中心之間:使用WEB服務(wù)的方式,由A8數(shù)據(jù)處理中心構(gòu)建的嵌入式WEB服務(wù)器,在模塊內(nèi)實(shí)現(xiàn)簡(jiǎn)單的控制網(wǎng)頁(yè),PC通過(guò)普通網(wǎng)頁(yè)的方式進(jìn)行模塊的訪問(wèn)和控制。

A8數(shù)據(jù)處理中心和M0數(shù)據(jù)采集模塊之間:使用ZigBee短程無(wú)線的方式進(jìn)行數(shù)據(jù)的傳輸和模塊的控制。

A8模塊和手機(jī)之間:A8模塊連接一個(gè)GPRS模塊,目前主要使用短信的方式,在緊急事件發(fā)生時(shí),向用戶手機(jī)發(fā)出短信;同時(shí)GPRS模塊也可以提供數(shù)據(jù)連接方式,實(shí)現(xiàn)手機(jī)端的WEB訪問(wèn)。

各個(gè)M0數(shù)據(jù)采集模塊之間:使用ZigBee短程無(wú)線通信,在深井內(nèi)的M0模塊由于距離過(guò)長(zhǎng),無(wú)法和A8進(jìn)行通信,所以必須使用級(jí)聯(lián)的方式,通過(guò)相鄰的M0模塊進(jìn)行逐級(jí)上報(bào)。

2 數(shù)據(jù)處理中心(A8)

基于Cortex-A8的數(shù)據(jù)處理中心模塊,需要實(shí)現(xiàn)與PC的WEB連接、與各個(gè)采集模塊的ZigBee通信、與手機(jī)的GPRS通信,為此使用基于v7的Cortex—A8內(nèi)核的高性能嵌入式處理器,構(gòu)建嵌入式系統(tǒng),并在此基礎(chǔ)上構(gòu)建嵌入式WEB服務(wù)器以實(shí)現(xiàn)遠(yuǎn)端連接,移植QT圖像界面以實(shí)現(xiàn)本地化的簡(jiǎn)單控制。

2.1 系統(tǒng)架構(gòu)

數(shù)據(jù)處理中心模塊為一個(gè)完整的嵌入式系統(tǒng),硬件設(shè)計(jì)上使用三星公司基于Cortex—A8內(nèi)核CPU S5PC100芯片作為主處理器,擴(kuò)展SDRAM、Flash構(gòu)成一個(gè)高性能的嵌入式控制板。在此基礎(chǔ)上使用操作系統(tǒng)、QT圖形界面,以及BOA嵌入式WEB服務(wù)器,提供網(wǎng)頁(yè)連接方式。

模塊開(kāi)發(fā)過(guò)程中,使用了華清遠(yuǎn)見(jiàn)公司的S5PC100開(kāi)發(fā)板進(jìn)行軟件開(kāi)發(fā)和系統(tǒng)評(píng)估,在開(kāi)發(fā)板的基礎(chǔ)上通過(guò)UART串口擴(kuò)展了ZigBee和GPRS模塊,硬件架構(gòu)如圖2所示。

b.jpg

作為一個(gè)嵌入式系統(tǒng),系統(tǒng)的設(shè)計(jì)充分考慮了軟件的分層和模塊化設(shè)計(jì)方式,在評(píng)估板上移植了嵌入式Linux作為應(yīng)用系統(tǒng),并為各個(gè)部分的硬件模塊編寫(xiě)相應(yīng)的Linux驅(qū)動(dòng),構(gòu)成一個(gè)嵌入式Linux開(kāi)發(fā)平臺(tái),在此平臺(tái)上再進(jìn)行應(yīng)用程序的開(kāi)發(fā),整個(gè)系統(tǒng)的層次結(jié)構(gòu)如圖3所示。

c.jpg

2.2 平臺(tái)設(shè)計(jì)

這里所說(shuō)的平臺(tái),是在S5PC100開(kāi)發(fā)板上構(gòu)建一個(gè)嵌入式Linux平臺(tái),分為內(nèi)核層和驅(qū)動(dòng)層兩個(gè)主要部分。其中,內(nèi)核層完成Linux內(nèi)核的裝載、啟動(dòng)、根文件系統(tǒng)的掛載,包括u—boot啟動(dòng)器、Linux內(nèi)核、rootfs文件系統(tǒng)、yaffs文件系統(tǒng),而驅(qū)動(dòng)層則是GPRS、LED、ZigBee等外部硬件設(shè)備的硬件驅(qū)動(dòng)。

系統(tǒng)啟動(dòng)時(shí),從NAND Flash中啟動(dòng)u—boot,通過(guò)u—boot從NAND Flash中裝載Linux內(nèi)核鏡像,并掛載rootfs文件系統(tǒng)供內(nèi)核使用。yaffs文件系統(tǒng)用于管理NAND Flash的余下分區(qū),作為數(shù)據(jù)存儲(chǔ)使用。

2.3 應(yīng)用設(shè)計(jì)

(1)系統(tǒng)架構(gòu)

數(shù)據(jù)處理中心(A8)需要不停讀取各個(gè)采集終端(M0)采集到的環(huán)境信息,根據(jù)環(huán)境信息決定是否產(chǎn)生報(bào)警信號(hào)(發(fā)短信、網(wǎng)頁(yè)通知、聲光報(bào)警等)并進(jìn)行數(shù)據(jù)的保存。同時(shí),還要響應(yīng)PC后臺(tái)的網(wǎng)頁(yè)請(qǐng)求,提供后臺(tái)PC的無(wú)線訪問(wèn)。

系統(tǒng)共設(shè)計(jì)了5個(gè)進(jìn)程,描述如下:

①主進(jìn)程負(fù)責(zé)采集數(shù)據(jù),并做主要的事務(wù)處理,產(chǎn)生的數(shù)據(jù)及網(wǎng)頁(yè)報(bào)警信息通過(guò)共享內(nèi)存和QT進(jìn)程,記錄進(jìn)程并交互;

②ZigBee進(jìn)程負(fù)責(zé)按設(shè)定好的時(shí)間間隔從各個(gè)分板將數(shù)據(jù)讀回來(lái),并通過(guò)消息隊(duì)列通知主進(jìn)程;

③QT進(jìn)程負(fù)責(zé)人機(jī)界面交互,從共享內(nèi)存中讀取數(shù)據(jù),顯示于LCD上,并處理用戶輸入,響應(yīng)用戶操作;

④數(shù)據(jù)記錄進(jìn)程,從共享內(nèi)存中取得各項(xiàng)數(shù)據(jù)記錄于數(shù)據(jù)庫(kù)中;

⑤CGI程序?yàn)楠?dú)立的可執(zhí)行程序,從共享內(nèi)存中讀取數(shù)據(jù),響應(yīng)網(wǎng)頁(yè)操作,并將網(wǎng)頁(yè)設(shè)置的值通過(guò)共享內(nèi)存?zhèn)鬟f給主進(jìn)程,進(jìn)行事務(wù)的處理。

(2)HTML和QT界面設(shè)計(jì)

網(wǎng)頁(yè)頁(yè)面主要用來(lái)顯示相關(guān)信息,并提供設(shè)置選擇是否產(chǎn)生相應(yīng)的報(bào)警信息。從安全角度考慮,進(jìn)入系統(tǒng)之前,必須進(jìn)行用戶校驗(yàn)。用戶登錄進(jìn)入系統(tǒng)后,可以通過(guò)左側(cè)選擇查看各個(gè)終端,右側(cè)設(shè)計(jì)為實(shí)時(shí)切換各個(gè)終端的數(shù)據(jù)顯示,如圖4所示。

d.jpg

除了登錄檢查和監(jiān)控,系統(tǒng)還提供了歷史數(shù)據(jù)查看功能,如圖5所示??梢圆榭辞皫滋斓臄?shù)據(jù),類似于監(jiān)控界面,通過(guò)左側(cè)的選擇框選擇相應(yīng)的終端,右邊實(shí)時(shí)切換至相應(yīng)的信息顯示;此外增加了圖表方式進(jìn)行連接的曲線顯示。

3 數(shù)據(jù)采集終端(M0)

實(shí)際安裝在各個(gè)采集點(diǎn)的數(shù)據(jù)采集終端,在夜間斷電時(shí)還要能夠監(jiān)測(cè)礦井里各個(gè)點(diǎn)的環(huán)境數(shù)據(jù),使用電池和電力交叉供電的方式?;贑ortex—M0內(nèi)核的LPC11C14微處理器作為主控芯片,它是一個(gè)超低功耗的內(nèi)核CPU,可以在保證系統(tǒng)功能的情況下,實(shí)現(xiàn)在電池供電狀態(tài)下的較長(zhǎng)待機(jī)時(shí)間。

3.1 系統(tǒng)架構(gòu)及功能描述

數(shù)據(jù)采集終端M0,安裝于礦井的各個(gè)部分,負(fù)責(zé)各個(gè)點(diǎn)的環(huán)境監(jiān)測(cè)與數(shù)據(jù)上報(bào),整體架構(gòu)如圖6所示。系統(tǒng)功能包括:環(huán)境信息采集,即如溫度、濕度、瓦斯?jié)舛?RFID數(shù)據(jù)采集,每個(gè)M0終端可以連接一個(gè)RFID讀卡器,用于工人位置的簡(jiǎn)單定位;輔助信息采集,模塊本身電池電量、Axis_3三軸加速度(在發(fā)生地震時(shí),由于不平衡,震動(dòng)而觸發(fā));數(shù)據(jù)上報(bào),通過(guò)ZigBee模塊將采集的數(shù)據(jù)上報(bào)到A8前端數(shù)據(jù)模塊進(jìn)行統(tǒng)一處理;異常報(bào)警,正常情況下,模塊的異常告警由A8模塊進(jìn)行控制,在異常產(chǎn)生時(shí),可以獨(dú)立生產(chǎn)異常報(bào)警信息;運(yùn)行狀態(tài)指示,簡(jiǎn)單的LED指示系統(tǒng)當(dāng)前運(yùn)行狀態(tài)(是否在工作)等。

e.jpg

M0終端需要采集環(huán)境的濕度、溫度、瓦斯?jié)舛燃捌渌嚓P(guān)信息,并處理ZigBee通信。

主要包括:采用DHT11傳感器對(duì)溫濕度信息進(jìn)行采集;采用MMA7455L傳感器采集三軸加速度;采用CY14443/SPI對(duì)RFID信息采集;采用ADC 3通道對(duì)電池電量信息采集;采用ADC0通道對(duì)電位器信息采集;采用RS232接口的集成ZigBee模塊進(jìn)行無(wú)線通信。

3.2 M0終端工作流程

在本系統(tǒng)中,M0作為分布式模塊安裝于礦井的各個(gè)監(jiān)測(cè)點(diǎn),負(fù)責(zé)采集各個(gè)環(huán)境信息并通過(guò)ZigBee模塊進(jìn)行上報(bào),主要包括4個(gè)處理流程:ZigBee接收中斷處理、RFID中斷處理、秒中斷處理和主流程。

首先,系統(tǒng)上電初始化M0終端設(shè)備,系統(tǒng)定時(shí)器、GPIO口、SPI、UART、I2C總線等設(shè)備,配置系統(tǒng)定時(shí)器為1ms,配置中斷處理函數(shù)為1 s,第一次采集信息。

然后,主程序進(jìn)行輪詢判斷,在沒(méi)有外部中斷(ZigBee接收中斷,RFID刷卡中斷)情況下進(jìn)行數(shù)據(jù)的采集,嘗試與主站A8模塊進(jìn)行通信。在通信未成功之前,M0終端設(shè)置為自動(dòng)報(bào)警模式(自我環(huán)境監(jiān)測(cè)、異常報(bào)警等)。

當(dāng)有外部RFID時(shí),其他數(shù)據(jù)正常采集,RFID中斷函數(shù)同時(shí)對(duì)磁卡數(shù)據(jù)采集校驗(yàn),并通過(guò)ZigBee模塊發(fā)送給A8模塊。

當(dāng)有外部中斷ZigBee接收中斷時(shí),中斷處理函數(shù)接收A8服務(wù)器發(fā)過(guò)來(lái)的命令,執(zhí)行不同的操作,同時(shí)將M0終端設(shè)置為受控模式。

從安全穩(wěn)定的角度考慮,在A8模塊異常、M0終端無(wú)法和A8模塊通信超過(guò)30 s時(shí),M0終端將會(huì)切換到自動(dòng)模式,自己進(jìn)行異常檢測(cè),根據(jù)設(shè)置好的參數(shù)判斷是否產(chǎn)生報(bào)警信息(聲光報(bào)警)。

結(jié)語(yǔ)

整個(gè)系統(tǒng)的構(gòu)建比較復(fù)雜,涉及硬件設(shè)計(jì)、ARM內(nèi)核編程、系統(tǒng)bootloader、Linux內(nèi)核移植、驅(qū)動(dòng)程序、嵌入式Linux應(yīng)用編程、網(wǎng)頁(yè)編程、AJAX網(wǎng)頁(yè)動(dòng)態(tài)加載技術(shù)、數(shù)據(jù)庫(kù)編程等多各項(xiàng)技術(shù)的綜合應(yīng)用。

在系統(tǒng)的構(gòu)建過(guò)程中,必須保持清晰的模塊化設(shè)計(jì),并且在模塊分布架構(gòu)前,必須設(shè)計(jì)好整個(gè)數(shù)據(jù)流,根據(jù)數(shù)據(jù)流來(lái)進(jìn)行模塊的劃分與交互,單個(gè)模塊的技術(shù)應(yīng)用并不復(fù)雜,整個(gè)系統(tǒng)的實(shí)現(xiàn)與架構(gòu)是設(shè)計(jì)的難點(diǎn)。

目前,本設(shè)計(jì)已經(jīng)實(shí)現(xiàn)了整個(gè)系統(tǒng)的基本框架,完成了整個(gè)系統(tǒng)的數(shù)據(jù)流閉環(huán),需要完善的是根據(jù)實(shí)際的使用情況改善用戶體驗(yàn)度,例如網(wǎng)頁(yè)的操作模式、工人井下操作的便利性等。



關(guān)鍵詞: ZigBee Cortex―M0 Cortex―A8 ARM Linux

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉