Welcome to the CAN-bus Wiki project

no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Next revision
can_higher_layer_protocols_uavcan [2018/07/08 17:47] – created pavelkirienko
Line 1: Line 1:
 +**[[http://uavcan.org|UAVCAN]] is a lightweight protocol designed for reliable communication in aerospace and robotic applications.**
  
 +The core design goals listed below help explain the basic UAVCAN concepts and the motivation behind them.
 +
 +  * **Democratic network** - There is no master node. All nodes in the network have the same communication rights so that there is no single point of failure.
 +  * **Publish/subscribe or request/response (RPC) exchange semantics** - High-level communication mechanisms simplify application design.
 +  * **Nodes can exchange long payloads** - Nodes are provided with a simple way to exchange large data structures that cannot fit into a single CAN frame (such as GNSS solutions, 3D vectors, etc.). UAVCAN performs automatic transfer decomposition and reassembly at the protocol level, hiding the related complexity from the application.
 +  * **Support for redundant interfaces and redundant nodes** - This is a common requirement for safety-concerned applications.
 +  * **High throughput, low latency communication** - Applications that are dependent on high-frequency, hard real-time control loops, require a low-latency, high-throughput communication method.
 +  * **Simple logic, low computational requirements** - UAVCAN targets a wide variety of embedded systems, from high-performance embedded on-board computers for intensive data processing (e.g., a high-performance Linux-powered machine) to extremely resource-constrained microcontrollers. The latter imposes severe restrictions on the amount of logic needed to implement the protocol.
 +  * **Common high-level functions should be clearly defined** - UAVCAN defines standard services and messages for common high-level functions, such as network discovery, node configuration, node firmware update, node status monitoring (which naturally grows into a vehicle-wide health monitoring), network-wide time synchronization, dynamic node ID allocation (a.k.a. plug-and-play), etc.
 +  * **Open specification and reference implementations** - The UAVCAN specification is open and freely available; the reference implementations in popular programming languages are distributed under the terms of the MIT License.
 +
 +More information at [[http://uavcan.org|uavcan.org]].

QR Code
QR Code can_higher_layer_protocols_uavcan (generated for current page)