999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微信公眾平臺(tái)的工業(yè)物聯(lián)網(wǎng)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2019-06-06 04:21:26孫進(jìn)王凱王亞剛
軟件導(dǎo)刊 2019年3期

孫進(jìn) 王凱 王亞剛

摘 要:物聯(lián)網(wǎng)在工業(yè)領(lǐng)域的應(yīng)用日益廣泛,是引領(lǐng)現(xiàn)代工業(yè)發(fā)展的重要技術(shù)。為實(shí)現(xiàn)對(duì)工業(yè)設(shè)備的遠(yuǎn)程監(jiān)控,提出一種基于微信公眾平臺(tái)的工業(yè)物聯(lián)網(wǎng)系統(tǒng)。該系統(tǒng)由設(shè)備端、服務(wù)器和移動(dòng)終端組成。服務(wù)器采用Node平臺(tái)搭建,利用Node平臺(tái)異步特性,實(shí)現(xiàn)服務(wù)器高并發(fā)。實(shí)驗(yàn)表明,該設(shè)計(jì)能實(shí)現(xiàn)設(shè)備端和服務(wù)器的HTTP和MQTT協(xié)議通信,用戶(hù)可在微信公眾號(hào)嵌入的網(wǎng)頁(yè)上實(shí)現(xiàn)對(duì)設(shè)備端的遠(yuǎn)程監(jiān)控。

關(guān)鍵詞:微信公眾平臺(tái);服務(wù)器;Node;HTTP;MQTT

DOI:10. 11907/rjdk. 182078

中圖分類(lèi)號(hào):TP319文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-7800(2019)003-0091-03

0 引言

傳統(tǒng)制造業(yè)正在經(jīng)歷前所未有的轉(zhuǎn)型,物聯(lián)網(wǎng)、 云計(jì)算、大數(shù)據(jù)分析,作為工業(yè)物聯(lián)網(wǎng)和智能制造的核心技術(shù),正在從各個(gè)方面改變著工業(yè)行業(yè),包括產(chǎn)品的設(shè)計(jì)、運(yùn)營(yíng)、維護(hù)以及供應(yīng)鏈管理[3]。隨著工業(yè)物聯(lián)網(wǎng)(IIo T)技術(shù)[1]的應(yīng)用,提出了更智能更高效的解決方案以提高生產(chǎn)效率[2]。在德國(guó)工業(yè)4.0影響下,制造業(yè)掀起了物聯(lián)網(wǎng)應(yīng)用熱潮。自2017年開(kāi)始,工業(yè)物聯(lián)網(wǎng)發(fā)展正式進(jìn)入第二階段[4]。在工業(yè)物聯(lián)網(wǎng)發(fā)展過(guò)程中,PC設(shè)備扮演著重要角色。

智能手機(jī)迅速普及,應(yīng)用廣泛。本文以移動(dòng)設(shè)備為主要終端,提出一種基于微信公眾平臺(tái)的工業(yè)物聯(lián)網(wǎng)系統(tǒng),用戶(hù)可通過(guò)便于攜帶的移動(dòng)終端實(shí)現(xiàn)對(duì)工業(yè)物聯(lián)網(wǎng)設(shè)備的遠(yuǎn)程監(jiān)控,將工業(yè)物聯(lián)網(wǎng)與微信公眾平臺(tái)結(jié)合是本文的研究成果。

1 微信公眾平臺(tái)

隨著微信平臺(tái)市場(chǎng)需求的增長(zhǎng)和物聯(lián)網(wǎng)技術(shù)的高速發(fā)展,基于微信開(kāi)發(fā)應(yīng)用成為一個(gè)新的熱點(diǎn)[5]。本文實(shí)現(xiàn)了將服務(wù)器與微信公眾平臺(tái)對(duì)接,采用在公眾號(hào)嵌入網(wǎng)頁(yè)的形式實(shí)現(xiàn),用戶(hù)可通過(guò)網(wǎng)頁(yè)實(shí)現(xiàn)對(duì)物聯(lián)網(wǎng)設(shè)備遠(yuǎn)程監(jiān)控。微信公眾號(hào)界面如圖1所示,用戶(hù)可通過(guò)點(diǎn)擊云服務(wù)菜單欄下“我的設(shè)備”按鈕進(jìn)入物聯(lián)網(wǎng)設(shè)備監(jiān)控界面,服務(wù)器自動(dòng)獲取用戶(hù)在微信公眾號(hào)下的openid作為登陸賬號(hào),因?yàn)閛penid的唯一性,從而實(shí)現(xiàn)免密碼登陸。

