AFSim 仿真系统---- P6DOF 理论引言

引言

本文档旨在解释 P6DOF 移动器的物理原理(请参见 WSF_P6DOF_MOVER 输入类型和 WsfP6DOF_Mover 脚本类)。本文定义了运动学和动力学方程,并在适用时,将本文中的数学符号与现有的 P6DOF 命令进行比较。

WSF_P6DOF_MOVER 提供了一种基于物理的 6 自由度(DOF)移动器,支持广泛的航空器和武器建模。这 6 个自由度包括平移位置((\vec{x}))以及姿态((\psi, \theta, \phi))。车辆的姿态通过基于动量的计算确定,从而提供 realistic 的车辆指向,以及适当的迎角((\alpha))和侧滑角((\beta))建模。旋转运动学受到气动力学和推进力及力矩的影响,并结合旋转惯量。尽管 P6DOF 移动器包含完整的 6 自由度建模,但它们使用了一些角度/姿态简化,以减少所需的数据并简化控制——因此有 "伪" 的 Pseudo-6DOF 名称。特别是,它们仅使用惯性张量的对角线以减少惯性交叉耦合((I_{xx}, I_{yy}, I_{zz}))。然而,P6DOF 移动器支持完整的 6 自由度,并包括详细的稳定性导数积累法来处理气动力学,如本文所述。这允许详细的气动力学建模,基于马赫数,以准确建模跨声速、超声速和高超声速区域。

P6DOF 移动器包括针对涡轮喷气发动机、涡轮风扇发动机、冲压发动机/超音速冲压发动机、液体推进火箭和固体推进火箭的特定类型建模,提供多种推进类型。这意味着每个引擎模型都包含对推力性能影响最大的参数,如马赫数和高度。

符号列表

Equations of Motion

The inertial acceleration is found by dividing the total inertial force by the total mass. In a similar manner, the rotational acceleration is found by dividing the total moment by the total moment of inertia. These accelerations, given by (1), are computed using the average force and moment between two time steps, as shown in equation (2).

(1)

\vec{a} &= \frac{\overline{\vec{F}}_{T,i}}{m}  \vec{\alpha} &= \bold{I}^{-1}\overline{\vec{M}}_T

(2)

\overline{\vec{F}}_{T,i} = \frac{1}{2} [\vec{F}_{T,i}]_{t} + \frac{1}{2} [\vec{F}_{T,i}]_{t+\Delta t}  \overline{\vec{M}}_{T} = \frac{1}{2} [\vec{M}_{T}]_{t} + \frac{1}{2} [\vec{M}_{T}]_{t+\Delta t}

It should be noted that one of the simplifications of P6DOF is that the moment of inertia from (1) is a diagonal matrix given by (3).

(3)

\bold{I} = \left[ {\begin{array}{rrr} I_{xx} & 0      & 0 \\ 0      & I_{yy} & 0 \\ 0      & 0      & I_{zz} \end{array}} \right]

First, the force 

[\vec{F}_{T,i}]_{t}

 and moment 

[\vec{M}_{T}]_{t}

 are computed at the current time step, which are used to calculate the linear and angular acceleration. Then, the states are propagated forward in time using (4). The force and moment are then computed at this new state, producing 

[\vec{F}_{T,i}]_{t+\Delta t}

 and 

[\vec{M}_{T}]_{t+\Delta t}

. The average force and the average moment are computed using (2). These are then used to compute the linear and angular accelerations in (1). The states are then updated using (4).

(4)

\vec{x}_{t+\Delta t} &= \vec{x}_t + \vec{v}_t \Delta t + \frac{1}{2} \vec{a}_t {\Delta t}^2  \vec{v}_{t+\Delta t} &= \vec{v}_t + \vec{a}_t \Delta t  \vec{Q}_{t+\Delta t} &= \vec{Q}_t + \vec{\dot{Q_t}} \Delta t  \vec{\omega}_{t+\Delta t} &= \vec{\omega}_t + \vec{\alpha}_t \Delta t

The body angular rates 

\vec{\omega}

, quaternion 

\vec{Q}

