一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

种植机器人路径规划方法、装置、电子设备和存储介质与流程

2021-10-24 12:37:00 来源:中国专利 TAG:机器人 电子设备 路径 种植 装置


1.本发明涉及机器人控制技术领域,尤其涉及一种种植机器人路径规划方法、装置、电子设备和存储介质。


背景技术:

2.移动机器人在工业生产中常用来完成运输和上下料任务,在农业中主要用于完成蔬果采摘、蔬菜种植等任务。对于用来进行蔬菜种植的移动机器人,可称为种植机器人。对于种植机器人进行控制的关键技术之一是路径规划技术,目前对种植机器人进行路径规划时,一般会采用拓扑法、栅格法、遗传算法、模糊逻辑算法等算法规划一条安全或最短路径,并没有考虑在大棚环境中如何实现蔬菜的高覆盖率,无法实现有限的土地资源的有效利用。


技术实现要素:

3.鉴于上述现有技术的不足之处,本发明的目的在于提供一种种植机器人路径规划方法、装置、电子设备和存储介质,在保证种植机器人的安全性的同时,有利于提高大棚环境中蔬菜的覆盖率。
4.第一方面,本发明提供一种种植机器人路径规划方法,包括步骤:a1.获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;a2.获取大棚内侧的矩形区域的长度数据和宽度数据;a3.根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;a4.根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;所述蛇形路径包括多段横向路径段和多段纵向路径段,所述横向路径段与所述矩形区域的长度方向平行,所述纵向路径段与所述矩形区域的宽度方向平行,任意两段相邻的横向路径段的同一方向的端部之间连接有一段纵向路径段,且同一段横向路径段的每一端最多与一段纵向路径段连接;所述横向路径段的段数与所述种植带行数相等。
5.本发明的种植机器人路径规划方法,通过计算可种植的种植带行数和人行道宽度数据,有利于保证在满足人行道宽度要求的情况下使种植带行数最大;根据种植带行数、种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度数据和矩形区域的长度数据生成一条蛇形路径的路径点后,当种植机器人沿该蛇形路径移动并进行种植作业时,不会与大棚的墙壁碰撞,保证了种植机器人的安全性,并在确保种植机器人的安全性的基础上使每一行种植带的长度与矩形区域的长度接近,因此,利于提高大棚环境中蔬菜的覆盖率。
6.优选地,步骤a4包括:a401.以所述矩形区域的其中一个角点为原点,以所述矩形区域的长度方向为y轴方向,以所述矩形区域的宽度方向为x轴方向,构建参考坐标系;a402.基于所述参考坐标系,循环执行以下步骤:b1.根据以下公式计算第r段横向路径段的第一个路径点的位姿:;;;其中,r为编号且初始值为1,、分别为第r段横向路径段的第一个路径点的x坐标值和y坐标值,为第r段横向路径段的第一个路径点的姿态角度,w1为种植机器人的宽度数据,l1为种植机器人的长度数据,d为所述安全距离数据,l2为所述矩形区域的长度数据,n为所述人行道宽度数据;b2.根据以下公式计算第r段横向路径段的第二个路径点的位姿:;;;其中,、分别为第r段横向路径段的第二个路径点的x坐标值和y坐标值,为第r段横向路径段的第二个路径点的姿态角度;b3.判断编号r 1是否大于所述种植带行数,若是,则结束循环,若否,则执行后续步骤;b4.根据以下公式计算第r段纵向路径段的第一个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第一个路径点的x坐标值和y坐标值,为第r段纵向路径段的第一个路径点的姿态角度;b5.根据以下公式计算第r段纵向路径段的第二个路径点的位姿:
;;;其中,、分别为第r段纵向路径段的第二个路径点的x坐标值和y坐标值,分别为第r段纵向路径段的第二个路径点的x坐标值和y坐标值,为第r段纵向路径段的第二个路径点的姿态角度;b6.根据以下公式计算第r段纵向路径段的第三个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第三个路径点的x坐标值和y坐标值,为第r段纵向路径段的第三个路径点的姿态角度;b7.根据以下公式更新编号r:r=r 1。
7.优选地,步骤a4之后,还包括:a5.把各横向路径段的第一个路径点标记为作业点,把各横向路径段的第二个路径点标记为非作业点,把各纵向路径段的第一个路径点标定为作业点,把各纵向路径段的第二个路径点和第三个路径点标定为非作业点;其中,被标定为作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人需要在移动过程中进行种植作业;被标定为非作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人不需要在移动过程中进行种植作业。
8.优选地,步骤a5之后,还包括:a6.按照计算的先后顺序,把各路径点的路径点数据记录在一个文本文件中;所述路径点数据包括路径点的位姿数据和标记信息。
9.优选地,步骤a2包括:a201.加载大棚的二维点云地图;所述二维点云地图包含所述大棚内部的在一个水平面上的扫描点点云;a202.对所述二维点云地图进行灰度化处理,得到灰度图像;a203.对所述灰度图像进行滤波去噪声处理;a204.采用canny算子对滤波去噪声处理后的灰度图像进行边缘检测,得到边缘轮廓像素点的位置数据;a205.把所述滤波去噪声处理后的灰度图像还原为彩色图像;a206.根据所述边缘轮廓像素点的位置数据,对所述彩色图像中的边缘轮廓像素
点的像素值进行二值化处理;a207.根据所述边缘轮廓像素点的横向像素值梯度和纵向像素值梯度确定四个角点的位置;a208.以所述四个角点为一个矩形区域的四个顶点,根据所述四个角点的坐标计算所述矩形区域的长度数据和宽度数据。
10.优选地,步骤a3包括:根据以下公式计算种植带行数:;;;其中,k为种植带行数,w2为所述矩形区域的宽度数据,d为所述安全距离数据,n1为所述人行道宽度下限数据,h为所述种植带宽度数据,int为向下取整函数,n为的整数部分,mod为取余数函数,m为的余数;根据以下公式计算所述人行道宽度数据:;其中,n为人行道宽度数据。
11.第二方面,本发明提供一种种植机器人路径规划装置,包括:第一获取模块,用于获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;第二获取模块,用于获取大棚内侧的矩形区域的长度数据和宽度数据;第一计算模块,用于根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;规划模块,用于根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;所述蛇形路径包括多段横向路径段和多段纵向路径段,所述横向路径段与所述矩形区域的长度方向平行,所述纵向路径段与所述矩形区域的宽度方向平行,任意两段相邻的横向路径段的同一方向的端部之间连接有一段纵向路径段,且同一段横向路径段的每一端最多与一段纵向路径段连接;所述横向路径段的段数与所述种植带行数相等。
12.优选地,所述规划模块用于在计算多个路径点的位姿的时候:以所述矩形区域的其中一个角点为原点,以所述矩形区域的长度方向为y轴方向,以所述矩形区域的宽度方向为x轴方向,构建参考坐标系;基于所述参考坐标系,循环执行以下步骤:b1.根据以下公式计算第r段横向路径段的第一个路径点的位姿:
;;;其中,r为编号且初始值为1,、分别为第r段横向路径段的第一个路径点的x坐标值和y坐标值,为第r段横向路径段的第一个路径点的姿态角度,w1为种植机器人的宽度数据,l1为种植机器人的长度数据,d为所述安全距离数据,l2为所述矩形区域的长度数据,n为所述人行道宽度数据;b2.根据以下公式计算第r段横向路径段的第二个路径点的位姿:;;;其中,、分别为第r段横向路径段的第二个路径点的x坐标值和y坐标值,为第r段横向路径段的第二个路径点的姿态角度;b3.判断编号r 1是否大于所述种植带行数,若是,则结束循环,若否,则执行后续步骤;b4.根据以下公式计算第r段纵向路径段的第一个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第一个路径点的x坐标值和y坐标值,为第r段纵向路径段的第一个路径点的姿态角度;b5.根据以下公式计算第r段纵向路径段的第二个路径点的位姿:;;;
其中,、分别为第r段纵向路径段的第二个路径点的x坐标值和y坐标值,为第r段纵向路径段的第二个路径点的姿态角度;b6.根据以下公式计算第r段纵向路径段的第三个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第三个路径点的x坐标值和y坐标值,为第r段纵向路径段的第三个路径点的姿态角度;b7.根据以下公式更新编号r:r=r 1。
13.第三方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如所述的种植机器人路径规划方法的步骤。
14.第四方面,本发明提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如所述的种植机器人路径规划方法的步骤。
15.有益效果:本技术提供的种植机器人路径规划方法、装置、电子设备和存储介质,通过计算可种植的种植带行数和人行道宽度数据,有利于保证在满足人行道宽度要求的情况下使种植带行数最大;根据种植带行数、种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度数据和矩形区域的长度数据生成一条蛇形路径的路径点后,当种植机器人沿该蛇形路径移动并进行种植作业时,不会与大棚的墙壁碰撞,保证了种植机器人的安全性,并在确保种植机器人的安全性的基础上使每一行种植带的长度与矩形区域的长度接近,因此,利于提高大棚环境中蔬菜的覆盖率。
附图说明
16.图1为发明提供的种植机器人路径规划方法的流程图。
17.图2为发明提供的种植机器人路径规划方法中计算各路径点位姿的流程图。
18.图3为发明提供的种植机器人路径规划装置的结构示意图。
19.图4为发明提供的电子设备的结构示意图。
具体实施方式
20.下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
21.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
22.下文的公开提供的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术佩戴人员可以意识到其他工艺的应用和/或其他材料的使用。
23.请参阅图1,本技术实施例提供的一种种植机器人路径规划方法,包括步骤:a1.获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;a2.获取大棚内侧的矩形区域的长度数据和宽度数据;a3.根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;a4.根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;所述蛇形路径包括多段横向路径段和多段纵向路径段,所述横向路径段与所述矩形区域的长度方向平行,所述纵向路径段与所述矩形区域的宽度方向平行,任意两段相邻的横向路径段的同一方向的端部(同一方向的端部是指指向相同的端部,假设横向路径段沿左右方向延伸,则两段相邻的横向路径段的左端为同一方向的端部,两段相邻的横向路径段的右端也为同一方向的端部)之间连接有一段纵向路径段,且同一段横向路径段的每一端最多与一段纵向路径段连接;所述横向路径段的段数与所述种植带行数相等。
24.其中,该种植机器人在水平面上的投影可以是矩形的,从而,该种植机器人长度数据和宽度数据为该种植机器人在水平面上的投影的长度数据和宽度数据。该种植机器人在水平面上的投影也可以不是矩形的,从而,该种植机器人长度数据和宽度数据为该种植机器人在水平面上的投影的外接矩形(外接矩形把种植机器人在水平面上的投影包围在内且该外接矩形的四条边分别与该投影的边界有至少一个交点)的长度数据和宽度数据。
25.该种植机器人路径规划方法,通过计算可种植的种植带行数和人行道宽度数据,有利于保证在满足人行道宽度要求的情况下使种植带行数最大;根据种植带行数、种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度数据和矩形区域的长度数据生成一条蛇形路径的路径点后,当种植机器人沿该蛇形路径移动并进行种植作业时,不会与大
棚的墙壁碰撞,保证了种植机器人的安全性,并在确保种植机器人的安全性的基础上使每一行种植带的长度与矩形区域的长度接近,因此,利于提高大棚环境中蔬菜的覆盖率。
26.其中,步骤a1中的安全距离数据是指当种植机器人原地转动时,保证种植机器人不与墙壁发生碰撞的种植机器人边缘与墙壁之间的最小距离;人行道宽度下限数据是指相邻种植带之间的人行道的宽度的最小值,实际的人行道宽度不能小于该人行道宽度下限数据;种植带宽度数据根据种植机器人的性能设置(种植机器人在移动的同时可在一定宽度范围内把蔬菜栽种在土地上)。
27.在一些实施方式中,可事先测量大棚内侧的矩形区域的长度数据和宽度数据并存储到本地数据库中,从而步骤a2直接从本地数据库提取该长度数据和宽度数据。
28.在另一些实施方式中,步骤a2包括:a201.加载大棚的二维点云地图;所述二维点云地图包含所述大棚内部的在一个水平面上的扫描点点云;a202.对所述二维点云地图进行灰度化处理,得到灰度图像;a203.对所述灰度图像进行滤波去噪声处理;a204.采用canny算子对滤波去噪声处理后的灰度图像进行边缘检测,得到边缘轮廓像素点的位置数据;a205.把所述滤波去噪声处理后的灰度图像还原为彩色图像;a206.根据所述边缘轮廓像素点的位置数据,对所述彩色图像中的边缘轮廓像素点的像素值进行二值化处理;a207.根据所述边缘轮廓像素点的横向像素值梯度和纵向像素值梯度确定四个角点的位置;a208.以所述四个角点为一个矩形区域的四个顶点,根据所述四个角点的坐标计算所述矩形区域的长度数据和宽度数据。
29.在该实施方式中,可用激光雷达(不限于此)在大棚内的一定高度处(高度可根据实际需要设置)在水平面内进行扫描,从而得到二维点云地图并存储在本地数据库中,从而步骤a201中从本地数据库中加载该二维点云地图。该二维点云地图为彩色图像(三通道rgb图)。
30.对图像进行灰度化处理的方法以及把灰度图像还原为彩色图像的方法均为现有技术,此处不对其进行详述。
31.步骤a203中,可采用高斯滤波处理方法进行滤波去噪声处理,但不限于此。
32.其中,步骤a206包括:把像素值小于或等于像素值阈值的边缘轮廓像素点的像素值调整为预设的第一像素值(例如0),并把像素值大于所述像素值阈值的边缘轮廓像素点的像素值调整为第二像素值(例如128)。其中,所述像素值阈值可以是根据实际需要预先设置的固定值(例如55),也可以用所述边缘轮廓像素点的平均像素值作为像素值阈值(从而,步骤a206还包括:计算边缘轮廓像素点的平均像素值作为像素值阈值)。在实际应用中,通过激光雷达进行扫描时,当墙壁处有窗口或门口等可透光的部位,则实际上扫描得到的扫描点位置并非在可透光的部位处,而是位于大棚的外部,从而导致在进行边缘检测的时候得到的轮廓线在对应可透光的部分是外凸的,该外凸的部分并非真实的轮廓线,在二维点云地图中,这些外凸部分的边缘轮廓像素点的颜色比较淡(像素值比真正的轮廓线上的边
缘轮廓像素点的像素值大),通过对边缘轮廓像素点的像素值进行二值化处理,可加强真实轮廓线的颜色和假轮廓线的颜色之间的差别,从而在后续进行四个角点的位置的提取时,可只对真实轮廓线的边缘轮廓像素点进行分析,提高准确性。
33.其中,步骤a207包括:以像素值为第一像素值的边缘轮廓像素点为目标像素点,计算各目标像素点在横向方向上的像素值梯度和在纵向方向上的像素值梯度;提取在横向方向上的像素值梯度和在纵向方向上的像素值梯度均超过预设的偏差阈值(可根据实际需要设置)的像素点作为角点,并提取所述角点的位置数据。
34.需要说明的是,此处得到的角点的位置数据是二维点云地图中的图像坐标系的坐标数据,所述横向方向是指所述图像坐标系的横轴方向,所述纵向方向是指所述图像坐标系的纵轴方向;在二维点云地图中,大棚区域(为矩形区域)的宽度方向与所述横向方向一致、长度方向与所述纵向方向一致。目标像素点在横向方向上的像素值梯度是指该目标像素点与横向方向上的两个相邻像素点之间的像素值偏差(指绝对值)中的最大值,目标像素点在纵向方向上的像素值梯度是指该目标像素点与纵向方向上的两个相邻像素点之间的像素值偏差(指绝对值)中的最大值;对于非角点的边缘轮廓像素点,只有横向方向上的像素值梯度或纵向方向上的像素值梯度较大,另一个方向上的像素值梯度为0,只有角点在两个方向上的像素值梯度均较大。通过该方法可准确地得到四个角点的位置,从而知道大棚墙壁的位置(相邻的两个角点之间的连线的位置即为墙壁的位置)。
35.一般地,可用相邻角点之间的连线的最大长度作为矩形区域的长度数据,把相邻角点之间的连线的最小值作为矩形区域的宽度数据,但不限于此。
36.在一些优选实施方式中,步骤a3包括:根据以下公式计算种植带行数:;;;其中,k为种植带行数,w2为所述矩形区域的宽度数据,d为所述安全距离数据,n1为所述人行道宽度下限数据,h为所述种植带宽度数据,int为向下取整函数,n为的整数部分,mod为取余数函数,m为的余数;根据以下公式计算所述人行道宽度数据:;其中,n为人行道宽度数据。
37.在实际应用中,在大棚中种植蔬菜时,会分多行种植带进行蔬菜种植,每行种植带中均匀种植有蔬菜,而且相邻的种植带之间需要留有足够宽度的人行道供人员通过。在该实施方式中,在保证机器人与墙壁之间留有足够安全距离的情况下(),当
可以整除时,则设置n行种植行和n行人行道,且每行人行道的宽度等于人行道宽度下限数据n1;当有余数m时,若该余数m不足够容纳一行种植带,则设置n行种植行和n行人行道,并把该余数m平均分配到每行人行道上,若该余数m足够容纳一行种植带,则设置n 1行种植行和n行人行道,并把余数m中刨除种植带后的剩余部分平均分配到每行人行道上。从而,在保证满足人行道宽度要求的情况下,使种植带的行数最大,使大棚内部的土地资源得到有效利用。
38.其中,路径点的位姿包括路径点的位置坐标和姿态角度,位置坐标包括两个坐标轴的坐标值;种植机器人在工作时,但其到达一个路径点时,其中心点的位置坐标与该路径点的位置坐标相同,且该种植机器人的运动方向与该路径点的姿态角度相同。在本实施例中,种植机器人是沿其长度方向移动的,因此,当种植机器人到达一个路径点时的其长度方向的角度与该路径点的姿态角度相同。
39.优选地,步骤a4包括:a401.以所述矩形区域的其中一个角点为原点,以所述矩形区域的长度方向为y轴方向,以所述矩形区域的宽度方向为x轴方向,构建参考坐标系;a402.基于所述参考坐标系,循环执行以下步骤:b1.根据以下公式计算第r段横向路径段的第一个路径点的位姿:;;;其中,r为编号且初始值为1,、分别为第r段横向路径段的第一个路径点的x坐标值和y坐标值,为第r段横向路径段的第一个路径点的姿态角度,w1为种植机器人的宽度数据,l1为种植机器人的长度数据,d为所述安全距离数据,l2为所述矩形区域的长度数据,n为所述人行道宽度数据;b2.根据以下公式计算第r段横向路径段的第二个路径点的位姿:;;;其中,、分别为第r段横向路径段的第二个路径点的x坐标值和y坐标值,为第r段横向路径段的第二个路径点的姿态角度;b3.判断编号r 1是否大于所述种植带行数,若是,则结束循环,若否,则执行后续
步骤;b4.根据以下公式计算第r段纵向路径段的第一个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第一个路径点的x坐标值和y坐标值,为第r段纵向路径段的第一个路径点的姿态角度;b5.根据以下公式计算第r段纵向路径段的第二个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第二个路径点的x坐标值和y坐标值,为第r段纵向路径段的第二个路径点的姿态角度;b6.根据以下公式计算第r段纵向路径段的第三个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第三个路径点的x坐标值和y坐标值,为第r段纵向路径段的第三个路径点的姿态角度;b7.根据以下公式更新编号r:r=r 1。
40.例如,第一段横向路径段的第一个路径点,即为蛇形路径的起始点,其坐标为(,)、姿态角度为0
°
(表示种植机器人的前进方向为y轴方向),在种植机器人工作时,其中心点会与该路径点重合,从而保证种植机器人与墙壁之间的距离等于所述安全距离数据d,保证种植机器人的安全;第一段横向路径段的第二个路径点为种植机器人沿y轴方向移动至与墙壁之间的距离等于所述安全距离数据d时的种植机器人中心所在
的点,其坐标为(,)、姿态角度为0
°
,此时,种植机器人遮挡的位置不能被种植蔬菜;然后种植机器人绕中心转动90度,把转动后的中心点作为下一个路径点(即第一段纵向路径段的第一个路径点),其坐标保持不变为(,)、姿态角度为90
°
(表示种植机器人的前进方向为x轴方向);进而种植机器人需把之前遮挡的位置让出并在其上种植蔬菜,从而把下一个路径点(即第一段纵向路径段的第二个路径点)的坐标定为(,)、其姿态角度保持为90
°
,到此处,种植机器人可完成第一行种植带的种植工作,且保证了种植带的长度基本与矩形区域的长度相同;然后种植机器人需保持姿态角度为90
°
前行距离n以到达下一行种植带的起始位置,从而把下一个路径点(即第一段纵向路径段的第三个路径点)的坐标定为(,)、其姿态角度保持为90
°
;接着种植机器人需保持位置不变再旋转90
°
使前进方向沿

