跳转至

示例 - 教练机

一个完整的 CCPE 航电应用示例:可驾驶的固定翼教练机,集成了传感器系统(静压孔 / 皮托管 / INS / FMC)、模块化监视器(开关 / 旋钮 / 屏幕)、控制台(操纵杆 / 脚踏板 / 油门)与航空轴承舵面,并带俯仰阻尼、自动滚转、自动油门与高度保持。

nice

> 存档下载 <

OneDrive

注意

1.1.4 版本修改了流体端口的重量,需要手动重新配平

需求 mod

  • CC:Tweaked
  • Create
  • Sable
  • Create: Aeronautics
  • Create: Diesel Generators
  • CCPE(本模组)

自带控制程序:trainer aircraft\computercraft\computer\0\startup.lua(随存档放置,开机自动运行)。

飞机设计要点

这架教练机的一切设计都围绕简化展开:

  • 简化传动:飞机主体是一个长棍子,沿直线传递应力
  • 简化气动:通过配平让推力线过重心、升力中心与重心重合——加减油门不产生俯仰力矩、平飞净力矩 ≈ 0,控制逻辑简单且行为可预测(游戏气动模型详见飞行管理计算机)。
  • 简化操纵:全机只有升降舵(俯仰)与副翼(滚转)两组舵面,没有方向舵——偏航靠差速 / 侧滑即可,Lua 只需控制两个轴。

控制面板

monitor

各控件对应的监视器模块 ID(供 Lua 脚本 monitor.getModule(id) 引用):

控件 模块 ID 说明
屏幕(左) 0 主飞行数据显示
屏幕(右) 1 高度保持数据显示
引擎开关 2 控制发动机运转 / 停止
屏幕开关 3 显示 / 隐藏屏幕
航行灯开关 4 三色航行灯
自动滚转开关 5 松杆自动改平(PD)
高度设定旋钮 6 目标高度(见下)
自动油门开关 7 空速保持 + 高度保持
升降舵阻尼开关 8 俯仰人工阻尼(抑制 phugoid)

屏幕显示

左侧屏幕(模块 ID 0)从上到下:

  • Alt:当前高度(m)
  • Speed:当前速度(m/s)
  • Press:当前气压
  • Pitch:俯仰角(°)——屏幕显示抬头为正(与 API 原始读数符号相反)
  • Roll:滚转角(°)
  • Yaw:偏航角(°)
  • Stress:已使用应力百分比
  • Fuel:剩余燃料百分比

右侧屏幕(模块 ID 1)从上到下:

  • Tgt:目标高度(高度旋钮设定)
  • Tgt:维持该高度所需的空速(由"升力 = 重力"反解)
  • VS:垂直速度(m/s,正 = 上升)

操作说明

  1. 手持 Diesel Generators 模组的燃料桶,右键起落架之间的流体端口,为飞机加满燃料
  2. 坐上坐垫
  3. 打开引擎开关
  4. 按住空格,将油门推到 1 档,进入缓慢滑行状态(按住 Ctrl 减少油门)
  5. 按 Q 或 E 踩踏板,控制前轮转向,将飞机滑入合适的滑行道
  6. 按住空格推满油门起飞
  7. 高度升至 300 m 左右时点按 W,防止爬升过高
  8. 转动高度设定旋钮(准心对准旋钮按住鼠标右键,围绕旋钮移动鼠标),设定目标高度(0% ≈ 70 m,100% ≈ 该机在最大转速下的最高稳态高度,约 250 m)
  9. 打开自动油门模式开关,飞机将自动控制油门并保持在目标高度

辅助稳定

建议打开自动滚转开关:用于在松杆时把滚转角拉回水平。不会干扰手动操纵——摇杆X轴输入时,自动滚转开关会被自动关闭。

自动驾驶功能(startup.lua)

俯仰人工阻尼

把俯仰角速率反馈到升降舵指令(PITCH_DAMP_GAIN = 0.5),抑制长周期俯仰振荡(phugoid)。

自动滚转

松杆且滚转角超出死区时,按「滚转角比例 + 滚转速率阻尼」输出副翼(ROLL_KP = -0.5、ROLL_KD = -0.5),把飞机改平。

自动油门 + 高度保持

分三步闭环:

  1. 转速前馈:目标高度 → 反解所需气压 → 由"升力 = 重力"反解所需空速 → 由升力面阻力 + 通用阻力反解螺旋桨转速(getPropellerRPM,θ = 90°)。
  2. 空速 PI 修正:用皮托管空速误差修正油门(AIRSPEED_KP = 0.002、AIRSPEED_KI = 0.001),消除模型与风 / 质量漂移。
  3. 高度保持:外环 高度差 → 目标垂直速度(ALT_HOLD_KP_VS = 0.3,限幅 ±5 m/s),内环 垂速误差 → 升降舵(ALT_HOLD_KP_PITCH = 1.0,限幅 ±15°)。

飞行小贴士

  • 低空满油门松手会自动抬头爬升:升力 ∝ 气压 × 空速——低空气压大、同样空速升力过剩 → 爬升;高空气压小、需要更快空速才够升力。想稳定巡航就用高度旋钮 + 自动油门;手动飞时低空收一点油、高空给满油。
  • 长周期振荡(phugoid):松杆后机身会以约 16 s 周期缓慢上下起伏,属正常气动行为(静稳定改出 + 惯性过冲),开升降舵阻尼即可收敛。
  • 舵面高频抖动:若升降舵 / 副翼出现高频抖动,把 PITCH_DAMP_GAIN 调回 0.5 以下,或降低 ALT_HOLD_KP_PITCH / ALT_HOLD_KP_VS。

相关页面