Open main menu

Humanoid Robots Wiki β

Changes

Controller Area Network (CAN)

6 bytes removed, 1 May
no edit summary
The '''Controller Area Network''' (CAN) represents an essential vehicle bus standard. It was explicitly engineered to facilitate communication between microcontrollers and devices without resorting to a central computer. The primary purpose of CAN is to enhance vehicle interconnectivity and foster swift data exchange between various systems within the vehicle.
=== MCP2515 ===
The '''MCP2515''' is an integrated circuit produced by Microchip Technology, constructed to function as a stand-alone CAN controller. It exhibits compatibility with an SPI (Serial Peripheral Interface) which makes it versatile in various applications. Although its primary use is in automotive industries, it is also used in a variety of other control applications.<ref>MCP2515 Stand-Alone CAN Controller with SPI Interface. Microchip Technology. [https://www.microchip.com/wwwproducts/en/en010406 Official datasheet].</ref>
The MCP2515's operational details include its capacity to support CAN 2.0A and B, drawing attention to its alignment with established CAN standards and equipping it for both basic and extended frame format usage.<ref>MCP2515 Stand-Alone CAN Controller with SPI Interface. Microchip Technology. [https://www.microchip.com/wwwproducts/en/en010406 Official datasheet].</ref>
=== Applications ===
The [https://python-can.readthedocs.io/en/stable/ python-can] library provides Controller Area Network support for Python, providing common abstractions to different hardware devices, and a suite of utilities for sending and receiving messages on a CAN bus.
There is an example of an installation on [[Jetson_Orin]] here.
==== Pi4 ====
Raspberry Pi offers an easy to deploy 2-Channel Isolated CAN Bus Expansion HAT which allows to quickly integrate it to the peripheral devices. See the [https://www.waveshare.com/wiki/2-CH_CAN_HAT tutorial] for more information