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

基于阿里云物聯(lián)網(wǎng)平臺(tái)的遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)

2024-08-08 00:00:00孫振華
科技創(chuàng)新與應(yīng)用 2024年23期

摘 要:基于阿里云物聯(lián)網(wǎng)平臺(tái)的遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)以ESP8266模塊為控制核心,連接溫濕度、煙霧、光照等傳感器,利用Arduino對(duì)ESP8266進(jìn)行編程開(kāi)發(fā),通過(guò)ESP8266中集成的Wi-Fi模塊與阿里云物聯(lián)網(wǎng)平臺(tái)通信,基于MQTT協(xié)議將數(shù)據(jù)發(fā)送至平臺(tái),同時(shí),利用Android開(kāi)發(fā)移動(dòng)端App,在阿里云物聯(lián)網(wǎng)平臺(tái)中利用云產(chǎn)品流轉(zhuǎn)功能將數(shù)據(jù)發(fā)送至移動(dòng)端App,實(shí)現(xiàn)環(huán)境數(shù)據(jù)的運(yùn)程監(jiān)測(cè)功能。系統(tǒng)與其他監(jiān)測(cè)系統(tǒng)相比,具有部署簡(jiǎn)單靈活、價(jià)格便宜、穩(wěn)定性高等特點(diǎn),能廣泛應(yīng)用于各類物聯(lián)網(wǎng)場(chǎng)景,如家庭、醫(yī)療、農(nóng)業(yè)和工廠等場(chǎng)所的環(huán)境監(jiān)測(cè)。

關(guān)鍵詞: ESP8266;阿里云平臺(tái);Arduino;Android;遠(yuǎn)程監(jiān)測(cè)

中圖分類號(hào):TP274 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2095-2945(2024)23-0114-06

Abstract: The remote environmental monitoring system based on the Alibaba Cloud IoT platform uses the ESP8266 module as the control core and connects sensors such as temperature, humidity, smoke, and light. Arduino is used to program and develop the ESP8266, which communicates with the Alibaba Cloud IoT platform through the integrated Wi-Fi module in ESP8266. The data is sent to the platform based on the MQTT protocol. Simultaneously, an Android app is developed to receive the data from the platform using cloud product flow function in the Alibaba Cloud IoT platform, realizing the real-time monitoring of environmental data. Compared with other monitoring systems, this system has the advantages of simple and flexible deployment, low cost, and high stability, making it widely applicable in various IoT scenarios such as homes, healthcare, agriculture, factories, etc.

Keywords: ESP8266; Alibaba Cloud platform; Arduino; Android; remote monitoring

隨著人們對(duì)生活環(huán)境的要求越來(lái)越高,環(huán)境質(zhì)量逐漸成為關(guān)注的焦點(diǎn),環(huán)境質(zhì)量可以通過(guò)環(huán)境監(jiān)測(cè)獲取環(huán)境數(shù)據(jù)進(jìn)而評(píng)估。環(huán)境監(jiān)測(cè)指通過(guò)傳感器設(shè)備采集環(huán)境數(shù)據(jù)對(duì)環(huán)境質(zhì)量進(jìn)行監(jiān)測(cè)和評(píng)估的過(guò)程。環(huán)境監(jiān)測(cè)在家庭、農(nóng)業(yè)、醫(yī)療和工廠等物聯(lián)網(wǎng)場(chǎng)景中的應(yīng)用日益廣泛。傳統(tǒng)的環(huán)境監(jiān)測(cè)方法主要依靠人工采樣,采樣率低,數(shù)據(jù)時(shí)效性低,成本高。筆者旨在研究和設(shè)計(jì)一種基于阿里云物聯(lián)網(wǎng)平臺(tái)的遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)(以下簡(jiǎn)稱遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)),主要包括傳感器節(jié)點(diǎn)、ESP8266模塊、阿里云物聯(lián)網(wǎng)平臺(tái)和移動(dòng)端APP等,以實(shí)現(xiàn)實(shí)時(shí)采集、遠(yuǎn)程監(jiān)測(cè)、可視化展示環(huán)境數(shù)據(jù),提高環(huán)境監(jiān)測(cè)的精度和效率。遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)可以實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè)和分析環(huán)境溫濕度、煙霧、光照等環(huán)境參數(shù),提供科學(xué)、準(zhǔn)確、及時(shí)的環(huán)境信息服務(wù)。

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

