1. 功能说明
在R023d机器人车体上安装2个 触须传感器 ,实现机器人小车避障功能。

2. 电子硬件
在这个示例中,我们采用了以下硬件,请大家参考:
| 主控板 |   Basra主控板(兼容Arduino Uno)  | 
| 扩展板 |   Bigfish2.1扩展板  | 
| 传感器 | 触须传感器 | 
| 电池 | 7.4V锂电池 | 
电路连接:小车左轮电机连到Bigfish扩展板的D9,D10接口,小车右轮电机连到Bigfish扩展板的D5,D6;左侧触须传感器连接在Bigfish扩展板A4端口,右侧触须传感器连接在Bigfish扩展板A0端口(如下图所示)

3. 功能实现
编程环境:Arduino 1.8.19
实现思路:机器人小车前进过程中,左边触须传感器触发后,小车右转;右边触须传感器触发后,小车左转;两个传感器同时触发后,小车后退、转弯并前进。
将参考例程(sketch_apr23a.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-04-23 https://www.robotway.com/
  ------------------------------*/
void tui();
void youzhuan();
void zuozhuan();
void go();
void setup()
{
  pinMode( 18, INPUT);
  pinMode( 14, INPUT);
  pinMode( 10, OUTPUT);
  pinMode( 6, OUTPUT);
  pinMode( 5, OUTPUT);
  pinMode( 9, OUTPUT);
}
void loop()
{
  if (( !( digitalRead(14) ) && digitalRead(18) ))
  {
    tui();
    delay( 1000 );
    zuozhuan();
    delay( 1000 );
  }
  else
  {
    if (( digitalRead(14) && !( digitalRead(18) ) ))
    {
      tui();
      delay( 1000 );
      youzhuan();
      delay( 1000 );
    }
    else
    {
      if (( !( digitalRead(14) ) && !( digitalRead(18) ) ))
      {
        tui();
        delay( 1000 );
        youzhuan();
        delay( 1000 );
      }
      else
      {
        go();
      }
    }
  }
}
void zuozhuan()
{
  analogWrite(6 , 0);
  analogWrite(10 , 0);
  analogWrite(5 , 80);
  analogWrite(9 , 0);
}
void youzhuan()
{
  analogWrite(6 , 80);
  analogWrite(10 , 0);
  analogWrite(5 , 0);
  analogWrite(9 , 0);
}
void go()
{
  analogWrite(6 , 80);
  analogWrite(10 , 0);
  analogWrite(5 , 80);
  analogWrite(9 , 0);
}
void tui()
{
  analogWrite(6 , 0);
  analogWrite(10 , 80);
  analogWrite(5 , 0);
  analogWrite(9 , 80);
} 
       
      4. 资料内容
①触须避障-例程源代码
②触须避障-样机3D文件
资料内容详见:小型双轮差速底盘-触须避障



















