人在宿舍,不想關燈,于是開始試著搞一個遠程關燈。
原本打算用esp8266,問了一些學長,后來買了esp32 nodemcu-32 v1.3
用Arduino IDE寫的,打算連接blinker之后用手機app控制。
軟件部分
1.配置Arduino IDE
Arduino IDE里有現成的blinker庫,只需要搜索 安裝 就可以了(出現藍色的installed就可以了)
還需要安裝esp32控制舵機的庫,同樣在庫管理器中搜索 ESP32Servo 這個庫,安裝它。
esp32這個板子還要裝一個什么(我不知道是什么總之運行一下就好了)
鏈接:https://pan.baidu.com/s/1P05yN0o5paZOr_vAhguYDA?pwd=ssss
提取碼:ssss
之后在開發(fā)板里能看見esp32就好啦
2.手機端app
去點燈科技官網點燈科技 (diandeng.tech)下載Blinker app。添加設備,選 獨立設備,網絡接入
這時候復制一下密鑰,一會兒需要粘到代碼里。之后點進新的設備,選擇右上角編輯模式,新建一個按鈕。也可以順便加一個 調試 ,方便看連接狀態(tài)。(圖是新建的按鈕,名稱可以自己訂)
關于blinker的用法點燈的官網也有樣例。
3.連接wifi
我們學校的校園網需要登陸學生賬號,不過沒關系,可以在宿舍插一個路由器,輸入自己寢室路由器的名稱和密碼,這樣就應該可以正常連接wifi了。(密鑰如果忘復制了就點右上角三個點)
char auth[] = ' ';//密鑰
char ssid[] = ' ';//WiFi的名稱
char pswd[] = ' ';//wifi密碼
全部代碼:
#define BLINKER_WIFI
#include #include const int servoPin = 13;//是舵機的引腳 char auth[] = '4c*******5';//密鑰 char ssid[] = 'C******';//wifi名稱 char pswd[] = '3*****';//WiFi密碼 Servo myservo; BlinkerButton Button1('btn');//綁定上自己在手機端新建的那個按鈕 void button1_callback(const String & state) { BLINKER_LOG('get button state: ', state); myservo.write(30);//舵機轉到30度(角度按自己實際情況改 delay(500); myservo.write(0);//讓舵機復位 } void setup() { Serial.begin(115200); myservo.attach(servoPin); BLINKER_DEBUG.stream(Serial); Blinker.begin(auth, ssid, pswd); //Blinker.attachData(dataRead);//不知道干嘛用的,貌似沒什么用 Button1.attach(button1_callback);//將函數綁在按鈕上 } void loop() { Blinker.run(); } 硬件部分 上圖 用充電寶供電的,沒有問題。 舵機力量不是很大,有可能拍不動開關,所以只做了關燈的。 避雷 如果一直打不開COM口,可能是因為數據線不是數據線而是充電線,比如我換了三根,很不巧的全是充電線…… A fatal error occurred: Packet content transfer stopped (received 8 bytes)這個迷惑報錯是因為我把舵機應該插到GND的線插到了CWD(5v旁邊的引腳) 舵機不要接到34-39口,他們是僅輸入不能輸出,換成13什么的就行了 不要靠近360°舵機,會變得不幸。它的控制方法和180°不一樣。360的不能控制角度,只能以一定速度正轉或反轉。所以許多函數庫也不能用,不過如果實在不想重買也不會寫pwm的話,可以用角度算占空比之后放delay實現開關燈。180°的舵機角度和占空比的關系是這樣的: 0.5ms----------------0度; 1ms -----------------45度; 1.5ms----------------90度; 2ms -----------------135度; 2.5ms ---------------180度; 而360的是 0.5ms----------------正向最大轉速; 1.5ms----------------速度為0; 2.5ms----------------反向最大轉速; 所以即使用了180的函數庫,只要輸入90就對應了1.5ms,也就對應了360°的速度為0。以此類推,只要輸入角度大于90度就是反向轉,小于90°就是正向,離90越遠速度越快,但是角度很不準,幾次下來就偏了。(所以最后的最后我又重新買了180的舵機orz 然鵝現在宿舍到點兒斷電熄燈,已經不再需要上床關燈…
上一篇:Pycharm使用MicroPython開發(fā)ESP32
下一篇:最后一頁
- 熱門資源推薦
- 熱門放大器推薦
設計資源 培訓 開發(fā)板 精華推薦
- ZSR800GTA 8 伏正電流調節(jié)器的典型應用
- #第七屆立創(chuàng)電賽#電流電壓表
- 5050LED驅動
- 具有串行控制功能的 LTC4556 智能卡接口的典型應用
- LTC2946IMS 雙電源、電荷和能量監(jiān)視器的典型應用,使用單個光耦合器進行電流隔離,并在任一電源出現故障時使用阻塞二極管來保持數據
- 征集令 |物聯網之光——學習陪伴小夜燈
- lm3886-singel
- AM3GW-2405DZ ±5V 3 瓦 DC-DC 轉換器的典型應用
- 使用 LT1054IN8 數字可編程負電源的典型應用
- TRK-KEA8、Kinetis KEA8 StarterTRAK 用于低端汽車應用
- 兆易創(chuàng)新43億DRAM定增項目落地,專注自主研發(fā)與設計
- 中國自動駕駛行業(yè)發(fā)展前景分析 智能網聯發(fā)展迅速
- 手機產業(yè)拐點到了:立足1.8億部5G手機,受益TWS/手表市場
- 首次高考作文“人機大戰(zhàn)”:勝者將獲得100萬美元獎金
- 長三角地區(qū)計劃支持長鑫12英寸存儲器晶圓制造基地項目建設
- UIT創(chuàng)新科DCServer ,全國首發(fā)10nm Arm伺服器
- 提高單片機應用系統(tǒng)可靠性的軟件技術與方法介紹
- 敦泰Q1營收寫同期新高,本季營運展望審慎樂觀
- 國科微預計一季度虧損3300萬至3800萬
- 單片機組成的集散控制系統(tǒng)設計方案