1、 What is can bus?
Can is the abbreviation of controller area network. It is a kind of serial communication network which can effectively support distributed control or real-time control. It was first developed by Bosch Company in Germany, which is famous for developing and producing automotive electronic products. In 1986, Bosch developed can communication protocol for automobile. Later, can bus was standardized through iso11898 and iso11595. Now it is an automotive network in Europe The standard protocol of network.
Take a car as a human body, the CAN bus is the nervous system, and the electronic control unit (ECU) is a part of the body. The body is composed of multiple ECUs. Each ECU communicates with each other through the nervous system, and the information perceived by one part can be shared with another part.
Can is widely used in industrial automation, shipping, medical equipment, industrial equipment and so on.
2、 What is the function of CAN bus?
In the automobile, the function of CAN bus is to connect different parts, and then these parts implement the same set of standard protocol, which has the advantages of high compatibility, reliable information sharing, and reducing the number of wiring harness.
Nodes can hang many parts
3、 Advantages of CAN bus
1. Simple and low cost: ECU communicates through a single can system instead of direct complex analog signal line communication, which reduces errors, weight, wiring and cost.
2. Complete centralization: can bus provides an access point to communicate with all network ECUs, supporting centralized diagnosis, data recording and configuration.
3. Stability: can bus has strong anti electric interference and anti electromagnetic interference ability, which is very suitable for applications with strict safety requirements (such as vehicles).
4. High efficiency: can frames are prioritized by ID so that the data with the highest priority can access the bus immediately without causing the interruption of other frames.
4、 The history of CAN bus
Can bus has been developed for many years.
Previous versions of can: Automotive ECU is a complex point-to-point wiring.
1986: Bosch developed can protocol as a solution.
1993: can adopted as estimation standard (ISO 11898)
2003: iso11898 is called standard series.
2012: Bosch released canfd1.0
2015: canfd protocol standardization (iso11898-1)
2016: can physical layer, data rate as high as 5mbit / s, has passed iso11898-2 standardization.
Nowadays, CANbus has become the standard configuration of cars, trucks, buses, tractors, ships, airplanes, etc.
5、 Can bus topology
It can be seen from the topology that a CAN node is mainly composed of CPU, can controller and can transceiver.
Can bus topology
1. Dominant and recessive
Can bus is a differential line with CAN bus_ H and can_ L two lines. The differential line has strong anti-interference ability. When there is external interference, it will couple to the two lines of the differential line almost at the same time. The receiver only cares about the difference between the two signals, so the external common mode noise can be completely offset. As shown by the arrow in the figure, although both lines are interfered, the difference between the two signals remains unchanged.
Can transceiver according to can_ H and can_ L. there are two kinds of bus level, dominant level and recessive level. The bus value specified in can2.0a/b is as follows:
Some people will say that the reason why the dominant level is logic 0 is that can bus adopts the rule of “line and” for bus blanking. CAN2.0 stipulates that when the dominant and invisible levels are transmitted on the bus at the same time, the bus is dominant, that is, 1 & 0 = 0, so 0 is dominant.
As can be seen from the figure below, the level of iso111898 is different from that of iso111519. Now most of them are the same as iso111898. The following is the difference between the two explicit and implicit levels, and the maximum and minimum values are given.
Difference between two standard CAN bus levels
2. Function of can transceiver
As the name suggests, the transceiver can receive or send the differential data on the CAN bus, convert the data into TTL level and send it to the controller, and send the TTL level signal of the CAN controller into differential signal for bus data transmission.
3. Function of CAN controller
On the one hand, the CAN controller receives the data from the transceiver and sends it to the CPU after analysis; on the other hand, it receives the instruction data from the CPU and sends it to the can transceiver.
4.120 Ω terminal resistance
When high-frequency signal is transmitted, the wavelength of signal is shorter than that of transmission line. The signal will form reflection wave at the end of transmission line and interfere with the original signal. Therefore, it is necessary to add terminal resistance at the end of transmission line to make the signal not reflect when it reaches the end of transmission line.
For low-frequency signals, can bus is not used. The terminal resistance must be connected at both ends of the bus to work normally. The terminal resistance should be the same as the impedance of the communication cable, with a typical value of 120 ohm. Its function is to match the bus impedance and improve the anti-interference and reliability of data communication.
The terminal resistance is not all 120 Ω. The following is the recommended value of iso11898 protocol.
Terminal resistance value
4、 Basic can bus circuit
The following is the basic circuit of CANbus. Because most nodes are connected to the OBD interface, ESD protection is very important. On the other hand, 120 Ω is not required at any time, so it is better to add a JP1 jumper cap when designing the circuit.
If necessary, it needs to be in can_ H and can_ L reserve rcemi filters to absorb EMI.
Editor in charge: CC