SlideShare a Scribd company logo
ECGR 6185
Advanced Embedded Systems
Controller Area Network
University Of North Carolina Charlotte
Bipin Suryadevara
Intra-vehicular communication
• A typical vehicle has a large number of electronic control
systems
• Some of such control systems
– Engine timing
– Gearbox and carburetor throttle control
– Anti-block systems (ABS)
– Acceleration skid control (ASC)
• The growth of automotive electronics is a result of:
– Customers wish for better comfort and better safety.
– Government requirements for improved emission control
– Reduced fuel consumption
How do we connect these control devices?
• With conventional systems, data is exchanged by means of
dedicated signal lines.
• But this is becoming increasingly difficult and expensive as
control functions become ever more complex.
• In case of complex control systems in particular, the number of
connections cannot be increased much further.
Solution: Use Fieldbus networks for connecting the control devices
What Fieldbus Networks are currently on the market?
some of the Fieldbus technologies currently on the market
– RS-232
– RS-485
– CAN ( we will discuss in detail)
– ARCNET
– IEC 1158-2
– BITBUS (IEEE 1118)
– ModBus
– HART
– Conitel
– DF1
– Data Highway [+]
Controller Area Network (CAN)
Controller Area Network (CAN) is a fast serial bus that is designed
to provide
– an efficient,
– Reliable and
– Very economical link between sensors and actuators.
CAN uses a twisted pair cable to communicate at speeds up to
1Mbit/s with up to 40 devices.
Originally developed to simplify the wiring in automobiles.
CAN fieldbuses are now used in machine and factory automation
products as well.
CAN features
• Any node can access the bus when the bus is quiet
• Non-destructive bit-wise arbitration to allow 100% use of the
bandwidth without loss of data
• Variable message priority based on 11-bit (or 29 bit) packet
identifier
• Peer-to-peer and multi-cast reception
• Automatic error detection, signaling and retries
• Data packets are 8 bytes long
Tradeoff: CAN bus versus point-to-point connections
• By introducing one single bus as the only means of
communication as opposed to the point-to-point network, we
traded off the channel access simplicity for the circuit simplicty
• Since two devices might want to transmit simultaneously, we
need to have a MAC protocol to handle the situation.
• CAN manages MAC issues by using a unique identifier for each
of the outgoing messages
• Identifier of a message represents its priority.
Physical CAN connection
CAN
CAN BUS
CS1 CS2 CS3 CS4 CS5
CAN Station 1 CAN Station 5
CAN Protocol - Version 2.0 A(standard)/B(Extended)
• A: Object, Transfer, and Physical Layers
– Object Layer: handles messages - selects transmit/receive
messages
– Transfer Layer: assures messages adheres to protocol
– Physical Layer: sends and receives messages
• B: Data Link Layer and Physical Layer
CONTROL AREA NETWORK FOR AUTOMOBILES.ppt
Physical Layer
• Topology
- Terminated bus
• Number of stations
-In principle limited to 30 (depends on drivers)
• Medium
- Twisted pair, single wire
• Range
-Signaling speed and propagation speed dependent: 40m at 1Mbit/s
-Drop length limited to 30 cm
• Signaling and bit encoding
-10 kbit/s to 1 Mbit/s, NRZ
Physical Layer
• Synchronization
- Uses signal edges (implies bit stuffing with NRZ)
- After Five consecutive ones, a zero is inserted
- After Five consecutive zeros, a one is inserted
-This rules includes a possible stuffing bit inserted before
• Signals
- Recessive: logical “1”
- Dominant: logical “0”
- When two stations compete on a bit by bit basis, the station that
emits dominant bit imposes this level on the bus
Medium Access Control Frame
Extended Addressing
Addressing
• Single 11 or 29 bit identifier per frame
– If used to identify a node
• Source(data) or Destination(request) of the message
– Normally used to identify the payload
– A lower value gives higher value in contention,
Error Detection
Several means
• Bit error
– When what is one the bus is different from what was emitted
• Except when a recessive bit was emitted during arbitration or
ack slot
• Cyclic Redundancy Check (CRC)
• Frame check (the frame structure is checked)
• ACK errors (absence of a dominant bit during the ack slot)
• Monitoring (each node which transmits also observes the
bus level and thus detects differences between the bit sent
and the bit received).
Error Detection
• Bit stuffing (checking adherence to the stuffing rule.)
• A frame is valid for
– A transmitter if there is no error until the end of EOF
– A receiver if there is no error until the next to last bit of
EOF
Behavior in case of error
• In case of stuff, bit, form or acknowledge errors
– An error flag is started at the next bit
• In case of CRC error
– An error frame is send after the ack delimiter
• Fault confinement
– Each time an reception error occurs, REC is incremented
– Each time a frame is received correctly, REC is decremented
– Same for the emission errors with TEC
– The values of TEC and REC may trigger mode changes
Connection Modes
To enforce fault confinement, nodes may be in one of
three modes
• Error active
– Normally takes part to the communication and may send an
active error flag (six dominant consecutive bits) when an
error has been detected.
• Error passive
– Takes part in communication but must not send an active
error flag. Instead, it shall send a passive error flag (six
recessive consecutive bits)
– Some restrictions (silence between two tx).
Connection Modes
• Bus off
– Cannot send or receive any frame.
– A node is in this state when it is switched of the bus due to a
request from a fault confinement entity. May exit from this
state only by a user command
Error Frame
• Two fields: Error flag and Error delimiter
• Error flag
– Active: Six dominant bits
– Passive: Six recessive bits
– As all nodes monitor the bus and the flag violates stuffing
rules, they will send error flags too
• The error flag will last from 6 to 12 bits
Error Frame
• Error delimiter (Eight recessive bits)
– After sending an error flag, a node shall send recessive bits
– As soon as it senses a recessive bit, it sends seven
recessive bits
Error Recovery
• Automatic retransmission
– Of all frames that have lost arbitration
– Of all frames have been disturbed by errors during
transmission
Medium Access Control
• All messages are sent in broadcast
• Nodes filter according to their interest
• All messages are acknowledged including by nodes that
are not interested by the message
– Acknowledge just means “message well received by all
receivers”
• It does not mean “intended receiver received it”
Medium Access Control
• Node that does not receive message correctly sends an
error bit sequence
• Node that is too busy may send an overload bit seq.
– MA_OVLD.request/indication/confirm
– Same principle as an error
Logical Link Control
• Two types of services (connectionless)
– Send Data with no ack
• L_DATA.request, L_DATA.indication, L_DATA.confirm
• Uses a data frame
– Request Data
• L_REMOTE.request,L_REMOTE.indication,L_REMOTE.confirm
• Uses a remote frame (same as a data frame but data field is
empty)
– Flow control using the overload bit sequence
Implicit collision handling in the CAN bus
• If two messages are simultaneously sent over the CAN bus, the
bus takes the “logical AND” of all them
• Hence, the messages identifiers with the lowest binary number
gets the highest priority
• Every device listens on the channel and backs off as and when
it notices a mismatch between the bus’s bit and its identifier’s bit
Implicit collision handling in the CAN bus: example
Node B’s
message-ID
0
0 0 0 0 0
0 0 0 0 0
1 1 1
1 1 1 1
0
1
0 0
Node A’s
message-ID
BUS
0 0 0
1 1
Node B notices a mismatch
in bit # 3 on the bus.
Therefore, it stops
transmitting thereafter
Unlike the MAC protocols we learnt, in CAN a collision does not result in
wastage of bandwidth.
Hence, CAN achieves 100% bandwidth utilization
References
http://www.fieldbus.com.au/techinfo.htm#Top
http://www.esd-electronics.com/german/PDF-file/CAN/Englisch/intro-e.pdf
http://www.eng.man.ac.uk/mech/merg/FieldbusTeam/Fieldbus%20Introduction.htm#_Toc487265349
THANKYOU
QUESTIONS?????????