1.1 系統(tǒng)架構(gòu)

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)由硬件設(shè)備、軟件系統(tǒng)、阿里云物聯(lián)網(wǎng)平臺(tái)組成,整體框架如圖1所示。

硬件設(shè)備主要有ESP8266模塊、溫濕度傳感器、煙霧傳感器、光照傳感器和無(wú)線網(wǎng)絡(luò)設(shè)備等。

軟件系統(tǒng)主要包括2部分:①利用Arduino軟件對(duì)ESP8266進(jìn)行編程開(kāi)發(fā),實(shí)現(xiàn)對(duì)傳感器采集數(shù)據(jù)的處理,通過(guò)ESP8266自帶的Wi-Fi芯片、基于MQTT協(xié)議和阿里云物聯(lián)網(wǎng)平臺(tái)傳輸數(shù)據(jù),實(shí)時(shí)發(fā)送采集的數(shù)據(jù)至云平臺(tái)。②利用Android Studio軟件進(jìn)行移動(dòng)端APP的開(kāi)發(fā),同樣是基于MQTT協(xié)議實(shí)現(xiàn)阿里云物聯(lián)網(wǎng)平臺(tái)和移動(dòng)端APP的數(shù)據(jù)傳輸,從而實(shí)現(xiàn)環(huán)境數(shù)據(jù)的遠(yuǎn)程實(shí)時(shí)監(jiān)測(cè)。

阿里云物聯(lián)網(wǎng)平臺(tái)主要實(shí)現(xiàn)設(shè)備的創(chuàng)建和接入、傳感器數(shù)據(jù)的采集和存儲(chǔ)。通過(guò)云產(chǎn)品流轉(zhuǎn),實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā)功能。

1.2 監(jiān)測(cè)過(guò)程

如圖1所示,利用連接在ESP8266模塊的各類傳感器采集環(huán)境數(shù)據(jù),ESP8266模塊處理數(shù)據(jù)并轉(zhuǎn)換成JSON格式發(fā)送至阿里云物聯(lián)網(wǎng)平臺(tái)的設(shè)備1中,設(shè)備1通過(guò)云產(chǎn)品流轉(zhuǎn)功能轉(zhuǎn)發(fā)數(shù)據(jù)至云平臺(tái)中設(shè)備2中,移動(dòng)端APP連接平臺(tái)后解析并獲取設(shè)備2中的數(shù)據(jù),從而實(shí)現(xiàn)環(huán)境數(shù)據(jù)的遠(yuǎn)程、實(shí)時(shí)監(jiān)測(cè)。

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

2.1 ESP8266模塊

ESP8266是一種低成本、擁有完整Wi-Fi網(wǎng)絡(luò)功能的單片機(jī)模塊,由樂(lè)鑫信息科技(上海)股份有限公司開(kāi)發(fā)[1],所需供電電壓為3.3~5 V。ESP8266芯片集成在NodeMCU型開(kāi)發(fā)板中,內(nèi)置32位處理器,主頻支持80 MHz和160 MHz,支持802.11 b/g/n協(xié)議,并集成CP2101芯片,提供可靠的USB轉(zhuǎn)UART功能,便于與計(jì)算機(jī)進(jìn)行數(shù)據(jù)傳輸和編程。NodeMCU開(kāi)發(fā)板提供多個(gè)GPIO引腳及擴(kuò)展引腳,可連接外部傳感器、執(zhí)行器或其他設(shè)備,且支持Arduino開(kāi)發(fā)環(huán)境,可用Arduino代碼和函數(shù)庫(kù)進(jìn)行編程開(kāi)發(fā)。

2.2 溫濕度、煙霧、光照傳感器

AM2301(DHT21)數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器,應(yīng)用數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品可靠性高,長(zhǎng)期穩(wěn)定,主要有1個(gè)電容式感濕元件、1個(gè)NTC測(cè)溫元件,并與1個(gè)高性能8位單片機(jī)相連接,3引線輸出[2]。MQ-2型煙霧傳感器以二氧化錫(SnO2)為氣敏材料,有VCC、GND、TTL高低電平輸出端、模擬電壓輸出端4個(gè)引腳,可用于探測(cè)液化氣、丁烷、丙烷、甲烷和氫氣等可燃?xì)怏w[3]。BH1750FVI型數(shù)字光照傳感器測(cè)量范圍廣,精度高,具備I2C接口,能連接NodeMCU并輸出數(shù)字信號(hào)。

2.3 系統(tǒng)硬件的連接

如圖2所示,ESP8266的引腳與NodeMCU開(kāi)發(fā)板上的兩排插針相連,具有17個(gè)用于通用輸入輸出的GPIO引腳、1個(gè)用于模擬輸入的ADC引腳、能為外部傳感器提供3.3 V電源的3V3引腳、2個(gè)預(yù)留引腳等。

溫濕度傳感器、光照傳感器為數(shù)字傳感器,能以數(shù)字信號(hào)方式輸出監(jiān)測(cè)的環(huán)境數(shù)據(jù)。煙霧傳感器為模擬傳感器,輸出模擬信號(hào)。由ESP8266引腳類型、傳感器產(chǎn)品接線說(shuō)明可知:溫濕度傳感器、光照傳感器的信號(hào)輸出端接ESP8266的GPIO引腳,煙霧傳感器模擬輸出端接ESP8266的ADC引腳;傳感器的電源線均接ESP8266的3V3和GND引腳。連接用輔助材料及工具包括杜邦線、接線端子、Micro-USB數(shù)據(jù)線和剝線鉗等。以溫濕度傳感器連接為例,分別將電源線、信號(hào)線通過(guò)接線端子接入ESP8266對(duì)應(yīng)的引腳,用Micro-USB數(shù)據(jù)線連接NodeMCU開(kāi)發(fā)板為ESP8266供電,連接完成的實(shí)物圖如圖3所示。

3 云平臺(tái)中設(shè)備及云產(chǎn)品流轉(zhuǎn)創(chuàng)建

3.1 設(shè)備創(chuàng)建

使用物聯(lián)網(wǎng)平臺(tái)接入設(shè)備前需在物聯(lián)網(wǎng)平臺(tái)控制臺(tái)創(chuàng)建產(chǎn)品。產(chǎn)品是設(shè)備的集合,通常指一組具有相同功能的設(shè)備。創(chuàng)建產(chǎn)品完成后,需在產(chǎn)品下添加設(shè)備,獲取設(shè)備證書(shū)[4]。產(chǎn)品創(chuàng)建操作步驟:①登錄阿里云物聯(lián)網(wǎng)平臺(tái),進(jìn)入已開(kāi)通的公共實(shí)例。②點(diǎn)擊左側(cè)導(dǎo)航欄設(shè)備管理下的產(chǎn)品,在產(chǎn)品頁(yè)面點(diǎn)擊創(chuàng)建產(chǎn)品。③在新建產(chǎn)品頁(yè)面中輸入產(chǎn)品名稱、設(shè)置所屬品類、節(jié)點(diǎn)類型、連網(wǎng)方式、數(shù)據(jù)格式及校驗(yàn)級(jí)別、認(rèn)證方式等信息,點(diǎn)擊確認(rèn)按鈕。

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)需要在產(chǎn)品下添加2臺(tái)設(shè)備,分別用于表示ESP8266端設(shè)備和移動(dòng)端設(shè)備。設(shè)備創(chuàng)建步驟:①點(diǎn)擊左側(cè)導(dǎo)航欄設(shè)備管理下的設(shè)備,在設(shè)備頁(yè)面點(diǎn)擊添加設(shè)備。②在添加設(shè)備頁(yè)面選擇所屬產(chǎn)品、輸入設(shè)備名稱(DeviceName)、備注名稱。設(shè)備創(chuàng)建完成,未接入平臺(tái)前處于未激活狀態(tài),如圖4所示。點(diǎn)擊查看進(jìn)入設(shè)備能查詢其三元組信息,即ProductKey、DeviceName和DeviceSecret。

