BSc: Control Theory =================== Contents -------- * [1 Control Theory](#Control_Theory) + [1.1 Short Description](#Short_Description) + [1.2 Prerequisites](#Prerequisites) - [1.2.1 Prerequisite subjects](#Prerequisite_subjects) - [1.2.2 Prerequisite topics](#Prerequisite_topics) + [1.3 Course Topics](#Course_Topics) + [1.4 Intended Learning Outcomes (ILOs)](#Intended_Learning_Outcomes_.28ILOs.29) - [1.4.1 What is the main purpose of this course?](#What_is_the_main_purpose_of_this_course.3F) - [1.4.2 ILOs defined at three levels](#ILOs_defined_at_three_levels) * [1.4.2.1 Level 1: What concepts should a student know/remember/explain?](#Level_1:_What_concepts_should_a_student_know.2Fremember.2Fexplain.3F) * [1.4.2.2 Level 2: What basic practical skills should a student be able to perform?](#Level_2:_What_basic_practical_skills_should_a_student_be_able_to_perform.3F) * [1.4.2.3 Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?](#Level_3:_What_complex_comprehensive_skills_should_a_student_be_able_to_apply_in_real-life_scenarios.3F) + [1.5 Grading](#Grading) - [1.5.1 Course grading range](#Course_grading_range) - [1.5.2 Course activities and grading breakdown](#Course_activities_and_grading_breakdown) - [1.5.3 Recommendations for students on how to succeed in the course](#Recommendations_for_students_on_how_to_succeed_in_the_course) + [1.6 Resources, literature and reference materials](#Resources.2C_literature_and_reference_materials) - [1.6.1 Open access resources](#Open_access_resources) - [1.6.2 Closed access resources](#Closed_access_resources) - [1.6.3 Software and tools used within the course](#Software_and_tools_used_within_the_course) * [2 Teaching Methodology: Methods, techniques, & activities](#Teaching_Methodology:_Methods.2C_techniques.2C_.26_activities) + [2.1 Activities and Teaching Methods](#Activities_and_Teaching_Methods) + [2.2 Formative Assessment and Course Activities](#Formative_Assessment_and_Course_Activities) - [2.2.1 Ongoing performance assessment](#Ongoing_performance_assessment) * [2.2.1.1 Section 1](#Section_1) * [2.2.1.2 Section 2](#Section_2) * [2.2.1.3 Section 3](#Section_3) - [2.2.2 Final assessment](#Final_assessment) - [2.2.3 The retake exam](#The_retake_exam) 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 * [CSE204 - Geometry And Linear Algebra II](https://eduwiki.innopolis.university/index.php/BSc:AnalyticGeometryAndLinearAlgebraI): Semidefinite matrices, Eigenvalues, Eigendecomposition (weak prerequisite), matrix exponentials (weak prerequisite), SVD (weak prerequisite) * [CSE205 - Differential Equations](https://eduwiki.innopolis.university/index.php/BSc:DifferentialEquations) ### 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: x ˙ = A x + B u {\displaystyle {\displaystyle {\dot {x}}=Ax+Bu}} ![{\displaystyle {\displaystyle {\dot {x}}=Ax+Bu}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/e4bf3ada8bafed299cdfaacc34637b816d2b4477) and a cost function: a) J = ∫ ( x ⊤ Q x + u ⊤ I u ) d t {\displaystyle {\textstyle J=\int (x^{\top }Qx+u^{\top }Iu)dt}} ![{\displaystyle {\textstyle J=\int (x^{\top }Qx+u^{\top }Iu)dt}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c274707dff116b2105e84a0125a9197b45760f83) b) J = ∫ ( x ⊤ I x + u ⊤ R u ) d t {\displaystyle {\textstyle J=\int (x^{\top }Ix+u^{\top }Ru)dt}} ![{\displaystyle {\textstyle J=\int (x^{\top }Ix+u^{\top }Ru)dt}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2e39947b7aa2e15bcf70da52199efe8a4bd24514) Write Riccati eq. and find LQR gain analytically. 2. You have a linear system a) [ x ˙ 1 x ˙ 2 ] = [ 1 10 − 3 4 ] [ x 1 x 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d1bc5bdf4ddf06f4fa774d9346aca4a2728a0b50) b) [ x ˙ 1 x ˙ 2 ] = [ − 2 1 2 40 ] [ x 1 x 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/eb9e56fd8715942dddcf766918860bea58b3ab17) Prove whether or not it is stable. 3. You have a linear system a) [ x ˙ 1 x ˙ 2 ] = [ 1 10 − 3 4 ] [ x 1 x 2 ] + [ u 1 u 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/87faecb7b594fc89188ec0b29cc1549a60a38168) b) [ x ˙ 1 x ˙ 2 ] = [ − 2 1 2 40 ] [ x 1 x 2 ] + [ u 1 u 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f501668baf1f22b9200a11c2465d2ef3d73d270f) Your controller is: a) [ u 1 u 2 ] = [ 100 1 1 20 ] [ x 1 x 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/91b22a42571dee07244b61cd734f77245322356a) b) [ u 1 u 2 ] = [ 7 2 2 5 ] [ x 1 x 2 ] {\displaystyle {\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}}}} ![{\displaystyle {\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}}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4872fd9ba71d2c96d6a2fe5237bcdf4933f44566) Prove whether the control system is stable. 4. You have linear dynamics: a) 2 q ¨ + 3 q ˙ − 5 q = u {\displaystyle {\textstyle 2{\ddot {q}}+3{\dot {q}}-5q=u}} ![{\displaystyle {\textstyle 2{\ddot {q}}+3{\dot {q}}-5q=u}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/bbd10b4b71db048873878c3a52d3a8e7cb3a3efc) b) 10 q ¨ − 7 q ˙ + 10 q = u {\displaystyle {\textstyle 10{\ddot {q}}-7{\dot {q}}+10q=u}} ![{\displaystyle {\textstyle 10{\ddot {q}}-7{\dot {q}}+10q=u}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/cdf9789ac84e4d4747fe46f29e7a19293789d1aa) c) 15 q ¨ + 17 q ˙ + 11 q = 2 u {\displaystyle {\textstyle 15{\ddot {q}}+17{\dot {q}}+11q=2u}} ![{\displaystyle {\textstyle 15{\ddot {q}}+17{\dot {q}}+11q=2u}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/22376da4802494e1e78b5b811b2dafa40ce3c981) d) 20 q ¨ − q ˙ − 2 q = − u {\displaystyle {\textstyle 20{\ddot {q}}-{\dot {q}}-2q=-u}} ![{\displaystyle {\textstyle 20{\ddot {q}}-{\dot {q}}-2q=-u}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c7cac19e27fe1c85ac14a726fd2cb931c1a9858a) If u = 0 {\displaystyle {\textstyle u=0}} ![{\displaystyle {\textstyle u=0}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b9fd97947cd2d67a0459307e8fa3680b8872db21) , which are stable (a - d)? Find u {\displaystyle {\textstyle u}} ![{\displaystyle {\textstyle u}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/5862c118ef85972552f0f1f2c3993b65b46a2714) that makes the dynamics stable. Write transfer functions for the cases u = 0 {\displaystyle {\textstyle u=0}} ![{\displaystyle {\textstyle u=0}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b9fd97947cd2d67a0459307e8fa3680b8872db21) and u = − 100 x {\displaystyle {\textstyle u=-100x}} ![{\displaystyle {\textstyle u=-100x}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/912419475f3d35d59dc17db8af0df6724143568b) . 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**