Communication
Communication
Why CAN?
The CAN protocol was developed for use in the automotive industry to address several
challenges that arose as cars became more complex and incorporated more electronic
systems. Some of the key reasons for why the CAN protocol was developed include −
• Automotive − The CAN protocol was originally developed for use in the
automotive industry and is used in a wide variety of systems in modern cars,
including engine control, transmission control, anti-lock brakes, and body
electronics.
• Industrial automation − The CAN protocol is used in industrial automation
systems to allow devices to communicate and coordinate their actions, such as
controlling motors, sensors, and other equipment.
• Medical equipment − The CAN protocol is used in medical equipment to
control various functions and to transmit data between devices. For example,
patient monitoring systems use the protocol to transmit patient vital signs data
between devices
• Avionics − The protocol is used in avionics to control and monitor various
systems such as engine, navigation, and flight control systems.
• Building automation − The protocol is used in building automation systems to
control and monitor various systems such as heating, ventilation, air
conditioning (HVAC), lighting, and security systems.
• Robotics − The protocol is used in Robotics to control and monitor various
systems such as motors, sensors, and other equipment, thus allowing the robots
to communicate and coordinate their actions.
CAN Framing
A message is transmitted as a series of bits on the bus, with the most significant bit
(MSB) transmitted first. Once a message has been transmitted, all nodes on the
network will receive the message, but only the node with the matching identifier will
process it.
The Controller Area Network (CAN) protocol has a layered architecture that is
designed to separate the different responsibilities of the protocol. The CAN protocol
is typically divided into five layers −
• Physical Layer − This layer is responsible for the physical transmission of bits
over the communication medium, such as a cable or wireless link. It defines the
electrical, mechanical, and operational specifications for the interface between
the nodes and the communication medium.
• Data Link Layer − This layer is responsible for providing reliable data transfer
between the nodes. It includes error detection and correction mechanisms, such
as bit stuffing and cyclic redundancy check (CRC). It also manages the
arbitration process to ensure that only one node can transmit at a time and
manages the Acknowledgement of the message.
• Network Layer − This layer is responsible for providing a common
communication format and addressing scheme for all nodes on the network. It
defines the format of the messages, including the identifier, data payload, and
priority.
• Transport Layer − This layer defines the rules for message transmission and
reception, such as message fragmentation and retransmission, flow control, and
error handling.
• Application Layer − This layer defines the services and interfaces that are
available to the application, such as sending and receiving messages, and
monitoring the status of the network. It also provides an interface for the
Application layer.
• Each layer of the architecture is designed to be independent of the others, so that
changes or improvements can be made to one layer without affecting the others.
This design allows for flexibility and scalability of the protocol, which makes it
a well suited for various applications across different industries.
• Conclusion
• In conclusion, the Controller Area Network (CAN) protocol is a widely used
communication protocol that was originally developed for use in the automotive
industry. It is a serial communication protocol that uses a multi-master,
distributed control system, which allows any device on the network, called a
node, to initiate communication and all other nodes on the network to participate
in the communication. The protocol provides a way for devices to share
information and synchronize their actions without the need for a central
controller.
LIN (LOCAL INTERCONNECT NETWORK)
FLEX RAY PROTOCOL
MOST (MEDIA ORIENTED SYSTEMS PROTOCOL)