基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置及方法与流程

文档序号:19786040发布日期:2020-01-24 13:35阅读:143来源:国知局
基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置及方法与流程

本发明涉及航空飞行器无动力飞行控制技术领域,特别是一种基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置及方法。



背景技术:

随着现代飞行器发展技术的飞速发展,一种能够实现全球快速到达的航空飞行器成为了当前研究的热点之一。这类航空飞行器在进入大气层后主要依靠滑翔飞行,研究和发展无动力飞行控制技术有助于滑翔飞行的控制操纵品质提升,同时进一步提升航空飞行器的飞行距离具有重要意义。

因此,研究高效的控制算法来提升航空飞行器滑翔飞行的水平飞行距离对于航空飞行器技术的发展具有重要的理论与应用价值。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置。当航空飞行器进入滑翔飞行空域,本装置能够根据航空飞行器的不同初始状态信息获取自动攻角控制策略,使航空飞行器在无动力情况下水平飞行距离最大。

为达到上述目的,本发明提供如下技术方案:

本发明提供了一种基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置,包括航空飞行器动力学模型与性能参数设定模块、无动力航空飞行器mcu、航空飞行器海拔高度传感器、航空飞行器飞行速度传感器、航空飞行器航迹倾角传感器、航空飞行器水平飞行距离传感器、航空飞行器飞行参数设定模块和航空飞行器攻角控制器;

所述航空飞行器动力学模型与性能参数设定模块和航空飞行器飞行参数设定模块分别与无动力航空飞行器mcu连接,用于设定航空飞行器的初始参数;

所述航空飞行器海拔高度传感器、航空飞行器飞行速度传感器、航空飞行器航迹倾角传感器和航空飞行器水平飞行距离传感器分别与无动力航空飞行器mcu连接,用于将获取的航空飞行器的海拔高度、速度、航迹倾角和水平飞行距离输入到无动力航空飞行器mcu;

所述无动力航空飞行器mcu与航空飞行器攻角控制器连接,所述无动力航空飞行器mcu采用高斯时间配点控制参数化算法得到使航空飞行器水平飞行距离最长的攻角控制策略,并将获得的攻角控制策略输出给攻角控制器。

进一步,所述无动力航空飞行器mcu包括信息采集模块、初始化模块、高斯时间配点控制参数化模块、常微分方程组求解模块、非线性规划问题求解模块和控制信号输出模块;

所述信号采集模块用于采集航空飞行器海拔高度、速度、飞行器航迹倾角和水平飞行距离,航空飞行器飞行终端状态参数,并将采集到的信息输入到初始化模块中;

所述初始化模块用于设置航空飞行器滑翔飞行过程时间高斯配点数g和攻角控制量的初始控制参数u(0)(t),并设定优化精度tol,将迭代次数k置零;

所述高斯时间配点控制参数化模块用于将滑翔飞行时间[t0,tf]转化为具有高斯分布的离散点列,对时间分段上对应的变量进行离散近似;

所述常微分方程组求解模块用于获取第k次迭代的状态信息x(k)(t)和目标函数值j(k),通过计算出第k次迭代后的目标函数梯度信息dj(k)

所述非线性规划问题求解模块用于通过计算得到满足收敛性要求的攻角控制量u(k)(t)并输出到控制信号输出模块;

所述控制信号输出模块将攻角控制量u(k)(t)传输到航空飞行器攻角控制器。

进一步,所述高斯时间配点控制参数化模块,采用如下步骤实现:

步骤c1:引入新的时间变量τ进行时间尺度变换,将时间区间从[t0,tf]转化为[-1,1],时间变换公式为

其中,t表示时间,tf表示飞行器的终端飞行时刻,t0表示飞行器的初始飞行时刻;

步骤c2:运用legendre多项式的零点来得到[-1,1]区间的时间配点,其中,n次legendre多项式的表达式为:

其中,pn+1(z)表示n次legendre多项式,pn(z)表示n-1次legendre多项式,pn-1(z)表示n-2次legendre多项式,p0(z)表示-1次legendre多项式,p-1(z)表示-2次legendre多项式,z表示多项式参数变量,αn表示n-1次legendre多项式pn(z)的特征参数,βn表示n-2次legendre多项式pn-1(z)的特征参数,n表示配点个数参数;

n为时间段[-1,1]的离散时间子区间数;

步骤c3:设置参数αn和βn的取值,分别为αn=0,