x轴方向,从而把下一个路径点(即第二段横向路径段的第一个路径点)的位置定为(,)、其姿态角度保持为180
°
(表示种植机器人的前进方向为

x轴方向);第二段横向路径段的第二个路径点为种植机器人沿

y轴方向移动至与墙壁之间的距离等于所述安全距离数据d时的种植机器人中心所在的点,其坐标为(,)、姿态角度为180
°
,此时,种植机器人遮挡的位置不能被种植蔬菜;然后种植机器人绕中心转动90度,把转动后的中心点作为下一个路径点(即第二段纵向路径段的第一个路径点),其坐标保持不变为(,)、姿态角度为90
°
(表示种植机器人的前进方向为x轴方向);进而种植机器人需把之前遮挡的位置让出并在其上种植蔬菜,从而把下一个路径点(即第二段纵向路径段的第二个路径点)的坐标定为(,)、其姿态角度保持为90
°
,到此处,种植机器人可完成第二行种植带的种植工作,且保证了种植带的长度基本与矩形区域的长度相同;然后种植机器人需保持姿态角度为90
°
前行距离n以到达下一行种植带的起始位置,从而把下一个路径点(即第二段纵向路径段的第三个路径点)的坐标定为(,)、其姿态角度保持为90
°
;以此类推,直到r>n。
41.优选地,步骤a4之后,还包括:a5.把各横向路径段的第一个路径点标记为作业点,把各横向路径段的第二个路径点标记为非作业点,把各纵向路径段的第一个路径点标定为作业点,把各纵向路径段的第二个路径点和第三个路径点标定为非作业点;其中,被标定为作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人需要在移动过程中进行种植作业;被标定为非作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人不需要在移动过程中进行种植作业。
42.从而种植机器人从一行种植行的起点移动到终点的过程中,保持种植作业,从而一边移动一边种植,到达该行种植行的终点时停止种植作业,并旋转90
°
;然后再次启动种植作业并往x轴方向移动到相应的纵向路径段的第二个路径点,从而在移动的同时对之前
被遮挡的位置种植蔬菜,使该行种植行种满蔬菜;待移动到相应的纵向路径段的第二个路径点,停止种植作业并继续移动到下一行种植行的起点,该过程中不进行种植作业,避免在人行道上种上蔬菜;进而,种植机器人再次旋转90
°
使前进方向朝向

