109
Controller Area Network Training Abraham Tezmol P ES FSD GDL

CAN- ITESO

  • Upload
    ynot666

  • View
    15

  • Download
    0

Embed Size (px)

DESCRIPTION

Sistemas electronicos embebidos, desde el disexo de la proto board hasta la soldadura, testing y automatizacion electronicos

Citation preview

Page 1: CAN- ITESO

Controller Area Network Training

Abraham Tezmol

P ES FSD GDL

Page 2: CAN- ITESO

Abraham Tezmol, M.S.E.E

2

Controller Area Network - CAN

Introduction

Page 3: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

3

CAN is used in a wide area of applicationsCAN is used in a wide area of applicationsAutomotive Medical

Factory automationRailway

Maritime Machine control

Building automation

Application

CAN

Page 4: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

4

Brakes

Dashboard

Power windows

Central locking

Engine

Airbag

Mirrors

Gearbox

Lights

Air conditioning

Car Body componentsTypically low-speed CAN Bus

Power Train components

Typically high-speed CAN Bus

Application

Page 5: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

5

Bus characteristics

Serial data communications busInexpensive and simple, but slower than parallel bus.

Sensor / actor busExample: rain sensor = sensor, windscreen wipers = actor, both connected via the same bus.

Linear bus structureNo star structure, no ring structure, no tree structure !

Page 6: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

6

Data rates

“Good” real-time capabilitiesSmall latency (“fast enough”) indispensable for automotive applications.

Data rate dependent on bus lengthData rate: 1 Mbit/sec Bus length: 40 meters,Data rate: 125 kBit/sec Bus length: 500 meters,Data rate: 50 kBit/sec Bus length: 1000 meters.

Typical definitions:Low-speed: 25 kBit/sec up to 125 kBit/sec.High-speed: 500 kBit/sec up to 1 Mbit/sec.

Page 7: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

7

Transmission principles

Multicast / broadcast philosophyCAN messages do not include references tosender or receivers, but to information contents.

Bus access principle: CSMA/CA Carrier Sense Multiple Access with Collision Avoidance

Carrier Sense: Every node monitors the bus level, all the time.

Multiple Access: Every node can start a transmission any timewhen the bus is free.

Collision Avoidance: When several nodes start transmission atthe same time, all but one withdraw from sending.

Page 8: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

8

Hardware characteristics

Hardware message acceptance filteringOnly leaves messages through which are of interest for the node reduces CPU load.

Sophisticated hardware error managementCombination of different error prevention and detection methods,automatic re-transmission of messages detected as erroneous very high transmission security among field bus systems.

Various transmission media Twisted-pair (dual-wire) cable, single-wire cable or optical fiber.

Standardized connector Recommended: 9-pin D-sub connectors (DIN 41652).

Page 9: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

9

Signal coding

NRZ (non-return-to-zero) codingExample: Voltage levels: 0V (dominant), 5V (recessive)

Characteristics of NRZ coding:

Voltage level stays the same for consecutive bits of same polarity.

Note:

Different voltage levels are defined for different purposes.

0 11 1 1 1 10 0 0 0 0 0recessiv

e

5V

dominant

0V

Page 10: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

10

Bus stations (Nodes)

Typically 3 to 40 nodes per busNo limit for node number defined in CAN specification.Number of nodes depends on capabilities of CAN transceivers.Bus load usually gets higher with more nodes.

Hot plug-in / plug-outConnect / disconnect nodes while the bus is up and running.

Page 11: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

11

Advantages of the CAN Bus

Advantages ofAdvantages ofthe

CAN Busconventional

cablingover

++++

++++

++

++++

Less wires

Less weight

Less connections

Less EMI problems Increased transmission reliability

Less space requirements

++

Easier addition of new nodes

Lower assembly costs

Page 12: CAN- ITESO

Abraham Tezmol, M.S.E.E

12

Controller Area Network - CAN

History

Page 13: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

13

Start of the Bosch internal project to develop an in-vehicle networkStart of the Bosch internal project to develop an in-vehicle network

Official introduction of CAN protocol

First CAN controller chips from Intel and Philips Semiconductors

Bosch’s CAN specification 2.0 published

CAN Kingdom CAN-based higher-layer protocol introduced by Kvaser

CAN in Automation (CiA) international users and manufacturers group establishedCAN in Automation (CiA) international users and manufacturers group established

CAN Application Layer (CAL) protocol published by CiACAN Application Layer (CAL) protocol published by CiA

First cars from Mercedes-Benz used CAN networkFirst cars from Mercedes-Benz used CAN network

ISO 11898 standard publishedISO 11898 standard published

1st international CAN Conference (iCC) organized by CiA1st international CAN Conference (iCC) organized by CiA

DeviceNet protocol introduction by Allen-BradleyDeviceNet protocol introduction by Allen-Bradley

ISO 11898 amendment (extended frame format) publishedISO 11898 amendment (extended frame format) published

CANopen protocol published by CiACANopen protocol published by CiA

Development of the time-triggered communication protocol for CAN (TTCAN)Development of the time-triggered communication protocol for CAN (TTCAN)

1983

1986

1987

1991

1991

1992

1992

1992

1993

1994

1994

1995

1995

2000

History

Page 14: CAN- ITESO

Abraham Tezmol, M.S.E.E

14

Controller Area Network - CAN

Overview

Page 15: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

15

Engine Control

Transmission Control

Anti-lock Break

Control

Active Suspension

HVACLighting

Power Seats Air Bags

Dash Board

Overview – In the beginning

The different control systems (and their sensors) to exchange

A cable network with a length of up to several miles and many connectors was required.

Growing problems concerning material cost, production time and reliability.

Page 16: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

16

Engine Control

Transmission Control

Anti-lock Break

Control

Suspension Control

HVACLighting

Power Seats

Airbag

Dash Board

High Speed Low Speed

CAN

Overview - Solution

CAN

CANCAN

CANCAN

CANCANC

AN

CA

N

Point-to-point wiring is replaced by one serial bus connecting all control systems

Page 17: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

17

Node Bmessage: oil temp.

120 120

Node Cmessages: display-

speed.

Node Amessage: rpm

Node Nmessage: display-

oil-temp.

Overview – basic concept

In the CAN protocol, the bus nodes do not have a specific address. Instead, the address information is contained in the identifiers of the transmitted messages, indicating the message content and the priority of the message

The number of nodes may be changed dynamically without disturbing the communication of the other nodes.

Multicasting and Broadcasting is supported by CAN.

Page 18: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

18

Application

Host-Controller

CAN-Controller

CAN-Transceiver

CAN-Bus

Display

C502

SAE 81C90

Stand aloneCAN-Controller

PCA 82C250T

120 120

Sensors

TC1775

on chip CAN

Low end controller with integrated

CAN-Controller

PCA 82C250T

Engine

C167CR

on chip CAN

High end controller with integrated

CAN-Controller

PCA 82C250T

Overview – basic concept

Page 19: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

19

Overview – basic concept

There are two bus states, called "dominant" and "recessive".

The bus logic uses a "Wired-AND" mechanism

"Dominant bits" (equivalent to the logic level "Zero") overwrite the "Recessive" bits (equivalent to the logic level "One" ).

Physical states (e.g. electrical voltage, light) that represent the logical levels are not defined in Bosch specification

Page 20: CAN- ITESO

Abraham Tezmol, M.S.E.E.

20

Controller Area Network - CAN

Features

Page 21: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

21

Bus-access by message priorityBus-access by message priority

Bus access conflicts resolved by arbitrationBus access conflicts resolved by arbitration

Message identifierMessage identifier

Features

Carrier Sense Multiple Access / Collision Resolution

Bit-wise

Non – destructive

Allows for guaranteed latency time

CAN has no node addresses

Extensive Error CheckingExtensive Error Checking Five different checks

Every connected node participates

Page 22: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

22

Data Consistency SecuredData Consistency Secured

A Higher Layer Protocol is always requiredA Higher Layer Protocol is always required

The capability of CAN is restricted by the Higher Layer Protocol chosen

Features

A message is accepted by all nodes or none

CAN is only a low level specification

Market segment

Real time requirements

Product administration requirements

Etc.

Page 23: CAN- ITESO

Abraham Tezmol, M.S.E.E

23

ISO/OSI: International Standardization Organization/Open Systems Interconnect

Controller Area Network - CAN

ISO / OSI Layer Structure

Page 24: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

24

7: Application Layer

6: Presentation Layer

2: Data Link Layer

1: Physical Layer

5: Session Layer

4: Transport Layer

3: Network Layer

Provides code conversation and data reformatting

Task synchronization, buffers, connection setup and monitoring, access rights control

Address conversion, routing,segmentation

Switching and Routing of data information

Interface between the data communication environment and the application

Electrical / mechanical characteristics: Transmission medium, wiring, connectors, encoding, signals

Transfer unit, data protocol,synchronization, arbitration,error management

Layer Structure

Page 25: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

25

Application Layer

Presentation Layer

Data Link Layer

Physical Layer

Session Layer

Transport Layer

Network Layer

Logical Link Control (LLC) Acceptance filtering, overload notification and recovery managementMedium Access Control (MAC) Data encapsulation (de-capsulation), frame coding(stuffing/de-stuffing), medium access management, error detection, error signaling, acknowledgement, and serialization (de-serialization).

Physical SignallingBit Encoding / Decoding, Bit Timing, Frame / Bit SynchronisationPhysical Medium AttachmentDriver / Receiver CharacteristicsTransmission Medium Cable, Connectors

Interface between the data communication environment and the application

Not explicitly specified in CAN

Layer Structure

Page 26: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

26

International Standards

International CAN standards

ISO 11898 “Road vehicles: CAN for high-speed communication”

ISO 11519 “Road vehicles: Low-speed serial data communication -Low-Speed CAN / VAN”

ISO 11992 “Road vehicles: Electrical connections betweentowing and towed vehicles”

EIA RS-485 “Electrical Characteristics of Generators andReceivers for Use in Balanced Digital Multipoint Systems”(formerly used for CAN Physical Layer)

Page 27: CAN- ITESO

Abraham Tezmol, M.S.E.E

27

Controller Area Network - CAN

Frames

Page 28: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

28

Data Frame

Remote Frame

Error Frame

Overload Frame

Interframe Space

Frames - Types

Page 29: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

29

Frames – Data Frame

Standard Format (CAN 2.0A): 11-bit Identifier211 identifiers possible

Bus Idle 11-bit Identifier 0..64 Bit Data 15-bit CRCSOF

DLC 7-bit EOFRTR

IDE

r0

DEL

ACK

DEL

IFS

Arbitration Field Control Field

Data Field CRC Field End of Frame Field

Bus IdleAck Field

Inter- frame Space

Bus Idle

recessive

dominantBus Idle

Extended Format (CAN 2.0B): 29-bit Identifier229 identifiers possible

18-bit Ext. Id

DLC 0..64 Bit Data 7-bit EOFIFS