步骤c4:运用得到的高斯时间配点将时间区间划分为n段,其中,第k段子区间为[tk-1,tk],k=0,…,n;tk-1表示第k段子区间的初始时间点;tk表示第k段子区间的终值时间点;

步骤c5:设定指示函数,将被选定的指示函数定义为:

其中,χ(t)表示指示函数;

步骤c6:离散每个时间子区间上的飞行器攻角控制变量,即在每个子区间上将控制变量离散,进而得到参数化后的控制变量为:

其中,u表示离散化后的控制向量,σk为u(t)在时间区间t∈[tk-1,tk]上的离散化控制参数值;

u(t)表示飞行器的控制变量;g表示高斯配点个数;k表示时间区间数;

进一步,所述常微分方程组求解模块采用四级五阶rungekutta法,其求解公式为:

k1=f[u(k),x(k)(ti),ti]

k2=f[u(k),x(k)(ti)+k1h/2,ti+h/2]

k3=f[u(k),x(k)(ti)+k2h/2,ti+h/2]

k4=f[u(k),x(k)(ti)+k3h,ti+h]

其中,k1、k2、k3、k4各自表示rungekutta法积分过程中的4个节点的函数值;

f(·)是描述航空飞行器的空气动力学模型方程;x(k)(ti)表示航空飞行器在第k次迭代中第ti节点的各状态信息;对于每一个时间子区间[tk-1,tk],(k=1,2,…,n),h为rungekutta法积分步长;ti表示rungekutta法选择的积分节点。

进一步,所述常微分方程组求解模块中获取第k次迭代的状态信息x(k)(t)和目标函数值j(k)是通过梯度求解模块来计算出第k次迭代后的目标函数梯度信息dj(k);所述梯度求解模块的求解步骤如下:

步骤d1:采用灵敏度轨迹梯度方程法,定义灵敏度轨迹梯度方程γ(k)(t)为

γ(k)(t)的求解公式为:

其中,t为航空飞行器在滑翔飞行段的飞行时间,为在第k次迭代对t的导数,f(u(k),x(k)(t),t)是描述航空飞行器的空气动力学模型方程函数;γ(k)(t0)为第k次迭代时的灵敏度轨迹方程的初始节点状态值,x0为对应节点的初始状态值;

步骤d2:采用四级五阶rungekutta法求解灵敏度轨迹方程γ(k)(t)在各积分时刻点的值,求解公式为:

q1=s[u(k),x(k)(ti),ti]

q2=s[u(k),x(k)(ti)+q1h/2,ti+h/2]

q3=s[u(k),x(k)(ti)+q2h/2,ti+h/2]

q4=s[u(k),x(k)(ti)+q3h,ti+h]

其中,s(·)为灵敏度方程的函数,

q1、q2、q3、q4分别表示rungekutta法积分过程中的4个节点的函数值;

γ(k)(ti+h)表示灵敏度轨迹方程γ(k)(t)在(ti+h)时间节点的值;

h为rungekutta法积分步长;

ti表示rungekutta法选择的积分节点。

步骤d3:目标函数的梯度信息dj(k)

其中,j为目标函数;

γ(k)(tf)表示灵敏度轨迹方程γ(k)(t)在终值时间节点tf处的值。

进一步,所述非线性规划问题求解模块的计算具体步骤如下:

步骤e1:记点p1为向量空间中的某个点,对应于航空飞行器攻角u(k-1)(t)和目标函数值j(k)

步骤e2:选定nlp求解算法,从点p1开始迭代计算,得到p1点的寻优方向d(k-1)和步长α(k-1)

步骤e3:记点p2为当前向量空间中的某个点,由上一次迭代点p1和公式u(k)(t)=u(k-1)(t)+α(k-1)d(k-1)求解得到;点p2对应航空飞行器攻角u(k)(t)和目标函数值j(k)

步骤e4:对u(k)(t)进行寻优校正,校正后的点为记为点p3,令则点p3对应的航空飞行器攻角u(k)(t)和目标函数值

步骤e5:将当前点p3得的目标函数值j(k)的绝对值与上一次迭代点p1的目标函数值j(k-1)的绝对值作差,若两点的目标函数值之差的绝对值|j(k)-j(k-1)|小于精度tol,则满足收敛性,控制策略输出模块输出本次迭代控制策略u(k)(t);若不满足收敛性,则继续迭代,将u(k)(t)设置为初始值,k增加1,执行步骤e2。

本发明还提供了一种基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生方法,包括以下步骤:

