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

news/2025/1/13 3:06:10/

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 athttps://opensource.org/licenses/MITby 机器谱 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);}

http://www.ppmy.cn/news/87297.html

相关文章

数据结构---二叉树(C语言)

二叉树 1. 二叉树1.1 二叉树的遍历1.1.1二叉树前中后序遍历(递归版)1.1.2 层序遍历 1.2 二叉树的其他相关接口1.2.1 求二叉树的结点数量1.2.2 求叶子结点个数1.2.3 求树高1.2.4 求第k层结点个数1.2.5 查找二叉树值为k的结点 1. 二叉树 空树非空&#xff…

第三十三回:如何在Dismissible Widget中有效地删除内容

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了 Dismissible Widget相关的内容,本章回中将介绍 如何在Dismissible Widget中有效地删除内容.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在上一章回中介绍了如何使用Dismissible组件来删除List…

Flutter问题记录 - Text组件设置不限行数无效

文章目录 前言开发环境问题描述问题分析解决方案最后 前言 梳理Flutter项目的过程中发现还有一些遗留的TODO没处理,其中有一个和Text组件相关。 开发环境 Flutter: 3.7.12Dart: 2.19.6 问题描述 Text组件设置maxLines: null不限制行数: Text(The […

【Python redis】零基础也能轻松掌握的学习路线与参考资料

Python redis是一种非常流行的缓存数据库,对于Python Web应用程序开发非常有用,能快速地处理大量的数据请求。Python redis的学习路线需要对Python语言有深刻的理解,并了解使用redis的API。在掌握了Python redis的基本知识后,就可…

3475. 简单密码

Powered by:NEFU AB-IN Link 文章目录 3475. 简单密码题意思路代码 3475. 简单密码 题意 Julius Caesar 曾经使用过一种很简单的密码。 对于明文中的每个字符,将它用它字母表中后 5 位对应的字符来代替,这样就得到了密文。 比如字符 A用 F来代替。 如下…

按键中断实验和串口中断实验

目录 【1】按键中断实验 【2】串口中断实验 【1】按键中断实验 实验要求:STM32上电LED(PB0)灯灭 ,当检测到按键(PA8)按下时处理中断事件,变量i 扩展:知识点 响应优先级-》在两个中断…

用pip安装cartopy(windows平台),解决GEOS库的问题

对象:cartopy Cartopy官方网站介绍: Cartopy is a Python package designed for geospatial data processing in order to produce maps and other geospatial data analyses. Cartopy是一个Python包,旨在进行地理空间数据处理,以…

复位和时钟控制(RCC)

复位 *系统复位 当发生以下任一事件时,产生一个系统复位: 1.NRST引脚上的低电平(外部复位) 2.窗口看门狗计数终止(WWDG复位) 3.独立看门狗计数终止(IWDG复位) 4.软件复位&#xff08…