掌桥专利:专业的专利平台
掌桥专利
首页

飞行控制方法、设备及系统

文献发布时间:2023-06-19 09:41:38


飞行控制方法、设备及系统

技术领域

本申请涉及飞行控制技术领域,尤其涉及一种飞行控制方法、设备及系统。

背景技术

近年来,随着科技的发展,无人飞行器的应用越来越广泛。

通常,通过无人飞行器的控制设备设定无人飞行器的航线,控制无人飞行器按照设定的航线飞行以完成相应任务。具体的,控制设备可以根据用户划定的目标区域自动生成无人飞行器的航线,并将航线发送至无人飞行器,无人飞行器便可根据航线自动飞行。

然而,对于一些针对目标区域中部分区域的特定场景,例如,该部分区域中存在障碍物阻碍飞行,或者,该部分区域需要重新飞行时,需要用户重新规划航线,因此存在操作复杂,智能化较低的问题。

发明内容

本申请实施例提供一种飞行控制方法、设备及系统,用以解决现有技术中操作复杂,智能化较低的问题。

第一方面,本申请实施例提供一种飞行控制方法,应用于控制设备,所述控制设备用于控制无人飞行器的飞行;包括:

显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段设有至少三个航点,其中两个航点位于所述航段的两端;

获取用户在所述第一目标区域中所选择的第二目标区域;

根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

第二方面,本申请实施例提供一种飞行控制方法,应用于控制设备,所述控制设备用于控制无人飞行器的飞行;包括:

显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点;

获取用户在所述第一目标区域中所选择的第二目标区域;

确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点;

根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

第三方面,本申请实施例提供一种控制设备,所述控制设备用于控制无人飞行器的飞行,包括:处理器和存储器;所述存储器,用于存储程序代码;所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:

显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点;

获取用户在所述第一目标区域中所选择的第二目标区域;

确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点;

根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

第四方面,本申请实施例提供一种无人飞行系统,包括:控制设备和无人飞行器;

所述控制设备,用于显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段设有至少三个航点,其中两个航点位于所述航段的两端;获取用户在所述第一目标区域中所选择的第二目标区域;以及,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器;

所述无人飞行器,用于根据所述第二航线执行飞行操作。

第五方面,本申请实施例提供一种无人飞行系统,包括:控制设备和无人飞行器;

所述控制设备,用于显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点;获取用户在所述第一目标区域中所选择的第二目标区域;确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点;以及,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

所述无人飞行器,用于根据所述第二航线执行飞行操作。

第六方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如第一方面任一项所述的方法。

第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行第二方面任一项所述的方法。

第八方面,本申请实施例提供一种计算机程序,当所述计算机程序被计算机执行时,用于实现如第一方面任一项所述的方法。

第九方面,一种计算机程序,当所述计算机程序被计算机执行时,用于实现如第二方面任一项所述的方法。

本申请实施例提供一种飞行控制方法、设备及系统,通过显示覆盖第一目标区域的第一航线,获取用户在第一目标区域中所选择的第二目标区域,根据第二目标区域未覆盖的第一航线的航点或第二目标区域覆盖的第一航线的航点,生成第二航线,实现了根据覆盖第一目标区域的第一航线的航点以及用户在第一目标区域中所选择的第二目标区域,生成特殊场景下针对第二目标区域的第二航线,使得无人飞行器能够根据第二航线执行飞行操作,与传统技术相比,减少了用户操作,提高了智能化。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1-图2为本申请实施例提供的飞行控制方法的应用场景示意图;

图3为现有技术中航线的示意图;

图4为本申请一实施例提供的飞行控制方法的流程示意图;

图5-图8D为本申请实施例提供的飞行控制方法的航线的示意图;

图9为本申请另一实施例提供的飞行控制方法的流程示意图;

图10-图12B为本申请实施例提供的飞行控制方法的航线的示意图;

图13为本申请一实施例提供的控制设备的结构示意图;

图14为本申请另一实施例提供的控制设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为本申请实施例提供的飞行控制方法的应用场景示意图,如图1所示,该应用场景包括控制设备11和无人飞行器12,其中,控制终端11与无人飞行器12通信连接,控制设备11用于控制无人飞行器12的飞行。具体的,控制终端11能够根据用户需求设置航线,并将航线发送至无人飞行器12,无人飞行器12能够根据控制终端11发送的航线执行飞行操作。示例性的,控制终端11包括带屏遥控器、智能手机、平板电脑、掌上电脑等。

需要说明的是,对于控制设备11与无人飞行器12通信连接的具体方式,本申请不做限定。可选的,控制设备11可以与无人飞行器12直接通信连接,或者,如图2所示,控制设备11可以通过中继设备与无人飞行器12通信连接。以控制设备11为智能手机为例,中继设备可以包括遥控器。以控制设备11为带屏遥控器为例,中继设备可以包括其他无人飞行器。

通常,如图3所示控制设备11设置的覆盖区域1的航线可以包括了平行的多个航段,通过将这些平行的航段连接起来,从而能够生成弓字形航线。需要说明的是,图3中的实线用于示例出一个航段,该实线两端的点即为航点。

其中,每个航段的两端分别设有一个航点,并且由于一个航段两端的航点能够唯一确定该航段,而无人飞行器的飞行控制器的内存有限,因此航段的两端之间并未设置航点。然而,对于一些针对图3所示的区域1中区域2的特殊场景,存在用户操作复杂,智能化较低的问题。

具体的,如图3所示,在图3中的区域2中存在障碍物阻碍飞行的情况下,无人飞行器在根据图3所示的航线飞行至该区域2附近时,需要用户手动操作无人飞行器绕过该区域2,在用户手动控制无人飞行器绕过该区域2之后,无人飞行器才能够根据图3所示的航线继续飞行。

如图3所示,在图3中的区域2需要重新飞行的情况下,无人飞行器在根据图3所示的航线结束飞行之后,需要用户手动操作无人飞行器在该区域2重新飞行。或者,无人飞行器在根据图3所示的航线结束飞行之后,需要用户使用控制设备重新规划针对该区域2的航线,具体的,不但需要用户划定该区域2,还需要用户设置该区域2对应的飞行状态等参数,以便控制终端能够根据用户设置重新规划航线。

本申请实施例提供的飞行控制方法,通过在覆盖第一目标区域的第一航线中的至少部分航段的两端之间设有航点,并根据用户在第一目标区域中所选择的第二目标区域以及第一航线的航段的航点,生成第二航线,实现了根据覆盖第一目标区域的第一航线的航点以及用户在第一目标区域中所选择的第二目标区域,生成特殊场景下针对第二目标区域的第二航线。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图4为本申请一实施例提供的飞行控制方法的流程示意图,本实施例的执行主体可以为控制设备11,具体可以为控制设备11的处理器。如图4所示,本实施例的方法可以包括:

步骤401,显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段设有至少三个航点,其中两个航点位于所述航段的两端。

本步骤中,第一目标区域X、第一航线、第一航线的航段以及航段的航点之间的关系可以如图5所示。参考图5,覆盖第一目标区域X的第一航线包括平行的多个航段S,且每个航段的两端分别设置有航点a,每个航段的两端之间还设置有航点b。

需要说明的是,每个所述航段的两端的航点以及两端之间的航点可以是默认航点;或者,每个航段两端的航点可以是默认航点,两端之间的航点可以是新增航点,增加航点的步骤可以在步骤401、步骤402或步骤403之前执行。其中,默认航点是指第一航线默认存在的航点,新增航点是指在第一航线的默认航点的基础上增加的航点。

需要说明的是,图5中航段的两端之间设置的航点数量仅为举例,第一目标区域X的形状仅为举例。图5中的实线用于示例出一个航段,该实线两端的点即为航点。

需要说明的是,图5仅为第一目标区域、第一航线、第一航线的航段以及航段的航点之间的关系示意图,并不作为显示覆盖第一目标区域的第一航线显示方式的限制。在显示覆盖第一目标区域的第一航线时,根据实际需求可以不显示航段的航点,或者,可以只显示航段两端的航点,或者可以显示航段的所有航点等。

步骤402,获取用户在所述第一目标区域中所选择的第二目标区域。

本步骤中,在图5的基础上,如图6A所示用户可以在第一目标区域X中选择第二目标区域Y1。第二目标区域Y1为第一目标区域X中的部分区域。或者,如图6B所示,用户可以在第一目标区域X中选择第二目标区域Y2。第二目标区域Y2为第一目标区域X中的部分区域。

需要说明的是,图6A和图6B中第二目标区域的形状仅为举例,第二目标区域Y的形状可以根据需求灵活实现,示例性的,第二目标区域的形状可以为正方形、长方形、圆形、椭圆形等。

其中,获取用户在第一目标区域中所选择的第二目标区域的具体方式,可以根据需求灵活实现。例如,可以获取用户输入的第二目标区域Y的中心点坐标以及中心点到区域边缘的距离,并根据中心点坐标以及距离确定第二目标区域。

