Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Programming Robots with ROS
Preface
Who Should Read This Book?
Who Should Not Read This Book?
What You’ll Learn
Prerequisites
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
1. Introduction
Brief History
Philosophy
Installation
Summary
2. Preliminaries
The ROS Graph
roscore
rosrun
Names, Namespaces, and Remapping
roslaunch
The [TAB] key
Summary
3. Topics
Publishing to a Topic
Checking that Everything Works as Expected
Subscribing to a Topic
Checking that Everything Works as Expected
Latched Topics
Defining Your Own Message Types
Defining a New Message
Using Your New Message
When Should You Make a New Message Type?
Mixing Publishers and Subscribers
Summary
4. Services
Defining a Service
Implementing a Service
Checking that Everything Works as Expected
Other Ways of Returning Values from a Service
Using a Service
Checking that Everything Works as Expected
Other Ways to Call Services
Summary
5. Actions
Defining an Action
Implementing a Basic Action Server
Checking that Everything Works as Expected
Using an Action
Checking that Everything Works as Expected
Implementing a More Sophisticated Action Server
Using the More Sophisticated Action
Checking that Everything Works as Expected
Summary
6. Robots and Simulators
Subsystems
Actuation: Mobile Platform
Actuation: Manipulator Arm
Sensor Head
Visual Camera
Depth Camera
Laser Scanner
Shaft Encoders
Computation
Actual Robots
PR2
Robonaut 2
Turtlebot
Baxter
Simulators
Stage
Gazebo
Summary
7. Wander-bot
Creating a package
Reading sensor data
Sensing and Actuation: Wander-bot!
Summary
8. Teleop Bot
Development pattern
Keyboard driver
Motion generator
Parameter Server
Velocity ramps
Let’s Drive!
RViz
Summary
9. Building Maps of the World
Maps in ROS
Recording Data with rosbag
Building Maps
Starting a Map Server and Looking at a Map
Summary
About the Authors
Copyright
← Prev
Back
Next →
← Prev
Back
Next →