采集航空飞行器海拔高度、速度、飞行器航迹倾角和水平飞行距离,航空飞行器飞行终端状态参数,并将采集到的信息输入到初始化模块中;

设置航空飞行器滑翔飞行过程时间高斯配点数g和攻角控制量的初始控制参数u(0)(t),并设定优化精度tol,将迭代次数k置零;

采用高斯时间配点控制参数化算法将滑翔飞行时间[t0,tf]转化为具有高斯分布的离散点列后,对时间分段上对应的变量进行离散近似;

获取第k次迭代的状态信息x(k)(t)和目标函数值j(k),通过计算出第k次迭代后的目标函数梯度信息dj(k)

通过计算得到满足收敛性要求的攻角控制量u(k)(t)并输出到控制信号输出模块;

将攻角控制量u(k)(t)传输到航空飞行器攻角控制器。

所述高斯时间配点控制参数化算法,采用如下步骤实现:

步骤c1:引入新的时间变量τ进行时间尺度变换,将时间区间从[t0,tf]转化为[-1,1],时间变换公式为

其中,t表示时间,tf表示飞行器的终端飞行时刻,t0表示飞行器的初始飞行时刻。

步骤c2:运用legendre多项式的零点来得到[-1,1]区间的时间配点,其中,n次legendre多项式的表达式为

p0(x)=1,p-1(x)=0

其中,pn+1(z)表示n次legendre多项式,pn(z)表示n-1次legendre多项式,pn-1(z)表示n-2次legendre多项式,p0(z)表示-1次legendre多项式,p-1(z)表示-2次legendre多项式,z表示多项式参数变量,αn表示n-1次legendre多项式pn(z)的特征参数,βn表示n-2次legendre多项式pn-1(z)的特征参数,n表示配点个数参数;n为时间段[-1,1]的离散时间子区间数;

步骤c3:设置参数αn和βn的取值,分别为αn=0,

步骤c4:运用得到的高斯时间配点将时间区间划分为n段,其中,第k段子区间为[tk-1,tk],k=0,…,n;tk-1表示第k段子区间的初始时间点;tk表示第k段子区间的终值时间点;

步骤c5:设定指示函数,将被选定的指示函数定义为

其中,χ(t)表示指示函数;

步骤c6:离散每个时间子区间上的飞行器攻角控制变量,即在每个子区间上将控制变量离散为常量,进而得到参数化后的控制变量为:

其中,σk为u(t)在时间区间t∈[tk-1,tk]上的离散化控制参数值;

其中,u表示离散化后的控制向量,σk为u(t)在时间区间t∈[tk-1,tk]上的离散化控制参数值;

u(t)表示飞行器的控制变量;g表示高斯配点个数;k表示时间区间数;

通过常微分方程组求解算法获取第k次迭代的状态信息x(k)(t)和目标函数值j(k),计算出第k次迭代后的目标函数梯度信息dj(k);所述常微分方程组求解模块采用四级五阶rungekutta法,其求解公式为:

k1=f[u(k),x(k)(ti),ti]

k2=f[u(k),x(k)(ti)+k1h/2,ti+h/2]

k3=f[u(k),x(k)(ti)+k2h/2,ti+h/2]

k4=f[u(k),x(k)(ti)+k3h,ti+h]

其中,k1、k2、k3、k4各自表示rungekutta法积分过程中的4个节点的函数值;f(·)是描述航空飞行器的空气动力学模型方程;x(k)(ti)表示航空飞行器在第k次迭代中第ti节点的各状态信息;对于每一个时间子区间[tk-1,tk],(k=1,2,…,n),h为rungekutta法积分步长;ti表示rungekutta法选择的积分节点。

其中,所述常微分方程组求解算法中获取第k次迭代的状态信息x(k)(t)和目标函数值j(k)是通过梯度求解模块来计算出第k次迭代后的目标函数梯度信息dj(k);所述梯度求解模块的求解步骤如下:

步骤d1:采用灵敏度轨迹梯度方程法,定义灵敏度轨迹梯度方程γ(k)(t)为

γ(k)(t)的求解公式为:

其中,t为航空飞行器在滑翔飞行段的飞行时间,

为在第k次迭代对t的导数,

f(u(k),x(k)(t),t)是描述航空飞行器的空气动力学模型方程函数;

γ(k)(t0)为第k次迭代时的灵敏度轨迹方程的初始节点状态值,

x0为对应节点的初始状态值;

步骤d2:采用四级五阶rungekutta法求解灵敏度轨迹方程γ(k)(t)在各积分时刻点的值,求解公式为:

q1=s[u(k),x(k)(ti),ti]

q2=s[u(k),x(k)(ti)+q1h/2,ti+h/2]

q3=s[u(k),x(k)(ti)+q2h/2,ti+h/2]

q4=s[u(k),x(k)(ti)+q3h,ti+h]

其中,s(·)为灵敏度方程的函数,

q1、q2、q3、q4分别表示rungekutta法积分过程中的4个节点的函数值;

γ(k)(ti+h)表示灵敏度轨迹方程γ(k)(t)在(ti+h)时间节点的值;

h为rungekutta法积分步长;

ti表示rungekutta法选择的积分节点。

步骤d3:目标函数的梯度信息dj(k)

其中,j为目标函数;

γ(k)(tf)表示灵敏度轨迹方程γ(k)(t)在终值时间节点tf处的值。

进一步,通过非线性规划问题求解算法计算得到满足收敛性要求的攻角控制量u(k)(t)并输出到控制信号输出模块;所述非线性规划问题求解算法的计算具体步骤如下:

步骤e1:记点p1为向量空间中的某个点,对应于航空飞行器攻角u(k-1)(t)和目标函数值j(k)

步骤e2:选定nlp求解算法,从点p1开始迭代计算,得到p1点的寻优方向d(k-1)和步长α(k-1)

步骤e3:记点p2为当前向量空间中的某个点,由上一次迭代点p1和公式u(k)(t)=u(k-1)(t)+α(k-1)d(k-1)求解得到;点p2对应航空飞行器攻角u(k)(t)和目标函数值j(k)

步骤e4:对u(k)(t)进行寻优校正,校正后的点为记为点p3,令则点p3对应的航空飞行器攻角u(k)(t)和目标函数值

步骤e5:将当前点p3得的目标函数值j(k)的绝对值与上一次迭代点p1的目标函数值j(k-1)的绝对值作差,若两点的目标函数值之差的绝对值|j(k)-j(k-1)|小于精度tol,则满足收敛性,控制策略输出模块输出本次迭代控制策略u(k)(t);若不满足收敛性,则继续迭代,将u(k)(t)设置为初始值,k增加1,执行步骤e2。

本发明的有益效果在于:

本发明提供的基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置,包括航空飞行器微控制单元(microcontrollerunit,简称mcu)、航空飞行器攻角控制器、航空飞行器高度传感器、航空飞行器速度传感器、航空飞行器航迹倾角传感器、航空飞行器水平飞行距离传感器。通过实时测量航空飞行器的海拔高度、速度、航迹倾角与水平飞行距离状态信息,内部集成了高斯时间配点控制参数化算法的航空飞行器mcu根据当前时刻的飞行器海拔高度、速度、航迹倾角和水平飞行距离状态信息,自动执行内部集成算法,得到使航空飞行器水平飞行距离最长的控制策略,同时,航空飞行器mcu将得到的控制策略转换为控制信号传输至航空飞行器攻角控制器单元。因此,无动力航空飞行器在滑翔段飞行中能够根据航空飞行器的不同初始状态信息获取攻角控制策略,使航空飞行器无动力情况下获取最大水平飞行距离。

本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

附图说明

为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:

图1是本发明控制信号发生装置的结构示意图;

图2是本发明飞行器中控mcu内部模块结构图;

图3是实施例1航空飞行器控制策略曲线图;

图4是实施例1航空飞行器飞行海拔高度曲线图;

图5是实施例1航空飞行器飞行速度曲线图;

图6是实施例1航空飞行器飞行航迹倾角图;

图7是实施例1航空飞行器水平飞行距离。

具体实施方式

下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限定。

实施例1

如图所示,本实施例提供的基于高斯时间配点控制参数化的无动力航空飞行器控制信号发生装置,能够根据航空飞行器的不同初始海拔高度、速度、航迹倾角和水平飞行距离状态,计算出航空飞行器攻角的控制策略,并将其转化为控制信号传输至航空飞行器攻角控制器以达到航空飞行器在无动力情况下水平飞行距离最长。

本实施例提供的装置包括航空飞行器动力学模型与性能参数设定模块11、无动力航空飞行器mcu12、航空飞行器海拔高度传感器13、航空飞行器飞行速度传感器14、航空飞行器航迹倾角传感器15、航空飞行器水平飞行距离传感器16、航空飞行器飞行参数设定模块17、航空飞行器攻角控制器18构成。