More Related Content

PPTX
CAN Bus
PDF
can bus theory solution
PPTX
CN Unit 2 - cs8591.pptx
PPTX
UNIT 2b.pptx
PPT
Role of CAN BUS in automotives
PPT
CAN (Controller Area Network) Bus Protocol
PPTX
High level data link control and point to point protocol
PPTX
Can network development using arm cortex m3
CAN Bus
can bus theory solution
CN Unit 2 - cs8591.pptx
UNIT 2b.pptx
Role of CAN BUS in automotives
CAN (Controller Area Network) Bus Protocol
High level data link control and point to point protocol
Can network development using arm cortex m3

Similar to CONTROL AREA NETWORK FOR AUTOMOBILES.ppt (20)

PPTX
Can network development using arm cortex m3
PPTX
PPT
UNIT II.ppt Computer networks protocol explanation
PPTX
Can bus
PPTX
MAC COMPUTER NETWORK DATA LINK LAYER PROTOCOLS.pptx
PDF
Link Layer Services in computer networks
PPTX
Dcn ppt on data link layer
PPTX
Dcn ppt by roma
PPT
Packet Switching Technique in Computer Network
PPTX
Computer Networks
PPT
Unit 2 ppt 3.ppt
PPTX
Computer networks unit ii
PPT
CN_unit2.ppt Data Link Layer characteristics, categories
PPT
1 networking devices 2014
PPTX
datalinklayer-200201062315 (1).pptx
PPT
UNIT-2 Data Link Layer Services, Functions PPT.ppt
PPT
datalink.ppt
PPT
PacketSwitching1 com1337 .ppt
PPT
Packet switching paradigms Computer Networks: A Systems Approach.ppt
Can network development using arm cortex m3
UNIT II.ppt Computer networks protocol explanation
Can bus
MAC COMPUTER NETWORK DATA LINK LAYER PROTOCOLS.pptx
Link Layer Services in computer networks
Dcn ppt on data link layer
Dcn ppt by roma
Packet Switching Technique in Computer Network
Computer Networks
Unit 2 ppt 3.ppt
Computer networks unit ii
CN_unit2.ppt Data Link Layer characteristics, categories
1 networking devices 2014
datalinklayer-200201062315 (1).pptx
UNIT-2 Data Link Layer Services, Functions PPT.ppt
datalink.ppt
PacketSwitching1 com1337 .ppt
Packet switching paradigms Computer Networks: A Systems Approach.ppt
Ad

