張力云,余艷梅,吳小強(qiáng),何小海
(四川大學(xué) 電子信息學(xué)院 圖像信息研究所,四川 成都 610064)
嵌入式圖像采集平臺(tái)的信息管理系統(tǒng)設(shè)計(jì)*
張力云,余艷梅,吳小強(qiáng),何小海
(四川大學(xué) 電子信息學(xué)院 圖像信息研究所,四川 成都 610064)
設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式平臺(tái)的巖屑圖像采集信息管理系統(tǒng)。系統(tǒng)由SQLite數(shù)據(jù)庫(kù)、Web服務(wù)器、無(wú)線WiFi模塊三部分組成。巖屑圖像采集完成后將井號(hào)、井段、采集時(shí)間等信息寫(xiě)入到數(shù)據(jù)庫(kù)中,采集進(jìn)程利用Socket通知Web服務(wù)器更新采集信息。PC或者移動(dòng)設(shè)備通過(guò)WiFi與Web服務(wù)器建立連接,Web服務(wù)器利用Websocket協(xié)議將采集的信息發(fā)送到客戶(hù)端的瀏覽器,同時(shí)也可以在客戶(hù)端下載圖像。
嵌入式平臺(tái);Websocket協(xié)議;SQLite數(shù)據(jù)庫(kù);Web服務(wù)器
傳統(tǒng)的巖屑圖像采集平臺(tái)是通過(guò)PC與采集設(shè)備共同協(xié)作實(shí)現(xiàn)的,PC與采集設(shè)備之間通過(guò)串口和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]。
然而巖屑圖像采集過(guò)程中用戶(hù)需要統(tǒng)計(jì)所有已經(jīng)采集的圖像才能知曉當(dāng)前的采集進(jìn)度,圖像信息不易管理。另一方面,采集儀上的圖像需要傳輸?shù)絇C進(jìn)行后續(xù)處理,但是目前采集儀與PC需要通過(guò)交換機(jī)和網(wǎng)線連接之后才能進(jìn)行圖像傳輸,在實(shí)際應(yīng)用中帶來(lái)諸多不便。
針對(duì)采集系統(tǒng)中存在的缺陷,本文設(shè)計(jì)并實(shí)現(xiàn)了輕量級(jí)的圖像信息管理系統(tǒng)進(jìn)而實(shí)現(xiàn)對(duì)圖像信息的管理,同時(shí)設(shè)計(jì)了無(wú)線模塊以便于客戶(hù)端與采集儀進(jìn)行無(wú)線通信。
本文設(shè)計(jì)的圖像信息管理系統(tǒng)由SQlite數(shù)據(jù)庫(kù)和Web服務(wù)器組成。SQlite數(shù)據(jù)庫(kù)用于保存圖像信息,Web服務(wù)器用于與客戶(hù)端進(jìn)行交互,提供圖像信息瀏覽和圖像下載的功能。Web服務(wù)器是基于Tornado框架設(shè)計(jì)的,該框架占用資源少,與SQLite同為輕量級(jí)的應(yīng)用,非常適合嵌入式系統(tǒng)的開(kāi)發(fā)。Web服務(wù)器與客戶(hù)端通過(guò)Websocket協(xié)議進(jìn)行通信,該協(xié)議是基于TCP的應(yīng)用層協(xié)議,讓客戶(hù)端和服務(wù)器端保持長(zhǎng)連接,為圖像采集信息的實(shí)時(shí)更新提供了便捷,并且比HTTP短連接協(xié)議通信效率更高,資源占用更少。無(wú)線模塊提供WiFi熱點(diǎn)功能,任何有WiFi功能的設(shè)備可以與Web服務(wù)器建立連接,通過(guò)瀏覽器實(shí)現(xiàn)圖像信息瀏覽和下載的功能。本文設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
由于平臺(tái)資源限制,本文設(shè)計(jì)的系統(tǒng)采用了專(zhuān)門(mén)針對(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。圖像采集完成后采集軟件將以上信息寫(xiě)入數(shù)據(jù)庫(kù),并通過(guò)Socket發(fā)送采集完成信息給Web服務(wù)器進(jìn)行狀態(tài)更新。本文設(shè)計(jì)的數(shù)據(jù)庫(kù)表結(jié)構(gòu)如表1所示。
表1 數(shù)據(jù)庫(kù)表結(jié)構(gòu)
本文系統(tǒng)中Web服務(wù)器是連接客戶(hù)端與采集儀的橋梁,一方面采集儀可以實(shí)時(shí)更新采集進(jìn)度并在客戶(hù)端顯示,另一方面客戶(hù)端可以下載圖像。Web服務(wù)器與客戶(hù)端通過(guò)Websocket協(xié)議進(jìn)行全雙工通信,服務(wù)器是基于Tornado框架設(shè)計(jì)的。
3.1 Websocket協(xié)議
圖像信息管理系統(tǒng)以B/S模式運(yùn)行,這樣避免了因客戶(hù)端軟件的兼容性引起的問(wè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)行通信。客戶(hù)端只需要向服務(wù)端發(fā)送一次連接請(qǐng)求就能建立TCP連接并保持長(zhǎng)連接,之后的通信可以直接發(fā)送數(shù)據(jù)從而省去了數(shù)據(jù)報(bào)報(bào)頭,并且雙方是全雙工通信[4-5]。
Websocket是HTML5定義的一種新的協(xié)議并在2014年10月正式發(fā)布,目前無(wú)論在PC平臺(tái)還是移動(dòng)端平臺(tái),較新版本的瀏覽器已經(jīng)支持Websocket協(xié)議。
3.2 Tornado Web框架
Tornado是由Facebook公司開(kāi)發(fā)的開(kāi)源Web服務(wù)器框架。該框架有三個(gè)特點(diǎn):(1)輕量級(jí),占用硬件資源少,有利于在ARM主板上進(jìn)行應(yīng)用開(kāi)發(fā);(2)非阻塞式運(yùn)行,Tornado充分利用了epoll方式,為服務(wù)器提供了強(qiáng)大的網(wǎng)絡(luò)響應(yīng)性能,并且響應(yīng)速度快,適合開(kāi)發(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)行開(kāi)發(fā)[6]。
3.3 Web服務(wù)器設(shè)計(jì)
圖2 Web服務(wù)器工作流程
本文設(shè)計(jì)的Web服務(wù)器的工作流程如圖2所示。
首先客戶(hù)端與服務(wù)端進(jìn)行連接,客戶(hù)端發(fā)送連接請(qǐng)求,請(qǐng)求的Upgrade字段表示此次連接是以Websocket協(xié)議進(jìn)行連接的。
如果服務(wù)器成功接收到客戶(hù)端的連接請(qǐng)求,在完成各字段的校驗(yàn)后會(huì)立即返回握手請(qǐng)求,由此客戶(hù)端與服務(wù)端建立了連接。
客戶(hù)端與服務(wù)端建立連接后,若Web服務(wù)器接收到采集軟件發(fā)送的數(shù)據(jù)更新信號(hào),會(huì)立即讀取數(shù)據(jù)庫(kù)的相應(yīng)信息,并將數(shù)據(jù)傳給客戶(hù)端;若客戶(hù)端發(fā)送下載圖片的信號(hào)時(shí),Web服務(wù)器則在相應(yīng)的文件夾找到圖片并發(fā)送給客戶(hù)端。
采集儀與PC之間的通信需要網(wǎng)絡(luò)連接,如果通過(guò)有線的方式進(jìn)行連接,那么PC與采集儀需要分別用一根網(wǎng)線連接一個(gè)交換機(jī),這種方式比較繁瑣。本文的方案是將ARM主板設(shè)置成WiFi熱點(diǎn),筆記本、手機(jī)等設(shè)備都能連接到采集儀,從而進(jìn)行采集信息的查看和圖像下載[7]。
本文設(shè)計(jì)的系統(tǒng)采用EDUP USB無(wú)線網(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)的基本配置完成后需要讓無(wú)線接入功能運(yùn)作起來(lái)。Hostapd是一個(gè)用戶(hù)態(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ú)線網(wǎng)協(xié)議等。
通過(guò)以上操作已經(jīng)建立起了WiFi熱點(diǎn),但是接入設(shè)備需要自行設(shè)置有效的IP地址才能連接熱點(diǎn),Linux系統(tǒng)可以通過(guò)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)可以通過(guò)無(wú)線局域網(wǎng)連接到采集儀。
本文以Web服務(wù)器和數(shù)據(jù)庫(kù)為核心設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式圖像采集平臺(tái)的圖像信息管理系統(tǒng),并通過(guò)WiFi與客戶(hù)端進(jìn)行通信。系統(tǒng)采用B/S模式運(yùn)行,用戶(hù)可以在PC或者移動(dòng)客戶(hù)端的瀏覽器上查看圖像信息和下載圖像,并且采集儀與客戶(hù)端完全通過(guò)無(wú)線進(jìn)行通信。該系統(tǒng)提高了圖像信息管理的靈活性和便捷性,并簡(jiǎn)化了設(shè)備部署的復(fù)雜度。
[1] 高盛豐. 巖石小樣本圖像采集系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)[D].成都:四川大學(xué),2012.
[2] 曾杰. 一體化巖屑數(shù)字圖像采集系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[D]. 成都:四川大學(xué),2015.
[3] 杜曉東,舒明蕾,孟利民,等. 基于QT的跨平臺(tái)虛擬鍵盤(pán)設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型機(jī)與應(yīng)用,2015,34(17):18-20.
[4] 薛隴彬,劉釗遠(yuǎn). 基于WebSocket的網(wǎng)絡(luò)實(shí)時(shí)通信[J]. 計(jì)算機(jī)與數(shù)字工程,2014(3):478-481.
[5] 張玲,張翠肖. WebSocket服務(wù)器推送技術(shù)的研究[J]. 河北省科學(xué)院學(xué)報(bào),2014,31(2):49-53.
[6] 賈殿燕. 基于Tornado的即時(shí)通訊系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子技術(shù)與軟件工程,2015(5):67-68.
[7] 齊亞蘭,蘇凱雄,沈少陽(yáng). IEEE802.11n技術(shù)標(biāo)準(zhǔn)及其在無(wú)線局域網(wǎng)中的應(yīng)用[J]. 數(shù)字技術(shù)與應(yīng)用,2012(6):54-56.
[8] 張劍英,李宗為,張祥忠,等. 一種基于ARM11的無(wú)線AP進(jìn)程移植方法[J]. 電視技術(shù),2013,37(15):57-59,86.
[9] 王愛(ài)華,李永春. DHCP客戶(hù)端在ARM下的設(shè)計(jì)與實(shí)現(xiàn)[J]. 微型機(jī)與應(yīng)用,2012,31(22):53-56.
Design of information management system for embedded image acquisition platform
Zhang Liyun,Yu Yanmei,Wu Xiaoqiang,He Xiaohai
(Institute of Image Information, College of Electronics and Information Engineering, Sichuan University, Chengdu 610064,China)
This paper proposed a design of information management system for embedded rock debris image acquisition platform. The system consists of SQLite database, Web server and WiFi module. After rock debris image acquisition, well name, depth range, and acquisition date information are saved into database, and acquisition process notifies Web server to update acquisition information via Socket. PC or laptop can connect to Web server though WiFi, and Web server sends image acquisition information to client browser based on Websocket protocol. Meanwhile, user can download image on client device.
embedded platform; Websocket protocol; SQLite database; Web server
國(guó)家自然科學(xué)基金項(xiàng)目(61471248);四川省教育廳2014年研究生教育改革創(chuàng)新項(xiàng)目(2014-教-034)
TP303
A
1674-7720(2016)04-0007-02
張力云,余艷梅,吳小強(qiáng),等.嵌入式圖像采集平臺(tái)的信息管理系統(tǒng)設(shè)計(jì)[J] .微型機(jī)與應(yīng)用,2016,35(4):7-8,11.
2015-10-19)
張力云(1991-),男,碩士研究生,主要研究方向:圖像處理與嵌入式開(kāi)發(fā)。
余艷梅(1975-),通信作者,女,博士研究生,副教授,主要研究方向:圖像處理。E-mail:yuyanmei@scu.edu.cn。
吳小強(qiáng)(1969-),男,高級(jí)工程師,主要研究方向:圖像處理,數(shù)據(jù)庫(kù)系統(tǒng),嵌入式系統(tǒng)。