這是一個使用 ESP8266 微控制器的 WiFi 連接迷你百葉窗開啟器。
這個項目的目標(biāo)是為我的迷你百葉窗構(gòu)建一個電動開啟器,我可以使用 Android 應(yīng)用程序控制它。第二個動力則是能夠讓我更多地了解電子硬件和軟件開發(fā)。我也一直想在一個項目中使用 ESP8266 WiFi 集成微控制器。
我在這個項目中使用的百葉窗是典型的水平迷你百葉窗,一側(cè)的魔杖可以傾斜百葉窗,另一側(cè)的弦桿可以拉起百葉窗。這個項目只處理百葉窗的傾斜。
項目要求
使用 Android 應(yīng)用打開和關(guān)閉百葉窗。
必須能夠在沒有應(yīng)用程序的情況下打開百葉窗。
低能耗,僅在主動使用時才必須啟用電機。
直觀的控制。
必須可靠且安全。
由直流電源供電,沒有電池。
百葉窗沒有不可逆轉(zhuǎn)的修改。
修改百葉窗
在百葉窗的上部外殼中是一根鋼六角形桿,它沿著百葉窗的長度延伸。轉(zhuǎn)動此桿會改變刀片的角度。我有一個步進電機,它安裝在這個上部外殼內(nèi),幾乎與六角形桿對齊。我能夠使用聯(lián)軸器將步進電機連接到桿上。
有一個齒輪箱,只允許通過扭轉(zhuǎn)木棒來旋轉(zhuǎn)該桿。我不得不卸下這個齒輪箱,以便步進電機可以轉(zhuǎn)動桿。我還必須設(shè)計一種在電機未通電時保持桿位置的方法。如果沒有東西來保持桿的位置,百葉窗的葉片會向下傾斜。
解決方案是以足夠的摩擦力固定桿,這樣桿就不會移動,除非電機以足夠的扭矩旋轉(zhuǎn)以克服這種固定摩擦力。這是通過取一塊木頭來完成的,該木頭有一個孔用于六角桿,一個垂直于桿的螺紋孔用于固定螺釘。在固定螺釘?shù)哪┒耸且粔K橡膠,當(dāng)固定螺釘被擰緊時,橡膠塞被壓在桿上。通過反復(fù)試驗,機器螺釘被調(diào)整到桿被牢固地固定但沒有那么牢固以至于電機難以轉(zhuǎn)動它。
電機用橡膠墊片固定到位。對百葉窗的修改成本不高,并且不需要對外殼進行不可逆轉(zhuǎn)的修改。變速箱很容易拆卸,可以毫無問題地放回原處。
控件
步進電機改變百葉窗的傾斜角度。我用陀螺儀/加速度計傳感器來測量葉片的角度;向步進電機提供反饋。我想我可以只跟蹤步進電機所采取的步驟來確定位置,但我認(rèn)為直接感應(yīng)角度會更可靠。傳感器簡單地用雙面膠帶連接到上刀片之一。
我決定在伺服電機上使用步進電機,因為標(biāo)準(zhǔn)伺服在沒有變速箱的情況下沒有足夠的角度行程。我還發(fā)現(xiàn)步進電機更容易使用,因為它們不需要精確的計時。我本可以使用帶有編碼器的直流電機,但這對于這項任務(wù)來說似乎過于復(fù)雜。
我使用了Pololu A4988 步進電機驅(qū)動器和Adafruit BNO055 絕對方向傳感器。
電子外殼
在窗戶旁邊的墻上是一個包含兩個界面按鈕和電子設(shè)備的外殼。步進電機和方向傳感器插入此外殼。該項目由插入外殼底部的 12V、3A 開關(guān)直流電源供電。
外殼由 3“ x 3” 鋼箱梁截面切割而成。我擔(dān)心鋼鐵會阻擋 WiFi 信號,不過并沒有發(fā)現(xiàn)任何問題。
電機和方向傳感器的電線隱藏在墻上。我使用屏蔽電纜將 EMI 的影響降至最低。在原型設(shè)計期間,步進電機導(dǎo)線的 EMI 導(dǎo)致方向傳感器發(fā)生故障。
印刷電路板
所有PCB組件都是通孔組件,便于焊接。
主要組成
Adafruit HUZZAH ESP8266 突破
Pololu A4988 步進電機驅(qū)動器載體
5V降壓穩(wěn)壓器
3.3V降壓穩(wěn)壓器
Neopixel LED(背面)
我還創(chuàng)建了一個插入主板的小型調(diào)試模塊,允許我將 ESP8266 置于引導(dǎo)加載程序模式并訪問串行線路而無需取下外殼。
兩個板的 gerber 文件和原理圖可在此處獲得https://gitlab.com/pfjare/wifi-blinds-pcb。
BOM 可在此處獲取https://docs.google.com/spreadsheets/d/1uPH0UYzaFl-pABCBGOthaaIexG82jPdf_6R0eSZoJQ4/edit?usp=sharing
ESP8266 代碼
在 ESP8266 上運行的代碼相當(dāng)簡單。在允許步進電機移動之前,我會采取措施確保方向傳感器完全運行。我在代碼中使用以下庫:
Adafruit_BNO055
Adafruit_Sensor
arduinoWebSockets
Adafruit_NeoPixel
安卓應(yīng)用
該應(yīng)用程序與 ESP8266 建立 websocket 連接,并在應(yīng)用程序未顯示時斷開連接。當(dāng)按下按鈕時,一條包含所需百葉窗角度的消息將發(fā)送到 ESP8266。有四個按鈕 Closed Up、Full Open、Part Open 和 Closed Down。
我使用了nv-websocket-client WebSocket 庫。
該應(yīng)用程序的源代碼可以在本文下方找到
-
微控制器
+關(guān)注
關(guān)注
48文章
8181瀏覽量
159901 -
WIFI
+關(guān)注
關(guān)注
81文章
5437瀏覽量
210642 -
ESP8266
+關(guān)注
關(guān)注
51文章
965瀏覽量
48555
發(fā)布評論請先 登錄
智能家居細(xì)分市場之智能百葉窗

如何去實現(xiàn)基于單片機的百葉窗控制系統(tǒng)設(shè)計
制作一個自動百葉窗控制板
進風(fēng)口百葉窗模的設(shè)計及制造
基于STM32的變電站智能百葉窗的設(shè)計與實現(xiàn)

(畢業(yè)設(shè)計資料)基于單片機的百葉窗控制系統(tǒng)設(shè)計

評論