3.2 云產(chǎn)品流轉(zhuǎn)創(chuàng)建

設(shè)備創(chuàng)建完成,使用阿里云物聯(lián)網(wǎng)平臺(tái)云產(chǎn)品流轉(zhuǎn)功能,以使設(shè)備間可進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。通過(guò)云產(chǎn)品流轉(zhuǎn),用戶可定義設(shè)備數(shù)據(jù)的接收、處理、發(fā)送規(guī)則,實(shí)現(xiàn)設(shè)備數(shù)據(jù)的實(shí)時(shí)傳輸、存儲(chǔ)和分析等。創(chuàng)建云產(chǎn)品流轉(zhuǎn)步驟:①創(chuàng)建數(shù)據(jù)源。點(diǎn)擊左側(cè)導(dǎo)航欄消息轉(zhuǎn)發(fā)下的云產(chǎn)品流轉(zhuǎn),在數(shù)據(jù)源選項(xiàng)卡中點(diǎn)擊創(chuàng)建數(shù)據(jù)源,進(jìn)入對(duì)話框輸入數(shù)據(jù)源名稱。②創(chuàng)建數(shù)據(jù)目的。在數(shù)據(jù)目的選項(xiàng)卡中點(diǎn)擊創(chuàng)建數(shù)據(jù)目的,進(jìn)入對(duì)話框輸入數(shù)據(jù)目名稱、選擇發(fā)布到另一個(gè)Topic、該Topic所屬產(chǎn)品。③創(chuàng)建解析器。在解析器選項(xiàng)卡中點(diǎn)擊創(chuàng)建解析器,機(jī)內(nèi)對(duì)話框輸入解析器名稱。④關(guān)聯(lián)數(shù)據(jù)源。解析器創(chuàng)建完成后,點(diǎn)擊右側(cè)查看進(jìn)行關(guān)聯(lián)數(shù)據(jù)源、數(shù)據(jù)目的,解析器的腳本設(shè)置。注意1個(gè)解析器只能關(guān)聯(lián)1個(gè)數(shù)據(jù)源,但可關(guān)聯(lián)最多10個(gè)數(shù)據(jù)目的。在編輯腳本的“writeIotTopic”中,需正確填寫(xiě)數(shù)據(jù)目的的ID、流轉(zhuǎn)設(shè)備的Topic。啟動(dòng)創(chuàng)建的解析器,實(shí)現(xiàn)數(shù)據(jù)流轉(zhuǎn)功能,如圖5所示。

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

4.1 ESP8266模塊的開(kāi)發(fā)

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)利用Arduino IDE 2.21對(duì)ESP8266進(jìn)行編程開(kāi)發(fā)。程序經(jīng)編譯調(diào)試無(wú)誤后通過(guò)Micro-USB數(shù)據(jù)線燒錄至ESP8266,實(shí)現(xiàn)ESP8266的自動(dòng)聯(lián)網(wǎng)、MQTT連接、發(fā)送數(shù)據(jù)等功能。進(jìn)行開(kāi)發(fā)前必須在Arduino開(kāi)發(fā)板管理器和庫(kù)管理器中下載并安裝ESP8266安裝包、對(duì)應(yīng)的傳感器庫(kù)、ArduinoJson庫(kù)、PubSubClient庫(kù)[5]。實(shí)現(xiàn)ESP8266自動(dòng)聯(lián)網(wǎng)功能可通過(guò)ESP8266WiFi.h庫(kù)文件中提供的WiFi.mode(WIFI_STA)、WiFi.begin(ssid, password)函數(shù)實(shí)現(xiàn);ESP8266接入物聯(lián)網(wǎng)平臺(tái),通過(guò)定義設(shè)備三元組信息,包括PRODUCT_KEY、DEVICE_NAME、DEVICE_SECRET,設(shè)置線上環(huán)境域名和端口號(hào),利用client.connect()建立MQTT(云平臺(tái))的連接。部分關(guān)鍵代碼如下:

