小型双轮差速底盘实现红外避障功能

博客介绍了R023e机器人小车避障功能的实现。在车体上安装近红外传感器,采用特定硬件并说明电路连接。编程环境为Arduino 1.8.19,通过检测障碍物控制机器人右转躲避,下载参考例程到主控板可实现避障。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 功能说明

      在R023e机器人车体上安装1个近红外传感器,实现机器人小车避障功能。

 2. 电子硬件

      在这个示例中,我们采用了以下硬件,请大家参考:

主控板

Basra主控板(兼容Arduino Uno)

扩展板

Bigfish2.1扩展板

传感器近红外传感器
电池7.4V锂电池

电路连接说明:

      ① 2个电机分别连在Bigfish扩展板的D6,D10及D5,D9接口上;

      ② 近红外传感器接在Bigfish扩展板的A0端口上。

3. 功能实现

      编程环境:Arduino 1.8.19

      实现思路:在机器人前方放置障碍物,当机器人前方检测到有障碍物时,实现机器人右转后再前进2s躲避障碍物;否则机器人继续直行,以此来模拟汽车避障过程。

 将参考例程(sketch_apr25a.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-25 https://www.robotway.com/

 ------------------------------*/

void forward();

void turnright();

void carstop();


void setup()

{

 pinMode( 14, INPUT);

 pinMode( 10, OUTPUT);

 pinMode( 6, OUTPUT);

 pinMode( 5, OUTPUT);

 pinMode( 9, OUTPUT);

}


void loop()

{

 if (!( digitalRead(14) ))

 {

 turnright();

 delay( 1000 );

 forward();

 delay( 2000 );

 carstop();

 delay( 5000 );

 }

 else

 {

 forward();

 }

}


void turnright()

{

 analogWrite(6 , 80);

 analogWrite(10 , 0);

 analogWrite(5 , 0);

 analogWrite(9 , 80);

}


void forward()

{

 analogWrite(6 , 80);

 analogWrite(10 , 0);

 analogWrite(5 , 80);

 analogWrite(9 , 0);

}


void carstop()

{

 analogWrite(6 , 0);

 analogWrite(10 , 0);

 analogWrite(5 , 0);

 analogWrite(9 , 0);

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值