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

无人船到达目标地点的方法、系统、存储介质和无人船与流程

2022-07-02 12:20:20 来源:中国专利 TAG:


1.本发明涉及无人船技术领域,具体而言,涉及一种无人船到达目标地点的方法、系统、存储介质和无人船。


背景技术:

2.无人船是一种可以无需进行遥控、借助精确卫星定位和自身传感即可按照预设任务在水面航行的水面机器人。这种“水面机器人”融合了船舶、通信、自动控制、远程监控和网络化系统等多项技术,实现了自主导航、智能避障、远距离通信、视频实时传输和网络化监控等多项功能。
3.无人船因具有体积小、成本低和机动性强等特点,被广泛应用于水质检测、拉网打窝、水面清污、海上救援和探索未知环境等众多实际场景。规避其他船只或浮漂物等障碍物,准确到达指定的目标地点是无人船的基本需求之一。然而,船体运动因水面摩擦力小导致存在惯性漂移大的现象,使得自主导航的航迹控制不够准确,无人船无法准确到达目标地点。
4.另外,无人驾驶常常依赖于详细且准确的先验地图来实现路径规划和自主导航。然而,对于水域环境的无人驾驶而言,由于水面空间广大,水面环境复杂,任务情况多变,很难构建水域环境的先验地图来进行路径规划。


技术实现要素:

