鉴于目前网上对于全覆盖路径规划方面的资料比较少,本次博客内容主要分享下拖拉机在农田里面作业的路径规划,以及轨迹优化。
目录
1. 什么是全覆盖路径规划
2. 实用案例
3. 农田作业机器人
如何获取地图
如何规划出全覆盖的路径
如何确保规划出来的路径是符合车辆动力学要求的
1. 什么是全覆盖路径规划
- 遍历工作区域内的所有面积
- 移动过程中要避开障碍物
- 保证覆盖率,避免重复路径
2. 实用案例
- 扫地机器人,割草机器人,排雷机器人,农田作业等。
3. 农田作业机器人
如何获取地图
农田作业机器人和室内作业机器人的区别是,农田作业的面积是很大的,并且周边没有围墙,树木之类的,因此无法像扫地机器人那样通过SLAM建立农田的地图,农田的优势就是,环境比较单一,障碍物比较少或者无障碍物,这对于规划来说也是比较友善的,因此为了获取农田的地块,一般是采用GPS打点的形式,也就是拿着RTK模块,去农田边上走一圈,就可以获取得到农田在地球表面的坐标了。
如何规划出全覆盖的路径
规划全覆盖路径,和一般的路径规划是不一样的,全覆盖规划不是点到点的规划,所以一般的图搜索算法例如A star, RRT等,都是用不上的。
在探讨如何规划全覆盖的作业路径之前,首先了解下,农业机器人在农田内是如何工作的,以及其工作的内容有哪些。举个例子,比如,深松,靶地,起垄,旋耕等,这些都是农机比较常见的作业,他们都有一些共同的特点,主要的路径都是直线+掉头+直线+掉头的形式。所以对于这种形式的全覆盖规划,使用高中学的几何知识就可以完成了,首先选择一个方向,然后找一条与该方向平行的直线,从地图的一边尽头往另一边平移,直线与边界的交点就是直线路线的两个端点,专业一点的话,这种直线段被称为垄,如下图1所示,直线段都称为垄, 掉头的地方,直接将直线段的端点相连接即可。这是简单的的全覆盖规划方法了,还有一些比较复杂的地图,比如图2,图3。
从一下图中可以看到,掉头区域出现很多尖角,对于阿克曼形式的移动机器人来说,这是比较致命的,农业拖拉机多数也是阿克曼形式的底盘,转弯是有最大转弯角度约束的,这种尖角形式的轨迹是不适合拖拉机正常跟随的,因此还需要对下面的path作进一步的轨迹优化,是的path每一个点的曲率都满足车辆动力学要求。
图1
图2
图3(地图内有三个障碍物,分别是圆形和矩形障碍物)
如何确保规划出来的路径是符合车辆动力学要求的
对于使用差速轮作为底盘的移动机器人,规划出直线段轨迹后,还需要进一步平滑,平滑轨迹的方式可以采用b样条曲线,因为这种差速轮形式的机器人,在跟踪轨迹的时候是不会受到曲线的曲率影响的,因为当线速度无穷小的时候,差速轮的转弯能力无穷大,也就是原地转弯,但是如果采用B样条进行拟合直线的话,有可能会出现平滑后的轨迹是穿过障碍物的情况,这种情况的话,可能就要使用一些优化算法了,比如参考高飞老师的开源项目,ego planner,简介可以看下下面的知乎大佬写的内容。大体上可以知道是干嘛的。这个算法没有加入曲率的约束,所以对于车辆来说是不行的,应该车辆有方向盘打角约束。对于车辆的轨迹优化,我参考的是混合A*的算法,掉头区域可以用混合A*搜索出一条轨迹,最后再加一个平滑, 结果图4, 图5,后续有人感兴趣的话,在更新实现部分内容。https://zhuanlan.zhihu.com/p/513312955https://zhuanlan.zhihu.com/p/513312955
图4
图5
鸽了好久没更新了
前面说到如何获取地图,一般商用阶段都是手持RTK模块,或者无人机啥的绕着田边打点,但是这是有硬件加持的情况,对于普通人来说如何获取真实的地块信息呢,可以去google earth, 在google earth不仅可以看到你的家, 还可以把你家门前的地块经纬度给获取到(不准就是了,不过不影响算法测试), 打开google earth,new project, new features, features可以选择 draw line, 这个时候就可以把农田边界以及障碍物给勾勒出来,如下图6, 勾勒之后,保存并输出成kml文件即可, 地块的经纬度海拔信息就存放在kml文件中,读取这个kml文件可以用python来读方便简单。 具体的步骤如下
- 在google earth选中一块地
- 输出地图经纬度信息
- 用python解析kml文件并把经纬度转换成局部笛卡尔坐标系
- 规划算法读取解析的地图位置并开始规划
- 把规划算法的结果转换成经纬度坐标系
- 按照kml的文件格式把规划数据写进.kml文件
- 在google earth上加载规划的数据
图6
分享下最近开发的规划图, 图7-9 路线是不同的方向走两次,这样犁地估计效果更好,图10就是只犁一次, 覆盖率还是很高的,97%的覆盖率
图7
图8
图9
图10
待更!!!
REFERENCE 文章来源:https://www.toymoban.com/news/detail-822460.html
Path Planning for Autonomous Vehicles in Unknown Semi-structured Environments文章来源地址https://www.toymoban.com/news/detail-822460.html
到了这里,关于移动机器人农田机器人全覆盖路径规划的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!