技術(shù)報告基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計實現(xiàn)_第1頁
技術(shù)報告基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計實現(xiàn)_第2頁
技術(shù)報告基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計實現(xiàn)_第3頁
技術(shù)報告基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計實現(xiàn)_第4頁
技術(shù)報告基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計實現(xiàn)_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、計劃類別 項目編號 項目技術(shù)報告課題名稱 項目主持人 承擔(dān)單位 題目:基于NodeMCU固件平臺的RGB三色燈遠(yuǎn)程控制設(shè)計與實現(xiàn)隨著無線通信技術(shù)的快速發(fā)展,基于WIFI無線通信的物聯(lián)網(wǎng)應(yīng)用應(yīng)運而生。本文設(shè)計一種基于ESP8266的WIFI通信模塊在NodeMCU物聯(lián)網(wǎng)固件平臺上,利用Lua腳本語言編程實現(xiàn)RGB三色燈的無線控制功能,并通過ESP8266的WIFI通信模塊的STA通信方式連接路由器和云平臺服務(wù)器進行通信,實現(xiàn)云平臺遠(yuǎn)程無線控制。實驗結(jié)果表明:該系統(tǒng)操作方便和可靠性強,應(yīng)用范圍廣等優(yōu)勢,具有一定的應(yīng)用前景。關(guān)鍵詞:ESP8266;NodeMCU;WIFI;RGB三色燈1 引言(In

2、troduction)隨著無線網(wǎng)絡(luò)通信技術(shù)和自動控制技術(shù)的迅速發(fā)展,人們對遠(yuǎn)程智能控制產(chǎn)品的開發(fā)和應(yīng)用需求不斷擴大,希望借助WIFI無線通信方式與智能化產(chǎn)品交互,并通過云平臺實現(xiàn)對遠(yuǎn)程設(shè)備的無線控制。本文提出一種在ESP8266WiFI芯片之上運行NodeMCU固件平臺,利用Lua腳本語言實現(xiàn)RGB三色燈的遠(yuǎn)程控制設(shè)計方案。通過NodeMCU物聯(lián)網(wǎng)固件平臺上的應(yīng)用開發(fā),使ESP8266WIFI模塊開機自動連接路由器,連接物聯(lián)網(wǎng)云平臺服務(wù)器,登錄設(shè)備,監(jiān)聽服務(wù)器發(fā)送消息,并根據(jù)不同的消息遠(yuǎn)程控制RGB三色燈。2 總體設(shè)計(The overall design)為了提高傳統(tǒng)燈光照明控制系統(tǒng)的靈活性

3、和可擴展性,使燈光照明控制系統(tǒng)更加智能化,本系統(tǒng)以ESP8266WIFI無線通信處理模塊為載體,通過運行含有對ESP8266WIFI硬件操作API函數(shù)等相關(guān)功能1,以構(gòu)建NodeMCU固件平臺,然后利用Lua腳本語言分別ESP8266WIFI無線通信處理模塊的WIFI路由功能、RGB三色燈的輸出引腳控制功能,以及和云平臺服務(wù)器進行網(wǎng)絡(luò)數(shù)據(jù)通信功能進行編程,最后將ESP8266WIFI無線通信處理模塊連接路由器,實現(xiàn)通過云平臺服務(wù)器遠(yuǎn)程控制硬件設(shè)備。系統(tǒng)的整體架構(gòu)如圖1所示。3 系統(tǒng)的硬件設(shè)計(The hardware design of thesystem)3.1 NodeMCU固件平臺的硬件

4、設(shè)計NodeMCU固件平臺的硬件載體是ESP8266WIFI無線通信模塊,它是一款超低功耗的UART-WIFI透傳模塊,其硬件接口豐富,可支持UART、IIC、PWM、GPIO和ADC等接口,主要實現(xiàn)串口透傳2,PWM調(diào)控及GPIO控制等功能,另外ESP8266模塊支持STA/AP/STA+AP三種通信模式,本文主要使用GPIO控制功能和STA模式,通過ESP8266模塊可將用戶的物理設(shè)備連接到WIFI無線網(wǎng)絡(luò)上,再通過路由器連接互聯(lián)網(wǎng),最后手機或電腦通過互聯(lián)網(wǎng)實現(xiàn)對設(shè)備的遠(yuǎn)程控制,ESP8266無線通信模塊硬件連接如圖2所示。3.2 RGB三色燈硬件設(shè)計RGB三色燈硬件模塊主要采用5050R

