20
In-Vehicle Networking In-Vehicle Networking for Heavy Duty Systems for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Review of CAN / SAE J1939/ ISO 11783 Network Network Management Management ISO 11783 Part 5 ISO 11783 Part 5 J1939-81 J1939-81

In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Embed Size (px)

Citation preview

Page 1: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

In-Vehicle NetworkingIn-Vehicle Networking for Heavy Duty Systems for Heavy Duty Systems

Review of CAN / SAE J1939/ ISO 11783Review of CAN / SAE J1939/ ISO 11783

In-Vehicle NetworkingIn-Vehicle Networking for Heavy Duty Systems for Heavy Duty Systems

Review of CAN / SAE J1939/ ISO 11783Review of CAN / SAE J1939/ ISO 11783

Network Network ManagementManagement ISO 11783 Part 5ISO 11783 Part 5

J1939-81J1939-81

Network Network ManagementManagement ISO 11783 Part 5ISO 11783 Part 5

J1939-81J1939-81

Page 2: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

How do we create new messages?How do we create new messages?How do we create new messages?How do we create new messages?

– Is there a block of Is there a block of identifiers/addresses/messages set asideidentifiers/addresses/messages set asidefor experimental use? If so, how do we get information for experimental use? If so, how do we get information about them?about them?

• Use proprietary if you must be compliantUse proprietary if you must be compliant• OEM reserved address availableOEM reserved address available

– If we make a controller which will remain on the vehicle, If we make a controller which will remain on the vehicle, how do we get it added to the standard? How long does it how do we get it added to the standard? How long does it take to get something added?take to get something added?

• Controller needs a NAME defined, can use self-configuring Controller needs a NAME defined, can use self-configuring addressingaddressing

• Should take ~3 mo to add a new name or messageShould take ~3 mo to add a new name or message

– Is there a block of Is there a block of identifiers/addresses/messages set asideidentifiers/addresses/messages set asidefor experimental use? If so, how do we get information for experimental use? If so, how do we get information about them?about them?

• Use proprietary if you must be compliantUse proprietary if you must be compliant• OEM reserved address availableOEM reserved address available

– If we make a controller which will remain on the vehicle, If we make a controller which will remain on the vehicle, how do we get it added to the standard? How long does it how do we get it added to the standard? How long does it take to get something added?take to get something added?

• Controller needs a NAME defined, can use self-configuring Controller needs a NAME defined, can use self-configuring addressingaddressing

• Should take ~3 mo to add a new name or messageShould take ~3 mo to add a new name or message

FAQFAQFAQFAQ

Page 3: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Tools / Emergencies?Tools / Emergencies?Tools / Emergencies?Tools / Emergencies?

– What kind of diagnostic/programming software What kind of diagnostic/programming software tools are available?tools are available?

• http://www.noregon.com/caninterface.htmlhttp://www.noregon.com/caninterface.html• http://www.vector-cantech.com/http://www.vector-cantech.com/

– Is there some kind of provision or protocol for Is there some kind of provision or protocol for when a controller, etc. can't talk to the micro, when a controller, etc. can't talk to the micro, etc.? i.e., is there a 911/411 for figuring out etc.? i.e., is there a 911/411 for figuring out what's wrong?what's wrong?

• Need a good PC based tool and a test networkNeed a good PC based tool and a test network

– What kind of diagnostic/programming software What kind of diagnostic/programming software tools are available?tools are available?

• http://www.noregon.com/caninterface.htmlhttp://www.noregon.com/caninterface.html• http://www.vector-cantech.com/http://www.vector-cantech.com/

– Is there some kind of provision or protocol for Is there some kind of provision or protocol for when a controller, etc. can't talk to the micro, when a controller, etc. can't talk to the micro, etc.? i.e., is there a 911/411 for figuring out etc.? i.e., is there a 911/411 for figuring out what's wrong?what's wrong?

• Need a good PC based tool and a test networkNeed a good PC based tool and a test network

FAQFAQFAQFAQ

Page 4: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

FAQFAQFAQFAQ

Network initialization / module naming?Network initialization / module naming?Network initialization / module naming?Network initialization / module naming?

– How are ECUs identified?How are ECUs identified?– Are there rules for initialization?Are there rules for initialization?– Are there requirements if power supply drops out Are there requirements if power supply drops out

briefly?briefly?

– How are ECUs identified?How are ECUs identified?– Are there rules for initialization?Are there rules for initialization?– Are there requirements if power supply drops out Are there requirements if power supply drops out

briefly?briefly?

Page 5: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Purpose of Network ManagementPurpose of Network ManagementPurpose of Network ManagementPurpose of Network Management

DescribesDescribes

– thethe management of source addressesmanagement of source addresses and the association of and the association of

those addresses with the actual functional identification of a those addresses with the actual functional identification of a

devicedevice

– thethe detection and reporting of network related errorsdetection and reporting of network related errors..

– initialisation processesinitialisation processes

– requirements forrequirements for reaction to brief power outagesreaction to brief power outages

– minimum requirements for network connected electronic minimum requirements for network connected electronic

control units.control units.

Provides methods for Provides methods for distributed management of addressesdistributed management of addresses

and identity (no master).and identity (no master).

DescribesDescribes

– thethe management of source addressesmanagement of source addresses and the association of and the association of

those addresses with the actual functional identification of a those addresses with the actual functional identification of a

devicedevice

– thethe detection and reporting of network related errorsdetection and reporting of network related errors..

– initialisation processesinitialisation processes

– requirements forrequirements for reaction to brief power outagesreaction to brief power outages

– minimum requirements for network connected electronic minimum requirements for network connected electronic

control units.control units.

Provides methods for Provides methods for distributed management of addressesdistributed management of addresses

and identity (no master).and identity (no master).

Page 6: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

• DefinesDefines NAMEs for ECUsNAMEs for ECUs– Provides hierarchical naming structureProvides hierarchical naming structure

• Three Hierarchical LevelsThree Hierarchical Levels– Device Class -> function-> ECUDevice Class -> function-> ECU

– Provides instance count for each levelProvides instance count for each level

– Provides identification of manufacturer of ECUProvides identification of manufacturer of ECU

– Provides type IDs for Class and FunctionProvides type IDs for Class and Function

• DefinesDefines address configuration typesaddress configuration types– ECU Address configurationECU Address configuration

– Configurable AddressConfigurable Address– Service Configurable AddressService Configurable Address– Command Configurable AddressCommand Configurable Address– Self-Configurable Address ECUSelf-Configurable Address ECU– (J1939) Arbitrary address capable(J1939) Arbitrary address capable

Network Management FunctionsNetwork Management FunctionsNetwork Management FunctionsNetwork Management Functions

Page 7: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

• DefinesDefines ECU typesECU types– StandardStandard

– Diagnostic/Development ToolDiagnostic/Development Tool

– Network InterconnectionNetwork Interconnection

• DefinesDefines address initialisation processaddress initialisation process

• DefinesDefines addressaddress commanding processcommanding process

• DefinesDefines power continuity requirementspower continuity requirements– ISO and J1939 are differentISO and J1939 are different

Network Management FunctionsNetwork Management FunctionsNetwork Management FunctionsNetwork Management Functions

Page 8: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Messages defined for Network ManagementMessages defined for Network ManagementMessages defined for Network ManagementMessages defined for Network Management

• Request for Address ClaimRequest for Address Claim– Normal Request Message of the Address Claim PGNNormal Request Message of the Address Claim PGN

• Address ClaimAddress Claim• Commanded AddressCommanded Address• Cannot ClaimCannot Claim

– Address Claim of the Null Address (254)Address Claim of the Null Address (254)

• Request for Address ClaimRequest for Address Claim– Normal Request Message of the Address Claim PGNNormal Request Message of the Address Claim PGN

• Address ClaimAddress Claim• Commanded AddressCommanded Address• Cannot ClaimCannot Claim

– Address Claim of the Null Address (254)Address Claim of the Null Address (254)

Page 9: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Always sent to Global!

Request for Address Claim

Request for Address ClaimAddress ClaimMessages

SOURCE

DESTINATION

111

Data

NAME 8 bytes

AddressClaimed

- Address Claim PGN --

P P P

Source Address

