Difference between revisions of "BSc: Control Theory"

From IU
Jump to navigation Jump to search
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  +
 
= Control Theory =
 
= Control Theory =
  +
* '''Course name''': Control Theory
  +
* '''Code discipline''': [S20]
  +
* '''Subject area''': Sensors and actuators; Robotic control.
   
  +
== Short Description ==
* <span>'''Course name:'''</span> Control Theory
 
  +
This course covers the following concepts: Introduction to Linear Control, Stability of linear dynamical systems; Controller design; Sensing, observers, Adaptive control.
* <span>'''Course number:'''</span> [S20]
 
* <span>'''Knowledge area:'''</span> Sensors and actuators; Robotic control.
 
 
== Course Characteristics ==
 
 
=== Key concepts of the class ===
 
 
* Introduction to Linear Control, Stability of linear dynamical systems
 
* Controller design
 
* Sensing, observers, Adaptive control
 
 
=== What is the purpose of this course? ===
 
 
Linear Control Theory is both an active tool for modern industrial engineering and a prerequisite for most of the state-of-the-art level control techniques and the corresponding courses. With this in mind, the Linear Control course is both building a foundation for the following development of the student as a learner in the fields of Robotics, Control, Nonlinear Dynamics and others, as well as it is one of the essential practical courses in the engineering curricula.
 
   
 
== Prerequisites ==
 
== Prerequisites ==
  +