……………………….

#define PRODUCT_KEY "xxxxxx"

#define DEVICE_NAME "xxxxxx"

#define DEVICE_SECRET "xxxxxx" //設(shè)備三元組信息

……………………….

#define MQTT_PASSWD "xxxxxx" //第三方工具生成密碼

const int keepalive = 60; //定義時(shí)間間隔

……………………….

client.setServer(MQTT_SERVER, MQTT_PORT); //設(shè)置MQTT服務(wù)器

client.connect(CLIENT_ID, MQTT_USRNAME, MQTT_PASSWD); //MQTT連接

client.setKeepAlive(keepalive); //發(fā)送保活心跳包

……………………….

實(shí)現(xiàn)發(fā)送傳感器數(shù)據(jù)功能主要步驟:①創(chuàng)建傳感器對(duì)象并設(shè)置引腳。②設(shè)置ALINK_BODY_FORMAT消息體的JSON 格式。③設(shè)置MQTT消息發(fā)布的Topic。④編寫(xiě)數(shù)據(jù)發(fā)送代碼。以溫濕度傳感器的數(shù)據(jù)發(fā)送為例,部分關(guān)鍵代碼如下:

……………………….

DHTNEW mySensor(5); //創(chuàng)建溫濕度傳感器對(duì)象,并設(shè)置引腳為5(D1口)

#define ALINK_BODY_FORMAT "{\"id\":\"ES P8266\",\"version\":\"1.0\",\"params-

\":%s,\"method\":\"thing.event.property.post\"}" //定義JSON 格式的字符串

#define PROP_POST "/sys/" PRODUCT_KEY "/" DEVICE_NAME "/thing/event/property/post"

float wd,sd;   //定義溫濕度變量

……………………….

mySensor.read(); //傳感器讀取數(shù)據(jù)

wd=mySensor.getTemperature(); //獲取溫度數(shù)據(jù)

sd=mySensor.getHumidity(); //獲取濕度數(shù)據(jù)

……………………….

sprintf(param, "{\"temp\":%s,\"hum\":%s}",String(wd),String(sd));

sprintf(jsonBuf, ALINK_BODY_FORMAT, param);

client.publish(PROP_POST, jsonBuf); //發(fā)送數(shù)據(jù)

……………………….

4.2 移動(dòng)端APP的開(kāi)發(fā)

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)在移動(dòng)端APP的開(kāi)發(fā)中使用軟件Android Studio。移動(dòng)端APP界面設(shè)計(jì)采用LinearLayout線性布局方式,在水平或垂直方向排列子視圖。界面包含溫度、濕度、煙霧和光照等數(shù)據(jù)的實(shí)時(shí)監(jiān)測(cè),此外,還有為后續(xù)設(shè)計(jì)預(yù)留的燈光開(kāi)關(guān)、風(fēng)扇開(kāi)關(guān)、報(bào)警開(kāi)關(guān),如圖6所示。

在功能方面,實(shí)現(xiàn)移動(dòng)端與阿里云物聯(lián)網(wǎng)平臺(tái)通信并獲取傳感器數(shù)據(jù)需要在Android中使用Paho Android Service庫(kù)。Paho Android service是用Java編寫(xiě)的MQTT客戶端庫(kù)[6]。移動(dòng)端APP功能實(shí)現(xiàn)主要步驟。

