国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MQTT協(xié)議與開源硬件的智能監(jiān)控系統(tǒng)*

2017-11-09 01:11,,,,
關(guān)鍵詞:控制指令功能模塊攝像頭

,,,,

(深圳信息職業(yè)技術(shù)學(xué)院 計算機學(xué)院,深圳 518172)

基于MQTT協(xié)議與開源硬件的智能監(jiān)控系統(tǒng)*

陳建剛,黃國偉,劉星明,丘曉彬,李子賢

(深圳信息職業(yè)技術(shù)學(xué)院 計算機學(xué)院,深圳 518172)

實現(xiàn)一種采用MQTT協(xié)議、通過安卓/iOS APP對基于開源硬件-WRTnode的移動智能監(jiān)控設(shè)備(如智能設(shè)備,機器人等)進行遠程控制的方案。采用開源MQTT服務(wù)器框架-mosquitto作為MQTT broker,通過APP發(fā)布控制指令主題,監(jiān)控設(shè)備訂閱該主題并根據(jù)控制指令執(zhí)行操作,監(jiān)控設(shè)備發(fā)布需要上報的監(jiān)控數(shù)據(jù)主題,APP訂閱該主題后將接收到監(jiān)控數(shù)據(jù)。通過雙向的發(fā)布-訂閱模式,實現(xiàn)多功能智能監(jiān)控過程。

WRTnode;MQTT; 發(fā)布-訂閱;監(jiān)控設(shè)備

引 言

當(dāng)前市面上的智能監(jiān)控大都是固定式放置,監(jiān)測方式為攝像頭的視頻監(jiān)控和移動偵測,監(jiān)控手段較單一,不能滿足移動安防應(yīng)用需求,尤其是在廠礦、商場等大型空曠場所。本文通過在移動設(shè)備上設(shè)計多功能監(jiān)控方式,包括移動偵測、檢測到覆蓋區(qū)域有WiFi探針信號、人體紅外感應(yīng)等,從而比已有設(shè)備監(jiān)控手段更豐富、更實用。另外,還可將MQTT運用于多功能監(jiān)控設(shè)備,實現(xiàn)智能手機APP與移動監(jiān)控設(shè)備的遠程雙向通信過程。

1 多功能智能監(jiān)控設(shè)備設(shè)計

通過在購買的WiFi設(shè)備的基礎(chǔ)上實現(xiàn)多功能智能監(jiān)控設(shè)備[7],設(shè)備結(jié)構(gòu)如圖1所示,硬件部分由WRTnode[8]主控板、視頻監(jiān)控攝像頭及云臺、Arduino單片機及擴展板、無線充電模塊、設(shè)備控制模塊、傳感器數(shù)據(jù)采集模塊所組成。實現(xiàn)的監(jiān)控功能包括:

圖1 多功能智能監(jiān)控設(shè)備結(jié)構(gòu)

① 視頻監(jiān)控/移動偵測。通過WRTnode的mjpg-streamer軟件包實現(xiàn)視頻監(jiān)控功能,將攝像頭產(chǎn)生的幀通過其output_file模塊發(fā)布出去。通過motion軟件包實現(xiàn)移動偵測功能,當(dāng)監(jiān)控設(shè)備處于靜止狀態(tài),攝像頭檢測到移動物體時生成圖片。

② WiFi探針。在WRTnode中移植開源無線驅(qū)動,通過iwcap軟件包提取移動終端主動發(fā)出的WiFi探針信號中的mac地址和信號強度(RSSI)。這樣,若有人攜帶手機并開啟了WiFi功能,就能被監(jiān)控設(shè)備探測到,生成WiFi探針報警消息。

③ 紅外熱釋電感應(yīng)。通過Arduino外接人體紅外熱釋電傳感器,人體靠近時觸發(fā)感應(yīng),生成紅外熱釋電報警消息。

通過上述多種不同類型的監(jiān)控方式,增加監(jiān)控的準確度。另外設(shè)備還可以搭建溫濕度傳感器,用來檢測環(huán)境的溫濕度數(shù)據(jù)。設(shè)計的監(jiān)控設(shè)備實物圖如圖2所示。

圖2 多功能智能監(jiān)控設(shè)備實物圖

2 MQTT交互設(shè)計

上述監(jiān)控方式產(chǎn)生的監(jiān)測數(shù)據(jù)通過MQTT協(xié)議推送消息給監(jiān)控設(shè)備的用戶手機。MQTT協(xié)議定義完善的通信方式,包括QoS、安全認證等,用戶只需專注于應(yīng)用實現(xiàn)。由于采用發(fā)布-訂閱模式,數(shù)據(jù)分發(fā)方式多樣化,可以是一對一或一對多等, 相比請求-響應(yīng)模式,更能滿足物聯(lián)網(wǎng)應(yīng)用需求,如監(jiān)控數(shù)據(jù)可以上報給多個訂閱的用戶。主題(topic)是MQTT用來標識已發(fā)布消息的信息渠道,采用分層結(jié)構(gòu),用斜線“/”作為分隔符。定義了兩種通配符:“#”和“+”, “#”通配多層結(jié)構(gòu),而“+”只能通配一層結(jié)構(gòu)。

采用MQTT的多功能監(jiān)控系統(tǒng)交互過程如圖3所示,實現(xiàn)了與監(jiān)控設(shè)備配套的手機APP,主要功能包括控制設(shè)備移動和接收監(jiān)控數(shù)據(jù)等,在阿里云上采用開源Mosquitto搭建MQTT broker,作為手機APP與監(jiān)控設(shè)備之間發(fā)布-訂閱控制指令及上傳監(jiān)控數(shù)據(jù)的中間件。手機APP和監(jiān)控設(shè)備作為MQTT客戶端,都先與MQTT broker建立連接, 手機APP將控制指令發(fā)布到指定主題,監(jiān)控設(shè)備訂閱相應(yīng)主題以獲得控制指令,并根據(jù)指令執(zhí)行操作。而監(jiān)控設(shè)備產(chǎn)生的監(jiān)控數(shù)據(jù)同樣發(fā)布到指定主題,手機APP則訂閱該主題獲得監(jiān)控數(shù)據(jù)。

圖3 多功能監(jiān)控系統(tǒng)交互過程

Mosquitto通過訂閱樹機制管理所有主題及客戶端對主題的訂閱關(guān)系[9],訂閱樹采用二叉樹結(jié)構(gòu),使用孩子兄弟鏈表法進行二叉樹節(jié)點存儲,Mosquitto根據(jù)MQTT協(xié)議所定義的主題格式,將主題根據(jù)“/”分割并組織成一棵二叉樹,從根節(jié)點沿著連線到樹中的任意一節(jié)點即組成該節(jié)點所對應(yīng)的主題,每個節(jié)點都保存一個訂閱列表,該訂閱列表中保存了所有訂閱當(dāng)前主題的客戶端信息。

監(jiān)控設(shè)備啟動后即訂閱由APP發(fā)布的控制指令主題,控制指令內(nèi)容需要包含控制的功能模塊及執(zhí)行動作,如對于控制設(shè)備行徑,控制功能模塊名稱為設(shè)備,執(zhí)行動作為前/后/左/右/停。另外考慮到設(shè)備和APP的綁定關(guān)系,控制指令中需要帶有設(shè)備標識,用于區(qū)分控制不同的設(shè)備,由于設(shè)備的主控板WRTnode為智能無線路由設(shè)備,需要通過WiFi中繼到上級路由(上級路由可為無線AP,如家居的無線網(wǎng)關(guān),在野外使用時可配帶4G路由作為上級路由),WRTnode的BSSID各不同,采用各設(shè)備的BSSID作為設(shè)備標識。因而APP控制指令的內(nèi)容為:設(shè)備標識->功能模塊->動作。所定義的具體控制指令內(nèi)容如圖4所示。對應(yīng)的功能模塊含義如表1所列。