More from NAVEENSBASANDI (12)

PPTX
IMPORTANT BASICS OF MECHANICAL ENGINEERING.pptx
PPT
EnergySources RENEWABLE AND NON RENEWABLE.ppt
PPT
active-suspension-system for automobiles.ppt
PPTX
Adaptive Cruise Control in Autotronics.pptx
PPTX
MECHATRONICS IN ENGINE CONTROL UNIT.pptx
PPTX
ELECTRONIC -POWER-ASSISTED-STEERING.pptx
PPT
MECHATRONICS APPLICATION ELECTRONIC ignition SYSTEM.ppt
PPT
ADAPTIVE CRUISE CONTROL MECHATRONICS MirzaAbdel.ppt
PPTX
President-PPT of chemical safety for presentation.pptx
PPT
DETAILS OF SAFETY EQUIPMENT Fire_Extinguisher.ppt
PPTX
ENERGY AND ENVIRONMENT Module 1 PPT.pptx
PPT
INTRODUCTION TO FOSSIL EnergySources.ppt
IMPORTANT BASICS OF MECHANICAL ENGINEERING.pptx
EnergySources RENEWABLE AND NON RENEWABLE.ppt
active-suspension-system for automobiles.ppt
Adaptive Cruise Control in Autotronics.pptx
MECHATRONICS IN ENGINE CONTROL UNIT.pptx
ELECTRONIC -POWER-ASSISTED-STEERING.pptx
MECHATRONICS APPLICATION ELECTRONIC ignition SYSTEM.ppt
ADAPTIVE CRUISE CONTROL MECHATRONICS MirzaAbdel.ppt
President-PPT of chemical safety for presentation.pptx
DETAILS OF SAFETY EQUIPMENT Fire_Extinguisher.ppt
ENERGY AND ENVIRONMENT Module 1 PPT.pptx
INTRODUCTION TO FOSSIL EnergySources.ppt
Ad