1)添加Paho Android Service庫(kù)及依賴項(xiàng)。在settings.gradle的dependencyResolutionManagement下添加Paho倉(cāng)庫(kù)地址:https://repo.eclipse.org/content/repositories/paho-releases/。在build.gradle文件中,添加Paho Android Service的2個(gè)依賴項(xiàng),即paho.client.mqttv3-1.1.0和paho.android.service:1.1.1。

2)在AndroidMainfest.xml頁(yè)面中聲明服務(wù)及添加權(quán)限。聲明服務(wù)為<service android:name="org.eclipse.paho.android.service.MqttService"/>。在AndroidMainfest.xml添加Paho MQTT Service所需的4項(xiàng)權(quán)限:WAKE_LOCK、INTERNET、ACCESS_NETWORK_STATE、ACCESS_WI FI_STATE,設(shè)置usesCleartextTraffic="true",以便允許應(yīng)用程序使用非加密的HTTP協(xié)議(明文)進(jìn)行網(wǎng)絡(luò)通信。要注意的是,應(yīng)用build.gradle文件中的targetSdkVersion需要小于或等于30,若不符合要求,必須修正[7]。

3)移動(dòng)端接入物聯(lián)網(wǎng)平臺(tái)。下載阿里云官網(wǎng)提供的計(jì)算MQTT連接參數(shù)所需的源碼文件AiotMqttOption.java,導(dǎo)入Android項(xiàng)目,定義設(shè)備(移動(dòng)端)三元組信息、獲取MQTT連接信息的3個(gè)參數(shù)即clientId、username、password,將username和password設(shè)置到MqttConnectOptions對(duì)象中。創(chuàng)建1個(gè)MqttAndroidClient對(duì)象,設(shè)置回調(diào)接口、調(diào)用connect方法,從而建立連接。部分關(guān)鍵代碼如下:

……………………….

/* 阿里云MQTT服務(wù)器域名 */

final String host = "tcp://" + PRODUCTKEY + ".iot-as-mqtt." + REGION_ID + ".aliyuncs.com:1883";

MqttAndroidClient mqttAndroidClient;

……………………….

/* 獲取MQTT連接信息clientId、username、password。*/

clientId = aiotMqttOption.getClientId();

userName = aiotMqttOption.getUsername();

passWord = aiotMqttOption.getPassword();

……………………….

/* 創(chuàng)建MqttAndroidClient對(duì)象,設(shè)置回調(diào)接口,建立MQTT連接。*/

mqttAndroidClient = new MqttAndroidClient(getApplicationContext(), host, clientId);

mqttAndroidClient.setCallback(new MqttCallback() { @Override......});

……………………….

4)獲取物聯(lián)網(wǎng)平臺(tái)傳感器數(shù)據(jù)。通過(guò)subscribe方法訂閱云端的Topic,獲取物聯(lián)網(wǎng)平臺(tái)下發(fā)的數(shù)據(jù),對(duì)接收的數(shù)據(jù)進(jìn)行JSON解析并提取。以獲取溫濕度的數(shù)據(jù)為例,部分關(guān)鍵代碼如下:

……………………….

/* 訂閱topic */

mqttAndroidClient.subscribe(topic, 0, null, new IMqttActionListener() {@Override.......});

……………………….

/* JSON解析提取溫度值 */

String tempc= jsonObject.optString("temp");

JSONObject temp_data = new JSONObject(tempc);

String temp2 = temp_data.optString("value");

temp.setText(temp2.toString()+"℃");

……………………….

/* JSON解析提取濕度值 */

String humic= jsonObject.optString("hum");

JSONObjecthumi_data = new JSONObject(humic);

String humi2 = humi_data.optString("value");

hum.setText(humi2.toString()+"RH%");

……………………….

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

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)測(cè)試包括ESP8266模塊、阿里云物聯(lián)網(wǎng)平臺(tái)、移動(dòng)端APP,測(cè)試內(nèi)容主要包括傳感器數(shù)據(jù)的獲取、硬件設(shè)備與阿里云的連接情況、云產(chǎn)品流轉(zhuǎn)及移動(dòng)端APP的數(shù)據(jù)獲取情況。