圖4 定義的具體控制指令內(nèi)容

由于用戶發(fā)布的控制指令針對的訂閱者(監(jiān)控設(shè)備)是唯一的,為降低MQTT broker維護訂閱樹的開銷,從APP到監(jiān)控設(shè)備的發(fā)布-訂閱過程采用以BSSID倒序值為主題,將功能模塊及執(zhí)行動作為對應(yīng)主題的消息體(payload),消息體以json格式組織,方便后續(xù)功能擴展。

如開啟移動偵測功能,消息體內(nèi)容為:

{"model":"Motion","action":"on"}

圖6 APP操作界面演示

操作APP界面中對應(yīng)按鈕將通過MQTT協(xié)議組織上述消息內(nèi)容發(fā)布出相應(yīng)控制指令。

采用Mosquitto的openwrt版本在主控板WRTnode實現(xiàn)MQTT客戶端功能,訂閱APP發(fā)布的主題,解析payload內(nèi)容,根據(jù)消息體中的功能模塊和動作執(zhí)行操作,如開啟移動偵測功能等。WRTnode執(zhí)行訂閱控制指令主題的命令為:

mosquitto_sub-t BSSID倒序值-h MQTT broker 的IP地址

對于有數(shù)據(jù)上報的功能模塊,包括溫濕度上報、WiFi探針探測到的mac地址和RSSI,移動偵測產(chǎn)生的圖片、視頻監(jiān)控的畫面等。設(shè)備需要將生成的監(jiān)控等數(shù)據(jù)進行發(fā)布,仍然采用發(fā)布-訂閱模式,設(shè)備發(fā)布的主題為BSSID/功能模塊,消息體內(nèi)容為需要上報的數(shù)據(jù)。WRTnode執(zhí)行發(fā)布數(shù)據(jù)主題的命令為:

mosquitto_pub-t BSSID/功能模塊-h MQTT broker的IP地址-m 上報的數(shù)據(jù)內(nèi)容

MQTT broker 的Mosquitto根據(jù)設(shè)備發(fā)布的主題消息,根據(jù)“/”分割成主題片段,沿著訂閱樹的二叉樹結(jié)構(gòu)檢測各主題片段是否存在,若不存在則創(chuàng)建節(jié)點存放該主題片段。

圖5 有數(shù)據(jù)上報時 生成的訂閱樹

APP在發(fā)布有數(shù)據(jù)上報的功能模塊的控制指令時,同時訂閱該控制指令所對應(yīng)的主題——BSSID/功能模塊,如開啟移動偵測功能則訂閱主題為:BSSID/Motion。MQTT broker 的Mosquitto在收到訂閱請求后,根據(jù)主題將該客戶端掛到訂閱樹上對應(yīng)節(jié)點的訂閱列表中,若不存在客戶端所訂閱的主題,則會自動添加相應(yīng)節(jié)點,最終創(chuàng)建的訂閱樹如圖5所示。

3 功能實現(xiàn)

實現(xiàn)的APP控制界面功能如圖6所示,用戶點擊界面中各控制按鈕發(fā)布主題為BSSID倒序值,參數(shù)為功能模塊+動作的控制指令,設(shè)備收到指令后執(zhí)行對應(yīng)操作。對于需要上報數(shù)據(jù)的指令,設(shè)備發(fā)布BSSID/功能模塊,參數(shù)為上報數(shù)據(jù)的消息,通過MQTT broker中轉(zhuǎn)后推送在手機的消息欄,用戶可以查看監(jiān)控數(shù)據(jù)。另外,點擊“遠程監(jiān)控”將打開設(shè)備的攝像頭并訂閱攝像頭圖片主題,接收到圖片后就顯示在圖片框中。點擊“方向控制”將跳轉(zhuǎn)到控制界面,用戶可通過“設(shè)備行徑”和“攝像頭方向”控件,分別控制設(shè)備的方向行走(前/后/左/右/停)和攝像頭的旋轉(zhuǎn)(上/下/左/右/居中)。

