Arduino小车编程:遥控、寻迹与避障实现

需积分: 46 150 下载量 110 浏览量 更新于2024-09-09 33 收藏 6KB TXT 举报
"该资源是一个基于Arduino的智能小车控制程序,包含了遥控、寻迹和避障等功能,适合Arduino初学者学习和参考。" 在Arduino编程中,这个代码实现了一个小型移动机器人,它具备多种控制模式,如停止、前进、后退、左转、右转以及速度控制。代码中定义了一系列常量来表示这些操作状态,例如: - STOP0:表示停止 - FORWARD1:表示前进 - BACKWARD2:表示后退 - TURNLEFT3:表示左转 - TURNRIGHT4:表示右转 - ACCELERATE5:表示加速 - SLOWDOWN6:表示减速 - XUNJI7:可能表示运行或循环 - BIZHANG8:可能是表示摆动或某种特定动作 代码还涉及到伺服电机(Servo)的使用,用于控制小车的方向。例如,`Servo s;` 创建了一个伺服电机对象s,并通过`s.attach(10);` 将其连接到Arduino的第10个引脚,以控制小车的方向。初始化时,`s.write(90);` 设置伺服电机的角度为90度,这通常对应于小车的正前方。 此外,代码还利用了超声波传感器(HC-SR04)进行距离测量,以实现避障功能。`int trig=4;` 和 `int echo=2;` 分别定义了超声波传感器的触发和回声引脚,通过`pulseIn(echo,HIGH)`函数获取到物体的距离信息。这有助于小车在遇到障碍物时及时调整方向。 左右轮的运动由PWM(脉宽调制)控制,例如,`analogWrite(EL,244);` 和 `analogWrite(ER,212);` 分别控制左侧和右侧电机的转速。数字写入的值越高,电机转速越快。`digitalWrite()`函数用于设置电机的转向,`HIGH`表示电机正转,`LOW`表示反转。 `void Forward()`, `void Forward1()`, `void Forward2()` 等函数定义了不同的前进速度,可以实现不同速度级别的前进。`void Back()` 函数则让小车向后行驶。 这个项目为Arduino爱好者提供了一个基础的智能小车平台,包含了基本的控制逻辑和避障功能,是学习和实践Arduino控制技术的良好起点。通过理解并扩展这个代码,可以进一步开发更复杂的功能,如自动寻线、无线遥控等。
2021-04-21 上传
Arduino自动驾驶汽车是一个由汽车底盘,两个电动车轮,一个360°车轮(非机动车)和一些传感器组成的项目。它由一个9伏电池供电,Arduino Nano连接到一个微型面包板以控制电机和传感器。当它打开时,它开始直行。当它发现前方的障碍物时,它寻找双方,并转向它有更多自由空间的一面。如果前方或两侧没有空余空间,则将电机反转,向后驱动。 第1步:组件 您可以从Amazon订购大部分组件。我放置了我买的汽车底盘套件的链接。 1x汽车底盘套件:YIKESHU 2WD智能电机机器人汽车底盘 2倍齿轮马达 1x汽车底盘 2倍的汽车轮胎 1x 360°车轮 1个Arduino纳米 1x迷你面包板 1个电机驱动器L293D 3x超声波传感器HC SR04 支持3x传感器 - 3D打印(参见下图) 1x 9v电池 1x开关 5x 100uF电容器 2个0.1uF电容 1个红外接收器 1x遥控器 第2步:3D打印传感器支持 超声波传感器的支架可以打印在3D打印机上。图纸如下: 详情见上传附件。 PS:孔必须根据您的机箱进行调整。机箱的孔可能有一些小的差异。 第3步:组装机箱 按照手册组装机箱。 面包板可以固定在机箱背面。由于重量的原因,电池放置在机箱的前部非常重要。将传感器支架拧紧或粘在机箱的前面,传感器可以在其支撑上施加压力。没有必要粘上或拧上它。请参考图片以更好地了解组件的位置。 第4步:接线 如图所示连接组件。参考图片了解电容器的位置。具体文件见附件。 第5步:代码 项目的代码见附件。 第6步:准备好了!启动引擎 现在汽车已经准备就绪,你可以开始玩了。 当汽车放在地上时,打开开关给它供电。之后,使用遥控器上的PLAY按钮启动电机。 当您需要将其关闭时,按遥控器上的PREV按钮并关闭汽车上的开关。当它开着的时候,它一直在开着,避开障碍物,但是,防止它进入有台阶或有洞的地方是很重要的。 视频观看地址:https://v.youku.com/v_show/id_XMzIzMjk3NzA2OA==.html