• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      物聯(lián)網(wǎng)智能插板設(shè)計之硬件程序設(shè)計

      2022-04-25 03:37:38楊永明徐海霞
      物聯(lián)網(wǎng)技術(shù) 2022年4期
      關(guān)鍵詞:插板開發(fā)板標號

      楊永明,徐海霞

      ( 1.西安建筑科技大學(xué) 理學(xué)院,陜西 西安 710055;2.寧夏醫(yī)科大學(xué)圖書館,寧夏 銀川 750004)

      0 引 言

      通過網(wǎng)絡(luò)對家中設(shè)備實行遠程控制或者語音控制,相比普通家居具有更多優(yōu)勢。具備遠程控制、語音控制、自動報警、在線監(jiān)控、自動通風等功能的智能家居發(fā)展迅速,并且依舊處于探索階段。通過物聯(lián)網(wǎng)技術(shù)開發(fā)智能家居不僅是緊跟社會發(fā)展的明智之舉,也是搶占市場發(fā)展先機的必由之路。

      1 研究內(nèi)容

      通過學(xué)習物聯(lián)網(wǎng)技術(shù)、程序編程語言編寫簡易的硬件程序,實現(xiàn)硬件與軟件連接,設(shè)計制作具有遠程控制功能的智能插板。

      通過硬件將物體接入互聯(lián)網(wǎng),再由硬件芯片通過各種通信協(xié)議與微控制器和微處理器通信,由相應(yīng)的控制器控制設(shè)備運轉(zhuǎn)、連接移動端設(shè)備或者PC端,移動端通過云端控制器實現(xiàn)物體的遠程控制。本次設(shè)計包括云平臺的搭建、硬件程序設(shè)計和移動端設(shè)計三部分。下面主要介紹介紹硬件程序設(shè)計。

      2 硬件端

      選擇使用由安信公司基于ESP8266模塊設(shè)計的ESP8266-nodeMCU開發(fā)板,雖然ESP8266-nodeMCU每個引腳都有明確的標號,且有排插,便于線路連接,但ESP8266-nodeMCU開發(fā)板上的引腳標號與ESP8266模塊的引腳功能并不匹配,所以需要了解ESP8266-nodeMCU開發(fā)板引腳匹配的ESP8266模塊的引腳功能。以GPIO開頭的引腳標號代表實際ESP8266模塊的引腳標號,D開頭的引腳代表ESP8266-nodeMCU開發(fā)板上的引腳標號。在編寫代碼時,假如使用“digitalWrite(2,HIGH)”語句,表示改變引腳GPIO2電平為高,對應(yīng)的開發(fā)板引腳為D4;假如使用“digitalWrite(D2,HIGH)”語句,表示改變D2引腳的電平為高。

      2.1 Arduino環(huán)境搭建

      使用Arduino IDE軟件對ESP8266-nodeMCU開發(fā)板進行程序編譯,當完成Arduino IDE軟件的下載之后需要更改開發(fā)板的型號以及連接的串口。首先打開計算機管理界面,進入設(shè)備管理器界面,查看電腦連接ESP8266-nodeMCU開發(fā)板使用的端口。之后進入Arduino軟件,在其工具欄中找到“端口”一欄,選擇ESP8266-nodeMCU開發(fā)板使用的端口,然后在此工具欄中的開發(fā)板中選擇ESP8266-nodeMCU。

      2.2 硬件程序設(shè)計

      根據(jù)代碼實現(xiàn)的功能,可以將程序代碼大概分為6個部分,分別是:定義頭文件、WiFi初始化、接口定義、循環(huán)檢測、控制程序以及上傳數(shù)據(jù)。

      2.2.1 頭文件定義程序

      此部分程序用于定義需要用到的頭文件以及信息。WiFi_SSID和WiFi_PASSWD是定義ESP8266開發(fā)板連接的WiFi名稱和密碼,只能連接PRODUCT_KEY、DEVICE_NAME以及DEVICE_SECRET定義之前云端搭建時創(chuàng)建的ESP8266設(shè)備的阿里云三元組信息。ALINK_TOPIC_PROP_SET定義程序接收信息時用到的Topic,ALINK_TOPIC_PROP_POST定義ESP8266開發(fā)板上傳數(shù)據(jù)使用的Topic信息。其中,/sys/a1GccfpSkGH/esp8266/thing/service/property/set和/a1GccfpSkGH/esp8266/user/1均來自阿里云物聯(lián)網(wǎng)平臺中的云產(chǎn)品流轉(zhuǎn)規(guī)則Topic,其中一個Topic具有發(fā)布權(quán)限,另一個Topic具有訂閱權(quán)限。

      2.2.2 WiFi初始化程序

      WiFi初始化需調(diào)用ESP8266 WiFi庫的函數(shù)。這部分程序定義WiFi如何通過調(diào)用函數(shù)實現(xiàn)連接。

      2.2.3 接口定義程序

      該部分程序主要用來定義需要用到的ESP8266-nodeMCU開發(fā)板上的引腳功能,此程序?qū)?號引腳定義為輸出引腳,并把引腳的初始電平定義為高電平。由于本次設(shè)計使用的繼電器為低電平,所以引腳電平為高,使繼電器處于關(guān)閉狀態(tài),只有ESP8266接收到開關(guān)信號時電平變?yōu)榈碗娖讲拍苡|發(fā)繼電器工作。此處還需要注意的是,定義的引腳為ESP8266模塊上的GPIO2號引腳,在連接硬件電路時,ESP8266-nodeMCU開發(fā)板上的引腳不能選擇D2引腳,需要選擇開發(fā)板上標號為D4的引腳?!癷nit_WiFi(WiFi_SSID,WiFi_PASSWD)”用于調(diào)用WiFi初始化函數(shù),mqttClient.setCallback(mqtt_callback)語句是調(diào)用之前PubSubClient.h文件中的mqttClient函數(shù),可實現(xiàn)與阿里云端的連接。

      2.2.4 循環(huán)檢測函數(shù)

      程序主要調(diào)用了mqtt函數(shù)中的loop循環(huán)函數(shù),該函數(shù)主要用于對當前mqtt的連接狀態(tài)進行檢查,如果檢測到連接斷開,程序會自動運行連接函數(shù),重新連接mqtt。該函數(shù)能夠保證設(shè)備網(wǎng)絡(luò)處于連接狀態(tài)。

      2.2.5 控制程序

      這部分代碼可實現(xiàn)ESP8266開發(fā)板的具體功能。前半段代碼解析需由移動端發(fā)送Json數(shù)據(jù)。阿里云使用Topic進行設(shè)備之間的數(shù)據(jù)傳輸,而Topic中的數(shù)據(jù)為JSON格式,解析之后將數(shù)據(jù)存進WeChat_data,如果是數(shù)據(jù)是1,則GPIO2引腳置為低電平,使繼電器打開,插板電路接通;如果數(shù)據(jù)是0,則GPIO2引腳置為高電平,繼電器關(guān)閉,插板電路斷開。

      2.2.6 數(shù)據(jù)上傳程序

      此部分程序代碼用于將ESP8266中的數(shù)據(jù)寄存于Topic中,通過Topic向移動端發(fā)送,由移動端接收溫度與濕度數(shù)據(jù)。由于缺少溫度與濕度的檢測裝置以及相關(guān)傳感器,所以在程序中使用隨機數(shù)替代。

      3 結(jié) 語

      運用物聯(lián)網(wǎng)技術(shù)設(shè)計了智能插板,通過使用由上海樂鑫公司開發(fā)的WiFi8266模塊,使得硬件電路能夠連接WiFi,這無疑是物聯(lián)網(wǎng)運行的基礎(chǔ),而代碼功能的實現(xiàn)是硬件物聯(lián)網(wǎng)功能實現(xiàn)的核心。

      猜你喜歡
      插板開發(fā)板標號
      低位放頂煤液壓支架插板失效原因分析與安裝技術(shù)研究
      綜放工作面低位放頂煤液壓支架安裝插板技術(shù)研究
      低位放頂煤液壓支架插板與尾梁鎖固方式設(shè)計
      Microchip最新推出兩款PIC32 Curiosity開發(fā)板
      非連通圖2D3,4∪G的優(yōu)美標號
      淺析單片機開發(fā)板的設(shè)計與制作
      電子制作(2017年22期)2017-02-02 07:10:14
      高真空插板閥工作狀態(tài)診斷與監(jiān)測方法研究
      真空與低溫(2015年4期)2015-06-18 10:47:18
      非連通圖D3,4∪G的優(yōu)美標號
      非連通圖(P1∨Pm)∪C4n∪P2的優(yōu)美性
      Mouser為您呈上開發(fā)關(guān)鍵之STMicroelectronics Nucleo開發(fā)板
      南充市| 冕宁县| 商都县| 西宁市| 朝阳区| 宁武县| 鲁山县| 临江市| 承德县| 温泉县| 襄垣县| 平安县| 蒙阴县| 贺州市| 博白县| 新乐市| 襄樊市| 团风县| 华安县| 大港区| 聂荣县| 高淳县| 宝鸡市| 龙陵县| 奉贤区| 赫章县| 金山区| 中阳县| 深圳市| 静海县| 临泽县| 砚山县| 东山县| 子长县| 东海县| 凤山市| 平遥县| 黄骅市| 咸宁市| 图们市| 彰武县|