4. 实时仿真平台选型与配置

姿态控制闭环半实物验证的核心矛盾在于:星上姿态确定与控制算法运行在真实星载计算机上,而敏感器与执行机构(星敏感器、陀螺、反作用飞轮、磁力矩器、推力器)的动力学响应由仿真模型实时解算。两者必须在一个严格同步的节拍下交换数据,任何一拍的延迟抖动都会直接改变闭环相位特性,使验证结论失真。因此实时仿真平台的选型与配置,本质上是围绕"确定性"这一指标做工程权衡:实时操作系统保证任务调度可预测,仿真步长决定离散化误差与相位裕度损失,计算资源分配决定最坏执行时间是否可控,I/O板卡与通信协议决定数据交换的延迟与抖动边界。

实时操作系统:硬实时与软实时的分界

姿态控制回路带宽通常在0.1~2 Hz量级,但半实物验证要求仿真步长做到1 ms甚至0.5 ms,对应任务周期抖动必须控制在步长的5%~10%以内,即50 μs量级。这一要求把通用Linux、Windows排除在硬实时选项之外。工程上常见三类选择:

  • 商用硬实时RTOS(如VxWorks、RTX64、QNX):中断延迟与调度抖动可稳定在10 μs以内,具备成熟的实时网络与驱动生态,适合对确定性要求最严的姿控闭环验证,代价是授权成本与开发门槛。
  • 实时Linux补丁方案(PREEMPT_RT、Xenomai):在标准Linux上通过双内核或完全抢占改造获得微秒级抖动,兼顾开发便利与成本,适合中等规模实验室,但需实测最坏情况延迟而非依赖标称值。
  • 软实时方案(普通Linux+高精度定时器):抖动常在数百微秒到毫秒级,仅适用于对相位不敏感的开环测试或算法功能验证,不宜用于闭环稳定性判定。

选型时不能只看平均延迟,必须测量最坏情况执行时间(WCET)与最大调度抖动。一个可操作的判据是:连续运行2小时,采集任务周期时间戳,统计99.99分位抖动,若该值小于步长的10%,则认为该平台可用于本项目的闭环验证。

仿真步长:精度、相位与算力的三角约束

仿真步长Δt的选择需要同时满足三个条件。第一是数值稳定性:若采用四阶龙格-库塔积分,Δt应小于系统最小时间常数的1/5~1/10。姿控系统中飞轮电机电气时间常数常在1~10 ms,若忽略该动态而只建刚体动力学,Δt可取较大值;若包含执行机构动态,Δt通常需压到0.5~1 ms。第二是相位误差:零阶保持器引入的等效延迟为Δt/2,若姿控回路穿越频率为ωc,则附加相位滞后为ωc·Δt/2。以ωc=1 rad/s、要求附加滞后不超过2°(0.035 rad)为例,Δt ≤ 2×0.035/1 = 0.07 s,看似宽松,但若ωc提高到10 rad/s,Δt就需小于7 ms。第三是算力约束:Δt越小,每帧内需完成的模型解算、I/O读写、通信收发任务越密集,CPU占用率上升,抖动风险增大。

工程配置中常采用多速率仿真:刚体动力学与控制器接口以1 ms运行,执行机构电气动态以0.1 ms子步运行,星敏感器输出以10 ms更新并做零阶保持。这样既保证关键动态精度,又避免全局步长过小导致算力浪费。

计算资源分配:核隔离与任务优先级

实时仿真计算机通常采用多核CPU,配置要点是核隔离与优先级映射。建议将实时任务绑定到独立物理核(如CPU 2、3),通过内核参数isolcpus将其从通用调度器中隔离,避免非实时进程干扰。实时任务内部按周期与紧迫性分级:

  • 最高优先级:I/O板卡读写与反射内存收发,周期0.1~0.5 ms,抖动要求最严。
  • 次高优先级:执行机构模型解算与动力学积分,周期1 ms。
  • 中优先级:敏感器模型与数据打包,周期5~10 ms。
  • 低优先级:数据记录、监控界面通信、非实时日志,周期50~100 ms,可容忍较大抖动。

资源分配后需用CPU占用率与最坏响应时间分析验证:若最高优先级任务WCET为80 μs、周期200 μs,则占用率40%,剩余60%需容纳次高优先级任务,且必须保证高优先级任务不被低优先级任务阻塞。实际配置中常预留20%~30%的CPU余量以应对模型扩展与突发I/O。

I/O板卡与通信协议:延迟、抖动与同步

半实物验证中,仿真机与星载计算机、敏感器模拟器、执行机构模拟器之间的数据交换方式直接决定闭环真实性。常见方案对比如下:

