一种基于GPS仿真的无人机飞行轨迹模拟系统及方法与流程

文档序号:11919758阅读:879来源:国知局
一种基于GPS仿真的无人机飞行轨迹模拟系统及方法与流程

本发明属于无人机技术领域,具体涉及一种基于GPS仿真的无人机飞行轨迹模拟系统及方法。



背景技术:

在目前无人机飞行仿真中,如何模拟无人机的状态(经纬度,高度和姿态)是整个仿真系统需要解决得一个重要问题,GPS全球定位系统的广泛应用正好提供了一个良好的平台,即设计一个GPS模拟器仿真无人机在设定时间和位置接收到的GPS卫星信号,通过GPS接收机的解读,对于飞控仿真系统来说就如无人机正在设定的位置运行一般。而现今市场中的GPS信号模拟器大多是根据已经给定的飞行器的飞行轨道计算定位信号,大多不能实现给定时间和地点接收机接收到信号的实时的动态功能。

开发无人机飞行轨迹模拟系统软件环节的一般方法是使用编程语言将仿真系统的Simulink模型手工重写,通过多次修改和调试最终生成可运行的软件模块;这种开发方法需要编程人员花费大量时间来编制程序、查错、调试和验证,明显地增加工作量,延长了开发周期。

随着无人机技术的发展,仿真系统的Simulink模型复杂度逐渐提高,编程人员手工重写模型的代码的工作量剧增,且还需要专业人员辅助重写模型,以免模型与代码的解算结果之间存在偏差。手工编写的代码的风格和质量良莠不齐,降低软件运行的可靠度,增加代码出错的可能性,且代码的实时性不易保证同时,用户对实时仿真软件的多功能性、实时性、可操纵性等性能要求越来越高,进一步增加了软件的开发难度。这种传统的手工编写代码的开发方法已经很难满足快速开发实时仿真软件的需求。

无人机飞行轨迹模拟系统中真实的飞行控制计算机不能直接接收位置信息,其内部GPS信号接收模块遵循特定的通讯协议。



技术实现要素:

为解决现有技术的不足,本发明提出一种基于GPS仿真的无人机飞行轨迹模拟系统,该系统包括无人机轨迹生成模块、GPS数据处理模块、通信模块和飞行控制计算机;

无人机轨迹生成模块:

用于搭建无人机飞行模型,对搭建完成的无人机飞行模型进行更新解算获得无人机的飞行位置信息和姿态信息,并将飞行位置信息和姿态信息发送到通信模块;所述的无人机飞行模型包括动力学模型和飞行环境模型;

接收飞行控制计算机发送的控制信号,根据控制信号模拟无人机飞行,并生成新的飞行位置信息和姿态信息,将新的飞行位置信息和姿态信息发送到通信模块;

所述的GPS数据处理模块包括星历参数模块、卫星运动模块和选星模块;

星历参数模块:用于调用星历数据并发送到卫星运动模块;

卫星运动模块:用于根据接收到的星历数据进行星座模拟,获得每个卫星在每个时刻的位置坐标,将位置坐标发送到选星模块;

选星模块:用于接收飞行位置信息,根据飞行位置信息和每个时刻的每个星座的位置坐标,选择与无人机距离最近的卫星作为最佳星座,将最佳星座对应的星座位置和飞行位置信息发送到通信模块;

通信模块:

用于将无人机轨迹生成模块发送的飞行位置信息直接发送到GPS数据处理模块;

将姿态信息转化成飞行控制计算机能够识别的标准姿态信息并发送到飞行控制计算机;

将GPS数据处理模块发送的星座位置和飞行位置信息进行打包封装,转化成飞行控制计算机能够识别的位置信号发送到飞行控制计算机;

飞行控制计算机:用于接收标准姿态信息和位置信号,根据标准姿态信息和位置信号生成飞行控制信号,并将飞行控制信号发送到无人机轨迹生成模块。

所述的飞行环境模型包括大气环境模块、地球数据模块、空气动力模块、推进系统模块和惯量模块。

所述的飞行位置信息包括经度、纬度和高度。

所述的星座位置包括经度和纬度。

采用所述的基于GPS仿真的无人机飞行轨迹模拟系统进行的模拟方法,包括以下步骤:

