ABSTRACT:
CAN-bus (Controller-Area Network) is widely used communication bus in
industrial and automotive systems. Besides that it simplifies wirings,
CAN-bus offers deterministic medium access algorithm for which it is
very suitable for certain type of time-critical applications. Typical
CAN-based network consists of multiple microcontrollers and one or a
few more complex nodes which implement higher-level control
algorithms. These more complex nodes can run Linux OS so there is a
need for CAN-bus drivers. There exist several projects which offer CAN
drivers for Linux. Probably the most known driver is Socket-CAN, which
is already partially included in the mainline kernel. Another option
is LinCAN driver. The basic difference between these two drivers is
that Socket-CAN is built around standard Linux networking
infrastructure, whereas LinCAN is a character device driver with its
own queuing infrastructure.
We have developed a tool for measuring delays on CAN-bus and use it in several tests which measure delays under different system loads and other conditions.
The results of this work are useful for the following reasons: