This is the code repository for Mastering ROS for Robotics Programming, published by Packt.
Best practices and troubleshooting solutions when working with ROS
The area of robotics is gaining huge momentum among corporate people, researchers, hobbyists, and students. The major challenge in robotics is its controlling software. The Robot Operating System (ROS) is a modular software platform to develop generic robotic applications.
This book covers the following exciting features:
- Create a robot model with a 7-DOF robotic arm and a differential wheeled mobile robot
- Work with Gazebo, CoppeliaSim, and Webots robotic simulators
- Implement autonomous navigation in differential drive robots using SLAM and AMCL packages
- Interact with and simulate aerial robots using ROS
- Explore ROS pluginlib, ROS nodelets, and Gazebo plugins
- Interface I/O boards such as Arduino, robot sensors, and high-end actuators
- Simulate and perform motion planning for an ABB robot and a universal arm using ROS-Industrial
- Work with the motion planning features of a 7-DOF arm using MoveIt
If you feel this book is for you, get your copy today!
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
void number_callback(const std_msgs::Int32::ConstPtr& msg) {
ROS_INFO("Received [%d]",msg->data);
}
Following is what you need for this book: If you are a robotics graduate, robotics researcher, or robotics software professional looking to work with ROS, this book is for you. Programmers who want to explore the advanced features of ROS will also find this book useful. Basic knowledge of ROS, GNU/Linux, and C++ programming concepts is necessary to get started with this book.
With the following software and hardware list you can run all code files present in the book (Chapter 1-16).
Chapter | Software required | OS required |
---|---|---|
1-16 | Ubuntu 20.04 LTS | Windows, Mac OS X, and Linux (Any) |
1-16 | ROS Neotic | Windows, Mac OS X, and Linux (Any) |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Click on following link to see the Code in Action:
-
Learn Robotics Programming - Second Edition [Packt] [Amazon]
-
Smart Robotics with LEGO MINDSTORMS Robot Inventor [Packt] [Amazon]
Lentin Joseph is an author, roboticist and robotics entrepreneur from India. He runs a robotics software company called Qbotics Labs in Kochi/Kerala. He has 10 years of experience in the robotics domain primarily in Robot Operating System, OpenCV, and PCL. He has authored 8 books in ROS, namely, Learning Robotics using Python first and second edition, Mastering ROS for Robotics Programming first and second edition, ROS Robotics Projects first and second edition, ROS Learning Path and Robot Operating System for Absolute Beginners. He has pursued his Masters in Robotics and Automation from India and also worked at Robotics Institute, CMU, USA. He is also a TEDx speaker.
Jonathan Cacace was born in Naples, Italy, on December 13, 1987. He received his Master's degree in computer science, and a Ph.D. degree in Information and Automation Engineering, from the University of Naples Federico II.
Currently, he is an Assistant Professor at the University of Naples Federico II. He is also a member of PRISMA Lab where he is involved in different research projects focused on industrial and service robotics in which he has developed several ROS-based applications integrating robot perception and control.