专利名称:控制模块响应测试系统和方法
技术领域:
本发明涉及内燃机,且更具体地涉及车辆诊断系统和方法。
背景技术:
本文提供的背景说明是为了总体上介绍本发明背景的目的。当前署名发明人的工作(在背景技术部分描述的程度上)以及本描述中否则不足以作为申请时现有技术的各方面,既不明显地也非隐含地被承认为与本发明相抵触的现有技术。空气通过进气歧管被抽吸到发动机中。节气门阀控制进入发动机中的空气流。空气与来自于一个或多个燃料喷射器的燃料混合以形成空气/燃料混合物。空气/燃料混合物在发动机的一个或多个气缸内燃烧。发动机控制模块(ECM)控制发动机的扭矩输出。ECM可借由节气门阀、燃料喷射器和/或一个或多个其他合适发动机致动器来控制发动机的扭矩输出。ECM可基于一个或多个输入来控制发动机的扭矩输出。该输入可包括但不局限于来自于各个传感器的输入。仅作为示例,传感器可包括空气质量流量(MAF)传感器、进气空气温度(IAT)传感器、一个或多个节气门位置(TP)传感器和/或一个或多个其他传感器。
发明内容
测试模块包括第一输入、第二输入、输出、解码器模块、模数(A/D)转换器以及输出生成器模块。测试模块在第一输入处从车辆的第一节气门位置传感器接收节气门位置信号。解码器模块基于节气门位置信号中至少一个脉冲的长度来产生第一节气门位置。A/D 转换器基于节气门位置信号产生第二节气门位置。测试模块在第二输入处接收用户输入。 输出生成器模块基于用户输入以及第一和第二节气门位置中的一个产生单沿半字节传输 (SENT)格式的测试信号。测试模块在输出处将测试信号输出给车辆的控制模块。一种方法包括在测试模块的第一输入处接收来自于车辆的节气门位置传感器的节气门位置信号;使用测试模块基于节气门位置信号中的至少一个脉冲长度来产生第一节气门位置;使用测试模块基于节气门位置信号来产生第二节气门位置;在测试模块的第二输入处接收用户输入;基于用户输入以及第一和第二节气门位置中的一个来产生单沿半字节传输(SENT)格式的测试信号;以及在测试模块的输出处输出测试信号给车辆的控制模块。本发明涉及下述技术方案。1. 一种测试模块,包括
第一输入,在所述第一输入处测试模块从车辆的第一节气门位置传感器接收节气门位置信号;
解码器模块,其基于节气门位置信号中至少一个脉冲的长度来产生第一节气门位置; 模数(A/D)转换器,其基于所述节气门位置信号产生第二节气门位置; 第二输入,在所述第二输入处测试模块接收用户输入;
输出生成器模块,其基于第一和第二节气门位置中的一个以及用户输入产生单沿半字节传输(SENT)格式的测试信号;和
输出,在所述输出处测试模块将测试信号输出给车辆的控制模块。2. 一种系统,包括
根据技术方案1所述的测试模块;和
所述控制模块,所述控制模块从节气门位置传感器接收节气门位置信号、从测试模块接收测试信号以及基于测试信号选择性地诊断多个故障的存在性。3.根据技术方案1所述的测试模块,其中,输出生成器模块产生SENT格式的测试信号中的预定数量的脉冲并且响应于用户输入选择性地产生超过测试信号中预定数量的脉冲。4.根据技术方案1所述的测试模块,其中,输出生成器模块产生SENT格式的测试信号中的预定数量的脉冲并且响应于用户输入选择性地产生小于测试信号中预定数量的脉冲。5.根据技术方案1所述的测试模块,其中,输出生成器模块产生SENT格式的超过预定最小时段的测试信号中的脉冲以及响应于用户输入选择性地产生小于预定最小时段的测试信号中的脉冲。6.根据技术方案1所述的测试模块,其中,输出生成器模块产生SENT格式的小于预定最大时段的测试信号中的脉冲以及响应于用户输入选择性地产生大于预定最大时段的测试信号中的脉冲。7.根据技术方案1所述的测试模块,其中,输出生成器模块响应于用户输入将测试信号中的脉冲长度改变大于测试信号中连续消息之间的预定量。8.根据技术方案1所述的测试模块,其中,输出生成器模块响应于用户输入将测试信号的连续消息中的脉冲之间的时段改变大于预定时段。9.根据技术方案1所述的测试模块,还包括错误校正代码(ECC)模块,所述ECC模块基于第一和第二节气门位置中的一个确定第一 ECC,
其中,输出生成器模块响应于用户输入基于不同于第一 ECC的第二 ECC来产生测试信号中的脉冲。10.根据技术方案1所述的测试模块,还包括错误校正代码(ECC)模块,所述ECC 模块基于第一和第二节气门位置中的一个确定第一 ECC,
其中,输出生成器模块响应于用户输入选择性地
(i)基于不同于第一ECC的第二 ECC产生测试信号中的第一脉冲;
(ii)产生超过测试信号中预定数量的脉冲;
(iii)产生小于测试信号中预定数量的脉冲;
(iv)产生第二脉冲,所述第二脉冲小于测试信号中的预定最小时段; (ν)产生第三脉冲,所述第三脉冲大于测试信号中的预定最大时段;(Vi)将测试信号中第四脉冲的长度改变超过测试信号的连续消息之间的预定量;以及 (Vii)将测试信号的连续消息中的第五脉冲之间的时段改变大于预定时段。11. 一种方法,包括
在测试模块的第一输入处接收来自于车辆的节气门位置传感器的节气门位置信号; 使用测试模块基于节气门位置信号中的至少一个脉冲的长度来产生第一节气门位
置;
使用测试模块基于节气门位置信号来产生第二节气门位置; 在测试模块的第二输入处接收用户输入;
基于第一和第二节气门位置中的一个以及用户输入来产生单沿半字节传输(SENT)格式的测试信号;以及
在测试模块的输出处输出测试信号给车辆的控制模块。12.根据技术方案11所述的方法,还包括 使用控制模块来接收节气门位置信号;
使用控制模块来接收测试信号;以及
使用控制模块基于测试信号来选择性地诊断多个故障的存在性。13.根据技术方案11所述的方法,还包括 产生SENT格式的测试信号中预定数量的脉冲;以及
响应于用户输入选择性地产生超过测试信号中预定数量的脉冲。14.根据技术方案11所述的方法,还包括 产生SENT格式的测试信号中预定数量的脉冲;以及
响应于用户输入选择性地产生小于测试信号中预定数量的脉冲。15.根据技术方案11所述的方法,还包括
产生SENT格式的大于预定最小时段的测试信号中的脉冲;以及响应于用户输入选择性地产生小于预定最小时段的测试信号中的脉冲。16.根据技术方案11所述的方法,还包括
产生SENT格式的小于预定最大时段的测试信号中的脉冲;以及响应于用户输入选择性地产生大于预定最大时段的测试信号中的脉冲。17.根据技术方案11所述的方法,还包括响应于用户输入将测试信号中的脉冲长度改变大于在测试信号中连续消息之间的预定量。18.根据技术方案11所述的方法,还包括响应于用户输入将测试信号中的连续消息中的脉冲之间的时段改变大于预定时段。19.根据技术方案11所述的方法,还包括
基于第一和第二节气门位置中的一个来确定第一错误校正代码(ECC);以及响应于用户输入基于不同于第一 ECC的第二 ECC来产生测试信号中的脉冲。20.根据技术方案11所述的方法,还包括
基于第一和第二节气门位置中的一个来确定第一错误校正代码(ECC);以及响应于用户输入,选择性地
(i)基于不同于第一ECC的第二 ECC产生测试信号中的第一脉冲;
(ii)产生超过测试信号中预定数量的脉冲;(iii)产生小于测试信号中预定数量的脉冲;
(iv)产生第二脉冲,所述第二脉冲小于测试信号中的预定最小时段; (ν)产生第三脉冲,所述第三脉冲大于测试信号中的预定最大时段;
(Vi)将测试信号中第四脉冲的长度改变超过测试信号的连续消息之间的预定量;以及 (Vii)将测试信号的连续消息中的第五脉冲之间的时段改变大于预定时段。本发明的进一步应用领域从下文提供的详细说明将显而易见。应当理解的是,详细说明和具体示例仅旨在用于描述目的且不旨在限制本发明的范围。
通过下述详细说明和附图将更完整地理解本发明,在附图中 图1是根据本发明原理的示例性发动机系统的功能框图2是根据本发明原理的示例性发动机控制模块(ECM)诊断验证系统的功能框图; 图3是根据本发明原理的示例性单沿半字节传输(SENT)信号; 图4是根据本发明原理的示例性测试模块的功能框图; 图5是根据本发明原理的测试图形用户接口(GUI)的示例性视图; 图6是根据本发明原理的硬件输入输出(HWIO)模块的功能框图;以及图7是根据本发明原理的描述产生测试信号的示例性方法的流程图。
具体实施例方式以下说明本质上仅为示例性的且绝不旨在限制本发明、它的应用、或使用。为了清楚起见,在附图中使用相同的附图标记标识类似的元件。如在此所使用的,短语A、B和C的至少一个应当理解为意味着使用非排他逻辑“或”的一种逻辑(A或B或C)。应当理解的是, 方法内的步骤可以以不同顺序执行而不改变本发明的原理。如本文所使用的,术语模块可指代下述、是下述的一部分、或包括下述专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享的、专用的、或组);提供所述功能的其他合适的部件;或者上述中的一些或全部的组合, 例如系统晶片。术语模块可包括存储器(共享的、专用的、或组),其存储由处理器执行的代码。如上述使用的,术语“代码”可包括软件、固件和/或微代码,并且可指代程序、例程、函数、类别和/或对象。如上述使用的,术语“共享的”是指多个模块的一些代码或全部代码可使用单个(共享的)处理器来执行。此外,多个模块的一些代码或全部代码可通过单个(共享的)存储器存储。如上述使用的,术语“组”是指单个模块的一些代码或全部代码可使用一组处理器来执行。此外,单个模块的一些代码或全部代码可使用一组存储器来存储。本文所述的装置和方法可通过由一个或多个处理器执行的一个或多个计算机程序来实施。计算机程序包括处理器可执行指令,其被存储在非瞬变有形计算机可读介质上。 计算机程序还可包括存储的数据。非瞬变有形计算机可读介质的非限制性示例是非易失性存储器、磁性存储机构和光学存储机构。车辆的传感器测量参数并且基于所述参数产生信号。例如,节气门位置传感器测量节气门位置并且基于该节气门位置产生节气门位置信号。诸如发动机控制模块的控制模块接收该信号。测试模块或装置还接收该信号。测试模块适于接收以模拟形式或单沿半字节传输 (SENT)形式的信号。通常,SENT形式包括以预定顺序产生信号中预定数量的脉冲,接着重复该预定顺序。测试模块基于信号中的一个或多个脉冲来确定传感器所测量的参数。测试模块基于该参数产生以SENT形式的测试信号。测试模块还基于用户输入产生测试信号。用户输入可指明测试模块应当如何在测试信号中产生一个或多个脉冲。测试模块输出测试信号至控制模块。控制模块基于该测试信号选择性地诊断是否存在一个或多个硬件输入输出(HWIO)故障。基于用户输入以及因此测试模块如何基于用户输入来产生测试信号,用户可确认控制模块是否对测试信号正确地响应。现参考图1,示出了示例性发动机系统100的功能框图。发动机102产生用于车辆的驱动扭矩。虽然发动机102被示出并且将作为火花燃烧内燃机(ICE)来讨论,但是发动机102可包括其他合适类型的发动机,例如压缩燃烧ICE。车辆可附加地或替代性地包括一个或多个电动马达(或马达-发电机)。空气通过进气歧管104被抽吸到发动机102中。节气门阀106将空气流变化输送至发动机102中。一个或多个燃料喷射器(例如,燃料喷射器108)将燃料与空气混合以形成空气/燃料混合物。空气/燃料混合物在气缸110内燃烧。虽然发动机102被描述为包括一个气缸,但是气缸102可包括不止一个气缸。燃烧例如通过火花塞114所提供的火花或以其他合适方式来启动。发动机控制模块(ECM)120控制节气门阀106、燃料喷射器108和火花塞114。更具体地,节气门致动器模块122、燃料致动器模块IM和火花致动器模块1 基于来自于ECM 120的信号分别控制节气门阀106、燃料喷射器108和火花塞114。虽然未示出,但是ECM 120还可控制其他发动机致动器,例如一个或多个凸轮移相器、排气再循环(EGR)阀、增压装置(例如,涡轮增压器或增压机)和/或一个或多个其他发动机致动器。ECM 120可基于一个或多个驾驶员输入来控制发动机102的扭矩输出,所述驾驶员输入例如加速器踏板位置(APP)、制动器踏板位置(BPP)、巡航控制输入和/或其他合适驾驶员输入。ECM 120还可基于来自于一个或多个传感器的信号来控制发动机102的扭矩输出,所述传感器例如第一节气门位置传感器140、第二节气门位置传感器142以及一个或多个其他传感器144。其他传感器144例如可包括空气质量流量(MAF)传感器、进气空气温度(IAT)传感器、发动机冷却剂温度传感器、发动机油温传感器和/或一个或多个其他合适传感器。第一节气门位置传感器140测量节气门阀106的位置并且基于该位置产生第一节气门位置信号146。第二节气门位置传感器142测量节气门阀106的位置并且基于该位置产生第二节气门位置信号148。第一和第二节气门位置信号146和148借由如图1中的示例所示的分离电气连接(例如,导线)来传输。仅作为示例,在第一和第二节气门位置信号146 和148是模拟信号的实施方式中,第一和第二节气门位置信号146和148借由分离电气连接来传输。在各种实施方式中,第一和第二节气门位置信号146和148都借由一根导线来传输。仅作为示例,在第一和第二节气门位置信号146和148基于单沿半字节传输(SENT) 信号产生协议来产生的实施方式中,第一和第二节气门位置信号146和148借由一根导线来传输。现参考图2,示出了示例性ECM诊断验证系统200的功能框图。第一和第二节气门位置传感器140和142提供第一和第二节气门位置信号146和148给ECM 120。ECM 120 包括硬件输入输出(HWIO)模块204和诊断模块208。HWIO模块204基于第一节气门位置信号146选择性地诊断是否存在一个或多个 HWIO故障。HWIO模块204监测的各种类型的HWIO故障将在下文详细讨论。当存在一个或多个冊IO故障时,HWIO模块204可选择性地调节第一节气门位置信号146和/或采取一个或多个补救动作。诊断模块208基于第一节气门位置信号146选择性地诊断是否存在一个或多个维护故障。诊断模块208可进一步基于一个或多个其他信号或值来选择性地诊断是否存在给定维护故障。维护故障每个可与在适合故障诊断标准(板载诊断II(OBDII)故障诊断标准) 下要探测的预定故障类型相关。诊断模块208可指示在诊断存储器210中维护故障的存在性,例如通过设置对应于诊断存储器210中的维护故障的预定代码或位置来实现。当存在一个或多个维护故障时,可点亮故障指示灯(MIL)(未示出)。第一节气门位置信号146可以是模拟信号或者根据SENT信号产生协议产生。SENT 协议在名为“SENT - Single Edge Nibble Transmission for Automotive Applications,, 的 Society of Automotive Engineers (SAE) Information Report Reference Number J2716被详述,其以引用的方式全文结合到本文。产生符合SENT协议的信号的传感器可称为传感器模块并且包括处理器和/或相关电路,以根据SENT协议产生信号。这种传感器模块还可称为智能传感器。仅作为示例,如果产生根据SENT协议的第一节气门位置信号146, 那么第一节气门位置传感器140可称为节气门位置传感器模块和/或称为智能节气门位置传感器。现参考图3,示出了根据SENT协议由发送器(例如,第一节气门位置传感器140、下述讨论的测试模块212等)产生的示例信号302。通常而言,SENT协议包括以预定顺序产生信号(例如,示例信号302)中的预定数量脉冲。在按照预定顺序产生预定数量的脉冲之后,预定顺序重新开始。以预定顺序产生预定数量的脉冲以完成一个消息。在信号中的每个下降沿之后且在信号转变回到高状态之前的预定时段内,发送器保持信号处于低状态。发送器确定将信号保持在高状态多长时间以传输专用于预定顺序的当前脉冲的信息。发送器将信号保持在高状态预定时间长度。发送器在经过预定时间长度时将信号转变为低状态,藉此产生当前脉冲的下降沿。于是,发送器将信号保持在低状态预定时段。发送器确定将信号保持在高状态多长时间以传输专用于预定顺序的下一脉冲的信息。一旦已经经过预定时段,发送器就将信号转变为高状态。发送器将信号保持在高状态达针对下一脉冲确定的时间长度。该过程继续直到一个消息完成为止。于是,预定顺序针对下一消息重新开始。在各种实施方式中,低和高状态可颠倒。基于给定脉冲在何处以预定顺序下降,信号的接收器(例如,ECM 120)可确定借由信号的给定脉冲被传输信息的类型。接收器还可基于在信号中的两个连续下降沿之间的时段(即,给定脉冲的长度)确定借由给定脉冲什么信息被传输。由于信号在每个下降沿之后的预定时段内被保持在低状态,信号保持的高状态的时间长度是可在各个脉冲之间变换的每个脉冲的仅有部分。因此,接收器可基于信号对于给定脉冲被保持在高状态的时间长度来替代性地确定借由给定脉冲什么信息被传输。图3的示例描述了在示例信号302中产生的一个完整消息。仅作为示例,在图3 中的示例中,预定脉冲数量是4,且一个消息包括4个脉冲。在SENT协议下,各个消息之间的预定脉冲数量以及预定脉冲顺序是相同的。一个或多个脉冲的长度可在各个消息之间变化。示例信号302的两个下降沿限定四个脉冲中的每个。例如,以预定顺序的第一脉冲304由时间306和时间308限定。时间306对应于正好在如图3所示的消息之前借由示例信号302传输的上一消息的第四脉冲的下降沿。时间308对应于第一脉冲304的下降沿。 第一脉冲304可称为定时脉冲或同步/标定脉冲。第一脉冲304是预定总时段长度。仅作为示例,预定总时段可以是发送器的56个时钟周期。一个时钟周期还可称为计时。在时间306开始,示例信号302在描述为312的预定时段内被保持在低状态310 (例如,0伏)。仅作为示例,预定时段可以是发送器的5个时钟周期。一旦在时间306之后经过预定时段,示例信号302转变为高状态316(例如,5伏)。 如在318示出的,示例信号302保持在高状态316直到在时间306之后已经经过预定总时段为止。接收器可基于第一脉冲304的长度以及第一脉冲304的预期长度来确定发送器的每个时钟周期的长度。由于发送器的时钟周期可不同于额定时钟周期,接收器可使用第一脉冲304的长度来标准化示例信号302中的脉冲长度。第二脉冲320由时间308和时间322限定。时间308对应于第一脉冲304的下降沿。时间322对应于第二脉冲320的下降沿。第二脉冲320可称为状态/通信脉冲。通常的情形是在每个下降沿之后,在时间308开始,示例信号302保持处于低状态310预定时段。在3M描述在第一脉冲304的下降沿之后将示例信号302维持在低状态 310。一旦在时间308之后经过预定时段,示例信号302转变为高状态316。发送器将示例信号302保持在高状态316,如3 所述,直到在时间322将该信号转变为低状态310。发送器确定将示例信号302维持在高状态316多长时间以借由第二脉冲320传输各种信息。仅作为示例,用于第二脉冲320的各种信息可包括是否存在故障、缓慢串行数据传输和/或其他合适信息。发送器可限制将示例信号302维持在高状态316多长时间以不小于预定最小时段且不大于预定最大时段。仅作为示例,预定最小和最大时段可分别是发送器的12个时钟周期和27个时钟周期。预定最小时段大于示例信号302在每个下降沿之后保持低状态310的预定时段。第三脉冲340由时间322和时间342限定。第三脉冲340包括预定数量的子脉冲。每个子脉冲可称为半字节。仅作为示例,在图3的示例中,第三脉冲340包括6个半字节。在各个实施方式中,第三脉冲340的预定数量的半字节可大于或小于六个。第三脉冲 340可称为数据脉冲。第一半字节344由时间322和时间346限定。时间322对应于第二脉冲320的下降沿,时间346对应于第一半字节344的下降沿。第二半字节348由时间346和时间350 限定。时间346对应于第一半字节344的下降沿,时间350对应于第二半字节348的下降沿。第三半字节352由时间350和时间354限定。时间350对应于第二半字节348的下降沿,时间3M对应于第三半字节352的下降沿。
第四半字节356由时间3M和时间358限定。时间3M对应于第三半字节352的下降沿,时间358对应于第四半字节356的下降沿。第五半字节360由时间358和时间362 限定。时间358对应于第四半字节356的下降沿,时间362对应于第五半字节360的下降沿。第六半字节364由时间362和时间342限定。时间362对应于第五半字节360的下降沿,时间342对应于第六半字节364的下降沿以及第三脉冲340的结束。在先前脉冲(或半字节)的下降沿的时刻开始,在对于半字节344、348、352、356、 360和364中每个将示例信号302转换为高状态3 之前的预定时段内,发送器将示例信号 302保持在低状态310。对于半字节344、348、352、356、360和364中每个将示例信号302 保持在高状态316的时段被限制为不小于预定最小时段且不大于预定最大时段。半字节344、348、352、356、360和364中的第一半用于传输使用发送器确定的参数。仅作为示例,如果发送器是节气门位置传感器,那么第一、第二和第三半字节344、348 和352可用于传输节气门阀106的开度百分比或位置。发送器基于该参数确定第一、第二和第三半字节344、348和352中每个的长度。该参数可以是由发送器测量的参数(例如,节气门位置)或基于测量参数确定(例如,节气门开度百分比)。发送器基于确定的长度分别针对第一、第二和第三半字节344、348和352将示例信号302保持在高状态,以传输该参数。半字节;344、;348、;352、;356、360和364中的第二半被用于传输半字节;344、;348、;352 的第一半的补码。仅作为示例,第四、第五和第六356、360和364可共同用于传输第一、第二和第三半字节;344、348 和 352 的补码(the one,s compliment)。发送器共同地确定半字节344、348、352、356、360和364中的第一半的补码。发送器基于该补码确定第四、第五和第六356、360和364中每个的长度。发送器基于确定的长度分别针对第四、第五和第六356、360和364将示例信号302保持在高状态316,以传输该补码。第四脉冲370由时间342和时间372限定。时间342对应于第六半字节364的下降沿以及第三脉冲;340的结束。时间372对应于第四脉冲370的下降沿。时间372还对应于一个消息的结束(以及以预定顺序的预定数量脉冲的一个完整迭代)。第四脉冲370可称为错误校正码(ECC)脉冲。在时间342开始,示例信号302针对预定时段保持在低状态310。一旦在时间342 之后经过预定时段,示例信号302针对第四脉冲370转变为高状态316。发送器确定将示例信号302保持在高状态316多长时间以借由第四脉冲370传输ECC数据。仅作为示例,ECC 数据可包括循环冗余码校验(CRC)、校验和数据和/或其他合适ECC数据。示例信号302针对第四脉冲370保持在高状态316的时段被局限于不小于预定最小时段且不大于预定最大时段。在第四脉冲370的下降沿之后,发送器以预定顺序重新开始。再次参考图2,测试模块212从第一第一节气门位置传感器140接收第一节气门位置信号146。测试模块212使用SENT协议产生测试信号216。仅为了讨论目的,测试信号 216中的每个消息将被讨论为具有预定数量的脉冲,所述预定数量的脉冲按照结合图3中的示例信号302描述的预定顺序产生。虽然本发明的原理被示出并且将结合第一节气门位置信号146、第一节气门位置传感器140和ECM 120被描述,但是本发明可等同地应用于其他传感器,例如第二节气门位置传感器142、MAF传感器、IAT传感器和/或其他类型的传感器;以及应用于其他控制模块,例如变速器控制模块(TCM)、混合控制模块(HCM)和/或其他类型的控制模块。测试信号216可用于证实当测试信号216显示指示相应类型的HWIO故障的一个或多个特征时,HWIO模块204将诊断是否存在每种类型的HWIO故障。更具体地,当测试信号216被产生成指示给定类型的HWIO故障时,用户可监测HWIO模块204的响应,以确定 HWIO模块204是否诊断给定类型HWIO故障的存在性。仅作为示例,HWIO模块204可监测用于七种不同类型故障的存在性的测试信号 216。在各种实施方式中,HWIO模块204可监测更多或更少数量的不同类型故障。七种不同类型的故障可指代如下=(I)ECC故障;(2)脉冲太短故障;(3)脉冲太长故障;(4)时钟移位故障;(5)超时故障;(6)太多脉冲故障;以及(7)太少脉冲故障。每种类型的故障将在下文结合图6中的示例来讨论。测试模块212基于第一节气门位置信号146确定节气门阀106的位置。测试模块 212基于用户输入220和/或位置产生测试信号216。用户输入220可借由输入/输出(I/ 0)接口(例如,通用串行总线(USB)接口)、借由无线接口或其他合适类型的接口传送到测试模块212。用户借由独立于测试模块212的装置(未示出)(例如,计算机)来实现用户输入 220。在各种实施方式中,用户输入220可借由一个或多个输入/输出装置(未示出)(例如, 显示屏和键盘等)直接输送到测试模块212中。用户输入220可规定测试信号216应当如何被产生。测试模块212根据用户输入220产生测试信号216并且将测试信号216提供给 ECM 120。测试模块212是独立于ECM 120和第一节气门位置传感器140的装置。现参考图4,示出了测试模块212的示例性实施方式的功能框图。图4中的测试模块212基于第一节气门位置信号146产生测试信号216。测试模块212适于接收第一节气门位置信号146并且产生测试信号216,与第一节气门位置信号146是模拟信号或基于 SENT协议产生(即,基于SENT的信号)无关。这允许在各种车辆平台上使用测试模块212, 所述车辆平台包括其中第一节气门位置信号146是模拟信号的车辆平台以及其中第一节气门位置信号146是基于SNET的信号的车辆平台。测试模块212在第一输入402接收第一节气门位置信号146。测试模块212在第二输入404接收用户输入220。测试模块212借由输出406输出测试信号216。解码器模块410借由第一输入402接收第一节气门位置信号146。解码器模块410 监测第一节气门位置信号146,用于第一节气门位置信号146中的脉冲。对于每个脉冲,解码器模块410确定脉冲是否为按照预定顺序的第一、第二、第三或第四脉冲。解码器模块410基于在给定消息中第三脉冲的半字节的第一半的长度确定该消息的第一节气门位置422。解码器模块410还确定用于第一节气门位置信号146的每个其他消息的第一节气门位置422。第一节气门位置422可以是数字值,其处于预定值范围内。解码器模块410还分别基于消息的第一脉冲长度确定每个消息的标定值414。标定值414可用于复制测试信号216中第一节气门位置传感器140的时钟周期的长度。解码器模块410还可基于消息的第二脉冲的长度分别确定每个消息的状态/通信值418。在第一节气门位置信号146是模拟信号的实施方式中,解码器410可将标定值414和状态/通信值418设置成等于零。模拟-数字(A/D)转换器4 选择性地采样第一节气门位置信号146、数字化第一节气门位置信号146以及输出第二节气门位置430。第二节气门位置430是在预定值范围内的数字值。在输出第二节气门位置430之前,A/D转换器似6还可过滤、缓冲和/或实施一个或多个动作。选择模块440接收第一节气门位置422和第二节气门位置430。选择模块440基于用户输入220将第一节气门位置422和第二节气门位置430中的一个输出作为选定节气门位置444。用户输入220可包括不止一则信息,如将在下文讨论的。在知晓第一节气门位置信号146是基于SENT的信号或模拟信号之后,用户可将用户输入220选择到选择模块 440。当第一节气门位置信号146是基于SENT的信号时,选择模块440将第一节气门位置 422输出作为选定节气门位置444。当第一节气门位置信号146是模拟信号时,选择模块 440将第二节气门位置430输出作为选定节气门位置444。编码器模块448接收选定节气门位置444并且基于选定节气门位置444确定一组二进制值452。仅作为示例,编码器模块448可使用将选定节气门位置444与该组二进制值 452相关的映射图或函数来确定该组二进制值452。该组二进制值452中的二进制值数量可等于第三脉冲中半字节的预定数量的一半。二进制值中的每个对应于第三脉冲的第一、 第二和第三半字节中一个的长度。补码模块456基于该组二进制值452确定一组补码值460。仅作为示例,补码模块 456可将该组补码值460设置成总体地等于该组二进制值452的补码。ECC模块464基于该组二进制值452和该组补码值460产生ECC 468。仅作为示例,ECC模块464可基于该组二进制值452和该组补码值460使用0101的种子值和下述多项式来确定ECC 468
χ4 + χ3 + χ2 +1
输出生成器模块480基于用户输入220产生测试信号216。输出生成器模块480还基于该组二进制值452、该组补码值460和ECC 468来产生测试信号216。在各种实施方式中, 输出生成器模块480可包括可编程接口控制器(PIC)或其他合适装置或模块。如果第一节气门位置信号146是基于SENT的信号,那么输出生成器模块480可基于标定值414和状态/通信值418分别产生测试信号216中一个消息的第一和第二脉冲。 如果第一节气门位置信号146是模拟信号,那么输出生成器模块480可基于用户输入220 产生该消息的第一和第二脉冲。输出生成器模块480可基于该组二进制值452中的二进制值来分别产生消息中第三脉冲的第一、第二和第三半字节。输出生成器模块480可基于该组补码值460中的补码值分别产生该消息中第三脉冲的第四、第五和第六半字节。输出生成器模块480可基于ECC 468产生该消息的第四脉冲。然而,用户输入220可规定测试信号216中的一个或多个脉冲应当如何被产生。 在图5中示出了示例性图形用户接口(⑶I),用户输入220可基于该⑶I产生。用户可借由 ⑶I输入用于产生测试信号216的一个或多个替换和/或选择,且用户输入220被产生以反映该替换和选择。输出生成器模块480默认基于用户输入220产生测试信号216。如果测试信号216 中的一个或多个特征在用户输入220中未被指明,那么输出生成器模块480基于接收的值分别产生测试信号216中的一个或多个未指明特征。仅作为示例,当用户输入220指明如何产生第一脉冲时,输出生成器模块480基于用户输入220产生测试信号216中的第一脉冲;然而如果用户输入220未指明如何产生第一脉冲,那么输出生成器模块480可基于标定值414或基于预定值产生测试信号216中的第一脉冲。输出生成器模块480与测试信号216中的其他特征类似地起作用。仅作为示例, 如果用户输入220指明省除测试信号216中的一个脉冲,例如以借由HWIO模块204触发不足够的脉冲故障,那么输出生成器模块480从测试信号216省除一个或多个脉冲。如果用户输入220指明一个脉冲应当比预定最大时段更长,例如以借由HWIO模块204来触发脉冲太长故障,那么输出生成器模块480将测试信号216中的一个脉冲保持比预定最大时段更长。现参考图5,示出了示例性测试⑶I 500的示意图。继续参考图4,用户输入220 可基于至测试⑶I 500的用户输入被产生。测试⑶I 500可包括各种字段,用户可输入期望值到该字段中。例如,用户可借由第一字段504输入(例如,键入)在第三脉冲中要产生的半字节的数量。用户可借由第二字段508输入用于测试信号216的一个时钟周期长度。用户可借由第三字段512输入用于输出生成器模块480的时钟周期的数量,以在每个下降沿之后将测试信号216保持在低状态。用户可借由第四字段516输入输出生成器模块480的时钟周期数量,以针对给定脉冲将测试信号216保持在高状态以便传输零的值。用户可借由第五字段520输入用于输出生成器模块480的时钟周期的数量(对应于预定总时段)以通常将第一脉冲保持在高状态。对于第一、第二、第三、第四和第五字段504、508、512、516和520的用户输入可用于测试信号216中的每个消息。用户输入220被产生以反映第一、第二、第三、 第四和第五字段504、508、512、516和520的输入。用户通过选择第一选项5M可选择第一节气门位置信号146是模拟信号。用户通过选择第二选项5 可选择第一节气门位置信号146是基于SENT的信号。用户输入220 基于第一和第二选项5M和528中的选定一个而被产生,使得选择模块440根据用户的选择输出第一或第二节气门位置422或430。测试⑶I 500还包括故障类型选择接口 M0,用户从其选择输出生成器模块480是否应当将测试信号216操纵成指示HWIO故障。故障类型选择接口 540可包括相应的第三、 第四、第五、第六、第七、第八、第九和第十可选择的选项M4、M8、552、556、560、564、568和 572。用户借由故障类型选择接口 540来选择第三、第四、第五、第六、第七、第八、第九和第十可选择的选项M4、M8、552、556、560、564、568和572中的一个。用户输入220被产生以反映从故障类型选择接口 540的第三、第四、第五、第六、第七、第八、第九和第十可选择的选项 544、548、552、556、560、564、568 和 572 的用户选择。当用户选择第三选项544时,输出生成器模块480产生不指示HWIO故障的测试信号216。当用户选择第四选项548时,输出生成器模块480产生指示太少脉冲故障的测试信号216。当用户选择第四选项548时,输出生成器模块480产生少于测试信号216中第三脉冲的预定数量的半字节。当用户选择第五选项552时,输出生成器模块480产生指示太多脉冲故障的测试信号216。当用户选择第五选项552时,输出生成器模块480产生超过测试信号216中第三脉冲的预定数量的半字节。当输出生成器模块480产生指示太少脉冲故障或太多脉冲故障的测试信号216时,ECC阀468基于在测试信号216中实际产生的半字节来重新计算。由此,测试信号216 将基于正确ECC来产生,以便不使得HWIO模块204还诊断ECC故障的存在性。当用户选择第六选项556时,输出生成器模块480产生指示超时故障的测试信号 216。当用户选择第六选项556时,输出生成器模块480产生测试信号216,使得在测试信号 216的两个连续第一脉冲之间存在超过预定超时时段。用户可借由输入字段578来输入百分比或数字。基于到输入字段578中的用户输入,输出生成器模块480可确定或设定在测试信号216中的两个连续第一脉冲之间的时段。当用户选择第七选项560时,输出生成器模块480产生指示时钟移位故障的测试信号216。当用户选择第七选项560时,输出生成器模块480产生测试信号216,使得测试信号216的两个连续第一脉冲之间的长度变化(即,差异)大于预定允许差异。基于到输入字段5778中的用户输入,输出生成器模块480可改变在测试信号216中的连续第一脉冲的长度。当用户选择第八选项564时,输出生成器模块480产生指示脉冲太长故障的测试信号216。当用户选择第八选项564时,输出生成器模块480产生第二脉冲,第三脉冲中的一个半字节或第四脉冲比预定最大时段更长。当用户选择第九选项568时,输出生成器模块480产生指示脉冲太短故障的测试信号216。当用户选择第九选项568时,输出生成器模块480产生第二脉冲,第三脉冲中的一个半字节或第四脉冲比预定最小时段更短。当用户选择第十选项572时,输出生成器模块480产生指示ECC故障的测试信号 216。当用户选择第十选项572时,输出生成器模块480基于不同于ECC 468的ECC来设定第四脉冲的长度。用户可选择输出生成器模块480基于第三、第四、第五、第六、第七、第八、第九和第十可选择的选项M4、M8、552、556、560、564、568和572中的选定一个将产生测试信号 216的时段。仅作为示例,用户可借由第十一选项580选择全部故障消息时段或借由第十二选项584选择无故障消息时段。当选择第十二选项584 (S卩,无故障消息时段)时,输出生成器模块480根据用于时段的用户输入220可产生测试信号216。该时段小于在测试信号216 显示选定类型的HWIO故障时HWIO模块204将诊断选定类型的HWIO故障之后的时段。当选择第十一选项580 (即,全部故障消息时段)时,输出生成器模块480可根据用户输入220 产生测试信号216,直到由用户停止为止。基于借由启动/停止选项590的用户输入220, 用户可启动和停止输出生成器模块480产生测试信号216。现参考图6,示出了 HWIO模块204的示例性实施方式的功能框图。标准化模块604 借由输入602接收测试信号216以及基于测试信号216输出标准化测试信号608。输入602 是ECM 120的输入。标准化模块604接收测试信号216的消息的第一脉冲并且基于第一脉冲的长度和额定第一脉冲的长度确定比率。仅作为示例,标准化模块604可将该比率设置成等于第一脉冲的长度除以额定第一脉冲的长度。通过将测试信号216中消息的脉冲长度除以该比率,标准化模块604可产生标准化测试信号608中消息的脉冲,由此,标准化测试信号608中消息的脉冲长度反映被调节(即,标准化)以考虑在第一脉冲和额定第一脉冲的长度之间的比率的测试信号216中消息的脉冲长度。基于测试信号216中每个消息的第一脉冲,标准化模块604执行每个消息的标准化。
基于ECC校验值与借由标准化测试信号608的第四脉冲传输的ECC值得比较,ECC 校验模块612选择性地诊断ECC故障的存在性。仅作为示例,基于借由标准化测试信号608 的第三脉冲的半字节传输的数据,ECC校验模块612使用0101的种子值以及下述多项式可确定ECC校验值 χ4 +χ3 +χ2 +1
如果ECC校验值不同于第四脉冲的ECC值,那么ECC校验模块612诊断存在ECC故障。 ECC校验模块612产生指示是否存在ECC故障的ECC故障信号616。基于标准化测试信号608的第二、第三和第四脉冲的长度(包括第三脉冲的每个半字节),脉冲长度校验模块620选择性地诊断脉冲太短故障或脉冲太长故障的存在性。当一个或多个脉冲的长度小于预定最小时段时,脉冲长度校验模块620诊断存在脉冲太短故障。当一个或多个脉冲的长度大于预定最大时段时,脉冲长度校验模块620诊断存在脉冲太长故障。脉冲长度校验模块620产生指示是否存在脉冲太短故障的短脉冲故障信号624。 脉冲长度校验模块620产生指示是否存在脉冲太长故障的长脉冲故障信号628。基于在标准化测试信号608中两个连续第一脉冲之间的第一脉冲长度变化,时钟移位校验模块640选择性地诊断时钟移位故障的存在性。当该变化大于预定允许变化时, 时钟移位校验模块640诊断存在时钟移位故障。仅作为示例,预定允许变化可以是大约 1.56 %。时钟移位校验模块640产生指示是否存在时钟移位故障的时钟移位故障信号644。基于在标准化测试信号608中两个连续第四脉冲的下降沿之间的时段,超时校验模块650选择性地诊断超时故障的存在性。换句话说,基于在标准化测试信号608中两个连续第一脉冲的开始之间的时段,超时校验模块650选择性地诊断超时故障的存在性。当该时段大于预定超时时段时,超时校验模块650诊断存在超时故障。该预定超时时段等于测试信号216的一个消息的最大长度。仅作为示例,预定超时时段可以是272个时钟周期。 超时校验模块650产生指示是否存在超时故障的超时故障信号654。基于在标准化测试信号608中连续第一脉冲之间在标准化测试信号608中下降沿的数量,脉冲数量校验模块660选择性地诊断太多脉冲故障或不足够脉冲故障的存在性。 换句话说,基于在标准化测试信号608的一个完整消息中的脉冲数量(包括半字节),脉冲数量校验模块660选择性地诊断太多脉冲故障或不足够脉冲故障的存在性。当在连续第一脉冲之间的下降沿数量大于下降沿的预定预期数量时,脉冲数量校验模块660诊断存在太多脉冲故障。当连续第一脉冲之间的下降沿数量小于预定预期数量时,脉冲数量校验模块660 诊断存在不足够脉冲故障。仅作为示例,当测试信号216类似于图3中的示例被产生时,下降沿的预定数量是9。脉冲数量校验模块216产生指示是否存在太多脉冲故障的太多脉冲故障信号664。脉冲数量校验模块216产生指示是否存在不足够脉冲故障的不足够脉冲故障信号668。用户可监测ECC故障信号616、短脉冲故障信号624、长脉冲故障信号628、时钟移位故障信号644、超时故障信号654、太多脉冲故障信号664以及不足够脉冲故障信号668。 基于在测试模块212基于用户输入220产生测试信号216以推到HWIO故障时的一个或多个这种信号的状态,用户可验证HWIO模块204对于测试信号216的响应性。现参考图7,示出了描述产生测试信号216的示例性方法700的流程图。控制过程在704开始,其中控制过程从节气门位置传感器140接收第一节气门位置信号146。控制过程在708确定第一和第二节气门位置422和430。控制过程还在708确定选定节气门位置 444。控制过程将选定节气门位置444设置为第一和第二节气门位置422和430中的一个。 控制过程基于用户输入220来设置选定节气门位置444。控制过程在712确定在测试信号216中消息的第一脉冲长度。第一脉冲长度是对应于预定总时段的时钟周期的数量,例如56个时钟周期。在716,控制过程确定测试信号 216的消息的第二脉冲长度。当第一节气门位置信号146是基于SENT的信号时,控制过程可从第一节气门位置信号146提取第二脉冲长度。控制过程在720确定消息的第三脉冲的半字节的第一半的长度。控制过程基于选定节气门位置444确定半字节的第一半的长度。更具体地,控制过程基于选定节气门位置 444确定该组二进制值452以及基于二进制值相应地确定长度。控制过程在7M确定消息的第三脉冲的半字节的第二半的长度。控制过程基于该组二进制值452确定该组补码值460,并且控制过程基于补码值相应地确定长度。控制过程在7 确定消息的第四脉冲的长度。控制过程基于二进制值和补码值确定ECC 468并且基于ECC 468确定第四脉冲的长度。在732,控制过程确定是否插入用户输入220。如果为真,控制过程推进到736 ;如果为假,控制过程推进到740。控制过程在736基于用户输入220产生测试信号216。更具体地,控制过程可基于用户输入220可调节或省略测试信号216中消息的第一、第二、第三和第四脉冲中的一个或多个。在740,控制过程使用针对脉冲确定的长度分别产生测试信号 216中预定顺序的第一、第二、第三和第四脉冲。控制过程在736或740之后结束。虽然控制过程被输出且被讨论为结束,但是控制过程可相反返回至704。本发明的广泛教导能够以各种形式来实施。因此,虽然本发明包括具体示例,但是本发明的真实范围不应如此限制,因为在研究附图、说明书和下述权利要求书之后其他的修改对于本领域技术人员将显而易见。
权利要求
1.一种测试模块,包括第一输入,在所述第一输入处测试模块从车辆的第一节气门位置传感器接收节气门位置信号;解码器模块,其基于节气门位置信号中至少一个脉冲的长度来产生第一节气门位置; 模数(A/D)转换器,其基于所述节气门位置信号产生第二节气门位置; 第二输入,在所述第二输入处测试模块接收用户输入;输出生成器模块,其基于第一和第二节气门位置中的一个以及用户输入产生单沿半字节传输(SENT)格式的测试信号;和输出,在所述输出处测试模块将测试信号输出给车辆的控制模块。
2.一种系统,包括根据权利要求1所述的测试模块;和所述控制模块,所述控制模块从节气门位置传感器接收节气门位置信号、从测试模块接收测试信号以及基于测试信号选择性地诊断多个故障的存在性。
3.根据权利要求1所述的测试模块,其中,输出生成器模块产生SENT格式的测试信号中的预定数量的脉冲并且响应于用户输入选择性地产生超过测试信号中预定数量的脉冲。
4.根据权利要求1所述的测试模块,其中,输出生成器模块产生SENT格式的测试信号中的预定数量的脉冲并且响应于用户输入选择性地产生小于测试信号中预定数量的脉冲。
5.根据权利要求1所述的测试模块,其中,输出生成器模块产生SENT格式的超过预定最小时段的测试信号中的脉冲以及响应于用户输入选择性地产生小于预定最小时段的测试信号中的脉冲。
6.根据权利要求1所述的测试模块,其中,输出生成器模块产生SENT格式的小于预定最大时段的测试信号中的脉冲以及响应于用户输入选择性地产生大于预定最大时段的测试信号中的脉冲。
7.根据权利要求1所述的测试模块,其中,输出生成器模块响应于用户输入将测试信号中的脉冲长度改变大于测试信号中连续消息之间的预定量。
8.根据权利要求1所述的测试模块,其中,输出生成器模块响应于用户输入将测试信号的连续消息中的脉冲之间的时段改变大于预定时段。
9.根据权利要求1所述的测试模块,还包括错误校正代码(ECC)模块,所述ECC模块基于第一和第二节气门位置中的一个确定第一 ECC,其中,输出生成器模块响应于用户输入基于不同于第一 ECC的第二 ECC来产生测试信号中的脉冲。
10.一种方法,包括在测试模块的第一输入处接收来自于车辆的节气门位置传感器的节气门位置信号; 使用测试模块基于节气门位置信号中的至少一个脉冲的长度来产生第一节气门位置;使用测试模块基于节气门位置信号来产生第二节气门位置; 在测试模块的第二输入处接收用户输入;基于第一和第二节气门位置中的一个以及用户输入来产生单沿半字节传输(SENT)格式的测试信号;以及在测试模块的输出处输出测试信号给车辆的控制模块。
全文摘要
本发明涉及控制模块响应测试系统和方法。测试模块包括第一输入、第二输入、输出、解码器模块、模数(A/D)转换器以及输出生成器模块。测试模块在第一输入处从车辆的第一节气门位置传感器接收节气门位置信号。解码器模块基于节气门位置信号中至少一个脉冲的长度来产生第一节气门位置。A/D转换器基于节气门位置信号产生第二节气门位置。测试模块在第二输入处接收用户输入。输出生成器模块基于用户输入以及第一和第二节气门位置中的一个产生单沿半字节传输(SENT)格式的测试信号。测试模块在输出处将测试信号输出给车辆的控制模块。
文档编号F02D9/10GK102374037SQ20111023257
公开日2012年3月14日 申请日期2011年8月15日 优先权日2010年8月13日
发明者E. 罗斯 C., J. 加蒂 M., A. 鲍尔勒 P. 申请人:通用汽车环球科技运作有限责任公司