步骤403,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

本步骤中,第二航线是基于第一航线的航点确定的,针对第二目标区域的航线。由于覆盖第一目标区域的第一航线包括了平行的多个航段,每个航段的两端之间设有航点,且第二目标区域是包含在第一目标区域中,因此第二目标区域能够覆盖第一航线的部分航点。并且,对于第二目标区域覆盖的第一航线的航点,存在两种情况,即要么是需要无人飞行器重点飞行的航点,要么是不需要无人飞行器飞行的航点。因此,无论具体是哪种特殊场景,在用户选择第二目标区域后,均能够通过根据第二目标区域未覆盖的第一航线的航点或第二目标区域覆盖的第一航线的航点的方式,生成针对第二目标区域的第二航线。

其中,第二目标区域覆盖的第一航线的航点包括完全位于所述第二目标区域内的航点。在另一优选实施例中,所述第二目标区域覆盖的第一航线的航点还包括位于所述第二目标区域边界上的航点。

对于对第二目标区域进行重点飞行的场景,第二航线为对所述第二目标区域进行重点飞行的航线。当第二目标区域的划分形状不适合生成较为顺畅的航线获其他原因时,可将实际上位于所述第二目标区域外且与所述第二目标区域的距离小于或等于预设阈值的航点加入第二航线的规划中。

第二目标区域未覆盖的第一航线的航点包括完全位于第二目标区域之外的航点。

对于对第二目标区域进行绕障飞行的场景,第二航线为绕开所述第二目标区域进行飞行的航线。当所述第二目标区域之外的航点和所述第二目标区域过近的时候,如果这些航点也加入第二航线的规划,可能会发生撞机的问题。因此,可将实际上位于所述第二目标区域外且与所述第二目标区域的距离小于或等于预设阈值的航点先删除,再基于剩下的航点进行航线规划。

在另一实施例中,当存在与所述第二目标区域的边界之间的距离小于或等于距离阈值的航点时,可以提示用户重新选择第二目标区域,更方便航线的规划,无需后期增加或删除。

示例性的,可以默认根据第二目标区域未覆盖的第一航线的航点,生成第二航线;或者,可以默认根据第二目标区域覆盖的第一航线的航点,生成第二航线;或者,可以基于用户操作,选择是根据第二目标区域未覆盖的第一航线的航点生成第二航线,还是根据第二目标区域覆盖的第一航线的航点生成第二航线。

本实施例中,通过显示覆盖第一目标区域的第一航线,获取用户在第一目标区域中所选择的第二目标区域,根据第二目标区域未覆盖的第一航线的航点或第二目标区域覆盖的第一航线的航点,生成第二航线,实现了根据覆盖第一目标区域的第一航线的航点以及用户在第一目标区域中所选择的第二目标区域,生成特殊场景下针对第二目标区域的第二航线,使得无人飞行器能够根据第二航线执行飞行操作,与传统技术相比,减少了用户操作,提高了智能化。

在图4所示实施例的基础上,可选的,当所述第二目标区域为障碍区域时,根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线;所述第二航线用于指示所述无人飞行器绕开所述第二目标区域进行飞行操作。这里,对于绕障场景,用户所选择的第二目标区域为阻碍无人飞行器飞行的障碍区域,此时,可以根据第二目标区域未覆盖的第一航线的航点,生成用于指示无人飞行器绕开第二目标区域进行飞行操作的第二航线。

可替换的,对于绕障场景,用户所选择的第二目标区域可以为非障碍区域,此时,可以根据第二目标区域覆盖的第一航线的航点生成用于指示所述无人飞行器对第二目标区域进行飞行操作的第二航线。由于用户所划定的飞行区域中,障碍区域通常较小,作业区域通常较大,因此在避障场景下,通过第二目标区域为障碍区域,能够便于用户选择,提高用户的使用体验。

在图4所示实施例的基础上,可选的,当所述第二目标区域为重点区域时,根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线;所述第二航线用于指示所述无人飞行器对所述第二目标区域进行飞行操作。这里,对于重点飞行场景,用户所选择的第二目标区域为需要无人飞行器重点飞行的重点区域,此时,可以根据第二目标区域覆盖的第一航线的航点,生成用于指示无人飞行器针对第二目标区域进行飞行操作的第二航线。由于用户所划定的飞行区域中,需要重点飞行的区域通常较小,不需要重点飞行的区域通常较大,因此在重点飞行场景下,通过第二目标区域为重点区域,能够便于用户选择,提高用户的使用体验。