Arbitration field

11-bit Base IdSOF

SRR

IDE

Bus Idle

recessive

dominant15-bit CRC

RTR

r1

r0

DEL

ACK

DEL

Control Field

Data Field CRC Field End of Frame Field

Bus IdleAck Field

Inter- frame Space

Bus Idle Bus Idle

Page 30: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

30

Arbitration Field0

SOFStart of Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Frames – Data Frame

Bus Idle

Marks the start of any CAN frame

It is always a dominant bit

Provides a falling edge for hard synchronization of transmitter and receivers

Page 31: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

31

Bus Idle SOF 11-bit Identifier RTR Control Field

Arbitration FieldStandard Frame

Frames – Data Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Contains the identifier (11 bit for CAN 2.0A) which is used for arbitration

Identifier determines frame priority: low identifier = high priority

The highest seven bits of the ID must not be all recessive

Remote Transmission Request (RTR) bit is always dominant in a Data Frame

Page 32: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

32

Bus Idle SOF 18-bit IDENTIFIER RTR Control Field

ArbitrationField

Extended Frame

IDESRR11-bit Identifier

Frames – Data Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Contains the identifier (29 bit for CAN 2.0B) which is used for arbitration

Identifier determines frame priority: low identifier = high priority

The highest seven bits of the identifier must not be all recessive

Remote Transmission Request (RTR) bit is always dominant in a Data Frame

Substiture Remote Request (SRR) bit is always recessive in a Data Frame

Page 33: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

33

IDE11-bit Identifier RTR DLC 0 DLC 1 DLC 2 DLC 3 Data Field

Control Field

Frames – Data Frame

Identifier Extension (IDE) bit is dominant for Standard Frames and recessive for Extended frames

r0 bit is not used ("reserved for future extensions")

Data Length Code (DCL, 4 bits) indicates number of data bytes in Data field; may take values ranging from 0 to 8, other values are not allowed

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Page 34: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

34

Control Field Data Field CRC Field

DataField

0 Data Bytes0 Data Bytes e.g. to indicate an evente.g. to indicate an event1 Data Byte1 Data Byte lowlow net data rate on the CAN bus net data rate on the CAN bus 8 Data Bytes8 Data Bytes highhigh net data rate on the CAN bus net data rate on the CAN bus

Frames – Data Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Contains the actual information which is transmitted

Number of data bytes may range from 0 to 8 in units of bytes

Number of data bytes is given in the Data Length Code (DLC)

Transmission starts with the first data byte (byte 0), MSB first

Page 35: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

35

CRCField

DELData Field CRC Field Acknowledge Field

Frames – Data Frame

Contains the 15-bit Cyclic Redundancy Check (CRC) code

Use polynomial generator: x15 + x14 + x10 + x8 + x7 + x4 + x3 + 1

CRC is a complex, but fast and effective error detection method

The CRC Field Delimiter (DEL) marks the end of the CRC field

The CRC Field Delimiter is always recessive

SOFArbitration

FieldData Field

Control Field

CRC FieldACK Field

EOF

Page 36: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

36

Acknowledge Field

DELACKCRC Field EOF Field

Frames – Data Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Contains the Acknowledgement (ACK Slot) bit

The Acknowledgement bit can be dominant (TX) or recessive (RX)

The ACK Field Delimiter (DEL) marks the end of the ACK field

The ACK Field Delimiter is always recessive

Page 37: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

37

ACK Field Interframe1 1 1 1 1 1 1

End of Frame (EOF) field

Frames – Data Frame

SOFArbitration

FieldData Field

Control Field

CRC Field

ACK Field

EOF

Consists of seven (7) consecutive recessive bits

Marks the end of the Data Frame

Follows the Acknowledge (ACK) field

Is followed by the Interframe Space (IFS)

Page 38: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

38

Frames – Remote Frame

Used to request transmission of a specific Data Frame

Similar to a Data Frame, but without Data Field

Remote Transmission Request (RTR) bit is recessive

Same identifier as the Data Frame which is requested

Note: When Remote Frame is transmitted at the same time as corresponding Data Frame, Data frame wins arbitration because of dominant RTR bit

11-bit IdentifierSOF

DLCRTR

IDE

r0 15-bit CRC 7-bit EOF

DEL

ACK

DEL

IFSrecessiv

e

dominant

11-bit Identifier 0..64 Bit Data 15-bit CRCSOF

DLC 7-bit EOFRTR

IDE

r0

DEL

ACK

DEL

IFSrecessiv

e

dominant

Standard Data Frame

Standard Request Frame

Bus Idle Bus Idle

Bus IdleBus Idle

Page 39: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

39

Node ANode B

Oil Temp Sensor

How hot is oil?Remote Frame: ID→oil_id

89°CData Frame: ID → oild_id

89oC89oC

Frames – How is a Remote Frame used?

If a node wishes to request the data from the source, it sends a Remote Frame with an identifier that matches the identifier of the required Data Frame.

The appropriate data source node will then send a Data Frame as a response to this remote request.

Page 40: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

40

Intermission Field3 Bits

CAN Frame CAN FrameBUS Idle 0…

Interframe Space

Frames – Interframe Space

Consists of three consecutive recessive bits

Separates two consecutive frames from each other

No transmission is allowed during the Inter frame Space (IFS)

It is needed by controllers to copy received frames from their Rx buffers

ACK Field Delimiter + EOF + IFS = 11 consecutive recessive bits

It might be followed by “Bus Idle” sequence of indefinite length

Page 41: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

41

Unit sends Overload Frame when at present it cannot receive frames

