亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于OneNet與ESP8266EX的智能家居遠程控制器的設(shè)計與實現(xiàn)

        2020-03-13 08:58:14和海蓮
        智能物聯(lián)技術(shù) 2020年1期
        關(guān)鍵詞:模擬量遠程預(yù)警

        文 暉,和海蓮

        (1.蘭州石化職業(yè)技術(shù)學(xué)院,甘肅 蘭州 730060;2.昌吉職業(yè)技術(shù)學(xué)院,新疆 昌吉 831100)

        0 引言

        在智能家居的應(yīng)用中,如家庭燃氣泄漏監(jiān)控、火災(zāi)預(yù)警、家電遠程開開關(guān)控制等,既經(jīng)濟實惠又能實現(xiàn)預(yù)警功能的控制器相對較少。本文設(shè)計的控制器,不需要專門的物聯(lián)網(wǎng)網(wǎng)關(guān),減少設(shè)備開支與環(huán)節(jié),通過WI-FI直接與家庭無線網(wǎng)絡(luò)通訊,可以方便采集模擬量、開關(guān)量數(shù)據(jù),并在OneNet云平臺遠程進行開關(guān)量設(shè)備的手動與自動策略控制以及實現(xiàn)手機報警功能。

        1 控制器硬件設(shè)計

        1.1 通信模塊和系統(tǒng)主板

        一般來講,物聯(lián)網(wǎng)設(shè)備要接入到云平臺需要專門的網(wǎng)關(guān)進行協(xié)議轉(zhuǎn)換與數(shù)據(jù)轉(zhuǎn)發(fā)。除此之外,還可使用4G、5G、NB-IoT與Wi-fi等通信模塊直接與云平臺通信。但是除Wi-fi通信方式外,其他方式都需要向服務(wù)提供商付費,因此本系統(tǒng)選擇ESP8266EX作為通信模塊,該模塊提供了套度集成的Wi-Fi SoC解決案,擁有完整且自成成體系的Wi-Fi絡(luò)功能,能夠獨應(yīng)。當(dāng)ESP8266EX獨應(yīng)時,能夠直接從外接flash中啟動,只需通過SPI/SDIO接或UART接即可作為Wi-Fi適配器,應(yīng)到基于任何微控制器的硬件設(shè)計中。從結(jié)構(gòu)上講,ESP8266EX集成了天線開關(guān)、射頻balun、功率放器、低噪聲放器、濾波器和電源管理模塊,因此僅需少量的外部電路,并且能將PCB尺降到最。ESP8266EX還集成了增強版的32-bit內(nèi)核處理器,帶上SRAM,并可以通過IO外接傳感器和其他執(zhí)行設(shè)備。ESP8266EX的芯片原理如圖1所示。

        圖1 ESP8266EX芯片原理圖Fig.1 Chip principle of ESP8266EX

        本控制器中選擇由深圳某公司開發(fā)的ESP8266物聯(lián)網(wǎng)開發(fā)板作為系統(tǒng)主板。主板搭載由安信可生產(chǎn)的基于ESP8266EX的ESP-12F模組,ESP-12F模組的特點是3.3V電源供電、26MHz晶振、32Mbit外部FLASH、PCB板載天線。主板不使用額外的單片機作為處理器,因此不需要使用AT指令,而是通過ESP8266EX提供的SDK編程,將編譯好的程序存放在外部FLASH中,ESP8266EX讀取程序并執(zhí)行。ESP8266的I/O外設(shè)引腳原理圖如圖2所示。

        圖2 ESP8266的I/O外設(shè)引腳原理圖Fig.2 Schematic diagram of I/O peripheral pins for ESP8266

        1.2 主板與傳感器供電

        主板通過Mini USB口5V供電,再通過穩(wěn)壓轉(zhuǎn)換電路提供5V與3.3V兩種電壓分別為外圍電路與ESP8266模組供電。該主板提供了冗余的電源引腳,外接傳感器可以直接通過主板的電源引腳供電。

        1.3 模塊功能分配

        1.3.1模擬量采集

        (1)ADC模擬量采集

        ESP8266模塊有一路ADC引腳,可以采集一個模擬量。但外部電壓量程是0~1.0V,內(nèi)部參考電壓是3.3V,使用時需要在外圍電路串聯(lián)分壓電阻,分辨率是1/1024V。連接可燃氣體傳感器后可以用來采集可燃氣體濃度信號。

        (2)DHT11溫濕度采集

        GPIO5引腳可以連接DHT11溫濕度傳感器,采用3.3V電壓供電,使用單根總線與單片機進行雙向的串行數(shù)據(jù)傳輸,信號傳輸距離可達20m以上。非常適用于對精度和實時性要求不高的溫濕度測量場合??梢圆杉?%~95%RH范圍內(nèi)濕度、-20℃~60℃范圍內(nèi)的溫度。

        1.3.2 開光量采集與控制

        ESP8266共有16個通IO,除4~6個用于Flash通訊、GPIO0、GPIO2、GPIO15用于復(fù)位與下載功能外,可選擇如表1所示的引腳用于開關(guān)量采集與控制。

        表1 開關(guān)量GPIO引腳選用Table 1 Switch GPIO pin selection

        2 控制軟件設(shè)計與開發(fā)

        2.1 ESP8266 EX SDK

        編程采用安信可開發(fā)環(huán)境。軟件開發(fā)可以選擇Non-OS SDK與RTOS兩種方式。Non-OS SDK是不基于操作系統(tǒng)的SDK,提供IOT_Demo和AT的編譯。Non-OS SDK主要使定時器和回調(diào)函數(shù)的方式實現(xiàn)各個功能事件的嵌套,達到特定條件下觸發(fā)特定功能函數(shù)的目的。Non-OS SDK使espconn接實現(xiàn)網(wǎng)絡(luò)操作,用戶需要按照espconn接的使用規(guī)則進行軟件開發(fā)。RTOS版本SDK使FreeRTOS系統(tǒng),引入OS多任務(wù)處理的機制,用戶可以使用FreeRTOS的標(biāo)準(zhǔn)接實現(xiàn)資源管理、循環(huán)操作、任務(wù)內(nèi)延時、任務(wù)間信息傳遞和同步等面向任務(wù)流程的設(shè)計式。

        在本方案中,外設(shè)較少,功能要求相對簡單,因此選擇Non-OS SDK開發(fā)方式,采用C語言編程。

        2.2 控制軟件設(shè)計

        修改安信可案例工程,生成當(dāng)前工程模板。ESP8266的SDK編程是基于內(nèi)核回調(diào)的方式。用戶只需要user_main.c文件中函數(shù)void user_init(void)中進行內(nèi)核的初始化,主要包含IO、定時器、中斷的初始化、網(wǎng)絡(luò)參數(shù)設(shè)置等工作。Non-OS SDK使用四種類型的函數(shù):

        第一,應(yīng)用函數(shù):被調(diào)用。使用時加建議添加ICACHE_FLASH_ATTR宏。相應(yīng)程序?qū)⒋娣旁趂lash中,被調(diào)用時才加載到cache運。如果添加了IRAM_ATTR宏的函數(shù),則會在上電啟動時就加載到iRAM中,但這樣會增加單片機內(nèi)存開銷。主要用到的應(yīng)用函數(shù)有:

        wifi_set_opmode (STATION_MODE);//設(shè) 置WiFi的station模式

        spi_flash_read();//讀出falsh中的SSID/PASS參數(shù)

        system_init_done_cb(systemStartDone)//系統(tǒng)啟動完成(參數(shù)為回調(diào)函數(shù))

        os_timer_setfn(&timer,SoftTimerCb,NULL);//設(shè)置軟件定時器

        第二,回調(diào)函數(shù):系統(tǒng)某事件發(fā)生時會調(diào)用回調(diào)函數(shù)。本系統(tǒng)用到大量的回調(diào)函數(shù),要編寫回調(diào)函數(shù),用戶首先需要使用相應(yīng)的register_cb API注冊回調(diào)函數(shù)。主要用到的回調(diào)函數(shù)有:

        systemStartDone()//系統(tǒng)啟動完成后的回調(diào)函數(shù)

        smartconfig_done()//配網(wǎng)完成后的回調(diào)函數(shù)

        數(shù)據(jù)采集、發(fā)送數(shù)據(jù)、發(fā)送心跳報文等各類定時器的回調(diào)函數(shù)。

        第三,用戶任務(wù):用戶根據(jù)具體應(yīng)用需求編寫的自定義函數(shù)。本控制器中主要編寫的用戶函數(shù)有:

        Init_GPIO();//IO配置

        Init_ADC();//ADC配置

        uart_init(115200,115200);//調(diào)試串口的初始化

        smartconfig_start(smartconfig_done);//第 三 方配網(wǎng)函數(shù)(參數(shù)為回調(diào)函數(shù))

        第四,中斷服務(wù)程序(Interrupt Service Routines,ISR):發(fā)硬件中斷時會調(diào)這些函數(shù)。當(dāng)使能中斷時,必須注冊相應(yīng)的中斷處理函數(shù)。ISR必須添加IRAM_ATTR。

        本控制器可用于家庭廚房燃氣泄漏、火災(zāi)預(yù)警與家電(空調(diào)、電飯煲)電源開關(guān)控制的情景。在預(yù)警模式下,可以通過OneNet平臺發(fā)送預(yù)警信息到手機,也可以遠程發(fā)送開關(guān)量控制指令到家電開關(guān)控制繼電器。系統(tǒng)軟件設(shè)計流程圖如圖3所示。

        圖3 設(shè)備層應(yīng)用軟件算法設(shè)計Fig.3 Application software algorithm design at the device layer

        2.3 EDP協(xié)議編程實現(xiàn)及OneNet云平臺應(yīng)用建立

        OneNet平臺可以實現(xiàn)多種協(xié)議設(shè)備接入,如MQTT、Modbus、HTTP、EDP、TCP等協(xié)議[1]。EDP(Enhanced Device Protocol增強設(shè)備協(xié)議)是OneNet平臺根據(jù)物聯(lián)網(wǎng)特點專門定制的完全公開的基于TCP的協(xié)議,可以廣泛應(yīng)用到智能家居、交通、物流、能源以及其他行業(yè)應(yīng)用中[2],使用簡單、方便。

        本控制器實際就是一個物聯(lián)網(wǎng)設(shè)備,在OneNet平臺創(chuàng)建好賬戶、產(chǎn)品與設(shè)備信息后,平臺會生成APIkey,之后就可以在控制器中利用EDP的SDK編程實現(xiàn)對應(yīng)功能。EDP SDK主要包含Edpkit.h與Edpkit.c,利用其中的接口進行EDP連接、報文發(fā)送等。EDP SDK主要實現(xiàn)的功能有:

        ①申請與釋放內(nèi)存

        ②兩種登錄包、心跳包的組裝

        ③連接與下發(fā)命令、功能解包

        ④封裝協(xié)議頭與功能包

        EDP SDK中實現(xiàn)了EDP協(xié)議,通過對相應(yīng)API的調(diào)用就可以實現(xiàn)通過EDP協(xié)議的登錄、組包、解包功能。EDP協(xié)議報文消息格式如表2所示。

        表2 EDP協(xié)議報文消息格式Talbe 2 EDP protocol message information format

        基于ESP8266的模塊編碼、編譯完成后,生成eagle.flash.bin(0x00000)文件(括號內(nèi)為flash固件燒寫地址)、eagle.irom0text.bin(0x10000)文件。通過串口利用燒寫工具ESP_DOWNLOAD_TOOL_V2.4下載到單片機后運行。

        在OneNet平臺還需要創(chuàng)建可視化界面,有基于PC與手機的界面,方便手機與PC操作。其中的可視化控件通過拖拉添加布局,控件與設(shè)備端變量關(guān)聯(lián),很容易實現(xiàn)顯示與開關(guān)命令操作。OneNet云臺與設(shè)備端的協(xié)議實現(xiàn)流程圖如圖4所示。

        圖4 OneNET平臺及EDP協(xié)議實現(xiàn)流程圖Fig.4 Flow chart of OneNet platform and EDP protocol implementation

        3 系統(tǒng)測試

        3.1 控制器與OneNET連接測試

        控制器軟件燒寫完畢后加電啟動,使用手機連接到當(dāng)前Wi-Fi熱點,打開安信可專用的配網(wǎng)軟件配網(wǎng)。在OneNet云平臺可查看設(shè)備在線狀態(tài)。由圖5所示可知,當(dāng)前控制器設(shè)備已經(jīng)在線,說明控制器與云平臺處于連接并通信的狀態(tài)。

        圖5 控制器連接OneNet云臺狀態(tài)Fig.5 Status of the controller connected to the OneNet gimbal

        3.2 數(shù)據(jù)采集與控制測試

        進入OneNet云臺應(yīng)用界面,加載控件、關(guān)聯(lián)設(shè)備變量。由圖6所示,可以采集到濕度實時數(shù)據(jù),連接不同的模擬量傳感器就可以采集其他數(shù)據(jù)。點擊開關(guān)控件就能遠程控制控制器上繼電器的開合狀態(tài),進而達到控制家電電源開關(guān)的效果。

        圖6 模擬量數(shù)據(jù)與遠程開關(guān)控制界面Fig.6 Analog data and remote switch control interface

        3.3 遠程預(yù)警測試

        進入觸發(fā)器管理,設(shè)置觸發(fā)變量、觸發(fā)規(guī)則、信息接受方式。OneNet平臺提供免費郵件發(fā)送預(yù)警信息服務(wù),短信息則需要服務(wù)費用。本控制器測試階段使用郵箱接收,當(dāng)達到指定可燃氣體閾值、濕度閾值會自動發(fā)送郵件,手機就會有新信息提示,從而達到預(yù)警功能,同時也可遠程開、關(guān)繼電器,從而達到遠程控制設(shè)備。

        猜你喜歡
        模擬量遠程預(yù)警
        讓人膽寒的“遠程殺手”:彈道導(dǎo)彈
        軍事文摘(2022年20期)2023-01-10 07:18:38
        遠程工作狂綜合征
        英語文摘(2021年11期)2021-12-31 03:25:18
        法國發(fā)布高溫預(yù)警 嚴(yán)陣以待備戰(zhàn)“史上最熱周”
        基于FPGA的多通道模擬量采集/輸出PCI板卡的研制
        遠程詐騙
        園林有害生物預(yù)警與可持續(xù)控制
        關(guān)于600MW火電機組模擬量控制系統(tǒng)設(shè)計和研究
        電子制作(2016年21期)2016-05-17 03:53:12
        機載預(yù)警雷達對IFF 的干擾分析
        模擬量輸入式合并單元測試儀的研制
        預(yù)警個啥
        小說月刊(2014年11期)2014-04-18 14:12:28
        精品少妇人妻成人一区二区| 久久无码av一区二区三区| 亚洲欧洲日本综合aⅴ在线| 国产aⅴ夜夜欢一区二区三区| 一本久久a久久精品综合| 蜜桃91精品一区二区三区| 日韩精品一区二区午夜成人版 | 日韩av无码中文字幕| 樱花草在线播放免费中文| 老汉tv永久视频福利在线观看| 久久综合这里只有精品| 久久亚洲道色综合久久| 亚洲日韩av无码中文字幕美国| 亚洲日韩一区二区一无码| 福利视频自拍偷拍视频| 久久精品国产亚洲超碰av| 天天鲁一鲁摸一摸爽一爽| 日韩五十路| 中文字幕亚洲高清精品一区在线| 亚洲av色欲色欲www| 久久人人爽人人爽人人片av麻烦| 不卡无毒免费毛片视频观看| 亚洲国产av综合一区| 在线观看成人无码中文av天堂| 怡春院欧美一区二区三区免费 | 女同在线网站免费观看| 久久久久久欧美精品se一二三四| 宝贝把腿张开我要添你下边动态图 | 国产黄色精品高潮播放| 亚洲第一幕一区二区三区在线观看| 亚洲欧美日韩在线不卡| 人妻少妇精品无码专区二 | 国产精品成人av一区二区三区| 国产成人精品a视频| 91精彩视频在线观看| 熟妇人妻丰满少妇一区| 中文字幕av中文字无码亚 | 欧美日韩区1区2区3区| 少妇人妻系列中文在线| 欧美大片aaaaa免费观看| 国产精美视频|