一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于Fluent的海空多栖航行器空中飞行智能控制仿真方法

2022-11-13 12:26:20 来源:中国专利 TAG:

基于fluent的海空多栖航行器空中飞行智能控制仿真方法
技术领域
1.本发明涉及基于fluent的海空多栖航行器空中飞行智能控制仿真方法,属于飞行控制仿真技术领域。


背景技术:

2.航行器根据结构和飞行原理的不同主要可分为两大类别,第一类是固定翼航行器,第二类是旋翼航行器。
3.与固定翼航行器相比,旋翼航行器更加灵活,可以进行垂直起降和悬停,适用范围也更为广泛。海空多栖航行器在水下航行时属于固定翼航行器,在空中飞行时则属于旋翼航行器。针对空中飞行过程,近年来对旋翼航行器的研究越来越成熟。在理论上,对含有不同旋翼数量的航行器,分别建立了相应的动力学模型。这些动力学模型描述了旋翼航行器六个自由度上的运动规律,结合物体运动的运动学方程,就能够建立起旋翼转速与航行器飞行位置、姿态之间的关系。在这个关系的基础上,可以进一步搭建出控制系统,通过智能控制每一个旋翼的转速来控制航行器的飞行状态。
4.目前对于旋翼航行器运动情况和智能控制的仿真主要依托于matlab/simulink,其仿真的基本原理将航行器的动力学、运动学以及旋翼空气动力学等数学模型方程用框图的形式搭建出来,并将其联立得到一个整体系统,以此来仿真模拟航行器的飞行状态。因此,在利用simulink进行仿真时必须要得到航行器确定的数学模型。而当航行器在空中飞行时,由于流体方程求解的复杂性以及湍流的影响,其因为旋翼高速转动产生的流体载荷力很难用确定的数学模型描述。此外,对于含有固定翼的海空多栖航行器,虽然主要依靠旋翼的空气动力学效应维持空中飞行,可以看做是旋翼航行器,但固定翼对航行器外流场的影响也不能忽视,这使得航行器的受力模型更加复杂,难以在simulink中建立准确的仿真系统。并且,使用simulink进行仿真时,得到的结果往往只是描述航行器运动规律的曲线图,比较抽象和模糊,无法像有限元仿真那样能够将模型的真实状态具象化的反映出来。


技术实现要素:

5.针对现有海空多栖航行器在考虑固定翼的影响时受力模型复杂,使飞行控制仿真结果不可靠的问题,本发明提供一种基于fluent的海空多栖航行器空中飞行智能控制仿真方法。
6.本发明的一种基于fluent的海空多栖航行器空中飞行智能控制仿真方法,包括,
7.步骤一:将航行器分为旋翼部分、机架部分和固定翼部分建立航行器几何模型;
8.步骤二:根据航行器几何模型建立包括旋翼旋转域、前景区域和背景区域的流场计算域几何模型;对背景区域采用六面体网格划分,对旋翼旋转域和前景区域采用四面体网格划分后再转换为多面体网格,得到流场计算域网格模型;
9.步骤三:将流场计算域网格模型导入fluent流场仿真计算模块中,再将前景区域网格和背景区域网格设置为重叠网格,将旋翼旋转域的网格边界设置为滑移网格计算交界
面;然后在旋翼旋转域的初始设置中,输入流场计算域几何模型坐标系下航行器的初始旋翼转速、旋转轴方位以及旋转中心坐标,对航行器外流场进行稳态计算,将计算结果作为瞬态外流场计算的初始化流场信息;
10.步骤四:编写第一udf程序,用于实现瞬态外流场仿真下,任意时间步内航行器运动参数的计算,并根据运动参数计算结果采用控制算法实现旋翼转速控制量的计算;
11.步骤五:编写第二udf程序,用于根据步骤四中获得的运动参数设置前景区域相对于背景区域的速度和位置,以及旋翼旋转域相对于前景区域的速度和位置,以进行瞬态外流场的计算;
12.步骤六:在flunet中运行步骤四和骤五编写的udf程序,进行迭代计算,得到每一时间步的旋翼转速控制量、航行器运动参数和外流场计算结果,从而实现航行器空中飞行的智能控制。
13.根据本发明的基于fluent的海空多栖航行器空中飞行智能控制仿真方法,根据外流场计算结果得到航行器几何模型的流场云图;根据航行器运动参数得到航行器几何模型的高度曲线和旋翼转速曲线。
14.根据本发明的基于fluent的海空多栖航行器空中飞行智能控制仿真方法,步骤四中,所述航行器运动参数的计算通过编写第一udf程序实现;
15.所述第一udf程序中,将海空多栖航行器的固有属性变量和初始时刻的运动参数作为全局变量,在define_execute_at_end宏下,利用compute_force_and_moment语句提取当前时间步结束时刻航行器的表面流场载荷,利用线性简化后的航行器动力学方程计算得到加速度;再根据线性离散化的运动学方程得到下一个时间步内航行器的运动参数。
16.根据本发明的基于fluent的海空多栖航行器空中飞行智能控制仿真方法,表面流场载荷包括力f和力矩m;
17.加速度的计算方法包括:
18.f=ma,
19.m=iβ,
20.式中m为质量,a为加速度,i为惯性矩,β为角加速度;
21.航行器的运动参数的计算方法包括:
22.v
t δt
=v
t
aδt,
23.x
t δt
=x
t
v
t δt
δt,
24.式中v
t δt
为下一时间步的速度,v
t
为当前时间步的速度,δt为相邻时间步的间隔时间,x
t δt
为下一时间步的位移,x
t
为当前时间步的位移。
25.根据本发明的基于fluent的海空多栖航行器空中飞行智能控制仿真方法,步骤四中,旋翼转速控制量的计算通过第一udf程序实现;
26.所述第一udf程序中,将航行器几何模型的的预期位置或姿态作为全局变量,在define_execute_at_end宏下,与计算获得的航行器位置或姿态作差,得到位置或姿态误差量;将所述位置或姿态误差量乘以预设比例系数得到航行器几何模型的外环控制量;再将外环控制量作为预期速度与航行器实时速度作差得到速度误差量,采用离散型pid控制器对速度误差量进行处理,得到内环控制量,由所述内环控制量得到航行器几何模型的旋翼转速控制量;
27.所述外环为航行器位置和姿态控制环;内环为航行器速度和角速度控制环。
28.根据本发明的基于fluent的海空多栖航行器空中飞行智能控制仿真方法,步骤五中,瞬态外流场的计算通过编写第二udf程序实现;
29.所述第二udf程序中,在define_zone_motion宏下,指定每一个时间步内,前景区域和旋翼旋转域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度;
30.所述前景区域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度根据航行器运动参数确定;旋翼旋转域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度根据前景区域运动情况和旋翼转速控制量确定。
31.本发明的有益效果:本发明用于飞行器的仿真,对含有固定翼的海空多栖航行器在空中飞行时的位置以及姿态,进行智能控制的流场仿真。
32.本发明通过fluent对航行器飞行时的外流场进行求解,并利用udf程序将所求得的流场载荷与航行器运动控制数学模型联立,在考虑到了航行器外流场的复杂性和时变性的同时,避免了对流场载荷力建立数学模型的繁琐过程。
33.本发明基于计算流体力学软件fluent,对航行器飞行过程中的外流场情况进行实时求解,并通过udf提取出航行器每一时间步内的流场载荷,然后与描述其运动规律的动力学和运动学方程联立,以此解得航行器的运动参数;同时还在udf中加入控制算法,根据航行器每一时间步内的运动参数得到预期的旋翼转速控制量,最终实现对航行器整个运动和智能控制过程的仿真,并确保了飞行控制仿真结果的准确度。
附图说明
34.图1是本发明所述基于fluent的海空多栖航行器空中飞行智能控制仿真方法的流程图;
35.图2是具体实施例中航行器几何模型示意图;
36.图3是具体实施例中航行器流场前景区域的流场计算域网格模型示意图;
37.图4是具体实施例中航行器流场旋翼旋转域的流场计算域网格模型示意图;
38.图5是具体实施例一中两个udf程序的运行过程示意图;
39.图6是具体实施例一中航行器机身在第一选择时刻的表面压强云图;图中contour表示云图,static pressure表示静压强;
40.图7是具体实施例一中航行器机身在第二选择时刻的表面压强云图;第二选择时刻与第一选择时刻相距若干时间步;
41.图8是具体实施例一中航行器外流场oyz平面在第一选择时刻的压强示意图;
42.图9是具体实施例一中航行器外流场oyz平面在第二选择时刻的压强示意图;
43.图10是具体实施例一中航行器高度位置曲线图;
44.图11是具体实施例一中航行器旋翼转速曲线图;
45.图12是具体实施例二中航行器机身在第三选择时刻的表面压强云图;
46.图13是具体实施例二中航行器机身在第四选择时刻的表面压强云图;第四选择时刻与第三选择时刻相距若干时间步;
47.图14是具体实施例二中航行器外流场oyz平面在第三选择时刻的压强示意图;
48.图15是具体实施例二中航行器外流场oyz平面在第四选择时刻的压强示意图;
49.图16是角度姿态曲线图;
50.图17是具体实施例二中航行器z轴正向旋翼转速曲线图;
51.图18是具体实施例二中航行器z轴负向旋翼转速曲线图。
具体实施方式
52.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本发明保护的范围。
53.需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
54.下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
55.具体实施方式一、结合图1至图4所示,本发明提供了一种基于fluent的海空多栖航行器空中飞行智能控制仿真方法,包括,
56.步骤一:将航行器分为旋翼部分、机架部分和固定翼部分建立简化后的航行器几何模型;简化应充分考虑结构的气动性能,遵循基本不影响航行器流场仿真计算结果的原则。其中机架部分结构复杂且对流场影响较小,为主要简化部分。
57.步骤二:根据航行器几何模型建立包括旋翼旋转域、前景区域和背景区域的流场计算域几何模型;对背景区域采用icem进行六面体网格划分,对旋翼旋转域和前景区域采用mesh进行四面体网格划分后再在fluent中转换为多面体网格,得到流场计算域网格模型;
58.背景区域一般建立为长方体,代表着航行器飞行过程所处的整个外流场区域。旋翼旋转域是航行器旋翼周围的小范围流场区域,一般建立为圆柱体。前景区域则通过对旋翼旋转域和航行器建立外壳操作获得,是旋转域以及航行器周围的流场区域。
59.考虑到流场仿真计算的迭代速率以及网格划分的难易程度,对背景区域采用六面体网格划分。对旋翼旋转域和前景区域则先进行四面体网格划分后,再在fluent中将四面体网格转换为多面体网格。
60.步骤三:将流场计算域网格模型导入fluent流场仿真计算模块中,再将前景区域网格和背景区域网格设置为重叠网格(overset),将旋翼旋转域的网格边界设置为滑移网格计算交界面(interface);然后在旋翼旋转域的初始设置中,输入流场计算域几何模型坐标系下航行器的初始旋翼转速、旋转轴方位以及旋转中心坐标,然后选择适当的湍流模型以及迭代设置对航行器外流场进行稳态计算,将计算结果作为瞬态外流场计算的初始化流场信息,以此代替初始化操作,能有效的增加计算效率以及加快收敛速度;海空多栖航行器在空中飞行时,既有整体在世界坐标系下的平动和转动,又有旋翼在机体坐标系下的相对转动;对其进行外流场计算时,采用重叠网格模拟航行器整体运动,滑移网格模拟航行器旋翼转动,两者相结合的方式实现整个运动过程仿真。
61.步骤四:编写第一udf程序,用于实现瞬态外流场仿真下,任意时间步内航行器运动参数的计算,并根据运动参数计算结果采用控制算法实现旋翼转速控制量的计算;所述
运动参数包括受力参数、重量、加速度、速度以及流场信息等;
62.步骤五:编写第二udf程序,用于根据步骤四中获得的运动参数设置前景区域相对于背景区域的速度和位置,以及旋翼旋转域相对于前景区域的速度和位置,以进行瞬态外流场的计算;
63.步骤六:在flunet中运行步骤四和骤五编写的udf程序,进行迭代计算,得到每一时间步的旋翼转速控制量、航行器运动参数和外流场计算结果,从而实现航行器空中飞行的智能控制。
64.进一步,根据外流场计算结果得到航行器几何模型的流场云图;根据航行器运动参数得到航行器几何模型的高度曲线和旋翼转速曲线。
65.再进一步,步骤四中,编写在流场瞬态仿真下,计算任意时间步内航行器运动参数部分,以及将其代入控制算法得到旋翼转速控制量部分的udf程序。所述航行器运动参数的计算通过编写第一udf程序实现;
66.所述第一udf程序中,将海空多栖航行器的质量、转动惯量、几何中心等固有属性变量和初始时刻的运动参数作为全局变量,在define_execute_at_end宏下,利用compute_force_and_moment语句提取当前时间步结束时刻航行器的表面流场载荷,利用线性简化后的航行器动力学方程计算得到加速度;再根据线性离散化的运动学方程得到下一个时间步内航行器的运动参数。所述运动参数包括航行器的速度、位移和姿态等。第一udf程序运用了微积分的原理,将连续的时间离散成许多相等时间步,在这些时间步里将航行器的运动参数近似的看做是常数带入控制方程来进行计算,使求解的精确程度取决于时间步的长度。
67.表面流场载荷包括力f和力矩m;
68.加速度的计算方法包括:
69.f=ma,
70.m=iβ,
71.式中m为质量,a为加速度,i为惯性矩,β为角加速度;
72.航行器的运动参数的计算方法包括:
73.v
t δt
=v
t
aδt,
74.x
t δt
=x
t
v
t δt
δt,
75.式中v
t δt
为下一时间步的速度,v
t
为当前时间步的速度,δt为相邻时间步的间隔时间,x
t δt
为下一时间步的位移,x
t
为当前时间步的位移。
76.步骤四中,旋翼转速控制量的计算通过第一udf程序实现;
77.所述第一udf程序中,将航行器几何模型的的预期位置或姿态作为全局变量,在define_execute_at_end宏下,与计算获得的航行器位置或姿态作差,得到位置或姿态误差量;将所述位置或姿态误差量乘以预设比例系数得到航行器几何模型的外环控制量;再将外环控制量作为预期速度与航行器实时速度作差得到速度误差量,采用离散型pid控制器对速度误差量进行处理,得到内环控制量,由所述内环控制量得到航行器几何模型的旋翼转速控制量;所述速度包括线速度和角速度;
78.所述外环为航行器位置和姿态控制环;内环为航行器速度和角速度控制环。
79.得到航行器实时的运动参数后,将对航行器的控制算法(内外环控制)编入程序,
实现对航行器的飞行位置(或姿态)的智能控制。将内环控制量转化为每一时间步内航行器旋翼转速控制量,以此实时改变航行器所受到的流场载荷力情况,使其飞行位置和姿态达到设定的期望值。此外,在程序的最后编写语句对航行器每一时间步下的运动参数进行导出保存,为了避免导出的数据出现重复,需要对该部分语句进行udf并行化处理。
80.步骤五中,瞬态外流场的计算通过编写第二udf程序实现;
81.所述第二udf程序中,在define_zone_motion宏下,指定每一个时间步内,前景区域和旋翼旋转域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度;
82.所述前景区域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度根据航行器运动参数确定;旋翼旋转域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度根据前景区域运动情况和旋翼转速控制量确定。
83.因为前景区域和旋翼旋转域的运动不尽相同,所以需要分别编写运动宏进行参数设置。其中前景区域的平动速度和欧拉转动参数,通过udf全局变量的方式与航行器运动参数实时互通。旋翼旋转域相对于前景区域进行欧拉转动的旋转速度,同样利用udf全局变量的方式,与通过控制算法算得的旋翼转速控制量实时互通。
84.本实施方式中,根据得到的航行器运动参数和旋翼转速控制量,编写设定航行器相应流场计算域网格运动规律部分的udf程序。该部分程序运用define_zone_motion宏,通过这个宏可以指定每一个时间步内,计算域进行平动时的速度和进行欧拉转动时的转动中心、转轴方位以及转动角速度。对于前景区域运动宏参数的设置,通过在udf中设置全局变量的方式,与步骤四中计算得到的航行器运动参数互通完成。至于旋翼旋转域,其运动状况比较复杂,不仅有跟随前景区域的平动和转动,还有绕其自身几何中心旋转轴的转动,无法直接通过运动宏对其复合运动进行指定。可以通过在fluent中将旋翼旋转域设置为相对于前景区域运动,以此把对旋翼旋转域复合运动的设置转化为单纯绕轴转动的设置。其中旋翼旋转域绕轴转动的几何中心以及旋转轴方位由航行器的位置和姿态确定,旋转速度则同样利用udf全局变量的方法,与步骤四中通过控制算法得到的旋翼转速控制量互通。
85.步骤六中,在fluent中载入编写好的udf文件,分别将计算航行器运动参数和旋翼控制量的宏以及指定旋翼旋转域、前景区域运动状态的宏挂载到对应位置,再基于步骤三得到的航行器初始流场信息,选择合适的时间步长进行流场瞬态计算。最后对所得的航行器运动参数和流场结果进行后处理。
86.具体实施例一:
87.按照图1所示流程,对海空多栖航行器垂直上升以及高度控制过程进行仿真模拟,具体步骤如下:
88.步骤一:对海空多栖航行器建立简化后的几何模型;如图2所示,几何模型主要分为旋翼、固定翼和机架三个部分,对于机架部分进行了适当的简化。
89.假设航行器整体结构为刚体,各部分完全对称。设定初始时刻下,航行器机体坐标系b(oxyz)与惯性坐标系e(oxyz)重合;航行器的质心位于其几何中心且与机体坐标系原点重合。
90.步骤二:根据重叠网格以及滑移网格方法,建立相应航行器流场计算域——背景区域、前景区域以及4个旋翼旋转域。对背景区域采用六面体网格划分,对旋翼旋转域和前
景区域先进行四面体网格划分后,再在fluent中将四面体网格转换为多面体网格。其中前景区域和旋翼旋转域网格划分情况如图3和图4所示,可见,旋翼旋转域以及航行器表面附近网格已经进行了相当程度的加密。
91.步骤三:把划分好的计算域网格信息导入fluent,将前景区域网格和背景区域网格设置为重叠网格(overset),在旋翼旋转域网格边界与前景区域网格边界建立滑移网格计算交界面(interface)。分别在四个旋翼旋转域下选择运动参考系,并设定各自的转速、旋转轴方位以及旋转中心坐标。选择sst k-ω湍流模型以及coupled求解器对航行器外流场进行稳态计算,并将该流场结果作为后续进行瞬态计算时的初始化流场信息。
92.步骤四:令航行器初始时刻各方向的速度,位移和姿态角均为0。在步骤一设定的坐标系下,航行器垂直上升方向为y轴负方向,主要受到沿y轴方向由旋翼旋转产生的升力以及自身重力,其它方向的力和力矩可以忽略。则航行器在y轴方向的动力学方程为:
93.fy=may mg
94.式中fy为y轴方向的力,ay为y轴方向的加速度,g为重力加速度;
95.运动学方程为:
96.和
97.vy为y轴方向的速度,t为时间,xy为y轴方向的位移;
98.在udf中将航行器的质量、转动惯量、几何中心等固有属性以及初始时刻航行器的速度,位移,姿态等运动参数编写为全局变量。再在define_execute_at_end宏下,使用compute_force_and_moment语句提取出每一个时间步结束时刻航行器的表面流场载荷fy,将其代入线性简化后的航行器动力学方程:fy=may mg。得到加速度ay后,进一步结合线性离散化的运动学方程:v
t δt
=v
t
aδt以及x
t δt
=x
t
v
t δt
δt,得到下一个时间步内的速度vy和位移xy。
99.接着编写航行器的高度控制算法,先在udf中将航行器预期高度写为全局变量,继续在define_execute_at_end宏下,用预期高度与航行器实时高度作差,得到误差量;再将高度误差量乘以比例系数5输出外环控制量,并将其当作预期速度与航行器实时速度作差得到误差量;然后将速度误差量带入离散型pid控制器中,输出内环控制量。其中pid控制器包括比例环节、微分环节以及积分环节,对应的系数设为6,1,0.05。假设旋翼产生的升力与其转速的平方成正比,并根据稳态计算结果得到比例系数。再由垂直上升时航行器四个旋翼升力之间的关系,将上述内环控制量看作期望总升力,进而转化为每一时间步内航行器旋翼转速控制量。此外,在程序的最后编写语句对航行器每一时间步下的运动参数进行导出保存,为了避免导出的数据出现重复,需要对该部分语句进行udf并行化处理。
100.步骤五:接着在udf中,分别编写指定前景区域以及四个旋翼旋转域网格运动情况的define_zone_motion宏。航行器进行的是沿y轴负向的垂直上升运动,所以对于前景区域运动宏,只需通过udf全局变量的方式调用步骤四算得的速度vy,来设定y轴方向的速度即可。对于四个旋翼旋转域而言,其运动宏设定的是其相对于前景区域的绕过自身旋转中心轴的转动。其中转动中心就是四个旋翼旋转域各自的几何中心坐标;旋转轴方位则是与y轴平行的单位向量;每一时间步下的转速则通过全局变量的方式调用步骤四中的旋翼转速控制量设定。
101.步骤六:在fluent中载入编写好的udf文件,分别将计算航行器运动参数和旋翼控制量的宏以及指定旋翼旋转域、前景区域运动状态的宏挂载到对应位置,再直接基于步骤三得到的航行器初始流场信息,选择0.001s的时间步长进行流场瞬态计算。计算完成后,对流场结果进行处理可得到如图6至图9所示的航行器不同时刻下流场情况云图;对导出的航行器运动参数进行处理,可得航行器整个运动过程的高度曲线如图10、旋翼转速曲线如图11所示。
102.具体实施例二:
103.按照图1所示流程,对海空多栖航行器垂直上升以及高度控制过程进行仿真模拟,具体步骤如下:
104.步骤一:对海空多栖航行器建立如图2所示的几何模型。
105.假设航行器整体结构为刚体,各部分完全对称。设定初始时刻下,航行器机体坐标系b(oxyz)与惯性坐标系e(oxyz)重合;航行器的质心位于其几何中心且与机体坐标系原点重合。定义航行器绕机体坐标系x轴的转动为翻滚运动,转过的角度为翻滚角。
106.步骤二:根据重叠网格以及滑移网格方法,建立相应航行器流场计算域——背景区域、前景区域以及四个旋翼旋转域,并进行网格划分。其中前景区域和旋翼旋转域网格划分情况如图3和图4所示。
107.步骤三:把划分好的计算域网格信息导入fluent,分别在四个旋翼旋转域下选择运动参考系,并设定各自的转速、旋转轴方位以及旋转中心坐标选择sst k-ω湍流模型以及coupled求解器对航行器外流场进行稳态计算。
108.步骤四:令航行器初始时刻各方向的速度,位移和姿态角均为0。在机体坐标系下,当航行器绕x轴进行翻滚运动时,主要受到y轴方向由旋翼产生的升力,由z轴方向两个相对旋翼升力差产生的x轴方向力矩,以及自身竖直向下的重力,其它方向的力和力矩可以忽略不记。现将其所受的力和力矩转换到惯性坐标系下x轴方向的力矩、y轴方向的重力以及旋翼升力在y轴和z轴的分力。则航行器进行翻滚运动时的动力学方程为:
[0109][0110]
式中fz为z轴方向的力,az为z轴方向的加速度,m
x
为x轴方向力矩,i
x
为x轴方向惯性矩,β
x
为x轴方向角加速度;
[0111]
运动学方程为:
[0112][0113]
vz为z轴方向的速度,z为z轴方向的位移;ω
x
为x轴方向角速度,
x
为x轴方向角位移。
[0114]
在udf中将航行器的质量、转动惯量、几何中心等固有属性以及初始时刻航行器的速度、位移、姿态等运动参数编写为全局变量。再在define_execute_at_end宏下,使用compute_force_and_moment语句提取出每一个时间步结束时刻航行器的表面流场载荷fy、fz
和m
x
,将其代入线性简化后的航行器动力学方程;得到加速度ay、az和β
x
后,进一步结合线性离散化的运动学方程,得到下一个时间步内的速度vy、vz、ω
x
以及位移xy、xz、θ
x

