概述
如果你關(guān)注ElectronicsHub一段時(shí)間,你會(huì)記得我們已經(jīng)建造了各種機(jī)器人,如線跟隨機(jī)器人,障礙避免機(jī)器人,藍(lán)牙控制機(jī)器人手臂和射頻控制機(jī)器人。
前兩個(gè)機(jī)器人,即線跟隨器機(jī)器人和障礙避免機(jī)器人沒有對(duì)機(jī)器人的任何手動(dòng)控制,即除了編程其主要功能外,不會(huì)有來自用戶的額外輸入。
但是對(duì)于其他兩個(gè)機(jī)器人,即藍(lán)牙控制機(jī)器人手臂和射頻控制機(jī)器人,機(jī)器人等待用戶提供適當(dāng)?shù)妮斎搿_@個(gè)輸入可以是移動(dòng)方向,也可以是拿著物體等。
在這個(gè)項(xiàng)目中,我建造了一個(gè)可以通過WiFi網(wǎng)絡(luò)控制的簡(jiǎn)單機(jī)器人(機(jī)器人汽車),即通過WiFi提供用戶對(duì)機(jī)器人運(yùn)動(dòng)方向的輸入(借助于簡(jiǎn)單的HTML頁面)。
WiFi控制機(jī)器人背后的概念
如果您使用過我們的“WiFi控制LED” ESP8266和Arduino“項(xiàng)目,然后您可以輕松了解WiFi控制機(jī)器人的概念。
ESP8266模塊負(fù)責(zé)連接到WiFi網(wǎng)絡(luò)并充當(dāng)服務(wù)器。來到客戶端,會(huì)創(chuàng)建一個(gè)簡(jiǎn)單的HTML頁面,打開此網(wǎng)頁的瀏覽器將充當(dāng)客戶端。
當(dāng)您點(diǎn)擊該網(wǎng)頁時(shí),相應(yīng)的信息將會(huì)被傳送到服務(wù)器(ESP8266)。 Arduino進(jìn)一步接收此信息,它控制機(jī)器人的電機(jī)。
WiFi控制機(jī)器人的電路圖
使用ESP8266和Arduino的WiFi控制機(jī)器人的電路圖如下圖所示。
注意: ESP8266 WiFi模塊加載了AT命令。上述電路的設(shè)計(jì)考慮到了這一點(diǎn)。
所需組件
ESP8266 [在此處購買]
L298N電機(jī)驅(qū)動(dòng)器模塊[在此處購買]
Arduino UNO [在此處購買]
機(jī)器人底盤[購買]
4 x 5V減速電機(jī)[在此處購買]
連接線[在此處購買]
電源(或電池)
要記住的第一件重要事情是我將編程Arduino并負(fù)責(zé)通過串行通信配置ESP8266模塊并控制L298N電機(jī)驅(qū)動(dòng)器模塊。
因此,Arduino的數(shù)字引腳2和3使用SoftwareSerial功能配置為RX和TX。這些引腳連接到ESP8266模塊的TX和RX引腳。
然后,L298N電機(jī)驅(qū)動(dòng)器模塊的輸入,即IN1,IN2,IN3和IN4連接到Arduino UNO的數(shù)字引腳8,9,10和11。
來到機(jī)器人底盤,它有4個(gè)齒輪電機(jī)。因此,我將正確的兩個(gè)電機(jī)并聯(lián)連接,并將它們連接到電機(jī)驅(qū)動(dòng)器的OUT1和OUT2端子。同樣,左側(cè)兩個(gè)電機(jī)連接到OUT3和OUT4。
代碼
有兩個(gè)WiFi Controlled Robot項(xiàng)目的代碼。一個(gè)代碼用于Arduino UNO,另一個(gè)代碼是用于創(chuàng)建網(wǎng)頁的HTML代碼。
Arduino代碼
以下是該項(xiàng)目的Arduino代碼。在此代碼中,在適當(dāng)?shù)奈恢幂斎隬iFi網(wǎng)絡(luò)的SSID和密碼。
此外,代碼中還有一個(gè)部分負(fù)責(zé)將靜態(tài)IP地址分配給ESP8266模塊。必須根據(jù)您的要求更改此IP地址(以及默認(rèn)的網(wǎng)關(guān)和子網(wǎng)掩碼)。
您要分配的靜態(tài)IP地址不應(yīng)該是非常重要的與您網(wǎng)絡(luò)中的任何其他設(shè)備沖突,即其他設(shè)備不應(yīng)擁有相同的IP地址。
因此,掃描網(wǎng)絡(luò)中的所有IP地址并仔細(xì)分配IP地址。
HTML代碼
為了創(chuàng)建控制網(wǎng)頁,可以使用以下HTML代碼和JavaScript文件。
下載擴(kuò)展名為.html的上述代碼,并下載 jquery.js 文件。將這兩個(gè)文件放在一個(gè)文件夾中。
工作
一個(gè)名為WiFi的簡(jiǎn)單項(xiàng)目這里實(shí)現(xiàn)了使用ESP8266和Arduino的受控機(jī)器人。讓我解釋它的工作原理。
在進(jìn)行必要的連接和代碼更改后上傳Arduino代碼。如果打開Arduino IDE的串行監(jiān)視器,則可以看到發(fā)送到ESP8266模塊的AT命令。
ESP模塊連接到WiFi后,它將分配靜態(tài)IP并創(chuàng)建服務(wù)器。創(chuàng)建服務(wù)器后,ESP模塊正在等待與客戶端連接。
現(xiàn)在,如果您打開之前下載的HTML頁面,則可以進(jìn)行簡(jiǎn)單的布局它由五個(gè)按鈕組成,名稱為FORWARD,REVERSE,RIGHT,LEFT和STOP。
通過查看這些按鈕,你可能已經(jīng)理解了每個(gè)按鈕的功能。只需單擊按鈕即可執(zhí)行該特定操作。就這么簡(jiǎn)單。
注意:
此WiFi控制機(jī)器人在HTML網(wǎng)頁的幫助下進(jìn)行控制(可以使用與ESP8266連接到同一WiFi網(wǎng)絡(luò)的計(jì)算機(jī)上的任何網(wǎng)絡(luò)瀏覽器進(jìn)行訪問)。
那里很多項(xiàng)目已經(jīng)實(shí)現(xiàn)了類似的概念但是使用了像Blynk這樣的應(yīng)用程序。
我沒有使用該應(yīng)用程序的原因是我覺得你真的這么做不知道實(shí)際發(fā)生了什么,因?yàn)橐磺卸际怯蓭煳募瓿傻摹?/p>
所以,如果你想知道項(xiàng)目到底發(fā)生了什么,那么只有你應(yīng)該知道試試這個(gè)。如果沒有,您可以使用Blynk App簡(jiǎn)單地實(shí)現(xiàn)項(xiàng)目。
如果仔細(xì)檢查這兩個(gè)代碼,您就可以了解瀏覽器和ESP之間的通信方式模塊。
結(jié)論與應(yīng)用
一個(gè)簡(jiǎn)單的WiFi受控機(jī)器人在該項(xiàng)目中實(shí)施,其中機(jī)器人汽車通過WiFi網(wǎng)絡(luò)使用網(wǎng)頁進(jìn)行控制。
您可以使用集成攝像頭和訪問相機(jī)等高級(jí)功能來創(chuàng)建此項(xiàng)目。在瀏覽器上直播。
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
29463瀏覽量
211472 -
Arduino
+關(guān)注
關(guān)注
188文章
6490瀏覽量
190065 -
ESP8266
+關(guān)注
關(guān)注
51文章
965瀏覽量
46855
發(fā)布評(píng)論請(qǐng)先 登錄
ESP8266筆記-05.ESP8266 WIFI的使用
構(gòu)建語音控制機(jī)器人 - 深入研究電路

arduino(1)--ESP8266配置
esp32和esp8266代碼共用嗎
esp8266和esp32區(qū)別是什么
esp8266不燒錄可以使用嗎
esp8266wifi模塊怎么連接手機(jī)
Arduino Nano 和 NodeMCU ESP8266 讀取 DHT11 環(huán)境溫濕度數(shù)據(jù)及 OLED顯示

評(píng)論