Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
A systematic approach to learning robot programming with ROS
Newman W., Chapman&Hall/CRC, Boca Raton, FL, 2018. 530 pp. Type: Book (978-1-498777-82-7)
Date Reviewed: Sep 28 2018

Robots are based on very complex systems that require expertise in many areas. In recent years, robot operating system (ROS) has become the standard for controlling robots. ROS offers a complete set of tools and a basic architecture that allow developers to start an application with greater abstraction. They can focus on the essential elements of their project. Any programmer having even minimal coding experience can easily use communication between different ROS programs and tools for motion planning, object recognition, 2D navigation, 3D perception, and many other purposes.

The purpose of this book is to provide a systematic overview of ROS, as well as an overall understanding of ROS interfacing and ROS approaches to areas of interest. A systematic approach to learning robot programming with ROS is useful for students, robot engineers, researchers, and everyone else interested in gaining some understanding of the basics of programming with ROS.

With well-founded C++ examples for ROS code, in a clear and concise style, the book’s 18 chapters allow readers to follow the organization of ROS, ROS packages, ROS tools, the integration of existing ROS packages into new applications, and the development of new packages for new applications.

The book is organized into six sections. The organizational issues and several technical topics will help readers understand ROS-based robotics development and use ROS.

In this respect, Section 1, “ROS Foundations,” briefly states and carefully analyzes some specific concepts regarding the creation and usage of ROS packages, nodes, and tools, as well as its messages and services.

In Section 2, “Simulation and Visualization in ROS,” the author approaches realistic simulations of robotic scenarios. He addresses readers who are less informed about robotics simulation, and the covered topics are of great use to browse the entire simulation (based on Gazebo, the most common simulation tool in ROS) and visualization steps (based on rviz, the 3D visualization tool). Examples of robots and code for interfacing Gazebo with ROS are provided.

Section 3, “Perceptual Processing in ROS,” explains how to interface with ROS. To interface with the cameras, the ROS user community has provided camera driver wrappers and processing nodes. OpenCV is used to process the images obtained from the robotic systems, which are controlled by an environment created via ROS use. The examples include depth imaging and point clouds, as well as the processing of point clouds.

Section 4, “Mobile Robots in ROS,” investigates the feasibility of using ROS for controlling mobile robots. The section includes map making, path planning, and modifying the navigation stack.

Section 5, “Robot Arms in ROS,” includes five chapters. If readers are interested in research and how it relates to robot arms, there are several topics to consider: low-level joint control in ROS, robot arm forward and inverse kinematics, kinematically redundant robot planning using dynamic programming, and writing generic action client nodes. All of these topics are useful across multiple robot designs. The last two chapters of this section consider the Baxter simulator as a practical and applicable robot model and present significant examples based on this.

Section 6, “System Integration and Higher Level Control,” provides details regarding vision-based manipulation, robot simulation, sensor simulation, robot modeling and visualization, a dual-arm robot based on a mobile platform, and a Kinect sensor.

One of the aims of this book is to provide a course text on ROS. Students, robot engineers, researchers, and anyone interested in the field of robotics will find in this book a great opportunity to learn about the topic. I highly recommend it for anyone who is looking for an engaging and reader-friendly systematic introduction to ROS.

More reviews about this item: Amazon

Reviewer:  Eugen Petac Review #: CR146257 (1812-0626)
Bookmark and Share
  Reviewer Selected
 
 
Robotics (I.2.9 )
 
 
Computer And Information Science Education (K.3.2 )
 
Would you recommend this review?
yes
no
Other reviews under "Robotics": Date
Movement problems for 2-dimensional linkages
Hopcroft J. (ed), Joseph D., Whitesides S. SIAM Journal on Computing 13(3): 610-629, 1984. Type: Article
Feb 1 1985
Robot motion planning with uncertainty in control and sensing
Latombe J. (ed), Lazanas A., Shekhar S. Artificial Intelligence 52(1): 1-47, 1991. Type: Article
Oct 1 1992
Dictionary of robot technology in four languages: English, German, French, Russian
Bürger E., Korzak G., Elsevier North-Holland, Inc., New York, NY, 1986. Type: Book (9789780444995193)
Mar 1 1988
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy