Control Area Network (CAN) Bus

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 13

Control Area Network (CAN) Bus

CANBUS History

 First idea - The idea of CAN was first conceived by engineers


at Robert Bosch Gmbh in Germany in the early 1980s.
 Early focus - develop a communication system between a
number of ECUs (electronic control units).
 New standard - none of the communication protocols at that
time met the specific requirements for speed and reliability so
the engineers developed their own standard.

2
CANBUS Timeline

 1983 : First CANBUS project at Bosch


 1986 : CAN protocol introduced
 1987 : First CAN controller chips sold
 1991 : CAN 2.0A specification published
 1992 : Mercedes-Benz used CAN network
 1993 : ISO 11898 standard
 1995 : ISO 11898 amendment
 Present : The majority of vehicles use CAN bus.

3
The Development of CAN
The development of CAN began when more and more electronic
devices were implemented into modern motor vehicles.

Examples of such devices include engine management systems, active


suspension, ABS, gear control, lighting control, air conditioning, airbags
and central locking. All this means more safety and more comfort for the
driver and of course a reduction of fuel consumption and exhaust
emissions.

The requirement for information exchange has then grown to such an


extent that a cable network with a length of up to several miles and
many connectors was required. This produced growing problems
concerning material cost, production time and reliability.

4
Before CAN

5
With CAN

6
CAN Bus Characterstics

7
Bus Characteristics – Wired AND

Only if all nodes transmit recessive bits If any one node transmits a dominant bit
(ones), the Bus is in the recessive state. (zero), the bus is in the dominant state.

T is Transmitter, R is receiver. Note nodes can therefore check the line while
transmitting. This is important particularly during arbitration.

8
Message Oriented Transmission Protocol
 Each node – receiver & transmitter
 A sender of information transmits to all devices on the bus
 All nodes read message, then decide if it is relevant to them
 All nodes verify reception was error-free
 All nodes acknowledge reception

CAN bus © 2005 Microchip Technology Incorporated. All Rights Reserved.

9
The CAN Standard
 The CAN standard defines four message types
 Data Frame – the predominantly used message type
 Remote Frame
 Error Frame
 Overload Frame
 The messages uses a clever scheme of bit-wise arbitration to
control access to the bus, and each message is tagged with a
priority.
 The CAN standard also defines an elaborate scheme for error
handling and confinement.
 CAN may implemented using different physical layers, and
there are also a number of different connector types in use.

10
Basic message frame format
Length
Field name (bits) Purpose

Start-of-frame 1 Denotes the start of frame transmission


Identifier 11 A (unique) identifier for the data

Remote transmission request (RTR) 1 Must be dominant (0)

Identifier extension bit (IDE) 1 Must be dominant (0)

Reserved bit (it must be set to dominant (0), but accepted as


Reserved bit (r0) 1 either dominant or recessive)
Data length code (DLC) 4 Number of bytes of data (0-8 bytes)

Data field 0-8 bytes Data to be transmitted (length dictated by DLC field)
CRC 15 Cyclic redundancy check
CRC delimiter 1 Must be recessive (1)

Transmitter sends recessive (1) and any receiver can assert a


ACK slot 1 dominant (0)
ACK delimiter 1 Must be recessive (1)
End-of-frame (EOF) 7 Must be recessive (1)
Message Format
 Each message has an ID, Data and overhead.
 Data –8 bytes max
 Overhead – start, end, CRC, ACK

12
Differences
both are serial communication...
but the difference is
1. I2c is synchronous and CAN is asynshronous.

2. i2c needs slave address and CAN does not need slave address protocol.
3. i2c is Node oriented and CAN is message oriented.
4. i2c has SDA and SCL, CAN is differential bus..
5. i2c operates in 3 speeds 100kbps, 400kbps and 3.4mbps where as CAN operates
at 250kbps upto 1mbps.

there are many many more differences


I2C is a simple, well known, universally accepted, cost effective inter IC
communication protocol. It has also plug & play feature with large portfolio and but
main disadvantage is Limited speed.
Where CAN is a secure and FAST communication protocol. But CAN is expensive
and a bit complex protocol. It is mainly automotive oriented with limited portfolio.

13

You might also like