ESP8266模塊主要測(cè)試MQTT連接是否正常、各類傳感器數(shù)據(jù)的獲取是否正常。以測(cè)試溫濕度傳感器的數(shù)據(jù)獲取為例,對(duì)ESP8266上電后利用Arduino軟件中的串口監(jiān)視器工具查看,可見(jiàn)MQTT連接正常,溫濕度數(shù)據(jù)獲取正常,如圖7所示。

阿里云物聯(lián)網(wǎng)平臺(tái)主要測(cè)試內(nèi)容為創(chuàng)建設(shè)備的上線情況、數(shù)據(jù)獲取及云產(chǎn)品流轉(zhuǎn)功能是否正常。運(yùn)行ESP8266和移動(dòng)端APP后,登錄物聯(lián)網(wǎng)平臺(tái)實(shí)例中的設(shè)備頁(yè)面,其中創(chuàng)建的test代表ESP8266設(shè)備、Android代表移動(dòng)端設(shè)備,可見(jiàn)2個(gè)設(shè)備均已在線,如圖8所示。

查看云端運(yùn)行日志可知數(shù)據(jù)流轉(zhuǎn)的情況,即傳感器數(shù)據(jù)從ESP8266端發(fā)送到阿里云物聯(lián)網(wǎng)平臺(tái),云端設(shè)備(test)獲取數(shù)據(jù)后進(jìn)行云產(chǎn)品流轉(zhuǎn),將數(shù)據(jù)轉(zhuǎn)發(fā)至云端移動(dòng)端設(shè)備(Android),下發(fā)數(shù)據(jù)至移動(dòng)端APP。云端運(yùn)行日志如圖9所示。

運(yùn)行移動(dòng)端APP后,在模擬器中可以看到APP能正常運(yùn)行,并能成功獲取溫度、濕度、煙霧、光照數(shù)值,如圖10所示。通過(guò)軟件下方的logcat也能看出,APP連接MQTT正常,并每隔3 s實(shí)時(shí)獲取云端Android設(shè)備下發(fā)的數(shù)據(jù),如圖11所示。

經(jīng)過(guò)連續(xù)24 h左右的測(cè)試,系統(tǒng)運(yùn)行正常,各傳感器數(shù)據(jù)輸出穩(wěn)定。相比其他環(huán)境監(jiān)測(cè)系統(tǒng),本系統(tǒng)基于阿里云物聯(lián)網(wǎng)平臺(tái),支持多種通信協(xié)議和設(shè)備接入方式,可以與各種硬件設(shè)備和軟件系統(tǒng)進(jìn)行集成,可根據(jù)實(shí)際需求進(jìn)行擴(kuò)展和定制,且硬件價(jià)格便宜、布局靈活,應(yīng)用價(jià)值較高。

6 結(jié)束語(yǔ)

遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)能夠?qū)崟r(shí)采集環(huán)境溫濕度、煙霧、光照數(shù)據(jù),并通過(guò)阿里云將數(shù)據(jù)下發(fā)到移動(dòng)端設(shè)備實(shí)現(xiàn)遠(yuǎn)程監(jiān)測(cè)。遠(yuǎn)程環(huán)境監(jiān)測(cè)系統(tǒng)運(yùn)行可靠,硬件價(jià)格低廉,具有較好的擴(kuò)展性和實(shí)用性,后續(xù)可以進(jìn)一步添加其他傳感器或執(zhí)行器設(shè)備(如燈光、風(fēng)扇的控制等)實(shí)現(xiàn)功能拓展,能廣泛應(yīng)用于各類環(huán)境監(jiān)測(cè)的場(chǎng)景。

參考文獻(xiàn):

[1] 楊海龍,寇健,溫曉東,等.基于ESP8266的智能建筑溫濕度檢測(cè)系統(tǒng)設(shè)計(jì)[J].河北建筑工程學(xué)院學(xué)報(bào),2023,41(3):177-181,188.

