Chapter 14. Stockroom-bot

In this chapter, we will combine some of the techniques introduced in previous chapters to program a robot to move items around in a stockroom. This type of task is common in many industries where goods are stored with controlled access, from the relatively small “cage” rooms in retail stores where high-value items are stored, to the chemical and medical supply rooms in hospitals, and all the way up through the massive, highly controlled warehouses used to fulfill ecommerce orders and handle the supply chains of large manufacturing corporations. Despite the varied applications, many tasks in these stockrooms are quite similar: items are precisely organized in a restricted-access area, and they need to be gathered in response to incoming requests.

As we have emphasized throughout this book, it is all but impossible to write robust, complex robot software without a simulation environment. Accordingly, we will spend the first portion of this chapter creating a simulated stockroom. As always, the time spent creating a good simulation model pays huge dividends in robot software development!

Stockroom Simulation

Let’s get started by creating a workspace called ws for our stockroom_bot package:

user@hostname$ mkdir -p ~/ws/src/stockroom_bot
user@hostname$ cd ~/ws/src/stockroom_bot

Next, we’ll create a minimal package.xml file in this directory, shown in Example 14-1, that will allow the ROS package management system to find the files we’ll create during this ...

Get Programming Robots with ROS now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.