其中,所述的航空飞行器动力学模型与性能参数设定模块11用于设定航空飞行器自身的动力学模型参数以及相应的性能参数约束函数;

所述的无动力航空飞行器mcu12用于根据航空飞行器的海拔高度、速度、航迹倾角和水平飞行距离初始状态和航空飞行器动力学模型与性能参数,采用高斯时间配点控制参数化算法得到使航空飞行器水平飞行距离最长的攻角控制策略;

所述的航空飞行器海拔高度传感器13用于测量航空飞行器飞行的海拔高度参数;

所述的航空飞行器飞行速度传感器14用于测量航空飞行器飞行的速度参数;

所述的航空飞行器航迹倾角传感器15用于测量航空飞行器飞行的航迹倾角参数;

所述的航空飞行器水平飞行距离传感器16用于测量航空飞行器飞行的水平飞行距离参数;

所述的航空飞行器飞行参数设定模块17用于设定航空飞行器的终端海拔高度、速度、航迹倾角和水平飞行距离状态参数;

所述的航空飞行器攻角控制器18用于将无动力航空飞行器mcu12自动执行内部高斯时间配点控制参数化算法得到的使航空飞行器水平飞行距离最长的攻角控制策略输出给攻角控制器。

所述控制信号发生装置的运行过程包括:

步骤a1:在航空飞行器mcu12中设定航空飞行器的空气动力学模型参数与性能参数,并在航空飞行器飞行参数设定模块17中设定航空飞行器的终端海拔高度、速度、航迹倾角和水平飞行距离状态参数;

步骤a2:航空飞行器进入滑翔飞行空域,航空飞行器海拔高度传感器、速度传感器、航迹倾角传感器和水平飞行距离传感器开启,实时获取航空飞行器当前时刻的海拔高度、速度、航迹倾角和水平飞行距离信息;

步骤a3:航空飞行器mcu12根据步骤a1设定的航空飞行器的空气动力学模型参数与性能参数、航空飞行器终端海拔高度、速度、航迹倾角和水平飞行距离状态参数,结合当前时刻测量得到的航空飞行器海拔高度、速度、航迹倾角和水平飞行距离信息自动执行内部高斯时间配点控制参数化算法得到使航空飞行器水平飞行距离最长的攻角控制策略;

步骤a4:将航空飞行器mcu12得到的攻角控制策略转换为控制信号输出至航空飞行器攻角控制器18。

所述航空飞行器mcu部分,包括信息采集模块、初始化模块、高斯时间配点控制参数化模块、常微分方程组(ordinarydifferentialequations,简称ode)求解模块、非线性规划(non-linearprogramming,简称nlp问题)求解模块、控制信号输出模块。其中,信号采集模块包括航空飞行器海拔高度、速度采集,航空飞行器航迹倾角和水平飞行距离采集,航空飞行器飞行终端状态参数采集包括:海拔高度、速度、航迹倾角、水平飞行距离设定采集,航空飞行器的空气动力学模型参数与性能参数采集三个子模块;nlp求解模块包括寻优方向求解、寻优步长求解、寻优修正、nlp收敛性判断四个子模块。

所述的航空飞行器mcu自动行内部高斯时间配点控制参数化算法的运行步骤如下:

步骤b1:信息采集模块21读取设定的航空飞行器的空气动力学模型参数与性能参数,采集当前时刻航空飞行器的海拔高度、速度、行器航迹倾角和水平飞行距离信息,读取航空飞行器飞行终端海拔高、速度、航迹倾角、水平飞行距离状态参数;

步骤b2:初始化模块开始运行22,设置航空飞行器滑翔飞行过程时间高斯配点数g和攻角控制量的初始控制参数u(0)(t),并设定优化精度tol,将迭代次数k置零;

步骤b3:高斯时间配点控制参数化模块23开始运行,将滑翔飞行时间[t0,tf]转化为具有高斯分布的离散点列后,对时间分段上对应的变量进行离散近似;

步骤b4:运行ode求解模块获取第k次迭代的状态信息x(k)(t)和目标函数值j(k),通过梯度求解模块计算出第k次迭代后的目标函数梯度信息dj(k)

步骤b5:nlp问题求解模块的开始运行,经过多次迭代计算,得到每次的寻优方向和步,进行寻优修正;同时每次迭代得到攻角控制量记为u(k)(t),于是得到对应目标函数值j(k);前一次迭代产生的攻角控制量记为u(k-1)(t),对应目标函数值为j(k-1);对每次获得的目标函数j(k)与上一次的j(k-1)作差,将差值的绝对值与预先设置的优化精度tol比较,若小于tol,则判定收敛性满足。得到的攻角控制量u(k)(t)输出到航空飞行器攻角控制器18。