* [https://eduwiki.innopolis.university/index.php/BSc:AnalyticGeometryAndLinearAlgebraI CSE204 - Geometry And Linear Algebra II]
 
  +
=== Prerequisite subjects ===
  +
* [https://eduwiki.innopolis.university/index.php/BSc:AnalyticGeometryAndLinearAlgebraI CSE204 - Geometry And Linear Algebra II]: Semidefinite matrices, Eigenvalues, Eigendecomposition (weak prerequisite), matrix exponentials (weak prerequisite), SVD (weak prerequisite)
 
* [https://eduwiki.innopolis.university/index.php/BSc:DifferentialEquations CSE205 - Differential Equations]
 
* [https://eduwiki.innopolis.university/index.php/BSc:DifferentialEquations CSE205 - Differential Equations]
   
  +
=== Prerequisite topics ===
Semidefinite matrices, Eigenvalues, Eigendecomposition (weak prerequisite), matrix exponentials (weak prerequisite), SVD (weak prerequisite)
 
   
   
  +
== Course Topics ==
  +
{| class="wikitable"
  +
|+ Course Sections and Topics
  +
|-
  +
! Section !! Topics within the section
  +
|-
  +
| Introduction to Linear Control, Stability of linear dynamical systems ||
  +
# Control, introduction. Examples.
  +
# Single input single output (SISO) systems. Block diagrams.
  +
# From linear differential equations to state space models.
  +
# DC motor as a linear system.
  +
# Spring-damper as a linear system.
  +
# The concept of stability of the control system. Proof of stability for a linear system with negative real parts of eigenvalues.
  +
# Multi input multi output (MIMO) systems.
  +
# Linear Time Invariant (LTI) systems and their properties.
  +
# Linear Time Varying (LTV) systems and their properties.
  +
# Transfer function representation.
  +
|-
  +
| Controller design. ||
  +
# Stabilizing control. Control error.
  +
# Proportional control.
  +
# PD control. Order of a system and order of the controller.
  +
# PID control.
  +
# P, PD and PID control for DC motor.
  +
# Trajectory tracking. Control input types. Standard inputs (Heaviside step function, Dirac delta function, sine wave).
  +
# Tuning PD and PID. Pole placement.
  +
# Formal statements about stability. Lyapunov theory.
  +
# Types of stability; Lyapunov stability, asymptotic stability, exponential stability.
  +
# Eigenvalues in stability theory. Reasoning about solution of the autonomous linear system.
  +
# Stability proof for PD control.
  +
# Stability in stabilizing control and trajectory tracking.
  +
# Frequency response. Phase response.
  +
# Optimal control of linear systems. From Hamilton-Jacobi-Bellman to algebraic Riccati equation. LQR.
  +
# Stability of LQR.
  +
# Controllability.
  +
|-
  +
| Sensing, observers, Adaptive control ||
  +
# Modelling digital sensors: quantization, discretization, lag.
  +
# Modelling sensor noise. Gaussian noise. Additive models. Multiplicative models. Dynamic sensor models.
  +
# Observability.
  +
# Filters.
  +
# State observers.
  +
# Optimal state observer for linear systems.
  +
# Linearization of nonlinear systems.
  +
# Linearization along trajectory.
  +
# Linearization of Inverted pendulum dynamics.
  +
# Model errors. Differences between random disturbances and unmodeled dynamics/processes.
  +
# Adaptive control.
  +
# Control for sets of linear systems.
  +
# Discretization, discretization error.
  +
# Control for discrete linear systems.
  +
# Stability of discrete linear systems.
  +
|}
  +
== Intended Learning Outcomes (ILOs) ==
   
  +
=== What is the main purpose of this course? ===
  +
Linear Control Theory is both an active tool for modern industrial engineering and a prerequisite for most of the state-of-the-art level control techniques and the corresponding courses. With this in mind, the Linear Control course is both building a foundation for the following development of the student as a learner in the fields of Robotics, Control, Nonlinear Dynamics and others, as well as it is one of the essential practical courses in the engineering curricula.
   
=== Course objectives based on Bloom’s taxonomy ===
+
=== ILOs defined at three levels ===
 
=== - What should a student remember at the end of the course? ===
 
 
By the end of the course, the students should be able to outline:
 
   
  +
==== Level 1: What concepts should a student know/remember/explain? ====
  +
By the end of the course, the students should be able to ...
 
* methods for control synthesis (linear controller gain tuning)
 
* methods for control synthesis (linear controller gain tuning)
 
* methods for controller analysis
 
* methods for controller analysis
 
* methods for sensory data processing for linear systems
 
* methods for sensory data processing for linear systems
   
=== - What should a student be able to understand at the end of the course? ===
+
==== Level 2: What basic practical skills should a student be able to perform? ====
  +
By the end of the course, the students should be able to ...
 
By the end of the course, the students should be able to understand:
 
 
 
* State-space models
 
* State-space models
 
* Eigenvalue analysis for linear systems
 
* Eigenvalue analysis for linear systems
Line 53: Line 98:
 
* Linear Quadratic Regulator
 
* Linear Quadratic Regulator
   
=== - What should a student be able to apply at the end of the course? ===
+
==== Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios? ====
  +
By the end of the course, the students should be able to ...
 
By the end of the course, the students should be able to
 
 
 
* Turn a system of linear differential equations into a state-space model.
 
* Turn a system of linear differential equations into a state-space model.
 
* Design a controller by solving Algebraic Riccati eq.
 
* Design a controller by solving Algebraic Riccati eq.
* Find if a system is stable or not, using eigenvalue analysis.
+
* Find if a system is stable or not, using eigenvalue analysis.
  +
== Grading ==
   
=== Course evaluation ===
+
=== Course grading range ===
  +
{| class="wikitable"
 
{|
+
|+
  +
|-
|+ Course grade breakdown
 
  +
! Grade !! Range !! Description of performance
!align="center"|
 
  +
|-
!align="center"|
 
  +
| A. Excellent || 85-100 || -
!align="center"| '''Proposed points'''
 
 
|-
 
|-
  +
| B. Good || 70-84 || -
|align="center"| Labs/seminar classes
 
|align="center"| 20
 
|align="center"| 30
 
 
|-
 
|-
  +
| C. Satisfactory || 50-69 || -
|align="center"| Interim performance assessment
 
|align="center"| 30
 
|align="center"| 20
 
 
|-
 
|-
  +
| D. Poor || 0-49 || -
|align="center"| Exams
 
|align="center"| 50
 
|align="center"| 50
 
 
|}
 
|}
   
  +
=== Course activities and grading breakdown ===
=== Grades range ===
 
  +
{| class="wikitable"
 
{|
+
|+
|+ Course grading range
 
!align="center"|
 
!align="center"|
 
!align="center"| '''Proposed range'''
 
 
|-
 
|-
  +
! Activity Type !! Percentage of the overall course grade
|align="center"| A. Excellent
 
|align="center"| 90-100
 
|align="center"| 85-100
 
 
|-
 
|-
  +
| Labs/seminar classes || 30
|align="center"| B. Good
 
|align="center"| 75-89
 
|align="center"| 70-84
 
 
|-
 
|-
  +
| Interim performance assessment || 20
|align="center"| C. Satisfactory
 
|align="center"| 60-74
 
|align="center"| 50-69
 
 
|-
 
|-
  +
| Exams || 50
|align="center"| D. Poor
 
|align="center"| 0-59
 
|align="center"| 0-49
 
 
|}
 
|}
   
  +
=== Recommendations for students on how to succeed in the course ===
=== Resources and reference material ===
 
   
Main textbook:
 
   
  +
== Resources, literature and reference materials ==
  +
  +
=== Open access resources ===
 
* Ogata, K., 1994. Solving control engineering problems with MATLAB. Englewood Cliffs, NJ: Prentice-Hall.
 
* Ogata, K., 1994. Solving control engineering problems with MATLAB. Englewood Cliffs, NJ: Prentice-Hall.
  +
* Williams, R.L. and Lawrence, D.A., 2007. Linear state-space control systems. John Wiley & Sons.
  +
* Ogata, K., 1995. Discrete-time control systems (Vol. 2, pp. 446-480). Englewood Cliffs, NJ: Prentice Hall.
   
  +
=== Closed access resources ===
Other reference material:
 
   
* Williams, R.L. and Lawrence, D.A., 2007. Linear state-space control systems. John Wiley &amp; Sons.
 
* Ogata, K., 1995. Discrete-time control systems (Vol. 2, pp. 446-480). Englewood Cliffs, NJ: Prentice Hall.
 
   
  +
=== Software and tools used within the course ===
== Course Sections ==
 
  +
  +
= Teaching Methodology: Methods, techniques, & activities =
   
  +
== Activities and Teaching Methods ==
The main sections of the course and approximate hour distribution between them is as follows:
 
  +
{| class="wikitable"
 
  +
|+ Activities within each section
{|
 
|+ Course Sections
 
!align="center"| '''Section'''
 
! '''Section Title'''
 
!align="center"| '''Teaching Hours'''
 
 
|-
 
|-
  +
! Learning Activities !! Section 1 !! Section 2 !! Section 3
|align="center"| 1
 
| Introduction to Linear Control, Stability of linear dynamical systems
 
|align="center"| 6
 
 
|-
 
|-
  +
| Homework and group projects || 1 || 1 || 1
|align="center"| 2
 
| Controller design
 
|align="center"| 6
 
 
|-
 
|-
  +
| Testing (written or computer based) || 1 || 0 || 0
|align="center"| 3
 
  +
|-
| Sensing, observers, Adaptive control
 
  +
| Reports || 1 || 1 || 1
|align="center"| 6
 
|}
+
|-
  +
| Midterm evaluation || 0 || 1 || 0
 
  +
|-
=== Section 1 ===
 
  +
| Discussions || 0 || 1 || 0
 
  +
|}
==== Section title: ====
 
  +
== Formative Assessment and Course Activities ==
 
Introduction to Linear Control, Stability of linear dynamical systems
 
 
=== Topics covered in this section: ===
 
 
* Control, introduction. Examples.
 
* Single input single output (SISO) systems. Block diagrams.
 
* From linear differential equations to state space models.
 
* DC motor as a linear system.
 
* Spring-damper as a linear system.
 
* The concept of stability of the control system. Proof of stability for a linear system with negative real parts of eigenvalues.
 
* Multi input multi output (MIMO) systems.
 
* Linear Time Invariant (LTI) systems and their properties.
 
* Linear Time Varying (LTV) systems and their properties.
 
* Transfer function representation.
 
   
=== What forms of evaluation were used to test students’ performance in this section? ===
+
=== Ongoing performance assessment ===
   
  +
==== Section 1 ====
{|
 
  +
{| class="wikitable"
!align="center"|
 
  +
|+
!align="center"| '''Yes/No'''
 
 
|-
 
|-
  +
! Activity Type !! Content !! Is Graded?
|align="center"| Development of individual parts of software product code
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || What is a linear dynamical system? || 1
|align="center"| Homework and group projects
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || What is an LTI system? || 1
|align="center"| Midterm evaluation
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || What is an LTV system? || 1
|align="center"| Testing (written or computer based)
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || Provide examples of LTI systems. || 1
|align="center"| Reports
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || What is a MIMO system? || 1
|align="center"| Essays
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || Simulate a linear dynamic system as a higher order differential equation or in state-space form (Language is a free choice, Python and Google Colab are recommended. Use built-in solvers or implement Runge-Kutta or Euler method. || 0
|align="center"| Oral polls
 
  +
|}
|align="center"| 0
 
  +
==== Section 2 ====
  +
{| class="wikitable"
  +
|+
 
|-
 
|-
  +
! Activity Type !! Content !! Is Graded?
|align="center"| Discussions
 
|align="center"| 0
 
|}
 
 
=== Typical questions for ongoing performance evaluation within this section ===
 
 
# What is a linear dynamical system?
 
# What is an LTI system?
 
# What is an LTV system?
 
# Provide examples of LTI systems.
 
# What is a MIMO system?
 
 
=== Typical questions for seminar classes (labs) within this section ===
 
 
# Simulate a linear dynamic system as a higher order differential equation or in state-space form (Language is a free choice, Python and Google Colab are recommended. Use built-in solvers or implement Runge-Kutta or Euler method.
 
 
=== Test questions for final assessment in this section ===
 
 
# Convert a linear differential equation into a state space form.
 
# Convert a transfer function into a state space form.
 
# Convert a linear differential equation into a transfer function.
 
# What does it mean for a linear differential equation to be stable?
 
 
=== Section 2 ===
 
 
==== Section title: ====
 
 
Controller design.
 
 
=== Topics covered in this section: ===
 
 
* Stabilizing control. Control error.
 
* Proportional control.
 
* PD control. Order of a system and order of the controller.
 
* PID control.
 
* P, PD and PID control for DC motor.
 
* Trajectory tracking. Control input types. Standard inputs (Heaviside step function, Dirac delta function, sine wave).
 
* Tuning PD and PID. Pole placement.
 
* Formal statements about stability. Lyapunov theory.
 
* Types of stability; Lyapunov stability, asymptotic stability, exponential stability.
 
* Eigenvalues in stability theory. Reasoning about solution of the autonomous linear system.
 
* Stability proof for PD control.
 
* Stability in stabilizing control and trajectory tracking.
 
* Frequency response. Phase response.
 
* Optimal control of linear systems. From Hamilton-Jacobi-Bellman to algebraic Riccati equation. LQR.
 
* Stability of LQR.
 
* Controllability.
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
{|
 
!align="center"|
 
!align="center"| '''Yes/No'''
 
 
|-
 
|-
  +
| Question || What is stability in the sense of Lyapunov? || 1
|align="center"| Development of individual parts of software product code
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || What is stabilizing control? || 1
|align="center"| Homework and group projects
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || What is trajectory tracking? || 1
|align="center"| Midterm evaluation
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || Why the control for a state-space system does not include the derivative of the state variable in the feedback law? || 1
|align="center"| Testing (written or computer based)
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || How can a PD controller for a second-order linear mechanical system can be re-written in the state-space form? || 1
|align="center"| Reports
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || Write a closed-loop dynamics for an LTI system with a proportional controller. || 1
|align="center"| Essays
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || Give stability conditions for an LTI system with a proportional controller. || 1
|align="center"| Oral polls
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || Provide an example of a LTV system with negative eigenvalues that is not stable. || 1
|align="center"| Discussions
 
|align="center"| 1
 
|}
 
 
=== Typical questions for ongoing performance evaluation within this section ===
 
 
# What is stability in the sense of Lyapunov?
 
# What is stabilizing control?
 
# What is trajectory tracking?
 
# Why the control for a state-space system does not include the derivative of the state variable in the feedback law?
 
# How can a PD controller for a second-order linear mechanical system can be re-written in the state-space form?
 
# Write a closed-loop dynamics for an LTI system with a proportional controller.
 
# Give stability conditions for an LTI system with a proportional controller.
 
# Provide an example of a LTV system with negative eigenvalues that is not stable.
 
# Write algebraic Riccati equation for a standard additive quadratic cost.
 
# Derive algebraic Riccati equation for a given additive quadratic cost.
 
# Derive differential Riccati equation for a standard additive quadratic cost.
 
# What is the meaning of the unknown variable in the Riccati equation? What are its property in case of LTI dynamics.
 
# What is a frequency response?
 
# What is a phase response?
 
 
=== Typical questions for seminar classes (labs) within this section ===
 
 
# Design control for an LTI system using pole placement.
 
# Design control for an LTI system using Riccati (LQR).
 
# Simulate an LTI system with LQR controller.
 
 
=== Test questions for final assessment in this section ===
 
 
<ol>
 
<li><p>You have a linear system: <math display="block">\dot x = Ax + Bu</math> and a cost function: a) <math display="inline">J = \int (x^{\top} Q x + u^{\top} I u) dt</math> b) <math display="inline">J = \int (x^{\top} I x + u^{\top} R u) dt</math> Write Riccati eq. and find LQR gain analytically.</p></li>
 
<li><p>You have a linear system a) <math display="inline">\begin{bmatrix}
 
\dot x_{1} \\
 
\dot x_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
1 & 10 \\
 
-3 & 4
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix}</math> b) <math display="inline">\begin{bmatrix}
 
\dot x_{1} \\
 
\dot x_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
-2 & 1 \\
 
2 & 40
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix}</math> Prove whether or not it is stable.</p></li>
 
