這篇文章來源于DevicePlus.com英語網(wǎng)站的翻譯稿。
目錄
? 第一部分
什么是伺服電機?
伺服電機的類型
所需電壓和電源
? 第二部分
基于Arduino程序的伺服控制
伺服電機可以做什么?
? 第三部分
伺服控制電燈開關(guān)
電燈開關(guān)的遠(yuǎn)程控制
6. 伺服控制電燈開關(guān)
舉一個實際生活中的例子,我想制造一種可以通過按下電燈開關(guān)來實現(xiàn)房間電燈自動打開的設(shè)備。下面,我將會結(jié)合Arduino + 伺服電機+ 3D 打印機 + Wi-Fi 模塊來實現(xiàn)它!
注意:我們將要制造的自動電燈開關(guān)僅適用于按鈕式電燈開關(guān)系統(tǒng)。
我們從通過3D打印制造用于按下電燈開關(guān)按鈕的部件開始。
本次使用的伺服電機是MG996R,其扭矩比之前的產(chǎn)品中使用的電機扭矩更大。該伺服電機的扭矩為9.4kg,工作電壓為4.8 – 6.6 V。我們還將使用ESP-WROOM-02 Wifi,并嘗試通過PC或智能手機來移動伺服電機,從而對開關(guān)進(jìn)行控制操作。
圖9:按壓開關(guān)的部件
圖10:用3D打印機制造
圖11:房間開關(guān)
圖12:在伺服電機上安裝3D打印部件
圖13:安裝在房間電燈開關(guān)上
我用膠帶將設(shè)備固定在電燈開關(guān)上。
圖14:膠帶
完成后,測試一下伺服電機是否正常工作,是否可以打開電燈。
它做到了是嗎?太好了!我想您已經(jīng)意識到了,我們剛剛所制備的開關(guān)只能用來打開電燈。不幸的是,這種開關(guān)不能用來關(guān)掉電燈或者再次打開電燈。我希望我們的開關(guān)在兩端都能夠被按下,從而實現(xiàn)自動打開和關(guān)閉電燈。
圖15:測量開關(guān)尺寸
我們來測量一下房間電燈開關(guān)的寬度。我的開關(guān)大約是4cm。我認(rèn)為最好在支撐部件上設(shè)計一些突出的結(jié)構(gòu),以便從兩端按下電燈的開關(guān)按鈕。因此,我用3D打印的方法制造了以下部件:
圖16:可以按壓開關(guān)按鈕兩端的部件
圖17:安裝在伺服電機上
安裝到伺服電機上后,我們將對ESP-WROOM-02模塊編寫程序,以進(jìn)行開關(guān)的遠(yuǎn)程控制。
圖18:遙控電燈開關(guān)的最終設(shè)置
7. 電燈開關(guān)的遠(yuǎn)程控制
將該機械系統(tǒng)連接到安裝在房間中的無線路由器上,并且根據(jù)獲取的IP地址,我們可以提供一個操作伺服電機的功能。
當(dāng)ESP-WROOM-02開機時,我們可以設(shè)置一個報告服務(wù)器,并連接外部API,以在從無線路由器獲取IP地址后,通過電子郵件轉(zhuǎn)發(fā)IP地址。
#include#include const char *ssid = "[wifi_ssid]"; const char *password = "[wifi_password]"; //IP report server configuration const char* host = "xxxx.xx.xxx"; String url = "/xxxx/"; Servo myservo; Servo myservo2; WiFiServer server(80); String IpAddress2String(const IPAddress& ipAddress) { return String(ipAddress[0]) + String(".") + String(ipAddress[1]) + String(".") + String(ipAddress[2]) + String(".") + String(ipAddress[3]) ; } void setup() { Serial.begin(115200); delay(10); Serial.println("Start!"); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); server.begin(); Serial.println("Server started"); Serial.println(WiFi.localIP()); //********************************************************* // IP address notification //********************************************************* WiFiClient client; const int httpPort = 80; if (!client.connect(host, httpPort)) { Serial.println("connection failed"); return; } url += IpAddress2String(WiFi.localIP()); client.print(String("GET ") + url + " HTTP/1.1rn" + "Host: " + host + "rn" + "Connection: closernrn"); delay(1000); Serial.print("Connecting url to "); Serial.println(url); //********************************************************************* } void loop() { WiFiClient client = server.available(); if (!client) { return; } Serial.println("new client"); while(!client.available()){ delay(1); } String req = client.readStringUntil('r'); Serial.println(req); client.flush(); // Match the request int selectServo = 0; int posSlash0 = req.indexOf("/"); String tmp = req.substring(0,posSlash0); int posSlash1st = req.indexOf("/",1+posSlash0); String action = req.substring(1+posSlash0,posSlash1st); int posSlash2nd = req.indexOf("/",1+posSlash1st); String sel = req.substring(1+posSlash1st,posSlash2nd); int posSlash3rd = req.indexOf("/",1+posSlash2nd); String valueTmp = req.substring(1+posSlash2nd,posSlash3rd); int posSpace = valueTmp.indexOf(" "); String value = valueTmp.substring(0,posSpace); if(action == "favicon.ico HTTP"){ return; } //GET /servo/1/60 HTTP/1.1 Serial.print("POS:"); Serial.print(posSlash1st); Serial.print(":"); Serial.print(posSlash2nd); Serial.print(":"); Serial.println(posSlash3rd); Serial.print("ACTION:"); Serial.println(action); Serial.print("SELECT SERVO:"); Serial.println(sel); Serial.print("VALUE:"); Serial.println(value); if(sel == "0"){ myservo.write(value.toInt()); } client.flush(); String s = "HTTP/1.1 200 OKrnContent-Type: text/htmlrnrnrn"; s += ""; s += ""; s += " 主站蜘蛛池模板: 久久精品99热超碰| 国产亚洲精品久久久久久鸭绿欲 | 久久久乱码精品亚洲日韩| 国产精品一国产精品免费| 国产精品福利片| 国产精品99久久免费黑人人妻| 丰满人妻按磨HD| 国产69精品麻豆久久久久| 国产成久久免费精品AV片天堂 | 能看的黄页最新网站| 奶好大下面流了好多水水| 嗯啊…跟校草在教室里做h | 97国产在线播放| 2022一本久道久久综合狂躁| 69精品人人人人| 999精品在线| AV久久久囯产果冻传媒| XXX老姥群交| 国产69精品久久久久无码麻豆| 国产成+人欧美+综合在线观看| 国产成人免费高清视频| 国产学生在线播放精品视频| 黄色三级视频网站| 久久综合色一综合色88中文| 老师的脚奴| 琪琪电影午夜理论片77网| 色中色最新地址登陆| 亚洲成年人在线观看| 亚洲最大在线视频| 91九色麻豆| 大胸美女被吊起来解开胸罩 | 色偷偷7777www| 亚洲大爷操| 在线观看亚洲免费人成网址| 99精品AV无码一区二区| 成人午夜精品无码区久久漫画日本 | 日日撸影院在线| 午夜福利体检| 伊人久久精品AV一区二区| 97视频精品| 国产激情一级毛片久久久|