示例性的,所述第二航线由首尾连接的多个直线段构成,每一所述直线段两端之间未设有航点。通过每一所述直线段两端之间未设有航点,能够减少所生成的第二航线中航点的数量,有利于减少航点对于无人飞行器的飞行控制器内存的占用,节省飞行控制器的内存资源。

示例性的,两条所述首尾连接的直线段不共线。在首尾连接的直线段共线时,可以表示第二航线中还存在冗余航点,通过两条首尾连接的直线段不共线,能够进一步减少生成的第二航线中航点的数量,有利于进一步减少航点对于无人飞行器的飞行控制器内存的占用,从而进一步节省飞行控制器的内存资源。

示例性的,两条所述首尾连接的直线段之间相互垂直,且与同一直线段首尾连接的两条所述直线段相互平行。通过首尾连接的直线段之间相互垂直且与同一直线段首尾连接的两条所述直线段相互平行,能够成弓字型的第二航线。

在图4所示实施例的基础上,可选的,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤A1、步骤B1和步骤C1。

步骤A1,根据所述第二目标区域,确定所述多个航段中的目标航段,所述目标航段包括所述第二目标区域未覆盖且未相邻的航段。

其中,根据第二目标区域未覆盖的第一航线的航点所生成的第二航线是用于指示无人飞行器绕开第二目标区域进行飞行操作。第二目标区域覆盖的航段以及第二目标区域相邻的航段两端之间的航点需要用于实现第二航线绕开第二目标区域,而第二目标区域未覆盖且未相邻的航段两端之间的航点并不需要用于实现第二航线绕开第二目标区域,即目标航段两端之间的航点是并不需要用于实现第二航线绕开第二目标区域,此时,目标航段两端之间的航点可以认为是冗余航点。

步骤B1,删除所述目标航段两端之间的航点以及所述第二目标区域覆盖的所述第一航线中的航点,得到所述第一航线的剩余航点。

其中,由于根据第二目标区域未覆盖的第一航线的航点所生成的第二航线是用于指示无人飞行器绕开第二目标区域进行飞行操作,因此第二目标区域覆盖的第一航线中的航点是无人飞行器不需要飞行的无效航点。

因此,通过删除目标航段两端之间的航点以及第二目标区域覆盖的第一航线中的航点,所得到的第一航线的剩余航点,能够生成用于指示无人飞行器绕开第二目标区域进行飞行操作的第二航线。

在图6A的基础上,删除目标航段两端之间的航点以及第二目标区域覆盖的第一航线中的航点之后,第一航线的剩余航点如图7A所示。如图7A所示,在步骤B1的基础上,还可以删除第二目标区域相邻的航段两端之间的部分航点,该部分航点也是冗余航点,具体可以根据需求灵活实现。

步骤C1,根据所述第一航线的剩余航点,生成第二航线。

通过删除第一航线的部分航点得到第一航线的剩余航点,并根据第一航线的剩余航点生成第二航线,与直接提取第二目标区域未覆盖的第一航线的航点,并生成第二航线相比,能够避免由于提取航点带来的实现复杂的问题,有利于简化实现。并且,能够减少参与生成第二航线的航点数量,有利于减少计算量,节省计算资源。

示例性的,步骤C1具体可以包括:删除所述第一航线的剩余航点中的冗余航点,得到关键航点,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,两条所述首尾连接的直线段不共线,所述关键航点为每一所述直线段两端的航点。其中,对于绕障场景,在将剩余航点依次连接的过程中需要保证连接线不与第二目标区域有交叉或接触。

例如,在图7A的基础上先删除航点b1、航点b2、航点b3和航点b4,即航点b1、b2、b3、b4为冗余航点,得到关键航点之后根据关键航点所生成的第二航线如图7B所示。图7B中以航点1为起始航点,航点26为结束航点为例,第一航线的航点顺序可以为航点1、航点2、……,航点26,从而实现绕开第二目标区域。

可替换的,在图7A的基础上可以先将第一航线的剩余航点依次连接形成多个首尾连接的直线段,并根据多个首尾连接的直线段生成的第二航线,所生成的第二航点如图7C所示,进一步的,在图7C的基础上可以删除航点b1、航点b2、航点b3和航点b4,得到如图7B所示的第二航线。

通过删除第一航线的剩余航点中的冗余航点,有利于减少航点对于无人飞行器的飞行控制器内存的占用,节省飞行控制器的内存资源。

