小型双轮差速底盘实现触须避障

R023d机器人车体避障系统:触须传感器与Arduino实现
部署运行你感兴趣的模型镜像

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文件

资料内容详见:小型双轮差速底盘-触须避障

您可能感兴趣的与本文相关的镜像

Anything-LLM

Anything-LLM

AI应用

AnythingLLM是一个全栈应用程序,可以使用商用或开源的LLM/嵌入器/语义向量数据库模型,帮助用户在本地或云端搭建个性化的聊天机器人系统,且无需复杂设置

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值