, and rate quaternion 

\vec{\dot{Q}}

 are defined in (5).

(5)

\vec{\omega} &= \left[ {\begin{array}{ccc} r & q & p \end{array}} \right]^\top  \vec{Q} &= \left[ {\begin{array}{c} \cos{\frac{\psi}{2}} \cos{\frac{\theta}{2}} \cos{\frac{\phi}{2}} + \sin{\frac{\psi}{2}} \sin{\frac{\theta}{2}} \sin{\frac{\phi}{2}} \\ \cos{\frac{\psi}{2}} \cos{\frac{\theta}{2}} \sin{\frac{\phi}{2}} - \sin{\frac{\psi}{2}} \sin{\frac{\theta}{2}} \cos{\frac{\phi}{2}} \\ \cos{\frac{\psi}{2}} \sin{\frac{\theta}{2}} \cos{\frac{\phi}{2}} + \sin{\frac{\psi}{2}} \cos{\frac{\theta}{2}} \cos{\frac{\phi}{2}} \\ \sin{\frac{\psi}{2}} \cos{\frac{\theta}{2}} \cos{\frac{\phi}{2}} - \cos{\frac{\psi}{2}} \sin{\frac{\theta}{2}} \sin{\frac{\phi}{2}} \end{array}} \right]  \vec{\dot{Q_t}} &= \frac{1}{2} \left[ {\begin{array}{cccc} 0 & -r & -q & -p \\ r & 0 & p & -q \\ q & -p & 0 & r \\ p & q & -r & 0 \end{array}} \right] \vec{Q}_t

If the quaternion 

\vec{Q}

 is defined by 

\left[ {\begin{array}{cccc}a & b & c & d\end{array}} \right]^\top

, then the corresponding direction cosine matrix is computed using (6).

(6)

\bold{R} = \left[ {\begin{array}{ccc} a^2 + b^2 - c^2 - d^2 & 2(bc + ad)            & 2(bd - ac)\\ 2(bc - ad)            & a^2 - b^2 + c^2 - d^2 & 2(cd + ab) \\ 2(bd + ac)            & 2(cd - ab)            & a^2 - b^2 - c^2 + d^2 \end{array}} \right]

Forces and Moments

The forces are calculated in the body frame, and then converted to the inertial frame to use in equation (1). This conversion is accomplished through equation (7).

(7)

\vec{F}_{T,i} = \bold{R}^{-1}\vec{F}_{T,b}

where 

\bold{R}

 is defined as a 3-2-1 rotation matrix (yaw-pitch-roll) shown in equation (8).

(8)

\bold{R} = \left[ {\begin{array}{rrr} \cos(\theta)\cos(\psi)                                  & \cos(\theta)\sin(\psi)                                    & -\sin(\theta) \\ \sin(\phi)\sin(\theta)\cos(\psi) - \cos(\phi)\sin(\psi) & \sin(\phi)\sin(\theta)\sin(\psi) + \cos(\phi)\cos(\psi)  & \sin(\phi)\cos(\theta) \\ \cos(\phi)\sin(\theta)\cos(\psi) + \sin(\phi)\sin(\psi) & \cos(\phi)\sin(\theta)\sin(\psi) - \sin(\phi)\cos(\psi)  & \cos(\phi)\cos(\theta) \\ \end{array}} \right]

The total body force, 

\vec{F}_{t,b}

 from equation (7) is calculated as the sum of the aerodynamic, gravitational, and propulsion forces in the body frame. It also includes, if applicable, the force from landing gear.

\vec{F}_{T,b} = \vec{F}_a + \vec{F}_g + \vec{F}_p + \vec{F}_l

The total moment is given by equation (9).

(9)

\vec{M}_T = \vec{M}_a + \vec{r}_{cm/a} \times (\vec{F}_a + \vec{F}_p + \vec{F}_l)

The body frame gravitational force is calculated in (10).

(10)

\vec{F}_g = m\bold{R}\vec{g}_i

The body frame propulsion force is given by (11).

(11)

\vec{F}_p = T\hat{t}_b

The force and moment produced from aerodynamics is given by (12) and (13).

(12)

\vec{F}_a = \tilde{q}A_r\gamma[(C_L(\alpha, \beta, M) + k_{Lq}C_{Lq}(\alpha, M) + k_{L\dot{\alpha}}C_{L\dot{\alpha}}(\alpha, M))&\hat{l} \\ + (C_Y(\alpha, \beta, M) + k_{Yr}C_{Yr}(\beta, M) + k_{Y\dot{\beta}}C_{Y\dot{\beta}}(\beta, M))&\hat{s} \\ + C_d(\alpha, \beta, M)&\hat{d}]

(13)

\vec{M}_a = \tilde{q}A_r[ (C_l(\alpha, \beta, M) + k_{lp}C_{lp}(M) + k_{lr}C_{lr}(M) + k_{lq}C_{lq}(M) + k_{l\dot{\alpha}}C_{l\dot{\alpha}}(M) + k_{l\dot{\beta}}C_{l\dot{\beta}}(M))&\hat{i} \\ + (C_m(\alpha, \beta, M) + k_{mq}C_{mq}(M) + k_{mp}C_{mp}(M) + k_{m\dot{\alpha}}C_{m\dot{\alpha}}(M))&\hat{j} \\ + (C_n(\alpha, \beta, M) + k_{nr}C_{nr}(M) + k_{np}C_{np}(M) + k_{n\dot{\beta}}C_{n\dot{\beta}}(M))&\hat{k}]

The vectors 

\hat{i}

\hat{j}

\hat{k}

 in (13) are the unit vectors that form the standard orthonormal basis in the body frame.

The vectors 

\hat{l}

\hat{d}

\hat{s}

 in (12) are the lift, drag, and side force unit vectors in the body frame, and are computed using (14).

(14)

\hat{l} &= \hat{j} \times \bold{R}\hat{v}  \hat{d} &= - \bold{R}\hat{v}  \hat{s} &= \hat{l} \times \hat{d}

Reduced Frequency

The reduced frequencies 1, denoted by 

k_{\{x\}}

, in (12) and (13) are calculated using (15). If use_reduced_frequency is set to false, then the corresponding angular rates are used instead of the non-dimensional reduced frequencies, and the stability derivative tables should be adjusted accordingly.

(15)

k_{Lq} &= \frac{\overline{c} q}{2 \lVert \vec{v} \rVert}  k_{L\dot{\alpha}} &= \frac{\overline{c}\dot{\alpha}}{2 \lVert \vec{v} \rVert}  k_{Yr} &= \frac{\overline{s} r}{2 \lVert \vec{v} \rVert}  k_{Y\dot{\beta}} &= \frac{\overline{s} \dot{\beta}}{2 \lVert \vec{v} \rVert}  k_{lp} &= \frac{\overline{s} p}{2 \lVert \vec{v} \rVert}  k_{lr} &= \frac{\overline{s} r}{2 \lVert \vec{v} \rVert}  k_{lq} &= \frac{\overline{s} q}{2 \lVert \vec{v} \rVert}  k_{mq} &= \frac{\overline{c} q}{2 \lVert \vec{v} \rVert}  k_{mp} &= \frac{\overline{c} p}{2 \lVert \vec{v} \rVert}  k_{m\dot{\alpha}} &= \frac{\overline{c} \dot{\alpha}}{2 \lVert \vec{v} \rVert}  k_{nr} &= \frac{\overline{s} r}{2 \lVert \vec{v} \rVert}  k_{np} &= \frac{\overline{s} p}{2 \lVert \vec{v} \rVert}  k_{n\dot{\beta}} &= \frac{\overline{s} \dot{\beta}}{2 \lVert \vec{v} \rVert}

The terms 

\overline{c}

 and 

\overline{s}

 refer to the wing chord and span, respectively.

References

1

Jenkins, J. “Dynamic Stability Derivatives”, Air Force Research Laboratory - Aerodynamic Technology Branch Aerospace Vehicles Division, June 2015. AFRL-RQ-WP-TR-2015-0141.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小道士写程序

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值