基于網(wǎng)絡(luò)的實(shí)時家庭自動化
在當(dāng)今物聯(lián)網(wǎng) (IoT) 時代,智能家居自動化已從奢侈品發(fā)展成為現(xiàn)代生活中易于使用的重要組成部分。該項(xiàng)目展示了一個可擴(kuò)展的實(shí)時家庭自動化系統(tǒng),該系統(tǒng)圍繞強(qiáng)大的 IndusBoard Coin 構(gòu)建,IndusBoard Coin 是一款基于 ESP32-S2 微控制器的緊湊型開發(fā)板。
該系統(tǒng)允許用戶通過直接托管在電路板本身上的交互式 Web 界面無線控制多個交流電器,例如燈和風(fēng)扇,而無需任何外部云服務(wù)或移動應(yīng)用程序。
與僅通過繼電器提供開/關(guān)控制的傳統(tǒng)自動化系統(tǒng)不同,該項(xiàng)目通過集成基于 PWM 的風(fēng)扇速度控制領(lǐng)先一步,通過網(wǎng)頁上的滑塊平滑實(shí)時調(diào)整交流風(fēng)扇速度。該板從其 GPIO 引腳生成 PWM 信號,然后將其發(fā)送到交流風(fēng)扇速度控制器模塊,該模塊相應(yīng)地調(diào)節(jié)風(fēng)扇速度。
同時,采用標(biāo)準(zhǔn)繼電器模塊控制燈光和風(fēng)扇的切換。Coin 板的 GPIO 連接到繼電器模塊,充當(dāng)電子開關(guān),只需輕觸 Web 界面即可打開或關(guān)閉設(shè)備。
該系統(tǒng)默認(rèn)以 Wi-Fi 接入點(diǎn) (AP) 模式運(yùn)行,允許用戶將手機(jī)或筆記本電腦直接連接到 IndusBoard 的 Wi-Fi(SSID:IndusBoard_AP)并通過瀏覽器訪問控制面板。但是,這可以很容易地修改為站模式 (STA),其中電路板連接到您的家庭 Wi-Fi 網(wǎng)絡(luò)。
在這種模式下,同一網(wǎng)絡(luò)上的任何設(shè)備都可以通過板卡的本地IP地址訪問和控制系統(tǒng),從而實(shí)現(xiàn)與現(xiàn)有智能家居的無縫集成。
使用 IndusBoard Coin 的主要優(yōu)勢之一是其大量可用 GPIO(30+ 引腳),這意味著該系統(tǒng)不僅限于兩個燈和一個風(fēng)扇。只需將更多繼電器或 PWM 控制器連接到未使用的 GPIO 并相應(yīng)地?cái)U(kuò)展用戶界面,即可輕松擴(kuò)展以控制其他設(shè)備。
例如,可以在網(wǎng)頁中添加額外的按鈕和滑塊來控制更多的燈、風(fēng)扇,甚至未來的傳感器,如運(yùn)動檢測器、溫度傳感器或 LDR。
家庭自動化控制器
家庭自動化項(xiàng)目原型
物料清單
組件 | 數(shù)量 | 描述 |
印度河板幣 | 1 | 印度河板幣 |
繼電器模塊 (5V) | 1 | 通道繼電器模塊 (5V) 250V AC |
風(fēng)扇速度控制器模塊(可選) | 1 | 風(fēng)扇速度控制器模塊 |
5V 直流適配器 | 1 | 5伏直流 |
電路圖
電路連接
連接到 GPIO 引腳的繼電器模塊(例如,用于 Light 3 的 GPIO 1 – 用于 Light 6 的 GPIO 4),用作燈泡或風(fēng)扇等交流電器(如)的開關(guān)接口。這些繼電器用作電動開關(guān),由硬幣板的數(shù)字高電平或低電平輸出切換。
對于風(fēng)扇來說,普通繼電器只能打開或關(guān)閉風(fēng)扇,而集成風(fēng)扇速度控制器模塊,例如交流調(diào)光器或 PWM 兼容控制器,可以實(shí)現(xiàn)變速控制。該模塊接收PWM信號(通常來自GPIO 21等引腳),其中占空比或信號的發(fā)射角度決定了實(shí)際的風(fēng)扇速度。
這樣可以直接通過網(wǎng)絡(luò)界面平穩(wěn)、精確地調(diào)節(jié)風(fēng)扇速度,提供完整、先進(jìn)的智能自動化體驗(yàn)。
.繼電器模塊就像一個電子開關(guān),隔離并安全地控制電路的交流側(cè)。模塊上的每個繼電器通道都有連接到硬幣板的 GPIO 引腳之一的輸入控制引腳(例如,GPIO 3 連接到控制燈 1,GPIO 6 連接到控制燈 2)。
當(dāng)數(shù)字高電平信號從硬幣板發(fā)送到繼電器輸入引腳時,它會觸發(fā)繼電器內(nèi)部的內(nèi)部電磁線圈,從而關(guān)閉(或打開)交流側(cè)的開關(guān),從而允許電流流過連接的設(shè)備。
要連接交流燈泡或其他交流電器,首先將主電源的火電 (L) 線連接到繼電器的公共 (COM) 端子。然后將常開 (NO) 端子連接到交流燈泡或設(shè)備的一個端子。設(shè)備的另一個端子直接連接到主電源的中性線 (N)。
當(dāng)繼電器被硬幣板激活時,COM 和 NO 之間的電路閉合,完成路徑并打開設(shè)備電源。當(dāng)繼電器停用時,電路斷開并且設(shè)備關(guān)閉。這種配置可確保使用硬幣板的低壓邏輯電平控制安全地切換高壓設(shè)備,使用戶和控制器板與危險(xiǎn)的交流電壓隔離。
多個此類繼電器可以連接到 IndusBoard Coin 上的多個 GPIO 引腳,以便從 Web 界面單獨(dú)實(shí)時控制多個設(shè)備。此外,由于 Coin 板上有超過 30+ 個 GPIO 引腳,因此可以輕松擴(kuò)展該系統(tǒng),使其具有高度可擴(kuò)展性并適用于更大的智能家居設(shè)置。
代碼
代碼片段
該代碼從定義分配給控制各種設(shè)備(如燈和風(fēng)扇)的 GPIO 引腳開始。之后,使用嵌入式 HTML 和 JavaScript 在代碼中創(chuàng)建一個簡單的交互式 HTML 網(wǎng)頁用戶界面 (UI),允許用戶通過任何瀏覽器實(shí)時控制設(shè)備。
pinMode() 函數(shù)用于設(shè)置部分,將每個 GPIO 引腳配置為輸出。Wi-Fi 設(shè)置配置為啟用接入點(diǎn) (AP) 模式,因此 IndusBoard Coin 可以創(chuàng)建自己的無線網(wǎng)絡(luò)供用戶直接連接。
該代碼還初始化 Web 服務(wù)器,定義處理按鈕點(diǎn)擊和風(fēng)扇速度控制命令的路由,并在循環(huán)中持續(xù)檢查傳入的客戶端請求,以確保自動化系統(tǒng)的平穩(wěn)運(yùn)行。
評論