2 系統(tǒng)總體設(shè)計(jì)

系統(tǒng)框架如圖2所示,總體設(shè)計(jì)為物聯(lián)網(wǎng)設(shè)備、微信服務(wù)器、網(wǎng)頁(yè)服務(wù)器、HTTP服務(wù)器、MQTT服務(wù)器和ESP8266通信模塊。ESP8266通信模塊和工業(yè)設(shè)備通過(guò)RS485通訊接口互相傳輸數(shù)據(jù),傳輸?shù)臄?shù)據(jù)包括工業(yè)設(shè)備實(shí)時(shí)參數(shù)和用戶(hù)控制指令數(shù)據(jù)。ESP8266通信模塊將工業(yè)設(shè)備實(shí)時(shí)參數(shù)通過(guò)MQTT協(xié)議發(fā)送給MQTT服務(wù)器,MQTT服務(wù)器負(fù)責(zé)將設(shè)備實(shí)時(shí)數(shù)據(jù)和指令轉(zhuǎn)發(fā)。MQTT是IBM 和 Arcom 公司發(fā)明的一項(xiàng)為物聯(lián)網(wǎng)設(shè)計(jì)的消息傳遞技術(shù),它基于TCP/IP 的應(yīng)用層通信協(xié)議[6]。HTTP服務(wù)器負(fù)責(zé)響應(yīng)微信的請(qǐng)求和處理用戶(hù)向微信公眾號(hào)發(fā)送的語(yǔ)音、文本等消息。在云服務(wù)器中采用ngnix負(fù)載均衡,根據(jù)不同二級(jí)域名向不同服務(wù)器轉(zhuǎn)發(fā)HTTP請(qǐng)求,從而實(shí)現(xiàn)服務(wù)器的高穩(wěn)定性和高并發(fā)。HTTP協(xié)議是一種面向?qū)ο蟮膫魉蛥f(xié)議,用于從服務(wù)器傳輸超文本到本地瀏覽器[7]。

3 系統(tǒng)硬件設(shè)計(jì)

系統(tǒng)硬件主要是ESP8266通信模塊,其電路原理如圖3所示。ESP8266通信模塊采用ESP8266芯片,該芯片是一款高性能的UART-WIFI (串口-無(wú)線(xiàn))模塊[8],憑借其高集成度、低功耗和易用性在物聯(lián)網(wǎng)應(yīng)用領(lǐng)域獲得好評(píng)[9]。電源芯片采用AMS117為系統(tǒng)提供3.3V穩(wěn)壓電源。串口通訊芯片采用RS485芯片,該芯片采用RS485通訊接口,只需要兩根通訊線(xiàn)即可在兩個(gè)或兩個(gè)以上的設(shè)備之間進(jìn)行數(shù)據(jù)傳輸,采用半雙工通訊方式連接。

4 系統(tǒng)軟件設(shè)計(jì)

系統(tǒng)軟件設(shè)計(jì)包括ESP8266通信模塊軟件設(shè)計(jì)、服務(wù)器軟件設(shè)計(jì)。為減輕快速增長(zhǎng)的網(wǎng)絡(luò)負(fù)載壓力,本文為Web后端服務(wù)器集群搭建了基于Nginx的負(fù)載均衡服務(wù)器[10]。Nginx是反向代理服務(wù)器,通過(guò)設(shè)置不同二級(jí)域名,實(shí)現(xiàn)將HTTP請(qǐng)求分發(fā)給不同服務(wù)器,本系統(tǒng)中Nginx與PHP構(gòu)成網(wǎng)頁(yè)服務(wù)器。服務(wù)端采用Node平臺(tái),利用Node平臺(tái)異步特性實(shí)現(xiàn)服務(wù)器高并發(fā)。在互聯(lián)網(wǎng)快速發(fā)展的潮流下,物聯(lián)網(wǎng)以及嵌入式開(kāi)發(fā)也在快速發(fā)展,傳統(tǒng)的開(kāi)發(fā)方式逐漸被新型物聯(lián)網(wǎng)嵌入式開(kāi)發(fā)所替代[11],Node.js讓JavaScript在物聯(lián)網(wǎng)和機(jī)器人領(lǐng)域有了廣泛應(yīng)用[12]。

4.1 ESP8266通信模塊軟件設(shè)計(jì)

