Learn how to build and program real autonomous robots Key Features
Simplified coverage on fundamentals of building a robot platform.
Learn to program Raspberry Pi for interacting with hardware.
Cutting-edge coverage on autonomous motion, mapping, and path planning algorithms for advanced robotics. Description Practical Robotics in C++ teaches the complete spectrum of Robotics, right from the setting up a computer for a robot controller to putting power to the wheel motors. The book brings you the workshop knowledge of the electronics, hardware, and software for building a mobile robot platform. You will learn how to use sensors to detect obstacles, how to train your robot to build itself a map and plan an obstacle-avoiding path, and how to structure your code for modularity and interchangeability with other robot projects. Throughout the book, you can experience the demonstrations of complete coding of robotics with the use of simple and clear C++ programming. In addition, you will explore how to leverage the Raspberry Pi GPIO hardware interface pins and existing libraries to make an incredibly capable machine on the most affordable computer platform ever. What will you learn
Write code for the motor drive controller.
Build a Map from Lidar Data.
Write and implement your own autonomous path-planning algorithm.
Write code to send path waypoints to the motor drive controller autonomously.
Get to know more about robot mapping and navigation.
Who this book is for This book is most suitable for C++ programmers who have keen interest in robotics and hardware programming. All you need is just a good understanding of C++ programming to get the most out of this book. Table of Contents 1. Choose and Set Up a Robot Computer 2. GPIO Hardware Interface Pins Overview and Use 3. The Robot Platform 4. Types of Robot Motors and Motor Control 5. Communication with Sensors and other Devices 6. Additional Helpful Hardware 7. Adding the Computer to Control your Robot 8. Robot Control Strategy 9. Coordinating the Parts 10. Maps for Robot Navigation 11. Robot Tracking and Localization 12. Autonomous Motion 13. Autonomous Path Planning 14. Wheel Encoders for Odometry 15. Ultrasonic Range Detectors 16. IMUs: Accelerometers, Gyroscopes, and Magnetometers 17. GPS and External Beacon Systems 18. LIDAR Devices and Data 19. Real Vision with Cameras 20. Sensor Fusion 21. Building and Programming an Autonomous Robot
About the Author Lloyd Brombach is a controls engineer, programmer, and long-time electronics and robotics enthusiast. He has competed at robotics events such as the NASA-funded 2007 Lunar Regolith Excavation Challenge and recently the 27th Intelligent Ground Vehicle Challenge. He is committed to making contributions to the robotics field t