5、GB共陽發(fā)光二極管,其工作電壓紅色為2.02.2V、藍(lán)色為3.03.3V、綠色為3.03.3V、工作電流為60mA,發(fā)光角度很寬,可達(dá)到120度3。這里將RGB三色燈中的三個引腳通過電阻連接至3.3V,另外三個引腳分別連接至ESP8266無線通信模塊中的GPIO14、GPIO13和GPIO12三個引腳,一旦將GPIO14、GPIO13和GPIO12三個引腳上的任何一個引腳輸出低電平,都將點亮RGB中對應(yīng)的發(fā)光二極管4。RGB三色燈硬件連接電路如圖3所示。4 系統(tǒng)的軟件設(shè)計(System software design)系統(tǒng)的軟件部分主要是利用Lua腳本語言在NodeMCU固件平臺上進行腳本編寫

6、實現(xiàn)相關(guān)功能,這里包括WIFI路由連接功能、RGB三色燈的輸出引腳控制功能、WIFI模塊網(wǎng)絡(luò)數(shù)據(jù)通信功能,以及云平臺服務(wù)器數(shù)據(jù)通信功能。4.1 WIFI路由連接功能程序設(shè)計為了能夠讓ESP8266無線通信模塊連接WIFI無線路由器,這里需要利用Lua腳本語言編寫WIFI路由連接程序,主要包括WIFI工作模式設(shè)置,station模式下的ssid和password設(shè)置,以及通過開啟定時器進行station模式下路由AP連接4,如果連接WIFI路由成功,則通過無線路由器的DHCP功能獲取客戶端IP地址5,具體通信流程如圖4所示。WIFI路由連接主要功能代碼如下:wifi.setmode(wifi.S

7、TATION)/設(shè)置WIFI工作模式wifi.sta.config(無線網(wǎng)名稱,密碼)/配置SSID和Passwordwifi.sta.connect()/連接路由tmr.alarm(0,1000,tmr.ALARM_AUTO,function()/開啟定時器if wifi.sta.getip()=nil then/連接路由失敗print(IPunavaiable,Waiting.)else tmr.stop(0)/連接路由成功,關(guān)閉定時器print(Configdone,IPis.wifi.sta.getip()/獲取IP地址4.2 RGB三色燈的輸出引腳控制功能程序設(shè)計由于ESP8266模

8、塊所運行的NodeMCU固件中含有對GPIO的輸入、輸出和中斷三種模式的設(shè)置選擇6,為了利用Lua腳本語言控制任意一個燈的開和關(guān)兩個狀態(tài),這里需要在Lua編程中將ESP8266無線通信模塊中的GPIO14、GPIO13和GPIO12三個物理引腳映射NodeMCU固件中LEDB(IO5)、LEDR(IO7)和LEDG(IO6)三個引腳,并選擇為輸出模式。另外,在系統(tǒng)啟動初始化階段,為了將RGB三色燈都處于關(guān)閉狀態(tài),根據(jù)前面的電路連接,需要將這三個引腳的IO口初始化為高電平輸出,主要功能代碼如下: gpio.mode(LEDR,gpio.OUTPUT);/將紅色燈所對應(yīng)的NodeMCU引腳設(shè)置輸出

9、模式gpio.mode(LEDG,gpio.OUTPUT);/將綠色燈所對應(yīng)的NodeMCU引腳設(shè)置輸出模式gpio.mode(LEDB,gpio.OUTPUT);/將藍(lán)色燈所對應(yīng)的NodeMCU引腳設(shè)置輸出模式gpio.write(LEDR, gpio.HIGH);/將紅色燈所對應(yīng)NodeMCU引腳輸出為高電平,代表不點亮gpio.write(LEDG, gpio.HIGH);/將綠色燈所對應(yīng)NodeMCU引腳輸出為高電平,代表不點亮gpio.write(LEDB, gpio.HIGH);/將藍(lán)色燈所對應(yīng)NodeMCU引腳輸出為高電平,代表不點亮4.3 WIFI模塊網(wǎng)絡(luò)數(shù)據(jù)通信功能程序設(shè)計在

10、物聯(lián)網(wǎng)快速發(fā)展的時代,設(shè)備與平臺服務(wù)器的連接交互的信息越來越多,為了將ESP8266無線通信模塊連接RGB三色燈之后,通過TCP方式連接云平臺服務(wù)器,并最終實現(xiàn)智能手機遠(yuǎn)程控制,這里需要使用帶有cjson數(shù)據(jù)通信處理協(xié)議的NodeMCU固件實現(xiàn)數(shù)據(jù)信息傳輸與交互7,固件中的cjson是在物聯(lián)網(wǎng)領(lǐng)域數(shù)據(jù)傳輸中較為常用的協(xié)議,這里智能手機發(fā)出的控制命令通過云端服務(wù)器之后,云服務(wù)器以cjson格式將數(shù)據(jù)傳輸至ESP8266無線通信模塊中,通過decode函數(shù)進行解碼,轉(zhuǎn)換成數(shù)字、字符串或者table數(shù)據(jù)類型的控制命令實現(xiàn)對設(shè)備的控制8,然后將控制狀態(tài)信息(如燈已打開或者關(guān)閉狀態(tài)信息)通過encode

11、()函數(shù)進行編碼,將數(shù)字、字符串或者table數(shù)據(jù)類型轉(zhuǎn)換成cjson格式傳輸至云端服務(wù)中,具體WIFI模塊網(wǎng)絡(luò)數(shù)據(jù)通信流程如圖5所示。4.4 云平臺服務(wù)器數(shù)據(jù)通信本文選用貝殼物聯(lián)云平臺作為云端服務(wù)器,它的通信方式主要以TCP協(xié)議為主,UDP協(xié)議為輔的形式進行通訊。在TCP協(xié)議的基礎(chǔ)上,可以直接使用TCP或者websocket建立長連接,定時發(fā)送心跳數(shù)據(jù),保持設(shè)備在線,在線期間設(shè)備與服務(wù)器可進行Json字符串格式數(shù)據(jù)進行通訊,并實現(xiàn)實時更新,這里使用的用戶與設(shè)備間溝通指令格式如下:M:say,ID:xx1,C:xx2n,參數(shù)說明如下:M:固定(Method)。Say:固定,溝通指令。ID:固定

12、。xx1:可變,發(fā)送目標(biāo)的唯一通訊ID。C:固定(content)。xx2:可變(數(shù)據(jù)類型自定,符合Json字符穿要求即可),發(fā)送指令內(nèi)容本系統(tǒng)主要功能代碼如下:Local function run()localcu=net.createConnection(net.TCP)/通過TCP連接云平臺服務(wù)器cu:on(receive,function(cu,c)/收到云平臺服務(wù)器cjson格式的數(shù)據(jù)信息r=cjson.decode(c)/解碼cjson格式數(shù)據(jù)if r.M=saythenif r.C=playthengpio.write(LEDG,gpio.LOW)/通過控制引腳,點亮RGB三色燈

13、中的綠色燈ok,played=pcall(cjson.encode,M=say,ID=r.ID,C=LEDturnon?。?將燈狀態(tài)信息編碼為cjson格式數(shù)據(jù)cu:send(played.n)/發(fā)送至云平臺服務(wù)器endendend)5 系統(tǒng)測試(The system test)為了驗證WIFI模塊TCP連接云平臺服務(wù)器之后,Android手機通過2G/3G連接云服務(wù)器進行遠(yuǎn)程控制RGB三色燈,這里選擇貝殼物聯(lián)云平臺,手機端APP通過發(fā)出“Play”或者“Stop”,遠(yuǎn)程控制開燈和關(guān)燈,如圖6所示的手機端控制界面。6 結(jié)論(Conclusion)文中基于ESP8266WiFI芯片上運行的Nod

14、eMCU固件平臺,通過Lua腳本語言編程及云平臺通信,實現(xiàn)移動終端設(shè)備通過2G/3G方式遠(yuǎn)程控制RGB三色燈。實驗結(jié)果表明:該系統(tǒng)操作方便和通信可靠,具有一定的應(yīng)用前景。參考文獻(References)1 Komkrit Chooruang,Pongpat Mangkalakeeree.Wireless Heart Rate Monitoring System Using MQTTJ.Procedia Computer Science,2016,86:160-163.2 Pavel Masek,et al.Implementation of True IoT Vision:Survey on Enabling Protocols and Hands-On ExperienceJ.International Journal of Distributed Sensor Networks,2016,2016:1-18.3 T.A.Abdulrahman,et al.Design,Specification and Implementation of a Distributed Home Automation SystemJ.Procedia Computer Science,2016,94:473-478.4 姜仲,

溫馨提示

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

評論

0/150

提交評論