結(jié) 語

[1] 許金喜, 張新有.Android平臺基于MQTT協(xié)議的推送機制[J].計算機系統(tǒng)應(yīng)用,2015, 24(1):185-190.

[2] 秦利紅,秦會斌,諸堅彬,等.基于Android平臺智能家居客戶端的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2016,33(9):88-91.

[3] 胡曉喻, 陳慶奎.智能家居接入服務(wù)器策略的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2017, 38(2):544-549.

[4] 王君君, 董靜,伊銅川,等.移動終端的設(shè)施農(nóng)業(yè)物聯(lián)網(wǎng)環(huán)境監(jiān)控系統(tǒng)設(shè)計[J].傳感器與微系統(tǒng),2016,35(8):87-89.

[5] 孟濬, 張賢華,顏文俊.基于智能手機傳感網(wǎng)的室內(nèi)老年監(jiān)護系統(tǒng)平臺 [J].計算機應(yīng)用研究,2017,34(4):1084-1088.

[6] 孫燕芹,馬興錄,郭孔躍.基于MQTT協(xié)議的在線離子色譜儀遠程監(jiān)控系統(tǒng)設(shè)計[J].計算機測量與控制,2017,25(4):251-253.

[7] 陳建剛,紀嘉銘,葉森,等. 采用WRTnode開源硬件實現(xiàn)多功能智能小車[J]. 單片機與嵌入式系統(tǒng)應(yīng)用, 2016, 16(3): 34-36.

[8] 曾昂, 李寧,嚴俊.Mosquitto大文件傳輸方式的研究與改進[J].計算機工程與應(yīng)用,2017, 53(4):123-127.

IntelligentMonitoringSystemBasedonMQTTProtocolandOpen-sourceHardware

ChenJiangang,HuangGuowei,LiuXingming,QiuXiaobin,LiZixian

(Dep of Computer Applications,Shenzhen Institute of Information Technology,Shenzhen 518172,China)

The remote control scheme between Android/iOS APP and mobile intelligent monitoring device(such as the smart device,robot) is achieved with MQTT protocol.The open-source MQTT server framework(mosquito) is used as MQTT broker.APP publishes the topic of control instruction.The monitoring device subscribes to the topic and performs the operations according to the control instructions.The monitoring device publishes the topic of the monitoring data that need to report,APP subscribes to the subject and receives monitoring data.Through the two-way publish-subscribe mode,the multi-functional intelligent monitoring process is realized.

WRTnode;MQTT;publish-subscribe;monitoring device

深圳市2016年市創(chuàng)客專項資金個人創(chuàng)客項目(GRCK2016033010181365);深圳市2015年市創(chuàng)客專項資金學(xué)生創(chuàng)客項目(GRCK2015092914140517);深圳市2016年科技計劃基礎(chǔ)研究項目(JCYJ2016030710153)。

TP39/TP312

A

2017-07-10)

猜你喜歡
控制指令功能模塊攝像頭
浙江首試公路非現(xiàn)場執(zhí)法新型攝像頭
攝像頭連接器可提供360°視角圖像
城軌車輛控制指令試驗裝置研制
宏指令控制的多軸系統(tǒng)研究及實現(xiàn)
基于ASP.NET標準的采購管理系統(tǒng)研究
高速公路隧道通風(fēng)、照明聯(lián)動控制方案探討
輸電線路附著物測算系統(tǒng)測算功能模塊的研究
M市石油裝備公服平臺網(wǎng)站主要功能模塊設(shè)計與實現(xiàn)
奔馳360°攝像頭系統(tǒng)介紹
功能模塊的設(shè)計與應(yīng)用研究