[0024] 另外,
[0025] wx=xcur-xdes;(xcur是x的当前坐标,xdes是期望的x坐标值)
[0026] wy=ycur-ydes;(ycur是y的当前坐标,ydes是期望的y坐标值)
[0027] wz=zcur-zdes;(zcur是z的当前坐标,zdes是期望的z坐标值)
[0028] wv=vcur-vdes;(vcur是速度v的当前值,vdes是期望的速度值)
[0029] wtheta=θcur-θdes;(θcur是俯仰角θ的当前值,θdes是期望的俯仰角值)[0030] wgamma=γcur-γdes;(γcur是滚转角γ的当前值,γdes是期望的滚转角值)[0031] wpsi=ψcur-ψdes;(ψcur是偏航角ψ的当前值,ψdes是期望的偏航角值)[0032] 如果(1)在某个时间点进行n次抽样计算;(2)代价函数的阈值被指定为minCost,则,计算预测代价的方法是:
[0033] 首先,计算W1、W2……Wn的值;
[0034] 然后,计算Ave(W),即,计算W1、W2……Wn的平均值;
[0035] 接着,计算代价函数J的值;
[0036] 最后,将J的值与minCost相比较,如果J≤minCost,则预测的代价“极小”;否则预测的代价过大。
[0037] 综上所述,如果正确的预测次数大于指定的阈值同时预测的代价小于指定的阈值,则认为本次预测有效并付诸于实施,否则,认为本次预测无效并立即进行补救式调整。
[0038] 2.数据控制方法
[0039] 当预测有效时,进入数据控制阶段。
[0040] 数据控制是指一种应用于飞行仿真中的技术,它将飞机的控制量事先保存于数据文件中,在某种情况下从数据文件中直接读取控制量来对飞机实施控制。
[0041] 数据控制方法中涉及到的机动有:“右拉起”、“左拉起”、“战斗转弯”、“下降”、“高速遥遥”、“低速遥遥”、“半斤斗翻转”、“半滚倒转”、“急盘旋”、“增速转弯”、“平飞增速”(如表1所示)。
[0042] 表1是数据控制方法中涉及到机动的说明。
[0043] 表1数据控制方法中涉及到的机动
[0044]
[0045]
[0046] 在表1中,列出了数据控制方法中常用的11种机动。
[0047] 数据控制方法中涉及到的基本控制量有:“油门杆控制量”、“升降舵控制量”、“方向舵控制量”、“副翼控制量”,即,通常所说的“两杆一舵”控制信息。
[0048] 表2列出了数据控制方法中涉及到的基本控制量的含义。
[0049] 表2数据控制方法中涉及到的基本控制量说明
[0050]
[0051] 在表2中,列出了数据控制方法中涉及到的4种基本控制量。通过对这4种控制量的有规律的赋值就可以使飞机保持预定的姿态,从而完成各种各样的机动动作。
[0052] 针对数据控制方法中常用的11种机动,采取如下方法收集控制量:
[0053] (1)选定长机飞行员和僚机飞行员。僚机由有经验的飞行员驾驶。
[0054] (2)针对某一特定的机动,例如“战斗转弯”,让长机领队飞行。
[0055] (3)在僚机的操纵系统中放置记录装置。该装置用于记录飞行员操纵飞机的控制量。
[0056] (4)僚机飞行员驾驶飞机跟随长机进行某一机动并保持队形。
[0057] (5)记录僚机飞行员的控制量并保存于数据文件中。
[0058] 注意:
[0059] (1)上述过程也可以在模拟器上进行。
[0060] (2)长机也可以由软件自动控制(无人驾驶)。
[0061] (3)僚机飞行员的控制量按照一定格式保存于数据文件中,这种格式通常按照“油门杆控制量”、“升降舵控制量”、“方向舵控制量”、“副翼控制量”的顺序排列。
[0062] 图1显示了数据控制方法的原理。
[0063] 在图1中,“预测和评估”、“控制器”、“飞机对象”和“数据文件”共同组成了“数据控制系统”。其中,“预测和评估”是对下一个将要进行的机动进行预测的模块;“控制器”是对飞机对象进行飞行控制并完成在常规控制方法和数据控制方法之间进行切换的模块;“飞机对象”是用于飞行仿真的六自由度飞机动力学模型;“数据文件”是事先存放的与机动相关的控制量文件。
[0064] 在正常情况下,“控制器”右侧的“切换开关”处于1号开关位置。此时,“飞机对象”在“控制器”的控制下进行常规飞行。当进行某预定的机动时,“控制器”控制其右侧的“切换开关”接通2号开关位置,此时进入“数据控制”状态,即,飞机的飞行控制由存放在“数据文件”中的控制量来控制。
[0065] “预测和评估”模块不停地进行工作,其工作原理是:根据当前的态势进行连续的预测,预测的代价由前述方法进行评估。即,
[0066] (1)正确预测的次数NumCorrPredict大于等于minCorrectness;
[0067] (2)预测代价J的值(1/n)*∑i=1n[Wi-Ave(W)]2小于等于minCost;
[0068] 当满足(1)和(2)时,就可以认定应该进入数据控制状态。
[0069] 3.编队飞行
[0070] 编队飞行是指两架或两架以上的飞机组成一定的队形飞行。编队飞行要求飞机之间保持一定的间隔、距离和高度差。
[0071] 在本发明中,我们主要考虑两架飞机在进行相同的机动时保持预定的间隔、距离和高度差。
[0072] 图2是两架飞机在进行编队飞行时的“间隔”、“距离”和“高度差”的示意图。
[0073] 在编队飞行中,起领队作用的飞机称为“长机”。“长机”带领其他飞机进行预定的机动。
[0074] 在编队飞行中,跟随长机飞行的飞机称为“僚机”。僚机跟随长机进行机动,也就是说,僚机和长机进行相同的机动。在飞行仿真中,由于长、僚机不是由真正的飞行员驾驶,因而无法在进行机动前进行统一协商,所以需要“僚机”对长机的行为进行预测和评估从而达到编队飞行的目的,即,僚机需要预测长机下一步的机动,并根据预测的结果进行相应的控制。当正确预测到长机下一步的机动时,则进入“数据控制”状态,否则,进入自动控制状态(也称“程序控制”状态)。
[0075] 为了使编队飞行仿真的效果同时兼有真实性和完美性,需要通过数据控制方法进行“控制”。首先,将真实飞行员进行的各种机动的驾驶行为(即,两杆一舵控制量)保存起来;然后,让僚机不停地对长机的机动进行预测,当预测“正确”时,调用预存于文件中的控制量;于是飞机在存储于数据文件中的控制量的控制下进行飞行仿真。
[0076] 僚机是否预测“正确”,取决于(1)正确的预测次数NumCorrPredict大于等于指定的阈值minCorrectness;(2)预测代价J的值小于等于指定的阈值minCost。
[0077] 基于“数据控制”的编队飞行仿真使得飞机在两种状态下进行飞行,一种是自动控制状态,另一种是数据控制状态。其中,自动控制状态用于对飞机进行常规的控制,它适用的范围有:非机动式飞行、错误预测后的“调整”控制、机械地跟队控制;数据控制状态用于对飞机进行编队特技飞行,它适用的范围是预测正确后的拟人化控制。自动控制状态由控制程序进行控制,也称为“程序控制”;数据控制状态由预存的控制量文件进行控制。
[0078] 在飞行仿真中,编队飞行既要求完美的队形,又要求编队具有真实性、拟人性。也就是说,在飞行仿真中,编队队形并不是误差越小越好(包括间隔差、距离差和高度差),而是编队飞行的效果越真实越像真人驾驶的效果越好。由于编队飞行仿真的特殊性,需要僚机对长机的飞行行为进行预测,当预测“正确”时调用预存了控制量的数据文件进行数据控制。
[0079] 基于上述的讨论,基于“数据控制”方法的编队飞行仿真可以用下面的“解算”过程来表示:
[0080] for each∈D{
[0081] S:→;
[0082] Output Y;
[0083] }
[0084] 其中,D是数据文件,即,保存了控制量的文本文件;是D中的元素,x是控制量向量(“油门杆控制量”、“升降舵控制量”、“方向舵控制量”、“副翼控制量”)的一个取值,t是时间,也就是说D中保存了一系列的控制量的值;S是被控系统;是在控制量值作用下S的输出值;Y是输出值的集合(向量)。
[0085] 当X、Y、t分别是被控系统S的输入向量、输出向量和时间时,S的解算过程是一个“多步的解算过程”,即,
[0086] If(X←,……)then
[0087] Y←,……
[0088] 其中,,……是输入向量X的取值(随着时间t);,……是随着时间t输出向量Y的取值。
[0089] 对于每一组x1,x2…xi…,我们可以发现一组对应的y1,y2,…yi…,并将它们保存于数据文件中以备在以后相似的情境下使用。
[0090] 基于“数据控制”的编队飞行仿真不同于纯粹的基于自动控制方法的编队飞行仿真。因为,基于自动控制的编队飞行仿真追求的是控制的稳定性、快速性和精确性。这种追求的目标可能和真实情况相反。也就是说,经过自动控制方法显示的编队飞行仿真效果是真实飞行员无法达到的。总而言之,基于自动控制的编队飞行仿真缺乏“拟人性”。
[0091] 我们将“数据控制”方法和自动控制方法有机地结合起来,即,在常规情况下,飞机在自动控制程序作用下进行飞行,当进行某种预设的情况或进行已知的机动时,可以采用“数据控制”的方法来对飞机进行“控制”。
[0092] 从动力学方程解算的角度来看,“数据控制”方法和自动控制方法的区别在于:“数据控制”方法周期性地执行“∈D”,而D是数据文件其中保存了一系列控制量的取值;自动控制方法不执行“∈D”,它的由公式(控制律)周期性地计算出来。
[0093] 因此,本发明提出的基于“数据控制”的编队飞行仿真方法是一种联合的控制方法,它通过自动控制方法来监督和控制常规的编队飞行任务,而通过“数据控制”方法来进行预定的特殊编队机动飞行,例如特技编队飞行仿真。
[0094] 本发明的方法步骤如下:
[0095] (1)让长机自由飞行;
[0096] (2)僚机由飞行员驾驶;
[0097] (3)记录僚机飞行员的驾驶行为(保存其驾驶飞机的控制量数值);
[0098] (4)让长机进行预定的机动,重复上述(1)——(3)步;
[0099] (5)在CGFs仿真环境中,启动长机飞行例程;
[0100] (6)让僚机进行自动跟队飞行,即,让僚机进行编队飞行仿真;
[0101] (7)僚机的“预测和评估”模块不停地进行计算,当预测到长机即将进行预定的特殊编队机动时,进行“数据控制”,否则进行自动控制;
[0102] (8)僚机对长机的未来机动判断失误时,用自动控制方法纠正当前状态;
[0103] 图3是数据控制方法的方案图。
[0104] 在上面的步骤中,是以仿真环境为例进行的方法设计,例如,飞行员驾驶僚机是指飞行员在模拟器上操纵僚机。上面的方法步骤也可以用于非仿真环境的真实操纵。
附图说明
[0105] 以下参考附图是对本发明的原理、方法流程及相关概念进行说明,其中:
[0106] 图1是用于编队飞行仿真中的数据控制方法的原理图
[0107] 图2是编队飞行中的“间隔”、“距离”和“高度差”的示意图
[0108] 图3是数据控制方法的方案图
具体实施方式
[0109] 下面结合附图来对本发明所述的“一种用于编队飞行的数据控制方法”作进一步的说明。
[0110] “一种用于编队飞行的数据控制方法”从CGFs仿真工程需要真实的行为模型的需求出发,采用了将飞行员驾驶行为保存于数据文件中并用它来控制飞机编队飞行的方法,进行了“数据控制”方法设计。该方法包括自动控制部分和数据控制部分,其中前者用于对飞机进行常规的控制;后者用于对飞机进行编队特技飞行的控制。本方法涉及“飞行员驾驶行为数据的采集”、“数据文件的格式”、“数据文件的保存”、“数据文件的读取和控制”、“长机行为的预测和评估”、“自动控制和数据控制的切换”等。具体实施方式如下:
[0111] 首先,进行飞行员驾驶行为的收集。
[0112] 飞行员驾驶行为的收集是指采用一定的设备和算法对飞行员驾驶飞机的控制量进行记录。具体说,在本方法中我们记录了飞行员驾驶飞机的油门杆控制量数值、升降舵控制量数值、方向舵控制量数值、副翼控制量数值。在每一个时间点(抽样时间点)记录一组数据。这几种控制量的数值按照“油门杆控制量”、“升降舵控制量”、“方向舵控制量”和“副翼控制量”的顺序保存于数据文件中。收集这些数据的时间段是飞机做某一个预定的机动的整个过程。对飞行员驾驶行为进行收集的具体方法步骤是:
[0113] (a)让长机按照预定的机动进行飞行;
[0114] (b)飞行员驾驶僚机进行编队飞行;
[0115] (c)记录整个过程的飞行员行为,并用预定的机动进行标识。
[0116] 我们方法的新颖点在于长机可以用软件来模拟飞行,而僚机也可以由飞行员在模拟器上来驾驶,飞行员行为的记录过程由软件来完成。
[0117] 其次,进行长机的自由飞行。
[0118] 长机的自由飞行是指长机按照飞行任务进行飞行。飞行任务一般包括平飞、转弯、战术机动、特技飞行等。在一次飞行任务中,所有的机动对于参与编队飞行的飞机是事先通知的,但是进行机动的顺序和进入机动的准确时间不确定,这些由长机来实时控制(决定)。因此,僚机需要对长机的行为进行预测。
[0119] 接着,僚机对长机的行为进行预测。
[0120] 僚机预测长机的依据是:
[0121] (a)计算正确预测的次数NumCorrPredict,并判断它是否大于等 于minCorrectness;
[0122] (b)计算预测代价J的值(1/n)*∑i=1n[Wi-Ave(W)]2,并判断它是否小于等于minCost;
[0123] 预测工作由“预测和评估”模块来完成。
[0124] 当僚机对长机的行为预测正确时,由保存于“数据文件”中的且做了机动标识的“控制量序列”来“控制”;否则,僚机的飞行由自动控制程序来控制。
[0125] 也就是说,僚机在两种控制方法的“控制”下进行飞行。
[0126] 最后,根据编队飞行的效果修正“数据控制文件”。
[0127] “数据控制”表面上是一种仿真效果的回放,实际上它是飞行员驾驶控制量的回放,通过这些控制量来控制飞机达到预定的飞行效果,从而间接达到仿真效果的回放。因此,基于“数据控制”的编队飞行仿真需要迭代修正。修正的目标是使编队飞行更接近于真实飞行员的驾驶效果且符合仿真需求。
[0128] 需要说明的是,本发明除了支持CGFs仿真工程之外,还支持其他各种使用“仿真回放”的场合。本发明中提到的“数据控制”方法是一种基于真实飞行员驾驶行为的“回放”,它比一般的“仿真回放”技术要更真实、更实用。通过“数据控制”方法中自动控制部分和数据控制部分的相互切换,保证了编队飞行效果的持续性和真实性,从而提高了仿真工程的实用性。