一种飞行器姿态的确定方法、装置、电子设备及存储介质
文献发布时间:2024-04-18 19:52:40
技术领域
本发明涉及飞行器技术领域,特别是涉及一种飞行器姿态的确定方法、装置、电子设备及存储介质。
背景技术
欧拉角用于描述载体的动力学运动,一般由俯仰角、滚转角和航向角组成,其中,滚转角也可以称之为横滚角。在惯性导航及飞行器控制等领域中,可以通过飞行器的欧拉角表示飞行器姿态。一般情况下,根据欧拉角微分方程可以实时求解出飞行器的欧拉角,但是当欧拉角中俯仰角为±90度时,欧拉角微分方程会出现奇异性问题,即会导致当欧拉角中俯仰角为±90度时,无法求解欧拉角中滚转角和航向角。
发明内容
本发明实施例的目的在于提供一种飞行器姿态的确定方法、装置、电子设备及存储介质,以避免飞行器姿态确定过程中的奇异性问题,提高确定的飞行器姿态的精准度,且降低确定飞行器姿态的复杂度。具体技术方案如下:
第一方面,本发明实施例提供了一种飞行器姿态的确定方法,包括:
若飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件,则选取所述飞行器坐标系对应的欧拉角表示飞行器的姿态;其中,所述飞行器坐标系对应的欧拉角是利用所述飞行器坐标系对应的当前四元数解算得到,所述飞行器坐标系对应的当前四元数是结合所述飞行器当前时刻的陀螺角速度和飞行器坐标系得到的;
若飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件,则选取虚拟坐标系对应的欧拉角计算所述飞行器的姿态,所述虚拟坐标系为基于飞行器坐标系沿X轴旋转第二预设角度得到的,其中,所述虚拟坐标系对应的欧拉角是利用所述虚拟坐标系对应的当前四元数解算得到,所述虚拟坐标系对应的当前四元数是结合所述陀螺角速度和虚拟坐标系得到的。
可选地,所述方法还包括:
采集飞行器当前时刻的陀螺角速度;
结合所述陀螺角速度和飞行器坐标系,得到当前时刻所述飞行器坐标系对应的当前四元数;
利用所述飞行器坐标系对应的当前四元数解算得到所述飞行器坐标系对应的欧拉角。
可选地,所述方法还包括:
结合所述陀螺角速度和虚拟坐标系,得到当前时刻所述虚拟坐标系对应的当前四元数;
利用所述虚拟坐标系对应的当前四元数解算得到所述虚拟坐标系对应的欧拉角。
可选地,所述结合所述陀螺角速度和飞行器坐标系,得到当前时刻所述飞行器坐标系对应的当前四元数,包括:
通过四元数姿态估计的初始对准,获得所述飞行器坐标系对应的初始四元数;
利用所述飞行器坐标系对应的初始四元数和所述陀螺角速度,通过四元数微分方程,得到当前时刻所述飞行器坐标系对应的当前四元数。
可选地,所述结合所述陀螺角速度和虚拟坐标系,得到当前时刻所述虚拟坐标系对应的当前四元数,包括:
通过四元数姿态估计的初始对准,获得所述虚拟坐标系对应的初始四元数;
利用所述虚拟坐标系对应的初始四元数和所述陀螺角速度,通过四元数微分方程,得到当前时刻所述虚拟坐标系对应的当前四元数。
可选地,在所述结合所述陀螺角速度和飞行器坐标系,得到当前时刻所述飞行器坐标系对应的当前四元数之后,所述方法还包括:
对所述飞行器坐标系对应的当前四元数进行归一化;
所述利用所述飞行器坐标系对应的当前四元数解算得到所述飞行器坐标系对应的欧拉角,包括:
利用所述飞行器坐标系对应的归一化后的当前四元数解算得到所述飞行器坐标系对应的欧拉角。
可选地,在所述结合所述陀螺角速度和虚拟坐标系,得到当前时刻所述虚拟坐标系对应的当前四元数之后,所述方法还包括:
对虚拟坐标系对应的当前四元数进行归一化;
所述利用所述虚拟坐标系对应的当前四元数解算得到所述虚拟坐标系对应的欧拉角,包括:
利用所述虚拟坐标系对应的归一化后当前四元数解算得到所述虚拟坐标系对应的欧拉角。
可选地,当所述飞行器坐标系对应的欧拉角中俯仰角大于-45度或者小于45度,则所述飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件;所述第二预设角度为90度。
第二方面,本发明实施例提供了一种飞行器姿态的确定装置,包括:
第一选取模块,用于若飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件,则选取所述飞行器坐标系对应的欧拉角表示飞行器的姿态;其中,所述飞行器坐标系对应的欧拉角是利用所述飞行器坐标系对应的当前四元数解算得到,所述飞行器坐标系对应的当前四元数是结合所述飞行器当前时刻的陀螺角速度和飞行器坐标系得到的;
第二选取模块,用于若飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件,则选取虚拟坐标系对应的欧拉角计算所述飞行器的姿态,所述虚拟坐标系为基于飞行器坐标系沿X轴旋转第二预设角度得到的,其中,所述虚拟坐标系对应的欧拉角是利用所述虚拟坐标系对应的当前四元数解算得到,所述虚拟坐标系对应的当前四元数是结合所述陀螺角速度和虚拟坐标系得到的。
可选地,所述装置还包括:
采集模块,用于采集飞行器当前时刻的陀螺角速度;
第一计算模块,用于结合所述陀螺角速度和飞行器坐标系,得到当前时刻所述飞行器坐标系对应的当前四元数;利用所述飞行器坐标系对应的当前四元数解算得到所述飞行器坐标系对应的欧拉角。
可选地,所述装置还包括:
第二计算模块,用于结合所述陀螺角速度和虚拟坐标系,得到当前时刻所述虚拟坐标系对应的当前四元数;利用所述虚拟坐标系对应的当前四元数解算得到所述虚拟坐标系对应的欧拉角。
可选地,所述第一计算模块,具体用于通过四元数姿态估计的初始对准,获得所述飞行器坐标系对应的初始四元数;利用所述飞行器坐标系对应的初始四元数和所述陀螺角速度,通过四元数微分方程,得到当前时刻所述飞行器坐标系对应的当前四元数。
可选地,第二计算模块,具体用于通过四元数姿态估计的初始对准,获得所述虚拟坐标系对应的初始四元数;利用所述虚拟坐标系对应的初始四元数和所述陀螺角速度,通过四元数微分方程,得到当前时刻所述虚拟坐标系对应的当前四元数。
可选地,所述装置还包括:
第一归一化模块,用于在所述结合所述陀螺角速度和飞行器坐标系,得到当前时刻所述飞行器坐标系对应的当前四元数之后,对所述飞行器坐标系对应的当前四元数进行归一化;
第一计算模块,具体用于利用所述飞行器坐标系对应的归一化后的当前四元数解算得到所述飞行器坐标系对应的欧拉角。
可选地,所述装置还包括:
第二归一化模块,用于在所述结合所述陀螺角速度和虚拟坐标系,得到当前时刻所述虚拟坐标系对应的当前四元数之后,对所述虚拟坐标系对应的当前四元数进行归一化;
第二计算模块,具体用于利用所述虚拟坐标系对应的归一化后当前四元数解算得到所述虚拟坐标系对应的欧拉角。
可选地,当所述飞行器坐标系对应的欧拉角中俯仰角大于-45度或者小于45度,则所述飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件;所述第二预设角度为90度。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的方法步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行第一方面任一所述的方法步骤。
本发明实施例有益效果:
本发明实施例提供的飞行器姿态的确定方法,可以结合基于飞行器坐标系以及基于飞行器坐标系沿X轴旋转第二预设角度得到的虚拟坐标系分别得到的欧拉角,在飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件的情况下,选取飞行器坐标系对应的欧拉角表示飞行器的姿态;在飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件的情况下,选取虚拟坐标系对应的欧拉角计算飞行器的姿态,既能克服奇异性问题,又能利用各自的精华区提高飞行器姿态的精准度;同时,飞行器坐标系对应的欧拉角是利用飞行器坐标系对应的当前四元数解算得到以及虚拟坐标系对应的欧拉角是利用虚拟坐标系对应的当前四元数解算得到,也即利用四元数解算降低了确定飞行器姿态的复杂度。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的飞行器姿态的确定方法的流程图;
图2为应用本发明实施例提供的飞行器姿态的确定方法的示意图;
图3表示虚拟坐标系与真实坐标系的欧拉角对比图;
图4为本发明实施例提供的飞行器姿态的确定装置的结构示意图;
图5为本发明实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本发明所获得的所有其他实施例,都属于本发明保护的范围。
针对根据欧拉角微分方程可以实时求解出飞行器的欧拉角过程中存在的奇异点问题,可以采用双欧法来解决,根据坐标转换的不同顺序,产生两种欧拉角(正欧法和反欧法),使两组欧拉方程的奇异区和精华区呈现倒挂关系,可以±45度为界交替使用正反欧拉方程,既能克服奇异性问题,又能利用各自的精华区提高求解精度。但是由于欧拉方程中包含三角函数,求解微分方程时计算量大大增加,即会导致飞行器姿态确定过程的计算复杂度较高。
描述载体运动时,地理坐标系n系到载体坐标系b系需要变换三次,依次转动航向角、俯仰角和滚转角,可得欧拉角微分方程为:
(1)
通过飞行器的欧拉角表示飞行器的姿态,载体坐标系为飞行器坐标系;
其中,
双欧法采用另外三个欧拉角,转动顺序按航向角
(2)
可见,反欧拉角微分方程同样存在奇异性。γ
对于两种转动顺序,最终得到的方向余弦阵相同,从而得到对应关系式:
(3)
代入(2)式得:
(4)
可见正反欧拉微分方程的精华区和奇异区呈倒挂关系,也可以理解为基于飞行器坐标系求解欧拉角和基于对飞行器坐标系进行旋转得到的另一坐标系求解欧拉角的精华区和奇异区呈倒挂关系。在实际应用中,可以以俯仰角±45度为界来划分精华区和奇异区。
双欧法是基于正反欧拉微分方程的精华区和奇异区的倒挂关系来交替计算,既解决了欧拉方程的奇异性,又提高了求解精度。但是由于欧拉微分方程含有三角函数,求解微分方程时计算量较大,也即会导致飞行器姿态确定过程的计算复杂度较高。另外对于航姿参考系统(Attitude and heading reference system,AHRS)组合导航,一般采用扩展卡尔曼滤波(Extended Kalman Filter,EKF)方法计算,若采用欧拉角微分方程建模,误差方程非线性度较强,计算量也进一步增大。
另一种方式中可以采用四元数法,四元数法虽然比欧拉角法多一个参数,但是利用四元数法求解飞行器姿态过程中进行数值积分求解时只需要进行加减法与乘法运算,求解的计算量要比欧拉角法少得多,而且不存在奇异点。但四元数法虽然计算量小,避免了奇异点问题,但是由四元数计算欧拉角时,当俯仰角接近±90度,四元数与欧拉角的计算公式中出现接近“0/0”的情况,导致滚转角和航向角解算误差很大,也即会导致确定的飞行器姿态的准确性不高。
四元数是由一个实数单位和三个虚数单位i,j,k组成的超复数,其表达式为:
(5)
其中,q
令
(6)
、/>
则四元数微分方程为:
(7)
即
(8)
根据上式,采用四阶龙格-库塔法可以实时计算四元数。
Ǫ可以理解为飞行器的初始四元数,q
从四元数微分方程可以看出,四元数不存在奇异点,且是线性方程,计算量较小。
虽然四元数计算量小,没有奇异点,但某些场合仍然需要提供欧拉角,需要根据四元数计算出欧拉角。欧拉角与四元数的对应关系如下:
(9)
(10)
(11)
θ
当θ
本发明实施例利用双欧法的精华区和奇异区的倒挂关系,提出一种基于四元数的虚拟坐标系方法,即构造一个虚拟坐标系,与原坐标系形成倒挂关系,也即虚拟坐标系与飞行器坐标系形成倒挂关系,以基于飞行器坐标系和虚拟坐标系分别解算飞行器的欧拉角,以选取不同坐标系的精华区以确定飞行器姿态。
本发明实施例结合虚拟坐标系解决欧拉角奇异值,也即采用真实坐标系和虚拟坐标系同时计算飞行器姿态的四元数,并根据两种四元数的精华区计算飞行器的欧拉角,通过本发明实施例提供的飞行器姿态的确定方法既避免了双欧法求解微分方程过程中复杂运算,又解决了四元数法求解欧拉角时的临近“0/0”解算误差很大的问题,也即降低了确定的飞行器姿态的误差,提高了确定的飞行器姿态的精准度。
本发明实施例提供了一种飞行器姿态的确定方法,可以应用于电子设备,具体地,电子设备可以是飞行器中的处理模块等,也可以是独立于飞行器的处理器等。
如图1所示,本发明实施例提供了一种飞行器姿态的确定方法,可以包括:
S101,若飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件,则选取飞行器坐标系对应的欧拉角表示飞行器的姿态;其中,飞行器坐标系对应的欧拉角是利用飞行器坐标系对应的当前四元数解算得到,飞行器坐标系对应的当前四元数是结合飞行器当前时刻的陀螺角速度和飞行器坐标系得到的;
S102,若飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件,则选取虚拟坐标系对应的欧拉角计算飞行器的姿态,虚拟坐标系为基于飞行器坐标系沿X轴旋转第二预设角度得到的,其中,虚拟坐标系对应的欧拉角是利用虚拟坐标系对应的当前四元数解算得到,虚拟坐标系对应的当前四元数是结合陀螺角速度和虚拟坐标系得到的。
本发明实施例中,结合基于飞行器坐标系以及基于飞行器坐标系沿X轴旋转第二预设角度得到的虚拟坐标系分别得到的欧拉角,在飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件的情况下,选取飞行器坐标系对应的欧拉角表示飞行器的姿态;在飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件的情况下,选取虚拟坐标系对应的欧拉角计算飞行器的姿态,既能克服奇异性问题,又能利用各自的精华区提高飞行器姿态的精准度;同时,飞行器坐标系对应的欧拉角是利用飞行器坐标系对应的当前四元数解算得到以及虚拟坐标系对应的欧拉角是利用虚拟坐标系对应的当前四元数解算得到,也即利用四元数解算降低了确定飞行器姿态的复杂度。
一种可实现方式中,利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角之后,判断飞行器坐标系对应的欧拉角中俯仰角是否满足第一预设角度条件,具体地,判断飞行器坐标系对应的欧拉角中俯仰角是否在预设角度范围内,若满足,则选取飞行器坐标系对应的欧拉角表示飞行器的姿态;若不满足,则选取虚拟坐标系对应的欧拉角计算飞行器的姿态,如,将虚拟坐标系对应的欧拉角作为飞行器的姿态,或者,将飞行器坐标系对应的欧拉角中俯仰角以及虚拟坐标系对应的欧拉角中滚转角和航向角作为飞行器的姿态。
一种可选地实施例中,当飞行器坐标系对应的欧拉角中俯仰角大于-45度或者小于45度,则飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件;第二预设角度为90度。
也即本发明实施例中,虚拟坐标系为基于飞行器坐标系沿X轴旋转90度得到的。当飞行器坐标系对应的欧拉角中俯仰角大于-45度或者小于45度,则选取飞行器坐标系对应的欧拉角表示飞行器的姿态;当飞行器坐标系对应的欧拉角中俯仰角不大于-45度也不小于45度,则选取虚拟坐标系对应的欧拉角计算飞行器的姿态。
根据空间转换关系,θ
飞行器坐标系对应的欧拉角是利用飞行器坐标系对应的当前四元数解算得到以及虚拟坐标系对应的欧拉角是利用虚拟坐标系对应的当前四元数解算得到,利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角的过程中会用到三角函数的计算,90°的三角函数值计算比较方便且可以准确地通过整数表示,如此能够使得利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角更加方便且准确。
本发明实施例提供的飞行器姿态的确定方法中,利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角可以包括:
采集飞行器当前时刻的陀螺角速度;结合陀螺角速度和飞行器坐标系,得到当前时刻飞行器坐标系对应的当前四元数;利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角。
其中,结合陀螺角速度和飞行器坐标系,得到当前时刻飞行器坐标系对应的当前四元数,包括:通过四元数姿态估计的初始对准,获得飞行器坐标系对应的初始四元数;利用飞行器坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻飞行器坐标系对应的当前四元数。
四元数姿态估计的初始对准可以包括获取飞行器的初始欧拉角,表示飞行器的初始姿态,如获取飞行器水平放置时飞行器坐标系下的欧拉角作为飞行器坐标系对应的初始欧拉角,基于该初始欧拉角通过初始对准,得到飞行器坐标系对应的初始四元数。具体地初始对准可以参照相关技术,这里不再赘述。
得到初始四元数
其中,q
利用飞行器坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻飞行器坐标系对应的当前四元数:
四元数微分方程为:
即
其中,
、/>
根据上式,采用四阶龙格-库塔法可以实时计算四元数。
Ǫ可以理解为飞行器的初始四元数,q
从四元数微分方程可以看出,四元数不存在奇异点,且是线性方程,计算量较小。
利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角通过如下公式实现:
θ
本发明实施例提供的飞行器姿态的确定方法中,利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角可以包括:
结合陀螺角速度和虚拟坐标系,得到当前时刻虚拟坐标系对应的当前四元数;利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角。
其中,结合陀螺角速度和虚拟坐标系,得到当前时刻虚拟坐标系对应的当前四元数,包括:通过四元数姿态估计的初始对准,获得虚拟坐标系对应的初始四元数;利用虚拟坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻虚拟坐标系对应的当前四元数。
利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角,类似于上述利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角,只需在计算过程将飞行器坐标系替换为虚拟坐标系。
具体地,虚拟坐标系对应的初始四元数为Q
其中,q
可得,到虚拟坐标系下的欧拉角为:
/>
θ
一种可选地实施例中,在结合陀螺角速度和飞行器坐标系,得到当前时刻飞行器坐标系对应的当前四元数之后,还可以包括:对飞行器坐标系对应的当前四元数进行归一化;
利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角,包括:利用飞行器坐标系对应的归一化后的当前四元数解算得到飞行器坐标系对应的欧拉角。
一种可选地实施例中,在结合陀螺角速度和虚拟坐标系,得到当前时刻虚拟坐标系对应的当前四元数之后,还可以包括:对虚拟坐标系对应的当前四元数进行归一化;
利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角,包括:利用虚拟坐标系对应的归一化后当前四元数解算得到虚拟坐标系对应的欧拉角。
通过对四元数进行归一化,使得基于四元数解算得到对应的欧拉角的过程更加简便。
图2为应用本发明实施例提供的飞行器姿态的确定方法的示意图。
S21,初始化;
通过四元数姿态估计的初始对准,获得飞行器坐标系对应的初始四元数。
四元数姿态估计的初始对准可以包括获取飞行器的初始欧拉角,表示飞行器的初始姿态,如获取飞行器水平放置时飞行器坐标系下的欧拉角作为飞行器坐标系对应的初始欧拉角,基于该初始欧拉角通过初始对准,得到飞行器坐标系对应的初始四元数。
通过四元数姿态估计的初始对准,获得虚拟坐标系对应的初始四元数。
获取飞行器的初始欧拉角,表示飞行器的初始姿态,如获取飞行器水平放置时虚拟坐标系下的欧拉角作为虚拟坐标系对应的初始欧拉角,基于该初始欧拉角通过初始对准,得到虚拟坐标系对应的初始四元数。
S22,采集陀螺角速度;
可以通过传感器等采集。
S23,四元数微分方程解算Q;
S24,Q归一化;
S25,提取欧拉角θ
S26,计算虚拟坐标系下的四元数Qr;
利用飞行器坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻飞行器坐标系对应的当前四元数,并利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角,具体过程在上述实施例已经详述,这里不再赘述。
S27,Q
S28,提取欧拉角θ
利用虚拟坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻虚拟坐标系对应的当前四元数,并利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角,具体过程在上述实施例已经详述,这里不再赘述。
S29,判断是否满足θ
如果是,则确定θ
如果否,则确定θ
采集陀螺角速度,根据四元数微分方程解算四元数Q,并对Q归一化处理;再根据旋转关系,计算虚拟坐标系下的四元数Q
欧拉角的提取方法如下:
如此,得到飞行器姿态。
本发明实施例提供的飞行器姿态的确定方法针对欧拉角奇异点问题,提出一种简单有效的虚拟坐标系四元数解算方法,构造一种虚拟坐标系,与真实坐标系形成欧拉角的倒挂关系。提取欧拉角时根据俯仰角的大小,分别提取虚拟坐标系和真实坐标系的精华区,达到既提高解算精度,又避免了欧拉角奇异点问题。
针对欧拉角奇异点问题,本发明实施例提供的飞行器姿态的确定方法结合欧拉角法和四元数法,提出一种虚拟坐标系的四元数法,相对于双欧法和普通四元数法,本发明实施例提供的飞行器姿态的确定方法中微分方程为线性方程,计算简单,速度快,误差小,解决了奇异点问题,精度更高;另外,可用于扩展卡尔曼滤波组合导航算法,可移植性强。简单理解,本发明实施例提供的飞行器姿态的确定方法中算法简单,适应性强,可移植性强,计算精度更高。
本发明实施例对某MEMS惯导产品按照以上方法进行试验验证,以验证本发明实施例提供的飞行器姿态的确定方法的有效性。首先将MEMS惯导水平放置一段时间,然后将俯仰角向下低头90,也即沿X轴旋转90度,同时计算真实坐标系和虚拟坐标系的四元数,并分别提取欧拉角,结果如下图3所示,图3表示虚拟坐标系与真实坐标系的欧拉角对比图,横坐标表示时间,纵坐标表示俯仰角、滚转角和航向角的角度。
如图3所示,当真实坐标系的俯仰角接近-90度时,对应的滚转角和航向角产生很大的误差,而虚拟坐标系的俯仰角、滚转角和航向角都接近理想值。当真实坐标系的俯仰角接近0度时,对应的虚拟坐标系的滚转角和航向角误差较大。以-45度为界,上述欧拉角提取方法,可以将欧拉角控制在两种坐标系的精华区内,既保证了四元数提取欧拉角时的解算精度,又避免了奇异点问题。
基于与飞行器姿态的确定方法相同的发明构思,本发明实施例还提供了一种飞行器姿态的确定装置,如图4所示,包括:
第一选取模块401,用于若飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件,则选取飞行器坐标系对应的欧拉角表示飞行器的姿态;其中,飞行器坐标系对应的欧拉角是利用飞行器坐标系对应的当前四元数解算得到,飞行器坐标系对应的当前四元数是结合飞行器当前时刻的陀螺角速度和飞行器坐标系得到的;
第二选取模块402,用于若飞行器坐标系对应的欧拉角中俯仰角不满足第一预设角度条件,则选取虚拟坐标系对应的欧拉角计算飞行器的姿态,虚拟坐标系为基于飞行器坐标系沿X轴旋转第二预设角度得到的,其中,虚拟坐标系对应的欧拉角是利用虚拟坐标系对应的当前四元数解算得到,虚拟坐标系对应的当前四元数是结合陀螺角速度和虚拟坐标系得到的。
可选地,装置还包括:
采集模块(图中未示出),用于采集飞行器当前时刻的陀螺角速度;
第一计算模块(图中未示出),用于结合陀螺角速度和飞行器坐标系,得到当前时刻飞行器坐标系对应的当前四元数;利用飞行器坐标系对应的当前四元数解算得到飞行器坐标系对应的欧拉角。
可选地,装置还包括:
第二计算模块(图中未示出),用于结合陀螺角速度和虚拟坐标系,得到当前时刻虚拟坐标系对应的当前四元数;利用虚拟坐标系对应的当前四元数解算得到虚拟坐标系对应的欧拉角。
可选地,第一计算模块(图中未示出),具体用于通过四元数姿态估计的初始对准,获得飞行器坐标系对应的初始四元数;利用飞行器坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻飞行器坐标系对应的当前四元数。
可选地,第二计算模块(图中未示出),具体用于通过四元数姿态估计的初始对准,获得虚拟坐标系对应的初始四元数;利用虚拟坐标系对应的初始四元数和陀螺角速度,通过四元数微分方程,得到当前时刻虚拟坐标系对应的当前四元数。
可选地,装置还包括:
第一归一化模块(图中未示出),用于在结合陀螺角速度和飞行器坐标系,得到当前时刻飞行器坐标系对应的当前四元数之后,对飞行器坐标系对应的当前四元数进行归一化;
第一计算模块(图中未示出),具体用于利用飞行器坐标系对应的归一化后的当前四元数解算得到飞行器坐标系对应的欧拉角。
可选地,装置还包括:
第二归一化模块(图中未示出),用于在结合陀螺角速度和虚拟坐标系,得到当前时刻虚拟坐标系对应的当前四元数之后,对虚拟坐标系对应的当前四元数进行归一化;
第二计算模块(图中未示出),具体用于利用虚拟坐标系对应的归一化后当前四元数解算得到虚拟坐标系对应的欧拉角。
可选地,当飞行器坐标系对应的欧拉角中俯仰角大于-45度或者小于45度,则飞行器坐标系对应的欧拉角中俯仰角满足第一预设角度条件;第二预设角度为90度。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述实施例中飞行器姿态的确定方法的方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-ProgrammableGate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中飞行器姿态的确定方法的方法步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中飞行器姿态的确定方法的方法步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
- 一种问卷调查对象确定方法、装置、电子设备和存储介质
- 一种车位确定方法、装置、电子设备、车辆及存储介质
- 配送参数的确定方法、确定装置、存储介质和电子设备
- 一种浴室加热装置和用于控制浴室加热装置的方法、设备、电子设备及计算机可读存储介质
- 行业关联度、风险确定方法及装置、存储介质和电子设备
- 一种姿态信息确定方法、装置、电子设备以及存储介质
- 姿态确定方法、装置、电子设备和存储介质