CAN-Bus

What is CAN-Bus?

Short Version

A CAN bus is like a highway for electronic devices to talk to each other. Imagine you have many small computers in a car (like the engine, brakes, and radio). The CAN bus is the road that lets these computers send messages back and forth. This way, they can work together to make the car run smoothly.

Key points:

  • Messages: Devices send messages with information, like “the engine is running too hot” or “the door is open.”
  • Bus: The CAN bus is the shared “road” where these messages travel.
  • Nodes: The electronic devices connected to the CAN bus are called nodes.
  • Termination: Special resistors at the ends of the bus help to make sure the messages are clear.

Why is it useful?

  • Efficiency: It’s a very efficient way to connect many devices together.
  • Reliability: Even if one device stops working, the others can usually keep going.
  • Flexibility: New devices can be easily added to the network.

Common use:

CAN buses are widely used in cars, but they can also be found in many other applications, such as industrial automation and robotics.

Long Version

Recommended reading (external link):

https://www.csselectronics.com/pages/can-bus-simple-intro-tutorial

Why CAN in Astromechs?

It is very easy to add or remove modules without making major changes in the overall wiring of your astromech. You just need a bus of 4 wires:

  • Power
  • Ground
  • CAN-High
  • CAN-Low

This is totally sufficient for anything you want to do with your Astromech: Controlling servos, controlling lights, adding sensors… No need for 24 wire sliprings and stuff. 4 wires and you are done…

The AstroCAN-Series also allows you to connect classic modules like MarcDuinos or ShadowMD controller.

What is CAN-Termination?

In a CAN (Controller Area Network) system, termination refers to the use of resistors at the ends of the bus to absorb any reflected signals. These reflections can occur when electrical signals travel along the bus and encounter an impedance mismatch, such as an open circuit or a short circuit.

Why is CAN Bus Termination Necessary?

  • Signal Integrity: Without termination, reflected signals can interfere with the original signal, causing errors, data corruption, or even complete communication failure. Termination helps to damp these reflections and ensure the integrity of the transmitted data.
  • Noise Reduction: Reflections can introduce noise into the system, which can degrade the signal-to-noise ratio and make it difficult for the receiving nodes to correctly interpret the data. Termination helps to reduce this noise and improve the overall system performance.
  • Bus Stability: Termination helps to stabilize the bus and prevent oscillations that can occur in the absence of proper termination.

How Does CAN Bus Termination Work?

  • Resistors: Typically, resistors with a value of 120 ohms are used at each end of the bus. These resistors provide a load for the transmitted signal, absorbing any energy that is reflected back. Resistors are part of the AstroCAN modules and can be activated by jumpers.
  • Topology: CAN bus termination is typically used in linear topologies, where the nodes are connected in a series.
  • Other Considerations: The length of the bus, the data rate, and the number of nodes on the bus can also affect the termination requirements.

In Summary:

CAN bus termination is an essential technique for ensuring reliable and efficient communication in CAN networks. By absorbing reflected signals and reducing noise, termination helps to maintain signal integrity and prevent errors.