声纳传感器

存档

声纳传感器可为UGV无人车提供避障功能。本页提供了安装、配置和测试单声纳和双声纳设置的说明。

备注

这篇文章已经过时。声纳现在更通用地称为 "测距仪"--Rover 可支持 4 个测距仪。相关参数已从 "SONAR "变为 "RNGFND"。参见 RNGFNDx_y 参数,如 RNGFND1_TYPE.

您将需要

声纳(超声波)传感器可以让漫游车探测到障碍物并避开它们。声纳传感器比红外传感器更加灵敏,因此是避开障碍物的首选。通常情况下,漫游车前部使用一个声纳传感器。但UGV无人车也支持使用两个声纳传感器,一个稍稍向右,另一个稍稍向左,这样不仅能探测到障碍物,还能避开它们。

要安装声纳传感器,您需要

连接传感器

如下图所示,将伺服电缆线焊接到传感器的 GND(黑线)、V+(红线)和 "3"(白线)孔上。 点击图片放大。

../_images/sonar_servo_cable_soldering.jpg

然后将伺服连接器插入 APM 2 的 A0 引脚,如下图所示。如果使用第二个声纳传感器,则将其插入 A1。

../_images/sonarapm25.jpg

接下来,将声纳传感器安装在漫游车的前部。为避免地面干扰,传感器应离地较高和/或略微向上倾斜。下面是一个非常小的漫游车的例子。声纳传感器在前面,离我们最近。另一侧的传感器是红外传感器,用于比较结果。

../_images/rover_apm2.x_setup.jpg

PX4 声纳引脚: PX4FMU/PX4IO 上的 Rover 现在支持 Sonar。您需要将一个或两个可能的声纳分配给 PX4FMU/PX4IO 中相应的 "SONAR_PIN 和 SONAR2_PIN 参数":Mission Planner地面站 - 配置 - 高级参数 - 高级参数列表。

下列 PX4FMU/PX4IO "引脚 "可用于声纳。

  • PIN = 11 :空速 "引脚。位于 PX4IO 板上的 3 针 DF13 连接器上,但 PX4FMU 上的 ADC 可以直接看到。该引脚可承受高达 6.6V 的电压(内部有分压器)。

  • 引脚 = 12:通用模拟输入引脚。该引脚位于 PX4IO 板上 "FMUSPI "端口的第 3 引脚,可直接读取 PX4FMU 模拟输入代码。电压最高可达 3.3V。

  • 引脚 = 13:通用模拟输入引脚。该引脚位于 PX4IO 板上 "FMUSPI "端口的第 4 引脚,可直接读取 PX4FMU 模拟输入代码。电压最高可达 3.3V。我们正在对其进行研究,一旦完成,将在本节中介绍。

建议使用 PX4IO 板的 FMU-SPI 端口连接器引脚 3(SONAR_PIN = 12)和连接器引脚 4(SONAR2_PIN = 13)。

在Mission Planner地面站中启用声纳

所有配置均可通过Mission Planner地面站中的 MAVLink 参数完成。无需编辑UGV无人车代码本身。

配置传感器有两种方法。您可以使用 "Mission Planner地面站配置 "选项卡中 "高级参数 "选项的简化界面,或者,如果您想对传感器进行更详细的控制,可以使用较长的 "高级参数列表 "中的全套选项。(注意:虽然在 "硬件选项 "选项卡中有一个启用声纳传感器的选项,但它只适用于 Copter 和 Plane,而 Rover 则禁用。因为UGV无人车声纳设置更为详细,选项也更多,所以必须在高级列表中进行设置)。

首先,使用Mission Planner地面站通过 USB 或 3DR 无线电与UGV无人车连接。请记住,USB 的波特率选择 115200,3DR 无线无线电的波特率选择 57600。

./_images/MP_firmware_COM.png

完成后,转到 "配置 "选项卡,选择 "高级参数 "选项。将 "启用声纳 "设置为启用。(如果您使用的是第二个声纳传感器,我们将在下一步进行设置)。

./_images/sonar1.png

此时,您应该可以在 "飞行数据 "屏幕上看到声纳数据。在地图视图下的右侧寻找 "Tuning(调整)"小复选框,并将其选中。这将弹出数据窗口。单击 "图例",将弹出显示数据字段的 "Graph This(此图表)"窗口。除 "sonarrange "和 "sonarvoltage "外,取消所有选择。此时应开始显示主声纳传感器的实时数据,如下图所示:

./_images/sonar3.png

启用第二个声纳传感器

两个声纳传感器可以告诉 APM:Rrover 向哪个方向转弯以避开障碍物。如果障碍物在右边,它就转向左边,反之亦然。虽然设置起来有点麻烦,但为了实现可靠的自动驾驶,还是值得的。

物理安装:

