Page 127 - Toucpad robotics C11
P. 127
Uses in Robotics
High-Speed Sensor Data: Connecting to high-speed sensors like some Inertial Measurement Units (IMUs) or
u
high-resolution Analog to Digital Converters (ADCs).
Display Control: Driving complex graphical displays, Organic Light Emitting Diode (OLED) screens, or Thin-Film
u
Transistor (TFT) LCDs that require fast data updates.
Memory Interfaces: Communicating with flash memory, Electrically Erasable Programmable Read-Only Memory
u
(EEPROM), or Secure Digital (SD) card modules for data logging.
u Motor Driver Integration: High-performance motor drivers often use SPI for configuration and real-time control.
Speed and Performance
Highest Speed: Generally the fastest among the four protocols discussed. Speeds can range from a few Megabits per
u
second (Mbps) to tens of Mbps, depending on the devices and wiring.
High Throughput: Its full-duplex nature and lack of byte-level overhead (like acknowledgement bits) lead to very high
u
effective data throughput.
Error Detection and Reliability
Limited Built-in Error Checking: SPI itself has no standard built-in error detection mechanisms (like parity bits or
u
acknowledgements). Data integrity relies on the quality of the connection and the devices.
Software Implementation: Error checking, if required, must be implemented in the software layer (e.g., by sending a
u
Cyclic Redundancy Check checksum after data).
u High Reliability for Short Distances: Highly reliable over short distances due to dedicated lines and synchronous
clocking.
Controller Area Network (CAN)
Description
Controller Area Network, commonly known as CAN, is a robust and reliable multi-master serial communication bus
designed for communication between Electronic Control Units (ECUs) in harsh environments, such as automobiles and
industrial systems. It is a message-based protocol, meaning that messages are sent based on their content (identifier)
rather than a specific address.
Key Characteristics and Differences
Robust and Noise Immune: Designed to operate reliably in electrically noisy environments, using differential signalling
u
(two wires carrying opposite signals) and twisted pair cables to reduce electromagnetic interference.
Two Wires: Uses two wires, CAN High (CAN-H) and CAN Low (CAN-L).
u
Multi-Master, Broadcast Communication: Any device on the network (node) can initiate communication. When a
u
node sends a message, all other nodes on the bus receive it. Each node then decides if the message is relevant to it
based on its identifier.
Message Prioritisation and Arbitration: Every message has a unique identifier that also serves as its priority. If
u
multiple nodes try to transmit at the same time, a non-destructive bit-wise arbitration process ensures that the
message with the highest priority (lowest identifier value) gets transmitted without interruption. Other messages wait
their turn.
Sophisticated Error Detection and Fault Tolerance: CAN is built with extensive error checking mechanisms and can
u
isolate faulty nodes without disrupting the entire network.
Bus Topology: Typically uses a linear bus topology with terminating resistors at each end to prevent signal
u
reflections.
125
Electrical and Control Systems

