Robotics System Toolbox

Design, simulate, and test robotics applications

 

Robotics System Toolbox™ provides tools and algorithms for designing, simulating, and testing manipulators, mobile robots, and humanoid robots. For manipulators and humanoid robots, the toolbox includes algorithms for collision checking, trajectory generation, forward and inverse kinematics, and dynamics using a rigid body tree representation. For mobile robots, it includes algorithms for mapping, localization, path planning, path following, and motion control. The toolbox provides reference examples of common industrial robot applications. It also includes a library of commercially available industrial robot models that you can import, visualize, and simulate.

You can develop a functional robot prototype by combining the kinematic and dynamic models provided. The toolbox lets you co-simulate your robot applications by connecting directly to the Gazebo robotics simulator. To verify your design on hardware, you can connect to robotics platforms and generate and deploy code (with MATLAB Coder™ or Simulink Coder™).

Get Started:

Reference Applications

Use reference applications as a basis for developing robotic and autonomous systems. Robotics System Toolbox includes algorithms and simulation tools for mobile robots and manipulators. 

Explore gallery (3 images)

Robot Modeling and Simulation

Use included robot models or build custom rigid body tree representations. Simulate robot behavior in 2D or 3D environments.

Robot Models

Build your own robot models or use a library of commonly used robots to quickly model your robot applications. You can import Unified Robot Description Format (URDF) files or Simscape Multibody™ models to create custom robot models and visual geometries.

Loading a rigid body tree model from a library of commercially available robots.

Motion Modeling and Control

Model basic kinematics and dynamics of mobile robots and manipulators. Visualize and simulate robot motion to validate control algorithms.

Plan and execute task- and joint-space trajectories in MATLAB.

3D Simulations

Validate your robot models in real-world simulation environments by interfacing with 3D physics simulators. Synchronize your Simulink® model simulations with the Gazebo simulations.

Synchronized simulation between Simulink and the Gazebo simulator.

Robot Algorithms

Develop planning and control algorithms for manipulators and mobile robots.

Manipulation Algorithms

Define robot models using rigid body tree representations. Build advanced motion controllers and interface with robot models to complete your robot workflows. Perform collision checking as well as inverse kinematics and dynamics calculations on your robot models.

Safe trajectory tracking control using manipulator algorithm blocks.

Mobile Robot Algorithms

Create maps of environments using occupancy grids, localize robots within maps, and develop path planning and control algorithms for mobile robots.

Executing motion control for a differential-drive mobile robot on an obstacle-free path between two waypoints on a given map.

Code Generation

Generate C/C++ code and MEX functions for rapid prototyping and hardware-in-the-loop (HIL) testing.

Deployment to Robot Hardware

View signals or modify parameters on deployed models. Make adjustments to your algorithms as they run on hardware.

Test manipulator algorithms by connecting to a real physical robot.

Latest Features

Analytical Inverse Kinematics

Generate functions for inverse kinematics solutions using an analytical approach

RRT Planner for Manipulators

Plan collision-free motion for rigid body tree robot models

Collision Checking for Robot Meshes

Add collision meshes to rigid body tree models and check collisions for specific configurations

Gazebo Co-simulation

Publish and subscribe to custom message types and to messages for robot joint and link states in a Gazebo co-simulation

Educational and Commercial Robot Models

Simulate additional rigid body tree robot models for manipulators and mobile robots introduced to the library of robot models

Interactive Robot Visualization

Manipulate rigid body tree models with visual meshes and perform inverse kinematics for target bodies

See release notes for details on any of these features and corresponding functions.