x轴方向后,再次启动种植作业直到到达该种植行的终点;如此循环,直到完成所有种植行的种植作业。
43.因此,当把各路径点的位姿数据和相应的标记信息(该标记信息可以是数字信息,例如,标记信息为1表示对应的路径点为作业点,标记信息为0表示对应的路径点为非作业点,但不限于此)一同加载到种植机器人的控制系统后,种植机器人可在沿规划的路径移动的同时,根据各路径点的标记信息控制种植作业机构的启闭,无需额外向种植机器人发送控制信号以控制种植作业机构的启闭,可使种植机器人离线自动完成种植作业。
44.进一步地,步骤a5之后,还包括:a6.按照计算的先后顺序,把各路径点的路径点数据记录在一个文本文件中;所述路径点数据包括路径点的位姿数据和标记信息。
45.种植机器人工作时,可直接加载该文本文件,从而可提取各路径点的位姿数据和标记信息,进而可开始自动种植作业。方便生成的路径信息的保存和调用。
46.例如,在文本文件中,每个路径点的路径点数据记录为一行信息,有多少个路径点就有多少行信息,每行信息从左到右依次为x坐标值、y坐标值、姿态角度、标记信息。但不限于此。
47.由上可知,该种植机器人路径规划方法,通过获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;获取大棚内侧的矩形区域的长度数据和宽度数据;根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;从而在保证种植机器人的安全性的同时,有利于提高大棚环境中蔬菜的覆盖率。
48.请参考图3,本发明提供一种种植机器人路径规划装置,其特征在于,包括:第一获取模块1,用于获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;第二获取模块2,用于获取大棚内侧的矩形区域的长度数据和宽度数据;第一计算模块3,用于根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;规划模块4,用于根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;所述蛇形路径包括多段横向路径段和多段纵向路径段,所述横向路径段与所述矩形区域的长度方向平行,所述纵向路径段与所述矩形区域的宽度方向平行,任意两段相邻的横向路径段的同一方向的端部之间连接有一段纵向路径段,且同一段横向路径段的每一
端最多与一段纵向路径段连接;所述横向路径段的段数与所述种植带行数相等。
49.其中,所述安全距离数据是指当种植机器人原地转动时,保证种植机器人不与墙壁发生碰撞的种植机器人边缘与墙壁之间的最小距离;人行道宽度下限数据是指相邻种植带之间的人行道的宽度的最小值,实际的人行道宽度不能小于该人行道宽度下限数据;种植带宽度数据根据种植机器人的性能设置(种植机器人在移动的同时可在一定宽度范围内把蔬菜栽种在土地上)。
50.在一些实施方式中,可事先测量大棚内侧的矩形区域的长度数据和宽度数据并存储到本地数据库中,从而第二获取模块2直接从本地数据库提取该长度数据和宽度数据。
51.在另一些实施方式中,第二获取模块2在获取大棚内侧的矩形区域的长度数据和宽度数据的时候:加载大棚的二维点云地图;所述二维点云地图包含所述大棚内部的在一个水平面上的扫描点点云;对所述二维点云地图进行灰度化处理,得到灰度图像;对所述灰度图像进行滤波去噪声处理;采用canny算子对滤波去噪声处理后的灰度图像进行边缘检测,得到边缘轮廓像素点的位置数据;把所述滤波去噪声处理后的灰度图像还原为彩色图像;根据所述边缘轮廓像素点的位置数据,对所述彩色图像中的边缘轮廓像素点的像素值进行二值化处理;根据所述边缘轮廓像素点的横向像素值梯度和纵向像素值梯度确定四个角点的位置;以所述四个角点为一个矩形区域的四个顶点,根据所述四个角点的坐标计算所述矩形区域的长度数据和宽度数据。
52.在该实施方式中,可用激光雷达(不限于此)在大棚内的一定高度处(高度可根据实际需要设置)在水平面内进行扫描,从而得到二维点云地图并存储在本地数据库中,从而第二获取模块2从本地数据库中加载该二维点云地图。该二维点云地图为彩色图像(三通道rgb图)。
53.对图像进行灰度化处理的方法以及把灰度图像还原为彩色图像的方法均为现有技术,此处不对其进行详述。
54.第二获取模块2可采用高斯滤波处理方法进行滤波去噪声处理,但不限于此。
55.其中,第二获取模块2在对所述彩色图像中的边缘轮廓像素点的像素值进行二值化处理的时候:把像素值小于或等于像素值阈值的边缘轮廓像素点的像素值调整为预设的第一像素值(例如0),并把像素值大于所述像素值阈值的边缘轮廓像素点的像素值调整为第二像素值(例如128)。其中,所述像素值阈值可以是根据实际需要预先设置的固定值(例如55),也可以用所述边缘轮廓像素点的平均像素值作为像素值阈值(从而,上述根据所述边缘轮廓像素点的位置数据,对所述彩色图像中的边缘轮廓像素点的像素值进行二值化处理中还包括:计算边缘轮廓像素点的平均像素值作为像素值阈值)。在实际应用中,通过激光雷达进行扫描时,当墙壁处有窗口或门口等可透光的部位,则实际上扫描得到的扫描点位置并非在可透光的部位处,而是位于大棚的外部,从而导致在进行边缘检测的时候得到
的轮廓线在对应可透光的部分是外凸的,该外凸的部分并非真实的轮廓线,在二维点云地图中,这些外凸部分的边缘轮廓像素点的颜色比较淡(像素值比真正的轮廓线上的边缘轮廓像素点的像素值大),通过对边缘轮廓像素点的像素值进行二值化处理,可加强真实轮廓线的颜色和假轮廓线的颜色之间的差别,从而在后续进行四个角点的位置的提取时,可只对真实轮廓线的边缘轮廓像素点进行分析,提高准确性。
56.其中,第二获取模块2在根据所述边缘轮廓像素点的横向像素值梯度和纵向像素值梯度确定四个角点的位置的时候:以像素值为第一像素值的边缘轮廓像素点为目标像素点,计算各目标像素点在横向方向上的像素值梯度和在纵向方向上的像素值梯度;提取在横向方向上的像素值梯度和在纵向方向上的像素值梯度均超过预设的偏差阈值(可根据实际需要设置)的像素点作为角点,并提取所述角点的位置数据。
57.需要说明的是,此处得到的角点的位置数据是二维点云地图中的图像坐标系的坐标数据,所述横向方向是指所述图像坐标系的横轴方向,所述纵向方向是指所述图像坐标系的纵轴方向;在二维点云地图中,大棚区域(为矩形区域)的宽度方向与所述横向方向一致、长度方向与所述纵向方向一致。目标像素点在横向方向上的像素值梯度是指该目标像素点与横向方向上的两个相邻像素点之间的像素值偏差(指绝对值)中的最大值,目标像素点在纵向方向上的像素值梯度是指该目标像素点与纵向方向上的两个相邻像素点之间的像素值偏差(指绝对值)中的最大值;对于非角点的边缘轮廓像素点,只有横向方向上的像素值梯度或纵向方向上的像素值梯度较大,另一个方向上的像素值梯度为0,只有角点在两个方向上的像素值梯度均较大。通过该方法可准确地得到四个角点的位置,从而知道大棚墙壁的位置(相邻的两个角点之间的连线的位置即为墙壁的位置)。
58.一般地,可用相邻角点之间的连线的最大长度作为矩形区域的长度数据,把相邻角点之间的连线的最小值作为矩形区域的宽度数据,但不限于此。
59.在一些优选实施方式中,第一计算模块3在计算种植带行数和人行道宽度数据的时候:根据以下公式计算种植带行数:;;;其中,k为种植带行数,w2为所述矩形区域的宽度数据,d为所述安全距离数据,n1为所述人行道宽度下限数据,h为所述种植带宽度数据,int为向下取整函数,n为的整数部分,mod为取余数函数,m为的余数;根据以下公式计算所述人行道宽度数据:;其中,n为人行道宽度数据。
60.在实际应用中,在大棚中种植蔬菜时,会分多行种植带进行蔬菜种植,每行种植带中均匀种植有蔬菜,而且相邻的种植带之间需要留有足够宽度的人行道供人员通过。在该实施方式中,在保证机器人与墙壁之间留有足够安全距离的情况下(),当可以整除时,则设置n行种植行和n行人行道,且每行人行道的宽度等于人行道宽度下限数据n1;当有余数m时,若该余数m不足够容纳一行种植带,则设置n行种植行和n行人行道,并把该余数m平均分配到每行人行道上,若该余数m足够容纳一行种植带,则设置n 1行种植行和n行人行道,并把余数m中刨除种植带后的剩余部分平均分配到每行人行道上。从而,在保证满足人行道宽度要求的情况下,使种植带的行数最大,使大棚内部的土地资源得到有效利用。
61.优选地,所述规划模块4用于在计算多个路径点的位姿的时候:以所述矩形区域的其中一个角点为原点,以所述矩形区域的长度方向为y轴方向,以所述矩形区域的宽度方向为x轴方向,构建参考坐标系;基于所述参考坐标系,循环执行以下步骤:b1.根据以下公式计算第r段横向路径段的第一个路径点的位姿:;;;其中,r为编号且初始值为1,、分别为第r段横向路径段的第一个路径点的x坐标值和y坐标值,为第r段横向路径段的第一个路径点的姿态角度,w1为种植机器人的宽度数据,l1为种植机器人的长度数据,d为所述安全距离数据,l2为所述矩形区域的长度数据,n为所述人行道宽度数据;b2.根据以下公式计算第r段横向路径段的第二个路径点的位姿:;;;其中,、分别为第r段横向路径段的第二个路径点的x坐标值和y坐标值,为第r段横向路径段的第二个路径点的姿态角度;b3.判断编号r 1是否大于所述种植带行数,若是,则结束循环,若否,则执行后续步骤;b4.根据以下公式计算第r段纵向路径段的第一个路径点的位姿:
;;;其中,、分别为第r段纵向路径段的第一个路径点的x坐标值和y坐标值,为第r段纵向路径段的第一个路径点的姿态角度;b5.根据以下公式计算第r段纵向路径段的第二个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第二个路径点的x坐标值和y坐标值,为第r段纵向路径段的第二个路径点的姿态角度;b6.根据以下公式计算第r段纵向路径段的第三个路径点的位姿:;;;其中,、分别为第r段纵向路径段的第三个路径点的x坐标值和y坐标值,为第r段纵向路径段的第三个路径点的姿态角度;b7.根据以下公式更新编号r:r=r 1。
62.例如,第一段横向路径段的第一个路径点,即为蛇形路径的起始点,其坐标为(,)、姿态角度为0
°
(表示种植机器人的前进方向为y轴方向),在种植机器人工作时,其中心点会与该路径点重合,从而保证种植机器人与墙壁之间的距离等于所述安全距离数据d,保证种植机器人的安全;第一段横向路径段的第二个路径点为种植机器人沿y轴方向移动至与墙壁之间的距离等于所述安全距离数据d时的种植机器人中心所在的点,其坐标为(,)、姿态角度为0
°
,此时,种植机器人遮挡的位置不能被种植蔬菜;然后种植机器人绕中心转动90度,把转动后的中心点作为下一个路径点
(即第一段纵向路径段的第一个路径点),其坐标保持不变为(,)、姿态角度为90
°
(表示种植机器人的前进方向为x轴方向);进而种植机器人需把之前遮挡的位置让出并在其上种植蔬菜,从而把下一个路径点(即第一段纵向路径段的第二个路径点)的坐标定为(,)、其姿态角度保持为90
°
,到此处,种植机器人可完成第一行种植带的种植工作,且保证了种植带的长度基本与矩形区域的长度相同;然后种植机器人需保持姿态角度为90
°
前行距离n以到达下一行种植带的起始位置,从而把下一个路径点(即第一段纵向路径段的第三个路径点)的坐标定为(,)、其姿态角度保持为90
°
;接着种植机器人需保持位置不变再旋转90
°
使前进方向沿

