《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 顯示光電 > 設(shè)計(jì)應(yīng)用 > 嵌入式圖像采集平臺(tái)的信息管理系統(tǒng)設(shè)計(jì)
嵌入式圖像采集平臺(tái)的信息管理系統(tǒng)設(shè)計(jì)
2016年微型機(jī)與應(yīng)用第04期
張力云,余艷梅,吳小強(qiáng),何小海
(四川大學(xué) 電子信息學(xué)院 圖像信息研究所,四川 成都 610064)
摘要: 設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式平臺(tái)的巖屑圖像采集信息管理系統(tǒng)。系統(tǒng)由SQLite數(shù)據(jù)庫(kù)、Web服務(wù)器、無線WiFi模塊三部分組成。巖屑圖像采集完成后將井號(hào)、井段、采集時(shí)間等信息寫入到數(shù)據(jù)庫(kù)中,采集進(jìn)程利用Socket通知Web服務(wù)器更新采集信息。PC或者移動(dòng)設(shè)備通過WiFi與Web服務(wù)器建立連接,Web服務(wù)器利用Websocket協(xié)議將采集的信息發(fā)送到客戶端的瀏覽器,同時(shí)也可以在客戶端下載圖像。
Abstract:
Key words :

  張力云,余艷梅,吳小強(qiáng),何小海

  (四川大學(xué) 電子信息學(xué)院 圖像信息研究所,四川 成都 610064)

       摘要:設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式平臺(tái)的巖屑圖像采集信息管理系統(tǒng)。系統(tǒng)由SQLite數(shù)據(jù)庫(kù)Web服務(wù)器、無線WiFi模塊三部分組成。巖屑圖像采集完成后將井號(hào)、井段、采集時(shí)間等信息寫入到數(shù)據(jù)庫(kù)中,采集進(jìn)程利用Socket通知Web服務(wù)器更新采集信息。PC或者移動(dòng)設(shè)備通過WiFi與Web服務(wù)器建立連接,Web服務(wù)器利用Websocket協(xié)議將采集的信息發(fā)送到客戶端的瀏覽器,同時(shí)也可以在客戶端下載圖像。

  關(guān)鍵詞:嵌入式平臺(tái);Websocket協(xié)議;SQLite數(shù)據(jù)庫(kù);Web服務(wù)器

0引言

  四川省教育廳2014年研究生教育改革創(chuàng)新項(xiàng)目(2014教034)傳統(tǒng)的巖屑圖像采集平臺(tái)是通過PC與采集設(shè)備共同協(xié)作實(shí)現(xiàn)的,PC與采集設(shè)備之間通過串口和USB進(jìn)行通信,進(jìn)而實(shí)現(xiàn)對(duì)采集儀的控制,但是采集設(shè)備龐大,系統(tǒng)比較復(fù)雜[1]。隨著采集設(shè)備小型化和便攜式的需求日益增大,一種新型的巖屑采集一體機(jī)應(yīng)運(yùn)而生,采集儀的核心是一塊運(yùn)行著Linux系統(tǒng)的ARM主板,采集系統(tǒng)軟件集成在嵌入式系統(tǒng)上,控制整個(gè)采集設(shè)備的正常運(yùn)行,從而實(shí)現(xiàn)了采集儀與 PC的分離,達(dá)到了設(shè)備小型化和便攜式的要求[2]。

  然而巖屑圖像采集過程中用戶需要統(tǒng)計(jì)所有已經(jīng)采集的圖像才能知曉當(dāng)前的采集進(jìn)度,圖像信息不易管理。另一方面,采集儀上的圖像需要傳輸?shù)絇C進(jìn)行后續(xù)處理,但是目前采集儀與PC需要通過交換機(jī)和網(wǎng)線連接之后才能進(jìn)行圖像傳輸,在實(shí)際應(yīng)用中帶來諸多不便。

  針對(duì)采集系統(tǒng)中存在的缺陷,本文設(shè)計(jì)并實(shí)現(xiàn)了輕量級(jí)的圖像信息管理系統(tǒng)進(jìn)而實(shí)現(xiàn)對(duì)圖像信息的管理,同時(shí)設(shè)計(jì)了無線模塊以便于客戶端與采集儀進(jìn)行無線通信。

