91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于ESP8266開(kāi)發(fā)板的遙控空調(diào)設(shè)計(jì)案例

454398 ? 來(lái)源:一板網(wǎng) ? 作者:風(fēng)箏 ? 2020-12-13 10:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們最近開(kāi)始研究ESP8266開(kāi)發(fā)板,而今天的項(xiàng)目將基于此WiFi模塊制作一個(gè)有趣的項(xiàng)目。我們將搭建一個(gè)基于ESP8266的WiFi空調(diào)遙控器。雖然此項(xiàng)目可以適應(yīng)任何使用遙控器的設(shè)備,但我們將使用它來(lái)控制空調(diào)。

通常,每個(gè)人離開(kāi)家時(shí)都會(huì)關(guān)掉家里的所有電器,包括空調(diào)。當(dāng)您回到家中時(shí),溫度將不會(huì)被調(diào)節(jié),并且空調(diào)需要一些時(shí)間才能達(dá)到所需的溫度。但是,如果您離家只有幾個(gè)街區(qū),可以通過(guò)手機(jī)自動(dòng)控制空調(diào),會(huì)不會(huì)很酷?如果您無(wú)論身在何處都可以將其關(guān)閉,或者離開(kāi)屋子時(shí)仍將其打開(kāi)?如果可以與手機(jī)的位置同步并在家時(shí)總將其打開(kāi)?如果可以與手機(jī)的天氣信息同步?這些問(wèn)題啟發(fā)了今天的項(xiàng)目。

空調(diào)遙控器是怎么運(yùn)作的?

空調(diào)(AC)通常由遙控器控制,當(dāng)按下按鈕時(shí),該遙控器會(huì)向其發(fā)送紅外信號(hào)。 空調(diào)解釋信號(hào)并將其轉(zhuǎn)換為指令,以提高其溫度或降低其強(qiáng)度,關(guān)閉或開(kāi)啟等。因此,為了能夠使用我們自己的設(shè)備進(jìn)行控制,該設(shè)備必須能夠模仿并發(fā)送遙控器發(fā)送到AC的信號(hào)相同,因此,通過(guò)按應(yīng)用程序上的“ ON”按鈕,我們的WiFi遙控器會(huì)發(fā)送遙控器發(fā)出的相同IR信號(hào)。

ESP8266將通過(guò)MQTT連接到家庭橋接器,通過(guò)它,Siri可用于提供控制AC的指令。一旦通過(guò)MQTT接收到指令(例如“打開(kāi)”指令),NodeMCU便將其與相應(yīng)的IR信號(hào)進(jìn)行匹配,然后信號(hào)通過(guò)IR指示燈發(fā)送至AC。 OLED顯示器用于向用戶提供有關(guān)當(dāng)前狀態(tài)的視覺(jué)反饋。對(duì)于非iPhone用戶,該設(shè)備還可以連接到Amazon Alexa。除了可以通過(guò)Siri或Apple的家用套件控制空調(diào)外,還配備了控制開(kāi)關(guān)。

為了將本項(xiàng)目做的比較完整,該項(xiàng)目添加了以下功能:

√ 待機(jī)時(shí)顯示NTP時(shí)鐘。

√ 簡(jiǎn)單的按鈕控制。電源、溫度升高/降低。

√ 可以使用HomeKit控制溫度、擺幅、風(fēng)扇速度和模式。

√ 根據(jù)環(huán)境光自動(dòng)亮度

√ OTA固件升級(jí)。

√ 使用HeaterCooler Service(iOS 11+)通過(guò)HomeKit進(jìn)行控制,

√ 使用風(fēng)扇服務(wù)與Amazon Alexa配合使用

在本文的最后,您將了解構(gòu)建物聯(lián)網(wǎng)解決方案和家庭自動(dòng)化的基礎(chǔ)知識(shí)。您還將學(xué)習(xí)如何攔截基于IR的遙控器發(fā)送的信號(hào),創(chuàng)建一個(gè)IR發(fā)射器,該發(fā)射器可用于控制家庭或家庭中所有基于IR遙控器的設(shè)備,并構(gòu)建可以通過(guò)Apple的Home工具包控制的設(shè)備。

