File Exchange

image thumbnail

Mobile Robotics Simulation Toolbox

MATLAB and Simulink utilities for vehicle kinematics, visualization, and sensor simulation.


Updated 15 Oct 2019

GitHub view license on GitHub

This toolbox provides utilities for robot simulation and algorithm development. This includes:

- 2D kinematic models for robot geometries such as differential drive, three, and four-wheeled vehicles, including forward and inverse kinematics
- Configurable lidar, object, and robot detector simulators
- Visualization of robotic vehicles and sensors in occupancy maps
- MATLAB and Simulink examples and documentation

Cite As

MathWorks Student Competitions Team (2019). Mobile Robotics Simulation Toolbox (, GitHub. Retrieved .

Comments and Ratings (29)

@Manish: Yes, it should be possible. There are several examples for single-robot waypoint following, and it's just a matter of using this same functionality with the multi-robot environment.

Hi, i am trying to perform multi-robot environment (say 3 robots) with each robot following the waypoint. is it possible with current toolbox utilities? if yes, could you please give the example.

@Zhuofan: The wheel angles are the angles the wheels are pointing towards, relative to the body frame of the robot. This angle affects the direction of motion when you spin wheels -- for example, the triple omniwheel model has the wheels at 0, +120, and -120 degrees. If you look at the help file, there should be a diagram explaining it.

@Kristi: I think your question is about the UAV Library which is a separate File Exchange submission. My understanding, though, is that quadrotors don't need a separate waypoint follower since you have full control over the direction of motion, and can instantly change direction unlike a fixed-wing aircraft which has a limited turning radius.

Zhuofan Hu

I have a Question about the generic omniwheels example.
What does the "Wheel angle" exactly mean?
I mean, what is the coordinate of the wheels' angle?

How do I adapt the fixed wing waypoint path following model to a quadrotor? I can change the type of the waypoint follower block, the UAV guidance model block, and the UAV animation block, but the heading control from the fixed wing remains and the guidnace model requires roll, pitch, yaw and thrust and I only see roll, and yaw to feed in.

@Juan Pablo: You can use the VideoWriter functionality in MATLAB.

How I can create a video mp4 or avi from the simulations?

lxl luo

@Thanh: Because a differential drive robot can only move in the body X direction!

thanh le

In the block "Differential Drive Simulation". body's speed inlcude Vx and Vy. why did you force Vy = 0?

@Dabarshi -- no, it does not. You will need at least R2016b, due to the MATLAB features required by the toolbox.

I wanted to know if this toolbox works with Matlab R2015a, because in my case i can't access the simulink library for this toolbox.
thank you

Radim Linke

Hi, regarding my last question. I solved the problem now! I installed the toolbox into 2 different foldes, so matlab was not able to find the new library!

Hello Mr Sebastian and everybody,
I need a simulation environment to apply noisy sensor models and noisy motion model for a differential drive. As far as I understand, this toolbox is sufficient for that purpose, with maybe little modifications to add noise. I still want to ask you though, do you think I can use this toolbox for that study?
Thanks in advance!

@Truong -- as of yesterday, there's a new MultiRobotEnv that does support multi-robots (as well as equivalent Simulink functionality). Give it a look :)

Thank you for this great toolbox Sebastian. If the Visualizer2D works for multi-robots, I bet this toolbox will be extremely useful for academic as well as application purposes.

Julia Li

Thanks for the input, Martin!

Make sure you add this entry to your Watch List so you know when we make updates.

Also, if there's anything else you want to reach me about, you can email us at

Hi Sebastian,
maybe you can remember we already meet at robocup german open last year. I am no working on a new university, and changed the field of research from Rescue Robots to Industrial Applications. But still in the field of mobile robotics.

Multiple robots would be nice. I know it is posible in a more complex simulation, but for fast and easy visualisation it would be great in the robot visualisation tool. Just plot more robots, additional it would be great to inklude the outer dimentions of the robot in the plot (as a box, or circle) and additional y-axes.

Thank you for your fast response.

Hi Martin,

Right now it's just single-robot, but I have a future plan to make it work with multiple robot. Glad that people are asking about it!

My idea was to have a "floating" block that represents the world itself, and then each robot you put in will plot itself on that map.

Hi, i work in the research field of mobile robotics and control systems. I would like to work with this toolbox more. I started to implement my own kinematics and i want to compare different solutions.

I had a problem with the robot visualisation tool.
Is it posible to use more robots in one plot or to use more plots simultanious? If i try that i always get an error.

nuur fakrul

are u have simple analysis for kinematic modeling for mobile robot using script. for example when robot to moving left, moving right, moving forward, and rotational moving in centre.



Added navigation and obstacle avoidance with reinforcement learning example. Added simple examples of RRT path planner. Updated all toolbox reference and syntax to R2019b


Added robot soccer and path following with obstacle avoidance examples. Visualization now has customizable robot colors and object markers. Bug fixes.


Added multi-robot support.

Other new features: Nonzero robot radius for visualization and multi-robot detection with lidar sensors, "Generic Omniwheel" kinematic model for simulating vehicles with arbitrary wheel configurations, new examples.

MATLAB Release Compatibility
Created with R2019b
Compatible with R2018a to any release
Platform Compatibility
Windows macOS Linux

Inspired: Robotics Playground