APM2.8 Rover 自动巡航车设计(超声波和红外测距仪的安装和设置)

(转载)

4.1 ROVER自动巡航车自主壁障的设置

APM2.8的飞控驾驶仪的传感器接入支持超声波,电压传感器,电流传感器,光流传感器,红外传感器。其中超声波和红外传感器是模拟数据采集口(有电子技术基础的朋友应该知道),所以我们只能使用模拟信号输出的测距传感器。

图4.1 APM2.8自动驾驶仪传感器接入图

图上所示APM2.8的传感器可以接入的传感器非常多,有极好的扩展性,也有把APM的自动驾驶仪移植到树莓派和一些其他的嵌入式Linux系统之上,据说有一款APM的移植自动驾驶仪支持ROS系统,至于什么是ROS(机器人系统),可以百度。这些都是我们在以后教程中会和大家分享的,总之会非常好玩和有趣。 那么我们先从简单的开始,一步一步来,给大家展示好玩和专业的无人机设计制作教程。

1 硬件连接
APM控制板支持模拟输出的测距传感器,这里测试采用的是GP2Y0A02YK0F 20-150CM夏普的一款模拟输出红外传感器,超声波传感器的设置在下一章节中讲述。

图4.1 夏普模拟测距传感器

该款模拟传感器的硬件连接十分简单,传感器的硬件三个引脚,分别是信号线,阳极,阴极。插入如图4.1中的A0,A1引脚即可,A0和A1的端口支持模拟电压信号的采集,巡航车左右各一个传感器。

2 模块校准和软设置

图4.2 测距传感器的设置选项

打开地面站软件MP,并且用USB线连接APM2.8的飞控驾驶板,在设置调试页面中,如果软件没有汉化就是在Standard Params和Advanced params的选项列表找到Rangefinder这个选项,一个基本选项和高级选项里面都有壁障模块的设置参数,一定要看仔细。可以看到Rangefinder function,Rangefinder pin,Rangefinder type,Rangefinder trigger distance(有障碍物的触发距离),  Rangefinder  triggerangle等等选项。比较重要的是测距模块的硬件引脚选择和触发距离。这里更具各种的传感器参数做出选择。

图4.3  Full Parameter Tree 参数列表选项

其实在Full Parameter Tree在这个参数列表中可以看到更方便调整这些参数,mission planner做了归类。在全部的参数列表中(Full Parameter Tree),对测距仪的参数设置做了完整归类,找到RNGFND选项。在RNGFND中是全部的测距仪的参数调整,可以看到RNGFND和RNGFND2两个选项列表,说明这个版本的ROVER支持两个测距传感器,一般是巡航车的左右各一个。其中RNGFND_PIN是引脚选择和测距功能使能选项,如果选择-1就是关闭测距功能。接好传感器然后在这个选项里面输入0,也就是选择A0号端口,同时对应把传感器的信号线接入自动驾驶仪的A0号端。点击写入参数这个按钮之后,这时候一般都会写入成功,然后打开初始化设置的Sonar(声呐)校准这个选项,切换到Analog(模拟)选项,如图4.4所示。就会看见数据的变化,这时候遮挡测距传感器就会有数据变化,可以看见数据随着距离的变化而变化,这时候的采集到的距离数据不一定准确,可以调整图上所示的RNGFND_SCALING(电压距离转换转换比例系数),学过模拟电子的朋友知道这个传感器采集到的电压大小代表距离的远近,当然里面有个比例的关系,比如电压每上升0.1V标示,距离增加或减少0.1M,他们的比例关系就是1。当然这里还和电压采集的精度和传感器的精度有关系,我的这个传感器我设置的比例关系是40.还有其他的参数,请参考图4.3。还有这个网址是全部的参数说明:
http://rover.ardupilot.com/wiki/apmrover2-parameters/#l1_control_period_navl1_period

大家也可以参考这个官方网站的英文说明。

图4.4 声呐传感器校准
可以看到,电压可以随距离的变化而变化,更具这个关系,调整转换参数RNGFND_SETTLE。我目前用的夏普的一个模拟外测距传感器GP2Y0A02YK0F 20-150CM。这个传感器的是非线性传感器如图的系数:0到20 cm,一个阶段,20到150一个阶段。比例系数设置的40,没有太高的精度要求,加上这个传感器不是严格的线性传感器所以就设置了这个参数。这个参数可以基本的检测出20cm到110cm的距离,我设置的障碍物触发参数为50cm也就是小车感知到前方50cm左右有障碍物就45度角转向壁障。


你可能感兴趣的:(智能硬件)