步骤1、采用无人机轨迹生成模块,搭建无人机飞行模型,包括动力学模型和飞行环境模型,对搭建完成的无人机飞行模型进行更新解算获得无人机的飞行位置信息和姿态信息,并将飞行位置信息和姿态信息发送到通信模块;

步骤2、采用通信模块将飞行位置信息直接发送到GPS数据处理模块;并将姿态信息转化成飞行控制计算机能够识别的标准姿态信息发送到飞行控制计算机;

步骤3、采用GPS数据处理模块,根据接收到的飞行位置信息,确定最佳星座,并将最佳星座对应的星座位置和飞行位置信息共同发送到通信模块,具体步骤如下:

步骤3.1、采用星历参数模块,调用星历数据并发送到卫星运动模块;

步骤3.2、根据接收到的星历数据进行星座模拟,获得每个卫星在每个时刻的位置坐标,并将上述位置坐标发送到选星模块;

步骤3.3、根据接收到的飞行位置信息和每个时刻的每个星座的位置坐标,选择与无人机距离最近的卫星作为最佳星座,将最佳星座对应的星座位置和飞行位置信息共同发送到通信模块;

步骤4、采用通信模块将星座位置和飞行位置信息进行打包封装,转化成飞行控制计算机能够识别的位置信号发送到飞行控制计算机;

步骤5、采用飞行控制计算机,接收标准姿态信息和位置信号,根据标准姿态信息和位置信号生成飞行控制信号,将飞行控制信号发送到无人机轨迹生成模块;

步骤6、采用无人机轨迹生成模块,接收控制信号,根据控制信号模拟无人机飞行,并生成新的飞行位置信息和姿态信息,将新的飞行位置信息和姿态信息发送到通信模块,并返回执行步骤2,即无人机飞行轨迹模拟完成。

步骤1所述的动力学模型包括:

1)力方程组:

其中,表示无人机在机体坐标系的obxb轴方向的加速度;表示无人机在机体坐标系的obyb轴方向的加速度;表示无人机在机体坐标系的obzb轴方向的加速度;u表示无人机在机体坐标系的obxb轴方向的速度;v表示无人机在机体坐标系的obyb轴方向的速度;w表示无人机在机体坐标系的obzb轴方向的速度;r表示无人机在机体坐标系的obzb轴方向的角速度分量;q表示无人机在机体坐标系的obyb轴方向的角速度分量;g表示重力加速度;θ表示无人机在机体坐标系下的俯仰角;Fx表示无人机在机体坐标系的obxb轴方向的力;x表示无人机在地面坐标系的ogxg轴方向的位置;m表示无人机的总重量;p表示无人机在机体坐标系的obxb轴方向的角速度分量;φ表示无人机在机体坐标系下的滚转角;Fy表示无人机在机体坐标系的obyb轴方向的力;y表示无人机在地面坐标系的ogyg轴方向的位置;Fz表示无人机在机体坐标系的obzb轴方向的力;z表示无人机在地面坐标系的ogzg轴方向的位置;

2)力矩方程组:

其中,

其中,表示无人机在机体坐标系的obxb轴方向的角加速度分量;L表示无人机在机体坐标系下的滚转力矩;N表示无人机在机体坐标系下的偏航力矩;表示无人机在机体坐标系的obyb轴方向的角加速度分量;M表示无人机在机体坐标系下的俯仰力矩;表示无人机在机体坐标系的obzb轴方向的角加速度分量;I2表示俯仰转动惯量;I3表示偏航转动惯量;I4表示无人机在机体坐标系下绕obyb轴的惯量积;I1表示滚转转动惯量;

3)运动学方程组:

其中,表示无人机在机体坐标系下的滚转角变化率;表示无人机在机体坐标系下的俯仰角变化率;表示无人机在机体坐标系下的偏航角变化率;

4)导航方程组:

其中,Vnorth表示无人机在地面坐标系的obxb轴方向的速度;Veast表示无人机在地面坐标系的ogyg轴方向的速度;Vdown表示无人机在地面坐标系的ogzg轴方向的速度;DCMT表示由机体坐标系到地面坐标系的转换矩阵。

步骤3.2所述的获得每个卫星在每个时刻的位置坐标,采用以下公式:

其中,Xk表示卫星在地面坐标系下ogxg轴方向的位置;k表示卫星;xk表示卫星在轨道平面直角坐标系中x轴的坐标;Ωk表示升交点经度;yk表示卫星在轨道平面直角坐标系中y轴的坐标;ik表示轨道倾角;Yk表示卫星在地面坐标系下ogyg轴方向的位置;Zk表示卫星在地面坐标系下ogzg轴方向的位置。

本发明的优点:

本发明提出一种基于GPS仿真的无人机飞行轨迹模拟系统及方法,设计了基于Simulink的GPS仿真器,通过GPS卫星星座运动分析、最佳定位四颗星选择、模拟GPS接收机的基本工作方式,得到无人机位置信息转换成与之对应的GPS信号(NEMA-0183)输入飞行控制计算机,实现了给定时间和地点接收机接收到信号的实时动态功能的GPS导航仿真实验;该方法通过手工编写代码和simulink模型创建实现无人机飞行轨迹模拟系统的各功能模块,增强了使用自动代码生成技术构建仿真系统的灵活性;该方法以其快速、简单、高精度、实时性高的特点,加速了仿真系统的开发进程,提高了飞行控制系统仿真验证工作的效率;该方法根据协议中数据项进行相应的数学建模并计算,以软件的形式生成NMEA 0183协议,从而与真实的飞控进行通信,从而实现从虚拟到现实过度。

附图说明

图1为本发明一种实施例的地面坐标系的示意图;

图2为本发明一种实施例的机体坐标系的示意图;

图3为本发明一种实施例的基于GPS仿真的无人机飞行轨迹模拟系统的结构框图;

图4为本发明一种实施例的模拟方法方法流程图。

具体实施方式

下面结合附图对本发明一种实施例做进一步说明。

本发明实施例中,采用的地面坐标系(地轴系)Sg-Ogxgygzg如图1所示,在地面上选一点Og;在水平内找一条坐标轴xg轴,固定下来;zg轴的选取规则是:在指向地心的坐标轴簇中,找到垂直于地面的一条坐标轴作为zg轴;yg轴在根据右手定则水平面内找;

本发明实施例中,采用的机体坐标系(体轴系)Sb-Obxbybzb如图2所示,将原点Ob选择在飞机的质量中心,坐标系跟随飞行器一起运动;在飞行器的对称面找到一条坐标轴xb,该坐标轴与轴线平行,xb轴方向为飞行器的头部朝向;在垂直于飞行器纵向对称面的坐标轴簇中找到一条坐标轴yb,yb轴的方向为指向飞行器右侧;zb轴的确定根据右手定则,方向指向飞行器腹侧;

本发明实施例中,如图3所示,一种基于GPS仿真的无人机飞行轨迹模拟系统,该系统包括无人机轨迹生成模块、GPS数据处理模块、通信模块和飞行控制计算机;

无人机轨迹生成模块:

用于搭建无人机飞行模型,对搭建完成的无人机飞行模型进行更新解算获得无人机的飞行位置信息和姿态信息,并将飞行位置信息和姿态信息发送到通信模块;所述的无人机飞行模型包括动力学模型和飞行环境模型;

接收飞行控制计算机发送的控制信号,根据控制信号模拟无人机飞行,并生成新的飞行位置信息和姿态信息,将新的飞行位置信息和姿态信息发送到通信模块;

所述的GPS数据处理模块包括星历参数模块、卫星运动模块和选星模块;

星历参数模块:用于调用星历数据并发送到卫星运动模块;

卫星运动模块:用于根据接收到的星历数据进行星座模拟,获得每个卫星在每个时刻的位置坐标,将位置坐标发送到选星模块;

选星模块:用于接收飞行位置信息,根据飞行位置信息和每个时刻的每个星座的位置坐标,选择与无人机距离最近的卫星作为最佳星座,将最佳星座对应的星座位置和飞行位置信息发送到通信模块;

通信模块:

用于将无人机轨迹生成模块发送的飞行位置信息直接发送到GPS数据处理模块;

将姿态信息转化成飞行控制计算机能够识别的标准姿态信息并发送到飞行控制计算机;

将GPS数据处理模块发送的星座位置和飞行位置信息进行打包封装,转化成飞行控制计算机能够识别的位置信号发送到飞行控制计算机;