Address Claim PGN

Data

PGN lsb PGN PGN msb

-----Request PGN ------

Source Address

Global orSingularDestination Address

Global

Page 10: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Commanded Address

CommandedAddressMessage

SOURCE

DESTINATION

$0009 $02 Cmd. Addr PGN

7 bytes of NAME (LSB First)

1 byte of NAME (MSB), 1 byte cmd. addr, $FF,$FF, ...

TP.CM_BAMBroadcastRequest to Send 1 0 0 Source Address -Destination Address10

SENDERRECEIVER TP Conn. Mgt.

--------- 236 -----------

TP Control No. of Segments

321 byte

Data

1 byte 2 bytesNo. of Bytes Message PGN

3 bytesReserved

1 byte

TP.DTPacket Data

Packetized Data 7 bytesSequence No.1 byte

1 0 010

SENDER RECEIVER TP Data Xfer.

Source Address -Destination Address--------- 235 -----------

Data

TP.DTPacket Data

Packetized Data 7 bytesSequence No.1 byte

1 0 010

SENDER RECEIVER TP Data Xfer.

Source Address -Destination Address--------- 235 -----------

Data

$FF

Page 11: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

• ECUs have a NAME and address (numeric ID)ECUs have a NAME and address (numeric ID)

– AddressAddress• Provides unique identity within a sessionProvides unique identity within a session• Included in every message to provide message Included in every message to provide message

uniquenessuniqueness

– NAMENAME• Provides high probability of a unique identifier Provides high probability of a unique identifier

within a connected systemwithin a connected system• Provides some functional identification of ECUsProvides some functional identification of ECUs• Used to arbitrate in the case of an address Used to arbitrate in the case of an address

selection conflictselection conflict

• ECUs have a NAME and address (numeric ID)ECUs have a NAME and address (numeric ID)

– AddressAddress• Provides unique identity within a sessionProvides unique identity within a session• Included in every message to provide message Included in every message to provide message

uniquenessuniqueness

– NAMENAME• Provides high probability of a unique identifier Provides high probability of a unique identifier

within a connected systemwithin a connected system• Provides some functional identification of ECUsProvides some functional identification of ECUs• Used to arbitrate in the case of an address Used to arbitrate in the case of an address

selection conflictselection conflict

NAMEing - ECU Identity within the networkNAMEing - ECU Identity within the networkNAMEing - ECU Identity within the networkNAMEing - ECU Identity within the network

Page 12: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

64 Bits / 8 Bytes32 Bits 32 Bits

1 3 4 7 8 5 3 11 2111

NAME StructureNAME StructureNAME StructureNAME Structure

Page 13: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

1 3 7 7

7

11 210Independent fields

Dependent fields

1

NAME HierarchyNAME HierarchyNAME HierarchyNAME Hierarchy

Page 14: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

NAME ExampleNAME ExampleNAME ExampleNAME Example

– Second ECU of a Rate Control unit on third PlanterSecond ECU of a Rate Control unit on third Planter

• Self-Configuring - True = 1Self-Configuring - True = 1• Industry Group - Agriculture and Forestry = 2Industry Group - Agriculture and Forestry = 2• Device Class - Planter/Seeders = 4Device Class - Planter/Seeders = 4• Device Class Instance - Third Planter = 2Device Class Instance - Third Planter = 2• Function - Rate Control (undefined) = 255Function - Rate Control (undefined) = 255• Function Instance - First undefined = 0Function Instance - First undefined = 0• ECU Instance - Second ECU = 1ECU Instance - Second ECU = 1

– Second ECU of a Rate Control unit on third PlanterSecond ECU of a Rate Control unit on third Planter

• Self-Configuring - True = 1Self-Configuring - True = 1• Industry Group - Agriculture and Forestry = 2Industry Group - Agriculture and Forestry = 2• Device Class - Planter/Seeders = 4Device Class - Planter/Seeders = 4• Device Class Instance - Third Planter = 2Device Class Instance - Third Planter = 2• Function - Rate Control (undefined) = 255Function - Rate Control (undefined) = 255• Function Instance - First undefined = 0Function Instance - First undefined = 0• ECU Instance - Second ECU = 1ECU Instance - Second ECU = 1

