ROS Toolbox
ROS Toolbox provides an interface connecting MATLAB® and Simulink® with the Robot Operating System (ROS and ROS 2). With the toolbox, you can design a network of ROS nodes and combine MATLAB or Simulink generated ROS nodes with your existing ROS network.
The toolbox includes MATLAB functions and Simulink blocks to visualize and analyze ROS data by recording, importing, and playing back rosbag files. You can also connect to a live ROS network to access ROS messages.
The toolbox lets you verify ROS nodes via desktop simulation and by connecting to external robot simulators such as Gazebo or to hardware. ROS Toolbox supports C++ and CUDA® code generation (with MATLAB Coder™, Simulink Coder, and GPU Coder™), enabling you to automatically generate ROS nodes from a MATLAB script or Simulink model and deploy to simulated or physical hardware. Support for Simulink external mode lets you view messages and change parameters while your model is running on hardware.
![](https://www.mathworks.com/help/ros/ros_proddesc_image.png)
Get Started
Learn the basics of ROS Toolbox
Applications
Examples for simulation of ROS and ROS 2 applications in ROS-enabled simulators and supported hardware
Network Access
Connect to ROS 2 and ROS networks with MATLAB and Simulink
Custom Message Support
Generate ROS and ROS 2 custom messages and register them to MATLAB
Bag File Logging and Analysis
Import, visualize and analyze ROS bag and ROS 2 bag files
Specialized Messages
Access ROS and ROS 2 messages from specialized sensors and inputs
Node Generation and Deployment
Generate C/C++ and CUDA code for ROS or ROS 2 nodes and deploy to local and remote hardware
ROS Toolbox Supported Hardware
Support for third-party hardware