[2] 化騰飛.基于MSP430F149單片機(jī)與AM2301傳感器的溫濕度計(jì)設(shè)計(jì)[J].山東農(nóng)業(yè)大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,46(1):143-147.

[3] 盧佳欣,陳柏祥,丁子建.基于物聯(lián)網(wǎng)技術(shù)的智慧家庭監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].科技與創(chuàng)新,2023(21):105-107,110.

[4] 阿里云產(chǎn)品文檔手冊(cè).創(chuàng)建產(chǎn)品[EB/OL].(2023-12-08)[2024-01-02].https://help.aliyun.com/zh/iot/user-guide/create-a-prod uct.

[5] 蒲成雷.基于NodeMCU和OneNET的設(shè)備機(jī)房環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].現(xiàn)代信息科技,2023,7(20):80-83.

[6] 梁永恩.基于MQTT的農(nóng)業(yè)大棚環(huán)境監(jiān)測(cè)系統(tǒng)[J].信息與電腦,2023(3):70-74.

[7] 阿里云產(chǎn)品文檔手冊(cè).Paho-MQTT Android接入示例[EB/OL].(2023-01-17)[2024-01-02].https://help.aliyun.com/zh/iot/use-cases/use-the-paho-mqtt-android-client.

作者簡(jiǎn)介:孫振華(1984-),男,碩士,講師。研究方向?yàn)槲锫?lián)網(wǎng)技術(shù),軟件設(shè)計(jì),影視后期制作。

主站蜘蛛池模板: 福利在线免费视频| 99伊人精品| 成人小视频网| 福利在线不卡| 99热这里只有精品在线播放| 99re经典视频在线| 国产高清毛片| 99精品国产自在现线观看| 日韩第一页在线| 九色在线观看视频| 国产在线第二页| 国产成人精品视频一区视频二区| 国产成年女人特黄特色毛片免| 一级香蕉人体视频| 国产日本欧美在线观看| 无码福利视频| 天天操天天噜| 成人a免费α片在线视频网站| 中文国产成人久久精品小说| 亚洲性色永久网址| 国产精品无码作爱| 99性视频| 波多野结衣无码视频在线观看| 日韩中文字幕免费在线观看| 亚洲欧美精品一中文字幕| 伊人久久综在合线亚洲2019| 在线观看网站国产| 欧美日韩国产精品综合| 亚洲va视频| 喷潮白浆直流在线播放| 亚洲国产精品VA在线看黑人| 怡红院美国分院一区二区| 国产成人资源| 在线综合亚洲欧美网站| 日本高清在线看免费观看| 日本一本在线视频| 无码免费视频| 国产香蕉在线视频| 亚洲AV无码一二区三区在线播放| 特级毛片免费视频| 亚洲成人黄色网址| 国产午夜福利亚洲第一| 亚洲色欲色欲www网| 蜜芽国产尤物av尤物在线看| 精品国产自| 国产欧美视频一区二区三区| 高清久久精品亚洲日韩Av| 日韩第九页| 一区二区影院| 成人午夜视频在线| 超薄丝袜足j国产在线视频| 婷婷六月综合网| 2024av在线无码中文最新| 日本精品影院| 麻豆精品在线视频| 91香蕉国产亚洲一二三区| 精品视频第一页| 全部无卡免费的毛片在线看| 五月婷婷综合在线视频| 国产成人精品免费视频大全五级| 天天爽免费视频| 欧美日韩亚洲国产| 精品国产网| 伊人久久综在合线亚洲2019| 国产国语一级毛片| 国产va在线观看| aaa国产一级毛片| 欧美一区二区人人喊爽| 国产成人综合日韩精品无码首页| 欧美天堂久久| 玖玖精品在线| 2022国产无码在线| 中文字幕在线欧美| 国产永久免费视频m3u8| 国产人成网线在线播放va| 国产成人精品视频一区二区电影 | 91精品久久久无码中文字幕vr| 亚洲国产AV无码综合原创| 亚洲天堂免费| 国产精品香蕉在线| 精品色综合| 亚洲国产亚综合在线区|