<li><p>You have a linear system a) <math display="block">\begin{bmatrix}
 
\dot x_{1} \\
 
\dot x_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
1 & 10 \\
 
-3 & 4
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix} +
 
\begin{bmatrix}
 
u_{1} \\
 
u_{2}
 
\end{bmatrix}</math> b) <math display="block">\begin{bmatrix}
 
\dot x_{1} \\
 
\dot x_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
-2 & 1 \\
 
2 & 40
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix}+
 
\begin{bmatrix}
 
u_{1} \\
 
u_{2}
 
\end{bmatrix}</math> Your controller is: a) <math display="inline">\begin{bmatrix}
 
u_{1} \\
 
u_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
100 & 1 \\
 
1 & 20
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix}</math> b) <math display="inline">\begin{bmatrix}
 
u_{1} \\
 
u_{2}
 
\end{bmatrix} =
 
\begin{bmatrix}
 
7 & 2 \\
 
2 & 5
 
\end{bmatrix}
 
\begin{bmatrix}
 
x_{1} \\
 
x_{2}
 
\end{bmatrix}</math> Prove whether the control system is stable.</p></li>
 
<li><p>You have linear dynamics:</p>
 
<div class="center">
 
 
{|
 
| a) <math display="inline">2 \ddot q + 3 \dot q - 5 q = u</math>
 