所述的高斯时间配点控制参数化模块,采用如下步骤实现:

步骤c1:引入新的时间变量τ进行时间尺度变换,将时间区间从[t0,tf]转化为[-1,1],时间变换公式为

步骤c2:运用legendre多项式的零点来得到[-1,1]区间的时间配点,其中n次legendre多项式的表达式为

p0(x)=1,p-1(x)=0

其中,n为时间段[-1,1]的离散时间子区间数。

步骤c3:设置参数αn和βn的取值,分别为αn=0,

步骤c4:运用得到的高斯时间配点将时间区间划分为n段,其中第k段子区间为[tk-1,tk],k=0,…,n;

步骤c5:设定指示函数,将被选定的指示函数定义为

步骤c6:离散每个时间子区间上的飞行器攻角控制变量,即在每个子区间上将控制变量离散为常量,进而得到参数化后的控制变量为:

其中,u表示离散化后的控制向量,σk为u(t)在时间区间t∈[tk-1,tk]上的离散化控制参数值;u(t)表示飞行器的控制变量;g表示高斯配点个数;k表示时间区间数;

所述ode微分方程求解模块采用四级五阶rungekutta法,其求解公式为:

k1=f[u(k),x(k)(ti),ti]

k2=f[u(k),x(k)(ti)+k1h/2,ti+h/2]

k3=f[u(k),x(k)(ti)+k2h/2,ti+h/2]

k4=f[u(k),x(k)(ti)+k3h,ti+h]

其中,k1、k2、k3、k4各自表示rungekutta法积分过程中的4个节点的函数值;f(·)是描述航空飞行器的空气动力学模型方程;x(k)(ti)表示航空飞行器在第k次迭代中第ti节点的各状态信息;对于每一个时间子区间[tk-1,tk],(k=1,2,…,n),h为rungekutta法积分步长,ti表示rungekutta法选择的积分节点。

所述的梯度求解模块的求解步骤如下:

步骤d1:采用灵敏度轨迹梯度方程法,定义灵敏度轨迹梯度方程γ(k)(t)为

γ(k)(t)的求解公式为:

其中,t为航空飞行器在滑翔飞行段的飞行时间,为在第k次迭代对t的导数,f(u(k),x(k)(t),t)是描述航空飞行器的空气动力学模型方程函数;γ(k)(t0)为第k次迭代时的灵敏度轨迹方程的初始节点状态值,x0为对应节点的初始状态值;

步骤d2:采用四级五阶rungekutta法求解灵敏度轨迹方程γ(k)(t)在各积分时刻点的值,求解公式为:

q1=s[u(k),x(k)(ti),ti]

q2=s[u(k),x(k)(ti)+q1h/2,ti+h/2]

q3=s[u(k),x(k)(ti)+q2h/2,ti+h/2]

q4=s[u(k),x(k)(ti)+q3h,ti+h]

其中,s(·)为灵敏度方程的函数,q1、q2、q3、q4分别表示rungekutta法积分过程中的4个节点的函数值;h为rungekutta法积分步长,ti表示rungekutta法选择的积分节点。

步骤d3:目标函数的梯度信息dj(k)

其中,j为目标函数。

所述的nlp求解模块的实现步骤如下:

步骤e1:记点p1为向量空间中的某个点,对应于航空飞行器攻角u(k-1)(t)和目标函数值j(k)

步骤e2:选定nlp求解算法,从点p1开始迭代计算,得到p1点的寻优方向d(k-1)和步长α(k-1)

步骤e3:记点p2为当前向量空间中的某个点,由上一次迭代点p1和公式u(k)(t)=u(k-1)(t)+α(k-1)d(k-1)求解得到;点p2对应航空飞行器攻角u(k)(t)和目标函数值j(k),较p1对应的目标函数值j(k-1)更优。

步骤e4:对u(k)(t)进行寻优校正,校正后的点为记为点p3,令则点p3对应的航空飞行器攻角u(k)(t)和目标函数值较j(k)更优;

步骤e5:将当前点p3得的目标函数值j(k)的绝对值与上一次迭代点p1的目标函数值j(k-1)的绝对值作差,若两点的目标函数值之差的绝对值|j(k)-j(k-1)|小于精度tol,则满足收敛性,控制策略输出模块输出本次迭代控制策略u(k)(t);若不满足收敛性,则继续迭代,将u(k)(t)设置为初始值,k增加1,执行步骤e2。