飞行控制计算机:用于接收标准姿态信息和位置信号,根据标准姿态信息和位置信号生成飞行控制信号,并将飞行控制信号发送到无人机轨迹生成模块;

本发明实施例中,所述的飞行环境模型包括大气环境模块、地球数据模块、空气动力模块、推进系统模块和惯量模块;

本发明实施例中,所述的飞行位置信息包括经度、纬度和高度;

本发明实施例中,所述的星座位置包括经度和纬度;

本发明实施例中,采用所述的基于GPS仿真的无人机飞行轨迹模拟系统进行的模拟方法,流程图如图4所示,包括以下步骤:

步骤1、采用无人机轨迹生成模块,使用Simulink建模工具搭建动力学模型和飞行环境模型,对搭建完成的无人机飞行模型进行更新解算获得无人机的飞行位置信息和姿态信息,并将飞行位置信息和姿态信息发送到通信模块;

本发明实施例中,在建模过程中,采用基于对象的思想,将作用在飞行器上的气动力、推力、重力以及飞行时的大气环境和地球环境都分别封装成独立的模块进行建模,然后在每个模块中又会根据具体情况再继续划分,最后将全部模型整合成完整的无人机飞行模型;

本发明实施例中,所述的动力学模型包括:

1)力方程组:

其中,表示无人机在机体坐标系的obxb轴方向的加速度;表示无人机在机体坐标系的obyb轴方向的加速度;表示无人机在机体坐标系的obzb轴方向的加速度;u表示无人机在机体坐标系的obxb轴方向的速度;v表示无人机在机体坐标系的obyb轴方向的速度;w表示无人机在机体坐标系的obzb轴方向的速度;r表示无人机在机体坐标系的obzb轴方向的角速度分量;q表示无人机在机体坐标系的obyb轴方向的角速度分量;g表示重力加速度;θ表示无人机在机体坐标系下的俯仰角;Fx表示无人机在机体坐标系的obxb轴方向的力;x表示无人机在地面坐标系的ogxg轴方向的位置;m表示无人机的总重量;p表示无人机在机体坐标系的obxb轴方向的角速度分量;φ表示无人机在机体坐标系下的滚转角;Fy表示无人机在机体坐标系的obyb轴方向的力;y表示无人机在地面坐标系的ogyg轴方向的位置;Fz表示无人机在机体坐标系的obzb轴方向的力;z表示无人机在地面坐标系的ogzg轴方向的位置;

2)力矩方程组:

其中,

其中,表示无人机在机体坐标系的obxb轴方向的角加速度分量;L表示无人机在机体坐标系下的滚转力矩;N表示无人机在机体坐标系下的偏航力矩;表示无人机在机体坐标系的obyb轴方向的角加速度分量;M表示无人机在机体坐标系下的俯仰力矩;表示无人机在机体坐标系的obzb轴方向的角加速度分量;I2表示俯仰转动惯量;I3表示偏航转动惯量;I4表示无人机在机体坐标系下绕obyb轴的惯量积;I1表示滚转转动惯量;

3)运动学方程组:

其中,表示无人机在机体坐标系下的滚转角变化率;表示无人机在机体坐标系下的俯仰角变化率;表示无人机在机体坐标系下的偏航角变化率;

4)导航方程组:

其中,Vnorth表示无人机在地面坐标系的obxb轴方向的速度;Veast表示无人机在地面坐标系的ogyg轴方向的速度;Vdown表示无人机在地面坐标系的ogzg轴方向的速度;DCMT表示由机体坐标系到地面坐标系的转换矩阵;

步骤2、采用通信模块将飞行位置信息直接发送到GPS数据处理模块;并将姿态信息转化成飞行控制计算机能够识别的标准姿态信息发送到飞行控制计算机;

本发明实施例中,将姿态信息转化成飞行控制计算机能够识别的标准姿态信息发送到飞行控制计算机时,通信模块使用了S-Function函数功能解决了Simulink开发环境下的串口通信问题,即在Simulink中的S-Function模块中添加Windows API通信函数代码;

步骤3、采用GPS数据处理模块,根据接收到的飞行位置信息,确定最佳星座,并将最佳星座对应的星座位置和飞行位置信息共同发送到通信模块,具体步骤如下:

步骤3.1、采用星历参数模块,调用美式卫星星历数据并发送到卫星运动模块;