| b) <math display="inline">10 \ddot q - 7 \dot q + 10 q = u</math>
 
 
|-
 
|-
  +
| Question || Write algebraic Riccati equation for a standard additive quadratic cost. || 1
| c) <math display="inline">15 \ddot q + 17 \dot q + 11 q = 2u</math>
 
  +
|-
| d) <math display="inline">20 \ddot q - \dot q - 2 q = -u</math>
 
  +
| Question || Derive algebraic Riccati equation for a given additive quadratic cost. || 1
|}
 
  +
|-
 
  +
| Question || Derive differential Riccati equation for a standard additive quadratic cost. || 1
 
  +
|-
</div>
 
  +
| Question || What is the meaning of the unknown variable in the Riccati equation? What are its property in case of LTI dynamics. || 1
<ol>
 
  +
|-
<li><p>If <math display="inline">u = 0</math>, which are stable (a - d)?</p></li>
 
  +
| Question || What is a frequency response? || 1
<li><p>Find <math display="inline">u</math> that makes the dynamics stable.</p></li>
 
  +
|-
<li><p>Write transfer functions for the cases <math display="inline">u = 0</math> and <math display="inline">u = -100x</math>.</p></li></ol>
 
  +
| Question || What is a phase response? || 1
</li>
 
  +
|-
<li><p>What is the difference between exponential stability, asymptotic stability and optimality?</p></li></ol>
 
  +