Page 15: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Initialization ProcessInitialization ProcessInitialization ProcessInitialization Process

• Given in the text of the documentGiven in the text of the document– Following figuresFollowing figures

• Provides distributed methods for ECUs to Provides distributed methods for ECUs to secure the use of an addresssecure the use of an address

• Provides processes for both self and non-self Provides processes for both self and non-self configuring ECUsconfiguring ECUs

• Given in the text of the documentGiven in the text of the document– Following figuresFollowing figures

• Provides distributed methods for ECUs to Provides distributed methods for ECUs to secure the use of an addresssecure the use of an address

• Provides processes for both self and non-self Provides processes for both self and non-self configuring ECUsconfiguring ECUs

Page 16: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Waiting250 ms

for Address Claim

Contention

SendAddress Claim

PrioritizingAddress

Contention

Successful in Claiming address

SendingAnd Receiving

normal message traffic

Received acontending

Address Claim

SelectingAddress different

from contender

Contender'sNAME

greater than mineRe-ClaimCurrentAddress

Contender'sNAME

less than mine

STARTExecutingPower ON Self Test

POSTComplete

Received a contendingAddress Claim

SendAddress Claim

No AvailableAddress

Cannot Claim

Address

SentCannot Claim

Address

Delayingbefore

Address Re-Claim

"Bus-Off" ErrorOccurred

SendAddress Claim

250 ms ExpiredWithout a contending

Address Claim

DelayComplete

BeginPseudo-Random

Delay

Contender'sNAME

greater than mine

Re-ClaimCurrentAddress

PrioritizingAddress

Contention

Contender'sNAME

less than mine

State Transitions forState Transitions forself-configuringself-configuringECUs ECUs

Page 17: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

Waiting250 ms

for Address Claim

Contention

SendAddress Claim

PrioritizingAddress

ContentionDuring

Initialization

SendingAnd Receiving

normal message traffic

(Successful in Claiming address)

Receiveda contending

Address Claim /

Contender'sNAME

greater than mine /

Re-ClaimCurrentAddress

Contender'sNAME

less than mine /

STARTExecutingPower ON Self Test

Cannot Claim

Address

SendCannot Claim

Address

Delayingbefore

Address Re-Claim

"Bus-Off" Error Occurredor Message collision detected

during Address Claim /

SendAddress Claim

250 ms ExpiredWithout a contending

Address Claim /

DelayComplete /

State 1

TransitionCondition= "True" /

TransitionAction

State 2

Key

PrioritizingAddress

ContentionAfter

SuccessfulClaim

Contender'sNAME

greater than mine /

Re-ClaimCurrentAddress

Contender'sNAME

less than mine /

SendCannot Claim

Address

ReceivedRequest

forAddress Claim /

SendCannot Claim

Address Re-ClaimCurrentAddress

Received Requestfor Address Claim /

Delayingbefore

SendingCannot Claim

DelayComplete /

Received a contending

Address Claim /

POSTComplete /

State Transitions forState Transitions forNonNonSelf-configuringSelf-configuringECUs ECUs

Page 18: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

NAME-Address Table MaintenanceNAME-Address Table MaintenanceNAME-Address Table MaintenanceNAME-Address Table Maintenance

– Addresses of ECUs may changeAddresses of ECUs may change• May occur on initialization (initial address conflict)May occur on initialization (initial address conflict)

– New ECUs are added since last power-upNew ECUs are added since last power-up• Could occur during operationCould occur during operation

– New ECUs are powered during operationNew ECUs are powered during operation• Self-Configuring ECUs lose conflicts with non-Self-Self-Configuring ECUs lose conflicts with non-Self-

Configuring ECUsConfiguring ECUs– Self-Configuring bit in NAME gives non-self-configuring ECUs Self-Configuring bit in NAME gives non-self-configuring ECUs

prioritypriority

– Change of Addresses of ECUs rareChange of Addresses of ECUs rare• ECUs retain successfully claimed address for next power-ECUs retain successfully claimed address for next power-

upup• Changes occur on re-configurationChanges occur on re-configuration

