Challenges in High Performance Robotics Systems
summary
Designed toy robot runs a 2 ms policy loop over a CAN bus carrying ten 100-bit messages; at 1 Mbps that yields ~1 ms of transmission time, explaining the observed 1 ms gaps and actuator stutter. External transceiver plus candump timestamps reveal missed, queued, and jittered frames that cause double commands or stale inputs. Fixes include multithreading and pipelining, kernel sync primitives or simple padding, moving logging off the main core (30 ms SD freeze on Raspberry Pi), and correcting priority inversion to avoid multi-second dropouts.
AI-written summary · about
chapters (10)
- 0:00Introduction to robotics challenges
- 1:25Building a toy robot architecture
- 2:26CAN bus communication delays
- 4:32Multi-threading and pipelining
- 6:19Diagnosing CAN bus jitter
- 8:05Synchronization pitfalls
- 9:31Logging impact on performance
- 10:32Microcontroller logging issues
- 11:15Priority inversion in kernels
- 11:57Recap and high performance design
related talks
36mScaling robots -
39mReal-Time Rust in Robotics
01h 01mBoosting Software Efficiency : A Case Study of 100% Performance Improvement in ...
58mA Deep Dive into Qt CAN Bus
46mBuilding Real-Time Control Software: Lessons from Hyperloop
52mNot Really, but Kind of Real Time Linux
47mAchieving Software Quality Excellence Thru Software-Hardware Co-Design & Co-Verification
30mBridging robotics and systems programming:Why Copper is a game changer
