ROS Application Examples
Simulate ROS and Gazebo applications, connect to TurtleBot® hardware
These examples show how to build specific applications for ROS, real robots, and simulators. Use them to learn the requirements for physical hardware and software simulation systems. For robot setup information, see Get Started with Gazebo and Simulated TurtleBot and Get Started with a Real TurtleBot.
Topics
ROS Applications
- Sign Following Robot with Time Synchronization Using ROS and Gazebo Co-Simulation
Use Simulink® to enable synchronized simulation between ROS and the Gazebo robot simulator using the Gazebo Pacer block. - Pick-and-Place Workflow in Unity 3D Using ROS
Set up an end-to-end pick-and-place workflow for a robotic manipulator like the Kinova® Gen3, and simulate the robot in the Unity® game engine. - Sign-following Robot with ROS in MATLAB
Control a simulated robot running on a separate ROS-based simulator over a ROS network using MATLAB®. - Automated Parking Valet with ROS in MATLAB
Distribute the Automated Parking Valet application among various nodes in a ROS network using MATLAB. - Generate ROS Node for UAV Waypoint Follower
Use MATLAB code generation to create a ROS node to move a UAV along a predefined circular path and a set of specified custom waypoints. - Generate a ROS Control Plugin from Simulink®
Generate and build aros_control
plugin from a Simulink model. - Lane and Vehicle Detection in ROS Using YOLO v2 Deep Learning Algorithm
Use deep convolutional neural networks inside a ROS enabled Simulink model to perform lane and vehicle detection. - Control a Simulated UAV Using ROS 2 and PX4 Bridge
Receive sensor readings and autopilot status from a simulated UAV with PX4 autopilot, and send control commands to navigate the simulated UAV. - Fusion of Radar and Lidar Data Using ROS
Perform track-level sensor fusion on recorded LiDAR sensor data for a driving scenario recorded on a rosbag. - Feedback Control of a ROS-Enabled Robot
Use Simulink to control a simulated robot running in a separate ROS-based simulator. - Feedback Control of a ROS-Enabled Robot Over ROS 2
Use Simulink to control a simulated robot running in a Gazebo robot simulator over ROS 2 network. - Generate a Standalone ROS Node from MATLAB
Generate C++ code for a standalone ROS node from a MATLAB function. - MATLAB Programming for Code Generation
Recommended workflow for generating a standalone executable from MATLAB code that contains ROS interfaces.
Gazebo
- Get Started with Gazebo and Simulated TurtleBot
Set up the Gazebo® simulator engine and further explore Gazebo with a simulated TurtleBot. - Add, Build, and Remove Objects in Gazebo
Explore more in-depth interaction with the Gazebo® Simulator from MATLAB, such as creating simple models, adding links and joints to models, connecting models together, and applying forces to bodies. - Apply Forces and Torques in Gazebo
A collection of ways to apply forces and torques to models in the Gazebo® simulator. - Test Robot Autonomy in Simulation
Explore MATLAB control of the Gazebo® Simulator.
TurtleBot
- Get Started with a Real TurtleBot
Connect to a TurtleBot using the MATLAB ROS interface. - Get Started with Gazebo and Simulated TurtleBot
Set up the Gazebo® simulator engine and further explore Gazebo with a simulated TurtleBot. - Communicate with the TurtleBot
Introduction of the TurtleBot platform and the ways in which MATLAB users can interact with it. - Explore Basic Behavior of the TurtleBot
Explore basic autonomy with the TurtleBot, where the described behavior drives the robot forward and changes its direction when there is an obstacle. - Control the TurtleBot with Teleoperation
Demonstrates keyboard control of the TurtleBot through the use of theExampleHelperTurtleBotCommunicator
class. - Obstacle Avoidance with TurtleBot and VFH
Use a TurtleBot with Vector Field Histograms to perform obstacle avoidance when driving a robot in an environment. - Track and Follow an Object
Explore the autonomous behavior that incorporates the Kinect® camera, where the algorithm involves the TurtleBot looking for a blue ball and then staying at a fixed distance from the ball.