第6课 红外避障
认识你的火星车的侧边”眼睛”——红外避障传感器!
这些灵敏的传感器帮助你的 GalaxyRVR 检测并避开两侧的障碍物,就像拥有周边视觉一样。了解它们的工作原理,并编程让火星车自动绕开物体。
准备好让你的火星车成为一个智能的避障高手吧!
学习目标
了解红外避障模块的工作原理及其在火星车中的应用。
学习如何在 Scratch 中读取和应用红外避障模块的数据。
使用红外模块和 Scratch 舞台创建一个火星探索主题的避障游戏。
认识避障模块
向你介绍 GalaxyRVR 的新伙伴——红外避障模块!这个灵巧的小设备帮助你的火星车检测和避开障碍物。让我们看看它是如何工作的:
认识四个重要引脚:
GND - 接地连接(构成回路)
+ - 电源输入(需要3.3V至5V电源)
Out - 信号输出(发送”检测到障碍物”的信号)
EN - 使能引脚(控制模块何时工作)
工作原理——隐形手电筒:
把这个模块想象成拥有一个隐形手电筒和一副特殊眼镜:
发射器发出红外光(肉眼不可见)
当光线遇到障碍物时,会反射回来
接收器”看到”反射回来的光
模块发送信号:”前方有障碍物!”
关于传感器的小知识:
检测范围 :2-40厘米(大约一支铅笔盒的长度!)
颜色有影响 :对浅色物体检测效果最好
深色物体 :较难从远处检测到
高级控制(供好奇者参考):
现在你已经认识了你的新伙伴,让我们把它连接到火星车上,开始编程吧!
测试你的红外传感器
首先,请执行 连接应用到 GalaxyRVR 的步骤。
让我们将传感器调整到最佳性能!
确保红外组件保持笔直。如有需要,请轻轻调整。
将一个物体(如火星车的包装盒)放在20厘米处。旋转旋钮直到指示灯亮起。通过将物体移近和移远来测试。
对另一个红外模块重复同样操作。
然后,请执行 连接应用到 GalaxyRVR 的步骤。
在 GalaxyRVR 分类中找到”左侧红外状态”和”右侧红外状态”积木块,并勾选其复选框。
传感器数值现在将显示在舞台上。
在每个红外传感器附近挥动你的手,观察数值的变化!
数值含义:
True(真) = 检测到障碍物
False(假) = 路径通畅
现在你已经准备好了解你的火星车能”看到”什么了!
编程让火星车避障
让我们教你的 GalaxyRVR 使用红外传感器自动躲避障碍物!
首先,请执行 连接应用到 GalaxyRVR 的步骤。
以绿旗积木块开始程序。
将安全速度设置为30%,便于测试和调试。
找到
当左侧红外被遮挡积木块,用于左侧传感器检测。
当左侧传感器检测到障碍物时,让火星车右转。
持续右转,直到左侧不再检测到障碍物。
路径通畅后停止移动。
用手触发左侧红外传感器进行测试。GalaxyRVR 应智能地向右转以避开障碍物。
长按积木块,从菜单中选择”复制”来复制代码。
在复制的代码中,交换左右两侧,使其处理右侧障碍物。
为防止两个传感器同时被触发时出现异常行为,添加一个”停止该精灵的其他脚本”积木块。这确保了每次只处理一个传感器事件。
备注
停止脚本积木块可能与定时移动积木块冲突,因此请尽量避免同时使用它们。
现在,当任一侧检测到障碍物时,你的 GalaxyRVR 将向左或向右转。用双手同时触发两个传感器进行测试。
在每个代码段下方添加一个前进积木块,使火星车在避障后继续前进。
现在点击绿旗!你的 GalaxyRVR 将持续前进,智能地躲避障碍物,并在避开后继续前进。
与红外模块相关的积木块
当左侧红外传感器检测到障碍物时触发的事件积木块
在下拉菜单中将”左”改为”右”
暂停程序,直到左侧红外传感器不再检测到障碍物
将”左”改为”右”以用于另一个传感器
将”未检测到”改为”检测到”以使用相反条件
条件积木块,如果左侧红外传感器检测到障碍物则返回真(TRUE)
非常适合与
if语句搭配使用将”左”改为”右”以用于另一个传感器
显示左侧红外传感器当前检测状态
显示右侧红外传感器当前检测状态