– Addresses of ECUs may changeAddresses of ECUs may change• May occur on initialization (initial address conflict)May occur on initialization (initial address conflict)

– New ECUs are added since last power-upNew ECUs are added since last power-up• Could occur during operationCould occur during operation

– New ECUs are powered during operationNew ECUs are powered during operation• Self-Configuring ECUs lose conflicts with non-Self-Self-Configuring ECUs lose conflicts with non-Self-

Configuring ECUsConfiguring ECUs– Self-Configuring bit in NAME gives non-self-configuring ECUs Self-Configuring bit in NAME gives non-self-configuring ECUs

prioritypriority

– Change of Addresses of ECUs rareChange of Addresses of ECUs rare• ECUs retain successfully claimed address for next power-ECUs retain successfully claimed address for next power-

upup• Changes occur on re-configurationChanges occur on re-configuration

Page 19: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

NAME-Address Table MaintenanceNAME-Address Table MaintenanceNAME-Address Table MaintenanceNAME-Address Table Maintenance

• Must maintain current “NAME to Address” relationshipMust maintain current “NAME to Address” relationship– For ECUs to which destination specific messages are sentFor ECUs to which destination specific messages are sent

• Commands, RequestsCommands, Requests• May need current “NAME to Address” relationshipMay need current “NAME to Address” relationship

– For ECUs that are Listened toFor ECUs that are Listened to• If the information is sender dependentIf the information is sender dependent

– ProcedureProcedure• Listen to address claimsListen to address claims• Update table for those of interestUpdate table for those of interest• Maintain across power disruptionsMaintain across power disruptions

• Must maintain current “NAME to Address” relationshipMust maintain current “NAME to Address” relationship– For ECUs to which destination specific messages are sentFor ECUs to which destination specific messages are sent

• Commands, RequestsCommands, Requests• May need current “NAME to Address” relationshipMay need current “NAME to Address” relationship

– For ECUs that are Listened toFor ECUs that are Listened to• If the information is sender dependentIf the information is sender dependent

– ProcedureProcedure• Listen to address claimsListen to address claims• Update table for those of interestUpdate table for those of interest• Maintain across power disruptionsMaintain across power disruptions

Page 20: In-Vehicle Networking for Heavy Duty Systems Review of CAN / SAE J1939/ ISO 11783 Network Management ISO 11783 Part 5 J1939-81 Network Management ISO 11783

– < 10 ms< 10 ms, interruptions spaced by at least 100 ms:, interruptions spaced by at least 100 ms:• NO Loss of normal network communications nor loss of NO Loss of normal network communications nor loss of

in-process messages.in-process messages.• NO Processor reset.NO Processor reset.• NO Loss of data in volatile memory, including network NO Loss of data in volatile memory, including network

configuration information and/or messages in progress configuration information and/or messages in progress over the network.over the network.

– > 1s> 1s• Power is not restored within 1 second then the ECU must Power is not restored within 1 second then the ECU must

reset and complete a Power On Self Test (POST). reset and complete a Power On Self Test (POST).

– Between 10ms and 1sBetween 10ms and 1s• Internal requirements determine if a reset is required.Internal requirements determine if a reset is required.

– < 10 ms< 10 ms, interruptions spaced by at least 100 ms:, interruptions spaced by at least 100 ms:• NO Loss of normal network communications nor loss of NO Loss of normal network communications nor loss of

in-process messages.in-process messages.• NO Processor reset.NO Processor reset.• NO Loss of data in volatile memory, including network NO Loss of data in volatile memory, including network

configuration information and/or messages in progress configuration information and/or messages in progress over the network.over the network.

– > 1s> 1s• Power is not restored within 1 second then the ECU must Power is not restored within 1 second then the ECU must

reset and complete a Power On Self Test (POST). reset and complete a Power On Self Test (POST).

– Between 10ms and 1sBetween 10ms and 1s• Internal requirements determine if a reset is required.Internal requirements determine if a reset is required.

Reaction to Power Supply Voltage Reaction to Power Supply Voltage Disturbances and InterruptionsDisturbances and Interruptions

Reaction to Power Supply Voltage Reaction to Power Supply Voltage Disturbances and InterruptionsDisturbances and Interruptions