Layers and Software Components used in CAN Bus Protocol Stack

 

The seven layers of OSI Model have found multiple uses. The automotive industry has significantly put to use these layers in multiple aspects of vehicle designing and in-vehicle communication. Let’s  have a look at these layers and understand their importance.

CAN Bus Physical and Data Link Layer

The CAN Bus is defined by the physical and data link layers of the OSI model. In the case of high-speed CAN, ISO 11898-1 describes the data link layer and ISO 11898-2 the physical layer. As seen in the figure , the role of CAN is frequently described in the 7-layer OSI model.

[source: CSS Electronics]

The physical layer of the CAN bus defines factors like cable kinds, electrical signal levels, node requirements, cable impedance, and so on. ISO 11898-2, for example, has a long list of requirements including those listed below:

  • Baud rate: CAN nodes must be connected through a two-wire bus with baud rates of up to 1 Mbit/s (Classical CAN) or 5 Mbit/s (Advanced CAN) (CAN FD)

  • Cable length: The maximum length of a CAN cable should be between 500 metres (125 kbit/s) and 40 metres (1 Mbit/s).

  • Termination: At either end of the CAN bus, a 120 Ohm CAN bus termination resistor must be used to correctly terminate the bus.

Here is an illustration of the details of CAN Bus Software Architecture according to ISO 11898

[source: Embitel]

Other Network Types for CAN Bus

In the context of automotive vehicle networks, we frequently come across a variety of network kinds. Here’s a little summary:

  •           High-speed CAN bus: It is by far the most widely used CAN standard for the physical layer, with data rates ranging from 40 kbit/s to 1 Mbit/s (Classical CAN). It allows for simple cabling and is used in almost all automotive applications today. It also acts as the foundation for various upper layer protocols, including OBD2, J1939, NMEA 2000, CANopen, and others.

  •           Low speed CAN bus: This standard supports bit rates ranging from 40 kbit/s to 125 kbit/s and permits CAN bus communication to continue even if one of the two wires fails - hence the term "fault tolerant CAN." Each CAN node in this system has its own CAN termination.

  •          The LIN bus: With fewer harness and cheaper nodes, LIN bus networks are a lower-cost supplement to CAN bus networks. LIN bus clusters are typically made up of a LIN master serving as a gateway and up to 16 slave nodes. Non-critical vehicle services such as air conditioning, door functionality, and so on are typical use cases - for more information, read our LIN bus introduction or LIN bus data logger page.

  •           Automotive ethernet: This is rapidly being used in the automotive industry to meet the high bandwidth demands of ADAS (Advanced Driver Assistance Systems), infotainment systems, cameras, and other devices. Automotive ethernet has substantially faster data transmission rates than CAN bus but lacks some of the safety and performance characteristics of Classical CAN and CAN FD. Most likely, automotive ethernet, CAN FD, and CAN XL will be used in new automotive and industrial development in the coming years.

In  a Nutshell

A Controller Area Network (CAN bus) is a comprehensive vehicle bus standard that allows microcontrollers and devices to connect with each other's applications without the need for a host computer. It is a message-based system that was originally created to save copper by multiplexing electrical connections within vehicles.

 However, it can also be used in a variety of other contexts. The data in a frame is communicated sequentially for each device, but in such a way that if multiple devices transmit at the same time, the highest priority device can continue while the others lay low. All devices, including the transmitting device, receive frames.

Comments