Modeling, Simulation and Control using Python

Control System Modeling | Simulation | Applying Control | PID | PYTHON| System dynamics | Excercise problems

Ratings: 4.11 / 5.00




Description

System modeling deals with the creation of abstract models of system in different forms such as Differential algebraic equations, Block diagram representation, Transfer functions, State space representation, signal flow graph, etc. It is used to present the model so that the dynamics of the model and the flow of signals within is understandable and further control operations can be performed and behavior of the system can be predicted for change in parameters.

In this course we deal with discrete models in time domain.

Discrete models in time domain:

The model whose operation is not continuous, but discrete for each time steps. Calculation is performed for each time step interval. System model is created by collecting the system data and applying mathematical / physical laws and transforming them into differential equations. Discrete model contains the amplitude of the output with respect to time. To vary the output of the system, the input to the system can be varied. The branch of mathematics that deals with  strategy to select the appropriate input to generate the expected outcome is control theory.

The model to be developed should posses the output as function of input. The function includes all the possible/realistic dynamics. The same model can also be represented in frequency domain which involves amplitude of the output with respect to time.

Simulation:

Simulating the model involves creating it in the software (Python) and setting up the environment parameters like time step, end time, integrator/solver, etc. The input to the model is given in a systematic way for the selected time range with appropriate step size. This type of simulation creates the output for the given input across the time range.

Control:

Applying a strategy which measures output for current input and compares it with reference/desired output and uses this difference(error) term to change the input to the system in the next step (future) this process continues until the end time. If the error in next step is going to reduce based on the current input, then the system is approaching stable solution. Otherwise, the control strategy does not meet stability criteria and is not the proper one. Control strategy has to be modified to reduce future errors.


In this course, the following can be learnt:

1. System modelling - Form differential algebraic equations for system - for three examples

2. System simulation - building the model and simulation set up in python - for three examples

3. System Control - applying control strategy which involves drives output towards objective by selecting appropriate input based on error term.


What You Will Learn!

  • How to use Python as a Control systems simulation tool
  • Build a system model in python.
  • Simulate the model in python.
  • Apply control method in the system modelled in python.
  • Derive equations of motion for mechanical systems.
  • Apply a performance criteria and tune the controller based on it.

Who Should Attend!

  • Control system engineer who wants to expand on his current skills
  • Python professionals who would like to learn control systems through python
  • Engineering students who are interested in control system and programming