CAN Bus

How to get started on CAN Bus

Understanding DBC Files

DBC files are the de facto standard for CAN databases, enabling the decoding of raw CAN data into physical values like temperature, engine speed, and voltages. Developed by Vector Informatik, DBC files define how data is organized within CAN messages, including signal positions, byte order, and conversion factors. These files are text-based, making them accessible but also complex for manual editing.

Example of a DBC File Format

Hardware Recommendations

For accessing a CAN bus, I recommend the PCAN-USB hardware by Peak-System, costing around $200. This device is robust, Linux-compatible, and even works with Raspberry Pi setups. Using the ROS socketcan_interface, you can integrate CAN bus functionality seamlessly with your applications.

PCAN-USB Hardware

Advantages of CAN Bus

  • Reliability: Designed for critical systems like automotive applications.
  • Simplicity: A straightforward protocol, suitable for real-time communication.
  • Time Determinism: Ensures predictable communication timing, essential for control systems.

Resources and Tools

  1. SocketCAN ROS Wrapper: ROS Wiki
  2. Software Tools: CAN db++ by Vector, MATLAB’s Vehicle Network Toolbox, and Influx Dialog, among others​:contentReference[oaicite:0]{index=0}​:contentReference[oaicite:1]{index=1}.
  3. Training Opportunities: Various vendors, including Influx Technology, offer training programs to help engineers better understand CAN protocols.

By combining robust hardware, open-source tools, and the versatility of DBC files, you can effectively work with CAN bus systems in diverse applications.