将两个传感器朝向漫游车前方约 10-15 度外,从水平面向上 10-15 度安装,这样它们就不会看到路面/地面。此外,还应将传感器安装到尽可能高的位置,以避免地面反射产生噪音。在下图中,它们已尽可能地升高,但仍符合 Sparkfun AVC 微型竞赛类漫游车的 4 英寸高度限制。

如果要使用下图所示的铝制支架,请确保传感器背面贴有双面泡沫胶带,以免传感器在金属支架上接地。

../_images/Rover_Mount_Sonar_Sensor.jpg

将声纳安装到漫游车

下图显示的是安装在汤姆-科伊尔(Tom Coyle)的 "斜线漫游车"(Slash Rover,AVC 2013 年 "单车组 "冠军)上的双声纳传感器。在UGV无人车上可以看到屏蔽信号电缆和电容器(参见电源滤波部分)。

../_images/Sonar-Mount-1.jpg

电气连接:

您可以使用任何您想要的端口(A0-A8),但我们的方法是这样的:将左侧传感器的连接器连接到 A0,右侧连接到 A1。

您还需要从每个传感器的控制引脚连接一条导线到 APM,这样它就能告诉传感器何时读取数据,从而避免同时读取数据并获得彼此的信号回波(Maxbotix 数据表中对此有解释)。 这里).为此,请将每一个传感器的 4 号针脚焊接一根导线,导线末端带有一个连接器,可以插入 APM,如下图所示。我们使用标准的 跨接电缆 为此。

../_images/sonar_sensor_connect_too_apm2.jpg

软件设置:

首先,如果您使用的是第二个声纳传感器,则需要告诉软件它与哪些 APM 引脚相连。您可以在高级参数列表中的 "SONAR2_PIN "参数(向下滚动到以 SONAR 开头的参数)中进行设置。通常情况下,您会将该参数设置为 1,并将第二个声纳传感器连接到 APM 2.5 的 A1 端口。

同样,APM 用来控制声纳传感器何时点火的 "停止针 "也是如此,以确保它们不会相互干扰。声纳 1 使用 A2(左),声纳 2 使用 A3(右)。

下面显示的其余参数适用于推荐的 MB1240 传感器。以下是您需要查看和设置的其他一些参数:

  • SONAR_TRIGGER 是探测到物体时声纳开始导致转向偏离的距离。我们通常使用 300 厘米(3 米)

  • SONAR_SCALING 是用于将输入电压转换为距离的值。由于我们使用的是 MB1240 声纳,因此缩放参数为 2.04,该值基于 4.9mv/cm @5vdc。

  • SONAR_TURN_ANGLE 是检测到触发距离时转向的角度,单位为度。当只使用一个声纳时,正值将导致右转,负值将导致左转。我们通常使用 25 度来表示。

  • SONAR_TURN_TIME 是检测到触发距离时转向偏离的时间。默认为 1 秒。实际上,我们在下文中使用了一个较小的数值(0.2 秒),这样转向的时间就不会太长(我们只是想让它转向,而不是掉头)

所有这些参数,以及其他未在此记录的参数,均在 参数列表.

../_images/sonar22.png

测试声纳设置

测试声纳的最佳方法是在转向模式下驾驶漫游车。

转向模式:

测试设置和传感器实际位置的最佳方法是 "转向模式",该模式可让您以手动遥控模式驾驶飞机,但在传感器检测到障碍物时会优先于您。您可以将该模式指定到遥控模式开关上的某个位置,或者通过Mission Planner地面站的无线遥测链路选择该模式,方法是使用Mission Planner地面站飞行数据屏幕上的 "操作 "框,如下图所示。

../_images/steering.png

在此模式下,您可以接近障碍物,并确保漫游车按照您的预期转向。一些故障排除技巧:

如果漫游车在开阔地上行驶时检测到幽灵障碍物,请尝试以下一种或多种方法:

  1. 将传感器再向上倾斜一些,这样就看不到地面了

  2. 将 SONAR_DEBOUNCE 参数从默认值 2(50 赫兹检测)调高

  3. 将探测范围从 300 厘米调小一点

电源滤波(可选)

如果传感器上有大量电气噪音(来自漫游车的电机或其他电子设备),可以通过添加一个简单的滤波器来明显改善性能。

为避免声纳数据中出现尖峰,应使用屏蔽电缆进行连接,并使用电容和电阻器过滤声纳的电源,具体方法请参阅《声纳数据传输》。 本教程 降低噪音和提高传感器性能的技术。Maxbotics 销售必要的组件 这里.

../_images/XL-Filter.jpg

图中显示的是 Slash Rover 的双声纳和屏蔽电缆,是电源滤波装置的一部分。

../_images/Slash-APM2_5-with-sonar-top-view.jpg