发明内容
本发明实施例提供了一种无人机的飞行控制方法、装置及存储介质,用于解决现有技术中成本较高,检测结果不准确的问题。所述技术方案如下:
第一方面,提供了一种无人机的飞行控制方法,所述方法包括:
获取本端无人机的无人机参数;
接收与本端无人机无线连接成功的对端无人机的无人机参数;
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件;
当本端无人机和对端无人机之间的关系不满足所述安全净空条件时,控制本端无人机进行避障飞行。
可选地,所述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数,确定本端无人机的安全净空区,以及根据对端无人机的无人机参数,确定对端无人机的安全净空区;
基于本端无人机的安全净空区和对端无人机的安全净空区,确定所述安全净空条件。
可选地,所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,所述第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离;
所述根据本端无人机的无人机参数,确定本端无人机的安全净空区,包括:
基于所述第一三维位置信息、所述第一飞行速度,按照所述第一预设时长为时间间隔,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,所述第一预设时长小于所述第二预设时长;
将本端无人机的最高飞行速度与第一预设时长相乘,得到第一移动距离;
基于所述第一三维位置序列、所述第一预设三维位置误差、所述第一边缘距离和所述第一移动距离,确定本端无人机的安全净空区。
可选地,所述对端无人机的无人机参数包括对端无人机的最高飞行速度、第二飞行速度、第二三维位置信息、第二预设三维位置误差和第二边缘距离,所述第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离;
所述根据对端无人机的无人机参数,确定对端无人机的安全净空区,包括:
基于所述第二三维位置信息、所述第二飞行速度,按照第一预设时长为时间间隔,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
将对端无人机的最高飞行速度与第一预设时长相乘,得到第二移动距离;
基于所述第二三维位置序列、所述第二预设三维位置误差、所述第二边缘距离和所述第二移动距离,确定对端无人机的安全净空区。
可选地,所述当本端无人机和对端无人机之间的关系不满足所述安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
在三维空间的各个方向上,分别确定本端无人机的安全净空区和对端无人机的安全净空区之间存在重叠区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机和对端无人机之间的关系不满足安全净空条件。
可选地,所述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围;
基于本端无人机的安全净空范围,确定本端无人机和对端无人机之间的安全净空条件。
可选地,所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离;对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离;
所述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围,包括:
基于所述第一三维位置信息、所述第一飞行速度和第一预设时长,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列;
将本端无人机的最高飞行速度与所述第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与所述第一预设时长相乘,得到第二移动距离;
基于所述第一三维位置序列、所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离、所述第一移动距离和所述第二移动距离,确定本端无人机的安全净空范围。
可选地,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息,所述当本端无人机和对端无人机之间的关系不满足所述安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
基于所述第二三维位置信息、所述第二飞行速度和所述第一预设时长,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
在三维空间的各个方向上,分别确定所述第二三维位置序列中位于本端无人机的安全净空范围内时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,所述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区;
基于所述安全净空叠加区,确定本端无人机和对端无人机之间的安全净空条件。
可选地,所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一预设时长、第一预设三维位置误差和第一边缘距离,所述对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离;
所述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区,包括:
将本端无人机的最高飞行速度与所述第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与所述第一预设时长相乘,得到第二移动距离;
基于所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离、所述第一移动距离和所述第二移动距离,确定本端无人机与对端无人机之间的安全净空叠加区。
可选地,本端无人机的无人机参数还包括第一飞行速度和第一三维位置信息,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息,所述当本端无人机和对端无人机之间的关系不满足所述安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
基于所述第一三维位置信息、所述第二三维位置信息、所述第一飞行速度、所述第二飞行速度、所述第一预设时长,确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列;
在三维空间的各个方向上,分别确定所述三维相对位置序列中属于所述安全净空叠加区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,所述控制本端无人机进行避障飞行,包括:
控制本端无人机在目标位置处悬停;
若当悬停时仍未接收到对端无人机的第一悬停通知,所述第一悬停通知用于指示对端无人机已悬停,则向对端无人机发送第二悬停通知,所述第二悬停通知用于指示本端无人机已悬停;
确定避障飞行轨迹,并按照所述避障飞行轨迹进行飞行。
可选地,所述控制本端无人机进行避障飞行,包括:
接收对端无人机发送的第一悬停通知;
控制本端无人机在目标位置处悬停并保持悬停状态;
当接收到对端无人机发送的第一飞行指示时,控制本端无人机在第三预设时长后继续飞行。
可选地,所述控制本端无人机在目标位置处悬停之前,还包括:
确定所述非空交集中的最小时间;
基于所述第一飞行速度、所述最小时间和所述第一三维位置信息,确定第一到达位置;
将本端无人机在飞行方向上距离所述第一到达位置预设距离的位置处确定为所述目标位置。
可选地,所述确定避障飞行轨迹,包括:
分别确定附着点和离开点集合,所述附着点是指所述避障飞行轨迹的起始点,离开点是指所述避障飞行轨迹的终点;
基于所述附着点和所述离开点集合,确定所述避障飞行轨迹。
可选地,所述分别确定附着点和离开点集合,包括:
基于所述第二飞行速度、所述最小时间、所述预设距离和所述第二三维位置信息,确定对端无人机的悬停位置,以及基于所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离和所述预设距离,确定与所述悬停位置之间的最小三维安全距离;
以所述悬停位置为几何中心,基于所述最小三维安全距离,确定所述几何中心所在的立方体的各个顶点坐标;
将所述各个顶点中与本端无人机当前悬停位置最近的顶点确定为所述附着点,并基于所述第一飞行速度在三维空间上的飞行方向,确定所述离开点集合。
可选地,所述基于所述附着点和所述离开点集合,确定所述避障飞行轨迹,包括:
若所述离开点集合中存在与所述附着点处于同一平面内的离开点,则将本端无人机从当前悬停位置至所述附着点以及从所述附着点至与所述附着点处于同一平面内的任一离开点所在的直线轨迹确定为所述避障飞行轨迹;
若所述离开点集合中不存在与所述附着点处于所述同一平面内的离开点,则从所述离开点集合中选择任一离开点,并从所述各个顶点中选择桥接点,所述桥接点是指分别与所述附着点和所选择的离开点均处于同一平面的点;将本端无人机从当前悬停位置至所述附着点、从所述附着点至所述桥接点以及从所述桥接点至所选择的离开点所在的直线轨迹确定为所述避障飞行轨迹。
可选地,所述基于所述第二飞行速度、所述最小时间、所述预设距离和所述第二三维位置信息,确定对端无人机的悬停位置,包括:
将所述第二飞行速度与所述最小时间相乘,得到对端无人机在所述最小时间的飞行距离;
将所述第二三维位置信息与所述飞行距离相加,得到第二到达位置;
将对端无人机所在的飞行方向上距离所述第二达到位置预设距离的位置确定为对端无人机的悬停位置。
可选地,所述确定避障飞行轨迹,并按照所述避障飞行轨迹进行飞行之后,还包括:
当本端无人机到达用于确定所述避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,所述第二飞行指示用于指示对端无人机经过第四预设时长后继续飞行。
第二方面,提供了一种无人机的飞行控制装置,所述装置包括:
获取模块,用于获取本端无人机的无人机参数;
接收模块,用于接收与本端无人机无线连接成功的对端无人机的无人机参数;
条件确定模块,用于根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件;
控制模块,用于当本端无人机和对端无人机之间的关系不满足所述安全净空条件时,控制本端无人机进行避障飞行。
可选地,所述条件确定模块用于:
根据本端无人机的无人机参数,确定本端无人机的安全净空区,以及根据对端无人机的无人机参数,确定对端无人机的安全净空区;
基于本端无人机的安全净空区和对端无人机的安全净空区,确定所述安全净空条件。
可选地,所述条件确定模块用于:
当所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,所述第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离时,基于所述第一三维位置信息、所述第一飞行速度,按照所述第一预设时长为时间间隔,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,所述第一预设时长小于所述第二预设时长;
将本端无人机的最高飞行速度与第一预设时长相乘,得到第一移动距离;
基于所述第一三维位置序列、所述第一预设三维位置误差、所述第一边缘距离和所述第一移动距离,确定本端无人机的安全净空区。
可选地,所述条件确定模块用于:
当所述对端无人机的无人机参数包括对端无人机的最高飞行速度、第二飞行速度、第二三维位置信息、第二预设三维位置误差和第二边缘距离,所述第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离时,基于所述第二三维位置信息、所述第二飞行速度,按照第一预设时长为时间间隔,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
将对端无人机的最高飞行速度与第一预设时长相乘,得到第二移动距离;
基于所述第二三维位置序列、所述第二预设三维位置误差、所述第二边缘距离和所述第二移动距离,确定对端无人机的安全净空区。
可选地,所述条件确定模块还用于:
在三维空间的各个方向上,分别确定本端无人机的安全净空区和对端无人机的安全净空区之间存在重叠区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机和对端无人机之间的关系不满足安全净空条件。
可选地,所述条件确定模块还用于:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围;
基于本端无人机的安全净空范围,确定本端无人机和对端无人机之间的安全净空条件。
可选地,所述条件确定模块还用于:
当所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离;对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离时,基于所述第一三维位置信息、所述第一飞行速度和第一预设时长,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列;
将本端无人机的最高飞行速度与所述第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与所述第一预设时长相乘,得到第二移动距离;
基于所述第一三维位置序列、所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离、所述第一移动距离和所述第二移动距离,确定本端无人机的安全净空范围。
可选地,所述条件确定模块还用于:
当对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息时,基于所述第二三维位置信息、所述第二飞行速度和所述第一预设时长,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
在三维空间的各个方向上,分别确定所述第二三维位置序列中位于本端无人机的安全净空范围内时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,所述条件确定模块还用于:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区;
基于所述安全净空叠加区,确定本端无人机和对端无人机之间的安全净空条件。
可选地,所述条件确定模块还用于:
当所述本端无人机的无人机参数包括本端无人机的最高飞行速度、第一预设时长、第一预设三维位置误差和第一边缘距离,所述对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离时,将本端无人机的最高飞行速度与所述第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与所述第一预设时长相乘,得到第二移动距离;
基于所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离、所述第一移动距离和所述第二移动距离,确定本端无人机与对端无人机之间的安全净空叠加区。
可选地,所述条件确定模块还用于:
当本端无人机的无人机参数还包括第一飞行速度和第一三维位置信息,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息时,基于所述第一三维位置信息、所述第二三维位置信息、所述第一飞行速度、所述第二飞行速度、所述第一预设时长,确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列;
在三维空间的各个方向上,分别确定所述三维相对位置序列中属于所述安全净空叠加区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,所述控制模块用于:
控制本端无人机在目标位置处悬停;
若当悬停时仍未接收到对端无人机的第一悬停通知,所述第一悬停通知用于指示对端无人机已悬停,则向对端无人机发送第二悬停通知,所述第二悬停通知用于指示本端无人机已悬停;
确定避障飞行轨迹,并按照所述避障飞行轨迹进行飞行。
可选地,所述控制模块还用于:
接收对端无人机发送的第一悬停通知;
控制本端无人机在目标位置处悬停并保持悬停状态;
当接收到对端无人机发送的第一飞行指示时,控制本端无人机在第三预设时长后继续飞行。
可选地,所述装置还包括:
时间确定模块,用于确定所述非空交集中的最小时间;
第一位置确定模块,用于基于所述第一飞行速度、所述最小时间和所述第一三维位置信息,确定第一到达位置;
第二位置确定模块,用于将本端无人机在飞行方向上距离所述第一到达位置预设距离的位置处确定为所述目标位置。
可选地,所述控制模块用于:
分别确定附着点和离开点集合,所述附着点是指所述避障飞行轨迹的起始点,离开点是指所述避障飞行轨迹的终点;
基于所述附着点和所述离开点集合,确定所述避障飞行轨迹。
可选地,所述控制模块用于:
基于所述第二飞行速度、所述最小时间、所述预设距离和所述第二三维位置信息,确定对端无人机的悬停位置,以及基于所述第一预设三维位置误差、所述第二预设三维位置误差、所述第一边缘距离、所述第二边缘距离和所述预设距离,确定与所述悬停位置之间的最小三维安全距离;
以所述悬停位置为几何中心,基于所述最小三维安全距离,确定所述几何中心所在的立方体的各个顶点坐标;
将所述各个顶点中与本端无人机当前悬停位置最近的顶点确定为所述附着点,并基于所述第一飞行速度在三维空间上的飞行方向,确定所述离开点集合。
可选地,所述控制模块用于:
若所述离开点集合中存在与所述附着点处于同一平面内的离开点,则将本端无人机从当前悬停位置至所述附着点以及从所述附着点至与所述附着点处于同一平面内的任一离开点所在的直线轨迹确定为所述避障飞行轨迹;
若所述离开点集合中不存在与所述附着点处于所述同一平面内的离开点,则从所述离开点集合中选择任一离开点,并从所述各个顶点中选择桥接点,所述桥接点是指分别与所述附着点和所选择的离开点均处于同一平面的点;将本端无人机从当前悬停位置至所述附着点、从所述附着点至所述桥接点以及从所述桥接点至所选择的离开点所在的直线轨迹确定为所述避障飞行轨迹。
可选地,所述控制模块用于:
将所述第二飞行速度与所述最小时间相乘,得到对端无人机在所述最小时间的飞行距离;
将所述第二三维位置信息与所述飞行距离相加,得到第二到达位置;
将对端无人机所在的飞行方向上距离所述第二达到位置预设距离的位置确定为对端无人机的悬停位置。
可选地,所述装置还包括:
发送模块,用于当本端无人机到达用于确定所述避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,所述第二飞行指示用于指示对端无人机经过第四预设时长后继续飞行。
第三方面,提供了一种无人机的飞行控制装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述第一方面所述的任一项方法。
第四方面,提供了一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一所述的方法。
本发明实施例提供的技术方案带来的有益效果是:
获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
在对本发明实施例提供的无人机的飞行控制方法进行详细介绍之前,先对本发明实施例涉及的应用场景和实施环境进行简单介绍。
首先,对本发明实施例涉及的应用场景进行简单介绍。
在实际应用场景中,当空中飞行有多个无人机时,该多个无人机之间可能发生碰撞。为了避免发生碰撞,需要无人机能够自动检测是否与其它无人机之间存在碰撞风险。在相关技术中,需要借助超声波检测器、距离检测器之类的器件来进行碰撞风险检测。然而,由于该类器件存在检测距离短、检测方向单一的缺陷,因此,导致存在成本高且检测结果不准确的问题。此外,在相关技术中,当检测到与其它无人机之间存在碰撞风险时,需要人工控制无人机悬停或返航飞行,如此,导致用户体验效果较差,避障效率较低。
为此,本申请实施例提供了一种无人机的飞行控制方法,该方法在无人机之间连接成功的情况下检测到是否存在碰撞风险,即在距离较远时,即可检测是否存在碰撞风险,降低了对无人机的制动要求,从而节省了成本。并且,该方法可以根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
另外,在本发明实施例中,当检测到与其它无人机之间存在碰撞风险时,可以进行避障协商,即协商谁保持悬停,谁持先飞权。之后,持先飞权的无人机可以按照自动确定的避障轨迹进行飞行,即避障路线具体清楚,无需人工进行控制,如此,提高了避障效率,其具体实现请参见如下图1、图2A、图3或图4所示的实施例。
接下来,对本发明实施例涉及的实施环境进行简单介绍。
本发明实施例提供的无人机的飞行控制方法应用于本端无人机中,本端无人机可以是指飞行的任一无人机。在实际实现中,该本端无人机中配置有通信模块,用于与对端无人机之间建立连接,并通过所建立的连接进行无人机参数共享,其中,该对端无人机是指与本端无人机连接成功的无人机。实际上,该对端无人机中也配置有该通信模块。进一步地,该通信模块可以包括但不限于Wi-Fi(Wireless Fidelity,无线保真)模块、蓝牙模块,在该种情况下,该通信模块的通信距离能够达到100米以上。
需要说明的是,在实际实现中,该本端无人机和该对端无人机中可以配置有用于快速建立连接的APP(Application,应用程序),例如,快牙APP等,如此,当两架无人机之间的距离处于通信距离内时,可以自动建立连接,然后,即可进行无人机参数分享。
进一步地,该本端无人机中还可以配置有速度检测器和定位装置。其中,该本端无人机可以通过该速度检测器确定自身的飞行速度,并通过该定位装置确定自身当前的三维位置信息,例如,该定位装置可以包括但不限于GPS(Global Positioning System,全球定位系统)、北斗、GLONASS(格洛纳斯),用于确定三维位置信息中的经度、纬度和海拔高度。进一步地,为了提高确定海拔高度的准确性,该定位装置中还可以包括气压计,用于确定三维位置信息中的海拔高度。
需要说明的是,与本端无人机同理,该对端无人机中也可以配置有速度检测器和定位装置,进一步地,该对端无人机的内部配置实际上与该本端无人机可能相同,这里不再详细介绍。
在介绍完本发明实施例涉及的应用场景和实施环境后,接下来将结合附图对本发明实施例提供的无人机的飞行控制方法进行详细介绍。
图1是根据一示例性实施例示出的一种无人机的飞行控制方法流程图,该无人机的飞行控制方法应用于本端无人机中,该无人机的飞行控制方法可以包括如下几个实现步骤:
步骤101:获取本端无人机的无人机参数。
步骤102:接收与本端无人机无线连接成功的对端无人机的无人机参数。
步骤103:根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件。
步骤104:当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行。
在本发明实施例中,获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
可选地,该根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数,确定本端无人机的安全净空区,以及根据对端无人机的无人机参数,确定对端无人机的安全净空区;
基于本端无人机的安全净空区和对端无人机的安全净空区,确定该安全净空条件。
可选地,该本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,该第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离;
该根据本端无人机的无人机参数,确定本端无人机的安全净空区,包括:
基于该第一三维位置信息、该第一飞行速度,按照该第一预设时长为时间间隔,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,该第一预设时长小于该第二预设时长;
将本端无人机的最高飞行速度与第一预设时长相乘,得到第一移动距离;
基于该第一三维位置序列、该第一预设三维位置误差、该第一边缘距离和该第一移动距离,确定本端无人机的安全净空区。
可选地,该对端无人机的无人机参数包括对端无人机的最高飞行速度、第二飞行速度、第二三维位置信息、第二预设三维位置误差和第二边缘距离,该第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离;
该根据对端无人机的无人机参数,确定对端无人机的安全净空区,包括:
基于该第二三维位置信息、该第二飞行速度,按照第一预设时长为时间间隔,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
将对端无人机的最高飞行速度与第一预设时长相乘,得到第二移动距离;
基于该第二三维位置序列、该第二预设三维位置误差、该第二边缘距离和该第二移动距离,确定对端无人机的安全净空区。
可选地,该当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
在三维空间的各个方向上,分别确定本端无人机的安全净空区和对端无人机的安全净空区之间存在重叠区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机和对端无人机之间的关系不满足安全净空条件。
可选地,根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围;
基于本端无人机的安全净空范围,确定本端无人机和对端无人机之间的安全净空条件。
可选地,本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离;对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离;
该根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围,包括:
基于该第一三维位置信息、该第一飞行速度和第一预设时长,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列;
将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离;
基于该第一三维位置序列、该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机的安全净空范围。
可选地,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息,该当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
基于该第二三维位置信息、该第二飞行速度和该第一预设时长,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
在三维空间的各个方向上,分别确定该第二三维位置序列中位于本端无人机的安全净空范围内时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,包括:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区;
基于该安全净空叠加区,确定本端无人机和对端无人机之间的安全净空条件。
可选地,本端无人机的无人机参数包括本端无人机的最高飞行速度、第一预设时长、第一预设三维位置误差和第一边缘距离,该对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离;
该根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区,包括:
将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离;
基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机与对端无人机之间的安全净空叠加区。
可选地,本端无人机的无人机参数还包括第一飞行速度和第一三维位置信息,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息,该当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行之前,还包括:
基于该第一三维位置信息、该第二三维位置信息、该第一飞行速度、该第二飞行速度、该第一预设时长,确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列;
在三维空间的各个方向上,分别确定该三维相对位置序列中属于该安全净空叠加区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,控制本端无人机进行避障飞行,包括:
控制本端无人机在目标位置处悬停;
若当悬停时仍未接收到对端无人机的第一悬停通知,该第一悬停通知用于指示对端无人机已悬停,则向对端无人机发送第二悬停通知,该第二悬停通知用于指示本端无人机已悬停;
确定避障飞行轨迹,并按照该避障飞行轨迹进行飞行。
可选地,控制本端无人机进行避障飞行,包括:
接收对端无人机发送的第一悬停通知;
控制本端无人机在目标位置处悬停并保持悬停状态;
当接收到对端无人机发送的第一飞行指示时,控制本端无人机在第三预设时长后继续飞行。
可选地,控制本端无人机在目标位置处悬停之前,还包括:
确定该非空交集中的最小时间;
基于该第一飞行速度、该最小时间和该第一三维位置信息,确定第一到达位置;
将本端无人机在飞行方向上距离该第一到达位置预设距离的位置处确定为该目标位置。
可选地,确定避障飞行轨迹,包括:
分别确定附着点和离开点集合,该附着点是指该避障飞行轨迹的起始点,离开点是指该避障飞行轨迹的终点;
基于该附着点和该离开点集合,确定该避障飞行轨迹。
可选地,分别确定附着点和离开点集合,包括:
基于该第二飞行速度、该最小时间、该预设距离和该第二三维位置信息,确定对端无人机的悬停位置,以及基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离和该预设距离,确定与该悬停位置之间的最小三维安全距离;
以该悬停位置为几何中心,基于该最小三维安全距离,确定该几何中心所在的立方体的各个顶点坐标;
将该各个顶点中与本端无人机当前悬停位置最近的顶点确定为该附着点,并基于该第一飞行速度在三维空间上的飞行方向,确定该离开点集合。
可选地,基于该附着点和该离开点集合,确定该避障飞行轨迹,包括:
若该离开点集合中存在与该附着点处于同一平面内的离开点,则将本端无人机从当前悬停位置至该附着点以及从该附着点至与该附着点处于同一平面内的任一离开点所在的直线轨迹确定为该避障飞行轨迹;
若该离开点集合中不存在与该附着点处于该同一平面内的离开点,则从该离开点集合中选择任一离开点,并从该各个顶点中选择桥接点,该桥接点是指分别与该附着点和所选择的离开点均处于同一平面的点;将本端无人机从当前悬停位置至该附着点、从该附着点至该桥接点以及从该桥接点至所选择的离开点所在的直线轨迹确定为该避障飞行轨迹。
可选地,基于该第二飞行速度、该最小时间、该预设距离和该第二三维位置信息,确定对端无人机的悬停位置,包括:
将该第二飞行速度与该最小时间相乘,得到对端无人机在该最小时间的飞行距离;
将该第二三维位置信息与该飞行距离相加,得到第二到达位置;
将对端无人机所在的飞行方向上距离该第二达到位置预设距离的位置确定为对端无人机的悬停位置。
可选地,确定避障飞行轨迹,并按照该避障飞行轨迹进行飞行之后,还包括:
当本端无人机到达用于确定该避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,该第二飞行指示用于指示对端无人机经过第四预设时长后继续飞行。
上述所有可选技术方案,均可按照任意结合形成本发明的可选实施例,本发明实施例对此不再一一赘述。
在本发明实施例中,可以采用不同方式根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,从而通过不同方法判断本端无人机与对端无人机之间是否存在碰撞风险。接下来,将分别结合附图2A、图3和图4,对不同的实现方式进行详细介绍。
请参考图2A,该图2A是根据另一示例性实施例示出的一种无人机的飞行控制方法流程图,本实施例以该无人机的飞行控制方法应用于本端无人机中为例进行说明,该无人机的飞行控制方法可以包括如下几个实现步骤:
步骤201:获取本端无人机的无人机参数。
其中,该无人机参数包括本端无人机最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,该第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离。
其中,该最高飞行速度是指本端无人机能够达到的最高飞行速度,可以预先存储在本端无人机中。通常情况下,该最高飞行速度由设备开发商在该本端无人机出厂时存储在该本端无人机中。在这里,将本端无人机的最高飞行速度记为MAV。
其中,该第一三维位置信息可以通过定位装置确定得到。为了便于理解,这里对该第一三维位置信息进行简单介绍。该第一三维位置信息实际上包括经度、纬度和海拔高度,并且,该第一三维位置信息在三维空间的各个方向上对应的位置信息存在正负之分。假如,以东经方向和北纬方向为正,则西经方向和南纬方向即为负,另外,若将处于预设海拔高度以上设置为正,则该预设海拔高度以下即为负,其中,该预设海拔高度可以由用户根据实际需求自定义设置。
为了便于理解,下文将东西经方向作为X轴方向,将南北纬方向作为Y轴方向,以及将海拔高度方向作为Z轴方向。如,本端无人机的第一三维位置信息可以记为(AX,AY,AZ)。
其中,该第一飞行速度可以通过速度检测器来测量得到,实际上,该第一飞行速度在三维空间中也均具有方向,也即是,该第一飞行速度也有正负,在这里,该第一飞行速度可以记为(VAX,VAY,VAZ)。
该第一预设时长可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。例如,该第一预设时长Titv=10ms。
上述第一预设三维位置误差是指上述定位装置的定位误差。也即是,定位装置在进行定位时,均可能存在一定的误差,例如,GPS芯片的水平定位误差最大可达2.5米,竖直定位误差最大可达10米,气压计的定位误差最大可达0.5米。在这里,该第一预设三维位置误差可以由用户根据实际需求自定义进行设置,或者,也可以由本端无人机默认设置,该第一预设三维位置误差可以记为(WAX,WAY,XAZ)。
上述第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离,例如,若本端无人机的最远边缘为机翼的边缘,则该第一边缘距离是指该机翼的边缘与几何中心点之间的距离。再如,若本端无人机挂载货物,且挂载的货物距离该几何中心点的距离大于本端无人机的任一边缘与该几何中心点的距离,则可以将该挂载的货物确定为本端无人机的最远边缘,即该第一边缘距离是指挂载的货物与该几何中心点之间的距离。在实际实现中,该第一边缘距离可以由用户预先存储在本端无人机中,在这里,该第一边缘距离记为RA。
步骤202:接收与本端无人机无线连接成功的对端无人机的无人机参数。
在实际实现中,本端无人机检测无线网络连接设备,当检测连接到设备后,接收对端发送的无人机参数。
也即是,由于本端无人机和对端无人机均配置有通信模块,通常情况下,当本端无人机与对端无人机之间的通信距离大于一定距离时,该通信模块能够用于信息共享。因此,当两架正在飞行的无人机之间的距离处于一定范围内时,可以建立通信连接。本端无人机在检测连接到设备后,即可相互分享各自的无人机参数。
通常情况下,当两架无人机之间能够进行信息分享时,说明当前距离较近,此时,可能存在碰撞风险,因此,为了安全起见,本端无人机需要根据对端无人机发送的无人机参数进行风险检测,具体实现如下文所述。
其中,对端无人机的无人机参数包括对端无人机的最高飞行速度、第二飞行速度、第二三维位置信息、第二预设三维位置误差和第二边缘距离,该第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离。
其中,该最高飞行速度是指对端无人机能够达到的最高飞行速度,可以预先存储在对端无人机中。在这里,该对端无人机的最高飞行速度可以记为MBV。
其中,该第二三维位置信息可以通过定位装置确定得到。该第二三维位置信息与上述第一三维位置信息同理,这里不再详细介绍,在这里,该第二三维位置信息可以记为(BX,BY,BZ)。
其中,该第二飞行速度可以通过速度检测器来测量得到,该第二飞行速度与上述第一飞行速度同理,在三维空间上也具有方向,在这里,该第二飞行速度可以记为(VBX,VBY,VBZ)。
上述第二预设三维位置误差是指对端无人机中定位装置的定位误差,与上述第一预设三维位置误差原理相同,也可以由用户根据实际需求自定义设置,或者,还可以由对端无人机默认设置,在这里,该第一预设三维位置误差可以记为(WBX,WBY,XBZ)。
上述第二边缘距离与上述第一边缘距离同理,该第二边缘距离记为RB。
步骤203:根据本端无人机的无人机参数,确定本端无人机的安全净空区,以及根据对端无人机的无人机参数,确定对端无人机的安全净空区。
进一步地,上述根据本端无人机的无人机参数,确定本端无人机的安全净空区的具体实现包括:基于该第一三维位置信息、该第一飞行速度,按照该第一预设时长为时间间隔,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,该第一预设时长小于该第二预设时长。将本端无人机的最高飞行速度与第一预设时长相乘,得到第一移动距离,基于该第一三维位置序列、该第一预设三维位置误差、该第一边缘距离和该第一移动距离,确定本端无人机的安全净空区。
通常情况下,为了提高检测精度,该第一预设时长的大小小于本端无人机的尺寸与最高飞行速度的比值。如此,可以保证本端无人机能够在连续的位置上检测出是否存在碰撞风险。
其中,该第二预设时长可以由用户根据实际需求自定义进行设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。在实际实现中,为了便于本端无人机能够有足够的时间悬停,这里通常要求该第二预设时长大于本端无人机从最高飞行速度降为静止所需最小时长的2倍。例如,该第二预设时长可以设置为3秒。
以上述第一预设时长Titv=10ms,第二预设时长为3秒为例,假设在未来且距离当前时间最近的第二预设时长内,本端无人机的第一三维位置序列可以表示为如表1所示。
表1
其中,上述第一位置序列是指X轴方向上本端无人机在各个时刻的位置序列,第二位置序列是指Y轴方向上本端无人机在各个时刻的位置序列,第三位置序列是指Z轴方向上本端无人机在各个时刻的位置序列。在具体实现中,上述序列可以通过如下计算方式来确定;
AX1=AX+VAX*Titv;
AY1=AY+VAY*Titv;
AZ1=AZ+VAZ*Titv;
AX2=AX1+VAX*Titv;
AY2=AY1+VAY*Titv;
AZ2=AZ1+VAZ*Titv;
…
AZ300=AZ299+VAZ*Titv。
如此,通过上述计算过程,本端无人机可以确定在未来且距离当前时间最近的第二预设时长内,本端无人机的第一三维位置序列。
另外,本端无人机将自身的最高飞行速度MAV与第一预设时长Titv相乘后,得到在接下来的第一预设时长Titv内自身能够飞行的最大距离,即得到第一移动距离,这里记为LA。
之后,基于该第一三维位置序列((AX)I、(AY)I、(AZ)I)、该第一预设三维位置误差(WAX,WAY,XAZ)、该第一边缘距离RA和该第一移动距离LA,可以确定本端无人机的安全净空区。
在三维空间的各个方向上,本端无人机的安全净空区包括三个区间,具体地,在X轴方向上的区间为[(AX)I-WAX-RA-LA,(AX)I+WAX+RA+LA],在Y轴方向上的区间为[(AY)I-WAY-RA-LA,(AY)I+WAY+RA+LA],以及在Z轴方向上的区间为[(AZ)I-WAZ-RA-LA,(AZ)I+WAZ+RA+LA],其中,I的取值为[1,300]。不难看出,实际上,本端无人机的安全净空区占据一个立体几何空间。
进一步地,上述根据对端无人机的无人机参数,确定对端无人机的安全净空区的具体实现包括:基于该第二三维位置信息、该第二飞行速度,按照第一预设时长为时间间隔,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列,将对端无人机的最高飞行速度与第一预设时长相乘,得到第二移动距离,基于该第二三维位置序列、该第二预设三维位置误差、该第二边缘距离和该第二移动距离,确定对端无人机的安全净空区。
以上述第一预设时长Titv=10ms,第二预设时长为3秒为例,假设在未来且距离当前时间最近的第二预设时长内,对端无人机的第二三维位置序列可以表示为如表2所示。
表2
时刻 |
第一位置序列 |
第二位置序列 |
第三位置序列 |
t+10ms |
BX<sub>1</sub> |
BY<sub>1</sub> |
BZ<sub>1</sub> |
t+20ms |
BX<sub>2</sub> |
BY<sub>2</sub> |
BZ<sub>2</sub> |
t+30ms |
BX<sub>3</sub> |
BY<sub>3</sub> |
BZ<sub>3</sub> |
… |
… |
… |
… |
t+3000ms |
BX<sub>300</sub> |
BY<sub>300</sub> |
BZ<sub>300</sub> |
其中,上述表2中的第一位置序列是指X轴方向上对端无人机在各个时刻的位置序列,第二位置序列是指Y轴方向上对端无人机在各个时刻的位置序列,第三位置序列是指Z轴方向上对端无人机在各个时刻的位置序列。
在具体实现中,上述序列可以通过如下计算方式来确定;
BX1=BX+VBX*Titv;
BY1=BY+VBY*Titv;
BZ1=BZ+VBZ*Titv;
BX2=BX1+VBX*Titv;
BY2=BY1+VBY*Titv;
BZ2=BZ1+VBZ*Titv;
…
BZ300=BZ299+VBZ*Titv。
如此,通过上述计算过程,本端无人机可以确定在未来且距离当前时间最近的第二预设时长内,对端无人机的第二三维位置序列。
本端无人机将对端无人机的最高飞行速度MBV与该第一预设时长Titv相乘后,得到对端无人机在接下来的第一预设时长Titv内能够飞行的最大距离,即得到第二移动距离,这里记为LB。
之后,基于该第二三维位置序列((BX)I、(BY)I、(BZ)I)、该第二预设三维位置误差(WBX,WBY,XBZ)、该第二边缘距离RB和该第二移动距离LB,可以确定对端无人机的安全净空区。
在三维空间的各个方向上,对端无人机的安全净空区也包括三个区间,具体地,在X轴方向上的区间为[(BX)I-WBX-RB-LB,(BX)I+WBX+RB+LB],在Y轴方向上的区间为[(BY)I-WBY-RB-LB,(BY)I+WBY+RB+LB],以及在Z轴方向上的区间为[(BZ)I-WBZ-RB-LB,(BZ)I+WBZ+RB+LB],其中I的取值为[1,300]。不难看出,实际上,该对端无人机的安全净空区也占据了一个立体几何空间。
步骤204:基于本端无人机的安全净空区和对端无人机的安全净空区,确定该安全净空条件。
分别确定本端无人机的安全净空区和对端无人机的安全净空区后,实际上,此时该安全净空条件是指该两个安全净空区无重叠。
需要说明的是,上述步骤203和步骤204用于实现根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件的步骤。
步骤205:判断本端无人机和对端无人机之间的关系是否满足该安全净空条件。
在具体实现中,本端无人机在三维空间的各个方向上,分别确定本端无人机的安全净空区和对端无人机的安全净空区之间存在重叠区时对应的时间集合,当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机和对端无人机之间的关系不满足安全净空条件。
继续以上述例子为例,在三维空间的X轴方向上,本端无人机比较区间[(AX)I-WAX-RA-LA,(AX)I+WAX+RA+LA]与区间[(BX)I-WBX-RB-LB,(BX)I+WBX+RB+LB]之间是否有重叠,并将存在重叠时对应的时间组成时间集合IX。例如,当I为t+50时,上述两个区间存在重叠,则将t+50添加至时间集合IX中。
在三维空间的Y轴方向上,本端无人机比较区间[(AY)I-WAY-RA-LA,(AY)I+WAY+RA+LA]与区间[(BY)I-WBY-RB-LB,(BY)I+WBY+RB+LB]之间是否有重叠,并将存在重叠时对应的时间组成时间集合IY。例如,当I为t+50和t+60时,上述两个区间之间存在重叠,则将t+50和t+60均添加至时间集合IY中。
在三维空间的Z轴方向上,本端无人机比较区间[(AZ)I-WAZ-RA-LA,(AZ)I+WAZ+RA+LA]与区间[(BZ)I-WBZ-RB-LB,(BZ)I+WBZ+RB+LB]之间是否有重叠,并将存在重叠时对应的时间组成时间集合IZ。例如,当I为t+50时,上述两个区间之间存在重叠,则将t+50添加至时间集合IZ中。
若上述时间集合IX、IY和IZ均不是空集,且彼此之间存在非空交集ICLASH,即该ICLASH=IX∩IY∩IZ,例如,该非空交集ICLASH包括t+50,则可以确定在t+50ms时本端无人机的净空区与对端无人机的净空区在各个方向上均存在重叠区,由此说明在t+50ms时本端无人机和对端无人机之间存在碰撞风险,所以可以确定本端无人机与对端无人机之间的关系不满足安全净空条件。
反之,若该三个集合之间不存在非空交集ICLASH,可以确定本端无人机与对端无人机之间不存在碰撞风险。也即是,即使在某个时刻,根据本端无人机的安全净空区和对端无人机的安全净空区确定在三维空间的某一个或两个方向上存在碰撞风险,也不能完全确定本端无人机与对端无人机之间存在碰撞风险。譬如,当本端无人机与对端无人机一高一低平行飞行时,经过上述过程可以确定在X轴方向和Y轴方向上均存在碰撞风险,但实际上,本端无人机与对端无人机之间不存在碰撞风险,因此,当该三个集合之间不存在非空交集ICLASH时,可以确定本端无人机与对端无人机之间不存在碰撞风险。
步骤206:当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行。
当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机与对端无人机存在碰撞风险,因此,需要控制本端无人机进行避障飞行。
在具体实现中,控制本端无人机在目标位置处悬停,若当悬停时仍未接收到对端无人机的第一悬停通知,该第一悬停通知用于指示对端无人机已悬停,则向对端无人机发送第二悬停通知,该第二悬停通知用于指示本端无人机已悬停,确定避障飞行轨迹,并按照该避障飞行轨迹进行飞行。
首先,本端无人机和对端无人机均需要控制自己先悬停下来,其中,本端无人机控制自身在目标位置处悬停。在此之前,本端无人机需要确定该目标位置,在具体实现中,确定上述非空交集中的最小时间,基于该第一飞行速度、该最小时间和该第一三维位置信息,确定第一到达位置,将本端无人机在飞行方向上距离该第一到达位置预设距离的位置处确定为目标位置。
不难理解,上述非空交集中的最小时间是指本端无人机与对端无人机在未来第二预设时长内最早可能发生碰撞的时间,例如,该最小时间TC为t+50ms。
本端无人机确定在该最小时间自身所能达到的位置,在具体实现中,本端无人机将第一飞行速度与该最小时间相乘,即可确定在最小时间内能够飞行的距离,之后,基于该第一三维位置信息和该距离,可以确定该最小时间能够达到的第一到达位置。例如,该第一到达位置为PA。之后,将本端无人机在飞行方向上距离该第一到达位置预设距离的位置处确定为目标位置。
其中,该预设距离又可以称为两架无人机的隔离距离,在实际实现中,可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置,本申请实施例对此不做限定。例如,该预设距离GL为1米。
确定目标位置后,本端无人机启动悬停机制,并控制在距离该第一到达位置之前的预设距离处悬停。例如,本端无人机的悬停位置为(ASX,ASY,ASZ)。
需要说明的是,实际上,对端也会按照诸如上述的实现过程,在确定与本端无人机之间存在碰撞飞行时,启动悬停机制,这里不再重复赘述。
在该两架无人机悬停的过程中,为了能够进行避障并不耽误后续飞行,本端无人机和对端无人机之间需要协商谁保持悬停,谁先飞,在本发明实施例中,要求先悬停的无人机先飞。因此,若在本端无人机悬停时,仍没有接收到对端无人机发送的第一悬停通知,说明对端无人机还未悬停,即本端无人机先悬停,此时,本端无人机需要通知对端无人机自己已经悬停,即通知对端无人机自己将先飞。
在实际实现时,为了不与对端无人机之间发生碰撞,本端无人机在先飞前,需要确定避障飞行轨迹,之后,再按照该避障飞行轨迹进行飞行。其中,确定避障飞行轨迹的具体实现可以包括如下2061至2062几个实现步骤:
2061:分别确定附着点和离开点集合,该附着点是指该避障飞行轨迹的起始点,离开点是指该避障飞行轨迹的终点。
在实际实现中,分别确定附着点和离开点集合包括如下(1)-(4)几个实现步骤:
(1)基于该第二飞行速度、该最小时间、该预设距离和第二三维位置信息,确定对端无人机的悬停位置,以及基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离和该预设距离,确定与该悬停位置之间的最小三维安全距离。
基于该第二飞行速度、该最小时间、该预设距离和第二三维位置信息,确定对端无人机的悬停位置的具体实现包括:将该第二飞行速度与该最小时间相乘,得到对端无人机在最小时间的飞行距离,将该第二三维位置信息与该飞行距离相加,得到第二到达位置,将对端无人机所在的飞行方向上距离该第二达到位置预设距离的位置确定为对端无人机的悬停位置。例如,对端无人机的悬停位置为(BSX,BSY,BSZ)。
另外,为了保证本端无人机按照最终确定的避障飞行轨迹飞行时与对端无人机之间不会发生碰撞,为了确定该避障飞行轨迹,需要先确定最小三维安全距离,即确定与对端无人机之间不会发生碰撞的最小是三维距离。
例如,最小三维安全距离中X轴方向的最小安全距离Xlength=WAX+WBX+RA+RB+GL,Y轴的最小安全距离Ylength=WAY+WBY+RA+RB+GL,Z轴的最小安全距离Zlength=WAZ+WBZ+RA+RB+GL。
需要说明的是,上述仅是以由本端无人机基于该第二飞行速度、该最小时间、该预设距离和第二三维位置信息,确定对端无人机的悬停位置为例进行说明。在实际实现中,还可以由对端无人机在悬停后,主动向本端无人机分享自己的悬停位置,此时,需要本端无人机在悬停后,等待对端无人机悬停并进行悬停位置分享,如此,可以减小本端无人机的运算量。
另外,当由本端无人机基于该第二飞行速度、该最小时间、该预设距离和第二三维位置信息,确定对端无人机的悬停位置时,不需要等待对端无人机悬停并进行位置分享,如此,可以提高计算效率。
(2)以该悬停位置为几何中心,基于该最小三维安全距离,确定该几何中心所在的立方体的各个顶点坐标。
例如,请参见图2B,该几何中心点为对端无人机B的悬停位置,该几何中心所在的立方体包括U1、U2、U3、U4、U5、U6、U7和U8八个顶点,其中,该各个顶点的坐标分别为:
U1:(BSX+Xlength,BSY+Ylength,BSZ+Xlength);
U2:(BSX-Xlength,BSY+Ylength,BSZ+Xlength);
U3:(BSX-Xlength,BSY-Ylength,BSZ+Xlength);
U4:(BSX+Xlength,BSY-Ylength,BSZ+Xlength);
U5:(BSX+Xlength,BSY+Ylength,BSZ-Xlength);
U6:(BSX-Xlength,BSY+Ylength,BSZ-Xlength);
U7:(BSX-Xlength,BSY-Ylength,BSZ-Xlength);
U8:(BSX+Xlength,BSY-Ylength,BSZ-Xlength)。
其中,规定U1至U8中的每个顶点均有一个对角点,具体地,该U1和该U7互为对角点,该U2和该U8互为对角点,该U3和该U5互为对角点,该U4和该U6互为对角点。
进一步地,本端无人机确定该各个顶点中每个顶点与自身当前悬停位置之间的距离。在具体实现中,本端无人机可以通过如下公式(1)确定当前悬停位置与各个顶点之间的距离:
Di=abs(UXi-ASX)+abs(UYi-ASY)+abs(UZi-ASZ)(1)
其中,该Di是指本端无人机自身当前悬停位置与上述各个顶点中第i个顶点之间的距离,(UXi,UYi,UZi)为Ui顶点的坐标,i的取值为1至8之间的整数。
(3)将各个顶点中与本端无人机当前悬停位置最近的顶点确定为附着点。
例如,若经过上述计算后,确定该各个顶点中U7顶点与本端无人机当前悬停位置最近,则将该U7确定为该避障飞行轨迹的起始点,记为附着点U_Min。
(4)基于该第一飞行速度在三维空间上的飞行方向,确定上述离开点集合。
如前文所述,由于该第一飞行速度具有飞行方向,即在三维空间中存在正负之分,且该飞行方向意味着本端无人机原来的飞行方向,即本端无人机原来是朝哪个方向飞的。也即是,可以基于该第一飞行速度在三维空间上的飞行方向,确定本端无人机原来是朝哪个方向飞。为了不改变飞行方向,可以将在原来的飞行方向上确定离开点集合。例如,本端无人机可以根据下表3判断该离开点集合U_out:
表3
其中,“+”表示大于0,“-”表示小于0。
2062:基于该附着点和该离开点集合,确定避障飞行轨迹。
在具体实现中,本端无人机判断该离开点集合中是否存在与该附着点处于同一平面内的离开点。其中,判断结果包括如下两种可能的情况:
第一种情况:若该离开点集合中存在与该附着点处于同一平面内的离开点,则将本端无人机从当前悬停位置至该附着点以及从该附着点至与该附着点处于同一平面内的任一离开点所在的直线轨迹确定为该避障飞行轨迹。
如图2B所示,如果该离开点集合中存在与该附着点处于同一平面内的离开点,例如,若该附着点为U7,该离开点集合中包括U8,此时,由于该平面的任一点与对端无人机的悬停位置之间的距离均为安全距离,因此,可以将该避障飞行轨迹确定为从本端无人机当前的悬停位置至附着点U7,从附着点U7至U8。
第二种情况:若该离开点集合中不存在与该附着点处于该同一平面内的离开点,则从该离开点集合中选择任一离开点,并从该各个顶点中选择桥接点,该桥接点是指分别与该附着点和所选择的离开点均处于同一平面的点。将本端无人机从当前悬停位置至该附着点、从该附着点至该桥接点以及从该桥接点至所选择的离开点所在的直线轨迹确定为该避障飞行轨迹。
如果离开点集合中不存在与该附着点处于该同一平面内的离开点,本端无人机若要从附着点到达该离开点集合中的任一离开点,均需要借助桥接点。例如,若该附着点为U7,该离开点集合中包括U1,则若本端无人机要从U7飞至U1,为了不与对端无人机之间发生碰撞,需要借助桥接点,例如,该桥接点可以为U2、U4等。
之后,本端无人机将从当前悬停位置至该附着点、从该附着点至该桥接点以及从该桥接点至所选择的离开点所在的直线轨迹确定为该避障飞行轨迹。例如,以上述举例为例,假设该桥接点为U2,此时,该避障飞行轨迹为从当前的悬停位置至附着点U7,从附着点U7至桥接点U2、从桥接点U2至离开点U1,即本端无人机后续将从当前悬停位置飞往附着点U7,再从附着点U7飞往桥接点U2,再从桥接点U2飞往离开点U1。
在本发明实施例中,本端无人机在确定与对端无人机之间存在碰撞风险时,可以确定避障飞行轨迹,并按照该避障飞行轨迹进行避障飞行,如此,保证了本端无人机能够按照具体、明确的航线进行避障飞行,提高了避障效率。
至此,已实现了本发明实施例提供的无人机的飞行控制方法,在实际实现中,当本端无人机按照所确定的避障轨迹飞行后,为了不耽误对端无人机后续继续飞行,本发明实施例还提供了如下步骤207。
步骤207:当本端无人机到达用于确定该避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,该第二飞行指示用于指示对端无人机在经过第四预设时长后继续飞行。
当到达用于确定该避障飞行轨迹的离开点时,说明本端无人机已经绕过了对端无人机,即已经避开了与对端无人机的碰撞风险。为了不耽误对端无人机后续继续飞行,本端无人机达到该离开点后,可以向对端无人机发送第二飞行指示,以通知对端无人机在第四预设时长后,可以继续飞行。如此,对端无人机接收到该第二飞行指示后,开始计时,并在第四预设时长后,恢复正常飞行。
其中,该第四预设时长可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置,再或者,还可以由对端无人机默认设置,本发明实施例对此不做限定。
以上图2及其详细流程描述的方案,是以本端无人机获得了先飞权的避障飞行方案为例进行详细说明的。实际运用中有可能是对端无人机获得先飞权,此时,当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行的实际过程可以是:接收对端无人机发送的第一悬停通知,控制本端无人机在目标位置处悬停并保持悬停状态,当接收到对端无人机发送的第一飞行指示时,控制本端无人机在第三预设时长后继续飞行。
其中,该第三预设时长可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置。
也就是说,在对端无人机获取先飞权的情况下,此时,对端无人机会向本端无人机发送第一悬停通知。本端无人机接收该第一悬停通知,控制本端无人机在目标位置处悬停,并保持悬停状态,等待对端无人机进一步的指示。其中,该目标位置的确定方法请参见上文,这里不再重复赘述。
当接收到对端无人机发送的第一飞行指示时,说明对端无人机已经绕过本端无人机完成避障飞行,因此,本端无人机在第三预设时长后可以继续飞行。其中,该第一飞行指示用于指示本端无人机在第三预设时长后继续飞行。
其中,对端无人机可以按照类似于上述实现方式来确定避障飞行轨迹,并按照所确定的避障飞行轨迹进行飞行,以实现避障,这里不再详细介绍。
在本发明实施例中,获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
请参考图3,该图3是根据另一示例性实施例示出的一种无人机的飞行控制方法流程图,本实施例以该无人机的飞行控制方法应用于本端无人机中为例进行说明,该无人机的飞行控制方法可以包括如下几个实现步骤:
步骤301:获取本端无人机的无人机参数。
其中,该无人机参数包括本端无人机最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,该第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离。
其中,该最高飞行速度是指本端无人机能够达到的最高飞行速度,可以预先存储在本端无人机中。通常情况下,该最高飞行速度由设备开发商在该本端无人机出厂时存储在该本端无人机中。在这里,将本端无人机的最高飞行速度记为MAV。
其中,该第一三维位置信息可以通过定位装置确定得到。为了便于理解,这里对该第一三维位置信息进行简单介绍。该第一三维位置信息实际上包括经度、纬度和海拔高度,并且,该第一三维位置信息在三维空间的各个方向上对应的位置信息存在正负之分。假如,以东经方向和北纬方向为正,则西经方向和南纬方向即为负,另外,若将处于预设海拔高度以上设置为正,则该预设海拔高度以下即为负,其中,该预设海拔高度可以由用户根据实际需求自定义设置。
为了便于理解,下文将东西经方向作为X轴方向,将南北纬方向作为Y轴方向,以及将海拔高度方向作为Z轴方向。如,本端无人机的第一三维位置信息可以记为(AX,AY,AZ)。
其中,该第一飞行速度可以通过速度检测器来测量得到,实际上,该第一飞行速度在三维空间中也均具有方向,也即是,该第一飞行速度也有正负,在这里,该第一飞行速度可以记为(VAX,VAY,VAZ)。
该第一预设时长可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。例如,该第一预设时长Titv=10ms。
上述第一预设三维位置误差是指上述定位装置的定位误差。也即是,定位装置在进行定位时,均可能存在一定的误差,例如,GPS芯片的水平定位误差最大可达2.5米,竖直定位误差最大可达10米,气压计的定位误差最大可达0.5米。在这里,该第一预设三维位置误差可以由用户根据实际需求自定义进行设置,或者,也可以由本端无人机默认设置,该第一预设三维位置误差可以记为(WAX,WAY,XAZ)。
上述第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离,例如,若本端无人机的最远边缘为机翼的边缘,则该第一边缘距离是指该机翼的边缘与几何中心点之间的距离。再如,若本端无人机挂载货物,且挂载的货物距离该几何中心点的距离大于本端无人机的任一边缘与该几何中心点的距离,则可以将该挂载的货物确定为本端无人机的最远边缘,即该第一边缘距离是指挂载的货物与该几何中心点之间的距离。在实际实现中,该第一边缘距离可以由用户预先存储在本端无人机中,在这里,该第一边缘距离记为RA。
步骤302:接收与本端无人机无线连接成功的对端无人机的无人机参数。
在实际实现中,本端无人机检测无线网络连接设备,当检测连接到设备后,接收对端发送的无人机参数。
也即是,由于本端无人机和对端无人机均配置有通信模块,通常情况下,当本端无人机与对端无人机之间的通信距离大于一定距离时,该通信模块能够用于信息共享。因此,当两架正在飞行的无人机之间的距离处于一定范围内时,可以建立通信连接。本端无人机在检测连接到设备后,即可相互分享各自的无人机参数。
通常情况下,当两架无人机之间能够进行信息分享时,说明当前距离较近,此时,可能存在碰撞风险,因此,为了安全起见,本端无人机需要根据对端无人机发送的无人机参数进行风险检测,具体实现如下文所述。
其中,对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离,该第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离。进一步地,对端无人机的无人机参数还包括第二飞行速度、第二三维位置信息。
其中,该最高飞行速度是指对端无人机能够达到的最高飞行速度,可以预先存储在对端无人机中。在这里,该对端无人机的最高飞行速度可以记为MBV。
其中,该第二三维位置信息可以通过定位装置确定得到。该第二三维位置信息与上述第一三维位置信息同理,这里不再详细介绍,在这里,该第二三维位置信息可以记为(BX,BY,BZ)。
其中,该第二飞行速度可以通过速度检测器来测量得到,该第二飞行速度与上述第一飞行速度同理,在三维空间上也具有方向,在这里,该第二飞行速度可以记为(VBX,VBY,VBZ)。
上述第二预设三维位置误差是指对端无人机中定位装置的定位误差,与上述第一预设三维位置误差原理相同,也可以由用户根据实际需求自定义设置,或者,还可以由对端无人机默认设置,在这里,该第一预设三维位置误差可以记为(WBX,WBY,XBZ)。
上述第二边缘距离与上述第一边缘距离同理,该第二边缘距离记为RB。
步骤303:根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围。
进一步地,上述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围的具体实现包括:基于该第一三维位置信息、该第一飞行速度和第一预设时长,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离。基于该第一三维位置序列、该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机的安全净空范围。
通常情况下,为了提高检测精度,该第一预设时长的大小小于本端无人机的尺寸与最高飞行速度的比值。如此,可以保证本端无人机能够在连续的位置上检测出是否存在碰撞风险。
其中,该第二预设时长可以由用户根据实际需求自定义进行设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。在实际实现中,为了便于本端无人机能够有足够的时间悬停,这里通常要求该第二预设时长大于本端无人机从最高飞行速度降为静止所需最小时长的2倍。例如,该第二预设时长可以设置为3秒。
以上述第一预设时长Titv=10ms,第二预设时长为3秒为例,假设在未来且距离当前时间最近的第二预设时长内,本端无人机的第一三维位置序列可以表示为如表4所示。
表4
其中,上述表4中的第一位置序列是指X轴方向上本端无人机在各个时刻的位置序列,第二位置序列是指Y轴方向上本端无人机在各个时刻的位置序列,第三位置序列是指Z轴方向上本端无人机在各个时刻的位置序列。在具体实现中,上述序列可以通过如下计算方式来确定;
AX1=AX+VAX*Titv;
AY1=AY+VAY*Titv;
AZ1=AZ+VAZ*Titv;
AX2=AX1+VAX*Titv;
AY2=AY1+VAY*Titv;
AZ2=AZ1+VAZ*Titv;
…
AZ300=AZ299+VAZ*Titv。
如此,通过上述计算过程,本端无人机可以确定在未来且距离当前时间最近的第二预设时长内,本端无人机的第一三维位置序列。
另外,本端无人机将自身的最高飞行速度MAV与第一预设时长Titv相乘后,得到在接下来的第一预设时长Titv内自身能够飞行的最大距离,即得到第一移动距离,这里记为LA。
另外,本端无人机将对端无人机的最高飞行速度与该第一预设时长相乘后,得到对端无人机在接下来的第一预设时长内能够飞行的最大距离,即得到第二移动距离,这里记为LB。
之后,基于该第一三维位置序列((AX)I、(AY)I、(AZ)I)、该第一预设三维位置误差(WAX,WAY,XAZ)、第二预设三维位置误差(WBX,WBY,XBZ)、该第一边缘距离RA、该第二边缘距离RB、该第一移动距离LA和该第二移动距离LB,可以确定本端无人机的的安全净空范围。
在三维空间的各个方向上,本端无人机的安全净空范围包括三个区间,具体地,在X轴方向上的区间为[(AX)I-WAX-WBX-RA-RB-LA-LB,(AX)I+WAX+WBX+RA+RB+LA+LB],在Y轴方向上的区间为[(AY)I-WAY-WBY-RA-RB-LA-LB,(AY)I+WAY+WBY+RA+RB+LA+LB],以及[(AZ)I-WAZ-WBZ-RA-RB-LA-LB,(AZ)I+WAZ+WBZ+RA+RB+LA+LB],其中,I的取值为[1,300]。
步骤304:基于本端无人机的安全净空范围,确定本端无人机和对端无人机之间的安全净空条件。
实际上,此时该安全净空条件是指对端无人机不处于本端无人机的安全净空范围内。
需要说明的是,上述步骤303和步骤304用于实现根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件的步骤。
步骤305:判断本端无人机和对端无人机之间的关系是否满足该安全净空条件。
在具体实现中,基于该第二三维位置信息、该第二飞行速度和该第一预设时长,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列,在三维空间的各个方向上,分别确定该第二三维位置序列中位于本端无人机的安全净空范围内时对应的时间集合,当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
继续以上述例子为例,在三维空间的X轴方向上,本端无人机比较(BX)I是否处于区间[(AX)I-WAX-WBX-RA-RB-LA-LB,(AX)I+WAX+WBX+RA+RB+LA+LB]内,并将处于该区间内时对应的时间组成时间集合IX。
在三维空间的Y轴方向上,本端无人机比较(BY)I是否处于区间[(AY)I-WAY-WBY-RA-RB-LA-LB,(AY)I+WAY+WBY+RA+RB+LA+LB]内,并将处于该区间内时对应的时间组成时间集合IY。
在三维空间的Z轴方向上,本端无人机比较(BZ)I是否处于区间[(AZ)I-WAZ-WBZ-RA-RB-LA-LB,(AZ)I+WAZ+WBZ+RA+RB+LA+LB]内,并将处于该区间内时对应的时间组成时间集合IZ。
如果上述时间集合IX、IY和IZ均不是空集,且彼此之间存在非空交集ICLASH,即该ICLASH=IX∩IY∩IZ,则可以确定在某个时刻对端无人机将处于本端无人机的安全净空范围内,即本端无人机和对端无人机之间存在碰撞风险,所以可以确定本端无人机与对端无人机之间的关系不满足安全净空条件。
反之,若该三个集合之间不存在非空交集ICLASH,可以确定本端无人机与对端无人机之间不存在碰撞风险。也即是,即使在某个时刻,根据上述安全净空范围确定在三维空间的某一个或两个方向上存在碰撞风险,也不能完全确定本端无人机与对端无人机之间存在碰撞风险。譬如,当本端无人机与对端无人机一高一低平行飞行时,经过上述过程可以确定在X轴方向和Y轴方向上均存在碰撞风险,但实际上,本端无人机与对端无人机之间不存在碰撞风险,因此,当该三个集合之间不存在非空交集ICLASH时,可以确定本端无人机与对端无人机之间不存在碰撞风险。
步骤306:当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行。
其具体实现请参见上述图2A所示实施例中的步骤206,这里不再重复介绍。
步骤307:当本端无人机到达用于确定该避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,该第二飞行指示用于指示对端无人机在经过第四预设时长后继续飞行。
其具体实现请参见上述图2A所示实施例中的步骤207,这里不再重复介绍。
在本发明实施例中,获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
请参考图4,该图4是根据另一示例性实施例示出的一种无人机的飞行控制方法流程图,本实施例以该无人机的飞行控制方法应用于本端无人机中为例进行说明,该无人机的飞行控制方法可以包括如下几个实现步骤:
步骤401:获取本端无人机的无人机参数。
其中,该无人机参数包括本端无人机最高飞行速度、第一预设时长、第一预设三维位置误差和第一边缘距离,该第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离。进一步地,本端无人机的无人机参数还包括第一飞行速度、第一三维位置信息。
其中,该最高飞行速度是指本端无人机能够达到的最高飞行速度,可以预先存储在本端无人机中。通常情况下,该最高飞行速度由设备开发商在该本端无人机出厂时存储在该本端无人机中。在这里,将本端无人机的最高飞行速度记为MAV。
其中,该第一三维位置信息可以通过定位装置确定得到。为了便于理解,这里对该第一三维位置信息进行简单介绍。该第一三维位置信息实际上包括经度、纬度和海拔高度,并且,该第一三维位置信息在三维空间的各个方向上对应的位置信息存在正负之分。假如,以东经方向和北纬方向为正,则西经方向和南纬方向即为负,另外,若将处于预设海拔高度以上设置为正,则该预设海拔高度以下即为负,其中,该预设海拔高度可以由用户根据实际需求自定义设置。
为了便于理解,下文将东西经方向作为X轴方向,将南北纬方向作为Y轴方向,以及将海拔高度方向作为Z轴方向。如,本端无人机的第一三维位置信息可以记为(AX,AY,AZ)。
其中,该第一飞行速度可以通过速度检测器来测量得到,实际上,该第一飞行速度在三维空间中也均具有方向,也即是,该第一飞行速度也有正负,在这里,该第一飞行速度可以记为(VAX,VAY,VAZ)。
该第一预设时长可以由用户根据实际需求自定义设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。例如,该第一预设时长Titv=10ms。
上述第一预设三维位置误差是指上述定位装置的定位误差。也即是,定位装置在进行定位时,均可能存在一定的误差,例如,GPS芯片的水平定位误差最大可达2.5米,竖直定位误差最大可达10米,气压计的定位误差最大可达0.5米。在这里,该第一预设三维位置误差可以由用户根据实际需求自定义进行设置,或者,也可以由本端无人机默认设置,该第一预设三维位置误差可以记为(WAX,WAY,XAZ)。
上述第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离,例如,若本端无人机的最远边缘为机翼的边缘,则该第一边缘距离是指该机翼的边缘与几何中心点之间的距离。再如,若本端无人机挂载货物,且挂载的货物距离该几何中心点的距离大于本端无人机的任一边缘与该几何中心点的距离,则可以将该挂载的货物确定为本端无人机的最远边缘,即该第一边缘距离是指挂载的货物与该几何中心点之间的距离。在实际实现中,该第一边缘距离可以由用户预先存储在本端无人机中,在这里,该第一边缘距离记为RA。
步骤402:接收与本端无人机无线连接成功的对端无人机的无人机参数。
在实际实现中,本端无人机检测无线网络连接设备,当检测连接到设备后,接收对端发送的无人机参数。
也即是,由于本端无人机和对端无人机均配置有通信模块,通常情况下,当本端无人机与对端无人机之间的通信距离大于一定距离时,该通信模块能够用于信息共享。因此,当两架正在飞行的无人机之间的距离处于一定范围内时,可以建立通信连接。本端无人机在检测连接到设备后,即可相互分享各自的无人机参数。
通常情况下,当两架无人机之间能够进行信息分享时,说明当前距离较近,此时,可能存在碰撞风险,因此,为了安全起见,本端无人机需要根据对端无人机发送的无人机参数进行风险检测,具体实现如下文所述。
其中,对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离,该第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离。进一步地,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息。
其中,该最高飞行速度是指对端无人机能够达到的最高飞行速度,可以预先存储在对端无人机中。在这里,该对端无人机的最高飞行速度可以记为MBV。
其中,该第二三维位置信息可以通过定位装置确定得到。该第二三维位置信息与上述第一三维位置信息同理,这里不再详细介绍,在这里,该第二三维位置信息可以记为(BX,BY,BZ)。
其中,该第二飞行速度可以通过速度检测器来测量得到,该第二飞行速度与上述第一飞行速度同理,在三维空间上也具有方向,在这里,该第二飞行速度可以记为(VBX,VBY,VBZ)。
上述第二预设三维位置误差是指对端无人机中定位装置的定位误差,与上述第一预设三维位置误差原理相同,也可以由用户根据实际需求自定义设置,或者,还可以由对端无人机默认设置,在这里,该第一预设三维位置误差记为(WBX,WBY,XBZ)。
上述第二边缘距离与上述第一边缘距离同理,该第二边缘距离记为RB。
步骤403:根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区。
进一步地,上述根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区的具体实现包括:将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离;基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机与对端无人机之间的安全净空叠加区。
通常情况下,为了提高检测精度,该第一预设时长的大小小于本端无人机的尺寸与最高飞行速度的比值。如此,可以保证本端无人机能够在连续的位置上检测出是否存在碰撞风险。
将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离LA,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离LB。
此时,在三维空间的各个方向上,本端无人机与对端无人机之间的安全净空叠加区包括三个区间,具体地,在X轴方向上的区间为(-WAX-WBX-RA-RB-LA-LB,WAX+WBX+RA+RB+LA+LB),在Y轴方向上的区间为(-WAY-WBY-RA-RB-LA-LB,WAY+WBY+RA+RB+LA+LB),在Z轴方向上的区间为(-WAZ-WBZ-RA-RB-LA-LB,WAZ+WBZ+RA+RB+LA+LB)。
步骤404:基于安全净空叠加区,确定本端无人机和对端无人机之间的安全净空条件。
实际上,此时该安全净空条件是指本端无人机与对端无人机之间的距离不处于上述安全净空叠加区内。
需要说明的是,上述步骤403和步骤404用于实现根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件的步骤。
步骤405:判断本端无人机和对端无人机之间的关系是否满足该安全净空条件。
在具体实现中,基于该第一三维位置信息、该第二三维位置信息、该第一飞行速度、该第二飞行速度、该第一预设时长,确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列。在三维空间的各个方向上,分别确定该三维相对位置序列中属于该安全净空叠加区时对应的时间集合,当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
其中,该第二预设时长可以由用户根据实际需求自定义进行设置,也可以由本端无人机默认设置,本发明实施例对此不做限定。在实际实现中,为了便于本端无人机能够有足够的时间悬停,这里通常要求该第二预设时长大于本端无人机从最高飞行速度降为静止所需最小时长的2倍。例如,该第二预设时长可以设置为3秒。
以上述第一预设时长Titv=10ms,第二预设时长为3秒为例,假设在未来且距离当前时间最近的第二预设时长内,本端无人机与对端无人机之间的三维相对位置序列可以表示为如表5所示。
表5
其中,上述第一相对位置序列是指X轴方向上,本端无人机与对端无人机在各个时刻的相对位置序列,第二相对位置序列是指Y轴方向上,本端无人机与对端无人机在各个时刻的相对位置序列,第三相对位置序列是指Z轴方向上,本端无人机与对端无人机在各个时刻的相对位置序列。
在具体实现中,上述序列可以通过如下计算方式来确定;
(BX-AX)1=(BX-AX)+(VBX-VAX)*Titv;
(BY-AY)1=(BY-AY)+(VBY-VAY)*Titv;
(BZ-AZ)1=(BZ-AZ)+(VBZ-VAZ)*Titv;
(BX-AX)2=(BX-AX)1+(VBX-VAX)*Titv;
(BY-AY)2=(BY-AY)1+(VBY-VAY)*Titv;
(BZ-AZ)2=(BZ-AZ)1+(VBZ-VAZ)*Titv;
…
(BZ-AZ)300=(BZ-AZ)299+(VBZ-VAZ)*Titv。
如此,通过上述计算过程,本端无人机可以确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列。
之后,继续以上述例子为例,本端无人机在三维空间的各个方向上,分别确定该三维相对位置序列中属于该安全净空叠加区时对应的时间集合。譬如,在三维空间的X轴方向上,本端无人机确定(BX-AX)I中属于区间(-WAX-WBX-RA-RB-LA-LB,WAX+WBX+RA+RB+LA+LB)时对应的时间集合IX。
在三维空间的Y轴方向上,本端无人机确定(BY-AY)I中属于区间(-WAY-WBY-RA-RB-LA-LB,WAY+WBY+RA+RB+LA+LB)的时间集合IY。
在三维空间的Z轴方向上,本端无人机确定(BZ-AZ)I中属于区间(-WAZ-WBZ-RA-RB-LA-LB,WAZ+WBZ+RA+RB+LA+LB)的时间集合IZ。
若上述时间集合IX、IY和IZ均不是空集,且彼此之间存在非空交集ICLASH,即该ICLASH=IX∩IY∩IZ,则可以确定在未来某个时刻本端无人机和对端无人机之间存在碰撞风险,所以可以确定本端无人机与对端无人机之间的关系不满足安全净空条件。
反之,若该三个集合之间不存在非空交集ICLASH,可以确定本端无人机与对端无人机之间不存在碰撞风险。也即是,即使在某个时刻,根据上述安全净空叠加区确定在三维空间的某一个或两个方向上存在碰撞风险,也不能完全确定本端无人机与对端无人机之间存在碰撞风险。譬如,当本端无人机与对端无人机一高一低平行飞行时,经过上述过程可以确定在X轴方向和Y轴方向上均存在碰撞风险,但实际上,本端无人机与对端无人机之间不存在碰撞风险,因此,当该三个集合之间不存在非空交集ICLASH时,可以确定本端无人机与对端无人机之间不存在碰撞风险。
步骤406:当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行。
其具体实现请参见上述图2A所示实施例中的步骤206,这里不再重复赘述。
步骤407:当本端无人机到达用于确定该避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,该第二飞行指示用于指示对端无人机在经过第四预设时长后继续飞行。
其具体实现请参见上述图2A所示实施例中的步骤207,这里不再重复介绍。
在本发明实施例中,获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
图5A是根据一示例性实施例示出的一种无人机的飞行控制装置的结构示意图,该无人机的飞行控制装置可以由软件、硬件或者两者的结合实现。该无人机的飞行控制装置可以包括:
获取模块501,用于获取本端无人机的无人机参数;
接收模块502,用于接收与本端无人机无线连接成功的对端无人机的无人机参数;
条件确定模块503,用于根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件;
控制模块504,用于当本端无人机和对端无人机之间的关系不满足该安全净空条件时,控制本端无人机进行避障飞行。
可选地,该条件确定模块503用于:
根据本端无人机的无人机参数,确定本端无人机的安全净空区,以及根据对端无人机的无人机参数,确定对端无人机的安全净空区;
基于本端无人机的安全净空区和对端无人机的安全净空区,确定该安全净空条件。
可选地,该条件确定模块503用于:
当该本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离,该第一边缘距离是指本端无人机的最远边缘与几何中心点之间的距离时,基于该第一三维位置信息、该第一飞行速度,按照该第一预设时长为时间间隔,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列,该第一预设时长小于该第二预设时长;
将本端无人机的最高飞行速度与第一预设时长相乘,得到第一移动距离;
基于该第一三维位置序列、该第一预设三维位置误差、该第一边缘距离和该第一移动距离,确定本端无人机的安全净空区。
可选地,该条件确定模块503用于:
当该对端无人机的无人机参数包括对端无人机的最高飞行速度、第二飞行速度、第二三维位置信息、第二预设三维位置误差和第二边缘距离,该第二边缘距离是指对端无人机的最远边缘与几何中心点之间的距离时,基于该第二三维位置信息、该第二飞行速度,按照第一预设时长为时间间隔,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
将对端无人机的最高飞行速度与第一预设时长相乘,得到第二移动距离;
基于该第二三维位置序列、该第二预设三维位置误差、该第二边缘距离和该第二移动距离,确定对端无人机的安全净空区。
可选地,该条件确定模块503还用于:
在三维空间的各个方向上,分别确定本端无人机的安全净空区和对端无人机的安全净空区之间存在重叠区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机和对端无人机之间的关系不满足安全净空条件。
可选地,该条件确定模块503还用于:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机的安全净空范围;
基于本端无人机的安全净空范围,确定本端无人机和对端无人机之间的安全净空条件。
可选地,该条件确定模块503还用于:
当该本端无人机的无人机参数包括本端无人机的最高飞行速度、第一飞行速度、第一三维位置信息、第一预设时长、第一预设三维位置误差和第一边缘距离;对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离时,基于该第一三维位置信息、该第一飞行速度和第一预设时长,确定本端无人机在未来且距离当前时间最近的第二预设时长内的第一三维位置序列;
将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离;
基于该第一三维位置序列、该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机的安全净空范围。
可选地,该条件确定模块503还用于:
当对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息时,基于该第二三维位置信息、该第二飞行速度和该第一预设时长,确定对端无人机在未来且距离当前时间最近的第二预设时长内的第二三维位置序列;
在三维空间的各个方向上,分别确定该第二三维位置序列中位于本端无人机的安全净空范围内时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,该条件确定模块503还用于:
根据本端无人机的无人机参数、对端无人机的无人机参数,确定本端无人机与对端无人机之间的安全净空叠加区;
基于该安全净空叠加区,确定本端无人机和对端无人机之间的安全净空条件。
可选地,该条件确定模块503还用于:
当该本端无人机的无人机参数包括本端无人机的最高飞行速度、第一预设时长、第一预设三维位置误差和第一边缘距离,该对端无人机的无人机参数包括对端无人机的最高飞行速度、第二预设三维位置误差和第二边缘距离时,将本端无人机的最高飞行速度与该第一预设时长相乘,得到第一移动距离,以及将对端无人机的最高飞行速度与该第一预设时长相乘,得到第二移动距离;
基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离、该第一移动距离和该第二移动距离,确定本端无人机与对端无人机之间的安全净空叠加区。
可选地,该条件确定模块503还用于:
当本端无人机的无人机参数还包括第一飞行速度和第一三维位置信息,对端无人机的无人机参数还包括第二飞行速度和第二三维位置信息时,基于该第一三维位置信息、该第二三维位置信息、该第一飞行速度、该第二飞行速度、该第一预设时长,确定在未来且距离当前时间最近的第二预设时长内本端无人机与对端无人机之间的三维相对位置序列;
在三维空间的各个方向上,分别确定该三维相对位置序列中属于该安全净空叠加区时对应的时间集合;
当在三维空间的各个方向上所确定的时间集合均不是空集且彼此之间存在非空交集时,确定本端无人机与对端无人机之间的关系不满足安全净空条件。
可选地,该控制模块504用于:
控制本端无人机在目标位置处悬停;
若当悬停时仍未接收到对端无人机的第一悬停通知,该第一悬停通知用于指示对端无人机已悬停,则向对端无人机发送第二悬停通知,该第二悬停通知用于指示本端无人机已悬停;
确定避障飞行轨迹,并按照该避障飞行轨迹进行飞行。
可选地,该控制模块504还用于:
接收对端无人机发送的第一悬停通知;
控制本端无人机在目标位置处悬停并保持悬停状态;
当接收到对端无人机发送的第一飞行指示时,控制本端无人机在第三预设时长后继续飞行。
可选地,请参考图5B,该装置还包括:
时间确定模块505,用于确定该非空交集中的最小时间;
第一位置确定模块506,用于基于该第一飞行速度、该最小时间和该第一三维位置信息,确定第一到达位置;
第二位置确定模块507,用于将本端无人机在飞行方向上距离该第一到达位置预设距离的位置处确定为该目标位置。
可选地,该控制模块504用于:
分别确定附着点和离开点集合,该附着点是指该避障飞行轨迹的起始点,离开点是指该避障飞行轨迹的终点;
基于该附着点和该离开点集合,确定该避障飞行轨迹。
可选地,该控制模块504用于:
基于该第二飞行速度、该最小时间、该预设距离和该第二三维位置信息,确定对端无人机的悬停位置,以及基于该第一预设三维位置误差、该第二预设三维位置误差、该第一边缘距离、该第二边缘距离和该预设距离,确定与该悬停位置之间的最小三维安全距离;
以该悬停位置为几何中心,基于该最小三维安全距离,确定该几何中心所在的立方体的各个顶点坐标;
将该各个顶点中与本端无人机当前悬停位置最近的顶点确定为该附着点,并基于该第一飞行速度在三维空间上的飞行方向,确定该离开点集合。
可选地,该控制模块504用于:
若该离开点集合中存在与该附着点处于同一平面内的离开点,则将本端无人机从当前悬停位置至该附着点以及从该附着点至与该附着点处于同一平面内的任一离开点所在的直线轨迹确定为该避障飞行轨迹;
若该离开点集合中不存在与该附着点处于该同一平面内的离开点,则从该离开点集合中选择任一离开点,并从该各个顶点中选择桥接点,该桥接点是指分别与该附着点和所选择的离开点均处于同一平面的点;将本端无人机从当前悬停位置至该附着点、从该附着点至该桥接点以及从该桥接点至所选择的离开点所在的直线轨迹确定为该避障飞行轨迹。
可选地,该控制模块504用于:
将该第二飞行速度与该最小时间相乘,得到对端无人机在该最小时间的飞行距离;
将该第二三维位置信息与该飞行距离相加,得到第二到达位置;
将对端无人机所在的飞行方向上距离该第二达到位置预设距离的位置确定为对端无人机的悬停位置。
可选地,请参考图5C,该装置还包括:
发送模块508,用于当本端无人机到达用于确定该避障飞行轨迹的离开点时,向对端无人机发送第二飞行指示,该第二飞行指示用于指示对端无人机经过第四预设时长后继续飞行。
在本发明实施例中,获取本端无人机的无人机参数,以及接收与本端无人机无线连接成功的对端无人机的无人机参数,根据本端无人机的无人机参数和对端无人机的无人机参数,确定本端无人机和对端无人机之间的安全净空条件,该安全净空条件是指本端无人机与对端无人机不发生碰撞的条件。当本端无人机和对端无人机之间的关系不满足该安全净空条件时,说明本端无人机和对端无人机有碰撞的风险,此时,控制本端无人机进行避障飞行。如此,在与本端无人机连接成功的情况下,判断对端无人机与本端无人机是否存在碰撞风险,可以保证两架无人机有足够的时间避障,降低了对无人机反应时间的要求,从而降低了制动要求,进而降低了成本。另外,根据该两架无人机参数确定该两架无人机之间的安全净空条件,以判断是否存在碰撞风险,避免利用器件只能在单一方向上检测距离导致检测结果可能不准确的问题,提高了风险检测的准确性。
本发明实施例还提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行上述图1、图2A、图3或图4所示的无人机的飞行控制方法。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述图1、图2A、图3或图4所示的无人机的飞行控制方法。
需要说明的是:上述实施例提供的无人机的飞行控制装置在实现无人机的飞行控制方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的无人机的飞行控制装置与无人机的飞行控制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。