5.为了改善上述问题,本发明提供了一种无人船到达目标地点的方法、系统、存储介质和无人船。
6.本发明第一实施例提供了一种无人船到达目标地点的方法,其包括:
7.获取无人船和目标地点在平面坐标系下的实际坐标数据,计算目标地点相对于无人船的方位和距离;
8.驱动无人船按照规划路径行驶;
9.在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,基于当前速度实时获得惯性行驶距离,控制无人船的速度大小和行驶方向以使得当无人船的当前位置与目标地点之间的距离小于等于实时获得的惯性行驶距离时,停止驱动无人船以使其通过惯性动力行驶到目标地点处或距离目标地点的预设范围内。
10.其中:所述获取无人船和目标地点在平面坐标系下的实际坐标数据的方法包括:将无人船和目标地点在卫星导航系统坐标系下的经度和纬度数据转换为平面坐标系下的坐标数据。
11.其中:所述卫星导航系统坐标系为wgs84坐标系。
12.其中:采用双桨无舵的差分控制方式来控制无人船的速度大小和行驶方向。
13.其中:所述基于当前速度实时获得惯性行驶距离的方法如下所述:
[0014][0015]
其中ld是无人船在停止驱动后的惯性行驶距离,是无人船在平面坐标系下的x轴方向的速度,是无人船在平面坐标系下的y轴方向的速度,u1是无人船在船体坐标系下的行驶速度,r是转艏角速率,θ1是在平面坐标系下无人船在停止驱动时的航向角,表示运动的角速率。
[0016]
本发明第二实施例提供了一种无人船到达目标地点的系统,其包括:
[0017]
数据获取和计算装置,用于获取无人船和目标地点在平面坐标系下的实际坐标数据,计算目标地点相对于无人船的方位和距离;
[0018]
驱动装置,用于驱动无人船按照规划路径行驶;
[0019]
控制装置,用于在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,基于当前速度实时获得惯性行驶距离,控制无人船的速度大小和行驶方向以使得当无人船的当前位置与目标地点之间的距离小于等于实时获得的惯性行驶距离时,停止驱动无人船以使其通过惯性动力行驶到目标地点处或距离目标地点的预设范围内。
[0020]
其中所述获取无人船和目标地点在平面坐标系下的实际坐标数据的实现过程包括:将无人船和目标地点在wgs84坐标系下的经度和纬度数据转换为平面坐标系下的坐标数据。
[0021]
其中采用双桨无舵的差分控制方式来控制无人船的速度大小和行驶方向。
[0022]
其中所述基于当前速度实时获得惯性行驶距离的实现过程如下所述:
[0023][0024]
其中ld是无人船在停止驱动后的惯性行驶距离,是无人船在平面坐标系下的x轴方向的速度,是无人船在平面坐标系下的y轴方向的速度,u1是无人船在船体坐标系下的行驶速度,r是转艏角速率,θ1是在平面坐标系下无人船在停止驱动时的航向角,表示运动的角速率。
[0025]
本发明第三实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序被处理器执行时实现上述的方法。
[0026]
本发明第四实施例提供了一种无人船,其包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
[0027]
与现有技术相比,本发明的有益效果是:
[0028]
1.本发明通过使用卫星定位,利用卫星地图建立任务地图,将无人船在路径规划方法和卫星坐标下的航向控制方式相结合,实时控制无人船,也即,本发明在无需建立水域环境先验地图的条件下,即可实现准确的定点巡航。
[0029]
2.通过在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,改善了自主导航的航迹控制不够准确的问题,通过设置惯性缓冲范围,控制无人船提前减速,改善了无人船无法准确到达目标地点的问题。
附图说明
[0030]
图1是本发明第一实施例的无人船到达目标地点的方法的流程图;
[0031]
图2是本发明第二实施例的无人船到达目标地点的系统的示意性框图;
[0032]
图3是在平面坐标系下无人船与目标地点之间的距离和方位的示意图。
具体实施方式
[0033]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034]
图1是本发明第一实施例的无人船到达目标地点的方法的流程图。如图1所示,本发明提供的一种无人船到达目标地点的方法包括:
[0035]
s1:获取无人船和目标地点在平面坐标系下的实际坐标数据,计算目标地点相对于无人船的方位和距离。
[0036]
通过全球卫星导航系统获得无人船的经度和纬度数据以及目标地点的经度和纬度数据,该经度和纬度数据是wgs84坐标系下的经纬度数据,将无人船和目标地点在wgs84坐标系下的经度和纬度数据转换为平面坐标系下的坐标数据,从而获取无人船和目标地点在平面坐标系下的实际坐标数据。这可以通过现有已知技术来实现,这里不再赘述。
[0037]
所述计算目标地点相对于无人船的方位和距离是基于平面坐标系下的坐标数据来完成的。
[0038]
在平面坐标系下,设无人船的初始位置为(x0,y0,θ0),无人船通过驱动而运动行驶后停止驱动时的位置为(x1,y1,θ1),无人船停止驱动后经过惯性行驶最终到达的位置为(x2,y2,θ2),目标地点的位置为(x3,y3),无人船停止驱动后的惯性行驶路程为ld,即位置(x1,y1,θ1)和位置(x2,y2,θ2)之间的距离,初始位置和目标地点的距离方位为路程ρ和角度得到目标地点相对于无人船的方位和距离的关系式:
[0039][0040]
其中为在平面坐标系下驱动无人船行驶的路程,θ是在平面坐标系下无人船的船艏与x轴的夹角。
[0041]
当无人船在行驶时,通过全球卫星导航系统获得无人船的实时位置的经度和纬度数据,将相应的经度和纬度数据转换到平面坐标系下的坐标数据,即为在导航地图中的实际坐标,设无人船在行驶中的当前位置为(x
’0,y
’0,θ
’0),则可以使用上述公式计算目标地点相对于行驶中的无人船的方位和距离。
[0042]
通过结合图3来举例说明。如图3所示,设a点为无人船的当前位置,朝向为ac方向,b点为目标地点,φ为航向角,∠ban为a、b间的方位角,可以利用geographiclib库中的已知相关函数来计算出无人船的当前位置到目标地点这两点的距离以及方位角,即图3所示的ab距离和∠ban,然后通过调用move_base功能包,将数据以坐标x和y的形式传入。
[0043]
s2:驱动无人船按照规划路径行驶。
[0044]
本发明采用的规划路径方法如下所述:
[0045]
形成一张空白地图,获取地图框架原点的横坐标和纵坐标,用来计算地图框架内的目标;通过卫星定位的绝对定位方法来实时确定无人船的位置和目标地点的位置,计算目标地点相对于无人船的方位和距离,将两者的距离分解为前进方向(x)和侧向(y)的移动距离,将无人船的前进方向朝向目标地点;通过安装在无人船上的激光扫描仪来持续获取前方障碍物的距离和角度,设定躲避障碍物的阈值判断条件,当判定无人船在巡航的途中遇到障碍物时控制无人船以一定的角速度进行避障转向,待障碍物消失在雷达检测范围内时,再重新计算目标地点相对于无人船的方位和距离,将无人船的前行方向继续朝着目标地点自主巡航。通过卫星定位和障碍物规避来规划出无人船的行驶路径。
[0046]
通过驱动电机使双螺旋桨提供推力来驱动无人船行驶。
[0047]
s3:在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,基于当前速度实时获得无人船在停止驱动后的惯性行驶距离,控制无人船的速度大小和行驶方向以使得当无人船的当前位置与目标地点之间的距离小于等于实时获得的惯性行驶距离时,停止驱动无人船以使其通过惯性动力行驶到目标地点处或距离目标地点的预设范围内。
[0048]
其中,可以采用步骤s1中介绍的方式来实时计算无人船的当前位置与目标地点之间的距离。
[0049]
在平面坐标系下无人船的速度与运动参数关系为:
[0050][0051]
其中为无人船在t时刻在平面坐标系下的速度和方向,v(t)为无人船的前进速度,r(t)为无人船的转向角速率。无人船在t时刻在平面坐标系下的速度和方向可以通过现有已知的定位方法来得到,这对于本领域技术人员来说是熟知的,不再赘述。
[0052]
其中,采用双桨无舵的差分驱动控制方式来控制无人船的速度大小和行驶方向。建立左侧驱动电机和右侧驱动电机的推进速度与无人船的整体速度之间的关联性,由此实现控制无人船的速度大小和行驶方向。
[0053]
左侧驱动电机和右侧驱动电机的推进速度与无人船的整体速度之间的关系式为:
[0054][0055]
其中v
l
表示左侧驱动电机的推进速度,vr表示右侧驱动电机的推进速度,v表示无人船的整体速度,r表示运动轨迹半径,l表示运动轨迹内圈半径,d表示左右驱动电机到二者之间中心点的距离,r表示船绕轴的转艏角速率。
[0056]
这样通过控制左侧驱动电机和右侧驱动电机的推进速度,可以实现控制无人船的速度大小和行驶方向。
[0057]
其中,所述惯性行驶距离是指无人船在停止驱动后基于惯性动力行驶的距离,也可以称为惯性漂移距离。所述基于当前速度实时获得惯性行驶距离的方法如下所述:
[0058][0059]
其中ld是无人船在停止驱动后的惯性行驶距离,是无人船在平面坐标系下的x轴方向的速度,是无人船在平面坐标系下的y轴方向的速度,u1是无人船在船体坐标系下的行驶速度,r是转艏角速率,θ1是在平面坐标系下无人船在停止驱动时的航向角,表示运动的角速率,和r在数值上相等。
[0060]
无人船的航向可以通过gps装置来获得。
[0061]
上述基于当前速度实时获得惯性行驶距离的方法将平面坐标系与船体坐标系联合,利用无人船离目标地点的距离方位和无人船的行驶速度与转向速率的函数关系,可以控制无人船的速度大小和行驶方向以使得当无人船的当前位置与目标地点之间的距离小于等于实时获得的惯性行驶距离时,停止驱动无人船以使其通过惯性动力行驶到目标地点处或距离目标地点的预设范围内。
[0062]
另外,下面介绍一下无人船在驱动下的前进距离和侧向移动距离的计算方法。
[0063]
以无人船为原点,前进方向为x轴,侧向方向为y轴,建立平面坐标系。设驱动无人船在x方向的移动距离为z
x
,在y方向的移动距离为zy,则
[0064][0065]
其中,为在平面坐标系下驱动无人船行驶的路程,无人船的初始位置为(x0,y0,θ0),无人船经过运动行驶后停止驱动时的位置为(x1,y1,θ1)。
[0066]
这样可以获得无人船在驱动下的前进距离z
x
和侧向移动距离zy。
[0067]
当无人船停止驱动后通过惯性动力向目标地点行驶时,由于水面情况的复杂性,
无人船未必能准确到达目标地点处,更多情况下是到达距离目标地点的预设范围内。将无人船到达的地点(x2,y2,θ2)与目标地点位置(x3,y3)比较,得到相差距离d,设定距离目标地点的预设范围的阈值d,当d《d,则无人船到达目标地点的预设范围之内,此时认为无人船到达了目标地点附近范围内,完成了一次定点巡航。
[0068]
本发明提供的无人船到达目标地点的方法,通过使用卫星定位,无需建立先验地图,利用卫星地图建立任务地图,将无人船的路径规划方法和卫星坐标下的航向控制方式相结合,实时控制无人船在无需建图的条件下实现准确的定点巡航;通过在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,改善了自主导航的航迹控制不够准确的问题,通过设置惯性缓冲范围,控制无人船提前减速,改善了无人船无法准确到达目标地点的问题。
[0069]
图2是本发明第二实施例的无人船到达目标地点的系统的示意性框图。
[0070]
如图2所示,本发明提供的一种无人船到达目标地点的系统包括:
[0071]
数据获取和计算装置,用于获取无人船和目标地点在平面坐标系下的实际坐标数据,计算目标地点相对于无人船的方位和距离;
[0072]
驱动装置,用于驱动无人船按照规划路径行驶;
[0073]
控制装置,用于在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,基于当前速度实时获得惯性行驶距离,控制无人船的速度大小和行驶方向以使得当无人船的当前位置与目标地点之间的距离小于等于实时获得的惯性行驶距离时,停止驱动无人船以使其通过惯性动力行驶到目标地点处或距离目标地点的预设范围内。
[0074]
其中所述获取无人船和目标地点在平面坐标系下的实际坐标数据的实现过程包括:将无人船和目标地点在wgs84坐标系下的经度和纬度数据转换为平面坐标系下的坐标数据。
[0075]
其中采用双桨无舵的差分控制方式来控制无人船的速度大小和行驶方向。
[0076]
其中所述基于当前速度实时获得惯性行驶距离的实现过程如下所述:
[0077][0078]
其中ld是无人船在停止驱动后的惯性行驶距离,是无人船在平面坐标系下的x轴方向的速度,是无人船在平面坐标系下的y轴方向的速度,u1是无人船在船体坐标系下的行驶速度,r是转艏角速率,θ1是在平面坐标系下无人船在停止驱动时的航向角,表示运动的角速率。
[0079]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述第二实施例描述的无人船到达目标地点的系统的具体工作过程,可以参考前述第一实施例中的对应过程,前述第一实施例及相应的优选实施例中列举的例子和相关描述,同样适用于解释第二实施例描述的系统的工作过程,在此不再重复描述。
[0080]
本发明提供的无人船到达目标地点的系统,通过使用卫星定位,无需建立先验地
图,利用卫星地图建立任务地图,将无人船的路径规划方法和卫星坐标下的航向控制方式相结合,实时控制无人船在无需建图的条件下实现准确的定点巡航;通过在行驶过程中实时计算无人船的当前位置与目标地点之间的距离,改善了自主导航的航迹控制不够准确的问题,通过设置惯性缓冲范围,控制无人船提前减速,改善了无人船无法准确到达目标地点的问题。
[0081]
以上已参照图1、2描述了根据本技术示例性实施例的无人船到达目标地点的方法和系统。然而,应理解的是:这里的系统及其单元模块可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些单元模块可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些装置或单元模块所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。
[0082]
此外,上述无人船到达目标地点的方法可通过记录在计算机可读存储介质的程序来实现,例如,根据本技术示例性实施例,可提供一种计算机可读存储介质,其中在所述计算机可读存储介质上记录有当被处理器执行时实现如第一实施例所述的方法或其与相应优选实施例的组合所述的方法的计算机程序。
[0083]
上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这里为了避免重复将不再进行赘述。
[0084]
此外,本发明还提供了一种无人船,其包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序。所述处理器执行所述计算机程序时实现上述无人船到达目标地点的方法,执行如第一实施例所述的方法步骤或其与相应优选实施例的组合所述的方法步骤。
[0085]
以上内容是结合具体实施方式对本发明作进一步详细说明,不能认定本发明具体实施只局限于这些说明,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明的构思的前提下,还可以作出若干简单的推演或替换,都应当视为属于本发明所提交的权利要求书确定的保护范围。
再多了解一些

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

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

相关文献