Transmission of an Overload Frame is started during the first two bits

Other units react immediately by also transmitting Overload Frames → Overload Flags overlap, resulting in up to 12 consecutive dominant bits

Implemented in very few (mostly older) controllers, though controllers must still be able to interpret correctly Overload Frames they receive

Overload Frames do not influence the error counters (TEC and REC)

Overload Flag6 dominant bitsInter frame

0..6 dominant bits 8 recessive bitsInter frame

Superposition of Overload Flags

OverloadDelimiter

Overload Frame

Frames – Overload Frame

Page 42: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

42

Error Flag Field6 ..12 bits

Error Delimiter Field

6 ..12 bits

Data or Error Frame

Inter frame or Overload Frame

Active Error Frame

Frames – Active Error Frame

Sender and receivers reject erroneous frame completely and do not process it any further

Error flag actively violates the bit stuffing rule

After the Error Delimiter bus activity returns to normal and the interrupted node attempts to re send the aborted message

Page 43: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

43

Error Delimiter Field8 Bits

Error Flag Field6 bits

Bus Idle Inter frame or Overload Frame

Passive Error Frame

Frames – Passive Error Frame

Can still receive frames like a unit in error active state Error flag actively violates the bit stuffing rule

Has to wait after transmission of a Data Frame for 8 recessive bit cycles on the bus until it is permitted to transmit another Data Frame

Can go back to error active state for TEC <= 127 AND REC <= 127

Page 44: CAN- ITESO

Abraham Tezmol, M.S.E.E

44

Controller Area Network - CAN

Error Detection

Page 45: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

45

CRC ErrorForm Error

Stuff Error

Ack Error Bit Error

Error Detection - Overview

Page 46: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

46

Error Detection – Error Types

Bit error transmitted and received bit are different

except in arbitration, acknoledge and passive error

Bit stuffing error More than five bits of equal polarity inside of a frame are detected

CRC error Received CRC code does not match with the calculated code

ACK error Transmitting node receives no dominant acknowledgement bit

no receiver node accepts the transmission message

Form error Fixed-form bit field contains one or more illegal bits

e.g. violation of end of frame EOF format, CRC or ACK delimiter

Page 47: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

47

Node A Node B

Error Frame

Calculated CRC Checksum

1234h

Calculated CRC Checksum

1235h

Transmitted CRC Checksum

1234h

Received CRC Checksum

1234h

Error Detection – Cyclic Redundancy Check

This CRC sequence is transmitted in the CRC Field of the CAN frame.

The receiving node also calculates the CRC sequence using the same formula and performs a comparison to the received sequence.

If node B detects a mismatch between the calculated and the received CRC sequence, then a CRC error has occurred.

Node B discards the message and transmits an Error Frame to request retransmission of the garbled frame.

Page 48: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

48

Node A Idle Receive Transmit

Recessive

Dominant

Node B Idle Receive Transmit

Recessive

Dominant

CAN Bus Idle Active

Recessive

Dominant

ACK. ACK. SlotSlot

ACK. ACK. DelimiterDelimiter

Ack. Field

A frame must be acknowledged by at least one other node.Otherwise ACK-Error

Error Detection – Acknowledge Procedure

Page 49: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

49

1 1 1 1 7 3150... 6441 1 111

Standard Data Frame

Sta

rt f

o F

ram

e

Iden

tifi

er

Fie

ld

RT

R B

it

IDE

Bit

Res

eved

Dat

a le

ng

th C

od

e

Dat

a F

ield

CR

C S

equ

ence

CR

C D

elim

iter

AC

K D

elim

iter

En

d o

f F

ram

ein

term

issi

on

Bu

s Id

le

Arbitration Field

Control Field

CRC Field

AC

K S

lot

ACKField

En

d o

f F

ram

e

Dat

a F

ield

Inter Frame

Error Detection – Frame Check

If a transmitter detects a dominant bit in one of the four segments:

CRC Delimiter

Acknowledge Delimiter

End of Frame

Interframe Space

Then a Form Error has occured and an Error Frame is generated. The message will then be repeated

Page 50: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

50

1 1 1 1 7 3150... 6441 1 111

Standard Data Frame

Sta

rt f

o F

ram

e

Iden

tifi

er

Fie

ld

RT

R B

it

IDE

Bit

Res

eved

Dat

a le

ng

th C

od

e

Dat

a F

ield

CR

C S

equ

ence

CR

C D

elim

iter

AC

K D

elim

iter

En

d o

f F

ram

e

inte

rmis

sio

nB

us

Idle

Arbitration Field

Control Field

CRC Field

AC

K S

lot

ACKField

En

d o

f F

ram

e

Dat

a F

ield

Inter Frame

Error Detection – Bit Monitoring

Bit error occurs if a transmitter

Sends a dominant bit but detects a recessive bit on the bus line or

Sends a recessive bit but detects a dominant bit on the bus line

An Error Frame is generated and the message is repeated

When a dominant bit is detected instead of a recessive bit, no error occurs during the Arbitration Field or the Acknowledge Slot because these fields must be able to be overwritten by a dominant bit in order to achieve arbitration and acknowledge functionality

Page 51: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

51

1 1 1 1 7 3150... 6441 1 111

Standard Data Frame

Sta

rt f

o F

ram

e

Iden

tifi

er

Fie

ld

RT

R B

it

IDE

Bit

Res

eved

Dat

a le

ng

th C

od

e

Dat

a F

ield

CR

C S

equ

ence

CR

C D

elim

iter

AC

K D

elim

iter

En

