在這個(gè)基于ESP8266 WiFi模塊的項(xiàng)目中,我們將看到使用ESP8266的Web控制伺服,其中伺服電機(jī)的位置可以通過(guò)網(wǎng)頁(yè)(在同一個(gè)WiFi網(wǎng)絡(luò)內(nèi))進(jìn)行控制。/span》
概述
伺服電機(jī)是行業(yè)和DIY中最常用的電機(jī)之一項(xiàng)目。涉及伺服電機(jī)的兩個(gè)最著名的項(xiàng)目是我們的 ARDUINO ROBOTIC ARM 和 DIY BLUETOOTH受控3D打印機(jī)器人臂。
因此,在這個(gè)項(xiàng)目中,我將展示一個(gè)基于伺服電機(jī)的項(xiàng)目,涉及Tower Pro SG90伺服電機(jī)和ESP8266 WiFi模塊。
我將創(chuàng)建一個(gè)簡(jiǎn)單的網(wǎng)頁(yè)(HTML)帶滑塊。當(dāng)從連接到與ESP8266相同的WiFi網(wǎng)絡(luò)的計(jì)算機(jī)或移動(dòng)電話訪問(wèn)此網(wǎng)頁(yè)時(shí),您可以通過(guò)調(diào)整滑塊來(lái)控制伺服電機(jī)的位置。
使用ESP8266進(jìn)行Web控制伺服的概念
通常,為了控制帶Arduino的伺服電機(jī)(例如),您只需要的是伺服電機(jī),Arduino和電位器。根據(jù)POT的位置,伺服電機(jī)輸入的PWM值會(huì)發(fā)生變化,因此伺服電機(jī)軸的位置也會(huì)發(fā)生變化。
對(duì)于Web控制的伺服電機(jī)使用ESP8266,Arduino仍然驅(qū)動(dòng)伺服電機(jī),但輸入不是來(lái)自POT而是我們創(chuàng)建的網(wǎng)頁(yè)。
網(wǎng)頁(yè)中的滑塊發(fā)送角度值和由ESP8266接收,它充當(dāng)Web服務(wù)器。 ESP8266收到該值后,將其傳送給Arduino,Arduino然后根據(jù)該值改變伺服電機(jī)的位置。
這里要記住的一件重要事情是服務(wù)器和客戶端應(yīng)該在同一網(wǎng)絡(luò)上,即作為服務(wù)器的ESP8266和作為客戶端的計(jì)算機(jī)(或移動(dòng)電話)必須連接到同一個(gè)WiFi網(wǎng)絡(luò)。
使用ESP8266進(jìn)行Web控制伺服的先決條件
首先,重要的是ESP8266模塊必須閃爍AT命令固件。有關(guān)這方面的更多信息,請(qǐng)參閱ESP8266中如何在命令固件更新閃存。
第二個(gè)重要的事情是控制ESP8266(即使用Arduino加載AT命令固件。對(duì)于此項(xiàng)目,請(qǐng)參考使用ESP8266和ARDUINO的WIFI控制LED 。
電路圖
使用ESP8266 WiFi模塊的Web控制伺服電路圖如下圖所示。
所需組件
Arduino Board(任何Arduino)
ESP8266基板(我使用ESP-01)
Tower Pro SG90伺服電機(jī)
跳線
電阻(1KΩ和2.2KΩ) - 均為?瓦
按鈕
滑動(dòng)開(kāi)關(guān)(SPDT)
計(jì)算機(jī)(或移動(dòng)電話)
設(shè)計(jì)電路
主程序?qū)⒂糜贏rduino,它將負(fù)責(zé)一切,即將ESP8266連接到WiFi,獲取ESP8266的信息,最后控制伺服。
為了在Arduino和ESP8266之間啟用串行通信,Arduino的引腳2和3作為SoftwareSerial啟用(在程序中)。這里,引腳2用作RX,引腳3用作TX。因此,將ESP8266的TX連接到Arduino的引腳2和ESP8266的RX連接到引腳3.
由于ESP8266不能容忍5V,因此Arduino的TX(引腳3)是第一個(gè)使用兩個(gè)電阻(1KΩ和2.2KΩ)進(jìn)行電平轉(zhuǎn)換,然后連接到ESP8266的RX。
ESP8266的VCC,CH_PD和GND引腳連接到3.3V,3.3分別為V和GND。 ESP的RESET引腳連接到一個(gè)按鈕,按鈕的另一端連接到GND。
Arduino的引腳9將為伺服提供必要的PWM信號(hào)(橙子)。其他引腳是電源引腳,連接到5V和GND(紅色和棕色)。
代碼
Arduino代碼
使用ESP8266項(xiàng)目的Web控制伺服的Arduino代碼如下所示。
HTML代碼網(wǎng)頁(yè)
為了創(chuàng)建一個(gè)簡(jiǎn)單的網(wǎng)頁(yè),我使用了以下HTML代碼。
注意:要使用此HTML代碼創(chuàng)建網(wǎng)頁(yè),請(qǐng)將此代碼與擴(kuò)展名.html一起保存在一個(gè)文件夾中,并在同一文件夾中放置“myjquery” ,js“文件,您可以從這里下載。
使用ESP8266進(jìn)行Web控制伺服的工作
現(xiàn)在讓我們看看使用ESP8266和Arduino的Web Controlled Servo的工作情況。按照電路圖進(jìn)行所有連接后,將Arduino代碼上傳到Arduino UNO。
上傳代碼后,如果打開(kāi)串口監(jiān)視器,則可以看到ESP8266 WiFi模塊的狀態(tài)。
完成所有初始化步驟后(將模式設(shè)置為Station模式,連接ESP)到WiFi,設(shè)置靜態(tài)IP并啟動(dòng)Web服務(wù)器),您可以繼續(xù)進(jìn)行Web控制。
現(xiàn)在,使用任何Web瀏覽器打開(kāi)HTML文件。將顯示指示項(xiàng)目的簡(jiǎn)單文本。在下面,你可以看到一個(gè)滑塊。
如果一切正常,當(dāng)你改變滑塊的位置時(shí),伺服電機(jī)的位置將被更改。
應(yīng)用程序
Web背后的理念使用ESP8266進(jìn)行受控伺服是為了實(shí)現(xiàn)網(wǎng)絡(luò)控制設(shè)備(在這種情況下是伺服電機(jī)),即通過(guò)互聯(lián)網(wǎng)控制電機(jī)。
此應(yīng)用可以進(jìn)一步擴(kuò)展到更高級(jí)和復(fù)雜的項(xiàng)目,如從互聯(lián)網(wǎng)上控制機(jī)器人。
-
伺服
+關(guān)注
關(guān)注
16文章
651瀏覽量
40983 -
ESP8266
+關(guān)注
關(guān)注
50文章
962瀏覽量
45076
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論