或者,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤A2和步骤B2。

步骤A2,删除所述第二目标区域未覆盖的所述第一航线的航点中的冗余航点,得到所述第二目标区域未覆盖的所述第一航线的航点中的关键航点。

其中,第二目标区域未覆盖的第一航线的航点可以包括冗余航点和关键航点,其中,冗余航点可以理解为用于生成第二航线的非必要航点,关键航点可以理解为用于生成第二航线的必要航点,即定义一条直线的航点(直线两端的点)

例如,在图6A的基础,所得到的第二目标区域未覆盖的第一航线的航点中的关键航点如图7D所示。

步骤B2,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,两条所述首尾连接的直线段不共线,所述关键航点为每一所述直线段两端的航点。

其中,对于绕障场景,在将关键航点依次连接的过程中需要保证连接线不与第二目标区域有交叉或接触。例如通过将图7D所示的关键航点依次连接之后,得到如图7B所示的第二航线。

或者,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤A3和步骤B3。

步骤A3,将所述第二目标区域未覆盖的所述第一航线的航点依次连接,生成多个首尾连接的直线段。

其中,不区分第二目标区域未覆盖的第一航线的航点是冗余航点还是关键航点,可以直接将第二目标区域未覆盖的第一航线的航点依次连接,形成多个首尾连接的直线段。可以理解的是,当第二目标区域未覆盖的第一航线的航点包括冗余航点时,所生成的多个首尾连接的直线段中可以存在共线的直线段。对于绕障场景,在所述第二目标区域未覆盖的所述第一航线的航点依次连接的过程中需要保证连接线不与第二目标区域有交叉或接触。

例如,在图6A的基础,将所述第二目标区域未覆盖的所述第一航线的航点依次连接,生成多个首尾连接的直线段如图7E所示。

步骤B3,删除所述多个首尾连接的直线段中的冗余航点,使两条首尾连接的直线段不共线,以生成第二航线。

例如,通过将图7E所示的直线段中的冗余航点删除后,得到如图7B所示的第二航线。

在图4所示实施例的基础上,可选的,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤D1和步骤E1。

步骤D1,删除所述第二目标区域未覆盖的所述第一航线中的航点,得到所述第一航线的剩余航点。

其中,根据第二目标区域覆盖的第一航线的航点所生成的第二航线是用于指示无人飞行器对第二目标区域进行飞行操作。第二目标区域覆盖的航点需要用于实现第二航线飞行第二目标区域,而第二目标区域未覆盖的航点并不需要用于实现第二航线飞行第二目标区域,即第二目标区域未覆盖的航点必定是无人飞行器不需要飞行的无效航点。

因此,通过删除第二目标区域未覆盖的第一航线中的航点,所得到的第一航线的剩余航点,能够生成用于指示无人飞行器对第二目标区域进行飞行操作的第二航线。

在图6B的基础上,删除第二目标区域未覆盖的所述第一航线中的航点之后,第一航线的剩余航点如图8A所示。

步骤E1,根据所述第一航线的剩余航点,生成第二航线。

通过删除第二目标区域未覆盖的第一航线中的航点,得到第一航线的剩余航点,并根据第一航线的剩余航点生成第二航线,与直接提取第二目标区域覆盖的第一航线的航点并生成第二航线相比,能够避免由于提取航点带来的实现复杂的问题,有利于简化实现。

与步骤C1类似,步骤E1具体可以包括:删除所述第一航线的剩余航点中的冗余航点,得到关键航点,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,所述关键航点为每一所述直线段两端的航点。

例如,在图8A的基础上先删除航点b5、航点b6和航点b7,即航点b5、b6、b7为冗余航点,得到关键航点之后根据关键航点所生成的第二航线如图8B所示。图8B中以航点1为起始航点,航点6为结束航点为例,第一航线的航点顺序可以为航点1、航点2、……,航点6,从而实现飞行第二目标区域。

可替换的,在图8A的基础上可以先将第一航线的剩余航点依次连接形成多个首尾连接的直线段,并根据多个首尾连接的直线段生成的第二航线,所生成的第二航点如图8C所示,进一步的,在图8C的基础上可以删除航点b5、航点b6和航点b7,得到如图8B所示的第二航线。

或者,与步骤A2和步骤B2类似,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤D2和E2。

步骤D2,删除所述第二目标区域覆盖的所述第一航线的航点中的冗余航点,得到所述第二目标区域覆盖的所述第一航线的航点中的关键航点。