ESP8266通信模塊軟件設(shè)計(jì)包括MQTT通信接口和歷史數(shù)據(jù)上傳接口,包括MQTT初始化和數(shù)據(jù)上傳接口。通過(guò)MQTT初始化連接可實(shí)現(xiàn)與MQTT服務(wù)器建立實(shí)時(shí)通信。歷史數(shù)據(jù)上傳接口是將物聯(lián)網(wǎng)設(shè)備的實(shí)時(shí)數(shù)據(jù)通過(guò)主題消息發(fā)送給MQTT服務(wù)器。將采集的數(shù)據(jù)打包成JSON數(shù)據(jù)包,通過(guò)發(fā)送POST請(qǐng)求的方式將JSON數(shù)據(jù)包上傳給服務(wù)器。JSON(JavaScript?Object Notation)是一種輕量級(jí)數(shù)據(jù)交換格式,采用完全獨(dú)立于語(yǔ)言的文本格式,是理想的數(shù)據(jù)交換格式[13]。

4.2 服務(wù)器軟件設(shè)計(jì)

MQTT服務(wù)器由Node平臺(tái)搭建,通過(guò)開(kāi)源的Mosca模塊實(shí)現(xiàn)MQTT服務(wù)器設(shè)計(jì)。本文MQTT服務(wù)器解決方案包括用Mosca模塊搭建和Mosquito軟件搭建。Mosca是MQTT在Node.js中的一個(gè)Broker的開(kāi)源實(shí)現(xiàn),通俗講也就是MQTT中的Server實(shí)現(xiàn)[14]。Mosquitto是一款實(shí)現(xiàn)了 MQTT v3.1 協(xié)議的開(kāi)源消息代理軟件[15]。在移動(dòng)互聯(lián)網(wǎng)中, 消息推送是很重要的部分,是手機(jī)客戶(hù)端信息發(fā)布和通信的重要方式[16]。消息推送服務(wù)器設(shè)計(jì)包括消息發(fā)布接口、客戶(hù)端消息處理接口、客戶(hù)端訂閱接口。MQTT是專(zhuān)門(mén)為低帶寬、不穩(wěn)定網(wǎng)絡(luò)以及計(jì)算和處理能力受限的設(shè)備所設(shè)計(jì)的,協(xié)議采用小型傳輸,耗電量小,能大大降低網(wǎng)絡(luò)流量,最小化數(shù)據(jù)包并有效分配及傳輸[17]。消息發(fā)布接口實(shí)現(xiàn)向客戶(hù)端發(fā)布指定主題消息,只有訂閱了主題的客戶(hù)端才可以接受消息。客戶(hù)端訂閱接口負(fù)責(zé)客戶(hù)端訂閱主題事件。絕大多數(shù)的Web開(kāi)發(fā)都是構(gòu)建在HTTP協(xié)議之上的Web應(yīng)用[18]。HTTP服務(wù)器是Web服務(wù)器的一種,它是基于超文本傳輸協(xié)議HTTP的服務(wù)器[19]。HTTP協(xié)議是目前Internet上使用最廣泛的協(xié)議,其語(yǔ)法定義較為寬松[20]。基于HTTP協(xié)議的HTTP服務(wù)器采用Express框架設(shè)計(jì),設(shè)備歷史數(shù)據(jù)上傳接口負(fù)責(zé)將解析設(shè)備發(fā)送請(qǐng)求的Body解析成JSON數(shù)據(jù),處理好后調(diào)用數(shù)據(jù)庫(kù)接口進(jìn)行存儲(chǔ)。接受網(wǎng)頁(yè)端發(fā)送的歷史數(shù)據(jù)GET請(qǐng)求,然后調(diào)用數(shù)據(jù)庫(kù)接口,將指定設(shè)備的歷史數(shù)據(jù)打包成JSON數(shù)據(jù)發(fā)送給網(wǎng)頁(yè)端。Express 是一個(gè)基于Node.js平臺(tái)的極簡(jiǎn)、靈活的Web應(yīng)用開(kāi)發(fā)框架,它提供一系列強(qiáng)大功能,幫助創(chuàng)建各種Web和移動(dòng)設(shè)備應(yīng)用[21]。

5 系統(tǒng)測(cè)試

5.1 系統(tǒng)軟件測(cè)試

