MathWorks的Minhaj palakaparambil Mohammed
使用Lidar Toolbox™功能构建一个系统,该系统可以在模拟仓库竞技场中基于2D激光雷达扫描发出碰撞警告。
学习如何模拟有障碍物的机器人工作空间,生成2D激光雷达数据,基于2D激光雷达扫描检测障碍物,并在即将发生碰撞前提供及时警告。
2D激光雷达广泛应用于自动导航应用中,如2D SLAM、障碍物检测和机器人和自动驾驶中的碰撞警告。在本视频中,我将使用lidar工具箱文档中的示例演示如何使用2D激光雷达构建碰撞警告系统。
该工作流包括四个主要步骤。首先,模拟有障碍物的机器人工作空间。然后生成2D激光雷达数据,然后检测障碍物。最后,在任何即将发生的碰撞之前提供一个及时的警告。
我们将开始加载我们的仓库竞技场的合成地图,其中有我们的虚拟机器人将在其中操作的障碍。我们将创建占用地图来代表我们的竞技场,这在机器人工作流程中很常见。占用网格中的每个单元格都有一个表示该单元格占用状态的值。被占用的位置表示为1,空闲位置表示为0。地图上的三角形代表我们的机器人。
我们现在可以使用距离传感器对象在机器人上添加一个模拟的2D激光雷达传感器。距离传感器系统对象是距离方位传感器,能够根据占用地图中给定的传感器姿态和障碍物输出距离和角度测量值。
现在我们有了竞技场和机器人,我们将使用一个交互界面来定义激光雷达传感器的探测区域。检测区域表示二维激光雷达周围的区域,当检测到障碍物时,系统将在该区域提供碰撞警告。我们可以使用这个界面来制作不同的形状,并修改激光雷达周围的探测区域。任何我们选择的2D激光雷达。
检测区域分为三级。黑色区域是即将发生碰撞的危险区域。红色区域代表联盟的可能性很大。黄色区域表示可以采取谨慎措施避免任何碰撞的区域。
机器人现在将遍历各个视点,对于每个视点,我们将按照以下步骤提供碰撞警告。首先,我们将激光雷达传感器的数据流作为激光扫描目标。激光扫描对象包含一个简单的2D激光雷达的距离和角度数据。然后利用pcsegdist函数将点云数据分割成障碍物群。该函数根据点之间的欧氏距离将点云分割成簇。
现在,查看每个障碍物簇以检查任何可能的碰撞。我们可以根据障碍物在探测竞技场中的位置找到危险级别。最后,我们根据危险极限发出警告。低警告圈表示探测区域中存在障碍物,可以采取措施避免与之碰撞。红色战争圆圈表示可能发生碰撞,黑色圆圈表示即将发生碰撞。我们可以进一步使用这些碰撞警告在仓库竞技场安全自主导航我们的机器人。
请点击下面的链接了解更多信息。如果您有任何问题或意见,请告诉我们。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。