| Question || Design control for an LTI system using pole placement. || 0
 
=== Section 3 ===
 
 
==== Section title: ====
 
 
Sensing, observers, Adaptive control
 
 
==== Topics covered in this section: ====
 
 
* Modelling digital sensors: quantization, discretization, lag.
 
* Modelling sensor noise. Gaussian noise. Additive models. Multiplicative models. Dynamic sensor models.
 
* Observability.
 
* Filters.
 
* State observers.
 
* Optimal state observer for linear systems.
 
* Linearization of nonlinear systems.
 
* Linearization along trajectory.
 
* Linearization of Inverted pendulum dynamics.
 
* Model errors. Differences between random disturbances and unmodeled dynamics/processes.
 
* Adaptive control.
 
* Control for sets of linear systems.
 
* Discretization, discretization error.
 
* Control for discrete linear systems.
 
* Stability of discrete linear systems.
 
 
=== What forms of evaluation were used to test students’ performance in this section? ===
 
 
{|
 
!align="center"|
 
!align="center"| '''Yes/No'''
 
 
|-
 
|-
  +
| Question || Design control for an LTI system using Riccati (LQR). || 0
|align="center"| Development of individual parts of software product code
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || Simulate an LTI system with LQR controller. || 0
|align="center"| Homework and group projects
 
  +
|}
|align="center"| 1
 
  +