d o

f F

ram

e

inte

rmis

sio

nB

us

Idle

Arbitration Field

Control Field

CRC Field

AC

K S

lot

ACKField

En

d o

f F

ram

e

Dat

a F

ield

Inter Frame

Error Detection – Bit Stuffing Check

If six consecutive bits with the same polarity are detected between Start of Frame and the CRC Delimiter, the bit stuffing rule has been violated

A stuff error occurs and an Error Frame is generated. The message is then repeated

Page 52: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

52

Error Detection – Error Management Unit

The error management unit is used to:

Cancel erroneous messages at all CAN nodes

Disconnect nodes from the CAN bus, if they detect/generate too many errors

The error management unit uses two error counters:

A receive error counter REC

A transmit error counter TEC

The CAN controller may work in three different states:

Error active state for each detected error an active error flag is generated

Queue of six consecutive dominant bits

Error passive state for each detected error a passive error flag is generated

Queue of six consecutive recessive bits

Bus off state if too many errors are detected by one node, this node is automatically disconnected from the bus

Page 53: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

53

Error Detection – Status of a CAN Node

The CAN node status levels are switched depending upon the values of TEC and REC:

Error active Transmit Error Counter TEC and Receive Error Counter REC are less than 128 (CAN node status after reset: TEC = REC = 0)

Error passive TEC or REC is greater than 127 and TEC is less than 255

Bus off TEC is greater than 255

Error Counter

TEC and REC 127

TEC or REC > 127 and 255

TEC > 255

Status of Node

Error active

Error passive

Bus off

Generated Error Flag

6 dominant bits

6 recessive bits

Page 54: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

54

CAN Initialization

ErrorPassive

BusOff

ErrorActive

REC > 127 or

TEC > 127

REC < 128 andTEC < 128

TEC > 255

Bus off recovery sequence:

(Reset + Configuration orConfiguration) and

occurrence of 128 times 11 recessive bits

Error Detection – Operational States

Page 55: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

55

In the case of one node detects a local error it will send an error flag. Other nodes may detect an error because of this error flag. They send also an error flag.

After receiving/sending an error flag all nodes cancel the message.

Each node which detects an error increments his error counter(s).

The transmitter of a cancelled message retransmits automatically this message.

Each CAN node which detects an error - local or global error - sends an error flag to inform all other stations about this error (globalization)

An error flag is a queue of six consecutive bits

Error active node :

6 dominant bits

Error condition

Error passive node :

6 recessive bits

Error condition

Error Detection – Steps of Error Handling

Page 56: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

56

TECTx - Count

RECRx - Count- 1

• Successful transmission (incl. ACK)

+8

• Bit Error detected (e.g. can’t write dominant bit)

• 8th consecutive dominant bit following an Error Flag

• no Acknowledge bit (only in Error Active mode)

• error detected in EOF

- 1

• Successful reception (incl. ACK)

+ 8/+ 1

• node detects an error (+1)

• error detected in first 6 bits of EOF (+1)

• transmit node is sending an Error Flag (+8)

• Bit Error detected (+8)

• 8th consecutive dominant bit following an Error Flag (+8)

Error Detection – Error Counters

The ERROR MANAGEMENT UNIT serves two ERROR COUNTER

Page 57: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

57

Error Detection – Bus OFF

A unit is in bus off state when

Its Transmit Error Counter (TEC) is greater than 255: TEC > 255

Note: The value of the Receive Error Counter (REC) is of no importance

In bus off state a unit

Is practically disconnected from the bus

Can not receive and transmit anything any more

Can only leave bus off mode via a hardware reset OR

Via a software reset and subsequent initialization carried through by the host (BOSH specification: TEC and REC are set to zero and the unit must receive 128 times a field of 11 consecutive recessive bits)

Page 58: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

58

The Warning Level for a unit is set when

its Transmit Error Counter (TEC) is greater than 96: TEC > 96 AND / OR

its Receive Error Counter (REC) is greater than 96: REC > 96

When a unit reaches the Warning Level

it is indicated to the controller CPU that the unit is “heavily disturbed”

an “Error Warning Flag” is set

optionally, an interrupt might result from this

the “Error Warning Flag” can be cleared for TEC <= 96 AND REC <= 96

Practical use of the Warning Level

By constantly checking the “Error Warning Flag”, it can be determined whether a unit gets near the threshold to the error passive state

unfortunately, by checking this flag, one cannot determine whether a unit is still in error active state or already in error passive state

Error Detection – Warning Level

Page 59: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

59

TECValueTEC

Value

TimeTime

12796 Warning Limit

Bus OffBus Off255

Error PassiveError Passive

Error ActiveError Active

Error Detection – Tx Error Counter TEC

Page 60: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

60

TimeTime

RECValueRECValue

12796

255

Error PassiveError Passive

Error ActiveError Active

Bus OffBus Off

Warning Limit

Error Detection – Receive Error Counter REC

Page 61: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

61

The probability for not discovering an error is

4.7 10-11

Example 1*

A CAN bus is used 365 days / year8 hours / day

with a transmission speed of 500 kBit / sec and errors arise every 0.7 seconds

in 1.000 years, only one error remains undiscovered

*Source: CiA

Example 2**

A CAN bus in a car is runing at 500 kBit / sec with an average bus load of 15 % an average data frame size of 110 bits for an average operating time of 4000 hours

only one error in 100.000 automobiles remains undetected

**Source: Kaiser, Schröder: “Maßnahmen zur Sicherung der Daten beim CAN-Bus”

Error Detection

Page 62: CAN- ITESO

Abraham Tezmol, M.S.E.E

62

Controller Area Network - CAN

Synchronization

Page 63: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

63

The CAN protocol uses Non-Return-to-Zero or NRZ bit coding.

This means that the signal is constant for one whole bit time and only onetime segment is needed to represent one bit.

Usually, but not always,

a "zero" corresponds to a dominant bit, placing the bus in the dominant state

a "one" corresponds to a recessive bit, placing the bus in the recessive state.

Synchronization – Non return to zero

Page 64: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

64

Long sequences of bits of the same polarity

No changes in voltage level for a longer time

No falling edges for synchronization

Synchronization between sender and receiver may be lost

0 11 1 1 1 10 0 0 0 0 0recessive

dominant

Synchronization – Problems with NRZ

Page 65: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

65

Bit stuffing is used to ensure synchronization of all busnodes

During the transmission of a message, a maximum of five consecutive bits may have the same polarity.

The transmitter will insert one additional bit of the opposite polarity. into the bit stream before transmitting further bits.

The receiver also checks the number of bits with the same polarity and removes the stuff bits again from the bit stream. This is called "destuffing".

Synchronization – Bit Stuffing

Page 66: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

66

After five consecutive bits of same polarity, insert one bit of reverse polarity

CRC code is calculated before bit stuffing is done

de-stuffing is done by the receiver directly after reception

CRC code check is done after de-stuffing the frame

bit stuffing is applied to part of the frame from SOF to CRC field

Synchronization – Bit Stuffing

1 1 1 1 7 3150... 6441 1 111

Standard Data Frame

Sta

rt f

o F

ram

e

Iden

tifi

er

Fie

ld

RT

R B

it

IDE

Bit

Res

eved

Dat

a le

ng

th C

od

e

Dat

a F

ield

CR

C S

equ

ence

CR

C D

elim

iter

AC

K D

elim

iter

En

d o

f F

ram

e

inte

rmis

sio

nB

us

Idle

Arbitration Field

Control Field

CRC Field

AC

K S

lot

ACKField

Sta

rt o

f F

ram

e

Dat

a F

ield

Inter Frame

Page 67: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

67

Synchronization – Bus Synch

CAN handles message transfers synchronously

All nodes are synchronized at the beginning of each message with the first falling edge of a frame which belongs to the Start Of Frame bit Hard Synchronization.

To ensure correct sampling up to the last bit, the CAN nodes need to re-synchronize throughout the entire frame. This is done on each recessive to dominant edge.

Page 68: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

68

Synchronization – Bit Construction

Page 69: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

69

The bit time tBit is the time it takes to transmit one bit.

Example: Data rate: f = 500 kBit / s Bit time: tBit = 2 μs

Bit time

1 Bit

Synchronization – Bit Time

Page 70: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

70

Bit time

1 Bit

tq

The bit time is divided up into time quanta tq.Length of one time quantum: tq = BRP /

fSys

Allowed number of time quanta: 8 nq 25BRP: Baud Rate Prescaler, fSys: System clock

Synchronization – Time Quantum

Page 71: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

71

Bit time

tq

Sync_Seg

Prop_Seg

Phase_Seg2

Phase_Seg1

Synchronization Segment

Propagation Time Segment

Phase Buffer Segment 2

Phase Buffer Segment 1

Synchronization – Bit time segments

Page 72: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

72

Bit time

tq

Edges in CAN bus level are expected to occur here.

Synchronization Segment has fixed length: ttSync_SegSync_Seg = 1 = 1

ttqq

Synchronization – Synchronization segment

Page 73: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

73

Bit time

tq

The Propagation Time Segment compensates forphysical delay times within the CAN network.

Length: 1 t1 tqq t tProp_SegProp_Seg 8 t 8 tqq

Synchronization – Propagation Time Segment

Page 74: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

74

Bit time

tq Sample point

Phase_Seg2

Phase_Seg1

Phase Buffer Segment 2

Phase Buffer Segment 1

Phase Buffer Segment 1 may be lengthened during resynchronization.

Phase Buffer Segment 2 may be shortened during resynchronization.

Synchronization – Sample point

Page 75: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

75

Bit time

tq

The Phase Buffer Segments surround the sample point.

Lengths: 1 t1 tqq t tPhase_Seg1Phase_Seg1 8 t 8 tqq

2 t2 tqq t tPhase_Seg2Phase_Seg2 8 t 8 tqq

Sample point

Synchronization – Sample point

Page 76: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

76

TSEG1

TSEG2

BRP

SJW

Time Segment 1TSEG1 = Prop_Seg + Phase_Seg1

Time Segment 2TSEG2 = Phase_Seg2

Baud Rate Prescaler

Synchronization Jump WidthSJW min ( Phase_Seg1, Phase_Seg2 ) AND SJW 4SJW indicates the maximum number of time quanta tq

by which TSEG1 may be lengthened or TSEG2 may be shortened.

TSEG2TSEG1

Synchronization – Adjustable parameters

Page 77: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

77

Bit time

tq

The Phase Buffer Segments surround the sample point.

Lengths: 1 t1 tqq t tPhase_Seg1Phase_Seg1 8 t 8 tqq

2 t2 tqq t tPhase_Seg2Phase_Seg2 8 t 8 tqq

Sample point

Synchronization – Sample point

Page 78: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

78

Sync_Seg

Prop_Seg

Phase_Seg2

Phase_Seg1

Synchronization Segment

Propagation Time Segment

Phase Buffer Segment 2

Phase Buffer Segment 1

Needed Sample Point

tq

Next edge for Re- synchronization delayed by 1tq

Needed Sample Point

Transmitter-slower

Receiver-faster

Next sync.seg.

Next sync.seg.

Phase Buffer Segment 1 lengthened by 1tq

Needed Sample Point

Needed Sample Point

Transmitter-slower

Receiver-faster

Next sync.seg.

Next sync.seg.

Synchronization – Bit lengthening

Page 79: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

79

Sync_Seg

Prop_Seg

Phase_Seg2

Phase_Seg1

Synchronization Segment

Propagation Time Segment

Phase Buffer Segment 2

Phase Buffer Segment 1

Phase Buffer Segment 2 shortened by 1 tqNeeded Sample

Point

Needed Sample Point

Next sync.seg.

Next sync.seg.

Receiver-slower

Transmitter-faster

Next edge for Re- synchronization delayed by 1tq too early

Needed Sample Point

Needed Sample Point

Next sync.seg.

Next sync.seg.Transmitter-faster

Receiver-slower Bit N

Bit N+1

Synchronization – Bit shortening

Page 80: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

80

Bit time

tq

The Phase Buffer Segments surround the sample point.

Lengths: 1 t1 tqq t tPhase_Seg1Phase_Seg1 8 t 8 tqq

2 t2 tqq t tPhase_Seg2Phase_Seg2 8 t 8 tqq

Sample point

Synchronization – Sample point

Page 81: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

81

1. Define bit rate fBit

or bit time tBit = 1 / fBit

2. Define number of time quanta nq

per bit time tBit . Remember that:

8 nq 25

Synchronization – Parameter calculation (1)

Page 82: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

82

3. Calculate length of time quantum tq

tq = tBit / nq

4. Calculate value of Baud Rate Prescaler (BRP)

BRP = tq * fSys

First Bit Timing parameter: BRP

Synchronization – Parameter calculation (2)

Page 83: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

83

5. The length of the Synchronization Segment Sync_Seg is fixed:

tSync_Seg = 1 tq

6. To define the length of the Propagation Segment Prop_Seg, measure the delay times in the system.

Rule of thumb: The longer the CAN Bus,the longer the Propagation Segment.

Synchronization – Parameter calculation (3)

Page 84: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

84

7. Define the length of the Propagation Segment Prop_Seg. Remember that:

1 tq tProp_Seg 14 tq

Additionally, the following rule applies:

3 tq tBit - tSync_Seg - tProp_Seg 16 tq

Synchronization – Parameter calculation (4)

Page 85: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

85

Sync_Seg

Prop_Seg

Phase_Seg2

Phase_Seg1

Synchronization Segment

Propagation Time Segment

Phase Buffer Segment 2

Phase Buffer Segment 1

Node ANode A

Node BNode B

Delay A_to_BDelay B_to_A

Prop_Seg >= Delay A_to_B + Delay B_to_A

Prop_Seg >= 2 • [max(node output delay+ bus line delay + node input delay)]

Delay A_to_B >= node output delay(A) + bus line delay(AB) + node input delay(B)

Synchronization

Page 86: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

86

8. If the remaining number of time quanta

( tBit - tSync_Seg - tProp_Seg ) / tq

is an odd number, choose:

tPhase_Seg2 = tPhase_Seg1 + 1 tq

else choose: tPhase_Seg2 = tPhase_Seg1

Synchronization – Parameter calculation (5)

Page 87: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

87

9. Calculate values of TSEG1 and TSEG2:

TSEG1 = ( tProp_Seg + tPhase_Seg1 ) / tq

TSEG2 = tPhase_Seg2 / tq

Second Bit Timing Parameter: TSEG1

Third Bit Timing Parameter: TSEG2

Synchronization – Parameter calculation (6)

Page 88: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

88

10. Choose the Synchronization Jump Width (SJW). Remember that:

SJW min ( Phase_Seg1, Phase_Seg2 )SJW 4

Rule of thumb: The larger the oscillator tolerance,the larger the Synchronization Jump Width.

Fourth Bit Timing Parameter: SJW

Synchronization – Parameter calculation (7)

Page 89: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

89

1MB 40m

50KB 1000m

Synchronization – Baud Rate vs Bus Length

Page 90: CAN- ITESO

Abraham Tezmol, M.S.E.E.

90

Controller Area Network - CAN

Arbitration

Page 91: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

91

Transmission with Carrier Sense Multiple Access with Collision Avoidance CSMA/CA

Dominant Bits (low) win against Recessive Bits (high)

Node A Node B

V+

Receive

Node N

V+

Receive Receive

dominantrecessive recessive1 (high)

0 (low)

Bus Line

Transmit TransmitTransmit

Arbitration – Physical Transmission

Page 92: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

92

0

0

0

0

1

0

0

0

1

1

1

0

1

0

0

SOF

0

SOF

0

SOF

0

Start

1recessive

dominant

Unit 1ID: 13Dh

Bus

Idle

Start

1recessive

dominant

Unit 2ID: 069h

Bus

Idle

1recessive

dominant

Start

Unit 3ID: 079h

Bus

Idle

1recessive

dominant

Bus level

0

0

0

0

1

1

1

0 1 1 10 1 1 0 loses arbitration

withdraws

0

0

0

1 10 0 wins arbitration

1 10 0 loses arbitration

withdraws

1 10 0

Arbitration – Example

Page 93: CAN- ITESO

Abraham Tezmol, M.S.E.E

93

Controller Area Network - CAN

Controller

Page 94: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

94

Controller – Structure of CAN Controller

