今天给大家分享的是有关EV3超声波传感器的内容。我们都知道自然界中有很多生物是靠声波进行捕食与避让的,譬如蝙蝠、海豚等,乐高机器人中的超声波传感器工作原理也是如此。
超声波传感器作用:
①测量与前方物体之间的距离。实现方式是发送出声波并测量声音反射回传感器所需的时间长度。可以按英寸或厘米为单位测量与对象之间的距离。例如,可以使用此传感器使机器人在距离墙壁的特定距离处停止。
②使用超声波传感器检测附近的其他超声波传感器是否正在运行。例如,可以使用此传感器检测附近是否存在正使用超声波传感器的其他机器人。在此“仅侦听”模式中,传感器会侦听声音信号,但是不发送这些信号。
超声波传感器可以提供以下数据:
数据 | 类型 | 范围 | 备注 |
---|---|---|---|
距离(厘米) | 数字 | 3 至 255 | 与对象之间的距离(以厘米为单位)。 |
距离(英寸) | 数字 | 1.1 至 100.3 | 与对象之间的距离(以英寸为单位)。 |
检测到超声波 | 逻辑 | 真/伪 | 如果检测到其他超声波传感器,则为“真”。 |
注意事项:
①超声波传感器最适用于检测具有可良好反射声音的硬表面的物体。软物体(如布)可能会吸收声波,而不会被检测到。具有圆形或有角表面的物体也较难以检测到。 |
|
②该传感器无法检测非常接近于传感器(大约 3 厘米或 1.1 英寸以内)的物体。 |
|
③该传感器具有较宽“视野”,可以检测靠近侧面的较近物体,而不是直线前方的较远物体。 |
示例1:
该程序使机器人向前驱动,直至超声波传感器检测到 50厘米以内存在物体,随后机器人停止。此程序使用“超声波传感器 - 比较 - 距离(厘米)”模式的等待模块等待检测到的距离小于 50厘米。如果超声波传感器朝向前方,则机器人会在墙壁之前大约50厘米处停止。
示例2:
超声波传感器将检测的距离与设定值50cm进行比较,通过比较结果,该程序让机器人显示不同的表情。此程序将切换与“超声波传感器 - 比较 - 距离(厘米)”模式一起使用以测试检测到的距离是否小于 50 厘米。如果是这样,则切换会显示生气的表情;如果不是,则切换显示大笑的表情。切换在循环中重复执行,以便持续重复进行测试。
示例3:
此程序使机器人逐渐减速,然后在距离其前方检测到的任何物体大约 40 厘米处停止。它距离物体越近,运动速度便越慢。
下表显示可以与超声波传感器一起使用的所有编程模块和模式。“距离”模式具有使您可以在厘米与英寸之间进行选择的子模式。
模块 | 模式 | 用途 |
---|---|---|
等待 | 超声波传感器 - 比较 - 距离 | 等待距离达到设定值。 |
等待 | 超声波传感器 - 比较 - 存在 | 在“仅侦听”模式中等待检测到超声波信号。 |
等待 | 超声波传感器 - 更改 - 距离 | 等待距离按设定量更改。 |
循环 | 超声波传感器 - 比较 - 距离 |
重复模块序列,直至距离达到设定值。 |
循环 | 超声波传感器 - 比较 - 存在 | 在“仅侦听”模式中重复模块序列,直至检测到超声波信号。 |
循环 | 超声波传感器 - 更改 - 距离 | 重复模块序列,直至距离按设定量更改。 |
切换 | 超声波传感器 - 比较 - 距离 | 根据距离在两个模块序列之间进行选择。 |
切换 | 超声波传感器 - 比较 - 存在 | 基于是否在“仅侦听”模式中检测到超声波信号,在两个模块序列之间进行选择。 |
超声波传感器 | 测量 - 距离 | 测量距离并通过数字数据线获取结果。 |
超声波传感器 | 测量 - 存在 | 在“仅侦听”模式中侦听其他超声波信号,并通过逻辑数据线获取结果。 |
超声波传感器 | 比较 - 距离 | 将距离与设定阈值进行比较,并通过逻辑数据线获取比较结果。 |
超声波传感器 | 比较 - 存在 | 在“仅侦听”模式中侦听其他超声波信号,并通过逻辑数据线获取结果。 |
超声波传感器 | 高级 | 类似于“测量 - 距离”,但是具有仅发出单个声音脉冲的选项。 |