==== Section 3 ====
  +
{| class="wikitable"
  +
|+
 
|-
 
|-
  +
! Activity Type !! Content !! Is Graded?
|align="center"| Midterm evaluation
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || What are the sources of sensor noise? || 1
|align="center"| Testing (written or computer based)
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || How can we combat the lack of sensory information? || 1
|align="center"| Reports
 
|align="center"| 1
 
 
|-
 
|-
  +
| Question || When it is possible to combat the lack of sensory information? || 1
|align="center"| Essays
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || How can we combat the sensory noise? || 1
|align="center"| Oral polls
 
|align="center"| 0
 
 
|-
 
|-
  +
| Question || What is an Observer? || 1
|align="center"| Discussions
 
  +
|-
|align="center"| 0
 
  +
| Question || What is a filter? || 1
|}
 
  +
|-
 
  +
| Question || How is additive noise different from multiplicative noise? || 1
=== Typical questions for ongoing performance evaluation within this section ===
 
  +
|-
 
  +
| Question || Simulate an LTI system with proportional control and sensor noise. || 0
# What are the sources of sensor noise?
 
  +
|-
# How can we combat the lack of sensory information?
 
# When it is possible to combat the lack of sensory information?
+
| Question || Design an observer for an LTI system with proportional control and lack of sensory information. || 0
  +
|}
# How can we combat the sensory noise?
 
  +
=== Final assessment ===
# What is an Observer?
 
  +
'''Section 1'''
# What is a filter?
 
  +
# Convert a linear differential equation into a state space form.
# How is additive noise different from multiplicative noise?
 
  +
# Convert a transfer function into a state space form.
 
  +
# Convert a linear differential equation into a transfer function.
==== Typical questions for seminar classes (labs) within this section ====
 
  +
# What does it mean for a linear differential equation to be stable?
 
  +
'''Section 2'''
# Simulate an LTI system with proportional control and sensor noise.
 
  +
# You have a linear system: <math>{\displaystyle {\dot {x}}=Ax+Bu}</math> and a cost function: a) <math>{\textstyle J=\int (x^{\top }Qx+u^{\top }Iu)dt}</math> b) <math>{\textstyle J=\int (x^{\top }Ix+u^{\top }Ru)dt}</math> Write Riccati eq. and find LQR gain analytically.
# Design an observer for an LTI system with proportional control and lack of sensory information.
 
  +
# You have a linear system a) <math>{\textstyle {\begin{bmatrix}{\dot {x}}_{1}\\{\dot {x}}_{2}\end{bmatrix}}={\begin{bmatrix}1&10\\-3&4\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}}</math> b) <math>{\textstyle {\begin{bmatrix}{\dot {x}}_{1}\\{\dot {x}}_{2}\end{bmatrix}}={\begin{bmatrix}-2&1\\2&40\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}}</math> Prove whether or not it is stable.
 
  +
# You have a linear system a) <math>{\displaystyle {\begin{bmatrix}{\dot {x}}_{1}\\{\dot {x}}_{2}\end{bmatrix}}={\begin{bmatrix}1&10\\-3&4\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}+{\begin{bmatrix}u_{1}\\u_{2}\end{bmatrix}}}</math> b) <math>{\displaystyle {\begin{bmatrix}{\dot {x}}_{1}\\{\dot {x}}_{2}\end{bmatrix}}={\begin{bmatrix}-2&1\\2&40\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}+{\begin{bmatrix}u_{1}\\u_{2}\end{bmatrix}}}</math> Your controller is: a) <math>{\textstyle {\begin{bmatrix}u_{1}\\u_{2}\end{bmatrix}}={\begin{bmatrix}100&1\\1&20\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}}</math> b) <math>{\textstyle {\begin{bmatrix}u_{1}\\u_{2}\end{bmatrix}}={\begin{bmatrix}7&2\\2&5\end{bmatrix}}{\begin{bmatrix}x_{1}\\x_{2}\end{bmatrix}}}</math> Prove whether the control system is stable.
==== Test questions for final assessment in this section ====
 
  +
# You have linear dynamics:
 
  +
a) <math>{\textstyle 2{\ddot {q}}+3{\dot {q}}-5q=u}</math>
  +
b) <math>{\textstyle 10{\ddot {q}}-7{\dot {q}}+10q=u}</math>
  +
c) <math>{\textstyle 15{\ddot {q}}+17{\dot {q}}+11q=2u}</math>
  +
d) <math>{\textstyle 20{\ddot {q}}-{\dot {q}}-2q=-u}</math>
  +
