技术领域
[0002] 本发明涉及诊断测试方法,尤其涉及诊断装置、诊断系统的方法。
相关背景技术
[0003] 随着科技的发展,传统的系统测试和诊断手段已难以适用于日益复杂的军用和民用系统。这主要表现为故障检测率和隔离率低、虚警率高、维修周期长、费用高,特别是检测和隔离故障的时间太长、费用太高。
[0004] 本发明涉及的UUT(被测单元)属于复杂精密的电子装备,各LRU(现场可更换单元)、SRU(车间可更换单元)故障的多样性决定了故障诊断的复杂性和故障诊断方法的多样性,通常情况下单一故障诊断技术很难做到面面俱到,因此,需要找到一种能够满足多种诊断技术,快速检测和隔离故障的诊断测试方法。
具体实施方式
[0011] 为详细说明本发明的技术内容、构造特征、所达成目的及功效,下面将结合实施例并配合附图予以详细说明。
[0012] 请参阅图1,本发明一种诊断测试方法包括如下步骤:S1、通过测试软件对参数代码对应的测试项目进行测试而获得测试内容,该测试内容至少由测试日期时间、测试代号、测试项目、参数代码、实测值和结论中的几项组合而成;在该步骤中,每一个测试参数对应一个唯一的参数代码,比如,位移在X轴、Y轴和Z轴上的值对应三个测试参数,这样,需要测试位移中X轴的值对应一个参数代码(比如001),需要测试位移中Y轴的值对应另一个参数代码(比如002),需要测试位移中Z轴的值对应第三个参数代码(比如003)。至于测试软件对参数代码进行处理而产生测试内容属于已有成熟技术,在此不再赘述。所述测试内容根据诊断算法的不同包括的内容也各不相同,但是,每一项测试内容至少由测试日期时间、测试代号、测试项目、参数代码、实测值和结论中的几项组合而成,比如,对诊断算法A,测试内容由测试日期时间、测试代号、测试项目、参数代码和实测值组成;对诊断算法B,测试内容由测试日期时间、测试代号、测试项目、参数代码、实测值和结论组成。所述测试日期时间是对某个零件开始测试的时间,比如,13:20分开始测试导引头,则,13:20就是测试日期时间。测试代号是被测试零件的代号,比如,导引头01、陀螺
02等等。测试项目是被测试零件的某项内容,比如,陀螺的位移就是一个测试项目。实测值是测试项目的具体数据,比如,位移在X轴方向的值。结论是对测试值和参考值的判断结果。
[0013] S2、将测试内容写入数据库中的当前测试表和历史测试表并以写入测试内容的时间作为该测试内容的时间戳,在写入测试内容的同时判断测试内容中的实测值是否在正常的取值范围之内,若超出范围,使得使能标志有效,反之,使能标志无效。在该步骤中,如何写入数据可以采用已有成熟技术,在此不再赘述。写入测试内容和判断测试内容中的实测值是否在正常的取值范围内是并行步骤,确保时间戳和判断结果的时间一致性,从而,才能以时间戳为索引在当前测试内容中查找到准确的内容。
[0014] S3、在使能标志有效时触发诊断软件,并以所述参数代码和时间戳为索引在所述测试内容中查找该诊断软件所需要的输入数据,诊断软件处理该输入数据而产生诊断信息和诊断状态标志,每条诊断信息包括序号、时间、症状、定位、原因、策略、加测项目和测试代号并被写入数据库中的当前诊断表和历史诊断表。在该步骤中,诊断软件可以采用已有技术中的诊断软件,以参数代码和时间戳为索引在所述测试内容中查找诊断软件所需要的输入数据是指根据诊断软件的输入接口来确定,比如,A诊断算法需要测试代号、测试项目和实测值才能进行诊断,则,将以参数代码和时间中为索引查询到相应的测试代号、测试项目和实测值,然后,输入至诊断软件以便诊断软件进行诊断;B诊断算法需要测试代号、测试项目、实测值和结论才能进行诊断,则,以参数代码和时间戳为索引查询到相应的测试代号、测试项目、测试值和结论输入至诊断软件以便诊断软件诊断出结果。在本发明中,历史诊断表的每条诊断信息的各字段的含义如下表所示:字段变量 值(格式) 备注
序号 Int 当前诊断表/历史诊断表
时间 取主程序发送诊断指令所含的时间(格式由主程序定) 历史诊断表
症状 XXXXXXX字符串 当前诊断表/历史诊断表
定位 SXXX/LXXX字符串 当前诊断表/历史诊断表
原因 XXXX字符串 当前诊断表/历史诊断表
策略 XXXXXXX字符串 当前诊断表/历史诊断表
加测项目 MXXXXMXXXXMXXXX字符串 当前诊断表/历史诊断表
测试代号 XXXXXXX字符串 历史诊断表
在上述表中,“序号”字段表示成功启动诊断软件的次数,每次成功启动诊断软件,该序号将自动累加1。“症状”字段中内容为输入参数中的参数代码,表示本次诊断的顶事件是参数代码对应的测试参数超差。“定位”字符串长度为4个字符,字段格式为字符串SXXX/LXXX,SXXX表示SRU故障,LXXX为LRU故障,XXX表示故障形式代号,最大为999,通过该定位字段的内容可以获知故障源,比如,获知产生故障的零部件。“原因”字段最大长度为255个字符,格式为”PXXXX=XX.XX,上限为XX.XX,下限为XX.XX。”,原因是指故障产生的原因。
当涉及到多个参数代码时(“策略”字段数值为0),每个参数代码对应一个诊断结果记录。
“策略”字段中,有三组组合状态,测试软件读取诊断历史诊断表中序号最大的记录中的“策略”字段,因此序号最大的记录就是最新的历史诊断表,最新的历史诊断表中的序号最大的记录与当前诊断表中的记录相同,“策略”字段中0,表示诊断出故障结果,此时测试模块调用维修模块,维修模块读取诊断历史表中所有“策略”字段为0的记录(可能出现多故障),将这些记录中的“定位”字段的信息与已有的SRU/LRU数据库匹配,若匹配其中任意一个记录成功,则认为该条诊断信息有效,提取“定位”字段和“原因”字段的信息;“策略”字段中
1,表示未诊断出结果,也不需要再加测;“策略”字段中2,表示需要进行加测。加测项目为字符串,格式为MXXXXMXXXXMXXXX,最大长度为100个字符,即不会超过20个项目。
[0015] S4、传输诊断状态标志至测试软件,测试软件对诊断状态标志进行解析,在诊断状态标志为0时,表示诊断失败;在诊断状态标志为1时,测试软件在历史诊断表中查找出序号最大的诊断信息,在诊断信息中的策略字段为0时,表示诊断出结果,此种情况下,可以根据该条诊断信息中的“定位”字段调用维修软件维修相应故障,所述该条诊断信息可以从当前诊断表中获得,也可以从历史诊断表中序号最大的诊断信息中获得。在策略字段为0时,还可以在维修相应故障的情况下调取诊断信息中的“原因”字段的内容以便告知故障的原因;在诊断信息中的策略字段为1时,表示未诊断出结果;在诊断信息中的策略字段为
2时,测试软件通过提取加测项目字段,并进行解析将加测项目对应的组件级测试序列加载到测试软件,并根据步骤S1至S4对加测项目进行诊断。在该步骤中,加测后再次诊断时,与该加测项目和加测代码对应的测试值对应的使能标志为1,与该加测项目和加测代码相关的测试值在超出范围时,其对应的使能标志为0,比如说,位移中X轴的值和Y轴的值进行诊断后,还需要对Z轴的值进行加测才能诊断出结果,此种情况下,由于X轴和Y轴的值已经诊断过了,所以,与X轴和Y轴的值相对应的使能标志为0,如果Z轴对应的值不在正常范围,则,与Z轴的值对应的使能标志为1,这样,X轴的值和Y轴的值不会再被诊断,仅仅诊断Z轴值,从而,可以提高效率,但是,诊断Z轴的值的结果将写入数据库中的当前诊断表和历史诊断表中。
[0016] 综上所述,本发明采用数据库构建了测试信息、诊断信息交互和共享的平台,规范了诊断装置的输入输出接口定义,成功实现了测试软件和诊断软件的融合,该诊断系统可以兼容不同的诊断算法需求,提高了故障诊断的的效率和准确性,有效降低了虚警率。
[0017] 以上述技术思路为基础,本发明还公开一种诊断装置,该装置对测试软件的测试结果进行诊断,其特征在于:该诊断装置包括输入模块、触发模块、诊断软件和输出模块,其中,所述输入模块接收来自测试软件的使能标志、时间戳和参数代码,以时间戳和参数代码为索引在测试软件的测试内容中查找该诊断软件所需要的输入数据;所述触发模块在使能标志为1时,启动所述诊断软件,在使能标志为0时,不启动诊断软件;所述诊断软件被触发模块启动后处理查找到的输入数据而产生诊断信息和诊断状态标志,每条诊断信息包括序号、时间、症状、定位、原因、策略、加测项目和测试代号并被写入数据库中的当前诊断表和历史诊断表;所述输出模块输出诊断状态标志和诊断信息至所述测试软件。
[0018] 本发明还公开一种诊断系统,该诊断系统包括测试软件和诊断装置,其中,所述测试软件对参数代码对应的测试项目进行测试而获得测试内容,该测试内容至少由测试日期时间、测试代号、测试项目、参数代码、实测值和结论中的几项组合而成,将测试内容写入数据库中的当前测试表和历史测试表并以写入测试内容的时间作为该测试内容的时间戳,在写入测试内容的同时判断测试内容中的实测值是否在正常的取值范围之内,若超出范围,使得使能标志有效,反之,使能标志无效;诊断装置包括输入模块、触发模块、诊断软件和输出模块,其中,所述输入模块接收来自测试软件的使能标志、时间戳和参数代码,以时间戳和参数代码为索引在测试软件的测试内容中查找该诊断软件所需要的输入数据;所述触发模块在使能标志为1时,启动所述诊断软件,在使能标志为0时,不启动诊断软件;所述诊断软件被触发模块启动后处理查找到的输入数据而产生诊断信息和诊断状态标志,每条诊断信息包括序号、时间、症状、定位、原因、策略、加测项目、测试代号并被写入数据库中的当前诊断表和历史诊断表;所述输出模块输出诊断状态标志和诊断信息至所述测试软件;所述测试软件对诊断状态标志进行解析,在诊断状态标志为0时,表示诊断失败;在诊断状态标志为1时,测试软件在历史诊断表中查找出序号最大的诊断信息,在诊断信息中的策略字段为0时,根据该条诊断信息中的定位字段调用维修软件维修相应故障;在诊断信息中的策略字段为1时,表示未诊断出结果;在诊断信息中的策略字段为2时,读取诊断信息中的加测项目和加测代号进行加测,传输加测项目和加测代号对应的测试内容至诊断软件的输入模块以对加测项目进行诊断。在该方案中,所述测试软件在加测后,加测项目和加测代码的测试值在超出范围时,与该加测项目和加测代码对应的测试值对应的使能标志为1,与该加测项目和加测代码相关的测试值在超出范围时,其对应的使能标志为0。