7.7.58. Diagnostic test entity (ppr_DiagnosticTestEntity)

Define a Diagnostic Test Entity and the inputs which operate on it.

7.7.58.1. Supported targets

All targets

7.7.58.2. Required license

EXT_DIAG (Extended diagnostics library). (See Section 2.3, “Licensed Features”.)

7.7.58.3. Description

A DTE is a specific test for some vehicle component for which test results are recorded. It is represented by an ISO-15765 Test Identifier (ISO-TID), which is reported over ISO-15765 protocol and/or by a J1939 Test Identifier (J1939-TID), which is reported over J1939 protocol. The platform holds information for each DTE, consisting of a numerator (a measure of the number of times a vehicle has been operated such that all monitoring conditions necessary for a specific test (DTE) to detect a malfunction have been encountered) and a denominator (a measure of the number of times a vehicle has been operated). These are used to implement algorithms in the platform to individually track and report a minimum acceptable In-Use Performance Ratio (IUPR). The platform keeps track of whether the test value for the DTE has been updated at least once in the current drive cycle and holds test value and min and max limits for the DTE.

7.7.58.4. Inports

  • numerator_update

    Set to 1 if the numerator for this DTE is to be updated, set to zero otherwise. The block responds to a rising edge on this inport. This is used by the block to increment the specific numerator for the DTE. Note that the DTE specific numerator will be incremented only once per drive cycle. Therefore, it is important that this inport is returned to level 0 before a new drive cycle event, if a numerator update is not required. The signal passed to this inport should be connected to all DTEs which contain the same Monitor identifier in order that the specific numerator is updated simultaneously for all those DTEs.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • denominator_update

    Set to 1 if the denominator for this DTE is to be updated, set to zero otherwise. The block responds to a rising edge on this inport. This is used by the block to increment the specific denominator for the DTE. The user should set this inport to 1 only when every monitoring condition necessary for the monitor of the specific component to detect a malfunction and store a pending fault code has been satisfied. Note that the DTE specific denominator will be incremented only once per drive cycle. Therefore, it is important that this inport is returned to level 0 before a new drive cycle event, if a denominator update is not required. The signal passed to this inport should be connected to all DTEs which contain the same Monitor identifier in order that the specific denominator is updated simultaneously for all those DTEs.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • test_value

    The test value collected during the test.

    Range: [0, 65535]

    Value type:Integer
    Calibratable:No
  • test_limit_min

    The threshold which the test value must be above in order to pass the test.

    Range: [0, 65535]

    Value type:Integer
    Calibratable:No
  • test_limit_max

    The threshold which the test value must be below in order to pass the test.

    Range: [0, 65535]

    Value type:Integer
    Calibratable:No
  • test_run

    Sets whether the test has been run at this time step.

    When this input is 1, the block sets the test value and min and max limits for the DTE to the values on inports test_value, test_limit_min and test_limit_max respectively. When this input is 0, the stored test value and min and max limits are held unchanged. Note that this input is level-triggered and not edge-triggered. This is required so that results for continuously-monitored tests such as range checks on sensors may be updated at every step.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • reset

    Sets whether the test is to be reset at this time step.

    Set to 1 to cause the block to reset the test value, test min and test max for this DTE to initial values of 0 and its test run status to 'test not run'. Set to 0, otherwise. Note that this input is level-triggered and not edge-triggered. This is required so that test results may be repeatedly reset if necessary. Note also that test_run takes precedence over this input.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No

7.7.58.5. Outports

  • dte_numerator

    The specific numerator for this DTE. Used internally for calculation of the DME's In-Use performance ratio which this DTE belongs to.

    Range: [0, 65535]

    Value type:Integer
  • dte_denominator

    The specific denominator for this DTE. Used internally for calculation of the DME's In-Use performance ratio which this DTE belongs to.

    Range: [0, 65535]

    Value type:Integer
  • numerator_updated_this_dc

    Set to 1 if the specific numerator for this DTE has been updated this drive cycle, set to 0 otherwise.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • denominator_updated_this_dc

    Set to 1 if the specific denominator for this DTE has been updated this drive cycle, set to 0 otherwise.

    Range: 0 or 1

    Value type:Boolean
  • dte_test_value

    The test value that the platform holds for this DTE.

    Range: [0, 65535]

    Value type:Integer
  • dte_test_limit_min

    The test minimum threshold that the platform holds for this DTE.

    Range: [0, 65535]

    Value type:Integer
  • dte_test_limit_max

    The test maximum threshold that the platform holds for this DTE.

    Range: [0, 65535]

    Value type:Integer
  • dte_test_run_status

    The test run status that the platform holds for this DTE. A value of 0 indicates that the test has never run. A value of 1 indicates that a test has run on this drive cycle. A value of 2 indicates that a test has run but not on this drive cycle.

    Range: [0, 2]

    Value type:Integer
    Calibratable:No

7.7.58.6. Mask parameters

  • DTE identifier

    The unique identifier for this DTE.

    Range: [0, 255]

    Value type:Integer
    Calibratable:No
  • DME identifier

    The identity of the DME that this DTE belongs to. For example, an Exhaust gas sensor monitor will have a subset of DTEs. This DTE needs to have a matching DME identifier parameter with its parent DME.

    Range: [0, 255]

    Value type:List
  • ISO Type?

    If this box is checked then the parameters pertaining to ISO specific DTEs are available. Note that a DTE can be ISO type, J1939 type or both.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • Monitor identifier

    The ISO-15765 monitor identifier (OBDMID - see J1979 spec dated Sept 2010 appendix D) that this DTE belongs to. It is used for reporting over ISO-15765 diagnostics in response to service $06. Only available if the ISO Type? option is checked.

    Range: [0, 255]

    Value type:Integer
    Calibratable:No
  • ISO scaling identifier

    This identifier is used to reference the scaling and unit to be used by the external test equipment in order to calculate and display the test values (results), Minimum Test Limit, and the Maximum for the DTE. Only available if the ISO Type? option is checked.

    Range: [0, 255]

    Value type:Integer
    Calibratable:No
  • ISO test identifier

    The ISO specific test identifier (TID). Only available if the ISO Type? option is checked.

    Range: [0, 255]

    Value type:Integer
    Calibratable:No
  • J1939 Type?

    If this box is checked then the parameters pertaining to J1939 specific DTEs are available. Note that a DTE can be ISO type, J1939 type or both.

    Range: 0 or 1

    Value type:Boolean
    Calibratable:No
  • J1939 test identifier

    The J1939 specific test identifier (TID). See J1939-73 Sept 2010 section 5.7.7.1 for details. Only available if the J1939 Type? option is checked.

    Range: [0, 255]

    Value type:Integer
    Calibratable:No
  • J1939 slot identifier

    This is the scaling, limit, offset, and transfer function for the DTE. Only available if the J1939 Type? option is checked.

    Range: [0, 64255]

    Value type:Integer
    Calibratable:No
  • J1939 SPN

    This is the SPN number associated with the DTE. Only available if the J1939 Type? option is checked.

    Range: [0, 524287]

    Value type:Integer
    Calibratable:No
  • J1939 FMI

    This is the FMI number associate with the DTE. See J1939-73 Sept 2010 Appendix A. Only available if the J1939 Type? option is checked.

    Range: [0, 31]

    Value type:Integer
    Calibratable:No
  • J1939 component identifier

    This identifies the non-continuously monitored component identifier. Component identifiers are used to distinguish DTEs that have the same J1939 slot identifier Only available if the J1939 Type? option is checked.

    Range: [1, 64]

    Value type:Integer
    Calibratable:No
  • DM10 bit position

    This is the bit position to set in a requested DM10 message response, to indicate test supported. Refer to J1939-73 FEB2010 section 5.7.10 for details. The assignment of a given test identifier (as provided in the J1939 test identifier parameter) to a given bit position is manufacturer specific. This parameter is optional and may be left blank, in which case the DM10 bit position will default to the value provided in the J1939 test identifier parameter, provided it lies in the range specified below. Only available if the J1939 Type? option is checked.

    Range: [1, 64]

    Value type:Integer
    Calibratable:No

7.7.58.7. Notes

None.