Book Image

Learning ROS for Robotics Programming Second Edition

Book Image

Learning ROS for Robotics Programming Second Edition

Overview of this book

Table of Contents (27 chapters)
Learning ROS for Robotics Programming Second Edition
Credits
About the Author
Acknowledgments
About the Author
Acknowledgments
About the Author
Acknowledgments
About the Author
Acknowledgments
About the Reviewer
About the Reviewer
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Index

Xacro – a better way to write our robot models


Notice the size of the robot1_physics.urdf file. It has 314 lines of code to define our robot. Imagine adding cameras, legs, and other geometries—the file will start increasing, and the maintenance of the code will become more complicated.

Xacro helps in reducing the overall size of the URDF file and makes it easier to read and maintain. It also allows us to create modules and reutilize them to create repeated structures such as several arms or legs.

To start using xacro, we need to specify a namespace so that the file is parsed properly. For example, these are the first two lines of a valid xacro file:

<?xml version="1.0"?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="robot1_xacro">

In the preceding lines, we define the name of the model, which in this case is robot1_xacro. Remember that the file extension will be .xacro instead of .urdf.

Using constants

We can use xacro to declare constant values; hence, we can avoid putting...