辅助动力装置(APU)半实物仿真测试台,工程师已经在里面调了三天的参数。屏幕上的曲线一会儿锯齿、一会儿毛刺,眼看着控制律的输出和预期偏差越来越大,最后发现是仿真机里一个看门狗任务把控制任务的周期挤掉了。这种问题,你在纯数字仿真里根本碰不到,但半实物平台上一开机就给你颜色看。
干飞控研发这些年,我越来越深的一个体会是:飞控系统开发,算法只是一部分,真正决定研发效率和安全底线的,是验证手段。纯数字仿真做得再漂亮,模型跑得再顺,一接入真实硬件,问题就开始冒出来了。信号线上的毛刺、总线上偶尔错一帧的报文、舵机带载之后的非线性响应……这些在软件环境里根本看不见,却往往决定一套飞控系统能不能安全地走出实验室。
所以我想把飞控半实物实时仿真测试平台这件事,认认真真拆开讲一遍:它到底解决什么问题、核心系统怎么搭、试验怎么设计、有哪些坑是踩过之后才知道的。这篇文章适合飞控算法工程师、硬件在环测试人员、以及准备组建仿真实验室的团队参考,尤其适合那些正在从“纯仿真验证”转向“硬件在环验证”阶段的朋友。
1. 飞控半实物仿真平台的价值与定位
1.1 为什么纯数字仿真越来越不够用
做飞控的人对Simulink都不陌生。六自由度模型、气动导数、控制律、扩展卡尔曼滤波,在电脑上解算得行云流水,蒙特卡洛跑个几千次,统计结果漂漂亮亮。但这就是问题的起点——模型的精度,永远追不上真实器件的复杂程度。
我举个例子你就明白了。真实飞控计算机上电有个过程:电源缓启动、内核初始化、外设自检、总线仲裁。这个过程在纯数字仿真里通常被简化成“一个开关量”,或者干脆直接初始化为正常运行状态。但真实硬件在启动过程中,IO引脚的电平是浮动的,总线上可能发出不完整报文,看门狗可能先触发一轮复位。这些行为里面藏着大量故障模式,但纯数字环境根本模拟不出来。
更麻烦的是执行机构。真实舵机里电机有齿槽转矩,摩擦力有静动差异,传动链有间隙,温度变化还会改变润滑油特性。这些非线性、时变特性,放在纯数字模型里,你得写非常复杂的子模型才能逼近。就算写出来了,参数辨识又是一大摊工程。而半实物仿真直接把真实舵机接进来,这部分复杂性根本不用建模,真实器件本身就是最高精度的模型。
所以在我的工作流里,纯数字仿真负责“算法探索”,半实物仿真负责“产品验证”。二者不是竞争关系,而是接力关系。
1.2 半实物仿真到底“实物”在哪里
半实物仿真,英文常说Hardware-In-the-Loop,简称HIL。核心逻辑很简单:把被控对象用实时仿真模型跑起来,但把飞控系统的那部分换成真实硬件,让真实硬件和虚拟环境闭环。
这里有个关键问题——到底哪些环节用真实硬件?不同方案差别很大,我整理成三种常见形态:
- 信号级半实物:真实飞控计算机接入回路,传感器信号(姿态、角速率、大气数据等)由仿真机通过总线或模拟量注入,舵机或负载台按真实功率驱动。这是最常用、性价比最高的形态。
- 功率级半实物:除了飞控计算机,还把真实的舵机、电机加载设备接进回路,在功率层面闭环。适合验证执行机构在带载情况下的性能,对试验台硬件要求高很多。
- 快速原型:反过来,用真实传感器和执行机构,但控制算法跑在实时仿真机上。这种形态多用于控制律初步验证阶段,方便快速迭代算法。
我接下来讲的平台,以第一种信号级半实物为绝对核心,这也是国内大多数飞控研发团队搭建验证环境时的首选形态。
闭环回路怎么构成?你可以把它理解成一场“角色扮演”:真实飞控计算机是“演员”,它以为自己在真实的飞机上飞,因为它接收到的传感器数据、总线上其他设备发来的信息,全部来自实时仿真模型;它输出的控制指令,会真实地驱动舵机或负载台;而舵机产生的运动效果,又反馈给飞控模型,改变飞机的姿态和航迹。就这样,一圈一圈跑下来,飞控计算机的每一行代码都在经受“准真实”的考验。
1.3 这平台到底能解决什么问题
我总结过一句话:半实物仿真平台就是飞控研发的安全带。它的价值集中体现在四个方面。
第一是尽早暴露接口问题。总线协议解析错误、信号极性接反、模拟量满量程不准、离散量电平不匹配——这些问题只有在真实硬件对接时才会暴露。第二是安全验证故障场景。真实飞行中你不可能让传感器突然失效去测试控制律的容错能力,但在半实物平台上,这是基础操作。第三是大幅压缩试验成本。试飞一次的成本动辄很高,而半实物平台可以全天候跑千次试验,把包线边界、极限工况在实验室里先探索一遍。第四是支撑迭代开发。控制律改一行代码,平台上一小时就能验证完,整个研发节奏会明显提速。
所以,这套平台适合谁来用?飞控算法工程师用它验证控制律、调参、确认容错逻辑;测试工程师用它做需求验证、故障注入、回归测试;项目管理者用它把控技术风险、支撑阶段评审。可以说,它是连接“算法”与“实机”之间那座最重要的桥。
2. 平台架构设计与核心硬件选型
2.1 实时仿真机:全系统的“节拍器”
半实物仿真平台的心脏,是实时仿真机。它必须保证模型的解算周期是一个严格确定的值,比如1毫秒,误差在微秒级甚至纳秒级。一旦任务周期抖动,整个仿真就失真了。
为什么这很重要?因为飞控计算机内部的所有控制律都按固定采样周期运行,比如500Hz的控制周期、50Hz的导航周期。如果外部仿真环境给它的数据更新节奏忽快忽慢,控制律就会看到“假噪声”,甚至触发保护逻辑。我在实际项目中就碰到过一次:仿真机任务抖动导致飞控判断传感器异常,把自己切换到备份模态,后来查了半天才发现是宿主机的USB管理中断抢占了实时任务。
选型上有两条路线。一条是纯CPU软实时方案,基于带实时补丁的Linux或者专用实时操作系统,配合高性能多核处理器。优点是灵活、生态好、易于集成第三方模型,适合以离散控制逻辑为主的仿真场景。另一条是CPU加FPGA混合方案,CPU处理飞机模型、任务调度,FPGA负责高速信号的硬件级处理,比如PWM信号的采集、编码器计数、高速ADC采样。优点是时序精度极高、IO响应快,适合对电机、舵机等物理过程有高频采样需求的场景。
我个人的建议是:如果团队主要做飞行管理、导航制导、控制律逻辑验证,一条好的CPU实时路线完全够用;如果还要做电机驱动验证、高频功率回路仿真,那就得认真考虑FPGA的方案。实时机上运行的操作系统,我建议至少具备这三个能力:优先级抢占调度、内存锁定避免换页、中断延迟可控。
2.2 信号接口与传感器注入方案
实时仿真机定下来,紧接着就要解决“飞控计算机怎么接进来”的问题。飞控计算机的对外接口,基本决定了半实物平台的硬件接口组成。
大多数飞控系统会用到这样几类信号通道。模拟量输入输出:飞控计算机输出模拟信号驱动舵机,同时采集传感器模拟信号,比如传统的垂直陀螺仪输出俯仰、横滚角度信号。离散量通道:用于起落架收放、模态切换、应急告警等开关量信号。数字总线:现代飞控系统大量使用ARINC429、1553B、CAN、RS422/RS485进行传感器数据和指令交互。有些新型系统还会用光纤总线或以太网。
在平台配置上,核心原则是“有多少接口,就配多少通道,不要留死角”。我见过一个团队,飞控计算机明明有多个ARINC429发送通道,仿真平台只接了一条,结果测试中发现控制律软件在“某个发送通道故障”模式下有缺陷,但平台上根本没法复现,因为那个通道压根没有接出来。
还有一个细节容易被忽视:接口的电平和时序匹配。模拟量通道输出阻抗、总线终端电阻、光耦隔离类型、共地还是浮地,这些都必须与飞控计算机接口手册逐项核对。我建议在平台调试初期,专门做一轮“接口检查清单”测试,用示波器和协议分析仪逐通道验证信号的幅值、极性、时序是否符合预期。这一步做好了,之后的试验会省掉大量排查时间。
2.3 执行机构模拟与负载加载
信号级半实物平台里,飞控计算机输出的舵面指令,通常会接到真实的舵机控制盒和舵机驱动机构上,但舵机要真的带着舵面载荷工作,就需要一套负载加载系统。
如果只验证飞控逻辑,不做功率级加载,最简单的做法是用“电阻负载”或“小功率舵机空载运行”。但这样有个问题:真实舵机的响应特性与带载状态密切相关,载荷一大,动态响应就变慢,带宽变低;空载时舵机响应特别灵敏,控制律调出来的参数一旦遇到真实载荷,很可能会出现振荡。
更专业的方案是配置负载模拟台,通过电机或液压加载装置给舵机施加模拟气动铰链力矩。这个力矩大小按照当前飞行状态(动压、舵偏角、 Mach数)计算出来,折算成模拟载荷实时施加给舵机。这个配置已经接近功率级半实物仿真了,对试验场的机械设计和运动控制水平要求较高。
如果团队刚开始建设平台,我建议分两步走:第一步先做信号级闭环,用空载舵机或者纯模型舵机完成控制律功能验证;第二步再根据验证需求,针对特定舵机搭建负载模拟台。一次到位全部上功率级,既花钱又会拖慢项目进度。
3. 从模型到实时仿真环境的搭建流程
3.1 飞控对象建模:六自由度模型与气动数据
半实物仿真平台能跑出多真实的结果,取决于实时仿真里跑的飞机模型有多可信。飞机对象模型通常要包含这样几个模块:六自由度刚体运动学与动力学方程、气动模型和发动机模型、大气环境模型(风场、标准大气)、起落架与地面效应模型、舵面与执行机构的动力学简化模型。
气动数据是关键。气动导数通常来自CFD计算、风洞试验或估算方法,在使用前一定要做插值合理性检查。我处理过这样一个案例:气动数据表只在迎角-2到15度范围内有效,但半实物试验中飞控系统因为故障注入出现了异常姿态,飞机模型被推到了25度迎角,外推出来的气动力严重失真,导致仿真结果完全不可信。所以我从那时起养成了一个习惯:所有气动数据都要在模型里做“包线保护”,超出有效范围就得用合理的失速模型代替外推。
模型裁剪也很重要。半实物仿真不是越精细越好。模型跑得多快、实时机上能不能在1毫秒步长内算完,这才是约束条件。把发动机的内部转子动力学都建进去,模型就太重了。一种常见做法是全量模型保留,但把高频分量做降阶处理,用等效一阶或二阶惯性代替复杂传递函数。模型每简化一步,都要用数字仿真离线对比,确认简化后模型的响应和全量模型足够接近。
3.2 模型如何安全“搬”到实时仿真机
在电脑上跑得好好的Simulink模型,想搬到实时机上,不是复制粘贴那么简单。中间有一整套固定流程,而其中最核心的纪律是:所有必须在实时环境里运行的计算,都不能用变步长求解器。
变步长求解器是根据误差自动调整计算步长的那种,精度高、计算量大,但在实时系统里是不可接受的——因为你永远不知道下一步是多长时间。所以模型搬入实时机前,必须手动设定为定步长求解器,步长要与控制律周期严格匹配。我自己常用的配置是控制律500Hz、模型解算1000Hz,也就是每个控制周期内模型算两步。
还有几个细节要留意:模型里的连续积分模块要替换成离散积分;所有查找表要保持输入输出一致,避免运行时代的插值误差;代码生成时选择适合目标平台的浮点运算指令集;模型参数要集中管理,防止硬编码散落各处。
我强烈建议从第一天起就把“模型、参数、代码”纳入配置管理。因为半实物试验周期很长,模型经常微调,如果每次改动不记录,后期追一个问题可能下班都追不出来。这一步实施成本不高,但收益是长期的。
3.3 飞控计算机的接入与信号校准
模型部署好之后,另一个大头是飞控计算机接入实时仿真回路。这个过程要按部就班来,不要想着一次全接上。我推荐“三阶段对接法”。
第一阶段是静态检查。断电状态下核对每个接口的引脚定义、线缆标号、连接器型号,确认信号的流向和电平类型与平台记录一致。第二阶段是开环通道测试。实时仿真机作为信号源,主动向飞控计算机注入已知测试信号,比如一个1Hz的正弦波,飞控计算机侧解析后反馈给平台,平台比对收发数据是否一致。这一步能把所有总线协议、字节序、转换系数问题都提前卡出来。第三阶段是闭环软联试。飞控计算机正常启动,平台上运行飞机模型,各项信号动态交互,按正常剖面飞行几分钟,观察有无告警或异常切模。
这里要特别提醒几个实操中的坑。模拟量通道的满量程校准非常关键,常见的模拟传感器信号是0到10V或者4到20mA对应特定物理量,如果平台的DAC输出和标称值差了0.1V,角度就偏了好几度。总线数据要关注字节序和符号位,我在ARINC429调试时就碰到过一个符号位取反的问题,排查了很久才发现是平台配置里少勾了一位。所以,对接完成后一定做一轮全通道的校飞比对,用已有的真机数据或基准数据核对平台的输出是否准确。
3.4 时统与同步:时间戳与帧同步机制
半实物仿真还有一个容易被轻视、但在问题分析时极其重要的环节:时统与同步。真实飞机上,飞控计算机、惯导、大气数据机都有统一的时间基准,所有数据打上的时间戳是一致的。到了半实物平台上,这个统一时间基准也要模拟出来。
最直接的需求是“对齐”。飞控计算机收到总线数据,平台记录收到命令,舵机反馈位置,三者必须有统一的时间戳,才能事后还原“那一秒发生了什么”。如果各设备各走各的时钟,出了问题之后,数据来回比对的时间线都对不上。
实现方式上,常见的选择有三种,我做了个对比:
| 同步方案 | 精度 | 适用场景 |
|---|---|---|
| IRIG-B码 | 亚微秒级 | 大型试验室、多设备分布式同步,技术成熟 |
| PTP(IEEE 1588) | 亚微秒级 | 以太网环境,配置灵活,适合新型系统 |
| 软件NTP同步 | 毫秒级 | 仅用于数据记录粗同步,不能支撑控制级同步 |
用在半实物平台上,我建议至少做到IRIG-B或PTP级别的硬同步。而且平台记录的数据,每条报文都要带硬件时间戳,而不是软件在收完后再打一个时间戳——那样的话网络调度延迟会污染时间信息的准确性。
4. 测试用例设计与完整试验流程
4.1 测试用例的层次划分
实时仿真平台的价值,很大程度上要靠测试用例来兑现。用例怎么设计,直接决定了平台能不能把风险提前兜住。我一般把飞控半实物测试用例分成四个层次。
第一层是功能正常包线测试。核心目的是确认飞控在正常飞行包线内,各种功能运行正确:姿态控制、航向保持、高度保持、自主导航等。第二层是边界与极限测试。把攻角、过载、舵偏角往包线边缘推,考察控制律在边界附近的表现。第三层是故障注入测试。这是半实物平台的强项,包括传感器故障、舵机故障、电源瞬断、总线通信故障等,验证飞控的容错与重构能力。第四层是回归测试。每当控制律、系统配置或者平台模型更新,都要把关键用例重新跑一遍,确保没有引入新问题。
用例设计要能和需求对应上。我习惯的做法是每个用例都关联到具体的需求条目或风险条目,这样测试报告出来,哪个需求没验证、哪个风险没覆盖,一目了然。
4.2 故障注入:从传感器到总线再到执行机构
故障注入是半实物测试平台和纯数字仿真拉开差距最明显的地方。真实飞行中,这些故障可能出现在任意时刻、任意通道,但绝不允许用真实飞行去试错。平台上却可以反复折腾。
故障注入的类型按接口层级来分,比较清楚:
- 信号级注入:针对模拟量传感器通道,可以注入开路、短路、对地/对电源短路、信号超量程、增益跳变、噪声叠加等故障。
- 总线级注入:针对ARINC429、1553B、CAN等总线,可以注入丢帧、错帧、无效字节、CRC错误、节点掉线、总线静默等故障。
- 逻辑级注入:针对飞控内部的逻辑状态,通过监控口或调试口强制改变某标志位,模拟内部资源耗尽、任务卡死、存储区写保护等异常。
具体实施时,信号级故障通常通过继电器组实现在线切换到故障源,总线故障可以由仿真机直接发送错误格式的报文,逻辑级故障更多依赖于飞控计算机自身的故障注入接口。
最值得讲的是**“恰当的时刻”触发故障**。同样是速率陀螺信号断开,在飞机平飞时断开和在大机动拉杆时断开,对控制律造成的影响完全不同。所以故障注入用例不能只设定“注入什么故障”,还要精确设定“在什么飞行状态、什么控制模态、哪一帧数据之后开始注入”,并且故障注入时刻要能做毫秒级控制。我在试验中就经常设置一个触发条件:当飞机达到特定法向过载且俯仰角速率大于某值时,立刻注入迎角传感器静压故障。这种组合条件真实飞行中一旦发生,代价很重,但平台上一小时就能反复验证多次。
4.3 一次典型闭环试验的执行流程
纸上谈兵讲了这么多,落地执行到底长什么样?我完整走一遍一次典型的闭环试验流程,大概分六步。
第一步试验准备:加载飞控程序版本、确认实时仿真模型版本、配置试验场景参数、加载用例定义文件。这一步最关键的纪律是版本复核,我吃过亏——试验跑了一半发现用的还是旧版控制律,白跑半天加污染数据。从那次以后,试验开始前必须做版本指纹校验。
第二步平台预检:检查实时机负载率、IO通道自检结果、通信总线状态、时间同步是否锁定。预检全部通过才允许进入正式试验,任何一项异常都要先处理。
第三步开环通道检查:让仿真机处于固定状态,依次输出典型值给飞控计算机,验证传感器数据链路正常。这步通常耗时几分钟,但能拦住大概率低级错误。
第四步闭环滑跑:飞控计算机正常按启动流程进入工作状态,平台上的飞机模型从停机状态开始,通过地面滑跑模型加速,然后起飞进入预定航线。这样整个过程的连续性,可以把上电时序、模态转换、地面/空中切换逻辑都串起来测一遍。
第五步用例执行:按计划依次执行正常包线、边界、故障注入用例。故障用例要预留恢复时间,确保一个故障的影响被记录完整后再开始下一条用例。
第六步数据记录与报告:试验结束后,导出同步数据包、事件记录、平台日志,按用例维度生成测试报告,注明通过/失败、异常现象、相关曲线图。
4.4 试验数据管理与判据
半实物平台产生的数据量很大,尤其是总线数据加上模型数据可能达到几十万条每秒。如果不做结构化设计,后面分析数据会很痛苦。
我的推荐做法是“统一存储、分层提取”。底层保留原始采集数据,格式固定、时间戳统一;上层建立一个“试验数据索引表”,记录每个试验的用例编号、开始时间、结束时间、关键参数快照、结论标签;再上层是自动生成的报告。这样,哪怕半年后再回来查一个故障曲线,也能很快搜到。
判据方面,平台的关键价值不只是“跑过”,而是“量化地通过”。比如姿态超调量小于多少度、稳态误差小于多少、模态切换时间小于多少秒,这些都是预先写清楚的可量化判据。而不是“看上去曲线还行”。有了明确判据,测试结论才有说服力,评审时才说得清。
5. 常见问题与排查技巧实录
5.1 实时任务超时:排序就乱套了
半实物平台上最诡异也最难查的问题,就是“时有时无”的实时任务超时。现象通常是仿真机日志里偶尔报告控制任务超时,但频率不高,重启后可能连续几个小时不出现。可一旦在试验关键阶段出现一次,整个试验就得重来。
排查思路是抽丝剥茧式的。先用实时机的性能监控工具,记录每个任务的执行时间曲线,确定超时是周期性还是偶发。如果是偶发,多半是中断、驱动或后台任务干扰;如果是周期性的,则要检查模型计算量——比如系数表初始化、大量内存分配这些偶发操作。
我遇到过一个典型案例:实时机上某个数据记录任务,每次写日志时要临时申请内存,偶尔会发生内存碎片导致分配耗时飙升,把控制任务挤爆了一次。后来把记录任务改成预先分配缓冲区的方案,问题彻底消失。这类问题,我的排查顺序永远先是“看系统日志里超时点附近的上下文”,再是“看任务优先级和中断分布”,最后不得已才往模型计算量上看。优先级分配、中断亲和性、内存锁页这些底层配置,往往是根治问题的关键。
5.2 信号噪声与接地问题
飞控计算机接入半实物平台后,容易遇到模拟量通道噪声偏大的问题。最明显的现象是:明明注入的是干净的直流电压,飞控侧采集到的数值有小幅波动,凑近示波器一看全是高频毛刺。
这种问题十有八九和接地有关。半实物平台跨着仿真机、飞控计算机、舵机电源、负载台好几个设备,不同设备之间如果存在地电位差,就会形成地环路,噪声顺着地线串进信号里。解决方向就两条:一是单点接地,所有设备的地在一点汇集;二是信号隔离,用隔离放大器、隔离型AD/DA模块把信号的地和系统的地分开。
我在一次试验中还碰到过更隐蔽的:舵机功率电缆和模拟信号线走线距离太近,舵机一动作,功率线上的大电流变化就感应到信号线上,导致角度信号出现尖峰,飞控误判为传感器异常。后来把功率线和信号线分槽走线,问题当场消失。经验和教训浓缩成一句话:先查地,再查线,最后才查器件。
5.3 传感器数据时间戳不同步
半实物平台中,不同传感器数据经常从不同接口同时进入飞控计算机,但到平台记录端时,时间戳可能会出现几百微秒甚至几毫秒的偏差。这种偏差在平常看不出问题,但当你要精确分析某个故障瞬间的控制律响应时,偏差会直接误导判断。
根本原因是链路上的时间延迟不一致。比如ARINC429总线的一帧数据要等满周期才能发出,而RS422是即时发出;模拟量的采样保持电路又有RC延迟。解决思路是“链路延迟补偿”:给每类数据通道标定一个固定延迟时间,在数据进入统一的记录总线时,按标定值把时间戳校正到统一基准上。
我在平台里专门设计了一个“同步精度测试用例”:让仿真机同时通过不同接口发出同一个阶跃信号,飞控计算机收到后回发一个响应事件,用这个响应事件的时间差反复测量,统计各通道延迟的均值和方差。每半年标定一次,基本能把各通道延迟控制在几十微秒量级。
5.4 总线偶发错误与重试机制
总线通信故障在半实物测试中也很常见,尤其是当线缆老化或接头接触不良时。现象是:试验偶尔报一个总线错误,然后短时间内自动恢复,持续故障率不高,但“偶尔出现”四个字就够让人头疼了。
这类问题的排查,核心是把“偶发”变成“可复现”。我会在总线旁边挂一个协议分析仪,触发条件设为错误报文出现时抓包,然后反复注入已知的电磁干扰或机械振动,看能否复现。大多数时候,问题根源在连接器接触电阻或者线缆屏蔽层接地不良。
还有一种情况要特别注意:平台本身往总线上发错误帧,其实是为了测试飞控对错误报文的容错能力,但如果平台上其他正常任务也在往这条总线上发数据,就有可能在故障注入期间意外干扰测试逻辑。所以我的总线上一般会做“分区隔离”,正常通信数据和故障注入数据严格分时段使用,避免互相污染。
5.5 常见问题速查表
我把日常维护和试验中容易遇到的问题整理成了一个速查表,有新同事来,先发这个表让他对着查。不敢说覆盖全部情况,但至少能解决八成常见故障。
| 问题现象 | 可能原因 | 排查方向 |
|---|---|---|
| 控制任务偶尔超时 | 后台任务抢占、内存分配抖动 | 检查任务优先级与内存隔离 |
| 模拟量通道噪声大 | 接地环路、线缆干扰 | 检查单点接地与信号隔离 |
| 总线偶发错误报文 | 连接器接触不良、屏蔽层接地不良 | 协议分析仪抓包,机械检查 |
| 传感器时间戳不一致 | 链路延迟未补偿 | 定期做同步精度标定 |
| 飞控认为传感器故障 | 信号超量程或毛刺 | 示波器录波,查干扰源 |
| 模型解算周期超时 | 模型计算量过大、数据外推 | 降阶模型、检查气动数据包线 |
6. 平台置信度与后续扩展之路
6.1 平台自身的置信度怎么验证
半实物平台的测试结果要能支撑研发决策,平台自身就必须先“证明自己是对的”。这一步叫平台置信度验证,我建议用校飞数据或已有试飞数据做基准,把平台输出和真实飞行数据对比,计算关键参数的误差范围。
具体做法是:选择一次真实飞行剖面,把试飞记录的气动输入条件复现到平台模型上,然后对比飞控计算机在平台上的输出与试飞时的输出。如果姿态角、控制指令的曲线趋势一致,误差在允许范围内,这个平台判据就是可信的。
我做过一个项目,平台上跑出来的荷兰滚阻尼比老是比试飞数据小一截,排查后发现是气动模型里少了垂尾处的动压损失修正。修改模型参数后,平台输出和试飞数据高度吻合,后面的试验结论也终于被总师认可。这件事给我的教训是:平台置信度不是一次验证就一劳永逸,每次模型、硬件变更后都要做一轮回归比对。
6.2 从半实物到生态:平台还能怎么延伸
半实物平台的成果不止于测试本身。现在我所在团队的做法,是把平台建设成“飞控研发数据中台”,串联起模型在环、软件在环、硬件在环多个环节,所有验证数据统一入库,形成从需求到验证的完整闭环。
平台还可以延伸出很多有价值的方向。自动化回归测试:把关键用例脚本化,每天夜里自动跑一轮回归,早晨直接出报告,谁改了什么导致异常,系统自动标出来。故障注入库的积累:每个型号的故障模式、注入方法、飞控响应特征都沉淀下来,形成知识库,新同事上手速度快很多。多学科协同:把飞控仿真平台和航电仿真、视景仿真结合起来,组成航电综合试验环境,覆盖更多子系统交互场景。
半实物仿真平台建设的投入不小,但它带来的研发效率和安全性提升,是长期且扎实的。我个人的体会是:这套平台不是“锦上添花”的工具,而是飞控研发过程中一道绕不开的防线,是任何团队把产品推向真实天空之前,必须认真经营的一段路基。
最后分享一个小技巧:平台上长期积累的每一帧数据,都是你团队的隐形资产,比任何一台服务器都值钱。认真对待数据,平台会以十倍的价值回报你。