方式典型延迟抖动适用场景
反射内存(RFM)亚微秒级极低多机紧耦合闭环,要求高同步
实时以太网(EtherCAT/PROFINET IRT)数十微秒低分布式I/O,执行机构接口
CAN总线百微秒级中等星上低速总线模拟,遥测遥控
模拟量/离散量板卡微秒级低陀螺、星敏、飞轮模拟信号
RS-422/485百微秒~毫秒较高低速串行设备模拟

选择时需注意:反射内存虽快,但需专用光纤或PCIe板卡,成本高;EtherCAT需从站支持分布式时钟,配置复杂度中等;CAN总线延迟抖动较大,若用于闭环需评估其对相位裕度的影响。对于姿控闭环,建议关键回路(控制器↔动力学)采用反射内存或实时以太网,非关键遥测采用CAN或串口。

同步机制同样关键。若仿真机与星载计算机各自独立计时,累积时钟漂移会导致数据错位。工程上常用外部同步脉冲(如IRIG-B、PPS)或反射内存网中断实现帧同步:仿真机每步开始时写反射内存并触发中断,星载计算机响应中断后读取数据、计算控制量、写回,仿真机在下一步读取控制量。这一"写—中断—读—算—写—读"的握手过程必须在步长内完成,否则需增大步长或优化通信。

姿态控制半实物闭环实时仿真平台配置关系 实时仿真机(硬实时RTOS) CPU核隔离与任务优先级 CPU2/3隔离 · 高优先级I/O(0.2ms) 动力学积分(1ms) · 敏感器模型(10ms) 多速率仿真步长配置 刚体动力学+控制器接口:Δt=1ms 执行机构电气动态子步:0.1ms 星敏输出零阶保持:10ms 实时模型库 轨道/姿态动力学 · 环境力矩 飞轮/磁力矩器/推力器模型 同步与I/O接口 反射内存 / 实时以太网 / 模拟量板卡 IRIG-B / PPS 帧同步 星载计算机(真实产品) 姿态确定算法 星敏/陀螺数据融合 · 定姿滤波 姿态控制算法 PID/滑模 · 飞轮指令分配 执行机构模拟器 飞轮转速/力矩响应 · 磁力矩器电流 推力器开关延迟 · 死区与饱和特性 敏感器模拟器 星敏感器输出 · 陀螺角速率/漂移 噪声/量化/更新率特性 敏感器数据 控制指令 实际力矩/转速 帧同步节拍: 仿真写RFM → 中断星载机 → 星载机读数据/算控制/写回 → 仿真读控制量 → 下一步

面向姿态控制闭环的配置流程与判据

综合以上四个维度,工程配置可按以下顺序推进。第一步,根据姿控回路带宽与执行机构动态确定仿真步长:若回路穿越频率为2 rad/s、要求附加相位滞后小于3°,则Δt ≤ 2×0.052/2 = 0.052 s,但考虑执行机构电气动态,实际取1 ms。第二步,选择实时操作系统并实测抖动:在目标硬件上运行空载与满载任务,记录周期时间戳,确认99.99分位抖动小于50 μs。第三步,分配CPU核与任务优先级,用WCET分析验证高优先级任务不被阻塞,预留20%以上余量。第四步,选择I/O与通信方案:关键回路用反射内存或EtherCAT,非关键遥测用CAN;配置帧同步机制,确保仿真机与星载机在同一节拍内完成数据交换。第五步,闭环联调时监测三项指标:任务周期抖动、通信往返延迟、数据丢帧率。若抖动超过步长10%、往返延迟超过步长50%、或出现连续丢帧,则需回退调整步长、优先级或通信方案。

配置检查要点:仿真步长是否覆盖执行机构最小时间常数?实时任务最坏抖动是否小于步长10%?关键回路通信延迟是否小于步长50%?CPU余量是否大于20%?帧同步是否在每步内完成握手?以上任一不满足,闭环验证结论的可信度都会下降。

需要强调的是,实时仿真平台的配置不是一次性的静态选择,而是随验证阶段动态调整的过程。在算法功能验证阶段,可放宽步长至5~10 ms、采用软实时方案快速迭代;进入闭环稳定性与性能验证阶段,则必须切换到硬实时平台、收紧步长与抖动指标。平台选型与配置的最终目标,是让半实物验证中的"实时"二字真正成立——仿真时间与物理时间严格一致,数据交换的延迟与抖动可量化、可控制、可复现,从而使姿态控制闭环的验证结论具备工程可信度。