1系統(tǒng)整體設(shè)計(jì)

  本文設(shè)計(jì)的圖像信息管理系統(tǒng)由SQlite數(shù)據(jù)庫(kù)和Web服務(wù)器組成。SQlite數(shù)據(jù)庫(kù)用于保存圖像信息,Web服務(wù)器用于與客戶端進(jìn)行交互,提供圖像信息瀏覽和圖像下載的功能。Web服務(wù)器是基于Tornado框架設(shè)計(jì)的,該框架占用資源少,與SQLite同為輕量級(jí)的應(yīng)用,非常適合嵌入式系統(tǒng)的開發(fā)。Web服務(wù)器與客戶端通過Websocket協(xié)議進(jìn)行通信,該協(xié)議是基于TCP的應(yīng)用層協(xié)議,讓客戶端和服務(wù)器端保持長(zhǎng)連接,為圖像采集信息的實(shí)時(shí)更新提供了便捷,并且比HTTP短連接協(xié)議通信效率更高,資源占用更少。無線模塊提供WiFi熱點(diǎn)功能,任何有WiFi功能的設(shè)備可以與Web服務(wù)器建立連接,通過瀏覽器實(shí)現(xiàn)圖像信息瀏覽和下載的功能。本文設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)圖如圖1所示。

  

001.jpg

2數(shù)據(jù)庫(kù)設(shè)計(jì)

  由于平臺(tái)資源限制,本文設(shè)計(jì)的系統(tǒng)采用了專門針對(duì)嵌入式平臺(tái)應(yīng)用的輕型數(shù)據(jù)庫(kù)SQLite,它是遵守ACID的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),這種數(shù)據(jù)庫(kù)占用資源非常少,一般只需要不到1 MB的內(nèi)存,并且數(shù)據(jù)存取速度快,目前該數(shù)據(jù)庫(kù)已經(jīng)廣泛應(yīng)用在各種嵌入式產(chǎn)品中。

  在巖屑圖像采集系統(tǒng)中,所有采集的圖像信息存儲(chǔ)在IMG表中,該表有6個(gè)屬性,分別為ID、WELL、START、END、LIGHT、DATE。圖像采集完成后采集軟件將以上信息寫入數(shù)據(jù)庫(kù),并通過Socket發(fā)送采集完成信息給Web服務(wù)器進(jìn)行狀態(tài)更新。本文設(shè)計(jì)的數(shù)據(jù)庫(kù)表結(jié)構(gòu)如表1所示。 表1數(shù)據(jù)庫(kù)表結(jié)構(gòu)字段數(shù)據(jù)類型允許

  為空主鍵備注IDINTEGERNY圖像信息入庫(kù)編號(hào)WELLSTRINGNN井號(hào)STARTFLOATNN起始井段ENDFLOATNN終止井段LIGHTBOOLNN燈光信息,0代表白光,1代表熒光DATEDATETIMENN采集時(shí)間

  3Web服務(wù)器設(shè)計(jì)及實(shí)現(xiàn)

  本文系統(tǒng)中Web服務(wù)器是連接客戶端與采集儀的橋梁,一方面采集儀可以實(shí)時(shí)更新采集進(jìn)度并在客戶端顯示,另一方面客戶端可以下載圖像。Web服務(wù)器與客戶端通過Websocket協(xié)議進(jìn)行全雙工通信,服務(wù)器是基于Tornado框架設(shè)計(jì)的。

  3.1Websocket協(xié)議

  圖像信息管理系統(tǒng)以B/S模式運(yùn)行,這樣避免了因客戶端軟件的兼容性引起的問題,并且能夠在移動(dòng)端瀏覽器進(jìn)行采集進(jìn)度的查看和圖像的下載。

  傳統(tǒng)的B/S模式采用HTTP協(xié)議進(jìn)行通信,而本系統(tǒng)需要實(shí)時(shí)更新采集進(jìn)度,所以一種辦法是采用輪訓(xùn)技術(shù)。但這種傳統(tǒng)的技術(shù)具有很明顯的缺點(diǎn),瀏覽器每隔一段時(shí)間就向服務(wù)器發(fā)出請(qǐng)求,服務(wù)端就需要不斷地解析HTTP 請(qǐng)求,而嵌入式圖像采集平臺(tái)的資源相當(dāng)有限,這樣勢(shì)必會(huì)造成服務(wù)器資源極大的浪費(fèi)。另一種辦法是使用Websocket協(xié)議進(jìn)行通信??蛻舳酥恍枰蚍?wù)端發(fā)送一次連接請(qǐng)求就能建立TCP連接并保持長(zhǎng)連接,之后的通信可以直接發(fā)送數(shù)據(jù)從而省去了數(shù)據(jù)報(bào)報(bào)頭,并且雙方是全雙工通信[45]。

  Websocket是HTML5定義的一種新的協(xié)議并在2014年10月正式發(fā)布,目前無論在PC平臺(tái)還是移動(dòng)端平臺(tái),較新版本的瀏覽器已經(jīng)支持Websocket協(xié)議。

  3.2Tornado Web框架

  Tornado是由Facebook公司開發(fā)的開源Web服務(wù)器框架。該框架有三個(gè)特點(diǎn):(1)輕量級(jí),占用硬件資源少,有利于在ARM主板上進(jìn)行應(yīng)用開發(fā);(2)非阻塞式運(yùn)行,Tornado充分利用了epoll方式,為服務(wù)器提供了強(qiáng)大的網(wǎng)絡(luò)響應(yīng)性能,并且響應(yīng)速度快,適合開發(fā)實(shí)時(shí)應(yīng)用;(3)Tornado 2.2之后的版本都支持Websocket協(xié)議,避免了協(xié)議實(shí)現(xiàn)這一復(fù)雜的工作?;谝陨蠋c(diǎn),本文設(shè)計(jì)的圖像信息管理系統(tǒng)中的Web服務(wù)器選擇Tornado進(jìn)行開發(fā)[6]。

  3.3Web服務(wù)器設(shè)計(jì)

 

