Robotics researchers and engineers use MATLAB and Simulink to design, simulate, and verify every aspect of autonomous systems, from perception to motion.
- Model robotic systems down to the finest details such as sensor noise and motor vibration.
- Simulate robotic systems with accurate kinematics, dynamics, and contact properties.
- Design and optimize both high-level autonomy and low-level control.
- Synthesize and analyze sensor data with a maintained library of algorithms.
- Verify robot design or algorithm gradually, from simulation to hardware-in-the-loop (HIL) test.
- Deploy algorithms to robots via ROS or directly to microcontrollers, FPGAs, PLCs, and GPUs.
Design the Hardware Platform
Create a 3D physical model or an electromechanical model of autonomous vehicles, drones, and manipulators for simulation, optimization, and reinforcement learning of control algorithms.
- Import existing 3D models from URDF files or CAD software.
- Make the model physically accurate by implementing dynamics, contacts, hydraulics, and pneumatics.
- Complete the digital twins by adding an electrical diagram layer.
Explore Products
Processing Sensor Data
Implement sensor data processing algorithms with powerful toolboxes in MATLAB and Simulink.
- Connect to sensors through ROS, Serial, and other types of protocols.
- Visualize data from cameras, sonar, LiDAR, GPS, and IMUs. Automate common sensor processing tasks such as sensor fusion, filtering, geometric transformation, segmentation, and registration.
Perceiving the Environment
Use built-in interactive MATLAB apps to implement algorithms for object detection and tracking, localization and mapping.
- Experiment and evaluate different neural networks for image classification, regression, and feature detection.
- Automatically convert algorithms into C/C++, fixed-point, HDL, or CUDA® code for deployment to hardware.
Planning and Decision Making
Use an actively maintained algorithm library to implement 2D or 3D path planning for a robot that is either defined as a point mass or a system with kinematic and dynamic constraints. Perform task planning with Stateflow®, defining the conditions and actions needed for decision making in real time.
Explore Products
Communicating with Platforms and Targets
Deploy autonomous algorithms to ROS-based systems and microcontrollers such as Arduino® and Raspberry Pi™. Communicate with embedded targets via protocols, including CAN, EtherCAT®, 802.11™, TCP/IP, UDP, I2C, SPI, MODBUS®, and Bluetooth®.
Hardware Interface Supports
Explore Products
“With MATLAB and Simulink we can use a single environment for control algorithm development, debugging, data analysis, and more—instead of switching between multiple tools. That integration reduces overall project development time and the chances of introducing errors.”
Related Applications and Topics
Free Offroad Vehicles Tutorial
Learn how to create virtual testbenches for developing and validating control and autonomy of heavy machinery.