实施例2

本实施例提供的装置当航空飞行器到达滑翔段飞行时,航空飞行器传感器模块、信息采集模块和mcu运行。信息采集模块立即采集航空飞行器传感器模块获得的初始海拔高度、速度、飞行航道倾角和水平飞行距离信息,航空飞行器信息设置模块设定当前初始时刻t0=0s,mcu从信息采集模块处获得的航空飞行器初始的海拔高度为h0=80000m、速度为v0=6400m/s、飞行航迹倾角为γ0=-0.052rad、水平飞行距离为r0=0m,获得终端时刻tf的航空飞行器设定的终值海拔高度为hf=24000m,速度为vf=760m/s,飞行航迹倾角为γf=-0.08rad。结合航空飞行器空气动力学方程模型函数与性能参数,同时读取航空飞行器的海拔高度、速度、飞行航迹倾角、水平飞行距离初始值与终端值,得到航空飞行器滑翔段飞行过程最大水平飞行距离问题数学模型如下:

maxj=x4(tf)

s.t.

cl=-0.15+3.44u(t)

cd=0.29-1.51u(t)+5.87u(t)2

x1(0)=80×103,x1(tf)=24×103

x2(0)=6.4×103,x2(tf)=760

x3(0)=-0.052,x3(tf)=-0.08

x4(0)=0

-15≤u(t)≤30

其中,h表示海拔高度,v表示飞行速度,γ表示航迹倾角,r表示水平飞行距离,l表示升力,d表示阻力,cl表示升力系数,cd表示阻力系数。为了便于表述,用f(x(t),u(t),t)表示航空飞行器的空气动力学模型的微分方程组,记为

其中,g[u(t),x(t),t]为航空飞行器在整个飞行过程中的性能参数约束条件

j表示航空飞行器轨迹优化的目标函数,即在终端时刻时的航空飞行器的水平飞行距离。

航空飞行器mcu自动行内部高斯时间配点控制参数化算法,其运行过程如图2所示,具体步骤为:

步骤a1:航空飞行器到达滑翔段飞行,航空飞行器传感器,信息采集模块开启,获取初始时刻t0=0s时航空飞行器海拔高度h0=80000m,速度v0=6400m/s,航迹倾角为γ0=-0.052rad,并设置水平飞行距离传感器感器的水平飞行距离为r0=0m;设置终端时刻tf时航空飞行器目标达到的状态为海拔高度hf=24000m、速度vf=760m/s、飞行航迹倾角γf=-0.08rad;

步骤a2:初始化模块开始运行22,设置航空飞行器滑翔飞行过程时间高斯配点数g=30和攻角控制量的初始控制参数u(0)(t)=0.5,并设定优化精度tol=10-8,将迭代次数k=0;

步骤a3:高斯时间配点控制参数化模块23开始运行,将滑翔飞行时间[t0,tf]转化为具有高斯分布的离散点列后,对时间分段上对应的变量进行离散近似;

步骤a4:运行ode求解模块获取第k次迭代的状态信息x(k)(t)和目标函数值j(k),通过梯度求解模块计算出第k次迭代后的目标函数梯度信息dj(k)

步骤a5:nlp问题求解模块的开始运行,经过多次迭代计算,得到每次的寻优方向和步,进行寻优修正;同时每次迭代得到攻角控制量记为u(k)(t),于是得到对应目标函数值j(k);前一次迭代产生的攻角控制量记为u(k-1)(t),对应目标函数值为j(k-1);对每次获得的目标函数j(k)与上一次的j(k-1)作差,将差值的绝对值与预先设置的优化精度tol比较,若小于tol,则判定收敛性满足。得到的攻角控制量u(k)(t)输出到航空飞行器攻角控制器18。

所述的高斯时间配点控制参数化模块,采用如下步骤实现:

步骤b1:引入新的时间变量τ进行时间尺度变换,将时间区间从[t0,tf]转化为[-1,1],时间变换公式为:

步骤b2:运用legendre多项式的零点来得到[-1,1]区间的时间配点,其中n次legendre多项式的表达式为

p0(x)=1,p-1(x)=0

其中,n为时间段[-1,1]的离散时间子区间数。

步骤b3:设置参数αn和βn的取值,分别为αn=0,

