Differenze tra le versioni di "Gruppo Meteo/CanBus"
(Creata pagina con '= estendere un bus I2C = https://www.nxp.com/docs/en/data-sheet/PCA9615.pdf https://www.sparkfun.com/products/14589 = Can Bus = Overview The CAN bus is an ISO standard bus o...') |
|||
Riga 8: | Riga 8: | ||
The CAN bus is an ISO standard bus originally developed for vehicles. It manages the Chassis Electrical System Control and is responsible for critical activities like engine electrical, and skid control. This system is also used to provide vehicle diagnostic information for maintenance. A multi-star configuration seems typical of this bus with a primary bus line that branches into sub bus lines at its extremities then attaches to multiple device nodes. Differential voltage is applied over twisted pair at 1.5 to 2.5V and 2.5 to 3.5V for noise resistant signaling. Bit rates up to 1 Mbit/s are possible at network lengths below 40 m. Decreasing the bit rate allows longer network distances (e.g., 500 m at 125 kbit/s). (Jeremiah J. Flerchinger Source) Controllers supporting CAN FD, an enhanced CAN version with frames up to 64 byte and bit rates up to 4 Mbit/s, will be available in the second half of 2014. A can4linux version supportig CAN FD on a IFI CAN is ready to be used. | The CAN bus is an ISO standard bus originally developed for vehicles. It manages the Chassis Electrical System Control and is responsible for critical activities like engine electrical, and skid control. This system is also used to provide vehicle diagnostic information for maintenance. A multi-star configuration seems typical of this bus with a primary bus line that branches into sub bus lines at its extremities then attaches to multiple device nodes. Differential voltage is applied over twisted pair at 1.5 to 2.5V and 2.5 to 3.5V for noise resistant signaling. Bit rates up to 1 Mbit/s are possible at network lengths below 40 m. Decreasing the bit rate allows longer network distances (e.g., 500 m at 125 kbit/s). (Jeremiah J. Flerchinger Source) Controllers supporting CAN FD, an enhanced CAN version with frames up to 64 byte and bit rates up to 4 Mbit/s, will be available in the second half of 2014. A can4linux version supportig CAN FD on a IFI CAN is ready to be used. | ||
+ | * https://jeelabs.org/2018/canbus-intro/ | ||
* https://www.engineersgarage.com/article_page/can-protocol-understanding-the-controller-area-network-protocol/ | * https://www.engineersgarage.com/article_page/can-protocol-understanding-the-controller-area-network-protocol/ | ||
Riga 16: | Riga 17: | ||
== Can bus python == | == Can bus python == | ||
+ | * https://python-can.readthedocs.io/en/master/ | ||
== hardware == | == hardware == | ||
+ | |||
+ | == CAN SPI mcp2515 == | ||
+ | * https://www.electronicshub.org/arduino-mcp2515-can-bus-tutorial/ | ||
+ | * https://www.ebay.it/itm/162281092785 | ||
+ | |||
+ | == SLCAN == | ||
+ | * http://www.can232.com/docs/canusb_manual.pdf | ||
+ | * https://github.com/r-map/rmap/blob/master/platformio/test/slcan/src/slcan.ino | ||
=== STM32 === | === STM32 === | ||
− | https://thecodeprogram.com/stm32f4---std-periphals-can-bus-with-can-interrupts | + | * https://thecodeprogram.com/stm32f4---std-periphals-can-bus-with-can-interrupts |
+ | * MCP2551 CAN transceiver IC | ||
+ | https://github.com/r-map/rmap/blob/master/platformio/test/canbus-exocan/schematic.png | ||
+ | ==== | ||
+ | * https://github.com/r-map/rmap/blob/master/platformio/test/CAN_TrafficSnooper/src/CAN_TrafficSnooper.ino | ||
+ | |||
+ | ==== exocan ==== | ||
+ | * https://github.com/exothink/eXoCAN | ||
+ | https://github.com/r-map/rmap/blob/master/platformio/test/canbus-exocan/src/bpCanBlinkInterrupt.ino | ||
+ | |||
+ | ==== STM32CAN ==== | ||
+ | https://github.com/J-f-Jensen/libraries/tree/master/STM32CAN | ||
= CanOpen = | = CanOpen = | ||
− | https://en.wikipedia.org/wiki/CANopen | + | * https://en.wikipedia.org/wiki/CANopen |
+ | |||
CANopen is a communication protocol and device profile specification for embedded systems used in automation. In terms of the OSI model, CANopen implements the layers above and including the network layer. The CANopen standard consists of an addressing scheme, several small communication protocols and an application layer defined by a device profile. | CANopen is a communication protocol and device profile specification for embedded systems used in automation. In terms of the OSI model, CANopen implements the layers above and including the network layer. The CANopen standard consists of an addressing scheme, several small communication protocols and an application layer defined by a device profile. | ||
Versione delle 19:12, 26 ott 2020
estendere un bus I2C
https://www.nxp.com/docs/en/data-sheet/PCA9615.pdf https://www.sparkfun.com/products/14589
Can Bus
Overview
The CAN bus is an ISO standard bus originally developed for vehicles. It manages the Chassis Electrical System Control and is responsible for critical activities like engine electrical, and skid control. This system is also used to provide vehicle diagnostic information for maintenance. A multi-star configuration seems typical of this bus with a primary bus line that branches into sub bus lines at its extremities then attaches to multiple device nodes. Differential voltage is applied over twisted pair at 1.5 to 2.5V and 2.5 to 3.5V for noise resistant signaling. Bit rates up to 1 Mbit/s are possible at network lengths below 40 m. Decreasing the bit rate allows longer network distances (e.g., 500 m at 125 kbit/s). (Jeremiah J. Flerchinger Source) Controllers supporting CAN FD, an enhanced CAN version with frames up to 64 byte and bit rates up to 4 Mbit/s, will be available in the second half of 2014. A can4linux version supportig CAN FD on a IFI CAN is ready to be used.
- https://jeelabs.org/2018/canbus-intro/
- https://www.engineersgarage.com/article_page/can-protocol-understanding-the-controller-area-network-protocol/
Can bus in Linux
Can bus python
hardware
CAN SPI mcp2515
- https://www.electronicshub.org/arduino-mcp2515-can-bus-tutorial/
- https://www.ebay.it/itm/162281092785
SLCAN
- http://www.can232.com/docs/canusb_manual.pdf
- https://github.com/r-map/rmap/blob/master/platformio/test/slcan/src/slcan.ino
STM32
- https://thecodeprogram.com/stm32f4---std-periphals-can-bus-with-can-interrupts
- MCP2551 CAN transceiver IC
https://github.com/r-map/rmap/blob/master/platformio/test/canbus-exocan/schematic.png
==
exocan
https://github.com/r-map/rmap/blob/master/platformio/test/canbus-exocan/src/bpCanBlinkInterrupt.ino
STM32CAN
https://github.com/J-f-Jensen/libraries/tree/master/STM32CAN
CanOpen
CANopen is a communication protocol and device profile specification for embedded systems used in automation. In terms of the OSI model, CANopen implements the layers above and including the network layer. The CANopen standard consists of an addressing scheme, several small communication protocols and an application layer defined by a device profile.
CANdevStudio
https://github.com/GENIVI/CANdevStudio
SAE_J1939
https://en.wikipedia.org/wiki/SAE_J1939
UAVCAN
What is UAVCAN?
UAVCAN is an open lightweight protocol designed for reliable intravehicular communication in aerospace and robotic applications over CAN bus, Ethernet, and other robust transports. It is created to address the challenge of deterministic on-board data exchange between systems and components of next-generation intelligent vehicles: manned and unmanned aircraft, spacecraft, robots, and cars.
https://uavcan.org/ https://uavcan.org/specification/UAVCAN_Specification_v1.0-beta.pdf
https://forum.uavcan.org/t/automatic-configuration-of-port-identifiers/840/3
libreria per arduino
https://github.com/107-systems/107-Arduino-MCP2515
Applicazioni Px4
https://dev.px4.io/master/en/uavcan/
pyuavcan
pyuavcan sub --transport "pyuavcan.transport.can.CANTransport(can.media.socketcan.SocketCANMedia('can0',8),None)" uavcan.node.Heartbeat.1.0
==
UAVCAN libreria c++ semplificata per arduino
UAVCAN library for Espressif microcontrollers. (Arduino SDK)
https://github.com/JediJeremy/libuavesp
stm32duino
https://github.com/r-map/rmap/blob/master/platformio/test/uavcan-v1/src/example.ino