3.4K Downloads
Updated 28 Mar 2024

control101

View Control 101 toolbox on File Exchange

MATLAB toolbox for control 101 course

The community toolbox project is led by Anthony Rossiter with sponsorship from MathWorks (under project "A MATLAB community toolbox to support learning of Control 101") and input from numerous international colleagues. The intention is that the resources/toolbox developed here will be available from within MATLAB using the "add-ons" button. The resources are shared under a BSD license so users can edit, adopt and use freely.

A summary is given below for completeness; more detailed information is within each individual resource. Some more overview information is on the authors website: https://controleducation.sites.sheffield.ac.uk/matlabresources/section-6-11-community-control-toolbox

There are also so some quick illustrations on a youtube playlist here: https://www.youtube.com/playlist?list=PLs7mcKy_nInHEjth9P3m_bxd6D24IVSzz

Several people have developed MATLAB based materials to support the teaching of “Control Systems 101” type courses; the particular focus here is on interactive and animated resources which are largely self-explanatory, that is easy to use, and support student understanding and learning. They demonstrate authentic scenarios across a broad range of topics which motivate the importance of control to modern society, alongside some technical learning outcomes to support university curricula.

Resources are divided into:

  1. Virtual laboratories which have simple GUI interfaces so students can select buttons and sliders to observe the behaviour of some authentic scenarios and see how different parameter choices affect behaviour. Each virtual laboratory comprises two files which run independently: i) the mlapp file which is the laboratory itself and ii) a partner livescript file which acts like a concise manual giving context, illustrative MATLAB source code and some technical background. Naming conventions are largely self-evident. For example, a typical naming convention for the paired app files is: mixingtank_and_behaviour.mlapp & mixingtank_and_behaviour_manual.mlx.

  2. Livescript files which focus more on useful MATLAB code students can use to create their own files to support detailed analysis, evaluation and design, as required for university courses. These files are summarised in section 6.9.

  3. Simulink files supporting an introduction to modelling, simulation and control, with a focus on basic simulink elelemnts, non-linearity and passing data to and from the MATLAB command window workspace. Simulink is more sensitive to the MATLAB version so the app file will only work with version 2023b or more recent.

If you spot any obvious typos or areas where apps can be made better, please contact Anthony so he can consider for future releases.

Cite As John Anthony Rossiter (2023). Control 101 toolbox (https://github.com/jarossiter/control101ver1/releases/tag/v0.1), GitHub. Retrieved June 29, 2023.

Cite As

John Anthony Rossiter (2024). Control 101 toolbox (https://github.com/jarossiter/control101/releases/tag/v1.52), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2023b
Compatible with R2017b and later releases
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: Function plotting

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Frequency response in time domain/matlabCode

PI tuning methods/matlabCode

PI tuning/matlabCode

aeroplane landing/matlabCode

aeroplane roll/matlabCode

behaviours/matlabCode

car speed behaviour/matlabCode

cruise control/matlabCode

dc servo and position control/matlabCode

doc

first order behaviour characterisation/matlabCode

first order model behaviour/matlabCode

heat exchanger/matlabCode

house temperature behaviour/matlabCode

house temperature story/matlabCode

inverted pendulum/matlabCode

lag design with phase margin and offset/matlabCode

lead design with phase margin and bandwidth/matlabCode

lead lag design from criteria/matlabCode

lead lag design with phase margin bandwidth offset/matlabCode

livescripts for firstcourse in control/matlabCode

mixing tank behaviour/matlabCode

predator prey/matlabCode

proportional design with phase margin/matlabCode

simulink case studies/matlabCode

simulink introduction/matlabCode

tank level behaviour/matlabCode

tank level control with PI/matlabCode

tank level story/matlabCode

Version Published Release Notes
1.52

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.52

1.51

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.51

1.42

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.42

1.41.0.0

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.41

1.4.0.0

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.4

1.3.0.0

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.3

1.2.0.0

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.2

1.1

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.1

1.0

See release notes for this release on GitHub: https://github.com/jarossiter/control101/releases/tag/v1.0

0.1

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.