步骤E2,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,两条所述首尾连接的直线段不共线,所述关键航点为每一所述直线段两端的航点。

例如,在图6B的基础,所得到的第二目标区域覆盖的第一航线的航点中的关键航点如图8D所示。在图8D的基础上,将关键点依次连接之后,得到的第二航线如图8B所示。

或者,与步骤A3和步骤B3类似,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤D3和E3。

步骤D3,将所述第二目标区域覆盖的所述第一航线的航点依次连接,形成多个首尾连接的直线段;

步骤E3,删除所述多个首尾连接的直线段中的冗余航点,使两条首尾连接的直线段不共线,以生成第二航线。

例如,在图6B的基础,将所述第二目标区域覆盖的所述第一航线的航点依次连接所形成的首尾连接的直线段如图8C所示。在图8C的基础上,将冗余航点删除之后,得到的第二航线如图8B所示。

在图4所示实施例的基础上,可选的,所述航段的两端之间的航点可以按照用户的手动设置进行分布。通过航段两端之间的航点按照用户的手动设置分布,使得用户能够灵活设置航段的两端之间的航点,有利于提高灵活性。对于获取用户手动设置航段两端之间航点的具体方式,可以根据需求灵活实现,示例性的,可以获取用户在航段两端之间的点击操作,并在点击操作对应的航段位置设置航点。

示例性的,所述航段的两端之间的航点可以按照预设的目标策略进行自动设置。通过航段两端之间的航点按照预设的目标策略自动设置,有利于简化用户操作。

示例性的,所述目标策略包括下述中的任意一种:以预设距离为间隔的策略、等间隔设置预设数量的策略,设置数量与地形起伏状况正相关的策略。

其中,预设距离可以根据需求灵活实现,预设距离可以决定航段两端之间设置的航点数量。预设距离越大航段两端之间设置的航点数量越少,预设距离越小航段两端之间设置的航点数量越多。预设数量可以根据需求灵活实现,预设数量即为航段两端之间设置的航点的数量。

通常情况下,地形起伏状况越小则飞行环境状况越好,需要特殊考虑的概率越小,地形起伏状况越大则飞行环境状况越差,需要特殊考虑的概率越大,因此根据设置数量与地形起伏状况正相关的策略自动设置航段两端之间的航点,能够根据需求灵活控制在航段两端之间设置航点的粒度。

在图4所示实施例的基础上,示例性的,所述获取用户在所述第一目标区域中所选择的第二目标区域,具体可以包括:根据用户在所述第一目标区域中的区域选择操作,确定所述用户在所述第一目标区域中选择所述第二目标区域。从而使得用户能够通过区域选择操作在第一目标区域中灵活选择第二目标区域,有利于简化用户输入,提高用户的使用体验。

以上主要描述了第一航线的平行的多个航段中,各航段两端之间均设有航点的基础上,根据第二目标区域覆盖的第一航线中的航点或第二目标区域未覆盖的第一航线中的航点生成第二航线的方式。可替换的,在下述9所示实施例中,提供了在该多个航段中部分航段的两端之间设置航点的基础上,根据第二目标区域覆盖的第一航线中的航点或第二目标区域未覆盖的第一航线中的航点生成第二航线的方式。图9所示实施例中对于与前述实施例中相同的内容,不再赘述。

图9为本申请又一实施例提供的飞行控制方法的流程示意图,本实施例的执行主体可以为控制设备11,具体可以为控制设备11的处理器。如图9所示,本实施例的方法可以包括:

步骤901,显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点。

本步骤中,第一目标区域X、第一航线、第一航线的航段以及航段的航点之间的关系可以如图10所示。参考图10,覆盖第一目标区域X的第一航线包括平行的多个航段S,且每个航段的两端分别设置有航点a。

步骤902,获取用户在所述第一目标区域中所选择的第二目标区域。

本步骤中,在图10的基础上,如图11A所示用户可以在第一目标区域X中选择第二目标区域Y1,第二目标区域Y1为第一目标区域X中的部分区域。或者,如图11B所示用户可以在第一目标区域X中选择第二目标区域Y2,第二目标区域Y2为第一目标区域X中的部分区域。

步骤903,确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点。

本步骤中,以图11A为例,第二目标区域重叠的和相邻的目标航段分别为航段S1、S2、S3和S4。

需要说明的是,在目标航段的两端之间增加航点的具体方式,可以根据需求灵活实现。示例性的,各目标航段的两端之间增加的航点数可以相同,通过各目标航段的两端之间增加的航点数相同,有利于简化实现。

在图11A的基础上,在目标航段的两端之间增加航点之后的结果可以如图12A所示。在图11B的基础上,在目标航段的两端之间增加航点之后的结果可以如图12B所示。需要说明的是,图12A、图12B中增加航点的方式仅为举例。

步骤904,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

本实施例中,通过显示覆盖第一目标区域的第一航线,获取用户在第一目标区域中所选择的第二目标区域,确定多个航段中与第二目标区域重叠的和相邻的目标航段,在目标航段的两端之间增加航点,根据第二目标区域未覆盖的第一航线的航点或第二目标区域覆盖的第一航线的航点,生成第二航线,减少了用户操作,提高了智能化。并且,通过根据第二目标区域对第一航线的多个航段中的目标航段两端之间增加航点,能够减少所增加的航点数量,有利于节省控制设备的内存。

与图4所示实施例类似,步骤904具体可以包括:当所述第二目标区域为障碍区域时,根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线;所述第二航线用于指示所述无人飞行器绕开所述第二目标区域进行飞行操作;当所述第二目标区域为重点区域时,根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线;所述第二航线用于指示所述无人飞行器对所述第二目标区域进行飞行操作。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤F1和步骤G1。

步骤F1,删除所述第二目标区域覆盖的所述第一航线中的航点,得到所述第一航线的剩余航点。

其中,由于根据第二目标区域未覆盖的第一航线的航点所生成的第二航线是用于指示无人飞行器绕开第二目标区域进行飞行操作,因此第二目标区域覆盖的第一航线中的航点是无人飞行器不需要飞行的无效航点。因此,通过删除第二目标区域覆盖的第一航线中的航点,所得到的第一航线的剩余航点,能够生成用于指示无人飞行器绕开第二目标区域进行飞行操作的第二航线。

在图12A的基础上,删除第二目标区域覆盖的第一航线中的航点之后,第一航线的剩余航点如图7A所示。如图7A所示,在步骤F的基础上,还可以删除第二目标区域相邻的航段两端之间的部分航点,该部分航点也是冗余航点,具体可以根据需求灵活实现。

步骤G1,根据所述第一航线的剩余航点,生成第二航线。

需要说明的是,步骤G1的具体实现与前述实施例中步骤C1类似,在此不再赘述。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤F2和步骤G2。

步骤F2,删除所述第二目标区域未覆盖的所述第一航线的航点中的冗余航点,得到所述第二目标区域未覆盖的所述第一航线的航点中的关键航点。

步骤G2,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,两条所述首尾连接的直线段不共线,所述关键航点为每一所述直线段两端的航点。

需要说明的是,步骤F2的具体实现与前述实施例中步骤A2类似,步骤G2的具体实现与前述实施例中步骤B2类似,在此不再赘述。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域未覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤F3和步骤G3。

步骤F3,将所述第二目标区域未覆盖的所述第一航线的航点依次连接,生成多个首尾连接的直线段。

步骤G3,删除所述多个首尾连接的直线段中的冗余航点,使两条首尾连接的直线段不共线,以生成第二航线。

需要说明的是,步骤F3的具体实现与前述实施例中步骤A3类似,步骤G3的具体实现与前述实施例中步骤B3类似,在此不再赘述。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤H1和步骤I1。

步骤H1,删除所述第二目标区域未覆盖的所述第一航线中的航点,得到所述第一航线的剩余航点。

其中,根据第二目标区域覆盖的第一航线的航点所生成的第二航线是用于指示无人飞行器对第二目标区域进行飞行操作。第二目标区域覆盖的航点需要用于实现第二航线飞行第二目标区域,而第二目标区域未覆盖的航点并不需要用于实现第二航线飞行第二目标区域,即第二目标区域未覆盖的航点必定是无人飞行器不需要飞行的无效航点。

因此,通过删除第二目标区域未覆盖的第一航线中的航点,所得到的第一航线的剩余航点,能够生成用于指示无人飞行器对第二目标区域进行飞行操作的第二航线。

在图12B的基础上,删除第二目标区域未覆盖的所述第一航线中的航点之后,第一航线的剩余航点如图8A所示。参考图12A和图8A可以看出,由于在根据第二目标区域覆盖的第二航线的航点生成第二航线时,第二目标区域未覆盖的第一航线的航点必定是无人飞行器不需要飞行的无效航点,因此在步骤904需要根据所述第二目标区域覆盖的所述第一航线的航点生成第二航线的情况下,步骤903可以替换为确定所述多个航段中与所述第二目标区域重叠的目标航段,在所述目标航段的两端之间增加航点。

