Build Autonomous Mobile Robot from Scratch using ROS - Rajesh Subramanian

Build Autonomous Mobile Robot from Scratch using ROS

Simulation and Hardware
Buch | Softcover
563 Seiten
2023
Apress (Verlag)
978-1-4842-9644-8 (ISBN)
58,84 inkl. MwSt
lt;p>Start from scratch and build a variety of features for autonomous mobile robots both in simulation and hardware. This book will show you how to simulate an autonomous mobile robot using ROS and then develop its hardware implementation.

 

You'll start by gaining an understanding of the basic theoretical concepts underlying the development of autonomous robots, including history, mathematics, electronics, mechanical aspects, 3D modelling, 3D printing, Linux, and programming. In subsequent chapters, you will learn how to describe kinematics, simulate and visualize the robot, how to interface Arduino with ROS, tele-operate the robot, perform mapping, autonomous navigation, add additional sensors, sensor fusion, laser scan matching, web interface, and more. Not only will you learn theoretical aspects, you'll also review the hardware realization of mobile robots.

 

Projects start with a very basic two-wheeled mobile robot and progress to complex features such as mapping, navigation, sensor fusion, autodocking, and web interface. Upon completing this book, you'll have incorporated important robot algorithms including SLAM, Path Finding, Localization, and Kalman Filters - and you will be ready to start designing and building your own autonomous robots.

 

What You Will Learn 

  • Design and build your customized physical robot with autonomous navigation capability
  • Create a map of your house using the robot's lidar scanner
  • Command the robot to go to any accessible location on the map
  • Interact with the robot using a mobile app, joystick, keyboard, push-button, or remote computer
  • Monitor robot updates via LCD, a mobile app, sound, and status LEDs
  • Automate delivery of small payloads and return to home base
  • Utilize autodocking to home base for battery charging
  • Leverage sensor fusion to improve accuracy
  • Interface with the robot via the Web to monitor and control it remotely

Who This Book Is For

Complete beginners who want to build customized robots from scratch. No experience is expected, although basic programming knowledge could be handy.

Rajesh Subramanian is a robotics engineer by profession and founder of ThunDroids LLP (a robotics manufacturing and service firm). He has more than 7 years of experience in the industry and research area. He holds a post-graduate degree from the University of Queensland, Australia and a research degree from Edith Cowan University, Australia. Rajesh has worked with humanoid service robots, mobile robots, robot arms, and modular robots as part of both industry and academics, and published a research paper on modular robots at the IEEE TENCON 2013 international conference. He also works as a robotics educator and has published courses on autonomous robots.

lt;p>Chapter 1: Introduction to Robotics 

·       Basic Mathematics for Robotics 

·       Basic Electronics 

·       Basic 3D Modelling and 3D Printing 

·       Basic Linux 

·       Basic Programming 

·       Basic Robotics Algorithms 

·       Robot Navigation Basics 

o Odometry
o Transforms 
o Sensor Data 
o Map
o SLAM
o Localization 
o Path planners 

Global 

Local 

o Drive Systems 

Differential Drive 
Skid Steer
Ackermann
Holonomic etc. 

o Actuator Control 

 

Chapter 2: Setting Up Your Computer 

·       Installing Linux 

·       Installing ROS 

·       Installing IDE 

 

Chapter 3: ROS Framework

·       Why ROS 

·       ROS Architecture 

·       ROS Installation 

·       ROS File System 

·       Creating a workspace and building it 

·       Publisher/Subscriber 

·       Services 

·       Actions 

·       Implementing publishers/subscribers, services, and actions using python 

·       Basic ROS commands 

·       Coordinate Transformation (TF) 

·       ROS Debugging Tools 

·       ROS Navigation Stack 

 

Chapter 4: Robot Simulation

·       Rviz and Gazebo 

·       Turtlesim - A cute virtual turtle 

o Simulating turtle in Turtlesim 

o Controlling turtle in Turtlesim 

·       Turtlebot - Autonomous Mobile Robot o Simulating Turtlebot in Gazebo 

o Visualizing Turtlebot in Rviz 

o Controlling Turtlebot 

·       PR2 - Autonomous Mobile Manipulator Robot 

o Simulating PR2 in Gazebo o Visualizing PR2 in Rviz
o Controlling PR2 

 

Chapter 5: Arduino and ROS

·       What is Arduino 

·       Basic Arduino Programming 

·       Examples 

·       Interfacing Arduino with ROS 

 

Chapter 6: Building Bumblebot: A Simple 2-Wheeled Robot

·       Part I - Simulation

o Building robot model 

o Design robot parts using a 3D modeling software
o Add the designed parts to URDF file
o Visualize the robot in Rviz
o Load the robot into a virtual world in Gazebo simulator o Teleoperate the virtual robot using keyboard 

o Teleoperate the virtual robot using joystick 

o Teleoperate the virtual robot using android device

·       Part II - Hardware 

o 3D Print the robot parts o Electronic components o Wiring
o Assembling 

o Configuring Single Board Computer for autonomous navigation o Configuring Arduino to control peripherals
o Interfacing Arduino with ROS
o Interfacing Lidar with ROS 

o Interfacing Motors with ROS
o Interfacing Encoders with ROS
o Interfacing other electronic devices (LEDs, LCD, Buzzer, Switch, etc) with ROS o Motor gear ratio calculation
o Write your own motor controller and ROS interface
o Differential driver and Odometry
o Tele operation using ROS 
o Odometry correction - rotation and translation

 

Chapter 7: Enabling Bumblebot to Perform Mapping and Autonomous Navigation

·       Part I - Simulation

o Map building 

o Autonomous navigation 

·       Part II - Hardware 

o Map building 

o Autonomous navigation 

·       Part III - Navigation Tuning 

 

Chapter 8: Additional Sensors and Sensor Fusion in Bumblebot

·       Part I - Adding lidar based odometry 

·       Part II - Adding IMU based odometry 

o   IMU Calibration 

o   Interfacing with ROS 

·       Part III - Sensor fusion for robustness and accuracy

 

Chapter 9: Autonomous Delivery Using Bumblebot

·       Building delivery applications using Python 

·       Defining user interaction 

·       Defining status behaviors 

 

Chapter 10: Bonus Materials: Web Interface and Autonomous Docking Using Bumblebot

·       Web interface
o Building basic web page for robot control using html and javascript 

o Commanding robot using various controls in the web page
o Monitor status of the robot in the web page 

·       Autonomous Docking
o Camera Calibration
o Camera Interfacing with ROS 
o Autodocking 
Audience: Beginner

Erscheinungsdatum
Reihe/Serie Maker Innovations Series
Zusatzinfo 342 Illustrations, color; 13 Illustrations, black and white; XXII, 563 p. 355 illus., 342 illus. in color.
Verlagsort Berkley
Sprache englisch
Maße 155 x 235 mm
Themenwelt Informatik Theorie / Studium Künstliche Intelligenz / Robotik
Informatik Weitere Themen Hardware
Schlagworte autonomous navigation • autonomous robot • build robot • Hardware • Navigation • navigation stack • Robotics • Robot Navigation • Robot Operating System • ROS • ROS Basics • ROS navigation • ROS robot • Simulation
ISBN-10 1-4842-9644-3 / 1484296443
ISBN-13 978-1-4842-9644-8 / 9781484296448
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Eine kurze Geschichte der Informationsnetzwerke von der Steinzeit bis …

von Yuval Noah Harari

Buch | Hardcover (2024)
Penguin (Verlag)
28,00