本发明涉及汽车技术领域,具体涉及一种汽车电子控制模块诊断功能的测试方法和系统。
背景技术:
随着汽车网络的发展,汽车电子控制模块的功能变得越来越强大,汽车诊断技术也越来越重要。汽车诊断技术可实现汽车的在线诊断,不仅在整车生产下线和售后维修中有着不可替代的作用,而且还可以在控制模块的开发过程中能及早的发现问题,提高了汽车网络的开发进度。因此,对整车厂的诊断开发和测试的要求就越来越严格,但诊断功能繁琐并且内容量较大,若仅依靠人工来进行测试所耗费的时间较长,而且还会因人为原因导致一定的出错率,因此实现汽车电子控制模块诊断功能的快速测试如自动化测试变得很有必要。
技术实现要素:
本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种汽车电子控制模块诊断功能的测试方法,该测试方法能够实现电子控制模块的自动化测试,提高了电子控制模块诊断功能的测试效率和可靠性。
本发明的第二个目的在于提出一种汽车电子控制模块诊断功能的测试系统。
为实现上述目的,本发明第一方面实施例提出了一种汽车电子控制模块诊断功能的测试方法,包括以下步骤:S1,向电子控制模块发送与诊断功能对应的多个诊断请求命令,其中,所述诊断功能包括故障码的验证功能和诊断服务功能;S2,根据电子控制模块的诊断规范和所述电子控制模块返回的与所述多个诊断请求命令对应的多个诊断响应数据判断所述诊断功能的测试是否通过。
本发明实施例的汽车电子控制模块诊断功能的测试方法,通过向电子控制模块发送与诊断功能对应的诊断请求数据、实时接收诊断响应数据,并根据诊断规范对诊断响应数据进行验证,以判断诊断功能是否通过测试,由此,实现了电子控制模块的自动化测试,提高了电子控制模块诊断功能的测试效率和可靠性。
另外,根据本发明上述实施例的汽车电子控制模块诊断功能的测试方法还可以具有如下附加的技术特征:
根据本发明的一个实施例,在所述向电子控制模块发送与所述诊断功能对应的所述诊断请求命令之前,还包括:向所述电子控制模块发送读取故障码的请求命令;判断所述电子控制模块返回的响应数据中是否存在故障码。
根据本发明的一个实施例,如果所述诊断功能为所述故障码的验证功能,则在所述向所述电子控制模块发送读取故障码的请求命令之前,还包括:向所述电子控制模块发送清除待测试故障码的请求命令。
根据本发明的一个实施例,所述步骤S1-S2包括:a、模拟与所述待测试故障码对应的故障,以使所述电子控制模块产生所述待测试故障码;b、在所述电子控制模块产生所述待测试故障码的时间达到第一预设时间时,向所述电子控制模块发送读取故障码的请求命令;c、如果所述电子控制模块返回的响应数据中不存在当前状态或历史状态的所述待测试故障码,则控制所述电子控制模块产生所述待测试故障码的时间以预设时间间隔增加,并重复步骤b-c,直至所述电子控制模块产生所述待测试故障码的持续时间达到第二预设时间;d、在所述电子控制模块产生所述待测试故障码的持续时间达到所述第二预设时间时,向所述电子控制模块发送读取故障码的请求命令;e、如果所述电子控制模块返回的响应数据中存在当前状态的所述待测试故障码,则撤销模拟故障,并向所述电子控制模块发送读取故障码的请求命令;f、如果所述电子控制模块返回的响应数据中存在历史状态的所述待测试故障码,则向所述电子控制模块发送清除故障码的请求命令,以清除所述历史状态的待测试故障码;g、在所述电子控制模块的所述历史状态的待测试故障码清除后,向所述电子控制模块发送读取故障码的请求命令;h、如果所述电子控制模块返回的响应数据中不存在所述待测试故障码,则判断所述待测试故障码测试通过。
根据本发明的一个实施例,所述诊断服务功能包括动态数据读取功能、车辆配置功能、强制输入输出功能和例程功能。
根据本发明的一个实施例,如果所述诊断功能为车辆配置功能,则步骤S1-S2包括:向所述电子控制模块发送写入预设配置的第一请求命令,以使所述电子控制模块存在与所述预设配置对应的功能;根据所述诊断规范以及所述电子控制模块返回的响应数据判断所述电子控制模块是否存在与所述预设配置对应的功能;如果所述电子控制模块存在与所述预设配置对应的功能,则向所述电子控制模块发送写入预设配置的第二请求命令,以使所述电子控制模块取消与所述预设配置对应的功能;根据所述诊断规范以及所述电子控制模块返回的响应数据判断所述电子控制模块是否取消了与所述预设配置对应的功能;如果所述电子控制模块取消了与所述预设配置对应的功能,则判断所述车辆配置功能测试通过。
根据本发明的一个实施例,如果所述诊断功能为强制输入输出功能,则所述步骤S1-S2包括:向所述电子控制模块发送读取待测试输入/输出状态的请求命令;如果当前待测试输入/输出状态为关闭状态,则向所述电子控制模块发送强制打开待测试输入/输出状态的请求命令;根据所述诊断规范和所述电子控制模块返回的响应数据判断当前输入/输出状态是否为打开状态;如果当前输入/输出状态为打开状态,则向所述电子控制模块发送强制关闭输入/输出的请求命令;根据所述诊断规范和所述电子控制模块返回的响应数据判断当前输入/输出状态是否为关闭状态;如果当前输入/输出状态为关闭状态,则向所述电子控制模块发送返回正常的请求命令;根据所述诊断规范和所述电子控制模块返回的响应数据判断所述电子控制模块是否退出强制输入/输出模式;如果所述电子控制模块退出强制输入/输出模式,则判断强制输入输出功能测试通过。
根据本发明的一个实施例,如果所述诊断功能为例程功能,则所述步骤S1-S2包括:向所述电子控制模块发送例程开始的请求命令;根据所述诊断规范和所述电子控制模块返回的响应数据判断所述电子控制模块是否进入例程功能;如果所述电子控制模块进入例程功能,则向所述电子控制模块发送例程请求结果的请求命令;判断所述电子控制模块返回的响应数据是否符合所述诊断规范;如果所述电子控制模块返回的响应数据符合所述诊断规范,则向所述电子控制模块发送例程结束的请求命令;如果根据所述诊断规范和所述电子控制模块返回的响应数据判断所述电子控制模块退出例程功能,则判断所述例程功能测试通过。
为实现上述目的,本发明第二方面实施例提出了一种汽车电子控制模块诊断功能的测试系统,包括:发送模块,用于向电子控制模块发送与诊断功能对应的多个诊断请求命令,其中,所述诊断功能包括故障码的验证功能和诊断服务功能;判断模块,用于根据电子控制模块的诊断规范和所述电子控制模块返回的与所述多个诊断请求命令对应的多个诊断响应数据判断所述诊断功能的测试是否通过。
本发明实施例的汽车电子控制模块诊断功能的测试系统,通过发送模块向电子控制模块发送与诊断功能对应的诊断请求数据、并实时接收诊断响应数据,进而通过判断模块根据诊断规范对诊断响应数据进行验证,以判断诊断功能是否通过测试,由此,实现了电子控制模块的自动化测试,提高了电子控制模块诊断功能的测试效率和可靠性。
另外,根据本发明上述实施例的汽车电子控制模块诊断功能的测试系统还可以具有如下附加的技术特征:
根据本发明的一个实施例,所述发送模块,还用于在向所述电子控制模块发送与诊断功能对应的多个诊断请求命令之前,向所述电子控制模块发送读取故障码的请求命令;所述判断模块,还用于根据所述诊断规范判断所述电子控制模块返回的与所述读取故障码的请求命令对应的响应数据中是否存在故障码。
根据本发明的一个实施例,如果所述诊断功能为所述故障码的验证功能,则所述发送模块还用于在向所述电子控制模块发送读取故障码的请求命令之前,向所述电子控制模块发送清除待测试故障码的请求命令。
根据本发明的一个实施例,所述测试系统还包括:模拟模块,用于模拟与所述待测试故障码对应的故障,以使所述电子控制模块产生所述待测试故障码;控制模块,用于在所述电子控制模块产生所述待测试故障码的时间达到第一预设时间,所述发送模块向所述电子控制模块发送读取故障码的请求命令,所述判断模块判断所述电子控制模块返回的响应数据中不存在当前状态或历史状态的所述待测试故障码时,控制所述电子控制模块产生所述待测试故障码的时间以预设时间间隔增加,其中,在所述电子控制模块产生所述待测试故障码的时间增加的过程中,重复发送、判断和控制的过程,直至所述电子控制模块产生所述待测试故障码的持续时间达到第二预设时间;撤销模块,用于在所述电子控制模块产生所述待测试故障码的持续时间达到所述第二预设时间,所述发送模块向所述电子控制模块发送读取故障码的请求命令,所述判断模块判断所述电子控制模块返回的响应数据中存在当前状态的所述待测试故障码时,撤销模拟故障;其中,所述发送模块,还用于在所述模拟故障撤销后,向所述电子控制模块发送读取故障码的请求命令,以及在所述判断模块判断所述电子控制模块返回的响应数据中存在历史状态的所述待测试故障码时,向所述电子控制模块发送清除故障码的请求命令,以清除所述历史状态的待测试故障码,并在所述电子控制模块的所述历史状态的待测试故障码清除后,向所述电子控制模块发送读取故障码的请求命令,在所述电子控制模块返回的响应数据中不存在所述待测试故障码时,所述判断模块判断所述待测试故障码测试通过。
根据本发明的一个实施例,所述诊断服务功能包括动态数据读取功能、车辆配置功能、强制输入输出功能和例程功能。
根据本发明的一个实施例,如果所述诊断功能为车辆配置功能,则所述发送模块,还用于向所述电子控制模块发送写入预设配置的第一请求命令,以使所述电子控制模块存在与所述预设配置对应的功能,并在所述电子控制模块存在与所述预设配置对应的功能时,向所述电子控制模块发送写入预设配置的第二请求命令,以使所述电子控制模块取消与所述预设配置对应的功能;所述判断模块,还用于根据所述诊断规范以及所述电子控制模块返回的与所述第一请求命令对应的响应数据判断所述电子控制模块是否存在与所述预设配置对应的功能,以及根据所述诊断规范以及所述电子控制模块返回的与所述第二请求命令对应的响应数据判断所述电子控制模块是否取消了与所述预设配置对应的功能,以及判断所述车辆配置功能测试是否通过。
根据本发明的一个实施例,如果所述诊断功能为强制输入输出功能,则所述发送模块,还用于向所述电子控制模块发送读取待测试输入/输出状态的请求命令,并在当前待测试输入/输出状态为关闭状态时,向所述电子控制模块发送强制打开待测试输入/输出状态的请求命令,以及在当前输入/输出状态为打开状态时,向所述电子控制模块发送强制关闭输入/输出的请求命令,并在当前输入/输出状态为关闭状态时,向所述电子控制模块发送返回正常的请求命令;所述判断模块,还用于根据所述诊断规范和所述电子控制模块返回的与所述强制打开待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为打开状态,根据所述诊断规范和所述电子控制模块返回的与所述强制关闭待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为关闭状态,根据所述诊断规范和所述电子控制模块返回的与所述返回正常的请求命令对应的响应数据判断所述电子控制模块是否退出强制输入/输出模式,以及判断强制输入输出功能测试是否通过。
根据本发明的一个实施例,如果所述诊断功能为例程功能,则所述发送模块,还用于向所述电子控制模块发送例程开始的请求命令,在所述电子控制模块进入例程功能时,向所述电子控制模块发送例程请求结果的请求命令,以及在所述电子控制模块返回的与所述例程请求结果的请求命令对应的响应数据符合所述诊断规范时,向所述电子控制模块发送例程结束的请求命令;所述判断模块,还用于根据所述诊断规范和所述电子控制模块返回的与所述例程开始的请求命令对应的响应数据判断所述电子控制模块是否进入例程功能,判断所述电子控制模块返回的与所述例程请求结果的请求命令对应的响应数据是否符合所述诊断规范,以及根据所述诊断规范和所述电子控制模块返回的与所述例程结束的请求命令对应的响应数据判断所述电子控制模块是否退出例程功能,以及判断所述例程功能测试是否通过。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明实施例的汽车电子控制模块诊断功能的测试方法的流程图;
图2-图6分别是根据本发明具体实施例的汽车电子控制模块诊断功能的测试方法的流程图;
图7是根据本发明实施例的汽车电子控制模块诊断功能的测试系统的方框图;
图8是根据本发明一个实施例的汽车电子控制模块诊断功能的测试系统的方框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的汽车电子控制模块诊断功能的测试方法和系统。
图1是根据本发明实施例的汽车电子控制模块诊断功能的测试方法的流程图。如图1所示,该汽车电子控制模块诊断功能的测试方法包括:
S1,向电子控制模块发送与诊断功能对应的多个诊断请求命令。
在本发明的实施例中,诊断功能包括故障码的验证功能和诊断服务功能,其中,诊断服务功能包括动态数据读取功能、车辆配置功能、强制输入输出功能和例程功能。
可选地,测试员可以通过测试平台上设置的操作面板或相关软件选择需要测试的电子控制模块诊断功能。
需要说明的是,在本发明的一个实施例中,在步骤S1之前,该测试方法还可以包括:向电子控制模块发送读取故障码的请求命令;根据诊断规范判断电子控制模块返回的与读取故障码的请求命令对应的响应数据中是否存在故障码,以消除故障对电子控制模块诊断功能测试的干扰。
进一步地,在与读取故障码的请求命令对应的响应数据中不存在故障码时,向电子控制模块发送与诊断功能对应的诊断请求命令。
在本发明的一个实施例中,如果诊断功能为故障码的验证功能,则在向电子控制模块发送读取故障码的请求命令之前,还可以向电子控制模块发送清除待测试故障码的请求命令,以消除对电子控制模块待测试故障码的验证功能的测试干扰。
可以理解的是,在进行诊断功能的测试之前,需要确保前置条件正常,其中前置条件可以包括电压范围、点火开关状态、配置信息、测试环境等。
S2,根据电子控制模块的诊断规范和电子控制模块返回与多个诊断请求命令对应的多个诊断响应数据判断诊断功能的测试是否通过。
在本发明的一个实施例中,诊断规范可以但不限于是ISO14229和ISO15765诊断规范。
可以理解的是,在对诊断功能进行测试时,还可以实时显示测试过程,由此,使得测试员能够直观地了解测试情况,方便测试员对测试过程中存在的问题进行针对性的解决。
具体地,在本发明的第一个实施例中,电子控制模块的故障码的验证功能的测试方法包括:
S101,向电子控制模块发送清除待测试故障码的请求命令。
可选地,在电子控制模块在接收到清除待测试故障码的请求命令后掉电,并重新上电,以确保电子控制模块中不存在历史状态的待测试故障码。
S102,向电子控制模块发送读取故障码的请求命令。
S103,判断电子控制模块返回的与读取故障码的请求命令对应的响应数据中是否存在故障码。
S104,如果与读取故障码的请求命令对应的响应数据中不存在故障码,则模拟与待测试故障码对应的故障,以使电子控制模块产生待测试故障码。
可选地,该模拟故障功能可以是根据步骤S103中的判断结果自动运行产生的,也可以是测试员根据需要选择的。
S105,在电子控制模块产生待测试故障码的时间达到第一预设时间时,向电子控制模块发送读取故障码的请求命令。
在本发明的一个实施例中,电子控制模块产生故障码的时间是一定的,设为T,则第一预设时间可以是0.8*T。
S106,如果电子控制模块返回的响应数据中不存在当前状态或历史状态的待测试故障码,则以预设时间间隔增加产生待测试故障码的时间,并重复步骤S105-S106,直至电子控制模块产生待测试故障码的持续时间达到第二预设时间。
在本发明的一个实施例中,预设时间可以是0.1*T。
可以理解的是,第二预设时间即为电子控制模块产生故障码的时间,为T。
需要说明的是,如果故障码的验证功能正常,则在电子控制模块产生待测试故障码的时间为0.8*T、0.9*T时,电子控制模块返回的响应数据中均不应存在当前状态或历史状态的待测试故障码。
S107,在电子控制模块产生待测试故障码的持续时间达到第二预设时间时,向电子控制模块发送读取故障码的请求命令。
S108,如果电子控制模块返回的响应数据中存在当前状态的待测试故障码,则撤销模拟故障,并向电子控制模块发送读取故障码的请求命令。
S109,如果电子控制模块返回的响应数据中存在历史状态的待测试故障码,则向电子控制模块发送清除故障码的请求命令,以清除历史状态的待测试故障码。
S110,在电子控制模块的历史状态的待测试故障码清除后,继续向电子控制模块发送读取故障码的请求命令。
S111,如果电子控制模块返回的响应数据中不存在待测试故障码,则判断待测试故障码测试通过。
需要说明的是,电子控制模块的待测试故障码有多个,一般有几十个,可以通过以上步骤S101-S111依次对每个待测试故障码进行测试。
由此,通过对不存在故障码的电子控制模块设置模拟故障,以使其产生待测试故障码,进而对该待测试故障码进行读取、清除等操作,并在所有操作返回的响应数据满足相应的要求时,判断该待测试故障码的测试通过,实现了待测试故障码的自动化测试,提高了测试效率和可靠性。
在本发明的第二个实施例中,对电子控制模块的动态数据读取功能进行测试时,可以模拟与测试数据相关的条件,进而发送读取模拟条件下该状态的服务请求,在电子控制模块返回的响应数据与所模拟的状态相符时,判断该动态数据读取功能测试通过。
具体地,以一个开关的状态数据读取为例,说明电子控制模块动态数据读取功能的测试方法,该方法包括以下步骤:
S201,模拟开关的打开状态。
S202,向电子控制模块发送读取开关状态的请求命令。
S203,判断电子控制模块返回的响应数据是否正确。
S204,如果电子控制模块返回的响应数据正确,则模拟开关的关闭状态。
S205,向电子控制模块发送读取该开关状态的请求命令。
S206,判断电子控制模块返回的响应数据是否正确。
S207,如果电子控制模块返回的响应数据正确,则判断该开关动态读取功能的测试通过。
由此,通过模拟与动态数据相关的条件,进而发送读取该状态的请求命令,并在返回的响应数据满足相应的要求时,判断该动态数据读取功能的测试通过,实现了动态数据读取功能的自动化测试,提高了测试效率和可靠性。
在本发明的第三个实施例中,对电子控制模块的车辆配置功能的测试方法包括:
S301,向电子控制模块发送读取故障码的请求命令。
S302,判断电子控制模块返回的响应数据中是否存在故障码。
S303,如果与读取故障码的请求命令对应的响应数据中不存在故障码,则向电子控制模块发送写入预设配置的第一请求命令,以使电子控制模块存在与预设配置对应的功能。
S304,根据诊断规范以及电子控制模块返回的与第一请求命令对应的响应数据判断电子控制模块是否存在与预设配置对应的功能。
S305,如果电子控制模块存在与预设配置对应的功能,则向电子控制模块发送写入预设配置的第二请求命令,以使电子控制模块取消与预设配置对应的功能。
S306,根据诊断规范以及电子控制模块返回的与第二请求命令对应的响应数据判断电子控制模块是否取消了与预设配置对应的功能。
S307,如果电子控制模块不存在与预设配置对应的功能,则判断车辆配置功能测试通过。
需要说明的是,预设配置有多个,可以根据上述步骤依次对每个电子控制模块的车辆配置功能进行测试。
由此,通过向电子控制模块写入与车辆配置对应请求命令,以使电子控制模块具有相应的功能,进而发送读取该功能是否实现的请求命令,并在返回的响应数据满足相应的要求时,判断该车辆配置功能的测试通过,实现了动态数据读取功能的自动化测试,提高了测试效率和可靠性。
在本发明的第四个实施例中,电子控制模块强制输入输出功能的测试方法包括:
S401,向电子控制模块发送读取故障码的请求命令。
S402,判断电子控制模块返回的响应数据中是否存在故障码。
S403,如果电子控制模块返回的响应数据中不存在故障码,则向电子控制模块发送读取待测试输入/输出状态的请求命令。
S404,如果当前待测试输入/输出状态为关闭状态,则向电子控制模块发送强制打开待测试输入/输出状态的请求命令。
S405,根据诊断规范和电子控制模块返回的与强制打开待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为打开状态。
S406,如果当前输入/输出状态为打开状态,则向电子控制模块发送强制关闭输入/输出的请求命令。
S407,根据诊断规范和电子控制模块返回的与强制关闭待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为关闭状态。
S408,如果当前输入/输出状态为关闭状态,则向电子控制模块发送返回正常的请求命令。
S409,根据诊断规范和电子控制模块返回的与返回正常的请求命令对应的响应数据判断电子控制模块是否退出强制输入/输出模式。
S410,如果电子控制模块退出强制输入/输出模式,则判断强制输入输出功能测试通过。
由此,通过读取当前的输入输出状态,向电子控制模块发送强制输入/输出的请求命令,进而在请求命令返回的响应数据满足相应的要求时,判断强制输入输出功能的测试通过,实现了动态数据读取功能的自动化测试,提高了测试效率和可靠性。
在本发明的第五个实施例中,对电子控制模块例程学习功能进行测试的方法包括:
S501,向电子控制模块发送读取故障码的请求命令。
S502,判断电子控制模块返回的与读取故障码的请求命令对应的响应数据中是否存在故障码。
S503,如果电子控制模块返回的响应数据中不存在故障码,向电子控制模块发送例程开始的请求命令。
S504,根据诊断规范和电子控制模块返回的与例程开始的请求命令对应的响应数据判断电子控制模块是否进入例程功能。
S505,如果电子控制模块进入例程功能,则向电子控制模块发送例程请求结果的请求命令。
S506,判断电子控制模块返回的与例程请求结果的请求命令对应的响应数据是否符合诊断规范。
S507,如果电子控制模块返回的与例程请求结果的请求命令对应的响应数据符合诊断规范,则向电子控制模块发送例程结束的请求命令。
S508,如果根据诊断规范和电子控制模块返回的与例程结束的请求命令对应的响应数据判断电子控制模块退出例程功能,则判断例程功能测试通过。
由此,通过读取当前的输入输出状态,向电子控制模块发送强制输入/输出的请求命令,进而在请求命令返回的响应数据满足相应的要求时,判断强制输入输出功能的测试通过,实现了动态数据读取功能的自动化测试,提高了测试效率和可靠性。
需要说明的是,上述测试实施例也可以通过手动实现,具体操作过程不做限定。
本发明实施例的汽车电子控制模块诊断功能的测试方法,通过向电子控制模块发送与诊断功能对应的诊断请求数据、实时接收诊断响应数据,并根据诊断规范对诊断响应数据进行验证,以判断诊断功能是否通过测试,由此,实现了电子控制模块的自动化测试,提高了电子控制模块诊断功能的测试效率和可靠性。
图7是根据本发明实施例的汽车电子控制模块诊断功能的测试系统。如图7所示,该系统包括:发送模块100、接收模块200和判断模块300。
在本发明的实施例中,诊断功能包括故障码的验证功能和诊断服务功能,其中,诊断服务功能包括动态数据读取功能、车辆配置功能、强制输入输出功能和例程功能。
其中,诊断功能包括故障码的验证功能和诊断服务功能;
在本发明的一个实施例中,发送模块100还用于在向电子控制模块发送与诊断功能对应的多个诊断请求命令之前,向电子控制模块发送读取故障码的请求命令;判断模块300还用于根据诊断规范判断电子控制模块返回的与读取故障码的请求命令对应的响应数据中是否存在故障码。
在本发明的第一个实施例中,如果诊断功能为故障码的验证功能,则发送模块100还用于在向电子控制模块发送读取故障码的请求命令之前,向电子控制模块发送清除待测试故障码的请求命令。
具体地,如图8所示,测试系统还可以包括:模拟模块400、控制模块500和撤销模块600。
其中,模拟模块400用于模拟与待测试故障码对应的故障,以使电子控制模块产生待测试故障码;在电子控制模块产生待测试故障码的时间达到第一预设时间后,发送模块400向电子控制模块发送读取故障码的请求命令,如果判断模块300判断电子控制模块返回的响应数据中不存在当前状态或历史状态的待测试故障码时,控制模块500用于控制电子控制模块产生待测试故障码的时间以预设时间间隔增加。
需要说明的是,在电子控制模块产生待测试故障码的时间增加的过程中,重复发送、判断和控制的过程,直至电子控制模块产生待测试故障码的持续时间达到第二预设时间。
进一步地,在电子控制模块产生待测试故障码的持续时间达到第二预设时间时,发送模块100向电子控制模块发送读取故障码的请求命令,且判断模块300判断电子控制模块返回的响应数据中存在当前状态的待测试故障码时,撤销模块600用于撤销模拟故障。
更进一步地,在模拟故障撤销后,发送模块100用于向电子控制模块发送读取故障码的请求命令,以及在判断模块300判断电子控制模块返回的响应数据中存在历史状态的待测试故障码时,继续向电子控制模块发送清除故障码的请求命令,以清除历史状态的待测试故障码,并在电子控制模块的历史状态的待测试故障码清除后,向电子控制模块发送读取故障码的请求命令,在电子控制模块返回的响应数据中不存在待测试故障码时,判断模块300判断待测试故障码测试通过。
在本发明的第二个实施例中,对电子控制模块的动态数据读取功能进行测试时,可以模拟与测试数据相关的条件,进而发送读取模拟条件下该状态的服务请求,在电子控制模块返回的响应数据与所模拟的状态相符时,判断该动态数据读取功能测试通过。
具体地,以一个开关的状态数据读取为例,说明电子控制模块动态数据读取功能的测试系统:
模拟模块400用于模拟开关的打开状态,发送模块100向电子控制模块发送读取开关状态的请求命令,判断模块300判断电子控制模块返回的响应数据是否正确;如果电子控制模块返回的响应数据正确,则模拟模块400模拟开关的关闭状态,发送模块100向电子控制模块发送读取该开关状态的请求命令,判断模块300判断电子控制模块返回的响应数据是否正确;如果电子控制模块返回的响应数据正确,则该开关动态读取功能的测试通过。
在本发明的第三个实施例中,如果诊断功能为车辆配置功能,则发送模块100还用于向电子控制模块发送写入预设配置的第一请求命令,以使电子控制模块存在与预设配置对应的功能,并在电子控制模块存在与预设配置对应的功能时,向电子控制模块发送写入预设配置的第二请求命令,以使电子控制模块取消与预设配置对应的功能;判断模块300还用于根据诊断规范以及电子控制模块返回的与第一请求命令对应的响应数据判断电子控制模块是否存在与预设配置对应的功能,以及根据诊断规范以及电子控制模块返回的与第二请求命令对应的响应数据判断电子控制模块是否取消与预设配置对应的功能,以及在电子控制模块不存在与预设配置对应的功能时,判断车辆配置功能测试通过。
在本发明的第四个实施例中,如果诊断功能为强制输入输出功能,则发送模块100还用于向电子控制模块发送读取待测试输入/输出状态的请求命令,并在当前待测试输入/输出状态为关闭状态时,向电子控制模块发送强制打开待测试输入/输出状态的请求命令,以及在当前输入/输出状态为打开状态时,向电子控制模块发送强制关闭输入/输出的请求命令,并在当前输入/输出状态为关闭状态时,向电子控制模块发送返回正常的请求命令;判断模块300还用于根据诊断规范和电子控制模块返回的与强制打开待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为打开状态,以及根据诊断规范和电子控制模块返回的与强制关闭待测试输入/输出状态的请求命令对应的响应数据判断当前输入/输出状态是否为关闭状态,根据诊断规范和电子控制模块返回的与返回正常的请求命令对应的响应数据判断电子控制模块是否退出强制输入/输出模式,以及在电子控制模块退出强制输入/输出模式时,判断强制输入输出功能测试通过。
在本发明的第五个实施例中,如果诊断功能为例程功能,则发送模块100还用于向电子控制模块发送例程开始的请求命令,在电子控制模块进入例程功能时,向电子控制模块发送例程请求结果的请求命令,以及在电子控制模块返回的与例程请求结果的请求命令对应的响应数据符合诊断规范时,向电子控制模块发送例程结束的请求命令;判断模块300还用于根据诊断规范和电子控制模块返回的与例程开始的请求命令对应的响应数据判断电子控制模块是否进入例程功能,判断电子控制模块返回的与例程请求结果的请求命令对应的响应数据是否符合诊断规范,以及根据诊断规范和电子控制模块返回的与例程结束的请求命令对应的响应数据判断电子控制模块退出例程功能,则判断例程功能测试通过。
需要说明的是,本发明实施例的汽车电子控制模块诊断功能的测试系统的具体实施方式与本发明上述实施例的汽车电子控制模块诊断功能的测试方法的具体实施方式相同,为减少冗余,此处不做赘述。
本发明实施例的汽车电子控制模块诊断功能的测试系统,通过发送模块向电子控制模块发送与诊断功能对应的诊断请求数据、并通过接收模块实时接收诊断响应数据,进而通过判断模块根据诊断规范对诊断响应数据进行验证,以判断诊断功能是否通过测试,由此,实现了电子控制模块的自动化测试,提高了电子控制模块诊断功能的测试效率和可靠性。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。