王震+黃坤彬+蘇嘉浩+何文琪+謝鋒+劉旭帆
摘要:為了改善傳統(tǒng)實(shí)驗(yàn)室的控制方式,設(shè)計(jì)了基于微信公眾平臺(tái)的物聯(lián)網(wǎng)實(shí)驗(yàn)室管理系統(tǒng)。本系統(tǒng)基于ZigBee無(wú)線傳感網(wǎng)絡(luò)、ARM終端和微信公眾平臺(tái)設(shè)計(jì),能夠通過(guò)ZigBee無(wú)線傳感網(wǎng)絡(luò)采集環(huán)境數(shù)據(jù)并進(jìn)行分析,根據(jù)當(dāng)前環(huán)境的狀況自動(dòng)調(diào)節(jié)設(shè)備,實(shí)現(xiàn)遠(yuǎn)程控制以及管理功能;闡述了系統(tǒng)的硬件、軟件設(shè)計(jì)及性能測(cè)試。實(shí)驗(yàn)結(jié)果表明,本系統(tǒng)能夠?qū)崿F(xiàn)便捷的智能實(shí)驗(yàn)室管理,并且設(shè)備簡(jiǎn)單、成本較低、易于擴(kuò)展,具有較高的可行性和可靠性。
關(guān)鍵詞:微信公眾號(hào);ARM;智能實(shí)驗(yàn)室
中圖分類號(hào):G471 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2017)14-0013-02
微信公眾平臺(tái)是運(yùn)營(yíng)者通過(guò)公眾號(hào)為微信用戶提供資訊和服務(wù)的平臺(tái)。通過(guò)這個(gè)平臺(tái),個(gè)人、組織、企業(yè)甚至政府可以實(shí)現(xiàn)和微信用戶的全方位溝通,達(dá)到方便快捷的效果。ZigBee是一種近距離無(wú)線通信技術(shù),因?yàn)楣牡?,支持的Zigbee節(jié)點(diǎn)多,比其他網(wǎng)絡(luò)通信技術(shù)安全,常用于物聯(lián)網(wǎng)系統(tǒng)作為傳輸?shù)哪K,傳輸傳感器數(shù)據(jù)或一些簡(jiǎn)單的控制指令。實(shí)驗(yàn)室網(wǎng)關(guān)使用的是嵌入式arm開(kāi)發(fā)板,相當(dāng)于一臺(tái)PC電腦,但是裁剪了很多沒(méi)用的功能,把資源占用壓縮到最小,不像個(gè)人電腦那么笨重,而且不穩(wěn)定。而嵌入式Linux系統(tǒng)可以長(zhǎng)時(shí)間開(kāi)機(jī)不會(huì)崩潰,就是出現(xiàn)死機(jī)情況也有機(jī)制重啟,保證程序可以長(zhǎng)時(shí)間運(yùn)行。通過(guò)以上技術(shù)設(shè)計(jì)出可以監(jiān)控實(shí)驗(yàn)室環(huán)境數(shù)據(jù),并控制實(shí)驗(yàn)室電器的功能。還有微信掃碼自主借書(shū)、還書(shū)的實(shí)驗(yàn)室管理系統(tǒng)。
一、系統(tǒng)硬件設(shè)計(jì)
(一)系統(tǒng)總體設(shè)計(jì)
系統(tǒng)利用溫濕度、煙霧、光敏傳感器檢測(cè)環(huán)境數(shù)據(jù)并通過(guò)Zigbee網(wǎng)絡(luò)發(fā)送給主控來(lái)顯示,主控還可以發(fā)送指令由Zigbee傳輸并控制對(duì)應(yīng)的門鎖、燈光、窗簾。
(二)硬件模塊
1.傳感器。傳感器是采用北京賽佰特科技有限公司推出的全功能物聯(lián)網(wǎng)教學(xué)科研平臺(tái)(標(biāo)準(zhǔn)版)和Zigbee模塊配套的傳感器模塊。分別有集成了Zigbee的數(shù)字溫濕度傳感器,集成了Zigbee的煙霧傳感器,集成了Zigbee的光敏傳感器。
2.Zigbee模塊。本系統(tǒng)采用的無(wú)線模塊是CC2530型號(hào)的Zigbee模塊,該模塊集成了增強(qiáng)型的8051cpu和RF收發(fā)器。易于開(kāi)發(fā),最突出的莫過(guò)于它的安全性和低功耗性能,安全性比常見(jiàn)的Wifi強(qiáng),而且兩節(jié)5號(hào)干電池就可以用上半年甚至一年。
3.ARM智能終端控制器。本系統(tǒng)采用的主控是基于CortexM-A8的S5PV210嵌入式微處理器,微處理器主頻穩(wěn)定運(yùn)行在1GHz??蛇\(yùn)行Linux 2.4.x和Linux 2.6.x內(nèi)核,支持嵌入式QT、miniGUI等嵌入式圖形界面,擁有豐富的接口資源和良好的可擴(kuò)展性,滿足研究和開(kāi)發(fā)嵌入式系統(tǒng)的各個(gè)要求。
二、軟件功能設(shè)計(jì)
(一)網(wǎng)關(guān)圖形界面程序設(shè)計(jì)
1.開(kāi)發(fā)環(huán)境。本項(xiàng)目的開(kāi)發(fā)系統(tǒng)為Ubuntu14.10操作系統(tǒng),Qt5.3.2 creator軟件、編譯器gcc 4.5.1(ctng-1.8.1-FA)、QtEmbedded-4.8.5-arm版本;開(kāi)發(fā)板操作系統(tǒng):linux-2.6.35、環(huán)境:Qt4.7/Qtopia2/Qtopia4。
2.交互界面設(shè)計(jì)。主要界面有5個(gè)子界面,分別是(1)主界面:顯示各個(gè)分界面的功能以及實(shí)現(xiàn)與各個(gè)分界面的窗口切換;默認(rèn)該界面可以直接刷卡,借出實(shí)驗(yàn)室物品。(2)環(huán)境監(jiān)控界面:通過(guò)串口將Zigbee發(fā)送過(guò)來(lái)的環(huán)境數(shù)據(jù)進(jìn)行處理,然后將處理后的數(shù)據(jù)顯示到環(huán)境監(jiān)控的界面上方便用戶的查看。(3)溫濕度折線圖界面:將室內(nèi)的溫濕度的數(shù)據(jù)變化用折線圖顯示在界面上,有利于用戶觀察一天中室內(nèi)溫濕度的變化情況。(4)設(shè)備控制界面:通過(guò)串口將各個(gè)設(shè)備特定的字符串?dāng)?shù)據(jù)發(fā)送給Zigbee,Zigbee再將這些數(shù)據(jù)進(jìn)行處理,最后得出是哪個(gè)設(shè)備需要執(zhí)行哪種功能,然后對(duì)設(shè)備進(jìn)行控制。(5)借還書(shū)籍界面:實(shí)現(xiàn)和Web服務(wù)器的通信,然后將添加、刪除、借設(shè)備、還設(shè)備的sql語(yǔ)句通過(guò)post請(qǐng)求發(fā)送到Web服務(wù)器,最后由服務(wù)器那邊進(jìn)行數(shù)據(jù)庫(kù)的處理。同時(shí)借還書(shū)籍界面中還有預(yù)定書(shū)籍的驗(yàn)證功能,可以通過(guò)手機(jī)預(yù)定書(shū)籍,然后到預(yù)定驗(yàn)證界面輸入驗(yàn)證碼進(jìn)行借書(shū)籍。
3.服務(wù)器通信功能。智能網(wǎng)關(guān)和Web服務(wù)器之間的通信采用的是http協(xié)議,通過(guò)發(fā)送get和post請(qǐng)求實(shí)現(xiàn):先用Qt的QNetworkAccessManager類實(shí)現(xiàn)與WebService建立連接;然后用QNetworkReply類實(shí)現(xiàn)與WebService的通信,當(dāng)然這種通信只是異步流的通信,你會(huì)收到WebService的整個(gè)xml網(wǎng)頁(yè)的內(nèi)容;接著就是根據(jù)自己的規(guī)則進(jìn)行解析網(wǎng)頁(yè)上的信息,根據(jù)這些規(guī)則進(jìn)行與WebService通信;最后把自己寫好的請(qǐng)求(post請(qǐng)求或get請(qǐng)求)進(jìn)行串行化,發(fā)給WebService。
4.串口通訊功能。先上網(wǎng)下載串口的第三方類,因?yàn)橄螺d的文件中有很多,主要有Windows與linux的版本的串口類,我們下載linux版本的文件。經(jīng)過(guò)上面一系列的編寫,Qt方面已經(jīng)有了接收和發(fā)送數(shù)據(jù)的功能,只要Zigbee串口也寫好接收和發(fā)送功能,那么Qt和Zigbee就可以利用串口用一些指定的命令數(shù)據(jù)進(jìn)行通信了。
三、微信公眾號(hào)搭建與設(shè)計(jì)
(一)開(kāi)發(fā)人員測(cè)試號(hào)申請(qǐng)
1.打開(kāi)任意瀏覽器。輸入http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
2.下載微信客戶端后登錄自己的微信帳號(hào),使用其中的掃一掃功能,掃描第一步打開(kāi)的網(wǎng)頁(yè)中的二維碼。
3.在手機(jī)上會(huì)出現(xiàn)驗(yàn)證界面。點(diǎn)擊“確認(rèn)登錄”按鈕,回到電腦的網(wǎng)頁(yè),網(wǎng)頁(yè)將自動(dòng)跳轉(zhuǎn),填寫微信帳號(hào)連接的URL網(wǎng)址,這里我采用的是花生殼固定域名綁定動(dòng)態(tài)IP。
(二)服務(wù)器搭建
操作系統(tǒng):win7/8.1;軟件:花生殼、WampServer。簡(jiǎn)介:①花生殼是一個(gè)動(dòng)態(tài)域名轉(zhuǎn)固定IP的動(dòng)態(tài)域名解析軟件,無(wú)論您在任何網(wǎng)絡(luò)環(huán)境下、連接獲得的IP屬于動(dòng)態(tài)還是靜態(tài),花生殼都可以生成一個(gè)固定的域名,自己電腦作為服務(wù)器,方便調(diào)試,除了每個(gè)月限制1G流量外,基本上可以取代各種云服務(wù)器。我們使用的版本:2.4.0.2341 Beta。②WampServer在Windows下將PHP+Mysql+Apache集成環(huán)境,無(wú)需我們自己再一個(gè)一個(gè)安裝和配置,Wamp一鍵幫你搞定。我們使用的版本:WampServer 2.2。
(三)公眾測(cè)試號(hào)功能設(shè)計(jì)
微信公眾平臺(tái)是一對(duì)多的媒體性行為活動(dòng)開(kāi)放應(yīng)用平臺(tái),提供群發(fā)推送、自動(dòng)回復(fù)、二維碼訂閱等功能,并為開(kāi)發(fā)者提供測(cè)試號(hào)進(jìn)行微信公眾號(hào)開(kāi)發(fā)。該測(cè)試號(hào)公開(kāi)了一般訂閱號(hào)沒(méi)有的接口,開(kāi)發(fā)者開(kāi)發(fā)與自己想要的功能,而無(wú)須申請(qǐng)高級(jí)的企業(yè)號(hào)。
本課題采用微信公眾測(cè)試號(hào)進(jìn)行測(cè)試,其優(yōu)勢(shì)在于每個(gè)微信號(hào)有一個(gè)唯一的ID碼,方便開(kāi)發(fā)者記錄用戶的信息及對(duì)用戶提供服務(wù)。
智能化的實(shí)驗(yàn)室管理是一項(xiàng)比較復(fù)雜的技術(shù),發(fā)展和完善需要不少的時(shí)間。本項(xiàng)目完成了基于微信公眾平臺(tái)的智能實(shí)驗(yàn)室管理系統(tǒng),通過(guò)手機(jī)即可對(duì)實(shí)驗(yàn)室的設(shè)備進(jìn)行管理和控制,為實(shí)驗(yàn)室管理提供了方便快捷的方法。希望本項(xiàng)目能為智能實(shí)驗(yàn)室、智能家居等方面的研究起到一定的參考作用。
參考文獻(xiàn):
[1]王汝傳,孫力娟.無(wú)線傳感器網(wǎng)絡(luò)技術(shù)及其應(yīng)用[M].北京:人民郵電出版社,2011.
[2]王萍.公共微信開(kāi)發(fā)消息接口的實(shí)現(xiàn)技術(shù)[J].電腦知識(shí)與技術(shù),2015,(11):92-93.