Robotics researchers and engineers use MATLAB and Simulink to design and tune algorithms, model real-world systems, and automatically generate code – all from one software environment.
With MATLAB and Simulink, you can:
Design and analyze 3D rigid-body mechanics (such as vehicle platforms and manipulator arms) and actuator dynamics (such as mechatronic or fluid systems). You can work directly with existing CAD files by importing URDF files directly into Simulink or from CAD software like SolidWorks and Onshape. Add constraints, such as friction, and model multi-domain systems with electrical, hydraulic, or pneumatic, and other components.
You can connect to sensors through ROS. Specific sensors, such as cameras, LiDAR, and IMUs, have ROS messages that can be converted to MATLAB data types for analysis and visualization.
You can automate common sensor processing workflows such as importing and batch-processing large data sets, sensor calibration, noise reduction, geometric transformation, segmentation, and registration.
Built-in MATLAB apps let you interactively perform object detection and tracking, motion estimation, 3D point-cloud processing, and sensor fusion. Use deep learning for image classification, regression, and feature learning using convolutional neural networks (CNNs).
Automatically convert your algorithms into C/C++, fixed-point, HDL, or CUDA code.
Create a map of the robot using range sensor readings and known poses of the robot, or you can import an occupancy grid. Navigate constrained environments by designing algorithms for path and motion planning. Use path planners to compute an obstacle-free path in any given map.
Design algorithms that allow your robot to make decisions when faced with uncertainty. Implement state machines to define the conditions and actions needed for decision making.
You can use algorithms and apps to systematically analyze, design, and visualize the behavior of complex systems in time and frequency domains.
Automatically tune compensator parameters using interactive techniques such as bode loop shaping and the root locus method. You can tune gain-scheduled controllers and specify multiple tuning objectives, such as reference tracking, disturbance rejection, and stability margins.
Code generation and requirements traceability helps you validate your system and certify compliance.
Communicate with embedded targets using several protocols including CAN, EtherCAT, and 802.11. Use digital, RF, and other wireless technologies to connect to hardware that supports TCP/IP, UDP, I2C, SPI, MODBUS, and Bluetooth serial protocols.
“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.”Dr. John Wen, Rensselaer Polytechnic Institute