用戶(hù)通過(guò)在微信公眾號(hào)中嵌入的網(wǎng)頁(yè)就可對(duì)物聯(lián)網(wǎng)設(shè)備進(jìn)行遠(yuǎn)程監(jiān)控,查看設(shè)備網(wǎng)頁(yè)界面如圖4所示。用戶(hù)可通過(guò)單擊菜單欄中的“實(shí)時(shí)”按鈕查看設(shè)備實(shí)時(shí)參數(shù),也可單擊菜單欄其它按鈕查看設(shè)備歷史參數(shù),設(shè)備參數(shù)通過(guò)曲線(xiàn)形式顯示。設(shè)備控制網(wǎng)頁(yè)界面如圖5所示,在輸入框中輸入數(shù)值,在“請(qǐng)選擇類(lèi)型”下拉欄中選擇控制指令類(lèi)型,便可實(shí)現(xiàn)對(duì)設(shè)備的控制,例如設(shè)置溫度、濕度等。

5.2 系統(tǒng)負(fù)載測(cè)試

測(cè)試設(shè)備客戶(hù)端0.01s與服務(wù)器建立一個(gè)長(zhǎng)連接,并且發(fā)送JSON數(shù)據(jù)包到服務(wù)器,采用逐漸增加長(zhǎng)連接方式,每秒增加100個(gè)連接測(cè)試,Node.js單進(jìn)程的服務(wù)器最大并發(fā)連接數(shù)是1245個(gè),可在多核服務(wù)器上多開(kāi)Node.js進(jìn)程以提高服務(wù)器性能,高的環(huán)境配置能提高Node.js服務(wù)器性能。

6 結(jié)語(yǔ)

本文應(yīng)用物聯(lián)網(wǎng)技術(shù),實(shí)現(xiàn)對(duì)傳統(tǒng)工業(yè)設(shè)備的遠(yuǎn)程監(jiān)控,用戶(hù)可通過(guò)微信公眾號(hào)嵌入的網(wǎng)頁(yè)對(duì)設(shè)備進(jìn)行遠(yuǎn)程監(jiān)控。但要重視工業(yè)物聯(lián)網(wǎng)存在的網(wǎng)絡(luò)安全問(wèn)題,在后續(xù)工作中要參考互聯(lián)網(wǎng)安全問(wèn)題解決思路,提出相應(yīng)解決方案。

參考文獻(xiàn):

[1] 李士寧,羅國(guó)佳. 工業(yè)物聯(lián)網(wǎng)技術(shù)及應(yīng)用概述[J]. 電信網(wǎng)技術(shù),2014(3):1-2.

[2] 王瑩,王金旺. 工業(yè)物聯(lián)網(wǎng)技術(shù)方案及發(fā)展大潮[J]. 電子產(chǎn)品世界,2018(3):1-2.

[3] 智能制造編輯部. 2018年工業(yè)物聯(lián)網(wǎng)將有哪些發(fā)展趨勢(shì)[EB/OL]. http://www.elecfans.com/d/697038.html.

[4] 孫邱偉. 基于微信控制物聯(lián)網(wǎng)設(shè)備的服務(wù)器系統(tǒng)[D]. 廣州:廣州工業(yè)大學(xué),2015.

[5] 王培元,杜玉勝. 一種基于MQTT協(xié)議的物聯(lián)網(wǎng)智能監(jiān)控系統(tǒng)[J]. 信息技術(shù)與信息化,2018(1):1-2.

[6] 劉波濤,馮翠麗. 物聯(lián)網(wǎng)應(yīng)用中嵌入式HTTP協(xié)議的設(shè)計(jì)與實(shí)現(xiàn)[J]. 佳木斯大學(xué)學(xué)報(bào):自然科學(xué)版,2011(5):1-2.

[7] 劉孝趙. 基于ESP8266模塊的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J]. 電子測(cè)試,2017(21):2-3.

[8] 曹振民,陳年生,馬強(qiáng),等. 基于ESP8266的無(wú)線(xiàn)控制電路設(shè)計(jì)[J]. 工業(yè)控制計(jì)算機(jī),2017(1):1-2.

[9] 張?jiān)疲S江淳,李玉惠,等. 基于Nginx服務(wù)器負(fù)載均衡技術(shù)的研究與改進(jìn)[J]. 軟件,2017(8):3-4.

[10] 苑臣芒.? Node.js成為新型物聯(lián)網(wǎng)開(kāi)發(fā)的催化劑[J]. 中小企業(yè)管理與科技,2016(10):1-2.