[0115]
接着编写航行器的角位移控制算法,先在udf中将航行器预期角度写为全局变量,继续在define_execute_at_end宏下,用预期角度与航行器实时角位移作差,得到误差量;再将角度误差量乘以比例系数3输出外环控制量,并将其当作预期角速度与航行器实时角速度作差得到误差量;然后将角速度误差量带入离散型pid控制器中,输出内环控制量。其中pid控制器包括比例环节、微分环节以及积分环节,对应的系数设为2,1,0.05。假设旋翼产生的升力与其转速的平方成正比,并根据稳态计算结果得到比例系数。在航行器开始转动之前,航行器保持悬停状态,即四个旋翼转速一致且产生的升力与重力相等;然后通过保持x轴方向上两个相对旋翼的转速不变,调整z轴方向上两个相对旋翼的转速,使得航行器受到绕x轴的力矩发生转动。根据此原理,将角度控制算法中,每一时间步内得到的内环控制量看作预期力矩,进而转化为对z轴方向上两个旋翼转速的控制量。
[0116]
步骤五:继续在udf中,分别编写指定前景区域以及四个旋翼旋转域网格运动情况的define_zone_motion宏。航行器进行的是绕x轴的转动,同时还有z轴方向和y轴方向的平动。所以对于前景区域运动宏,先通过udf全局变量的方式调用步骤获得的速度vy、vz指定其平动速度;再写入航行器旋转轴方位——与x轴平行的向量,并在初始几何中心坐标基础上根据步骤四获得的位移xy、xz,写出旋转中心;最后通过全局变量调用步骤四的速度ω
x
指定其转动速度。对于四个旋翼旋转域而言,其运动宏设定的是其相对于前景区域绕过自身旋转中心轴的转动。其中旋转域各自的旋转中心和旋转轴由航行器的角位移θ
x
结合初始状态写出。而z轴方向的两个旋翼旋转域的转速,则通过全局变量的方式调用步骤四获得的旋翼控制量写入,其余两个旋翼旋转域转速保持初始转速不变。
[0117]
步骤六:在fluent中载入编写好的udf文件,分别将计算航行器运动参数和旋翼控制量的宏以及指定旋翼旋转域、前景区域运动状态的宏挂载到对应位置,再直接基于步骤三得到的航行器初始流场信息,选择0.001s的时间步长进行流场瞬态计算。计算完成后,对流场结果进行处理可得到如图12至图15所示的航行器不同时刻下流场情况云图;对导出的航行器运动参数进行处理,可得航行器整个运动过程的角度姿态曲线如图16、部分旋翼转速曲线如图17和图18所示。
[0118]
虽然在本文中参照了特定的实施方式来描述本发明,但是应该理解的是,这些实施例仅仅是本发明的原理和应用的示例。因此应该理解的是,可以对示例性的实施例进行许多修改,并且可以设计出其他的布置,只要不偏离所附权利要求所限定的本发明的精神和范围。应该理解的是,可以通过不同于原始权利要求所描述的方式来结合不同的从属权利要求和本文中所述的特征。还可以理解的是,结合单独实施例所描述的特征可以使用在其它所述实施例中。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献