发明内容
为了解决上述问题,本公开提供一种无人机控制方法、装置、存储介质及无人机。
第一方面,本公开提供一种无人机控制方法,应用于无人机,所述方法包括:
获取所述无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息,所述飞行轨迹指令和所述飞行状态信息均包括与时间对应的位置信息,所述参考速度指令和所述飞行状态信息均包括速度信息;
根据所述当前飞行状态信息、所述预设四维飞行轨迹指令以及所述参考速度指令,确定所述无人机对应的姿态控制指令;
控制所述无人机按照所述姿态控制指令飞行。
可选地,所述根据所述当前飞行状态信息、所述预设四维飞行轨迹指令以及所述参考速度指令,确定所述无人机对应的姿态控制指令包括:
根据所述参考速度指令,所述当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及所述预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定所述无人机对应的目标速度信息;
根据所述目标速度信息、所述当前飞行状态信息中的当前速度信息以及所述参考速度指令,确定所述无人机对应的姿态控制指令。
可选地,所述位置信息包括第一位置信息、第二位置信息以及第三位置信息,所述速度信息和所述参考速度指令均包括第一速度信息、第二速度信息以及第三速度信息;所述根据所述参考速度指令,所述当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及所述预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定所述无人机对应的目标速度信息包括:
获取第一预设系数、第二预设系数、第三预设系数以及第四预设系数;
根据所述预设飞行时间信息、所述预设位置信息中的第一预设位置信息、所述参考速度指令中的第一参考速度信息、所述当前位置信息中的第一当前位置信息、所述当前飞行时间信息、所述第一预设系数以及所述第四预设系数,确定第一目标速度信息;
根据所述预设飞行时间信息、所述预设位置信息中的第二预设位置信息、所述参考速度指令中的第二参考速度信息、所述当前位置信息中的第二当前位置信息、所述当前飞行时间信息、所述第二预设系数以及所述第四预设系数,确定第二目标速度信息;
根据所述预设飞行时间信息、所述预设位置信息中的第三预设位置信息、所述参考速度指令中的第三参考速度信息、所述当前位置信息中的第三当前位置信息、所述当前飞行时间信息、所述第三预设系数以及所述第四预设系数,确定第三目标速度信息。
可选地,所述姿态控制指令包括姿态角信息和速度指令信息,所述姿态角信息包括俯仰角度和横滚角度;所述根据所述目标速度信息、所述当前飞行状态信息中的当前速度信息以及所述参考速度指令,确定所述无人机对应的姿态控制指令包括:
获取第五预设系数、第六预设系数以及重力加速度;
根据所述第一目标速度信息、所述第一参考速度信息、所述当前速度信息中的第一当前速度信息、所述第五预设系数以及所述重力加速度,确定所述俯仰角度;
根据所述第二目标速度信息、所述第二参考速度信息、所述当前速度信息中的第二当前速度信息、所述第六预设系数、所述俯仰角度以及所述重力加速度,确定所述横滚角度;
将所述第三目标速度信息作为所述速度指令信息。
可选地,所述根据所述第一目标速度信息、所述第一参考速度信息、所述当前速度信息中的第一当前速度信息、所述第五预设系数以及所述重力加速度,确定所述俯仰角度包括:
计算所述第一参考速度信息的导数;
根据所述第一参考速度信息的导数、所述第一目标速度信息、所述第一当前速度信息、所述第五预设系数以及所述重力加速度,确定待定速度信息;
对所述待定速度信息进行反正弦计算,得到待定俯仰角度;
将所述待定俯仰角度的相反数作为所述俯仰角度。
可选地,在所述控制所述无人机按照所述姿态控制指令飞行前,所述方法还包括:
获取所述无人机当前所处环境的环境风速,以及预先设置的风速阈值;
根据所述环境风速和所述风速阈值,确定所述无人机对应的姿态角阈值;
所述控制所述无人机按照所述姿态控制指令飞行包括:
根据所述姿态角信息和所述姿态角阈值,确定目标姿态角信息;
控制所述无人机按照所述目标姿态角信息和所述速度指令信息飞行。
可选地,所述姿态角阈值包括第一姿态角阈值和大于所述第一姿态角阈值的第二姿态角阈值;所述根据所述环境风速和所述风速阈值,确定所述无人机对应的姿态角阈值包括:
在所述环境风速小于所述风速阈值的情况下,确定所述姿态角阈值为所述第一姿态角阈值;
在所述环境风速大于或等于所述风速阈值的情况下,确定所述姿态角阈值为所述第二姿态角阈值。
可选地,所述根据所述姿态角信息和所述姿态角阈值,确定目标姿态角信息包括:
在所述姿态角信息小于或等于所述姿态角阈值的情况下,将所述姿态角信息作为所述目标姿态角信息;
在所述姿态角信息大于所述姿态角阈值的情况下,将所述姿态角阈值作为所述目标姿态角信息。
第二方面,本公开提供一种无人机控制装置,应用于无人机,所述装置包括:
信息获取模块,用于获取所述无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息,所述飞行轨迹指令和所述飞行状态信息均包括与时间对应的位置信息,所述参考速度指令和所述飞行状态信息均包括速度信息;
指令确定模块,用于根据所述当前飞行状态信息、所述预设四维飞行轨迹指令以及所述参考速度指令,确定所述无人机对应的姿态控制指令;
飞行控制模块,用于控制所述无人机按照所述姿态控制指令飞行。
可选地,所述指令确定模块,具体用于:
根据所述参考速度指令,所述当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及所述预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定所述无人机对应的目标速度信息;
根据所述目标速度信息、所述当前飞行状态信息中的当前速度信息以及所述参考速度指令,确定所述无人机对应的姿态控制指令。
可选地,所述位置信息包括第一位置信息、第二位置信息以及第三位置信息,所述速度信息和所述参考速度指令均包括第一速度信息、第二速度信息以及第三速度信息;所述指令确定模块,还用于:
获取第一预设系数、第二预设系数、第三预设系数以及第四预设系数;
根据所述预设飞行时间信息、所述预设位置信息中的第一预设位置信息、所述参考速度指令中的第一参考速度信息、所述当前位置信息中的第一当前位置信息、所述当前飞行时间信息、所述第一预设系数以及所述第四预设系数,确定第一目标速度信息;
根据所述预设飞行时间信息、所述预设位置信息中的第二预设位置信息、所述参考速度指令中的第二参考速度信息、所述当前位置信息中的第二当前位置信息、所述当前飞行时间信息、所述第二预设系数以及所述第四预设系数,确定第二目标速度信息;
根据所述预设飞行时间信息、所述预设位置信息中的第三预设位置信息、所述参考速度指令中的第三参考速度信息、所述当前位置信息中的第三当前位置信息、所述当前飞行时间信息、所述第三预设系数以及所述第四预设系数,确定第三目标速度信息。
可选地,所述姿态控制指令包括姿态角信息和速度指令信息,所述姿态角信息包括俯仰角度和横滚角度;所述指令确定模块,还用于:
获取第五预设系数、第六预设系数以及重力加速度;
根据所述第一目标速度信息、所述第一参考速度信息、所述当前速度信息中的第一当前速度信息、所述第五预设系数以及所述重力加速度,确定所述俯仰角度;
根据所述第二目标速度信息、所述第二参考速度信息、所述当前速度信息中的第二当前速度信息、所述第六预设系数、所述俯仰角度以及所述重力加速度,确定所述横滚角度;
将所述第三目标速度信息作为所述速度指令信息。
可选地,所述指令确定模块,还用于:
计算所述第一参考速度信息的导数;
根据所述第一参考速度信息的导数、所述第一目标速度信息、所述第一当前速度信息、所述第五预设系数以及所述重力加速度,确定待定速度信息;
对所述待定速度信息进行反正弦计算,得到待定俯仰角度;
将所述待定俯仰角度的相反数作为所述俯仰角度。
可选地,所述装置还包括:
环境风速获取模块,用于获取所述无人机当前所处环境的环境风速,以及预先设置的风速阈值;
阈值确定模块,用于根据所述环境风速和所述风速阈值,确定所述无人机对应的姿态角阈值;
所述飞行控制模块,具体用于:
根据所述姿态角信息和所述姿态角阈值,确定目标姿态角信息;
控制所述无人机按照所述目标姿态角信息和所述速度指令信息飞行。
可选地,所述姿态角阈值包括第一姿态角阈值和大于所述第一姿态角阈值的第二姿态角阈值;所述阈值确定模块,还用于:
在所述环境风速小于所述风速阈值的情况下,确定所述姿态角阈值为所述第一姿态角阈值;
在所述环境风速大于或等于所述风速阈值的情况下,确定所述姿态角阈值为所述第二姿态角阈值。
可选地,所述飞行控制模块,还用于:
在所述姿态角信息小于或等于所述姿态角阈值的情况下,将所述姿态角信息作为所述目标姿态角信息;
在所述姿态角信息大于所述姿态角阈值的情况下,将所述姿态角阈值作为所述目标姿态角信息。
第三方面,本公开提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
第四方面,本公开提供一种无人机,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
通过上述技术方案,通过获取所述无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息,所述飞行轨迹指令和所述飞行状态信息均包括与时间对应的位置信息,所述参考速度指令和所述飞行状态信息均包括速度信息;根据所述当前飞行状态信息、所述预设四维飞行轨迹指令以及所述参考速度指令,确定所述无人机对应的姿态控制指令;控制所述无人机按照所述姿态控制指令飞行。也就是说,在无人机飞行过程中,可以根据当前时刻的预设四维飞行轨迹信息、参考速度指令以及当前飞行状态信息得到姿态控制指令,并控制该无人机按照该姿态控制指令飞行,这样,可以减小该无人机的实际飞行轨迹信息与该预设四维飞行轨迹指令之间的误差,从而提高了无人机轨迹跟踪的准确率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
在下文中的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
首先,对本公开的应用场景进行说明。无人机在飞行过程中,需要保持高精度的跟踪控制性能,例如,配送无人机需要跟踪预先设置的轨迹到达目标位置。无人机在飞行过程中,可能会受到不确定障碍物的干扰,造成无人机在轨迹跟踪时出现误差。相关技术中,为了提高轨迹跟踪的准确率,对现有的轨迹跟踪算法进行优化,但是,发明人发现,由于现有的轨迹跟踪算法是针对无人机的三维轨迹空间,不包含时间轨迹,从而使得轨迹跟踪的准确率较低。对于配送无人机而言,在同一航线上同时飞行的飞机有多架,若仅考虑三维轨迹空间的跟踪,则可能会导致两架飞机追尾。
为了解决上述存在的问题,本公开提供一种无人机控制方法、装置、存储介质及无人机,在无人机飞行过程中,可以根据当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息得到姿态控制指令,并控制该无人机按照该姿态控制指令飞行,这样,可以减小该无人机的实际飞行轨迹信息与该预设四维飞行轨迹指令之间的误差,从而提高了无人机轨迹跟踪的准确率。
下面结合具体实施例对本公开进行说明。
图1是根据一示例性实施例示出的一种无人机控制方法的流程图,该方法应用于无人机,如图1所示,该方法可以包括:
S101、获取无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息。
其中,该飞行轨迹指令和该飞行状态信息均包括与时间对应的位置信息,该参考速度指令和该飞行状态信息均包括速度信息。
在本步骤中,在该无人机飞行过程中,可以周期性获取该预设四维飞行轨迹指令、该参考速度指令以及该当前飞行状态信息,其中,获取该预设四维飞行轨迹指令、该参考速度指令以及该当前飞行状态信息的周期,可以根据该无人机对轨迹跟踪的准确率的需求确定,示例地,针对轨迹跟踪准确率要求较高的无人机,可以设置较小的周期,针对轨迹跟踪准确率要求较低的无人机,可以设置较大的周期,本公开对此不作限定。
S102、根据该当前飞行状态信息、该预设四维飞行轨迹指令以及该参考速度指令,确定该无人机对应的姿态控制指令。
其中,该姿态控制指令可以包括姿态角信息和速度指令信息,该姿态角信息可以包括俯仰角度和横滚角度,该姿态角信息用于控制该无人机在水平方向的飞行角度,该速度指令信息可以用于控制该无人机在垂直方向的飞行速度。
在本步骤中,在得到该当前飞行状态信息、该预设四维飞行轨迹指令以及该参考速度指令后,可以根据该参考速度指令,该当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及该预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定该无人机对应的目标速度信息,并根据该目标速度信息、该当前飞行状态信息中的当前速度信息以及该参考速度指令,确定该无人机对应的姿态控制指令。
S103、控制该无人机按照该姿态控制指令飞行。
在本步骤中,在控制该无人机按照该姿态控制指令飞行之前,可以获取该无人机当前所处环境的环境风速,以及预先设置的风速阈值,根据该环境风速和该风速阈值,确定该无人机对应的姿态角阈值,并根据该姿态角信息和该姿态角阈值,确定目标姿态角信息,控制该无人机按照该目标姿态角信息和该速度指令信息飞行。
采用上述方法,在无人机飞行过程中,可以根据当前时刻的预设四维飞行轨迹指令、当前飞行状态信息以及参考速度指令得到姿态控制指令,并控制该无人机按照该姿态控制指令飞行,这样,可以减小该无人机的实际飞行轨迹信息与该预设四维飞行轨迹指令之间的误差,从而提高了无人机轨迹跟踪的准确率。
图2是根据一示例性实施例示出的另一种无人机控制方法的流程图,如图2所示,该方法可以包括:
S201、获取该无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息。
其中,该飞行轨迹指令和该飞行状态信息均包括与时间对应的位置信息,该参考速度指令和该飞行状态信息均包括速度信息。该预设四维飞行轨迹指令可以包括预设位置信息和预设飞行时间信息,该当前飞行状态信息可以包括当前位置信息、当前飞行时间信息以及当前速度信息。该飞行时间信息可以是该无人机从起点开始已经飞行的飞行时长,也可以是该无人机从当前位置飞行至终点所需的剩余时长,示例地,若预先设置的该无人机从起点飞行至终点的总时长为100s,该无人机飞行至A点时已经飞行了30s,则该无人机的飞行时长为30s,剩余时长为70s,该飞行时间信息可以是30s,也可以是70s,本公开对此不作限定。
在本步骤中,可以通过预先设置的轨迹信息关联关系,获取该当前时刻的预设四维飞行轨迹指令。其中,该轨迹信息关联关系可以包括不同时刻和预设四维飞行轨迹指令之间的对应关系,在确定该无人机执行本次任务的起点和终点后,可以预先设置完成本次任务的预设四维飞行轨迹指令和参考速度指令,之后,可以根据预先设置的该无人机的起飞时间和降落时间,确定多个预设飞行时刻对应的预设四维飞行轨迹指令,得到该轨迹信息关联关系。该预设飞行时刻可以是在该起飞时间与该降落时间之间,每隔预设时间段的时刻,该预设时间段可以根据该无人机对轨迹跟踪的准确率的需求确定,针对轨迹跟踪准确率要求较高的无人机,可以设置较小的预设时间段,例如1ms,针对轨迹跟踪准确率要求较低的无人机,可以设置较大的预设时间段,例如10ms,本公开对该预设时间段的大小不作限定。
需要说明的是,考虑到该预设时间段比较小,在该无人机飞行时间较长的情况下,若针对每个预设飞行时刻均存储对应的预设四维飞行轨迹指令,则需要存储的预设四维飞行轨迹指令较多,会占用较多的存储空间。因此,本公开可以将该无人机对应的多个预设四维飞行轨迹指令划分为至少一个子预设四维飞行轨迹,针对每个子预设四维飞行轨迹指令,可以用函数表达式表示该预设飞行时刻与该子预设四维飞行轨迹指令之间的对应关系,这样,针对每个子预设四维飞行轨迹指令,只需存储一个函数表达式即可。其中,划分的子预设四维飞行轨迹指令的数量可以根据该多个预设四维飞行轨迹指令所包含的曲线类型确定,不同类型的曲线对应不同的函数表达式。在获取该预设四维飞行轨迹指令时,可以先根据该当前时刻,从存储的至少一个函数表达式中确定目标函数表达式,之后,再通过该目标函数表达式,确定该当前时刻对应的预设四维飞行轨迹指令。
S202、根据该参考速度指令,该当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及该预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定该无人机对应的目标速度信息。
其中,该位置信息可以包括第一位置信息、第二位置信息以及第三位置信息,该速度信息和唉参考速度指令均可以包括第一速度信息、第二速度信息以及第三速度信息。该第一位置信息可以是该无人机在x轴方向的位置信息,该第二位置信息可以是该无人机在y轴方向的位置信息,该第三位置信息可以是该无人机在z轴方向的位置信息;该第一速度信息可以是该无人机在x轴方向的速度信息,该第二速度信息可以是该无人机在y轴方向的速度信息,该第三速度信息可以是该无人机在z轴方向的速度信息。
在本步骤中,在得到该无人机在该当前时刻的当前飞行状态信息、预设四维飞行轨迹指令以及该参考速度指令后,可以获取第一预设系数、第二预设系数、第三预设系数以及第四预设系数,根据该预设飞行时间信息、该预设位置信息中的第一预设位置信息、该参考速度指令中的第一参考速度信息、该当前位置信息中的第一当前位置信息、该当前飞行时间信息、该第一预设系数以及该第四预设系数,确定第一目标速度信息。其中,该第一预设系数、该第二预设系数、该第三预设系数以及该第四预设系数可以根据试验测试得到,该第一预设系数、该第二预设系数、该第三预设系数以及该第四预设系数的取值均在1~5之间。
示例地,可以通过以下公式计算得到该第一目标速度信息:
V xc = V xr +K x (x c - x) + K t V xr (t c - t)(1)
其中,V xc 为该第一目标速度信息,V xr 为该第一参考速度信息,x c 为该第一预设位置信息,x该第一当前位置信息,t c 为该预设飞行时间信息,t为该当前飞行时间信息,K x 为该第一预设系数,K t 为该第四预设系数。
根据该预设飞行时间信息、该预设位置信息中的第二预设位置信息、该参考速度指令中的第二参考速度信息、该当前位置信息中的第二当前位置信息、该当前飞行时间信息、该第二预设系数以及该第四预设系数,确定第二目标速度信息。示例地,可以通过以下公式计算得到该第二目标速度信息:
V yc = V yr +K y (y c - y) + K t V yr (t c - t)(2)
其中,V yc 为该第二目标速度信息,V yr 为该第二参考速度信息,y c 为该第二预设位置信息,y为该第二当前位置信息,K y 为该第二预设系数。
根据该预设飞行时间信息、该预设位置信息中的第三预设位置信息、该参考速度指令中的第三参考速度信息、该当前位置信息中的第三当前位置信息、该当前飞行时间信息、该第三预设系数以及该第四预设系数,确定第三目标速度信息。示例地,可以通过以下公式计算得到该第三目标速度信息:
V zc = V zr +K z (z c - z) + K t V zr (t c - t)(3)
其中,V zc 为该第三目标速度信息,V zr 为该第三参考速度信息,z c 为该第三预设位置信息,z为该第三当前位置信息,K z 为该第三预设系数。
S203、根据该目标速度信息、该当前飞行状态信息中的当前速度信息以及该参考速度指令,确定该无人机对应的姿态控制指令。
其中,该姿态控制指令可以包括姿态角信息和速度指令信息,该姿态角信息可以包括俯仰角度和横滚角度,该姿态角信息用于控制该无人机在水平方向的飞行角度,该速度指令信息可以用于控制该无人机在垂直方向的飞行速度。
在本步骤中,在确定该无人机对应的第一目标速度信息和该第二目标速度信息后,可以获取第五预设系数、第六预设系数以及重力加速度,根据该第一目标速度信息、该第一参考速度信息、该当前速度信息中的第一当前速度信息、该第五预设系数以及该重力加速度,确定该俯仰角度。其中,该第五预设系数和该第六预设系数可以根据试验测试得到,该第五预设系数和该第六预设系数的取值均在1~5之间。
在一种可能的实现方式中,可以计算该第一参考速度信息的导数,根据该第一参考速度信息的导数、该第一目标速度信息、该第一当前速度信息、该第五预设系数以及该重力加速度,确定待定速度信息,对该待定速度信息进行反正弦计算,得到待定俯仰角度,并将该待定俯仰角度的相反数作为该俯仰角度。示例地,可以通过以下公式计算得到该俯仰角度:
其中,
θ为该俯仰角度,
为该第一参考速度信息的一阶导数,
V x 为该第一当前速度信息,
K vx 为该第五预设系数,
g为重力加速度。
根据该第二目标速度信息、该第二参考速度信息、该当前速度信息中的第二当前速度信息、该第六预设系数、该俯仰角度以及该重力加速度,确定该横滚角度。示例地,可以通过以下公式计算得到该横滚角度:
其中,
γ为该横滚角度,
为该第二参考速度信息的一阶导数,
V y 为该第二当前速度信息,
K vy 为该第六预设系数。
在得到该无人机对应的第三目标速度信息后,可以将该第三目标速度信息作为该速度指令信息。
S204、获取该无人机当前所处环境的环境风速,以及预先设置的风速阈值。
其中,该风速阈值可以是该无人机能够安全飞行的风速,示例地,该风速阈值可以根据该无人机的具体结构或型号确定,例如,该风速阈值可以是五级风、六级风等,本公开对此不作限定。
需要说明的是,由于上述步骤中确定的该无人机对应的姿态角信息是未考虑环境风速时的理论值,在环境风速比较大的情况下,无人机按照该姿态角信息飞行可能会存在安全隐患,因此,在确定该无人机对应的姿态角信息后,可以进一步确定该姿态角信息是否适用于当前的风速环境。
在本步骤中,在确定该无人机对应的姿态角信息后,可以通过现有技术的方法,根据该无人机在当前时刻的加速度信息、当前速度信息以及当前姿态角信息计算得到该无人机当前所处环境的环境风速。本公开也可以通过现有技术的其他方法获取该无人机当前所处环境的环境风速,本公开对此不作限定。
S205、根据该环境风速和该风速阈值,确定该无人机对应的姿态角阈值。
其中,该姿态角阈值可以包括第一姿态角阈值和大于该第一姿态角阈值的第二姿态角阈值,不同型号的飞机对应的姿态角阈值可以不同,示例地,该第一姿态角阈值可以是25度~30度,该第二姿态角阈值可以是35度~40度。
在本步骤中,在得到该无人机当前所处环境的环境风速和该风速阈值后,可以确定该环境风速是否小于该风速阈值。在确定该环境风速小于该风速阈值的情况下,可以确定该姿态角阈值为该第一姿态角阈值,在确定该环境风速大于或等于该风速阈值的情况下,可以确定该姿态角阈值为该第二姿态角阈值。
S206、根据该姿态角信息和该姿态角阈值,确定目标姿态角信息。
在本步骤中,在确定该姿态角阈值后,可以对比该姿态角信息和该姿态角阈值,在该姿态角信息小于或等于该姿态角阈值的情况下,可以将该姿态角信息作为该目标姿态角信息;在该姿态角信息大于该姿态角阈值的情况下,可以将该姿态角阈值作为该目标姿态角信息。
S207、控制该无人机按照该目标姿态角信息和该速度指令信息飞行。
采用上述方法,在无人机飞行过程中,可以根据当前时刻的预设四维飞行轨迹指令、当前飞行状态信息以及参考速度指令得到姿态角信息和速度指令信息,并控制该无人机按照该姿态角信息和该速度指令信息飞行,这样,可以减小该无人机的实际飞行轨迹信息与该预设四维飞行轨迹指令之间的误差,从而提高了无人机轨迹跟踪的准确率。进一步地,在控制该无人机按照该姿态角信息和该速度指令信息飞行之前,可以先根据该无人机当前所处位置的环境风速确定姿态角阈值,并控制该无人机在该姿态角阈值范围内按照该速度指令信息飞行,这样,该无人机可以根据不同的风速环境自适应调节姿态角阈值,从而确保该无人机在常规风速或者风速超标情况下的轨迹跟踪的高准确率。
图3是根据一示例性实施例示出的一种无人机控制装置的结构示意图,该装置应用于无人机,如图3所示,该装置可以包括:
信息获取模块301,用于获取该无人机在当前时刻的预设四维飞行轨迹指令、参考速度指令以及当前飞行状态信息,该飞行轨迹指令和该飞行状态信息均包括与时间对应的位置信息,该参考速度指令和该飞行状态信息均包括速度信息;
指令确定模块302,用于根据该当前飞行状态信息、该预设四维飞行轨迹指令以及该参考速度指令,确定该无人机对应的姿态控制指令;
飞行控制模块303,用于控制该无人机按照该姿态控制指令飞行。
可选地,该指令确定模块302,具体用于:
根据该参考速度指令,该当前飞行状态信息中的当前位置信息和当前飞行时间信息,以及该预设四维飞行轨迹指令中的预设位置信息和预设飞行时间信息,确定该无人机对应的目标速度信息;
根据该目标速度信息、该当前飞行状态信息中的当前速度信息以及该参考速度指令,确定该无人机对应的姿态控制指令。
可选地,该位置信息包括第一位置信息、第二位置信息以及第三位置信息,该速度信息和该参考速度指令均包括第一速度信息、第二速度信息以及第三速度信息;该指令确定模块302,还用于:
获取第一预设系数、第二预设系数、第三预设系数以及第四预设系数;
根据该预设飞行时间信息、该预设位置信息中的第一预设位置信息、该参考速度指令中的第一参考速度信息、该当前位置信息中的第一当前位置信息、该当前飞行时间信息、该第一预设系数以及该第四预设系数,确定第一目标速度信息;
根据该预设飞行时间信息、该预设位置信息中的第二预设位置信息、该参考速度指令中的第二参考速度信息、该当前位置信息中的第二当前位置信息、该当前飞行时间信息、该第二预设系数以及该第四预设系数,确定第二目标速度信息;
根据该预设飞行时间信息、该预设位置信息中的第三预设位置信息、该参考速度指令中的第三参考速度信息、该当前位置信息中的第三当前位置信息、该当前飞行时间信息、该第三预设系数以及该第四预设系数,确定第三目标速度信息。
可选地,该姿态控制指令包括姿态角信息和速度指令信息,该姿态角信息包括俯仰角度和横滚角度;该指令确定模块302,还用于:
获取第五预设系数、第六预设系数以及重力加速度;
根据该第一目标速度信息、该第一参考速度信息、该当前速度信息中的第一当前速度信息、该第五预设系数以及该重力加速度,确定该俯仰角度;
根据该第二目标速度信息、该第二参考速度信息、该当前速度信息中的第二当前速度信息、该第六预设系数、该俯仰角度以及该重力加速度,确定该横滚角度;
将该第三目标速度信息作为该速度指令信息。
可选地,该指令确定模块302,还用于:
计算该第一参考速度信息的导数;
根据该第一参考速度信息的导数、该第一目标速度信息、该第一当前速度信息、该第五预设系数以及该重力加速度,确定待定速度信息;
对该待定速度信息进行反正弦计算,得到待定俯仰角度;
将该待定俯仰角度的相反数作为该俯仰角度。
可选地,图4是根据一示例性实施例示出的另一种无人机控制装置的结构示意图,如图4所示,该装置还包括:
环境风速获取模块304,用于获取该无人机当前所处环境的环境风速,以及预先设置的风速阈值;
阈值确定模块305,用于根据该环境风速和该风速阈值,确定该无人机对应的姿态角阈值;
该飞行控制模块303,具体用于:
根据该姿态角信息和该姿态角阈值,确定目标姿态角信息;
控制该无人机按照该目标姿态角信息和该速度指令信息飞行。
可选地,该姿态角阈值包括第一姿态角阈值和大于该第一姿态角阈值的第二姿态角阈值;该阈值确定模块305,还用于:
在该环境风速小于该风速阈值的情况下,确定该姿态角阈值为该第一姿态角阈值;
在该环境风速大于或等于该风速阈值的情况下,确定该姿态角阈值为该第二姿态角阈值。
可选地,该飞行控制模块303,还用于:
在该姿态角信息小于或等于该姿态角阈值的情况下,将该姿态角信息作为该目标姿态角信息;
在该姿态角信息大于该姿态角阈值的情况下,将该姿态角阈值作为该目标姿态角信息。
通过上述装置,在无人机飞行过程中,可以根据当前时刻的预设四维飞行轨迹指令、当前飞行状态信息以及参考速度指令得到姿态控制指令,并控制该无人机按照该姿态控制指令飞行,这样,可以减小该无人机的实际飞行轨迹信息与该预设四维飞行轨迹指令之间的误差,从而提高了无人机轨迹跟踪的准确率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的一种无人机500的框图。如图5所示,该无人机500可以包括:处理器501,存储器502。该无人机500还可以包括多媒体组件503,输入/输出(I/O)接口504,以及通信组件505中的一者或多者。
其中,处理器501用于控制该无人机500的整体操作,以完成上述的无人机控制方法中的全部或部分步骤。存储器502用于存储各种类型的数据以支持在该无人机500的操作,这些数据例如可以包括用于在该无人机500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器502或通过通信组件505发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件505用于该无人机500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,无人机500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的无人机控制方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的无人机控制方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器502,上述程序指令可由无人机500的处理器501执行以完成上述的无人机控制方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的无人机控制方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。