公共数据库检索在模拟机维护中的应用
2021-07-30贝珩
贝 珩
(中国国际航空股份有限公司 培训部,北京 101300)
近10年的统计数字表明,模拟机仪表接口系统是模拟机故障率最高的系统,其故障占比达到各类系统故障总量的50%左右,维护人员在该系统中投入的工作量也相对较大。传统的故障性维护方式一般是根据故障点对应的电路连接,逐一测量和更换线路上的硬件设备,以期达到恢复模拟机正常功能的效果。以这种方式处理故障通常要面临3种困难:
① 所有相关设备的更换都需要对应的备件支持,并且新备件必须与原设备所在线路兼容;
② 测量点必须清晰可见,测量人员、测量设备和操作空间必须符合测量要求;
③ 为确保操作者和设备安全,必须暂停飞行训练,由至少二人协作、占用较长时间完成上述操作。
而在故障现象复杂的情况下,更换单一的备件并不能保证100%排除故障,当故障的症结存在于未被更换的器件上或者软件驱动和寻址方面,就应当采用从软件端对故障设备对应的特征变量(label)实施监测和控制的方法,来寻找故障的形成原因。
公共数据库(Common Datebase,CDB)检索也称为公共数据库查询技术,即在数据库文件或系统中对关键字搜索的结果进行分析、筛选和实验,并获得有用信息的技术[1]。使用CDB检索找到特定label的方法刚好符合模拟机接口系统复杂故障的排故需求,但它在现行的排故工作中并不通用,这主要有3方面原因:
① CDB是模拟机软件运行的动态参数库,厂家没有明确给出对CDB进行操作的方法和检出label的定义;
② 交互页面式的监控软件没有提供输入特定label实施监控的手段,仅能对软件中可视的label进行监控;
③ 对由时序信号控制并不断刷新状态的label进行赋值时,厂家没有告知保持其赋值状态的方法。
就上述问题开展研究,分析模拟机软硬件运行的原理,在CDB初始文件中,使用设备关键字检索的方法,找到可能影响设备状态的若干个label。而后通过命令行软件直接与模拟机运行时使用的CDB进行实时交互,穷举观察所有label赋值带来的设备状态变化。以期在不中断飞行训练的情况下,短时间内确定故障症结,提高排故的针对性、操作的安全性,并减少对飞行训练的干扰,这是采用CDB检索的排故方法预期达到的效果。
1 故障案例
中国国际航空股份有限公司737-800型飞行模拟机于质量自检中发现第三部无线电调谐面板的对侧调谐灯显示逻辑出现错误。根据中国国际航空股份有限公司737机组操作手册第五章第十节的描述,这类面板在737-800型飞机内共有3部,分别安装于中央控制台的左上(第1部)、右上(第2部)和中下(第3部),其英文名称为Radio Tuning Panel,简称RTP。
RTP的对侧调谐灯位于面板中上部,其显示逻辑正常时应符合中国国际航空股份有限公司737机组操作手册第五章第十节第七段的概括,即通常与这个面板连接的无线电正在由另一个无线电调谐面板调谐、或这个无线电调谐面板正在用于调谐通常不与它连接的无线电时,该灯显示为白色常亮[2]。也就是说对侧调谐灯逻辑的正常状态为熄灭状态,此时三部RTP各自与通常应当连接的无线电进行调谐,即RTP1选择调谐VHF1(Very High Frequency),RTP2选择调谐VHF2,RTP3在非备用状态时调谐VHF3。而当任何一个RTP调谐了其他RTP通常调谐的无线电频率时,这两个RTP的对侧调谐灯点亮。如:RTP1选择调谐VHF2,RTP2和RTP3保持正常调谐状态,此时RTP1和RTP2的对侧调谐灯点亮,RTP3的对侧调谐灯熄灭。
按照上述原则,使用穷举法采样三部RTP的27组对侧调谐灯显示逻辑,如表1所示。发现仅有RTP1的对侧调谐灯显示逻辑符合机组操作手册的描述,RTP2和RTP3的显示逻辑则呈现出相反的状态,即RTP2的对侧逻辑符合RTP3的调谐原则,RTP3的对侧逻辑符合RTP2的调谐原则。初步估计二者在接口电路中传输的控制信号发生了错误的互换。
表1 RTP对侧调谐灯显示逻辑采样表
2 模拟机仪表接口系统原理分析和CDB检索方法在排故中的应用
2.1 模拟机仪表接口系统原理分析
模拟机生产商利用波音、空客等飞机制造企业提供的、获取自真实飞机的特性数据,通过自行开发的主程序及其分支模块,将各个系统的仿真效果传递给模拟机用户[3]。这些系统通常可以分为计算机系统、仪表接口系统、运动和操纵系统、视景系统和声音系统[4]。
而上述故障发生在仪表接口系统中,对于这一系统的故障,传统的方法通常需要测量故障线路的信号是否正常受控,或者在电路图中找出故障线路的label,用软件对label进行赋值,再观察对应器件是否出现正常的响应。这种故障处理方式面临如下几个问题。
① 可靠的电子产品在设计时通常会考虑,在环境温度、工作载荷和持续使用时间等因素的影响下,发生元件参数退化或小范围特性漂移时,产品性能指标仍在关联设备可识别的容差范围内,部分电路的潜在故障可以被消除或容忍[5]。但由于RTP2和RTP3的显示逻辑不是单独出现错误,而是发生了完整互换,其各自的接口设备同时存在对称的显性故障的可能性微乎其微,因此单纯更换接口设备以消除故障的概率较低。
② 机载设备的功能复杂,对应的接口模块类型较多,为了维护方便,在设计时一般采用将串行数据模块和ARINC模块分别以单独的接口板卡形式与用户操作面板连接[6],同时遵循以最小可更换器件为单元,将每个RTP面板对应的接口设备GPIM(General Purpose Interface Module)设计为3个,如果同时更换2个RTP对应的GPIM,将为接口系统引入7个不同类型的新设备,所需的备件数量和投入的工作时间都很多,新设备的兼容性隐患也非常大[7]。
③ GPIM是封闭安装的设备,没有外部可视的测量点,仅可使用专用设备将测量点引出才能进行测量,同时RTP面板除接收处理串口信号外,还接收ARINC信号,这种时序信号需要专用设备测量,使用一般的工具无法得到有效的测量结果。
④ 如果信号的互换错误发生在接口设备上,更换对应GPIM可以排除故障,但如果信号的互换错误发生在主机(Host)端,那么更换GPIM就毫无意义,必须对主机端软件进行进一步处理。
因此必须选用软件监控的方法,从主机端着手,尝试分别控制RTP2和RTP3,并对产生的现象加以分析,找出发生信号错误互换的设备。
2.2 CDB检索方法在排故中的应用
对于使用一般的串行数据控制的设备,厂家大多会给出每个器件对应的label,正常情况下这些器件可使用特定的监测软件通过控制label的数值呈现出相应的现象变化,如:灯光亮灭、指针转动等。而在模拟机内对设备进行如:电门开合、旋钮转动等操作,也可以在监测软件上观察到label数值的变化。
RTP面板既用到串口信号也用到ARINC信号,其接口电路如图1所示,主机通过以太网将串行和ARINC数据发送到节点计算机(USB_IO),再由节点计算机通过简化PCI总线发送到功能分立的GPIM上,负责串行接口的普通GPIM将信号分为数字量和模拟量的输入输出与下游器件实现驱动和交互,而负责ARINC信号的特殊接口卡GPIM_AC则通过板载的FPGA模块与相关设备建立联系[8]。
图1 RTP面板接口电路原理图
串行信号一般控制面板上的按键、旋钮和灯光,这些功能都在模拟机的CDB中有相应的定义,这种定义被称为label,可以通过在主机端运行的接口软件ITMS(Integrated Test Management System)对这些label实现监测和控制。凭借对这些label的赋值和观察,可以直观地发现接口设备是否存在故障情况,并且可使用万用表等常用测量工具,通过由专用工具引出的测量点,获得对应插针的电压值。比如:在ITMS上,对某指示灯的label进行赋值,同时检查灯光的状态,如果无论赋予的逻辑是“0”还是“1”,灯光始终亮起,则可以认为对应的GPIM存在故障,并输出了错误的驱动信号。但对于使用ARINC429协议的链路采用同样的方法很难取得成效,这种协议传输的是双极归零式调制信号,即频率为12.5~100 kbit/s的周期性连续信号,其传输字格式如表2所示。
表2 ARINC429传输字的格式[9]
这种信号的逻辑特性遵循以下原则:由高电平+5 V回归到零电平表示逻辑“1”,由低电平-5 V回归到零电平表示逻辑“0”。同时其信号发送和接收设备也不是常见的逻辑信号保持器,而是综合译码逻辑、控制逻辑、实时时钟和中断的集成模块FPGA(Field Programmable Gate Array),因此只能使用示波器等不常用手段观察其信号状态,很难作为有效的故障判断依据[10]。虽然原理上讲ARINC信号有对应的label,但在电路图中,这些label往往不被直接给出,想要控制这类信号必须寻找到与之相关的上游label。
假设一个ARINC逻辑信号的函数模型为
A{0,1}=F(a,b,c,…,n)
如果找到任何一个可控的变量a,b,c,…,n,在对这一变量进行赋值的同时,保持其他所有变量不变,能够使A的值发生变化,则可以认为A能够单独被上述变量控制。也就是说,当CDB中存在一个可以单独控制某路ARINC逻辑的label时,可以通过在赋值该label的同时观察RTP面板状态的变化,来确定GPIM、ARINC设备或链路是否存在故障,以期实施有针对性的软硬件调整。
由于CDB文件中含有的变量包含了所有的输入/输出变量和所有系统之间,甚至是系统内部模块之间的交连变量,如图2所示[11]。因此对CDB文件进行检索,一般可以发现直接或者间接控制ARINC设备各种功能的特定label。
图2 模拟机数据库文件内容示意
根据模拟机的软件运行原理,模拟机各个节点计算机和接口设备会从在用的配置下辖的CDB中调用label。这些CDB的初始文件可以借助Windows系统,在主机端的各个configuration文件夹下,使用*cdb*关键字搜索获得,而与ARINC协议相关的初始文件,也可以用*arinc*关键字搜索获得,此故障中涉及到的两个文件为b73x2.cdb和b73xarinc.csv。可以使用UltraEdit等软件打开上述CDB文件,并在其中继续搜索与RTP相关的label,对比两个文件中描述语句具有相关性的label,可以发现数十项与一般label存在关联的ARINC逻辑。
由于这些label在ITMS中缺少调用接口,因此使用监控工具CTS-PLUS(Control Test System)来进行label赋值,CTS的工作原理如图3所示。
图3 CTS软件工作原理
可以看到,CTS将获取到的初始数据通过同步和异步进程按照主程序的要求写入CDB,模拟机执行来自CDB的初始输出后,再根据模拟机使用者的人为输入形成反馈,并发往CDB中,CTS此时再通过同步和异步进程从CDB中获取反馈数据,以实现监测和控制。ARINC逻辑通常在同步进程中进行运算和传递,并且刷新频率较高。如果通过赋值其相关label来改变ARINC逻辑,则可能会发生赋值当时所生成的ARINC输出在下一个时钟周期到来时即被刷新回原有状态的现象,这会令监测者无法看到机舱端发生的变化,因此在CTS中进行label赋值操作前,可以对模拟机进行飞行冻结(Flight Freeze),此时大部分同步进程会暂停刷新,操作者此时再行赋值,模拟机主程序只对发生赋值的label和由此产生的单次运算结果进行响应,对应的机舱端现象可以保留下来,直至冻结解除。
在上述故障中,通过搜索找到影响RTP2和RTP3对侧调谐灯的label后,发现当对RTP2的相关label进行赋值改变其逻辑状态时,对侧调谐灯发生亮暗变化的是RTP3;反之当对RTP3的相关label进行赋值改变其逻辑状态时,对侧调谐灯发生亮暗变化的是RTP2;同时赋值RTP1的相关label,仅有RTP1会有对应现象。由此可以断定主程序发出的指令在接口链路中而不是主机端发生错误互换。此后检查RTP2和RTP3的地址定义列表,发现两路接口设备的地址定义与正常值相反,重新进行接口设备固件烧录后,故障现象消失。
3 结束语
通过公共数据库检索,找出待测设备对应的特征变量,并结合CTS软件进行赋值,是一种高效、准确和安全的仪表接口系统故障排查方法。大量的工作验证这种方法可以应用于CAE公司生产的不同机型,不同技术代别的各类模拟机中。运用该种方法处理关闭的故障有:B737-800型CLASSIC模拟机气象雷达面板增益旋钮功能不正常、B737-Max型XR模拟机灯光测试开关常闭、A330型SIMXXI模拟机黄系统渗油测试阀开关常开、A320型R4模拟机时钟计时器失效等。
故障性维护对工程人员的要求主要是对故障的快速定位和隔离,同时应兼顾以最小的维护成本换取故障的排除。一般熟练的工程人员能够在1 h内完成label检索和赋值,而更换对应接口设备或节点计算机的工时都相对更长,从搜寻备件到断电更换,再到对主机进行相应的软件更新,耗时通常在2 h以上,同时还可能引入新备件兼容性带来的故障隐患。如果对电路进行直接测量,除去可能存在的触电或损伤电路的风险外,还可能遇到测量点难以确认或接触、信号特殊无法用常规设备采样等问题。而在机舱端对故障现象的观察也是通过CTS赋值的方式最为便捷。因此该种方法应在模拟机仪表接口系统的故障处理中被优先考虑和应用。