If <math>{\textstyle u=0}</math> , which are stable (a - d)?
  +
Find <math>{\textstyle u}</math> that makes the dynamics stable.
  +
Write transfer functions for the cases <math>{\textstyle u=0}</math> and <math>{\textstyle u=-100x}</math> .
  +
# What is the difference between exponential stability, asymptotic stability and optimality?
  +
'''Section 3'''
 
# Write a model of a linear system with additive Gaussian noise.
 
# Write a model of a linear system with additive Gaussian noise.
 
# Derive and implement an observer.
 
# Derive and implement an observer.
 
# Derive and implement a filter.
 
# Derive and implement a filter.
  +
  +
=== The retake exam ===
  +
'''Section 1'''
  +
  +
'''Section 2'''
  +
  +
'''Section 3'''

Latest revision as of 13:05, 13 July 2022

Control Theory

  • Course name: Control Theory
  • Code discipline: [S20]
  • Subject area: Sensors and actuators; Robotic control.

Short Description

This course covers the following concepts: Introduction to Linear Control, Stability of linear dynamical systems; Controller design; Sensing, observers, Adaptive control.

Prerequisites

Prerequisite subjects

Prerequisite topics

Course Topics

Course Sections and Topics
Section Topics within the section
Introduction to Linear Control, Stability of linear dynamical systems
  1. Control, introduction. Examples.
  2. Single input single output (SISO) systems. Block diagrams.
  3. From linear differential equations to state space models.
  4. DC motor as a linear system.
  5. Spring-damper as a linear system.
  6. The concept of stability of the control system. Proof of stability for a linear system with negative real parts of eigenvalues.
  7. Multi input multi output (MIMO) systems.
  8. Linear Time Invariant (LTI) systems and their properties.
  9. Linear Time Varying (LTV) systems and their properties.
  10. Transfer function representation.
Controller design.
  1. Stabilizing control. Control error.
  2. Proportional control.
  3. PD control. Order of a system and order of the controller.
  4. PID control.
  5. P, PD and PID control for DC motor.
  6. Trajectory tracking. Control input types. Standard inputs (Heaviside step function, Dirac delta function, sine wave).
  7. Tuning PD and PID. Pole placement.
  8. Formal statements about stability. Lyapunov theory.
  9. Types of stability; Lyapunov stability, asymptotic stability, exponential stability.
  10. Eigenvalues in stability theory. Reasoning about solution of the autonomous linear system.
  11. Stability proof for PD control.
  12. Stability in stabilizing control and trajectory tracking.
  13. Frequency response. Phase response.
  14. Optimal control of linear systems. From Hamilton-Jacobi-Bellman to algebraic Riccati equation. LQR.
  15. Stability of LQR.
  16. Controllability.
Sensing, observers, Adaptive control
  1. Modelling digital sensors: quantization, discretization, lag.
  2. Modelling sensor noise. Gaussian noise. Additive models. Multiplicative models. Dynamic sensor models.
  3. Observability.
  4. Filters.
  5. State observers.
  6. Optimal state observer for linear systems.
  7. Linearization of nonlinear systems.
  8. Linearization along trajectory.
  9. Linearization of Inverted pendulum dynamics.
  10. Model errors. Differences between random disturbances and unmodeled dynamics/processes.
  11. Adaptive control.
  12. Control for sets of linear systems.
  13. Discretization, discretization error.
  14. Control for discrete linear systems.
  15. Stability of discrete linear systems.

Intended Learning Outcomes (ILOs)

What is the main purpose of this course?

Linear Control Theory is both an active tool for modern industrial engineering and a prerequisite for most of the state-of-the-art level control techniques and the corresponding courses. With this in mind, the Linear Control course is both building a foundation for the following development of the student as a learner in the fields of Robotics, Control, Nonlinear Dynamics and others, as well as it is one of the essential practical courses in the engineering curricula.

ILOs defined at three levels

Level 1: What concepts should a student know/remember/explain?

By the end of the course, the students should be able to ...

  • methods for control synthesis (linear controller gain tuning)
  • methods for controller analysis
  • methods for sensory data processing for linear systems

Level 2: What basic practical skills should a student be able to perform?

By the end of the course, the students should be able to ...

  • State-space models
  • Eigenvalue analysis for linear systems
  • Proportional and PD controllers
  • How to stabilize a linear system
  • Lyapunov Stability
  • How to check if the system is controllable
  • Observer design
  • Sources of sensor noise
  • Filters
  • Adaptive Control
  • Optimal Control
  • Linear Quadratic Regulator

Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?

