主要内容

确定非线性动力学和静态固定翼飞机的稳定

这个例子显示了创建和分析固定翼飞机的过程中使用MATLAB®Cessna C182几何和系数数据。

数据用来创建飞机从飞机飞行动力学和控制由简·罗斯克姆(1]。

这个例子描述了:

  • 设置固定翼空气动力学和控制表面通过创建和嵌套电梯控制表面,然后创建副翼、方向舵、翅膀和垂直尾翼。

  • 创建固定翼飞机上的推进模型模型类似于控制面。

  • 定义完整的飞机。

  • 飞机上的系数定义。

  • 准备飞机进行数值分析。

  • 进行数值分析。

设置固定翼空气动力学和控制表面

Aero.FixedWing.Surface类可以作为一个空气动力学和控制表面。

这种行为的控制可控属性的类。

设置可控创建一个表面和控制ControlState变量。

嵌套一个气动控制面表面模拟飞机的实际施工。

下面的示例创建一个电梯控制表面和巢水平稳定器。

电梯= fixedWingSurface (“电梯”,“上”,“对称”,-20年,20)
电梯=表面与性质:表面:[1 x0 Aero.FixedWing。表面系数:[1 x1 Aero.FixedWing。系数]MaximumValue: 20 MinimumValue: -20可控:对称:“对称”ControlVariables:“电梯”的特性:[1 x1 Aero.Aircraft.Properties]
电梯。系数= fixedWingCoefficient (“电梯”)
电梯=表面与性质:表面:[1 x0 Aero.FixedWing。表面系数:[1 x1 Aero.FixedWing。系数]MaximumValue: 20 MinimumValue: -20可控:对称:“对称”ControlVariables:“电梯”的特性:[1 x1 Aero.Aircraft.Properties]
horizontalStabilizer = fixedWingSurface (“HorizontalStabilizer”,“表面”、电梯)
horizontalStabilizer =表面与性质:表面:[1 x1 Aero.FixedWing。表面系数:[1 x1 Aero.FixedWing。系数]MaximumValue:正MinimumValue:负无穷可控:从对称:“对称”ControlVariables: [0 x0字符串]属性:[1 x1 Aero.Aircraft.Properties]

每个属性固定翼对象也可以通过设置名称、价值论证建设。这种方法将用于创建其他的例子。

接下来,构建副翼、方向舵、翅膀和垂直尾翼。

副翼= fixedWingSurface (“副翼”,“上”,“非对称”(-20年,20),“系数”fixedWingCoefficient (“副翼”));舵= fixedWingSurface (“舵”,“上”,“对称”(-20年,20),“系数”fixedWingCoefficient (“舵”));翼= fixedWingSurface (“翼”,“表面”、副翼);verticalStabilizer = fixedWingSurface (“VerticalStabilizer”,“表面”、舵);

定义推进

使用Aero.FixedWing.Thrust对象创建推进模型在固定翼飞机模型类似于控制面。

Aero.FixedWing.Thrust对象永远是可控的。它不能被嵌套的空气动力学和控制面。

螺旋桨= fixedWingThrust (“螺旋桨”,“系数”fixedWingCoefficient (“螺旋桨”))
螺旋桨推力=属性:系数:[1 x1 Aero.FixedWing。系数]MaximumValue: 1 MinimumValue: 0可控:对称:“对称”ControlVariables:“螺旋桨”属性:[1 x1 Aero.Aircraft.Properties]

构建飞机

与空气动力学表面,控制表面,和推力组件定义,定义完整的飞机。

首先,定义一个单独的Aero.Aircraft.Properties类飞机。使用这个类来跟踪版本的组件和给定飞机正在使用哪些组件。

所有Aero.FixedWingAero.Aircraft类包含这个属性。

C182Properties = Aero.Aircraft.Properties (“名称”,“Cessna C182”,“类型”,的“通用航空”,“版本”,“1.0”,“描述”,“塞斯纳182例子”)
C182Properties =属性与属性:名称:“Cessna C182”描述:“塞斯纳182例”类型:“通用航空”版本:“1.0”
C182 = Aero.FixedWing (“属性”C182Properties,“UnitSystem”,“英语(英尺/秒)”,“AngleSystem”,“弧度”,“TemperatureSystem”,“华”,“ReferenceArea”,174,“ReferenceSpan”36岁的“ReferenceLength”,4.9,“表面”(翅膀,horizontalStabilizer verticalStabilizer),“手臂”螺旋桨)
C182 = FixedWing属性:ReferenceArea: 174 ReferenceSpan: 36 ReferenceLength: 4.9000系数:[1 x1 Aero.FixedWing。系数]DegreesOfFreedom:“6自由度”表面:[1 x3 Aero.FixedWing。表面)目标:[1 x1 Aero.FixedWing。推力]AspectRatio: 7.4483属性:[1 x1 Aero.Aircraft。属性]UnitSystem:“英语(英国《金融时报》/ s)”TemperatureSystem: "Fahrenheit" AngleSystem: "Radians"

设置飞机系数

接下来,定义系数在飞机上。

这些系数描述飞机的动态行为。这个例子定义标量常数系数,定义线性行为。

定义固定翼飞机的非线性动态行为,定义金宝appSimulink.LookupTable系数。金宝appSimulink.LookupTables are not used in this example. To see an example using Simulink.LookupTables, open the线性控制和状态空间模型分析静态稳定性分析的例子。

默认情况下,所有系数0。

BodyCoefficients = {“CD”,“零”0.027;“氯”,“零”0.307;“厘米”,“零”0.04;“CD”,“α”0.121;“氯”,“α”4.41;“厘米”,“α”-0.613;“CD”,“AlphaDot”,0“氯”,“AlphaDot”1.7;“厘米”,“AlphaDot”-7.27;“CD”,“问”,0;“氯”,“问”3.9;“厘米”,“问”-12.4;“CY”,“β”-0.393;“氯”,“β”-0.0923;“Cn”,“β”0.0587;“CY”,“P”-0.075;“氯”,“P”-0.484;“Cn”,“P”-0.0278;“CY”,“R”0.214;“氯”,“R”0.0798;“Cn”,“R”-0.0937;};C182 = setCoefficient (C182 BodyCoefficients (: 1), BodyCoefficients (:, 2), BodyCoefficients (:, 3));

系数可以定义任何组件上飞机。这些组件可以包括任何Aero.FixedWing.SurfaceAero.FixedWing.Thrust

setCoefficient方法提供了一个组件名称,值参数,这需要系数所需的组件名称,从而避免必须确切地知道飞机上的组件。

依赖于有效的组件名称的名字在组件的属性。

AileronCoefficients = {“CY”,副翼的,0;“氯”,副翼的0.229;“Cn”,副翼的-0.0216;};RudderCoefficients = {“CY”,“舵”0.187;“氯”,“舵”0.0147;“Cn”,“舵”-0.0645;};ElevatorCoefficients = {“CD”,“电梯”,0;“氯”,“电梯”0.43;“厘米”,“电梯”-1.122;};PropellerCoefficients = {“CD”,“螺旋桨”-21.1200;};C182 = setCoefficient (C182 AileronCoefficients (: 1), AileronCoefficients (:, 2), AileronCoefficients (:, 3),“组件”,“副翼”);C182 = setCoefficient (C182 ElevatorCoefficients (: 1), ElevatorCoefficients (:, 2), ElevatorCoefficients (:, 3),“组件”,“电梯”);C182 = setCoefficient (C182 RudderCoefficients (: 1), RudderCoefficients (:, 2), RudderCoefficients (:, 3),“组件”,“舵”);C182 = setCoefficient (C182 PropellerCoefficients (: 1), PropellerCoefficients (:, 2), PropellerCoefficients (:, 3),“组件”,“螺旋桨”);

定义当前状态

固定翼飞机完全建立和数值分析。

固定翼飞机进行数值分析,定义一个Aero.FixedWing.State对象。

Aero.FixedWing.State对象定义的当前状态Aero.FixedWing在一个实例对象。的Aero.FixedWing.State也是飞机的动态物理性质,包括质量和惯性,定义。

在这个例子中,我们分析了巡航状态。

CruiseState = Aero.FixedWing.State (“UnitSystem”C182.UnitSystem,“AngleSystem”C182.AngleSystem,“TemperatureSystem”C182.TemperatureSystem,“质量”,82.2981,“U”,220.1,“AltitudeMSL”,5000);CruiseState.Inertia。变量= [948 0 0;0 1346 0;0,0,1967;];CruiseState。CenterOfGravity = [0.264, 0,0]。* C182.ReferenceLength;CruiseState。CenterOfPressure = [0.25, 0,0]。* C182.ReferenceLength; CruiseState.Environment = aircraftEnvironment(C182,“是”,CruiseState.AltitudeMSL);

设置控制状态

除了环境和动态物理性质,Aero.FixedWing.State类也有电流控制表面变形量和推力的位置。在这些位置ControlStates财产。使用这个类来建立控制状态。

默认情况下,这个属性是空的。初始化属性控制面和推力的飞机信息。

建立这些控制状态,使用setupControlStates下面的方法。

CruiseState = setupControlStates (CruiseState C182)
CruiseState =状态和属性:α:0β:0 AlphaDot: 0 BetaDot: 0质量:82.2981惯性:[3 x3表]CenterOfGravity: [1.2936 0 0] CenterOfPressure: [1.2250 0 0] AltitudeMSL: 5000 GroundHeight: 0 XN: 0 XE: 0 XD: -5000 U: 220.1000 V: 0 W: 0φ:0θ:0ψ:0 P: 0问:0 R: 0重量:2.6488 e + 03 AltitudeAGL: 5000速度:220.1000水平速度:220.1000 MachNumber: 0.2006 BodyVelocity: [220.1000 0 0] GroundVelocity:[220.1000 0 0]你:220.1000虚拟现实:0或者说是:0 FlightPathAngle: 0 CourseAngle: 0 InertialToBodyMatrix: [3 x3双]BodyToInertialMatrix: [3 x3双]BodyToWindMatrix: [3 x3双]WindToBodyMatrix: [3 x3双]BodyToStabilityMatrix: [3 x3双]StabilityToBodyMatrix: [3 x3双]动压力:49.6090环境:[1 x1 Aero.Aircraft。环境]ControlStates: [1 x6 Aero.Aircraft。ControlState] OutOfRangeAction: "Limit" DiagnosticAction: "Warning" Properties: [1x1 Aero.Aircraft.Properties] UnitSystem: "English (ft/s)" TemperatureSystem: "Fahrenheit" AngleSystem: "Radians"

每架飞机执行这个只有一次配置。如果没有添加或删除控制表面或手臂的飞机,跳过这个步骤。

进行数值分析

在这一点上,飞机和国家现在完全构造和定义。

大量的数值分析方法与固定翼飞机,包括军队和时刻,非线性动力学,和静态稳定。

力和时刻

计算飞机部队和时间在时间的一个实例,使用forcesAndMoments方法。

这些力量和时刻在飞机车身骨架。系数在不同坐标系中定义适当的变换矩阵应用到翻译主体框架。

[F M] = forcesAndMoments (C182 CruiseState)
F =3×1-233.0633 0 -1.2484
M =3×1103×1.5101 0 0

非线性动力学

计算飞机动态行为,使用nonlinearDynamics方法。

nonlinearDynamics方法返回一个向量改变利率的选择自由度的飞机。向量的大小取决于自由度。计算飞机动态行为随着时间的推移,使用向量结合ode求解器,如数值。

快速迭代形式之间的不同的飞机设计,从输出向量,或削减不必要的状态改变所选择的自由度。这些利率变化的定义如下:

负载(“astFixedWingDOFtable.mat”).DOFtable
ans =12×4表PM4 PM6 3自由度6自由度___ ___ ____ ____ dXN / dt“X”“X”“X”“X”dXE / dt " " X " " " " X " dXD / dt“X”“X”“X”“X”dU / dt“X”“X”“X”“X”dV / dt " " X " " " X " dW / dt“X”“X”“X”“X”dP / dt”“”“”“”X“dQ / dt”“”““X”“X”/ dt博士”“”“”“”X“dPhi / dt”“”“”“”X“dTheta / dt”“”““X”“X”dPsi / dt”“”“”““X”
dydt = nonlinearDynamics (C182 CruiseState)
dydt =12×11.1219 -0.0152 -2.8319 220.1000 0 0 0 0 0 0⋮

静态稳定

静态稳定的趋势飞机返回其原始状态后一个小扰动的初始状态。这是民用飞机的一个重要特性,减少了复杂的控制器需要保持动态稳定。在一些情况下,飞机需要先进的可操作性可能选择静态不稳定。

Aero.FixedWing对象静态稳定方法计算力和时刻的变化由于扰动在飞机的当前状态。

方法比较了扰动对一组预定义的标准小于,大于或等于零。您还可以指定自定义标准。然后评估方法的静态稳定性:

  • 如果条件满足,则扰动是静态稳定。

  • 如果条件不满足,那么扰动是静态不稳定。

  • 如果扰动是0,摄动静态是中立的。

staticStability方法不执行一个基于需求分析。只有使用这种方法在初步设计阶段。

(稳定性、衍生品)= staticStability (C182 CruiseState)
稳定=6×8表U V WαβP Q R ________ __________说说说外汇“稳定”“”“”“”“”“”“”“”“财政年度”“不稳定”“”“”“”“”“”“FZ”“”“稳定”“”“”“”“”“L”“”“”“”““稳定”“稳定”“稳定”“”“”“米”“稳定”“”“”“稳定”“N”“”“”“”“”“稳定”“”“稳定”
衍生品=6×8表U V WαβP Q R累积___________ ______ _____累积_________ FX -2.1178 - -7.2191 e-07 7.2946 1605.9 -0.035089 0 0 0 0 0 0 0 3159.3 14.354 52.945 -151.07财年FZ e-07 -5.0022 -24.08 -174.01 -374.73 -0.0265 -38300 0 0 L 0 0 0 -30374 -138 -12300 0 2028 -5863.8 -0.28018 13.722 -5.8208 e-06 -129.74 -28555 0 0 N 0 0 0 18024 81.892 -710.13 -2370.9 0

引用

  1. 罗斯克姆,J。,"Airplane Flight Dynamics and Automatic Flight Controls (Part 1)", DAR Corporation, 2003.

另请参阅

|||||

相关的话题