002.jpg

  本文設(shè)計(jì)的Web服務(wù)器的工作流程如圖2所示。

  首先客戶端與服務(wù)端進(jìn)行連接,客戶端發(fā)送連接請(qǐng)求,請(qǐng)求的Upgrade字段表示此次連接是以Websocket協(xié)議進(jìn)行連接的。

  如果服務(wù)器成功接收到客戶端的連接請(qǐng)求,在完成各字段的校驗(yàn)后會(huì)立即返回握手請(qǐng)求,由此客戶端與服務(wù)端建立了連接。

  客戶端與服務(wù)端建立連接后,若Web服務(wù)器接收到采集軟件發(fā)送的數(shù)據(jù)更新信號(hào),會(huì)立即讀取數(shù)據(jù)庫(kù)的相應(yīng)信息,并將數(shù)據(jù)傳給客戶端;若客戶端發(fā)送下載圖片的信號(hào)時(shí),Web服務(wù)器則在相應(yīng)的文件夾找到圖片并發(fā)送給客戶端。

4無線模塊的實(shí)現(xiàn)

  采集儀與PC之間的通信需要網(wǎng)絡(luò)連接,如果通過有線的方式進(jìn)行連接,那么PC與采集儀需要分別用一根網(wǎng)線連接一個(gè)交換機(jī),這種方式比較繁瑣。本文的方案是將ARM主板設(shè)置成WiFi熱點(diǎn),筆記本、手機(jī)等設(shè)備都能連接到采集儀,從而進(jìn)行采集信息的查看和圖像下載[7]。

