PX4固定翼控制器详解(四)——TECS高度、速度控制器(续)

回顾复习

上一期关于TECS控制器的讲解,我们得到了基础框架下的TECS控制器如下图所示。

总能量、比能量相关量计算方式如下:
{ E ˙ = V ˙ g + γ B ˙ = γ − V ˙ g E ˙ e = ( V ˙ s p g + γ s p ) − ( V ˙ g + γ ) B ˙ e = ( γ s p − V ˙ s p g ) − ( γ − V ˙ g ) \begin{cases} \dot E = \frac{\dot V}{g}+\gamma \\ \dot B = \gamma-\frac{\dot{V}}{g} \\ \dot{E}_e=(\frac{\dot V_{sp}}{g}+\gamma_{sp}) - (\frac{\dot V}{g}+\gamma) \\ \dot B_e=(\gamma_{sp}-\frac{\dot{V}_{sp}}{g})-(\gamma-\frac{\dot{V}}{g}) \end{cases} E˙=gV˙+γB˙=γgV˙E˙e=(gV˙sp+γsp)(gV˙+γ)B˙e=(γspgV˙sp)(γgV˙)
{ γ = a r c s i n − v d v e 2 + v n 2 γ s p = a r c s i n v c l i m b s p v e 2 + v n 2 = a r c s i n K h ( h s p − h ) v e 2 + v n 2 V ˙ s p = K a ( V s p − V ) \begin{cases} \gamma = arcsin\frac{-v_d}{\sqrt{v_e^2+v_n^2}} \\ \gamma_{sp} = arcsin\frac{{v_{climb}}_{sp}}{\sqrt{v_e^2+v_n^2}} =arcsin\frac{K_{h}(h_{sp}-h)}{\sqrt{v_e^2+v_n^2}} \\ \dot V_{sp}=K_a(V_{sp} - V) \\ \end{cases} γ=arcsinve2+vn2 vdγsp=arcsinve2+vn2 vclimbsp=arcsinve2+vn2 Kh(hsph)V˙sp=Ka(VspV)

最终的油门和俯仰角输出为:
{ T s p = K e i s E e ˙ + K e p s E ˙ θ s p = K b i s B e ˙ + K b p s B ˙ \begin{cases} T_{sp}=\frac{K_{ei}}{s}\dot{E_{e}} + \frac{K_{ep}}{s}\dot E \\ \theta_{sp}=\frac{K_{bi}}{s}\dot{B_{e}} + \frac{K_{bp}}{s}\dot B \\ \end{cases} {Tsp=sKeiEe˙+sKepE˙θsp=sKbiBe˙+sKbpB˙

这里注意,由比能量数据给出的控制量为俯仰角 θ s p \theta_{sp} θsp,而非 δ s p \delta_{sp} δsp。这样的处理方式更为合理,得到俯仰角期望值 θ s p \theta_{sp} θsp可以输入到姿态控制器中。原论文中在后续章节也采用了类似的处理方式。

改进完善

到这里TECS的基本框架已经有了,我们给出高度控制模式下,完整的操控流程框图。

改进1——滚转输入补偿

考虑到当存在期望滚转角输入后,姿态控制器会根据期望滚转角控制副翼,使得飞行器发生滚转。当存在滚转角时,飞行器阻力增大,总能量会降低,会产生掉高、减速的现象。

这里可以引入部分前馈控制量,根据期望的滚转角,为输出的 T s p T_{sp} Tsp θ s p \theta_{sp} θsp提供前馈补偿。具体的控制原理图如下图所示。

改进2——误差PI控制

上一期文章中我们提到,原始论文对总能量误差 E ˙ e \dot E_{e} E˙e,比能量误差 B ˙ e \dot B_{e} B˙e采用的是积分控制。在PX4和APM中, K e p E ˙ K_{ep} \dot E KepE˙ K b p B ˙ K_{bp} \dot B KbpB˙被称为前馈项,对于总能量误差 E ˙ e \dot E_{e} E˙e,比能量误差 B ˙ e \dot B_{e} B˙e的控制可以改进为PI控制器。

此处使用PI控制器而非PID控制器原因:在PX4、APM控制器中,经过总能量误差 E ˙ e \dot E_{e} E˙e,比能量误差 B ˙ e \dot B_{e} B˙e的控制为PI控制,但是其将P值称为阻尼项。而且在笔者测试过程中,如果对 E ˙ e \dot E_{e} E˙e B ˙ e \dot B_{e} B˙e加D控制,会造成油门和升降舵的剧烈震动。因此,这里仅推荐大家使用PI控制器即可如下图所示。

改进3——高度、速度分配控制

在APM飞控中,有一项参数为TECS_SPDWEIGHT。该参数用于调整俯仰控制对速度与高度误差的权重。将其设置为0.0时,俯仰控制将控制高度而忽略速度误差。这通常会提高高度精度,但空速误差较大。将其设置为2.0将使俯仰控制回路控制速度而忽略高度误差。这通常会减少空速误差,但会增大高度误差。默认值1.0允许俯仰控制同时控制高度和速度。

这项改进,在1983年Lambregts给出的论文[4]中有提及(原论文中图3)。改进后的结构如下图所示。

总得来说,如果对高度控制精度要求更高可以忽略速度误差,可以设置 K = 0 K=0 K=0;如果对速度控制精度要求更高可以忽略高度误差,可以设置 K = 2 K=2 K=2

总结

综上所述,TECS总能量控制至此全部介绍完,下一期文章将介绍L1侧向控制器。

L1侧向控制器用于控制飞行器的前向飞行,在定高模式的基础上,引入L1侧向控制器,最终实现飞行器的自动水平匀速直线飞行。

参考文献及链接

[1]张庆振.QFT/TECS在飞机自动着陆控制中的应用研究[D].西北工业大学,2004.

[2]张庆振,安锦文.一种基于飞机总能量控制飞行速度/航迹的解耦控制系统设计新方法[J].航空学报,2004,(04):389-392.

[3]张庆振,安锦文,刘小刚.基于飞机总能量控制系统(TECS)的飞行航迹/速度解耦控制方法研究[J].西北工业大学学报,2004,(03):384-387.

[4]LAMBREGTS, A. Vertical flight path and speed control autopilot design using total energy principles. In: Guidance and Control Conference. 1983. p. 2239.

[5]VOTH, Christopher; LY, Uy-Loi. Design of a total energy control autopilot using constrained parameter optimization. Journal of Guidance, Control, and Dynamics, 1991, 14.5: 927-935.

[6]WARREN, Anthony. Application of total energy control for high-performance aircraft vertical transitions. Journal of guidance, control, and dynamics, 1991, 14.2: 447-452.

[7]https://docs.px4.io/main/zh/flight_stack/controller_diagrams.html

后续会陆续带来规划、控制相关的文章、仿真分享。

END

迅翼SwiftWing致力于固定翼技术共享,汇聚固定翼领域技术极客,推动固定翼技术持续创新!

  • 22
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值