3. HIL验证系统总体架构设计
多无人系统协同HIL验证平台的核心难点,不在于单机仿真是否逼真,而在于“真实控制器—实时仿真模型—协同通信—评估监控”四类异构资源能否在同一时间基准下稳定闭环。因此总体架构设计的第一步不是选设备,而是确定分层边界与接口契约。典型平台可划分为四层:真实硬件层、实时仿真层、通信中间件层、监控评估层。分层的意义在于:每层只暴露有限接口,层内实现可替换,层间耦合可度量。
各层功能划分与边界
真实硬件层承载被测对象,包括飞控/自驾仪、机载协同计算单元、真实IO与总线接口。该层的关键约束是“不可修改被测固件”,因此HIL平台必须通过电气接口和协议接口与之交互,而不是侵入其内部逻辑。典型接口包括:PWM/CAN/串口输出执行器指令,ADC/串口/以太网接收传感器与状态反馈。信号调理板负责电平匹配与电气隔离,避免仿真侧故障损坏真实硬件。
实时仿真层运行被控对象与环境模型,包括六自由度动力学、气动与质量特性、IMU/GNSS/气压计等传感器模型、风扰与地形模型,以及编队保持、任务分配、避碰等协同任务模型。该层必须运行在实时内核上,采用定步长积分(例如1 ms或2 ms),并设置超时保护:若某步计算超时,应记录超时事件并降级运行,而不是让整个闭环失稳。仿真层对外只暴露两类接口:向硬件层输出传感器模拟量,从硬件层接收执行器指令。
通信中间件层解决多无人系统之间的数据交换与时间一致性问题。它通常基于DDS或自定义消息总线,按主题组织数据流,并通过QoS策略控制可靠性、实时性与历史深度。该层还需实现链路模型,对消息注入时延、丢包、带宽限制和乱序,以模拟真实无线链路。时间同步服务(PTP或IRIG-B)为全平台提供统一时间基准,所有跨层数据必须携带时间戳,否则监控评估层无法判断因果顺序。
监控评估层负责态势可视化、指标计算、场景激励与数据记录。它从中间件订阅状态量,计算编队一致性误差、端到端时延、丢包率、任务完成时间等指标,并可注入故障或回放历史场景。该层不直接参与实时闭环,但它的激励与记录能力决定了验证的可重复性。
接口设计原则
接口设计应遵循四条原则。第一,时间戳随数据走:任何跨层传输的数据包必须携带发送时刻与序号,接收端据此计算时延和丢包,避免用本地接收时间代替真实发送时间。第二,接口方向单一:硬件层到仿真层传执行器指令,仿真层到硬件层传传感器模拟量,中间件层只做转发与链路模拟,不修改业务语义。第三,故障可注入:接口应预留故障注入点,例如在传感器通道注入偏置、在通信链路注入丢包,而不需要修改模型代码。第四,步长与超时显式化:仿真步长、通信周期、监控采样周期应在配置文件中显式声明,避免隐式耦合。
一个可参考的接口配置示例
以下示例给出某四旋翼编队HIL平台的接口配置片段,参数为教学示例,实际值需根据硬件与模型调整:
# 接口配置示例(教学用)
sim_step_ms: 2
comm_period_ms: 10
monitor_period_ms: 50
time_sync: PTP
actuator_if:
type: CAN
period_ms: 2
timeout_ms: 10
sensor_if:
type: UDP
period_ms: 2
timestamp_field: tx_ns
link_model:
latency_ms: 20
loss_rate: 0.01
bandwidth_kbps: 512
fault_injection:
imu_bias: [0.02, -0.01, 0.005]
gnss_dropout_ms: 500
配置完成后,判断平台是否闭环可用的依据是:在无故障场景下,执行器指令到传感器反馈的端到端时延稳定在设定值附近,丢包率为零;注入20 ms链路时延后,编队一致性误差应出现可观测的增大,但系统仍能收敛;注入IMU偏置后,姿态估计误差应被监控层记录并触发告警。若这些现象与预期一致,说明四层接口契约成立,平台具备开展协同HIL验证的基础条件。