步骤I1,根据所述第一航线的剩余航点,生成第二航线。

需要说明的是,步骤I1的具体实现与前述实施例中步骤E1类似,在此不再赘述。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤H2和步骤I2。

步骤H2,删除所述第二目标区域覆盖的所述第一航线的航点中的冗余航点,得到所述第二目标区域未覆盖的所述第一航线的航点中的关键航点。

步骤I2,将所述关键航点依次连接,形成多个首尾连接的直线段,以生成第二航线;其中,两条所述首尾连接的直线段不共线,所述关键航点为每一所述直线段两端的航点。

需要说明的是,步骤H2的具体实现与前述实施例中步骤D2类似,步骤I2的具体实现与前述实施例中步骤E2类似,在此不再赘述。

在图9所述实施例的基础上,可选的,所述根据所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,具体可以包括如下步骤H3和步骤I3。

步骤H3,将所述第二目标区域覆盖的所述第一航线的航点依次连接,生成多个首尾连接的直线段。

步骤I3,删除所述多个首尾连接的直线段中的冗余航点,使两条首尾连接的直线段不共线,以生成第二航线。

需要说明的是,步骤H3的具体实现与前述实施例中步骤D3类似,步骤I3的具体实现与前述实施例中步骤E3类似,在此不再赘述。

与图4所示实施例类似,步骤903中所述在所述目标航段的两端之间增加航点,具体可以包括:按照预设的目标策略在所述目标航段的两端之间增加航点。示例性的,所述目标策略包括下述中的任意一种:以预设距离为间隔的策略或等间隔设置预设数量的策略。

与图4所示实施例类似,步骤903中所述在所述目标航段的两端之间增加航点,具体可以包括:按照用户的手动设置在所述目标航段的两端之间增加航点。

与图4所示实施例类似,步骤902具体可以包括:根据用户在所述第一目标区域中的区域选择操作,确定所述用户在所述第一目标区域中选择所述第二目标区域。

图13为本申请一实施例提供的控制设备的结构示意图,该控制设备用于控制无人飞行器的飞行。如图13所示,该控制设备1300可以包括:存储器1301和处理器1302。

所述存储器1301,用于存储程序代码;

所述处理器1302,调用所述程序代码,当程序代码被执行时,用于执行以下操作:

显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段设有至少三个航点,其中两个航点位于所述航段的两端;

获取用户在所述第一目标区域中所选择的第二目标区域;

根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

本实施例提供的控制设备1300,可以用于执行前述图5方法实施例的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。

图14为本申请另一实施例提供的控制设备的结构示意图,该控制设备用于控制无人飞行器的飞行。如图14所示,该控制设备1400可以包括:存储器1401和处理器1402。

所述存储器1401,用于存储程序代码;

所述处理器1402,调用所述程序代码,当程序代码被执行时,用于执行以下操作:

显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点;

获取用户在所述第一目标区域中所选择的第二目标区域;

确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点;

根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

本实施例提供的控制设备1400,可以用于执行前述图9方法实施例的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。

如图1、图2所示,本申请实施例还提供一种无人飞行系统包括:控制设备11和无人飞行器12。其中,所述控制设备11,用于显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段设有至少三个航点,其中两个航点位于所述航段的两端;获取用户在所述第一目标区域中所选择的第二目标区域;以及,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器;

所述无人飞行器12,用于根据所述第二航线执行飞行操作。

如图1、图2所示,本申请实施例还提供一种无人飞行系统包括:控制设备11和无人飞行器12。其中,所述控制设备11,用于显示覆盖第一目标区域的第一航线;其中,所述第一航线包括平行的多个航段,每个所述航段的两端分别设有一个航点;获取用户在所述第一目标区域中所选择的第二目标区域;确定所述多个航段中与所述第二目标区域重叠的和相邻的目标航段,在所述目标航段的两端之间增加航点;以及,根据所述第二目标区域未覆盖的所述第一航线的航点或所述第二目标区域覆盖的所述第一航线的航点,生成第二航线,并将所述第二航线发送至所述无人飞行器,以使所述无人飞行器能够根据所述第二航线执行飞行操作。

所述无人飞行器12,用于根据所述第二航线执行飞行操作。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

相关技术
  • 飞行器的飞行控制方法、装置、终端设备及飞行控制系统
  • 一种飞行器飞行稳定控制方法、系统、设备及存储介质
技术分类

06120112266015