云南師范大學(xué)商學(xué)院 施媛波
針對現(xiàn)有工業(yè)數(shù)據(jù)采集的交互性和可靠性差的問題,提出一種嵌入式實時數(shù)據(jù)采集和控制系統(tǒng),并完成系統(tǒng)的軟硬件實現(xiàn)。該系統(tǒng)以基于ARM11框架的Raspberry Pi為核心,將Web服務(wù)器應(yīng)用程序移植到嵌入式ARM處理器中,利用基于ARM的嵌入式Web服務(wù)器開發(fā)在線交互式數(shù)據(jù)采集與控制系統(tǒng)。傳感器采集的數(shù)據(jù)通過嵌入式Web服務(wù)器上傳,遠程客戶端通過網(wǎng)絡(luò)訪問得到采集的數(shù)據(jù),當(dāng)數(shù)值超出預(yù)警值則啟動繼電器進行控制。測試結(jié)果表明,當(dāng)系統(tǒng)服務(wù)器的接收到任何請求時,從傳感器采集的數(shù)據(jù)會以網(wǎng)頁的形式顯示,說明了設(shè)計實現(xiàn)的嵌入式實時數(shù)據(jù)采集和控制系統(tǒng)的可行性與有效性。
在工業(yè)測量和控制領(lǐng)域,獲得大量的實時現(xiàn)場參數(shù)是很有必要的。由于環(huán)境的復(fù)雜性,數(shù)據(jù)采集系統(tǒng)大多由工業(yè)計算機完成,但是工業(yè)計算機具有體積大、功耗大、可靠性差和安裝不方便等問題。另外有專用的、可獨立工作的數(shù)據(jù)采集系統(tǒng),使用數(shù)字信號處理器和微控制器來完成,缺點是價格高,人機交互性差。
嵌入式處理器的快速發(fā)展有效地彌補了工業(yè)個人計算機(Industrial Personal Computer,IPC)的不足,尤其是ARM處理器,它不僅結(jié)合了其他采集系統(tǒng)的優(yōu)點,克服了它的缺點,增加了一些新功能,進一步擴展其應(yīng)用領(lǐng)域和適用范圍,針對不同需求,具有極大的靈活性。ARM處理器通常是SOC芯片,相比傳統(tǒng)控制器具有大量的片上外設(shè)和更強大的性能。目前已經(jīng)有研究者對嵌入式數(shù)據(jù)采集系統(tǒng)進行了研究。
本文針對現(xiàn)有數(shù)據(jù)采集系統(tǒng)的問題,提出一種基于ARM11框架的Raspberry Pi的嵌入式實時數(shù)據(jù)采集和控制系統(tǒng),遠程客戶端用戶通過網(wǎng)絡(luò)訪問嵌入式Web服務(wù)器,從網(wǎng)頁上得到傳感器采集的數(shù)據(jù),當(dāng)數(shù)據(jù)超出預(yù)警值以后啟動繼電器進行控制。
Raspberry Pi是一種嵌入式卡片電腦,由Raspberry Pi基金會在英國開發(fā)出來的,其主要目標(biāo)是創(chuàng)建一個經(jīng)濟有效的平臺,通過提供只需要SD卡的一體化電路板、監(jiān)視器和輸入設(shè)備來運行,是一種實用且價格合理的設(shè)備。Raspberry Pi沒有只讀內(nèi)存,可以阻止用戶刷新固件使Pi變成一個不可操作的板。Raspberry Pi另一個吸引人的因素是設(shè)備的功耗很小,因為它可以通過另一臺計算機的通用串行總線USB端口或小型5v充電器供電。
Raspberry Pi接口較豐富,具有高清多媒體接口HDMI、通用串行總線USB和內(nèi)部集成電路IIC等,可通過C/C++或者Python語言編寫相應(yīng)程序來實現(xiàn)不同的功能。圖1給出了Raspberry Pi的接口與外設(shè)圖。另外Raspberry Pi具有26個GPIO對外接口,通過GPIO可以實現(xiàn)控制工作和數(shù)據(jù)交互等功能,本文通過Python語言來控制其進行工作。
Raspberry Pi嵌入式數(shù)據(jù)采集系統(tǒng)所提嵌入式Raspberry Pi數(shù)據(jù)采集和控制系統(tǒng)硬件組成有:嵌入式Raspberry Pi、AT-mega16微控制器、傳感器、繼電器和路由器。
其中Raspberry Pi是系統(tǒng)的核心,具有實時仿真和嵌入式跟蹤支持的性能。傳感器如氣壓溫度傳感器,氣體傳感器和光敏傳感器連接到Raspberry Pi,將采集到的數(shù)據(jù)通過Raspberry Pi上web服務(wù)器以網(wǎng)頁的形式發(fā)送到客戶端。
BMP085氣壓溫度傳感器,由壓阻式傳感器、模數(shù)轉(zhuǎn)換器、帶電可擦可編程只讀存儲器(Electrically Erasable Programmable read only memory,EEPROM)和串行I2C接口的控制單元組成。BMP085提供無補償?shù)膲毫χ?,測量范圍為300~1100hPa,絕對精度為2.5hPa,噪音低至0.03hPa。同時,BMP085具有低至3uA的低功耗。傳感器支持1.8至3.6V的電壓,BMP085的額定工作溫度范圍為-550至+1500℃。BMP085與Raspberry Pi連接圖如圖1所示。
圖1 BMP085管腳與Raspberry Pi GPIO對應(yīng)連接圖
數(shù)據(jù)采集系統(tǒng)中使用的氣體傳感器是MQ-6,它對丙烷、丁烷和液化石油氣具有高靈敏度,也對天然氣有反應(yīng),MQ-傳感器可用于檢測不同的可燃氣體,尤其是甲烷,具有的優(yōu)點是成本低,適合不同的可燃氣體檢測。MQ-6氣體傳感器的敏感材料是SnO2,當(dāng)空氣中存在可燃氣體,MQ-6電導(dǎo)率隨著可燃氣體濃度的增加而增大,通過轉(zhuǎn)化電路,輸出與氣體濃度相當(dāng)?shù)臄?shù)據(jù)。MQ-6傳感器與Raspberry Pi連接圖如圖2所示。
圖2 MQ-6管腳與Raspberry Pi GPIO對應(yīng)連接圖
系統(tǒng)中采集光照強度使用的光感LDR傳感器是BH1750,作為一種數(shù)字型光強傳感器集成電路具有光靈敏度,該傳感器具有一個由高電阻半導(dǎo)體制成的光敏電阻,該電阻根據(jù)落在其上的可見光的數(shù)量而變化。
嵌入式Web服務(wù)器構(gòu)建在Raspberry Pi上,選擇輕量級Web服務(wù)器,降低內(nèi)存消耗,提高運行速度。在構(gòu)建Web服務(wù)器時使用的EWS(Exchange Web Service)協(xié)議是GoAhead,EWS的功能是實現(xiàn)客戶端和服務(wù)器之間的信息交換。
嵌入式Web服務(wù)器用到的主要技術(shù)有HTTP協(xié)議和公共網(wǎng)關(guān)接口(Common Gateway Interface,CGI),在Web服務(wù)器工作時,CGI用來規(guī)定調(diào)用其他程序接口協(xié)議的標(biāo)準(zhǔn),通過調(diào)用CGI實現(xiàn)Web瀏覽器交互。當(dāng)Web服務(wù)器的信息(該信息由瀏覽器發(fā)送給服務(wù)器)達到CGI時將進行處理,把響應(yīng)結(jié)果再反饋給Web服務(wù)器和瀏覽器,最終完成網(wǎng)頁中表單數(shù)據(jù)的處理和查詢。
圖3 系統(tǒng)監(jiān)視和控制過程
圖4 瀏覽器顯示采集到的數(shù)據(jù)
圖3給出了如何采取監(jiān)視和控制措施,系統(tǒng)軟件是IDLE,使用嵌入式Python程序語言實現(xiàn)。
對于Raspberry Pi數(shù)據(jù)采集和顯示過程,利用WiringPi 函數(shù)庫對Raspberry Pi和傳感器進行控制,利用編程語義對數(shù)據(jù)實現(xiàn)循環(huán)采集,并將數(shù)據(jù)傳送到網(wǎng)頁上。其中WiringPi是GPIO控制庫函數(shù),包含了GPIO控制命令,通過WiringPi可以對Raspberry Pi的GPIO管腳進行擴展,實現(xiàn)數(shù)據(jù)采集等模塊。
基于Raspberry Pi的嵌入式數(shù)據(jù)采集和控制系統(tǒng)硬件實現(xiàn),系統(tǒng)中客戶端使用的電腦配置為:win7及以上操作系統(tǒng),IE8及以上版本的Web瀏覽器,采用的測試地址為http://172.20.10.2/:8000。結(jié)果顯示在網(wǎng)頁上,如圖4所示。它顯示各種參數(shù)的狀態(tài),如溫度、氣體、壓力和待監(jiān)測位置的光強度以及通過該網(wǎng)頁進行控制。
如果獲取到的溫度、壓力、光照強度和其他濃度高于報警值,則啟動繼電器進行控制。
結(jié)論:本文設(shè)計了一個基于嵌入式Raspberry Pi的數(shù)據(jù)采集和監(jiān)控系統(tǒng),并給出了硬件和軟件的實現(xiàn)方法,該系統(tǒng)可以使溫度壓力傳感器、氣體傳感器和光強傳感器采集的到數(shù)據(jù),通過嵌入式Web服務(wù)器將采集數(shù)據(jù)上傳,使得任何遠程客戶端通過一個網(wǎng)絡(luò)訪問得到從傳感器獲取的數(shù)據(jù),系統(tǒng)中嵌入式Web服務(wù)是在Raspberry Pi上構(gòu)建的。對設(shè)計系統(tǒng)進行測試,當(dāng)嵌入式Web服務(wù)器接收到任何來自客戶端的請求時,從傳感器獲取的數(shù)據(jù)將成功顯示在網(wǎng)頁上,說明本文設(shè)計的系統(tǒng)是可行,可以提高系統(tǒng)的可擴展性和靈活性,在工業(yè)測控領(lǐng)域具有廣闊的應(yīng)用前景。