Chapter 14: Using ROS in MATLAB and Simulink
In previous chapters, we discussed how to simulate and control robots implementing ROS nodes in C++. In this chapter, we will learn how to create ROS nodes using MATrix LABoratory (MATLAB), a powerful piece of software that provides several toolboxes with algorithms and hardware connectivity to develop autonomous robotic applications for ground vehicles, manipulators, and humanoid robots. Also, MATLAB integrates Simulink: a block diagram environment for model-based design, allowing the implementation of our control programs through a graphical editor. In this chapter, we will also discuss how to implement robotic applications using Simulink.
The first part of this chapter is dedicated to a brief introduction to MATLAB and Robotics System Toolbox. After we have learned how to exchange data between ROS and MATLAB, we will implement an obstacle avoidance system for the differential drive mobile robot TurtleBot, showing how simple it is to...