x轴方向,从而把下一个路径点(即第二段横向路径段的第一个路径点)的位置定为(,)、其姿态角度保持为180
°
(表示种植机器人的前进方向为

x轴方向);第二段横向路径段的第二个路径点为种植机器人沿

y轴方向移动至与墙壁之间的距离等于所述安全距离数据d时的种植机器人中心所在的点,其坐标为(,)、姿态角度为180
°
,此时,种植机器人遮挡的位置不能被种植蔬菜;然后种植机器人绕中心转动90度,把转动后的中心点作为下一个路径点(即第二段纵向路径段的第一个路径点),其坐标保持不变为(,)、姿态角度为90
°
(表示种植机器人的前进方向为x轴方向);进而种植机器人需把之前遮挡的位置让出并在其上种植蔬菜,从而把下一个路径点(即第二段纵向路径段的第二个路径点)的坐标定为(,)、其姿态角度保持为90
°
,到此处,种植机器人可完成第二行种植带的种植工作,且保证了种植带的长度基本与矩形区域的长度相同;然后种植机器人需保持姿态角度为90
°
前行距离n以到达下一行种植带的起始位置,从而把下一个路径点(即第二段纵向路径段的第三个路径点)的坐标定为(,)、其姿态角度保持为90
°
;以此类推,直到r>n。
63.优选地,该种植机器人路径规划装置还包括:标记模块,用于把各横向路径段的第一个路径点标记为作业点,把各横向路径段的第二个路径点标记为非作业点,把各纵向路径段的第一个路径点标定为作业点,把各纵向路径段的第二个路径点和第三个路径点标定为非作业点;其中,被标定为作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人需要在移动过程中进行种植作业;被标定为非作业点的路径点表示从本路径点开始到下一个路径点为止,种植机器人不需要在移动过程中进行种植作业。
64.从而种植机器人从一行种植行的起点移动到终点的过程中,保持种植作业,从而一边移动一边种植,到达该行种植行的终点时停止种植作业,并旋转90
°
;然后再次启动种植作业并往x轴方向移动到相应的纵向路径段的第二个路径点,从而在移动的同时对之前被遮挡的位置种植蔬菜,使该行种植行种满蔬菜;待移动到相应的纵向路径段的第二个路径点,停止种植作业并继续移动到下一行种植行的起点,该过程中不进行种植作业,避免在
人行道上种上蔬菜;进而,种植机器人再次旋转90
°
使前进方向朝向

x轴方向后,再次启动种植作业直到到达该种植行的终点;如此循环,直到完成所有种植行的种植作业。
65.因此,当把各路径点的位姿数据和相应的标记信息(该标记信息可以是数字信息,例如,标记信息为1表示对应的路径点为作业点,标记信息为0表示对应的路径点为非作业点,但不限于此)一同加载到种植机器人的控制系统后,种植机器人可在沿规划的路径移动的同时,根据各路径点的标记信息控制种植作业机构的启闭,无需额外向种植机器人发送控制信号以控制种植作业机构的启闭,可使种植机器人离线自动完成种植作业。
66.进一步地,该种植机器人路径规划装置还包括:记录模块,用于按照计算的先后顺序,把各路径点的路径点数据记录在一个文本文件中;所述路径点数据包括路径点的位姿数据和标记信息。
67.种植机器人工作时,可直接加载该文本文件,从而可提取各路径点的位姿数据和标记信息,进而可开始自动种植作业。方便生成的路径信息的保存和调用。
68.例如,在文本文件中,每个路径点的路径点数据记录为一行信息,有多少个路径点就有多少行信息,每行信息从左到右依次为x坐标值、y坐标值、姿态角度、标记信息。但不限于此。
69.由上可知,该种植机器人路径规划装置,通过获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;获取大棚内侧的矩形区域的长度数据和宽度数据;根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;从而在保证种植机器人的安全性的同时,有利于提高大棚环境中蔬菜的覆盖率。
70.请参阅图4,本技术实施例还提供一种电子设备100,包括处理器101和存储器102,存储器102中存储有计算机程序,处理器101通过调用存储器102中存储的计算机程序,用于执行如上述的种植机器人路径规划方法的步骤。
71.其中,处理器101与存储器102电性连接。处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或调用存储在存储器102内的计算机程序,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
72.存储器102可用于存储计算机程序和数据。存储器102存储的计算机程序中包含有可在处理器中执行的指令。计算机程序可以组成各种功能模块。处理器101通过调用存储在存储器102的计算机程序,从而执行各种功能应用以及数据处理。
73.在本实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的计算机程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储器102中的计算机程序,从而实现各种功能:获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;获取大棚内侧的矩形区域的长度数据和宽度数据;根据所述矩形区域的宽度数据、所述种植带宽度
数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据。
74.由上可知,该电子设备,通过获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;获取大棚内侧的矩形区域的长度数据和宽度数据;根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据;从而在保证植种机器人的安全性的同时,有利于提高大棚环境中蔬菜的覆盖率。
75.本技术实施例还提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时运行如上述的种植机器人路径规划方法的步骤,以实现以下功能:获取初始参数;所述初始参数包括种植机器人的长度数据和宽度数据、安全距离数据、人行道宽度下限数据和种植带宽度数据;获取大棚内侧的矩形区域的长度数据和宽度数据;根据所述矩形区域的宽度数据、所述种植带宽度数据、所述安全距离数据和所述人行道宽度下限数据计算种植带行数和人行道宽度数据;根据所述种植带行数、所述种植机器人的长度数据和宽度数据、所述安全距离数据、所述人行道宽度数据和所述矩形区域的长度数据计算多个路径点的位姿;所述多个路径点依次连接可形成一条蛇形路径,且所述种植机器人沿所述蛇形路径移动时与所述矩形区域边界的最近距离等于所述安全距离数据。
76.其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read

only memory, 简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable red

only memory, 简称prom),只读存储器(read

only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
77.综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术佩戴人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,其方案与本发明实质上相同。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