Page 95: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

95

Bit Stream Processor translates messages into frames and vice versa. inserts and extracts stuff bits calculates and checks the CRC code evaluate at the Sample Point and processes the sampled bus input bit.

Bit Timing Logicnumber of time quanta in the bit time..synchronization but occasionalBit Timing Logic (configured by TSEG1, TSEG2, and SJW) defines thenumber of time quanta in the bit time.

The Shift Register serializes the messages to be sent and parallelizes received messagesIts loading and shifting is controlled by the BSP.

Baud Rate Prescalerdefines the length of the time quantum, the basic time unit of the bit time; the

Controller

Page 96: CAN- ITESO

Abraham Tezmol, M.S.E.E

96

Controller Area Network - CAN

Physical Layer

Page 97: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

97

High Speed Differential

Fault Tolerant Differential

Single Wire

Number of Bus Wires

2 21

(Ground Reference)

Maximum Bus Speed

500 Kbps125 Kbps

(Ltd by prop delay)33.3 Kbps

(Ltd by prop delay)

Bus Topologies

Linear Bus, Star, Ring Bus, Star, Ring

Automotive Standards Documents

ISO 11898-2, SAE J2284

ISO 11898-3 SAE J2411

Parts Available

MC33989 (SBC) MC33889 (SBC Lite) MC33897

CommentsSilicon solutions to

common mode noise developed

Automatically switch to single wire reception when fault detected

Based on J1850-VPW technology with

enhanced wakeup capability

CAN Physical Interfaces - Automotive Standards

Page 98: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

98

Physical Layer – TxRx Comparison

Page 99: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

99

GND

TxD CAN_H

CAN_L

Rs

C CAN_H

CAN_L

PCA82C250

RxD

Vref

VCC

Vref reference voltage outputTxD transmit data inputRxD receive data outputGND ground

Rs slope resistor inputCAN_H HIGH level CAN voltage input / outputCAN_L LOW level CAN voltage input / outputVcc supply voltage

Physical Layer – Transceiver HSCAN

Page 100: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

100

Recessive RecessiveDominant

CAN-L

CAN-H3.5

2.5

1.5

Volts

Time

Physical Layer – Physical Aspects

Transmission rate up to 1 MBit/s needs bus driver circuits (transceiver) according to ISO/DIS 11898

CAN High Speed Transmission (ISO/DIS 11898)

Transmission rate 125 Kbit/s up to 1 MBit/s

Max. bus length depend on transmission rate (e.g. 1 MBit/s max. 40 m bus length)

Up to 30 nodes

Page 101: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

101

CAN_L

CAN_H

EN enable input signalNSTB Node standby input signalNWAKE Node wake input signalTxD transmit data inputRxD receive data outputBAT battery voltageVCC supply voltage

NERR error output pinCAN_H high voltage bus lineRTH termination resistorCAN_L low voltage bus lineRTL termination resistorINH inhibit outputGND ground

EN

NSTB

NWAKE

TxD

BAT

VCC

NERR

RxD CAN_H

RTH

CAN_L

RTL

INH

GND

12V VCC

VCC

C

TJA1053

Physical Layer – Transceiver Fault Tolerant

Page 102: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

102

Recessive RecessiveDominant

CAN-L

CAN-H

3.25

1.75

1.0

Volts

Time

4.0

Physical Layer – Physical Aspects

CAN Low Speed Transmission (ISO / DIS 11519-2) Transmission rate 10 KBit/s up to 125 KBit/s

max. bus length depend on the distributed capacity of the line up to 20 nodes

Page 103: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

103

Physical Layer – CAN and EMI

Due to the differential nature of transmission CAN is insensitive to electromagnetic interference, because both bus lines are affected in the same way which leaves the differential signal unaffected

To reduce the sensitivity against electromagnetic interference even more, the bus lines can additionally be shielded. This also reduces the electromagnetic emission of the bus itself, especially at high baudrates.

Page 104: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

104

~~~ ~

Node 1

CAN-H

CAN-L

120 120

. . . . . .

Physical Layer – DW bus line Termination

Node A Node N

Page 105: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

105

Pin Signal Description

1 - Reserved 2 CAN_L CAN_L bus line dominant low 3 CAN_GND CAN Ground 4 - Reserved 5 (CAN_SHLD) Optional CAN Shield 6 (GND) Optional Ground 7 CAN_H CAN_H bus line dominant high 8 - Reserved 9 (CAN_V+) Optional CAN external pos. supply

male female

Physical Layer

Connectors for CAN

The CAN connector is defined according to the specifications ISO/DIS 11898 and CiA/DS 102-1 (defines pinning). The optional Pins 6 and 9 may be used to feed a NiPC (Networked industrial Process Control) unit.

Page 106: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

106

The CAN bus cable needs at the ends a termination resistor RT to provide EMC characteristics without corrupting the DC characteristics:

For basic termination at a serial cable use for termination resistor RT = 120 with linear CAN bus lines.

For a split termination concept use for termination resistor RT/2 = 60 with a star architecture.

RT = 120 RT = 120 CAN linear bus

RT /2 = 60 CAN linear bus

RT /2 = 60

RT /2 = 60

RT /2 = 60 Cg Cg = 10 .. 100nF

CAN_H

CAN_H

Physical Layer – Terminator Resistor

Page 107: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

107

Physical Layer – SW CAN

Page 108: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

108

Arbitration – SW CAN

Page 109: CAN- ITESO

Abraham Tezmol, M.S. E.E.

CANCAN

109

WK Up and Bus Signal Levels – SW CAN