《物聯網大數據采集與處理》 課件 第2章 物聯網數據采集_第1頁
《物聯網大數據采集與處理》 課件 第2章 物聯網數據采集_第2頁
《物聯網大數據采集與處理》 課件 第2章 物聯網數據采集_第3頁
《物聯網大數據采集與處理》 課件 第2章 物聯網數據采集_第4頁
《物聯網大數據采集與處理》 課件 第2章 物聯網數據采集_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第二章物聯網數據采集技能目標能夠使用NodeMCU和常見傳感器組建一個簡單的物聯網環(huán)境。能夠部署物聯網數據采集所需要的軟件開發(fā)環(huán)境。能夠進行NodeMCU編程。本章任務學習本章,讀者需要完成以下任務。任務2.1組建物聯網環(huán)境。任務2.2部署軟件開發(fā)環(huán)境。任務2.3NodeMCU編程。任務1組建物聯網環(huán)境01【任務描述】了解傳感器的定義、組成部分、種類及應用領域;掌握通過NodeMCU連接傳感器,組建物聯網環(huán)境的方法,使用NodeMCU和常見傳感器組建一個簡單的物聯網環(huán)境。任務1組建物聯網環(huán)境01【關鍵步驟】(1)認識傳感器,了解傳感器的定義、組成部分、種類及應用領域。(2)使用杜邦線連接NodeMCU、DHT11溫濕度傳感器和人體紅外傳感器的對應引腳,組建一個簡單的物聯網環(huán)境。傳感器(Sensor)是一種能夠檢測物理量、化學量、生物量等各種信號的裝置

,將這些信號轉化為電信號或其他形式的信號并輸出。傳感器可以測量溫度、濕度、壓力、流量、位置、速度、加速度、重力、光強度、聲音、磁場、化學成分等。傳感器在現代化生產和科學研究中起著重要的作用,它能夠實現實時監(jiān)測和控制,可以提高生產效率和產品質量,保障人們的安全和健康。2.1.1

認識傳感器本小節(jié)分別以DHT11溫濕度傳感器和人體紅外傳感器為例演示如何利用NodeMCU連接傳感器,以組建一個簡單的物聯網環(huán)境,如圖所示。2.1.1

NodeMCU連接傳感器如圖所示,DHT11溫濕度傳感器有3個引腳,其中“+”引腳代表電源正極,接入NodeMCU的3.3v引腳處,“out”引腳代表數據輸出端口,在本示例中接入NodeMCU的D1引腳處,“-”代表傳感器接地引腳,將其接入NodeMCU的GND引腳即可。任務2部署軟件開發(fā)環(huán)境02【任務描述】在任務2.1中介紹了利用NodeMCU組建簡單物聯網環(huán)境的過程。本任務以Ubuntu系統(tǒng)為例,要求能夠獨立地安裝和配置EMQXBroker和ArduinoIDE,如圖所示任務2部署軟件開發(fā)環(huán)境02【關鍵步驟】(1)安裝和配置EMQXBroker。(2)安裝和配置ArduinoIDE。2.2.1

EMQXBroker從Github選擇、下載并安裝與操作系統(tǒng)版本一致的二進制包。Github網址為/emqx/emqx/releases2.2.1

EMQXBroker啟動EMQXBroker進入Web界面停止EMQXBroker2.2.2

安裝配置ArduinoIDE在Arduino官網下載最新版安裝包安裝文件安裝ArduinoIDE2.2.2

安裝配置ArduinoIDE安裝ArduinoIDE配置AdditionalboardsmanagerURLs打開ArduinoIDE,選擇“File”→“Preferences”。在打開的對話框的“AdditionalboardsmanagerURLs”輸入框中填寫以下鏈接:/stable/package_esp8266com_index.json2.2.2

安裝配置ArduinoIDE添加ESP8266相關開發(fā)板再次選中“Tools”→“Board:”ArduinoUno“”,選中“BOARDSMANAGER”開發(fā)板管理器,打開新的窗口。在開發(fā)板管理器上部的搜索欄輸入“esp8266”,搜索相關開發(fā)板。點擊“INSTALL”按鈕安裝,安裝完成后將開發(fā)板切換到NodeMCU1.0(ESP-12EModule),就可以使用ArduinoIDE對NodeMCU進行代碼開發(fā)及代碼燒寫操作了。2.2.2

