Virtual Labs and Projects with MATLAB and Simulink

You can bring interactive labs to your online courses to enable student participation and active learning. Use MATLAB and Simulink to build engaging virtual labs by incorporating modeling and simulation.

See how Mondragon University used MATLAB and Simulink to model a laboratory turbine and other system components.

Online Laboratories

Use MATLAB and Simulink to teach virtual or remote labs, or teach with hardware kits. As the format of lab activities varies between topics, MATLAB and Simulink contain tools to support your instruction by deploying apps, streaming data from your hardware, and utilizing mobile devices. See a gallery of virtual lab examples in Featured Courseware.


Simulates a process, test, apparatus, or other activity.


Campus-based hardware is accessed, viewed, or operated.

Hardware at Home

Students use kits or mobile devices, or collect data.

Simulate Laboratory Equipment and Processes with Simulink

Create a representative model of your laboratory equipment or processes in a visual environment with Simulink. Add components to your model to introduce new course concepts. Simulink can also help students derive and understand the system-level equations used in your course assignments.

Run simulations of your hardware or system to demonstrate behavior to students. Simulations can be accompanied by graphical outputs and 3D animations to help facilitate student understanding. Results can be exported to MATLAB for further analysis during lectures, homework, and future labs. Virtualizing labs also enables you to augment courses that do not have devoted laboratory space or scheduled time and avoid physical hardware limitations.

See how the University of Toronto used Simulink to model reconfigurable industrial robots.

Have you had success building virtual labs with MATLAB and Simulink?

Share your experience with our Distance Learning Community.

Build Your Own Lab Interfaces

MATLAB and Simulink support the construction of user interfaces to customize virtualized lab environments. Use existing apps inside MATLAB and Simulink as the basis for a virtual laboratory or create your own using App Designer.

MATLAB apps allow your students to experiment and learn engineering concepts without focusing on the code or software-specific skills. Students interact with apps within MATLAB or MATLAB Online. Apps can be shared in a browser with MATLAB Web App Server.

See how Zachary Lietzau of Embry-Riddle Aeronautical University used App Designer to create an app for interactive geometry manipulation of an aircraft that includes real-time updating graphics and stability calculations.

MATLAB apps to help get you started:

Find more from the MATLAB and Simulink community in File Exchange.

Want to focus on the code and workflow?

See how Johns Hopkins University established a virtual lab for wireless communications.

Collaboration and Interactivity Tools

MATLAB and Simulink Projects

MATLAB and Simulink Projects provide opportunities to support virtual collaboration for lab activities or student design projects. Team members can set and manage project paths, create shortcuts into models, track and control changes, check file dependency, and share results. Student groups can organize into subgroups and simultaneously work on different subsystems of a model.

Keep instructors and teaching assistants updated on the latest content with MATLAB and Simulink Projects. These management tools also assist with version control in cases where a model may be used in multiple courses.

Using Live Editor

Use Live Editor to create lab activities within MATLAB code or an interactive lab manual out of live scripts. Your students can also use Live Editor to make interactive lab reports or electronic lab notebooks based in MATLAB code that document workflows, analyze data, and generate figures. For more on Live Editor and live scripts, see the Instructional Resources page. Also see the Online Assessments page for tips on using MATLAB Grader for assessing outcomes in labs.

Video length is 2:00.