所需的組件

● ESP8266 NodeMCU

● 帶有WiFi加密狗的Raspberry Pi 4,Raspberry Pi 3或Raspberry Pi 2

● Raspberry Pi的鍵盤,顯示器和HDMI電纜或LAN電纜

● Raspberry Pi的2A電源

● SSD1332 OLED顯示屏(256×64)

● 按鈕

● 紅外燈

● 發(fā)光二極管

● 跳線

● 面包板

原理圖

如上面所述,項(xiàng)目本身的硬件部分由NodeMCU、IR LED、一些按鈕和OLED顯示器組成,如下圖所示連接組件。

當(dāng)您不攜帶手機(jī)時(shí),這些按鈕提供了另一種控制設(shè)備的方式,OLED顯示屏提供了各種信息,包括當(dāng)前溫度。

準(zhǔn)備項(xiàng)目

在為項(xiàng)目編寫代碼之前,我們需要進(jìn)行一些準(zhǔn)備工作。

1.準(zhǔn)備針對(duì)每個(gè)命令將發(fā)送到AC的IR信號(hào)

2.設(shè)置與Homekit的通信

1.解碼IR信號(hào)

如上所述,該項(xiàng)目通過(guò)模仿IR遙控器,發(fā)送基于Homekit的命令生成的IR信號(hào)來(lái)工作。由于IR信號(hào)必須與遙控器發(fā)送的信號(hào)相同,因此我們需要先獲取每個(gè)按鈕的IR代碼。要獲取代碼,我們必須構(gòu)建一種設(shè)備,該設(shè)備從遙控器接收紅外信號(hào),對(duì)其進(jìn)行解碼并顯示編碼后的數(shù)據(jù),以便我們可以將其復(fù)制以供以后使用。

要獲取IR代碼,我們將使用便宜的設(shè)備,連接到Nodemcu的高效且流行的TSOP1738紅外接收器,當(dāng)按下遙控器上的按鈕時(shí),紅外接收器將對(duì)其進(jìn)行拾取,并通過(guò)在NodeMCU上運(yùn)行的解碼草圖,將信號(hào)內(nèi)容打印在串行監(jiān)視器。此內(nèi)容將在以后用于控制AC。

原理圖

如下圖所示,將IR接收器連接到NodeMCU:

為了確定何時(shí)接收到IR信號(hào)并幫助我們進(jìn)行調(diào)試,在原理圖中添加了一個(gè)LED,使其僅在接收到IR信號(hào)時(shí)亮起。

代碼

本篇文章主要基于IRremote ESP8266庫(kù),可以從隨附的鏈接下載該庫(kù)。該庫(kù)基于標(biāo)準(zhǔn)的Arduino IRremote庫(kù),并帶有解碼的數(shù)據(jù)(用于一些通用鍵),用于許多流行的遙控器,這意味著您很幸運(yùn),并且遙控器的代碼將已經(jīng)可用。對(duì)于那些不太幸運(yùn)的人,我們將使用IRremote ESP8266庫(kù)隨附的示例草圖IRrecvDumpV2以及上面的示意圖來(lái)獲取編碼。