Recently uploaded (20)

PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Electronic commerce courselecture one. Pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Cloud computing and distributed systems.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Empathic Computing: Creating Shared Understanding
Electronic commerce courselecture one. Pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Programs and apps: productivity, graphics, security and other tools
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Approach and Philosophy of On baking technology
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Spectral efficient network and resource selection model in 5G networks
Network Security Unit 5.pdf for BCA BBA.
Cloud computing and distributed systems.
Chapter 3 Spatial Domain Image Processing.pdf

CONTROL AREA NETWORK FOR AUTOMOBILES.ppt

  • 1. ECGR 6185 Advanced Embedded Systems Controller Area Network University Of North Carolina Charlotte Bipin Suryadevara
  • 2. Intra-vehicular communication • A typical vehicle has a large number of electronic control systems • Some of such control systems – Engine timing – Gearbox and carburetor throttle control – Anti-block systems (ABS) – Acceleration skid control (ASC) • The growth of automotive electronics is a result of: – Customers wish for better comfort and better safety. – Government requirements for improved emission control – Reduced fuel consumption
  • 3. How do we connect these control devices? • With conventional systems, data is exchanged by means of dedicated signal lines. • But this is becoming increasingly difficult and expensive as control functions become ever more complex. • In case of complex control systems in particular, the number of connections cannot be increased much further. Solution: Use Fieldbus networks for connecting the control devices
  • 4. What Fieldbus Networks are currently on the market? some of the Fieldbus technologies currently on the market – RS-232 – RS-485 – CAN ( we will discuss in detail) – ARCNET – IEC 1158-2 – BITBUS (IEEE 1118) – ModBus – HART – Conitel – DF1 – Data Highway [+]
  • 5. Controller Area Network (CAN) Controller Area Network (CAN) is a fast serial bus that is designed to provide – an efficient, – Reliable and – Very economical link between sensors and actuators. CAN uses a twisted pair cable to communicate at speeds up to 1Mbit/s with up to 40 devices. Originally developed to simplify the wiring in automobiles. CAN fieldbuses are now used in machine and factory automation products as well.
  • 6. CAN features • Any node can access the bus when the bus is quiet • Non-destructive bit-wise arbitration to allow 100% use of the bandwidth without loss of data • Variable message priority based on 11-bit (or 29 bit) packet identifier • Peer-to-peer and multi-cast reception • Automatic error detection, signaling and retries • Data packets are 8 bytes long
  • 7. Tradeoff: CAN bus versus point-to-point connections • By introducing one single bus as the only means of communication as opposed to the point-to-point network, we traded off the channel access simplicity for the circuit simplicty • Since two devices might want to transmit simultaneously, we need to have a MAC protocol to handle the situation. • CAN manages MAC issues by using a unique identifier for each of the outgoing messages • Identifier of a message represents its priority.
  • 9. CAN CAN BUS CS1 CS2 CS3 CS4 CS5 CAN Station 1 CAN Station 5
  • 10. CAN Protocol - Version 2.0 A(standard)/B(Extended) • A: Object, Transfer, and Physical Layers – Object Layer: handles messages - selects transmit/receive messages – Transfer Layer: assures messages adheres to protocol – Physical Layer: sends and receives messages • B: Data Link Layer and Physical Layer
  • 12. Physical Layer • Topology - Terminated bus • Number of stations -In principle limited to 30 (depends on drivers) • Medium - Twisted pair, single wire • Range -Signaling speed and propagation speed dependent: 40m at 1Mbit/s -Drop length limited to 30 cm • Signaling and bit encoding -10 kbit/s to 1 Mbit/s, NRZ
  • 13. Physical Layer • Synchronization - Uses signal edges (implies bit stuffing with NRZ) - After Five consecutive ones, a zero is inserted - After Five consecutive zeros, a one is inserted -This rules includes a possible stuffing bit inserted before • Signals - Recessive: logical “1” - Dominant: logical “0” - When two stations compete on a bit by bit basis, the station that emits dominant bit imposes this level on the bus
  • 16. Addressing • Single 11 or 29 bit identifier per frame – If used to identify a node • Source(data) or Destination(request) of the message – Normally used to identify the payload – A lower value gives higher value in contention,
  • 17. Error Detection Several means • Bit error – When what is one the bus is different from what was emitted • Except when a recessive bit was emitted during arbitration or ack slot • Cyclic Redundancy Check (CRC) • Frame check (the frame structure is checked) • ACK errors (absence of a dominant bit during the ack slot) • Monitoring (each node which transmits also observes the bus level and thus detects differences between the bit sent and the bit received).
  • 18. Error Detection • Bit stuffing (checking adherence to the stuffing rule.) • A frame is valid for – A transmitter if there is no error until the end of EOF – A receiver if there is no error until the next to last bit of EOF
  • 19. Behavior in case of error • In case of stuff, bit, form or acknowledge errors – An error flag is started at the next bit • In case of CRC error – An error frame is send after the ack delimiter • Fault confinement – Each time an reception error occurs, REC is incremented – Each time a frame is received correctly, REC is decremented – Same for the emission errors with TEC – The values of TEC and REC may trigger mode changes
  • 20. Connection Modes To enforce fault confinement, nodes may be in one of three modes • Error active – Normally takes part to the communication and may send an active error flag (six dominant consecutive bits) when an error has been detected. • Error passive – Takes part in communication but must not send an active error flag. Instead, it shall send a passive error flag (six recessive consecutive bits) – Some restrictions (silence between two tx).
  • 21. Connection Modes • Bus off – Cannot send or receive any frame. – A node is in this state when it is switched of the bus due to a request from a fault confinement entity. May exit from this state only by a user command
  • 22. Error Frame • Two fields: Error flag and Error delimiter • Error flag – Active: Six dominant bits – Passive: Six recessive bits – As all nodes monitor the bus and the flag violates stuffing rules, they will send error flags too • The error flag will last from 6 to 12 bits
  • 23. Error Frame • Error delimiter (Eight recessive bits) – After sending an error flag, a node shall send recessive bits – As soon as it senses a recessive bit, it sends seven recessive bits
  • 24. Error Recovery • Automatic retransmission – Of all frames that have lost arbitration – Of all frames have been disturbed by errors during transmission
  • 25. Medium Access Control • All messages are sent in broadcast • Nodes filter according to their interest • All messages are acknowledged including by nodes that are not interested by the message – Acknowledge just means “message well received by all receivers” • It does not mean “intended receiver received it”
  • 26. Medium Access Control • Node that does not receive message correctly sends an error bit sequence • Node that is too busy may send an overload bit seq. – MA_OVLD.request/indication/confirm – Same principle as an error
  • 27. Logical Link Control • Two types of services (connectionless) – Send Data with no ack • L_DATA.request, L_DATA.indication, L_DATA.confirm • Uses a data frame – Request Data • L_REMOTE.request,L_REMOTE.indication,L_REMOTE.confirm • Uses a remote frame (same as a data frame but data field is empty) – Flow control using the overload bit sequence
  • 28. Implicit collision handling in the CAN bus • If two messages are simultaneously sent over the CAN bus, the bus takes the “logical AND” of all them • Hence, the messages identifiers with the lowest binary number gets the highest priority • Every device listens on the channel and backs off as and when it notices a mismatch between the bus’s bit and its identifier’s bit
  • 29. Implicit collision handling in the CAN bus: example Node B’s message-ID 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 0 0 Node A’s message-ID BUS 0 0 0 1 1 Node B notices a mismatch in bit # 3 on the bus. Therefore, it stops transmitting thereafter Unlike the MAC protocols we learnt, in CAN a collision does not result in wastage of bandwidth. Hence, CAN achieves 100% bandwidth utilization