步骤3.2、根据接收到的星历数据进行星座模拟,获得每个卫星在每个时刻的位置坐标,并将上述位置坐标发送到选星模块,具体步骤如下:

步骤3.2.1、解析星历数据获得初始时刻的六个轨道参数,包括:初始升交点赤经Ω0、初始轨道倾角i0、近地点角距ω、每个卫星至地心的距离a、偏心率e和真近点角fk;其中,Ω0、i0、ω确定轨道椭圆在空间的位置,a、e、fk确定卫星在轨道面上的位置;

步骤3.2.2、获得每个卫星在每个时刻的平均角速度n,采用以下公式:

其中,n表示每个卫星在每个时刻的平均角速度;n0表示每个卫星运行的平均角速度;Δn表示卫星电文给出的摄动改正数;G表示万有引力系数;a表示每个卫星至地心的距离;

步骤3.2.3、获得规划时间tk;GPS卫星的轨道参数是相对于参考时间t0而言的,因此,某观测时刻t的规划GPS的规划时间为:tk=t-t0;其中规划时间tk应计用一个星期(604800s)的开始或结束,即当tk>302400s时,tk应减去604800s,当tk<-302400时,tk应加上604800s;

步骤3.2.4、获得每个卫星在每个时刻的瞬时卫星平近点角Mk,根据预报星历中的平近点角M0和参考时间t0可得:Mk=M0+ntk

步骤3.2.5、更新真近点角fk,采用以下公式:

其中,Ek=Mk+e·sin Ek,k表示卫星;令Ek=Mk进行迭代计算出Ek

步骤3.2.6、对升交点角距uk,卫星矢径rk和轨道倾角ik进行改正,采用以下公式:

其中,地球非球形和日月张力等因素导致的摄动修正项为:

其中,φk表示升交距角;φk=fk+ω;

步骤3.2.7、根据修正后的升交点角距uk,卫星矢径rk和轨道倾角ik,获得每个卫星每个时刻在轨道平面上的位置,采用以下公式:

其中,xk表示卫星在轨道平面直角坐标系中x轴的坐标;yk表示卫星在轨道平面直角坐标系中y轴的坐标;zk表示卫星在轨道平面直角坐标系中z轴的坐标;

步骤3.2.8、进一步获得每个卫星在每个时刻的位置坐标,采用以下公式:

其中,Xk表示卫星在地面坐标系下ogxg轴方向的位置;ik表示轨道倾角;Yk表示卫星在地面坐标系下ogyg轴方向的位置;Zk表示卫星在地面坐标系下ogzg轴方向的位置;Ωk表示升交点经度,表示升交点经度的一阶导数;ω1表示地球的自转角速度;

步骤3.3、根据接收到的飞行位置信息和每个时刻的每个星座的位置坐标,选择与无人机距离最近的四颗卫星作为最佳星座,将最佳星座对应的星座位置和飞行位置信息共同发送到通信模块;

本发明实施例中,a.首先选择高度角最大(位于天顶方向)的卫星作为第一颗卫星;b.选择方位角最接近东向轴的卫星作为第二颗卫星;c.选择方位角最接近北向轴的卫星作为第三颗卫星;d.从剩余的可见卫星中选择与已选好的三颗卫星组合的几何精度衰减因子GDOP最小的卫星作为第四颗卫星;

步骤4、采用通信模块将星座位置和飞行位置信息进行打包封装,转化成飞行控制计算机能够识别的位置信号发送到飞行控制计算机;

本发明实施例中,按照NMEA 0183标准传输协议对星座位置和飞行位置信息进行打包封装,然后通过RS232串行口发送给飞行控制计算机;

步骤5、采用飞行控制计算机,接收标准姿态信息和位置信号,根据标准姿态信息和位置信号生成飞行控制信号,将飞行控制信号发送到无人机轨迹生成模块;

步骤6、采用无人机轨迹生成模块,接收控制信号,根据控制信号模拟无人机飞行,并生成新的飞行位置信息和姿态信息,将新的飞行位置信息和姿态信息发送到通信模块,并返回执行步骤2,即无人机飞行轨迹模拟完成;工作人员根据无人机飞行轨迹和模拟数据进行下一步实验、检测或运用于真实的飞行控制系统中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1