安裝庫(kù)后,啟動(dòng)Arduino IDE,轉(zhuǎn)到示例并選擇IRrecvDumpV2示例。將代碼上傳到NodeMcu,然后按遙控器上的按鈕。每次按下遙控器上的按鈕時(shí),您應(yīng)該會(huì)在串行監(jiān)視器中看到一組數(shù)字。復(fù)制并保留每個(gè)鍵的陣列,因?yàn)樗鼈兇磉b控器發(fā)送的已解碼IR信號(hào),我們將使用它們?yōu)榭照{(diào)復(fù)制IR信號(hào)。

2.與Homekit進(jìn)行連接

在編寫代碼之前,我們需要做的第二件事是建立與Homekit的連接。與Homekit的連接使我們能夠使用Siri和Homekit應(yīng)用程序控制設(shè)備。為此,我們將使用安裝在RaspberryPi上的Homebridge-MQTT作為服務(wù)器。 Homebridg-MQTT本質(zhì)上是Homebridge的插件,可讓您通過(guò)MQTT協(xié)議添加和控制設(shè)備。啟動(dòng)RaspberryPi并打開(kāi)終端。我們將從更新Pi開(kāi)始,以確保以后不會(huì)遇到任何兼容性問(wèn)題。

運(yùn)行以下指令:

Sudo apt-get update

完成此操作后,在pi上為MQTT安裝MOSQUITTO。運(yùn)行以下指令:

sudo apt-get install mosquitto

完成后,使用以下指令安裝Homebridge-MQTT插件;

sudo npm install -g homebridge-mqtt

接下來(lái),我們需要編輯配置文件。配置文件位于homebridge文件夾(home / .homebridge /config.js)中。切換到目錄并運(yùn)行;

sudo nano config.js

將platform部分添加到配置文件中,使其現(xiàn)在看起來(lái)像這樣;

{

"bridge": {

"name": "Homebridge",

"username": "CC: 22: 3D: E3: CE: 30",

"port": 51826,

"pin": "031-45-154"

},

"description": "This file is a fake accessory and one fake platform.",

"accessories": [{

"accessory": "relay",

"name": "My relay light 1",

"pin": 7

}],

"platforms": [{

"platform": "mqtt",

"name": "mqtt",

"url": "mqtt: //127.0.0.1",

"port": "1883",

"topic_type": "multiple",

"topic_prefix": "homebridge",

"qos": 1

}]

}

保存配置文件并退出。

運(yùn)行HomeBridge,使用MQTT LENS并將Connection添加到我們的Raspberry Pi,創(chuàng)建一個(gè)使用加熱器冷卻器服務(wù)的附件,該附件受IOS11的任何版本的IoS支持。將發(fā)布設(shè)置為;

homebridge / to / add

并將有效載荷設(shè)置為;

{

"name": "Smart AC",

"service_name": "smart_ac",

"service": "HeaterCooler",

"manufacturer": "ESP8266",

"firmwarerevision": "1.0.0",

"SwingMode": 1,

"RotationSpeed": {"maxValue": 3, "minValue": 0, "minStep": 3},

"CoolingThresholdTemperature": {"maxValue": 28, "minValue": 18, "minStep": 1}

}

完成所有這些操作后,我們現(xiàn)在可以繼續(xù)為該項(xiàng)目編寫代碼。

代碼

今天的項(xiàng)目代碼將使用VScode和platform.io IDE插件進(jìn)行開(kāi)發(fā)。該代碼非常龐大,對(duì)于不習(xí)慣使用這些工具對(duì)微控制器進(jìn)行編程的任何人來(lái)說(shuō)可能很難理解,因此我們編寫了有關(guān)使用這些工具的簡(jiǎn)單教程。

本文主要基于IRremoteESP8266庫(kù),但它也使用了Wifi管理器庫(kù)、Arduinojson庫(kù)、Arduino OTA庫(kù)和NTP庫(kù)。這些庫(kù)中的每一個(gè)都使實(shí)現(xiàn)項(xiàng)目的不同部分變得容易。 IRremoteESP8266庫(kù)用于將設(shè)備的IR信號(hào)發(fā)送到空調(diào),Wifimanager庫(kù)用于輕松更改WiFi憑據(jù),Arduinojson用于解析homekit中的數(shù)據(jù),而Arduino OTA庫(kù)用于在設(shè)備上啟用無(wú)線固件更新。使用的其他庫(kù)還包括U8g2庫(kù),該庫(kù)可輕松處理單色顯示器。它用于顯示構(gòu)成項(xiàng)目UI的圖形。該項(xiàng)目使用的所有庫(kù)都可以通過(guò)Arduino庫(kù)管理器下載和安裝。

該項(xiàng)目的代碼非常龐大,可能在這里無(wú)法解釋,但我們確保對(duì)其進(jìn)行了注釋并附加在zip文件下的zip文件中。zip文件包含一堆文件,包括用于GUI的圖形圖像、庫(kù)以及有關(guān)項(xiàng)目的所有內(nèi)容。該代碼位于“ src”文件夾中。 “ src”文件夾還包含不同的代碼,其中大多數(shù)是名為main.cpp的主代碼的頭文件。所有其他文件都很重要,并且必須與main.cpp放在同一項(xiàng)目文件夾中,因?yàn)樗鼈儼酥魑募璧乃行畔?。例如,main.h文件包含MQTT聲明,而UI.h文件包含用于UI的所有內(nèi)容的char值。