安裝配置ArduinoIDE準備工作完成后可以在“File”→“example”中找到ESP8266相關示例程序,打開Blink示例程序,使用USB線連接電腦和NodeMCU,點擊ArduinoIDE中的上傳按鈕就可以將程序編譯燒寫到硬件中,測試ESP8266示例程序如圖所示。任務3NodeMCU編程03【任務描述】能夠對NodeMCU進行編程,以連接EMQXBroker;掌握讀取DHT11溫濕度傳感器數據的方法和示例;掌握使用PubSubClient庫向MQTT服務器的特定數據主題發(fā)布消息的方法及傳感器數據發(fā)布示例,并能融會貫通。任務3NodeMCU編程03【關鍵步驟】(1)對NodeMCU編程,以連接EMQXBroker。(2)掌握讀取DHT11溫濕度傳感器數據的方法和示例。(3)掌握傳感器數據發(fā)布示例。2.3.1

連接EMQXBroker(1)連接NodeMCU與計算機。EMQXBroker本質上是一個以MQTT協議實現的代理服務器,對其進行連接需要使用硬件端MQTT庫,這里選擇PubSubClient庫。NodeMCU已經集成了Wi-Fi芯片和協議棧,使用相關庫可以實現設備的Wi-Fi接入。(2)在ArduinoIDE中安裝PubSubClient庫。在NodeMCU連接硬件后,介紹如何在ArduinoIDE中安裝PubSubClient庫。依次打開“Sketch”→“IncludeLibrary”,在打開的菜單欄中點擊“LIBRARIEMANAGER”,打開包管理器。在頂部搜索欄中輸入庫名搜索安裝即可2.3.1

連接EMQXBroker(3)編寫代碼,連接EMQXBroker2.3.1

連接EMQXBroker2.3.1

連接EMQXBroker2.3.1

連接EMQXBroker這里需要注意的是,填寫的EMQXBroker代理

地址必須是通過Wi-Fi網絡可訪問的,可以在同一局域網下部署EMQXBroker(其部署過程已在2.2.1小節(jié)介紹過),也可以使用具有公網IP地址的云服務器進行搭建。2.3.1

連接EMQXBroker這里需要注意的是,填寫的EMQXBroker代理

地址必須是通過Wi-Fi網絡可訪問的,可以在同一局域網下部署EMQXBroker(其部署過程已在2.2.1小節(jié)介紹過),也可以使用具有公網IP地址的云服務器進行搭建。2.3.2

讀取傳感器數據示例本小節(jié)以接入DHT11溫濕度傳感器為示例,DHT11只需要一根數據線將其接入NodeMCU的D1口即可,傳感器正負極按照NodeMCU板載指示連接。(1)安裝開源社區(qū)提供的DHT相關庫。將傳感器按照正確的方式連接到NodeMCU引腳上后,安裝開源社區(qū)提供的DHT相關庫,以讀取DHT11溫濕度傳感器數據。具體而言,打開包管理窗口,搜索DHT,安裝DHTsensorlibrary庫。(2)編寫讀取DHT11溫濕度傳感器數據的代碼。2.3.2

讀取傳感器數據示例以下給出讀取DHT11溫濕度傳感器數據的示例代碼。2.3.2

讀取傳感器數據示例以下給出讀取DHT11溫濕度傳感器數據的示例代碼。如圖所示,運行程序后可以持續(xù)采集DHT11溫濕度傳感器的數據。2.3.3

發(fā)布傳感器數據示例讀取傳感器數據后,使用PubSubClient庫向MQTT服務器的特定數據主題發(fā)布消息即可實現傳感器數據上傳。(1)在ArduinoIDE中安裝ArduinoJson。本小節(jié)使用了一個新的包ArduinoJson,該包用于將變量序列化為json字符串,并通過MQTT協議發(fā)送到網絡中,具體安裝方式同上一小節(jié),此處不再贅述。(2)編寫和測試代碼。綜合前兩小節(jié)的內容可以通過以下代碼實現傳感器數據的上傳操作:2.3.3

發(fā)布傳感器數據示例2.3.3

發(fā)布傳感器數據示例2.3.3

發(fā)布傳感

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論