Collection of curriculum and useful examples for robotics and autonomous systems education using MATLAB® and Simulink® for different stages of learning.
Content classification:
- (Beginner) Suggested for anyone new to MATLAB/Simulink and new to robotics (STEM Education)
- (Intermediate) Suggested for those with foundational engineering knowledge and basic MATLAB skills (MATLAB Onramp Recommended)
- (Advanced) Recommended for anyone with working knowledge in robotics theory, programming experience, and basic MATLAB skills
Looking for content specific to robotics applications? Check out the Awesome-MATLAB-Robotics GitHub repository instead.
NOTE: For content additions open a GitHub Issue on the repository
(Beginner) | (Intermediate) | (Advanced) |
---|---|---|
Learning Robotics Basics with MATLAB (Video) | Robotics Education with MATLAB (Video) | Teaching Robotics with MATLAB (White-Paper) |
(Beginner) Robotics Playground [Curriculum] 9 Lessons covering how to use distance sensors, encoders, limit switches, and MATLAB and Simulink basics.
(Beginner) Mobile Robotics Tutorials [Curriculum | Videos] 5 Video tutorials teaching basics programming skills and controls theory for autonomous path navigation.
(Intermediate) Control of Mobile Robots [Curriculum] 7 Lessons covering controllers, PID, Obstacle avoidance, controller arbitration, wall following, and complete navigation system.
(Intermediate) Applied Autonomous Robots I [Curriculum] 9 Lessons and exercises including basic code development, kinematics, perception, control, trajectories, potential fields, and a computer vision teaser.
(Advanced) Applied Autonomous Robots II [Curriculum] 9 Lessons covering basics of computer vision, physics of color, visual servoing, filtering, camera calibration, K-means clustering and Kalman filters.
(Advanced) Robotics Playground Expansion Pack [Curriculum] 5 Lessons on Robot Navigation, Robot Manipulation, Contact Modeling, Path Planning implemented in a 3D simulator with realistic physics.
(Beginner) Physics Course with Symbolic Math [Curriculum] Chapter 4 includes live script covering classical mechanics
(Intermediate) Electromechanical Systems [Curriculum] 13 Lessons covering electromechanics in depth. Some topics include digitization, electrical systems, control systems basics, filter design, PWM, physical modeling, discretization,and DC motors.
(Advanced) Modeling, Design, and Control of Robotic Mechanisms - Kyungnam University (Curriculum) 4 Topics covering planar robot dynamics, 2-DOF simulation, real-time control and an Arduino project for a walking robot.
(Beginner) Controls Tutorials - University of Michigan (Curriculum) 70+ Control system tutorials including system modeling and analysis, controller design and analysis, simulation, and physical modeling, for 8 applications (motors, automobiles, aircraft, pendulums, etc).
(Beginner) Transfer Function Analysis of Dynamic Systems (Curriculum) 4 lessons and live scripts covering transfer functions, pole-zero and frequency domain analysis.
(Beginner) Control Design Onramp with Simulink (Interactive Tutorials) 1-Hour interactive tutorial covering the basics of plant modeling, linearization, feedback control and PID tuning.
(Intermediate) Control of Mobile Robots (Curriculum) 7 Lessons covering controllers, PID, Obstacle avoidance, controller arbitration, wall following and complete navigation system.
(Intermediate) Embedded Control and Mechatronics - Southern Illinois University (Curriculum) 14 Lectures and 2 projects covering, dynamic system modeling, system identification, simulation of nonlinear systems, analysis of linear control systems, lead-lag control, PID, LQR, optimization-based control, and LQG. Projects use Arduino for hardware implementation.
(Advanced) Feedback linearization and nonlinear control of two link robots [Example] Simulation of a two-link robot corresponding to Example 6.2 of Applied Nonlinear Control by Slotine.
(Advanced) Reinforcement Learning with MATLAB (Curriculum) 4 Learning Modules on reinforcement learning covering Q-learning for MDP, Stochastic Gridwrold with DQN, thermal control with DDPG Agent, and robot walking.
(Beginner) Intro to Image Processing - University of Wisconsin-Madison This short project introduces students to image processing with MATLAB including importing images from the web, color transformations, circle finding, and edge finding.
(Beginner) Getting Started with Perception [Videos | Examples] Video tutorials and examples for: - Basic Image Processing - Image Segmentation - Feature Matching and Tracking - Point-Cloud Processing
(Beginner) Image Processing Onramp with MATLAB 2-Hour interactive course covering image handling in MATLAB, image segmentation, pre and post processing techniques, classification, and batch processing.
(Intermediate) Computer Vision Onramp (Self-Paced Tutorials) 2-Hour interactive tutorial covering processing of video data, feature extraction and matching, object detection, and tracking.
(Intermediate) Image processing with MATLAB (Self-paced Course) 11-Hour interactive tutorial covering working with images, segmentation based on color and texture, object detection, edge and shape detection, batch processing, and image registration.
(Advanced) Deep Learning Onramp (Self-Paced Course) 2-Hour interactive tutorial covering usage of pre-trained neural networks, image management, and transfer learning for classification.
(Beginner) Intro to MATLAB Programming (Self-Paced Course) 2-Hour Introduction to programming tutorial using MATLAB. Covering programming environment, relational operators, arrays, vectors, matrices, functions, plotting, and data import.
(Intermediate) MATLAB and Simulink ROS Tutorials [Curriculum] 9 Lessons with hands-on projects teaching the basics of interacting with robots powered by ROS (Robot Operating System).
(Advanced) Getting Started with MATLAB, Simulink and ROS [Examples | Videos | GitHub] Examples and video tutorials on: - Using MATLAB with ROS - Using Simulink with ROS - Automatic Code Generation for ROS Nodes - Distributed Computing Using ROS
Navigation, Localization, Mapping and SLAM
(Beginner) Introduction to Mobile Robotics (Self-paced Tutorials) 5 Video tutorials with accompanying simualtions covering robot control, PID design, line following, obstacle detection and path navigation.
(Beginner) Navigation Stack Templates for Mobile Robots [Examples | Videos] Reference application and examples for:
- Mapping
- Path Following
- Path Planning
- Trajectory Generation
- Monte Carlo Localization
- SLAM
(Intermediate) Localization and Kalman Filters [Curriculum] 6 Lessons explaining the basics of landmark-based robot localization including: Sensor processing, robot control, localization and kalman filter theory, and ROS implementation.
Manipulation
(Beginner) Robotic Manipulators Course Modules (Curriculum) Live script lessons covering fundamental concepts for manipulation. Covering point translations/rotations, transformation matrices, DH parameters and more.
(Beginner) Forward/Inverse Kinematics of 2-link robots [Interactive Example] Example and simulation explaining how to derive forward/inverse kinematics, and jacobian of a 2-link chain. With final project robot writing "hello" with end effector.
(Beginner) Workspace Analysis of Planar n-DOF robots [Example] Use this function to visualize and analyze the workspaces of planar robots from their DH parameters.
(Intermediate) Modeling and Control of Serial Manipulators using Dual-Quaternions 8 Lessons covering how to use Dual-Quaternion (DQ) robot representations for kinematic modeling and robot control.
(Intermediate) Designing Manipulator Algorithms [Examples | Simulations] Reference application and examples demonstrating:
- Task Space Control
- Joint Space Control
- Forward/Inverse Kinematics
- Closed-loop control
- Supervisory logic and task scheduling
- Actuator Modeling
Planning
No content yet :'( Any suggestions for this topic?
Collaboration (Multi-Robot, Human-Machine)
Modeling Multi-Agent Robot Systems - University of Washington 4 Lectures and accompanying code examples covering deling multi-agent systems, graph theory for interaction, agreement protocol for rendezvous, and formation control.
Deep Learning and Reinforcement Learning
(Beginner) Reinforcement Learning Onramp [Self-Paced Course] 3 Hour interactive tutorial covering Reinforcement learning overview, defining environments, defining agents, and training agents.
(Intermediate) AI for Robotics Workshop [Examples] Examples and lessons on how to develop a mobile robot using AI for perception and control in both simulation and with an Nvidia JetBot.
(Intermediate) Q-learning for 4-Link robot walker (Interactive Simulator) Kinematic simulator for 4-link robot walking demonstrating practical programming, inverse kinematics, Q-learning for motion control, and simulated annealing.
(Intermediate) Reinforcement Learning with MATLAB (Curriculum) 4 Learning Modules on reinforcement learning covering Q-learning for MDP, Stochastic Gridwrold with DQN, thermal control with DDPG Agent, and robot walking.
- Interactive features for teaching
- Online assignments and automatic grading
- Work on the cloud with MATLAB Online and MATLAB Drive
Didn't find what you were looking for? Try the following links to more teaching resources:
Did we miss something?
- Submit requests to add content by opening an issue in the repository
Copyright 2022 The MathWorks, Inc.