1. 功能描述
本文提供的示例所實(shí)現(xiàn)的功能為:用手機(jī)APP,通過(guò)WiFi通信遙控203號(hào)樣機(jī)實(shí)現(xiàn)移動(dòng),包括前進(jìn)、停止、后退、原地左轉(zhuǎn)、原地右轉(zhuǎn)。

2. 電子硬件
在這個(gè)示例中,采用了以下硬件,請(qǐng)大家參考:
Basra主控板(兼容Arduino Uno)、Bigfish2.1擴(kuò)展板、7.4V鋰電池、WiFi無(wú)線路由器、2510通信轉(zhuǎn)接板、USB攝像頭
本部分及后面的APP設(shè)置內(nèi)容,可與 【U011】如何使用探索者通信模塊-WiFi無(wú)線路由器 一文對(duì)照閱讀,為樣機(jī)安裝WiFi無(wú)線路由器和攝像頭。
硬件連接步驟:
(1)在2510通信轉(zhuǎn)接板的4針接口上,按如圖方式插上3根杜邦線。

(2)杜邦線的另一端插接在WiFi模塊的串口針上。

(3)連接USB線。

(4)連接攝像頭。

(5)將整套裝置固定在樣機(jī)上(注意:圖中MEGA2560主控板部分與本文所述功能無(wú)關(guān),請(qǐng)忽略)。

3. 示例程序
編程環(huán)境:Arduino 1.6.8
編寫(xiě)下面的代碼(203_WiFi_Protocol.ino),并在主控板中燒錄(在燒錄程序時(shí),需要將2510通信轉(zhuǎn)接板取下后再燒錄),使用手機(jī)控制機(jī)器人實(shí)現(xiàn)遠(yuǎn)程監(jiān)控控制。
/**************** wifi protocol ********************* 版權(quán)說(shuō)明:Copyright 2022 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved. Distributed under MIT license.See file LICENSE for detail or copy at https://opensource.org/licenses/MIT by 機(jī)器譜 2022-9-28 https://www.robotway.com/ 通信協(xié)議: * ff 00 00 00 ff 控制停止的WiFi通信協(xié)議 * ff 00 01 00 ff 控制前進(jìn)的WiFi通信協(xié)議 * ff 00 02 00 ff 控制后退的WiFi通信協(xié)議 * ff 00 03 00 ff 控制左轉(zhuǎn)的WiFi通信協(xié)議 * ff 00 04 00 ff 控制右轉(zhuǎn)的WiFi通信協(xié)議 ****************************************************/
#include int moveDirection; // 1-forward, 2-backward, 3-left, 4-right, 5-stop int inputData[4]; //data from wifi
void setup() { Serial.begin(9600); }
void loop() { WiFi_Rescue_Robot(); }
void WiFi_Rescue_Robot() { WifiControl(); Move(moveDirection); }
void WifiControl() { //operate wheel if(inputData[0] == 0x00) { if(inputData[1] != moveDirection) { moveDirection = inputData[1]; } } }
void serialEvent() { static int i; static boolean revStart; while (Serial.available()) { //get data from wifi int inData = Serial.read(); if (inData == 0xff && !revStart) { revStart = true; } else if(revStart) { inputData[i] = inData; i++; if(i > 3) { if(inputData[3] == 0xff) { i = 0; revStart = false; } else { i = 0; revStart = false; } } } } }
void Move(int direction) { switch (direction) { case 0x01:MoveForward();break; case 0x02:MoveBackward();break; case 0x03:MoveLeft();break; case 0x04:MoveRight();break; case 0x05:MoveStop();break; default:MoveStop();break; } }
void MoveForward() { //motor_0 clockwise digitalWrite(5, LOW); digitalWrite(6, HIGH); //motor_1 clockwise digitalWrite(9, LOW); digitalWrite(10, HIGH); }
void MoveBackward() { //motor_0 clockwise digitalWrite(5, HIGH); digitalWrite(6, LOW); //motor_1 clockwise digitalWrite(9, HIGH); digitalWrite(10, LOW); }
void MoveRight() { //motor_0 clockwise digitalWrite(5, HIGH); digitalWrite(6, LOW); //motor_1 clockwise digitalWrite(9, LOW); digitalWrite(10, HIGH); }
void MoveLeft() { //motor_0 clockwise digitalWrite(5, LOW); digitalWrite(6, HIGH); //motor_1 clockwise digitalWrite(9, HIGH); digitalWrite(10, LOW); }
void MoveStop() { //motor_0 clockwise digitalWrite(5, HIGH); digitalWrite(6, HIGH); //motor_1 clockwise digitalWrite(9, HIGH); digitalWrite(10, HIGH); } |
4. 安卓手機(jī)APP配置及操作
(1)安裝WIFIRobot.apk到安卓手機(jī)內(nèi)。
(2)打開(kāi)主控板的開(kāi)關(guān)啟動(dòng)設(shè)備,并使用手機(jī)連接GL-AR150-xxx(xxx為隨機(jī)數(shù)字與字母)密碼:goodlife

(3)打開(kāi)“WIFIROBOTS”APP。

(4)選擇設(shè)置(以V1.06版界面為例,你也可以安裝其他版本,設(shè)置方法相同)

(5)按照下圖所示進(jìn)行參數(shù)配置,點(diǎn)擊確定

(6)手機(jī)屏幕上可以實(shí)時(shí)顯示攝像頭拍攝到的畫(huà)面,圖像顯示的分辨率可通過(guò)在電腦端調(diào)整WiFi分辨率進(jìn)行設(shè)置。通過(guò)按鈕可以操作控制機(jī)器人運(yùn)動(dòng)。

5. 資料內(nèi)容
-
機(jī)器人
+關(guān)注
關(guān)注
213文章
29748瀏覽量
212892 -
usb
+關(guān)注
關(guān)注
60文章
8190瀏覽量
272937 -
APP
+關(guān)注
關(guān)注
33文章
1587瀏覽量
74262 -
WIFI
+關(guān)注
關(guān)注
81文章
5406瀏覽量
208344 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192182
發(fā)布評(píng)論請(qǐng)先 登錄
斜三角履帶底盤的制作

小型平行履帶底盤的制作分享

履帶機(jī)器人 金屬底盤
二自由度WIFI 履帶車 PS2 無(wú)線控制 手機(jī)安卓控制項(xiàng)目計(jì)劃(連載)
履帶底盤的結(jié)構(gòu)部分
樹(shù)莓派遙控視頻小車的方法
履帶差速移動(dòng)機(jī)器人底盤平臺(tái)
小型雙節(jié)履帶底盤的制作

正三角履帶底盤的制作分享

小型三節(jié)履帶底盤的制作

小型平行履帶底盤實(shí)現(xiàn)紅外避障功能

小型平行履帶底盤實(shí)現(xiàn)超聲避障功能

小型平行履帶底盤實(shí)現(xiàn)雙灰度循跡功能

評(píng)論