By the end of the course, the students should be able to ...

  • Turn a system of linear differential equations into a state-space model.
  • Design a controller by solving Algebraic Riccati eq.
  • Find if a system is stable or not, using eigenvalue analysis.

Grading

Course grading range

Grade Range Description of performance
A. Excellent 85-100 -
B. Good 70-84 -
C. Satisfactory 50-69 -
D. Poor 0-49 -

Course activities and grading breakdown

Activity Type Percentage of the overall course grade
Labs/seminar classes 30
Interim performance assessment 20
Exams 50

Recommendations for students on how to succeed in the course

Resources, literature and reference materials

Open access resources

  • Ogata, K., 1994. Solving control engineering problems with MATLAB. Englewood Cliffs, NJ: Prentice-Hall.
  • Williams, R.L. and Lawrence, D.A., 2007. Linear state-space control systems. John Wiley & Sons.
  • Ogata, K., 1995. Discrete-time control systems (Vol. 2, pp. 446-480). Englewood Cliffs, NJ: Prentice Hall.

Closed access resources

Software and tools used within the course

Teaching Methodology: Methods, techniques, & activities

Activities and Teaching Methods

Activities within each section
Learning Activities Section 1 Section 2 Section 3
Homework and group projects 1 1 1
Testing (written or computer based) 1 0 0
Reports 1 1 1
Midterm evaluation 0 1 0
Discussions 0 1 0

Formative Assessment and Course Activities

Ongoing performance assessment

Section 1

Activity Type Content Is Graded?
Question What is a linear dynamical system? 1
Question What is an LTI system? 1
Question What is an LTV system? 1
Question Provide examples of LTI systems. 1
Question What is a MIMO system? 1
Question Simulate a linear dynamic system as a higher order differential equation or in state-space form (Language is a free choice, Python and Google Colab are recommended. Use built-in solvers or implement Runge-Kutta or Euler method. 0

Section 2

Activity Type Content Is Graded?
Question What is stability in the sense of Lyapunov? 1
Question What is stabilizing control? 1
Question What is trajectory tracking? 1
Question Why the control for a state-space system does not include the derivative of the state variable in the feedback law? 1
Question How can a PD controller for a second-order linear mechanical system can be re-written in the state-space form? 1
Question Write a closed-loop dynamics for an LTI system with a proportional controller. 1
Question Give stability conditions for an LTI system with a proportional controller. 1
Question Provide an example of a LTV system with negative eigenvalues that is not stable. 1
Question Write algebraic Riccati equation for a standard additive quadratic cost. 1
Question Derive algebraic Riccati equation for a given additive quadratic cost. 1
Question Derive differential Riccati equation for a standard additive quadratic cost. 1
Question What is the meaning of the unknown variable in the Riccati equation? What are its property in case of LTI dynamics. 1
Question What is a frequency response? 1
Question What is a phase response? 1
Question Design control for an LTI system using pole placement. 0
Question Design control for an LTI system using Riccati (LQR). 0
Question Simulate an LTI system with LQR controller. 0

Section 3

Activity Type Content Is Graded?
Question What are the sources of sensor noise? 1
Question How can we combat the lack of sensory information? 1
Question When it is possible to combat the lack of sensory information? 1
Question How can we combat the sensory noise? 1
Question What is an Observer? 1
Question What is a filter? 1
Question How is additive noise different from multiplicative noise? 1
Question Simulate an LTI system with proportional control and sensor noise. 0
Question Design an observer for an LTI system with proportional control and lack of sensory information. 0

Final assessment

Section 1

  1. Convert a linear differential equation into a state space form.
  2. Convert a transfer function into a state space form.
  3. Convert a linear differential equation into a transfer function.
  4. What does it mean for a linear differential equation to be stable?

Section 2

  1. You have a linear system: and a cost function: a) b) Write Riccati eq. and find LQR gain analytically.
  2. You have a linear system a) b) Prove whether or not it is stable.
  3. You have a linear system a) b) Your controller is: a) b) Prove whether the control system is stable.
  4. You have linear dynamics:

a) b) c) d) If , which are stable (a - d)? Find that makes the dynamics stable. Write transfer functions for the cases and .

  1. What is the difference between exponential stability, asymptotic stability and optimality?

Section 3

  1. Write a model of a linear system with additive Gaussian noise.
  2. Derive and implement an observer.
  3. Derive and implement a filter.

The retake exam

Section 1

Section 2

Section 3