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