步骤b4:运用得到的高斯时间配点将时间区间划分为n段,其中第k段子区间为[tk-1,tk],k=0,…,n;

步骤b5:设定指示函数,将被选定的指示函数定义为

步骤b6:离散每个时间子区间上的控制变量,即在每个子区间上将控制变量离散为常量,进而得到参数化后的控制变量为:

其中,σk为u(t)在时间区间t∈[tk-1,tk]上的离散化控制参数值。

所述ode微分方程求解模块采用四级五阶rungekutta法,其求解公式为:

k1=f[u(k),x(k)(ti),ti]

k2=f[u(k),x(k)(ti)+k1h/2,ti+h/2]

k3=f[u(k),x(k)(ti)+k2h/2,ti+h/2]

k4=f[u(k),x(k)(ti)+k3h,ti+h]

其中,k1、k2、k3、k4各自表示rungekutta法积分过程中的4个节点的函数值;f(·)是描述航空飞行器的空气动力学模型方程;x(k)(ti)表示航空飞行器在第k次迭代中第ti节点的各状态信息;对于每一个时间子区间[tk-1,tk],(k=1,2,…,n),设h为rungekutta法积分步长为0.001,ti表示rungekutta法选择的积分节点。

所述的梯度求解模块的求解步骤如下:

步骤c1:采用灵敏度轨迹梯度方程法,定义灵敏度轨迹梯度方程γ(k)(t)为

γ(k)(t)的求解公式为:

其中,t为航空飞行器在滑翔飞行段的飞行时间,为在第k次迭代对t的导数,f(u(k),x(k)(t),t)是描述航空飞行器的空气动力学模型方程函数;γ(k)(t0)为第k次迭代时的灵敏度轨迹方程的初始节点状态值,x0为对应节点的初始状态值;

步骤c2:采用四级五阶rungekutta法求解灵敏度轨迹方程γ(k)(t)在各积分时刻点的值,求解公式为:

q1=s[u(k),x(k)(ti),ti]

q2=s[u(k),x(k)(ti)+q1h/2,ti+h/2]

q3=s[u(k),x(k)(ti)+q2h/2,ti+h/2]

q4=s[u(k),x(k)(ti)+q3h,ti+h]

其中,s(·)为灵敏度方程的函数,q1、q2、q3、q4分别表示rungekutta法积分过程中的4个节点的函数值;设h为rungekutta法积分步长为0.001,ti表示rungekutta法选择的积分节点。

步骤c3:目标函数的梯度信息dj(k)

其中,j为目标函数。

所述的nlp求解模块的实现步骤如下:

步骤d1:记点p1为向量空间中的某个点,对应于航空飞行器攻角u(k-1)(t)和目标函数值j(k)

步骤d2:选定nlp求解算法,从点p1开始迭代计算,得到p1点的寻优方向d(k-1)和步长α(k-1)

步骤d3:记点p2为当前向量空间中的某个点,由上一次迭代点p1和公式u(k)(t)=u(k-1)(t)+α(k-1)d(k-1)求解得到;点p2对应航空飞行器攻角u(k)(t)和目标函数值j(k),较p1对应的目标函数值j(k-1)更优。

步骤d4:对u(k)(t)进行寻优校正,校正后的点为记为点p3,令则点p3对应的航空飞行器攻角u(k)(t)和目标函数值较j(k)更优;

步骤d5:将当前点p3得的目标函数值j(k)的绝对值与上一次迭代点p1的目标函数值j(k-1)的绝对值作差,若两点的目标函数值之差的绝对值|j(k)-j(k-1)|小于精度tol,则满足收敛性,控制策略输出模块输出本次迭代控制策略u(k)(t);若不满足收敛性,则继续迭代,将u(k)(t)设置为初始值,k增加1,执行步骤d2。

最后,无动力航空飞行器mcu12将获得的最优控制策略转换为控制信号输出至航空飞行器攻角控制器18。

图3-图7给出了经过高斯时间配点控制参数化优化后得到的航空飞行器攻角控制策略及其相应的飞行状态曲线,其中,图3为在本实施例设置性能参数要求下,得到的攻角控制曲线;在图3所示的控制信号动作过程中,航空飞行器的飞行海拔高度变化、航空飞行器飞行速度变化、航空飞行器飞行航迹倾角变化以及航空飞行器水平飞行距离变化分别如图4-7所示,可以看出采用本发明装置产生的控制信号后航空飞行器在滑翔段可以采用无动力方式水平飞行8000多千米。

以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

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