1. 功能描述
本文示例所实现的功能为:用手机APP,通过WiFi通信遥控R261样机行星探测车移动,以及打开、关闭行星探测车太阳翼。

2. 电子硬件
 
在这个示例中,我们采用了以下硬件,请大家参考:
| 主控板 |  
     Basra主控板(兼容Arduino Uno) 
     | 
| 扩展板 |  
     Bigfish2.1扩展板 
     | 
| 通信 | WiFi无线路由器 | 
| 2510通信转接板 | |
| 电池 | 7.4V锂电池 | 
| 其它 | 摄像头、安卓手机 | 
3. 示例程序
编程环境:Arduino 1.8.19
 下面提供一个实现WiFi视频遥控行星探测车移动以及打开、关闭行星探测车太阳翼功能的参考程序(Wifi_Control.ino):
/*------------------------------------------------------------------------------------
  版权说明:Copyright 2023 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 机器谱 2023-09-22 https://www.robotway.com/
  ------------------------------*/
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)
        {
          dataComplete = true;
          i = 0;
          revStart = false;
        }
        else
        {
          i = 0;
          revStart = false;
        }
      }
    }
  }
}
//小车主程序
void car_control(){
  if(dataComplete){
    dataComplete = false;
    //控制小车前,后,左,右
    if(inputData[0] == 0x00)
    {
      if(inputData[1] != moveDirection){
        moveDirection = inputData[1];   
      }
    }
   
    else if(inputData[0] == 0x02){
        if(inputData[1] == 0x01){
          if(inputData[2] != DownDireciton){
            DownDireciton = inputData[2];
 
            if(DownDireciton == 0 && !isPanelDown){
              expandSolarPanelsAndMast();
              isPanelDown = true;
            }
            else if(DownDireciton == 10 && isPanelDown){
              stopSolarPanelsAndMast();
              isPanelDown = false;
            }
          }
        }
 
    }
    Move(moveDirection);
  }
  else{
    //小车自主控制部分
    automatic_control();
  }
}
4. 安卓手机APP配置及操作
① 将文末资料中的WIFIRobotV1.06.apk下载安装到手机上,并打开按以下参数进行设置。

② 打开手机wifi并连接GL-AR150-fxx(xx为随机数字与字母),密码:goodlife
 ③ 关闭软件(需清除后台应用)重新进入,点击“开始”,并开始操作。
 ④ 可看到如下所示界面按钮:前、后、左、右。

⑤ 点击“速度调整”:“左侧速度”为调整直流电机转速;“右侧速度”为打开、关闭行星探测车太阳翼。

⑥ 关闭“速度调整”,点击“重力感应”,通过调整手机角度可使行星探测车移动。

程序源代码及样机3D文件等资料下载地址:行星探测车-WiFi视频遥控



