003.jpg

  本文設(shè)計(jì)的系統(tǒng)采用EDUP USB無線網(wǎng)卡提供WiFi接入。為了提供網(wǎng)絡(luò)接入服務(wù),首先設(shè)置該WiFi熱點(diǎn)的IP地址、子網(wǎng)掩碼和網(wǎng)關(guān),并在/etc/network/interfaces文件中修改網(wǎng)絡(luò)配置。

  WiFi熱點(diǎn)的基本配置完成后需要讓無線接入功能運(yùn)作起來。Hostapd是一個(gè)用戶態(tài)用于AP和認(rèn)證服務(wù)的守護(hù)進(jìn)程,它實(shí)現(xiàn)了IEEE802.11相關(guān)的接入管理。Hostapd的默認(rèn)配置文件為/etc/default/hostapd,配置信息包含三個(gè)部分,分別是基本配置、加密配置和硬件配置[8]。最后配置硬件信息,包括網(wǎng)卡驅(qū)動(dòng)、無線網(wǎng)協(xié)議等。

  通過以上操作已經(jīng)建立起了WiFi熱點(diǎn),但是接入設(shè)備需要自行設(shè)置有效的IP地址才能連接熱點(diǎn),Linux系統(tǒng)可以通過udhcp運(yùn)行DHCP服務(wù),為接入設(shè)備自動(dòng)分配有效的IP地址[9]。udhcp的配置文件為/etc/udhcp.conf,主要配置有效的IP地址范圍。

  啟動(dòng)hostapd和udhcp進(jìn)程并加入到系統(tǒng)啟動(dòng)項(xiàng)中,至此,設(shè)備已經(jīng)可以通過無線局域網(wǎng)連接到采集儀。

5結(jié)論

  本文以Web服務(wù)器和數(shù)據(jù)庫(kù)為核心設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式圖像采集平臺(tái)的圖像信息管理系統(tǒng),并通過WiFi與客戶端進(jìn)行通信。系統(tǒng)采用B/S模式運(yùn)行,用戶可以在PC或者移動(dòng)客戶端的瀏覽器上查看圖像信息和下載圖像,并且采集儀與客戶端完全通過無線進(jìn)行通信。該系統(tǒng)提高了圖像信息管理的靈活性和便捷性,并簡(jiǎn)化了設(shè)備部署的復(fù)雜度。

參考文獻(xiàn)

 ?。?] 高盛豐. 巖石小樣本圖像采集系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)[D].成都:四川大學(xué),2012.

  [2] 曾杰. 一體化巖屑數(shù)字圖像采集系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[D]. 成都:四川大學(xué),2015.

 ?。?] 杜曉東,舒明蕾,孟利民,等. 基于QT的跨平臺(tái)虛擬鍵盤設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型機(jī)與應(yīng)用,2015,34(17):1820.

 ?。?] 薛隴彬,劉釗遠(yuǎn). 基于WebSocket的網(wǎng)絡(luò)實(shí)時(shí)通信[J]. 計(jì)算機(jī)與數(shù)字工程,2014(3):478481.

 ?。?] 張玲,張翠肖. WebSocket服務(wù)器推送技術(shù)的研究[J]. 河北省科學(xué)院學(xué)報(bào),2014,31(2):4953.

 ?。?] 賈殿燕. 基于Tornado的即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子技術(shù)與軟件工程,2015(5):6768.

 ?。?] 齊亞蘭,蘇凱雄,沈少陽(yáng). IEEE802.11n技術(shù)標(biāo)準(zhǔn)及其在無線局域網(wǎng)中的應(yīng)用[J]. 數(shù)字技術(shù)與應(yīng)用,2012(6):5456.

 ?。?] 張劍英,李宗為,張祥忠,等. 一種基于ARM11的無線AP進(jìn)程移植方法[J]. 電視技術(shù),2013,37(15):5759,86.

 ?。?] 王愛華,李永春. DHCP客戶端在ARM下的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型機(jī)與應(yīng)用,2012,31(22):5356.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。