[11] 潘從祥,蔣樂(lè)天. 基于Node.js的TurtleBot機(jī)器人JavaScript API設(shè)計(jì)[J]. 信息技術(shù),2018(3):1-2.

[12] 字無(wú)忌. js讀取解析JSON數(shù)據(jù)[EB/OL].? https://www.cnblogs.com/jtlgb/p/6137915.html.

[13] YUANSC. MQTT-Node.js實(shí)現(xiàn)-Mosca簡(jiǎn)介[EB/OL].? https://www.jianshu.com/p/8315acec4e6b.

[14] XUKAI. MQTT學(xué)習(xí)筆記—MQTT協(xié)議體驗(yàn) Mosquitto安裝和使用[EB/OL]. https://blog.csdn.net/xukai871105.

[15] 馬躍,顏睿陽(yáng),孫建偉. 基于RocketMQ的MQTT消息推送服務(wù)器分布式部署方案[J].? 計(jì)算機(jī)系統(tǒng)應(yīng)用,2018(6):1-2.

[16] 任亨,馬躍,楊海波,等. 基于MQTT協(xié)議的消息推送服務(wù)器[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用,2014(3):2-3.

[17] 祝瑞,車(chē)敏. 基于HTTP協(xié)議的服務(wù)器程序分析[J]. 現(xiàn)代電子技術(shù),2012(4):1-2.

[18] 邵芬,于國(guó)防,張寧. 基于多線(xiàn)程的HTTP服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)[J]. 工礦自動(dòng)化, 2008(4):1-2.

[19] 吳其祥,李祖華. 基于HTTP協(xié)議的隱蔽信道研究[J]. 信息安全與通信保密,2009(1):1-2.

[20] HELLOKANG. nodeJs之express框架學(xué)習(xí)筆記[EB/OL]. https://www.jianshu.com/p/94360745c4ae.

(責(zé)任編輯:杜能鋼)

主站蜘蛛池模板: 成年人福利视频| 亚洲精品视频网| 在线不卡免费视频| 欧美亚洲国产一区| 亚洲精品无码高潮喷水A| 色国产视频| 亚洲日本中文字幕乱码中文 | 精品自拍视频在线观看| 亚洲免费毛片| 国产成人精品第一区二区| 国产精品欧美在线观看| 亚洲欧美在线综合图区| 亚洲综合网在线观看| 一级香蕉视频在线观看| 99热最新网址| 五月婷婷综合网| 欧美精品亚洲日韩a| aa级毛片毛片免费观看久| 日韩精品成人网页视频在线| 日本成人不卡视频| 9久久伊人精品综合| 97在线公开视频| 国产一二三区视频| 精品国产一区91在线| 天堂成人在线视频| 国产精品高清国产三级囯产AV| 欧美日韩国产在线观看一区二区三区 | 97se亚洲综合不卡| 欧美成人精品高清在线下载| 992tv国产人成在线观看| 亚洲经典在线中文字幕| 伊人欧美在线| 九九久久精品国产av片囯产区 | www.99精品视频在线播放| 伊人中文网| 国产精品久久久久久久久久久久| 国内嫩模私拍精品视频| 91精品专区| 国产欧美中文字幕| 91色爱欧美精品www| 98精品全国免费观看视频| 99久久精品免费看国产电影| 国产精品欧美在线观看| 国内精品视频在线| 成年人国产网站| 欧美日韩在线亚洲国产人| 99久久国产综合精品2023| 久久综合九色综合97婷婷| 国产丝袜丝视频在线观看| 99久久婷婷国产综合精| 中文成人在线| 国产精品成人免费综合| 亚洲永久色| 高清不卡毛片| 97国产在线观看| 成人国产精品一级毛片天堂| 国产精品永久不卡免费视频| 波多野结衣久久高清免费| 黄色三级网站免费| 国产成人福利在线| 波多野结衣中文字幕久久| 亚洲 欧美 偷自乱 图片 | 精品福利国产| 欧美日韩国产成人高清视频| 91九色国产porny| 国产视频久久久久| 无码网站免费观看| 人人91人人澡人人妻人人爽| 91精品国产91久无码网站| P尤物久久99国产综合精品| 久综合日韩| 91亚洲国产视频| 91网址在线播放| 一级做a爰片久久免费| 91精品啪在线观看国产| 国产精品视频第一专区| 尤物国产在线| 91青青在线视频| 野花国产精品入口| 色老二精品视频在线观看| 欧美日本不卡| 亚洲成人77777|