外殼

為了使項(xiàng)目看起來(lái)令人愉悅,對(duì)外殼進(jìn)行了3D打印。設(shè)計(jì)是使用Fusion 360完成的。

打印后,將外殼擦洗并上漆以使打印效果更好。最終外殼如下圖所示。

演示效果

確保如上面所示連接并打開(kāi)設(shè)備。它應(yīng)該如下圖所示。

以上就是本文的全部?jī)?nèi)容。如開(kāi)始所說(shuō),該項(xiàng)目的應(yīng)用是無(wú)限的。它可以作為一個(gè)簡(jiǎn)單的盒子來(lái)控制房屋中的每個(gè)紅外遙控設(shè)備。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 遙控器
    +關(guān)注

    關(guān)注

    18

    文章

    877

    瀏覽量

    71894
  • 開(kāi)發(fā)板
    +關(guān)注

    關(guān)注

    26

    文章

    6293

    瀏覽量

    118230
  • 空調(diào)遙控器
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    7629
  • ESP8266
    +關(guān)注

    關(guān)注

    51

    文章

    970

    瀏覽量

    49519
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    ESP8266系列】WT8266-S3模組規(guī)格書(shū)

    概述ESP-07S(WT8266-S3)Wi-Fi模塊是由啟明云端科技開(kāi)發(fā)的、低功耗高性價(jià)比的嵌入式無(wú)線網(wǎng)絡(luò)控制模塊??蓾M足智能電網(wǎng)、樓宇自動(dòng)化、安防、智能家居、遠(yuǎn)程醫(yī)療等物聯(lián)網(wǎng)應(yīng)用的需求。該模塊
    的頭像 發(fā)表于 02-05 18:04 ?119次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S3模組規(guī)格書(shū)

    ESP8266系列】WT8266-S5模組規(guī)格書(shū)

    概述ESP-12F(WT8266-S5)WiFi模塊是由啟明云端科技開(kāi)發(fā)的、低功耗高性價(jià)比的嵌入式無(wú)線網(wǎng)絡(luò)控制模塊??蓾M足智能電網(wǎng)、樓宇自動(dòng)化、安防、智能家居、遠(yuǎn)程醫(yī)療等物聯(lián)網(wǎng)應(yīng)用的需求。該模塊核心
    的頭像 發(fā)表于 02-05 18:03 ?136次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S5模組規(guī)格書(shū)

    ESP8266系列】WT8266-S6模組規(guī)格書(shū)

    ESP-12S(WT8266-S6)Wi-Fi模塊是由啟明云端科技開(kāi)發(fā)的、低功耗高性價(jià)比的嵌入式無(wú)線網(wǎng)絡(luò)控制模塊??蓾M足智能電網(wǎng)、樓宇自動(dòng)化、安防、智能家居、遠(yuǎn)程醫(yī)療等物聯(lián)網(wǎng)應(yīng)用的需求。該模塊核心
    的頭像 發(fā)表于 02-05 18:03 ?134次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模組規(guī)格書(shū)

    ESP8266系列】WT8266-S6模組產(chǎn)品介紹

    ESP-12S(WT8266-S6)Wi-Fi模塊是由啟明云端科技開(kāi)發(fā)的、低功耗高性價(jià)比的嵌入式無(wú)線網(wǎng)絡(luò)控制模塊??蓾M足智能電網(wǎng)、樓宇自動(dòng)化、安防、智能家居、遠(yuǎn)程醫(yī)療等物聯(lián)網(wǎng)應(yīng)用的需求。該模塊核心
    的頭像 發(fā)表于 01-29 18:22 ?266次閱讀
    【<b class='flag-5'>ESP8266</b>系列】WT<b class='flag-5'>8266</b>-S6模組產(chǎn)品介紹

    無(wú)需安裝!在瀏覽器里就能玩轉(zhuǎn)ESP32/ESP8266,這個(gè)神器絕了!

    無(wú)需安裝!在瀏覽器里就能玩轉(zhuǎn)ESP32/ESP8266,這個(gè)神器絕了!【往期精選】十年嵌入式最深的痛,不是Bug,而是抓不到日志!vivo宣布原生支持HomeAssistant生態(tài)設(shè)備接入(含
    的頭像 發(fā)表于 01-10 10:01 ?877次閱讀
    無(wú)需安裝!在瀏覽器里就能玩轉(zhuǎn)<b class='flag-5'>ESP</b>32/<b class='flag-5'>ESP8266</b>,這個(gè)神器絕了!

    【瑞薩RA6E2地奇星開(kāi)發(fā)板試用】基于RA6E2+ESP8266在STA模式下數(shù)據(jù)透?jìng)鞯絇ython服務(wù)器整體系統(tǒng)演示總結(jié)

    /CH341SER_ZIP.html 3. 所需硬件(ESP8266-01sWiFi模塊) 4. 硬件連接 ESP8266-01S模塊 RA6E2開(kāi)發(fā)板 3V3 3V3 GND GND RX
    發(fā)表于 12-28 20:16

    【瑞薩RA6E2地奇星開(kāi)發(fā)板試用】使用`RA6E2`驅(qū)動(dòng) `ESP8266 WiFi模塊`,調(diào)試AT指令。

    : 串口調(diào)試助手發(fā)送 AT 指令到 瑞薩RA6E2 開(kāi)發(fā)板的主串口(UART9)。 RA6E2 開(kāi)發(fā)板將收到的 AT 指令原樣轉(zhuǎn)發(fā)給 ESP8266 模塊(通過(guò) UART0)。 ESP8266
    發(fā)表于 12-25 10:08

    【瑞薩RA6E2地奇星開(kāi)發(fā)板試用】使用RA6E2驅(qū)動(dòng) esp8266 WiFi模塊進(jìn)行串口通信【已修復(fù)】

    1. 需求描述 使用RA6E2驅(qū)動(dòng) esp8266 WiFi模塊,用串口調(diào)試助手顯示 esp8266WiFi模塊響應(yīng)數(shù)據(jù)。 具體來(lái)說(shuō): 串口調(diào)試助手發(fā)送 AT 指令到 瑞薩RA6E2 開(kāi)發(fā)板的主串口
    發(fā)表于 12-17 10:13

    ESP32-P4全功能開(kāi)發(fā)板ESP32-P4-TINY開(kāi)發(fā)板該怎么選?看這篇就夠了!

    啟明云端基于樂(lè)鑫科技ESP32-P4芯片設(shè)計(jì)了多款開(kāi)發(fā)板,這些開(kāi)發(fā)板有什么區(qū)別?基于應(yīng)用場(chǎng)景如何選擇?本期,我們聚焦兩款代表性產(chǎn)品:WT99P4C5-S1開(kāi)發(fā)板與WT9932P4-TI
    的頭像 發(fā)表于 12-09 18:02 ?919次閱讀
    <b class='flag-5'>ESP</b>32-P4全功能<b class='flag-5'>開(kāi)發(fā)板</b>和<b class='flag-5'>ESP</b>32-P4-TINY<b class='flag-5'>開(kāi)發(fā)板</b>該怎么選?看這篇就夠了!

    晶科鑫 | 國(guó)產(chǎn)26MHz晶振匹配Espressif(樂(lè)鑫) ESP8285/ESP8266芯片案例

    【應(yīng)用】國(guó)產(chǎn)26MHz頻率晶振應(yīng)用于物聯(lián)網(wǎng)WIFI物聯(lián)網(wǎng)模塊(串口轉(zhuǎn)WiFi模塊),Espressif(樂(lè)鑫)ESP8285/ESP8266芯片匹配測(cè)試OKESP8285其實(shí)是ESP8266的升級(jí)版
    的頭像 發(fā)表于 11-21 15:37 ?4643次閱讀
    晶科鑫 | 國(guó)產(chǎn)26MHz晶振匹配Espressif(樂(lè)鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    ESP8266ESP32開(kāi)發(fā)板常見(jiàn)的2種下載方式

    ESP32和ESP8266是性價(jià)比很高而且使用較為廣泛的的Wi-Fi模塊,在物聯(lián)網(wǎng)(IoT)領(lǐng)域的DIY項(xiàng)目中可以首先考慮這2款產(chǎn)品。 兩款芯片都屬于32位處理器。ESP32是低功耗雙核80MHz
    的頭像 發(fā)表于 11-10 20:30 ?987次閱讀
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32<b class='flag-5'>開(kāi)發(fā)板</b>常見(jiàn)的2種下載方式

    ESP8266ESP32開(kāi)發(fā)板常見(jiàn)的2種下載方式

    ESP8266全I(xiàn)O口引出,直接下載無(wú)需復(fù)位! ESP32功能框圖 基于arduino的ESP32/ESP8266開(kāi)發(fā)環(huán)境搭建 1.在a
    發(fā)表于 10-24 18:04

    ESP32開(kāi)發(fā)板元件資料

    ESP32開(kāi)發(fā)板元件
    發(fā)表于 07-21 14:47 ?15次下載

    STM32+esp8266連接機(jī)智云,上傳溫濕度數(shù)據(jù)并控制繼電器開(kāi)關(guān)(平臺(tái)配置、代碼生成、代碼移植)

    代碼,并通過(guò)手機(jī)APP進(jìn)行設(shè)備控制。元器件準(zhǔn)備在開(kāi)始之前,您需要準(zhǔn)備以下硬件元器件:1.STM32開(kāi)發(fā)板2.ESP8266Wi-Fi模塊3.溫濕度傳感器(如DHT1
    的頭像 發(fā)表于 07-15 18:54 ?1087次閱讀
    STM32+<b class='flag-5'>esp8266</b>連接機(jī)智云,上傳溫濕度數(shù)據(jù)并控制繼電器開(kāi)關(guān)(平臺(tái)配置、代碼生成、代碼移植)

    ESP8266燒錄與機(jī)智云一鍵配網(wǎng)教程

    ESP8266模塊因其低成本和高性能,廣泛應(yīng)用于智能家居和工業(yè)自動(dòng)化等領(lǐng)域。機(jī)智云平臺(tái)提供了一鍵配網(wǎng)功能,簡(jiǎn)化了設(shè)備的聯(lián)網(wǎng)過(guò)程。本教程將詳細(xì)介紹如何使用ESP8266進(jìn)行燒錄,并通過(guò)機(jī)智云實(shí)現(xiàn)一鍵配
    的頭像 發(fā)表于 05-24 11:04 ?2011次閱讀
    <b class='flag-5'>ESP8266</b>燒錄與機(jī)智云一鍵配網(wǎng)教程