These are notes I prepared for a course on control that I taught at King Abdulaziz University.
The notes did not go through the intended revision after the end of the semester due to my schedule so they remain a rough first draft.
They are largely (but not completely) inspired by a control course taught by Dr. Gregory Shaver at the ME dept. at Purdue.
Much of the information was gleaned through a variety of textbooks/papers/experiences, too many to mention here.
Although a reasonable attempt has been made to ensure all the facts are correct, these notes are as-is with no guarantee of accuracy. Use at your own risk.
This document provides an overview and table of contents for a textbook on control systems by Dr. N.C. Jagan. The textbook covers various topics related to modeling, analysis, and design of control systems, including mathematical modeling of physical systems, time response analysis, stability analysis using Routh-Hurwitz and root locus methods, frequency response analysis using Bode and Nyquist plots, and closed loop control design. It contains 7 chapters and provides problems at the end of each chapter. The textbook is copyrighted and published by BSP BS Publications in Hyderabad, India.
This document is a table of contents for the book "Stochastic Programming" by Peter Kall and Stein W. Wallace. It provides an overview of the book's contents, which include chapters on basic concepts in stochastic programming, dynamic systems, recourse problems, probabilistic constraints, preprocessing, and network problems. The book aims to introduce the fundamental concepts and solution techniques in stochastic programming.
This document discusses neuro-fuzzy-based Takagi-Sugeno modelling for fault-tolerant control systems. It begins with introductions to fault-tolerant control and Takagi-Sugeno fuzzy systems. It then presents several strategies for fault-tolerant control of linear and nonlinear systems using neuro-fuzzy virtual actuators and sensors based on Takagi-Sugeno models. These include strategies for systems with variable state matrices and general Takagi-Sugeno fuzzy systems. It also discusses model predictive control approaches and the use of fast interior-point methods for optimization. An example application to a tunnel furnace system is provided throughout to illustrate the approaches.
Comparison of Different Control Strategies for Rotary Flexible Arm Jointomkarharshe
The document contains acceptance and approval certificates for a student project titled "Comparison of Different Controllers for Flexible Joint" submitted by three students. The project has been accepted for evaluation and approved for the degree of Bachelor of Technology in Instrumentation and Control by the Department of Instrumentation and Control at the College of Engineering, Pune.
This document provides an overview of the Maxima computer algebra system, including its history and development from Macsyma. It describes several interfaces for interacting with Maxima, such as the terminal interface, Emacs interface, and Xmaxima graphical interface. It also covers basic functions and operations in Maxima like trigonometric functions, differentiation, integration, and solving ordinary differential equations. The document consists of multiple parts that describe additional packages, installing Maxima, resources and troubleshooting.
Modelling Time in Computation (Dynamic Systems)M Reza Rahmati
This document presents a dissertation on functional reactive programming (FRP) for real-time reactive systems. The dissertation introduces RT-FRP, a language for programming real-time reactive systems that can guarantee resource bounds while allowing a restricted form of recursion. It presents two variants of RT-FRP called H-FRP and E-FRP for modeling hybrid and event-driven systems respectively. A compiler is presented for compiling E-FRP to an imperative language for implementation. The dissertation contributes new programming languages and techniques for programming reactive and embedded systems with guarantees on resource usage.
This document provides an overview and reference for the Intel Architecture Instruction Set Reference manual:
- It describes the three volumes of the Intel Architecture Software Developer's Manual, with Volume 2 focusing on the instruction set reference.
- Volume 2 contains details on the instruction format, notation conventions, and references for each instruction.
- The instruction reference pages provide the instruction name, opcode, operation performed, registers and flags affected, and exceptions.
This document is a lab manual for EE380 (Control Lab) that describes the experimental setup using a dsPIC30F4012 microcontroller and peripherals to control a PMDC motor. It outlines 10 experiments covering topics like modeling and identification of the motor, implementing proportional and PID speed/position controllers, Ziegler-Nichols tuning, disturbance observation, and compensating plant nonlinearities. The manual provides goals, background, and questions for each experiment along with code listings and descriptions to help students complete the experiments.
This document provides an overview and table of contents for a textbook on control systems by Dr. N.C. Jagan. The textbook covers various topics related to modeling, analysis, and design of control systems, including mathematical modeling of physical systems, time response analysis, stability analysis using Routh-Hurwitz and root locus methods, frequency response analysis using Bode and Nyquist plots, and closed loop control design. It contains 7 chapters and provides problems at the end of each chapter. The textbook is copyrighted and published by BSP BS Publications in Hyderabad, India.
This document is a table of contents for the book "Stochastic Programming" by Peter Kall and Stein W. Wallace. It provides an overview of the book's contents, which include chapters on basic concepts in stochastic programming, dynamic systems, recourse problems, probabilistic constraints, preprocessing, and network problems. The book aims to introduce the fundamental concepts and solution techniques in stochastic programming.
This document discusses neuro-fuzzy-based Takagi-Sugeno modelling for fault-tolerant control systems. It begins with introductions to fault-tolerant control and Takagi-Sugeno fuzzy systems. It then presents several strategies for fault-tolerant control of linear and nonlinear systems using neuro-fuzzy virtual actuators and sensors based on Takagi-Sugeno models. These include strategies for systems with variable state matrices and general Takagi-Sugeno fuzzy systems. It also discusses model predictive control approaches and the use of fast interior-point methods for optimization. An example application to a tunnel furnace system is provided throughout to illustrate the approaches.
Comparison of Different Control Strategies for Rotary Flexible Arm Jointomkarharshe
The document contains acceptance and approval certificates for a student project titled "Comparison of Different Controllers for Flexible Joint" submitted by three students. The project has been accepted for evaluation and approved for the degree of Bachelor of Technology in Instrumentation and Control by the Department of Instrumentation and Control at the College of Engineering, Pune.
This document provides an overview of the Maxima computer algebra system, including its history and development from Macsyma. It describes several interfaces for interacting with Maxima, such as the terminal interface, Emacs interface, and Xmaxima graphical interface. It also covers basic functions and operations in Maxima like trigonometric functions, differentiation, integration, and solving ordinary differential equations. The document consists of multiple parts that describe additional packages, installing Maxima, resources and troubleshooting.
Modelling Time in Computation (Dynamic Systems)M Reza Rahmati
This document presents a dissertation on functional reactive programming (FRP) for real-time reactive systems. The dissertation introduces RT-FRP, a language for programming real-time reactive systems that can guarantee resource bounds while allowing a restricted form of recursion. It presents two variants of RT-FRP called H-FRP and E-FRP for modeling hybrid and event-driven systems respectively. A compiler is presented for compiling E-FRP to an imperative language for implementation. The dissertation contributes new programming languages and techniques for programming reactive and embedded systems with guarantees on resource usage.
This document provides an overview and reference for the Intel Architecture Instruction Set Reference manual:
- It describes the three volumes of the Intel Architecture Software Developer's Manual, with Volume 2 focusing on the instruction set reference.
- Volume 2 contains details on the instruction format, notation conventions, and references for each instruction.
- The instruction reference pages provide the instruction name, opcode, operation performed, registers and flags affected, and exceptions.
This document is a lab manual for EE380 (Control Lab) that describes the experimental setup using a dsPIC30F4012 microcontroller and peripherals to control a PMDC motor. It outlines 10 experiments covering topics like modeling and identification of the motor, implementing proportional and PID speed/position controllers, Ziegler-Nichols tuning, disturbance observation, and compensating plant nonlinearities. The manual provides goals, background, and questions for each experiment along with code listings and descriptions to help students complete the experiments.
Automatic Detection of Performance Design and Deployment Antipatterns in Comp...Trevor Parsons
Enterprise applications are becoming increasingly complex. In recent times they have moved away from monolithic architectures to more distributed systems made up of a collection of heterogonous servers. Such servers generally host numerous soft- ware components that interact to service client requests. Component based enterprise frameworks (e.g. JEE or CCM) have been extensively adopted for building such ap- plications. Enterprise technologies provide a range of reusable services that can assist developers building these systems. Consequently developers no longer need to spend time developing the underlying infrastructure of such applications, and can instead concentrate their efforts on functional requirements.
Poor performance design choices, however, are common in enterprise applications and have been well documented in the form of software antipatterns. Design mistakes generally result from the fact that these multi-tier, distributed systems are extremely complex and often developers do not have a complete understanding of the entire ap- plication. As a result developers can be oblivious to the performance implications of their design decisions. Current performance testing tools fail to address this lack of system understanding. Most merely profile the running system and present large vol- umes of data to the tool user. Consequently developers can find it extremely difficult to identify design issues in their applications. Fixing serious design level performance problems late in development is expensive and can not be achieved through ”code op- timizations”. In fact, often performance requirements can only be met by modifying the design of the application which can lead to major project delays and increased costs.
This thesis presents an approach for the automatic detection of performance design and deployment antipatterns in enterprise applications built using component based frameworks. Our main aim is to take the onus away from developers having to sift through large volumes of data, in search of performance bottlenecks in their applica- tions. Instead we automate this process. Our approach works by automatically recon- structing the run-time design of the system using advanced monitoring and analysis techniques. Well known (predefined) performance design and deployment antipat- terns that exist in the reconstructed design are automatically detected. Results of ap- plying our technique to two enterprise applications are presented.
The main contributions of this thesis are (a) an approach for automatic detection of performance design and deployment antipatterns in component based enterprise frameworks, (b) a non-intrusive, portable, end-to-end run-time path tracing approach for JEE and (c) the advanced analysis of run-time paths using frequent sequence mining to automatically identify interesting communication patterns between com- ponents.
This document describes a thesis that proposes a multicore architecture allowing fault tolerant cores to distribute critical tasks to less reliable cores. It uses a fingerprinting system where each core monitors others by calculating fingerprints and comparing them in a centralized hardware comparator. The fingerprinting unit represents 15% of core resources while the comparator adds 6% cost. An FPGA prototype was developed to fingerprint parallel thread executions. A virtual debugging platform was also created using processor models and multicore simulation.
This document provides lecture notes for a C++ course. It notes that the document is a work in progress and needs polishing. It describes the tools used for the course, including GNU/Linux, GNU C++ compiler, emacs text editor, and UNIX commands. It also provides information on copyright and allows for free redistribution of the document without modification. The document then outlines the various chapters that will be covered in the course, including memory and CPU concepts, shell and C++ basics, expressions and functions, arrays and pointers, debugging, algorithms and sorting.
This document provides an overview of low voltage switchgear and controlgear assemblies. It discusses the electric arc phenomenon and its effects, as well as internal arc-proof switchgear assemblies that provide protection against electric arcs. It also describes ABB SACE arc-proof switchgear models, including their constructional and functional characteristics. The document contains three or fewer sentences.
This document provides an overview of parallel programming concepts and MPI (Message Passing Interface). It discusses parallelization techniques like blocking communication, collective communication routines, point-to-point communication, and derived data types. It also covers how to parallelize programs by distributing work across processes, such as with block decomposition of arrays and parallelizing I/O and loops. Advanced topics include parallelizing finite difference methods, LU factorization, and molecular dynamics simulations. The document is intended to help programmers write practical MPI programs for parallel systems like IBM RS/6000 SP.
This document provides a complete guide for planning and deploying IBM Tivoli Identity Manager 5.0. It includes guidance on the business context for identity management, planning a client engagement, profiling the client environment, and designing an identity management solution. The guide covers topics such as centralized user management, access control models, organizational structure, policies, and integrating with existing systems. It is intended to help consultants and customers successfully implement an identity management project.
This document provides an introduction to MATLAB for engineering students. It covers basic MATLAB functionality like performing calculations, plotting graphs, generating matrices, and programming with M-files. The document is divided into multiple chapters that teach essential MATLAB skills such as basic operations, mathematical functions, plotting, matrix generation and manipulation, solving linear equations, programming with scripts and functions, control flow, and debugging. It includes examples throughout and exercises at the end of each chapter.
The document provides an introduction and overview of NVIDIA's CUDA programming model and architecture. It discusses CUDA as an extension to C/C++ that allows developers to leverage the parallel compute engine of NVIDIA GPUs. The document covers the programming model, hardware implementation, application programming interface, and performance guidelines for CUDA programming.
Fundamentals of computational_fluid_dynamics_-_h._lomax__t._pulliam__d._zinggRohit Bapat
This document provides an overview of computational fluid dynamics (CFD) and summarizes its key steps and concepts. It discusses the fundamentals of CFD, including conservation laws, governing equations, finite difference approximations, semi-discrete and finite volume methods, and time-marching algorithms. The document is intended to introduce readers to the basic theory and methods in CFD for modeling fluid flow and transport phenomena.
This document is Roman Zeyde's 2013 master's thesis from the Technion submitted in partial fulfillment of the requirements for a Master of Science degree in Computer Science. The thesis describes research on computational electrokinetics, which involves developing a numerical scheme to solve the governing equations for electrokinetic phenomena such as electrophoresis and ion exchange. The numerical scheme is based on a finite volume method in spherical coordinates. Results are presented comparing the numerical solutions to asymptotic analytical solutions for steady-state velocity profiles.
This document is a user guide and tutorial for RapidMiner 4.4. It introduces RapidMiner as a data mining tool that allows users to build processes as operator trees to model knowledge discovery workflows. The document provides information on installation, basic usage examples, advanced processes, and a reference for available operators.
Design of a bionic hand using non invasive interfacemangal das
This document describes a project to design a bionic hand using a non-invasive interface. The project aims to restore motor function and limited sensory feedback to users who have lost a hand or arm. The design uses a control unit and sensors on the bionic hand. An input regulator circuit protects the user and microcontroller from voltage inputs. The microcontroller is programmed to receive input signals, decode them to control four motors in the hand, and receive feedback from pressure sensors. An amplification circuit powers the motors. The goal is to provide an easy-to-use bionic hand that improves users' ability to perform daily tasks.
The document provides an overview of the C preprocessor, which is a macro processor that transforms C code before compilation. It covers preprocessing tasks like handling headers, macros, conditionals, and other directives. It also describes the traditional mode for backward compatibility with older code and implementations.
This document is the user manual for jMetal 4.5, an object-oriented Java-based multi-objective optimization framework. The manual provides an overview of jMetal's features and components, including solution encodings, operators, problems, and algorithms. It describes how to install, configure, and execute algorithms using jMetal. The manual also demonstrates how to perform experiments and analyses using jMetal's experimentation components, and discusses parallelization support and examples.
This document appears to be a hardware manual for a decentralized frequency inverter model 8400 motec with power ratings between 0.37-7.5 kW. It includes sections on safety instructions, product description, technical specifications, installation, and commissioning. The document provides information on the device features, terminals, dimensions, electrical connections, and basic configuration steps for quick commissioning of the frequency inverter.
Control systems engineering. by i.j. nagrathSri Harsha
This document discusses the benefits of exercise for both physical and mental health. It states that regular exercise can improve cardiovascular health, reduce symptoms of depression and anxiety, enhance mood, and reduce stress levels. The document recommends that adults get at least 150 minutes of moderate exercise or 75 minutes of vigorous exercise per week to gain these benefits.
The document describes the basic elements of process control systems, including measurement, evaluation, and control elements. It provides examples of using a level transmitter, level controller, and control valve to regulate liquid level in a tank. It also discusses using temperature sensors and controllers to regulate process temperature. Block diagrams are presented to illustrate how these elements work together in a control loop. The purposes of open loop and closed loop control systems are also overviewed.
Electronic Instrumentation and Measurement Solution ManualMafaz Ahmed
This document provides the solution manual for chapters 3, 4, 7 and 8 of the textbook "Electronic Instrumentation and Measurement" by Mafaz Ahmed. The solutions are for the second edition of the textbook. Contact information for Mafaz Ahmed is also included, listing his email address.
The document discusses the z-transform, which is used to analyze discrete signals and linear time-invariant systems in the z-domain. It defines the z-transform as the power series of a discrete-time signal x(n) and notes that the region of convergence is where this power series converges to a finite value. Examples are provided to calculate the z-transform and region of convergence for finite duration signals. The z-transform is also defined for infinite duration signals, and examples are worked through.
Z TRANSFORM PROPERTIES AND INVERSE Z TRANSFORMTowfeeq Umar
The document discusses various methods for computing the inverse z-transform including inspection, partial fraction expansion, and power series expansion. It provides examples to illustrate each method. The inverse z-transform finds the original time domain sequence from its z-transform. Key properties like linearity, time shifting, and convolution are also covered.
Automatic Detection of Performance Design and Deployment Antipatterns in Comp...Trevor Parsons
Enterprise applications are becoming increasingly complex. In recent times they have moved away from monolithic architectures to more distributed systems made up of a collection of heterogonous servers. Such servers generally host numerous soft- ware components that interact to service client requests. Component based enterprise frameworks (e.g. JEE or CCM) have been extensively adopted for building such ap- plications. Enterprise technologies provide a range of reusable services that can assist developers building these systems. Consequently developers no longer need to spend time developing the underlying infrastructure of such applications, and can instead concentrate their efforts on functional requirements.
Poor performance design choices, however, are common in enterprise applications and have been well documented in the form of software antipatterns. Design mistakes generally result from the fact that these multi-tier, distributed systems are extremely complex and often developers do not have a complete understanding of the entire ap- plication. As a result developers can be oblivious to the performance implications of their design decisions. Current performance testing tools fail to address this lack of system understanding. Most merely profile the running system and present large vol- umes of data to the tool user. Consequently developers can find it extremely difficult to identify design issues in their applications. Fixing serious design level performance problems late in development is expensive and can not be achieved through ”code op- timizations”. In fact, often performance requirements can only be met by modifying the design of the application which can lead to major project delays and increased costs.
This thesis presents an approach for the automatic detection of performance design and deployment antipatterns in enterprise applications built using component based frameworks. Our main aim is to take the onus away from developers having to sift through large volumes of data, in search of performance bottlenecks in their applica- tions. Instead we automate this process. Our approach works by automatically recon- structing the run-time design of the system using advanced monitoring and analysis techniques. Well known (predefined) performance design and deployment antipat- terns that exist in the reconstructed design are automatically detected. Results of ap- plying our technique to two enterprise applications are presented.
The main contributions of this thesis are (a) an approach for automatic detection of performance design and deployment antipatterns in component based enterprise frameworks, (b) a non-intrusive, portable, end-to-end run-time path tracing approach for JEE and (c) the advanced analysis of run-time paths using frequent sequence mining to automatically identify interesting communication patterns between com- ponents.
This document describes a thesis that proposes a multicore architecture allowing fault tolerant cores to distribute critical tasks to less reliable cores. It uses a fingerprinting system where each core monitors others by calculating fingerprints and comparing them in a centralized hardware comparator. The fingerprinting unit represents 15% of core resources while the comparator adds 6% cost. An FPGA prototype was developed to fingerprint parallel thread executions. A virtual debugging platform was also created using processor models and multicore simulation.
This document provides lecture notes for a C++ course. It notes that the document is a work in progress and needs polishing. It describes the tools used for the course, including GNU/Linux, GNU C++ compiler, emacs text editor, and UNIX commands. It also provides information on copyright and allows for free redistribution of the document without modification. The document then outlines the various chapters that will be covered in the course, including memory and CPU concepts, shell and C++ basics, expressions and functions, arrays and pointers, debugging, algorithms and sorting.
This document provides an overview of low voltage switchgear and controlgear assemblies. It discusses the electric arc phenomenon and its effects, as well as internal arc-proof switchgear assemblies that provide protection against electric arcs. It also describes ABB SACE arc-proof switchgear models, including their constructional and functional characteristics. The document contains three or fewer sentences.
This document provides an overview of parallel programming concepts and MPI (Message Passing Interface). It discusses parallelization techniques like blocking communication, collective communication routines, point-to-point communication, and derived data types. It also covers how to parallelize programs by distributing work across processes, such as with block decomposition of arrays and parallelizing I/O and loops. Advanced topics include parallelizing finite difference methods, LU factorization, and molecular dynamics simulations. The document is intended to help programmers write practical MPI programs for parallel systems like IBM RS/6000 SP.
This document provides a complete guide for planning and deploying IBM Tivoli Identity Manager 5.0. It includes guidance on the business context for identity management, planning a client engagement, profiling the client environment, and designing an identity management solution. The guide covers topics such as centralized user management, access control models, organizational structure, policies, and integrating with existing systems. It is intended to help consultants and customers successfully implement an identity management project.
This document provides an introduction to MATLAB for engineering students. It covers basic MATLAB functionality like performing calculations, plotting graphs, generating matrices, and programming with M-files. The document is divided into multiple chapters that teach essential MATLAB skills such as basic operations, mathematical functions, plotting, matrix generation and manipulation, solving linear equations, programming with scripts and functions, control flow, and debugging. It includes examples throughout and exercises at the end of each chapter.
The document provides an introduction and overview of NVIDIA's CUDA programming model and architecture. It discusses CUDA as an extension to C/C++ that allows developers to leverage the parallel compute engine of NVIDIA GPUs. The document covers the programming model, hardware implementation, application programming interface, and performance guidelines for CUDA programming.
Fundamentals of computational_fluid_dynamics_-_h._lomax__t._pulliam__d._zinggRohit Bapat
This document provides an overview of computational fluid dynamics (CFD) and summarizes its key steps and concepts. It discusses the fundamentals of CFD, including conservation laws, governing equations, finite difference approximations, semi-discrete and finite volume methods, and time-marching algorithms. The document is intended to introduce readers to the basic theory and methods in CFD for modeling fluid flow and transport phenomena.
This document is Roman Zeyde's 2013 master's thesis from the Technion submitted in partial fulfillment of the requirements for a Master of Science degree in Computer Science. The thesis describes research on computational electrokinetics, which involves developing a numerical scheme to solve the governing equations for electrokinetic phenomena such as electrophoresis and ion exchange. The numerical scheme is based on a finite volume method in spherical coordinates. Results are presented comparing the numerical solutions to asymptotic analytical solutions for steady-state velocity profiles.
This document is a user guide and tutorial for RapidMiner 4.4. It introduces RapidMiner as a data mining tool that allows users to build processes as operator trees to model knowledge discovery workflows. The document provides information on installation, basic usage examples, advanced processes, and a reference for available operators.
Design of a bionic hand using non invasive interfacemangal das
This document describes a project to design a bionic hand using a non-invasive interface. The project aims to restore motor function and limited sensory feedback to users who have lost a hand or arm. The design uses a control unit and sensors on the bionic hand. An input regulator circuit protects the user and microcontroller from voltage inputs. The microcontroller is programmed to receive input signals, decode them to control four motors in the hand, and receive feedback from pressure sensors. An amplification circuit powers the motors. The goal is to provide an easy-to-use bionic hand that improves users' ability to perform daily tasks.
The document provides an overview of the C preprocessor, which is a macro processor that transforms C code before compilation. It covers preprocessing tasks like handling headers, macros, conditionals, and other directives. It also describes the traditional mode for backward compatibility with older code and implementations.
This document is the user manual for jMetal 4.5, an object-oriented Java-based multi-objective optimization framework. The manual provides an overview of jMetal's features and components, including solution encodings, operators, problems, and algorithms. It describes how to install, configure, and execute algorithms using jMetal. The manual also demonstrates how to perform experiments and analyses using jMetal's experimentation components, and discusses parallelization support and examples.
This document appears to be a hardware manual for a decentralized frequency inverter model 8400 motec with power ratings between 0.37-7.5 kW. It includes sections on safety instructions, product description, technical specifications, installation, and commissioning. The document provides information on the device features, terminals, dimensions, electrical connections, and basic configuration steps for quick commissioning of the frequency inverter.
Control systems engineering. by i.j. nagrathSri Harsha
This document discusses the benefits of exercise for both physical and mental health. It states that regular exercise can improve cardiovascular health, reduce symptoms of depression and anxiety, enhance mood, and reduce stress levels. The document recommends that adults get at least 150 minutes of moderate exercise or 75 minutes of vigorous exercise per week to gain these benefits.
The document describes the basic elements of process control systems, including measurement, evaluation, and control elements. It provides examples of using a level transmitter, level controller, and control valve to regulate liquid level in a tank. It also discusses using temperature sensors and controllers to regulate process temperature. Block diagrams are presented to illustrate how these elements work together in a control loop. The purposes of open loop and closed loop control systems are also overviewed.
Electronic Instrumentation and Measurement Solution ManualMafaz Ahmed
This document provides the solution manual for chapters 3, 4, 7 and 8 of the textbook "Electronic Instrumentation and Measurement" by Mafaz Ahmed. The solutions are for the second edition of the textbook. Contact information for Mafaz Ahmed is also included, listing his email address.
The document discusses the z-transform, which is used to analyze discrete signals and linear time-invariant systems in the z-domain. It defines the z-transform as the power series of a discrete-time signal x(n) and notes that the region of convergence is where this power series converges to a finite value. Examples are provided to calculate the z-transform and region of convergence for finite duration signals. The z-transform is also defined for infinite duration signals, and examples are worked through.
Z TRANSFORM PROPERTIES AND INVERSE Z TRANSFORMTowfeeq Umar
The document discusses various methods for computing the inverse z-transform including inspection, partial fraction expansion, and power series expansion. It provides examples to illustrate each method. The inverse z-transform finds the original time domain sequence from its z-transform. Key properties like linearity, time shifting, and convolution are also covered.
The document discusses the z-transform, which is a mathematical tool used to analyze discrete-time control systems. The z-transform plays a similar role for discrete-time systems as the Laplace transform does for continuous-time systems. Some key properties of the z-transform discussed include the region of convergence, properties and theorems like the shifting theorem and initial/final value theorems, and applications to feedback control systems.
This document contains instructions for an experiment to determine the transfer function of an armature controlled DC servomotor. It includes the theory behind transfer functions and DC motors. The procedure outlines determining the motor constants Kt, Kb, Ra, and La through load tests, no-load tests, and impedance measurements. Graphs are used to calculate the motor constants from experimental data. The transfer function and block diagram for an armature controlled DC motor are presented.
Modern control systems notes on the following topics -
state variable,
Sate model for LTC systems,
controllable and observable form,
pole zero placement,
pole zero cancellation,
z transformation,
inverse z transform,
analysis of sampler and hold,
stability analysis,
closed loop system,
Liapunov's stability,
Non linear systems,
Phase plane method,
adaptive control systems,
This document contains the lab manual for the Control System lab course. It includes 12 experiments related to studying different control components and systems. The experiments cover topics like studying servo motors, stepper motors, magnetic amplifiers, synchros, PID controllers, PLC systems, and more. For each experiment, the document provides the aim, theory, procedure, observations table and discusses the results. It aims to help students understand and experimentally analyze various control components and systems.
This document outlines the development of an online student feedback system. It includes objectives to create a unique system with exceptional quality and services. Key features include a database, user functions, and 4 main user types: students, faculty, program coordinators, and admins. The system allows students to provide feedback, faculty to view feedback, and coordinators to view consolidated feedback. Diagrams show the entity relationship diagram and database table structures. The remainder of the document covers storyboarding, mockups, testing plans, and analyses of the system.
Polarized light is light where the electromagnetic vibrations occur in a single plane rather than randomly. Ordinary unpolarized light has vibrations in all planes perpendicular to propagation, while polarized light restricts vibrations to one direction after reflection or transmission through materials. Polarized light can be linearly, circularly, or elliptically polarized depending on whether the vibration direction remains fixed or rotates as the light propagates. Applications include testing sugar solutions, measuring material stresses, and reducing glare.
Z-transforms can be used to evaluate discrete functions, similar to how Laplace transforms are used for continuous functions. The z-transform of a discrete function f(n) is defined as the sum of f(n) multiplied by z to the power of -n, from n=0 to infinity. Some standard z-transform results include formulas for exponential, sinusoidal, and polynomial functions. Z-transforms have properties of linearity and shifting, and can be used to solve differential equations with constant coefficients and in applications of signal processing.
Z-transforms can be used to analyze systems described by difference equations. The Z-transform relates the terms of a discrete-time sequence to a complex function of a complex variable z. Some key applications of Z-transforms include analyzing Fibonacci series, Newton's interpolation formula, and compound interest problems. Important results for Z-transforms include theorems regarding shifting, constants, initial values, final values, and convolution. Z-transforms are also connected to other transforms like the Fourier transform and Laplace transform through relationships like the discrete-time Fourier transform and bilinear transform.
This document discusses signals and systems. It defines signals as physical quantities that vary with respect to time, space, or another independent variable. Signals can be classified as discrete time or continuous time. It also defines unit impulse and unit step functions for discrete and continuous time. Periodic and aperiodic signals are discussed. The Fourier series and Fourier transform are introduced as ways to represent signals in the frequency domain. The Laplace transform, which generalizes the Fourier transform, is also mentioned. Key properties of linear time-invariant systems like superposition, time-invariance, and convolution are covered. Finally, sampling theory and the z-transform, which is analogous to the Laplace transform for discrete-time systems, are summarized at a high level
This document discusses the benefits of meditation for reducing stress and anxiety. It states that regular meditation practice can calm the nervous system and regulate stress levels. Meditation allows the body to relax while also providing mental clarity. Overall, meditating daily can help improve mood, decrease feelings of depression, and promote better emotional well-being over time.
Introduction of process control, Process control, Example of controlled process, Feedback control system, Feed forward control system,Classification of variables in chemical process, Components of control system
Polarization of Light and its Application (healthkura.com)Bikash Sapkota
Download link ❤❤https://healthkura.com/eye-ppt/29/❤❤
Dear viewers Check Out my other piece of works at ❤❤❤ https://healthkura.com/eye-ppt/ ❤❤❤
polarization of light & its application.
PRESENTATION LAYOUT
Concept of Polarization
Types of Polarization
Methods of achieving Polarization
Applications of Polarization
POLARIZATION
Transforming unpolarized light into polarized light
Restriction of electric field vector E in a particular plane so that vibration occurs in a single plane
Characteristic of transverse wave
Longitudinal waves can’t be polarized; direction of their oscillation is along the direction of propagation.............
For Further Reading
•Optics by Tunnacliffe
•Optics and Refraction by A.K. Khurana
•Principle of Physics, Ayam Publication
•Internet
Lower Bound methods for the Shakedown problem of WC-Co compositesBasavaRaju Akula
Most mechanical components are subjected to cyclic loadings during their life time. Predicting the life of such structures and components is of vital importance. The safety margin of a structure against accumulated inelastic deformations play a critical role in design of such components. Direct method(DM) based on the bounding theorems proposed by Melans and koiter
provide means towards this end. According to DM, the original structural problem can be formulated numerically into a nonlinear programming whose solution yields the structure’s shakedown limit.
In present thesis, to predict the strength of Particulate Reinforced Metal Matrix Composites (PRMMC), the shakedown problem is modeled using MATLAB and solved by a nonlinear optimization solver Ipopt (Interior Point OPTimizer). To account for the phenomenon of material degradation, constitutive law of ductile damage has been integrated with the DM. Using such
approach, the strength of few PRMMC samples are determined and interpreted statistically. Few performance indicators have been identified from results, applying these indicators we investi-
gated the underlying factors that influence the strength of material.
MatConvNet is a MATLAB toolbox that implements convolutional neural networks (CNNs) for computer vision tasks. It aims to provide a simple and flexible environment for researchers to prototype and test new CNN architectures. Key features include exposing CNN building blocks as MATLAB functions, optimized CPU and GPU implementations for efficient training of large models on large datasets, and the ability to easily develop new blocks within MATLAB. Pre-trained versions of popular CNN models are also provided.
MatConvNet is a MATLAB toolbox that implements convolutional neural networks for computer vision tasks. It provides functions for common CNN layers like convolution, pooling, and normalization. These can be combined to easily prototype new CNN architectures. MatConvNet supports efficient GPU computation, allowing it to train complex models on large datasets. It aims to be a simple and flexible environment for computer vision researchers to experiment with CNNs within the MATLAB platform.
This document is a free online calculus textbook. It was created by David Guichard and others and submitted to an open textbook initiative in California. The textbook is updated occasionally by the authors to correct errors and add new material. It covers topics in analytic geometry, limits, derivatives, integrals, and infinite series and is made freely available under a Creative Commons license.
Morton john canty image analysis and pattern recognition for remote sensing...Kevin Peña Ramos
This document provides an overview of image analysis and pattern recognition techniques for remote sensing applications using algorithms in ENVI/IDL. It covers topics such as image statistics, transformations like Fourier transforms and principal components analysis, radiometric enhancement, topographic modeling, image registration, sharpening, change detection, classification (both unsupervised and supervised), and hyperspectral analysis. The intended audience is researchers and practitioners working with remote sensing images.
He was a very compassionate and was very courageous. He
always remained ready to work for the cause of humanity. His
family was spiritually inclined and he had inherited this
inclination .This spiritual environment throw a deep impact on
his upbringing. From the very beginning he was a man of
ethics and values.
This document provides a summary of the ITU-T Teletraffic Engineering Handbook. It discusses telecommunication systems modeling, conventional telephone systems, communication networks including telephone networks, data networks, local area networks and the internet. It also covers mobile communication systems, the international organization of telephony and ITU-T recommendations. The handbook contains technical information on traffic concepts, probability theory, time interval distributions, arrival processes, Erlang's loss model and loss systems with full accessibility. It is intended as a reference for teletraffic engineers and was drafted in 2001 by Villy B. Iversen of the Technical University of Denmark.
This document provides an introduction to using R, an open-source programming language and software environment for statistical analysis and graphics. It covers basic R operations like vectors, arrays, matrices, data frames, reading data, probability distributions, and writing functions. The document contains copyright information and a table of contents describing its 10 chapters on getting started with R and its core functionality.
This document summarizes a student project on predicting malicious activity using real-time video surveillance. The project applies techniques like super-resolution, face and object recognition using HOG features, and neural networks to enhance video quality, identify objects and faces, and semantically describe scenes to detect unusual activity. Algorithms were implemented in MATLAB and results were stored in a MongoDB database. Key techniques included super-resolution, PCA-based face recognition, HOG-based object detection, and neural networks like CNNs and RNNs for image captioning. The project aims to help detect criminal activity and track convicted individuals in public spaces.
This document is a lecture note from Ambo University's Department of Mathematics for an Applied Mathematics I course. It covers various topics in applied mathematics over 5 chapters, including: vectors and vector spaces, matrices and determinants, limits and continuity, derivatives and their applications, and integration. The document provides definitions, theorems, and methods for each of these fundamental areas of applied mathematics.
This document summarizes the system requirements for Project RIDES, which is being developed by Team Omni at Embry-Riddle Aeronautical University. It details the revision history of the document, provides an overview of the key subsystems and their requirements, and describes use cases and sequence diagrams for core functions like starting a ride, stopping a ride, and updating vehicle locations. The document is intended to specify the intellectual property and technical requirements for the autonomous vehicle project.
Introduction to Radial Basis Function NetworksESCOM
This document provides an introduction to radial basis function (RBF) networks, a type of artificial neural network used for supervised learning problems. It describes how RBF networks are a type of linear model that uses radial basis functions as activation functions for hidden units. While RBF networks are nonlinear, the document emphasizes keeping the underlying mathematics and computations linear to simplify the problem and reduce computational costs compared to other neural network techniques that rely on nonlinear optimization algorithms. It reviews key concepts for RBF networks like least squares optimization, model selection, ridge regression, and forward selection techniques for building networks from data.
This document outlines the contents of a graduate-level quantum mechanics course. It introduces the major sources consulted in developing the course material and provides an overview of the fundamental concepts covered, including the breakdown of classical physics, polarization of photons, ket and bra spaces, operators, eigenvalues and eigenvectors, observables, measurements, expectation values, and more. The document then delves into specific topics like position and momentum, quantum dynamics, angular momentum, approximation methods, scattering theory and others.
This document provides an introduction to MATLAB for engineering students. It covers basic MATLAB functionality like performing calculations, plotting graphs, generating matrices, and programming with M-files. The document is divided into multiple chapters that teach essential MATLAB skills such as its interface, basic commands, mathematical functions, plotting, matrix operations, solving equations, programming constructs, debugging, and more. It serves as a tutorial for new MATLAB users to learn its main features.
This document provides an introduction to MATLAB for engineering students. It covers basic MATLAB functionality like performing calculations, plotting graphs, generating matrices, and programming with M-files. The document is divided into multiple chapters that teach essential MATLAB skills such as its interface, basic commands, mathematical functions, plotting, matrix operations, solving equations, programming constructs, debugging scripts, and more. It serves as a tutorial for new MATLAB users to learn its main features.
This document contains lecture notes for a computer graphics course. It covers topics such as raster displays, basic line drawing, curves, transformations, 3D objects, camera models, visibility, lighting, shading, texture mapping, ray tracing, and radiometry. The notes are copyrighted and were written by David Fleet and Aaron Hertzmann for students at the University of Toronto.
This document is the preface and table of contents for "The ChemSep Book Second Edition" by Harry A. Kooijman and Ross Taylor. It provides an overview of the book, which covers topics like using the ChemSep software interface, simulating distillation columns under both equilibrium and nonequilibrium conditions, property models, numerical solution methods, and design of separation processes. The preface notes that the content is in the public domain and the authors assume no liability. The table of contents provides a detailed outline of the book's 9 parts and 15 chapters.
This document provides an advanced guide for developing macros in IBM Rational Host Access Transformation Services (HATS). It covers macro structure, data types, operators, expressions, how the macro runtime processes macros, screen description and recognition, and available macro actions. The guide contains definitions of terms and includes conceptual diagrams and code samples to illustrate macro concepts and functionality. It is intended to help macro developers better understand and utilize the full capabilities of the HATS macro language.
This document provides an advanced guide for developing macros in IBM Rational Host Access Transformation Services (HATS). It covers macro structure, data types, operators, expressions, how the macro runtime processes macros, screen description and recognition, and available macro actions. The guide contains definitions of terms and includes conceptual diagrams and code samples to illustrate macro design and processing. It is intended to help macro developers better understand and utilize the full capabilities of the HATS macro language.
Similar to Control System Theory & Design: Notes (20)
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
Introduction of Cybersecurity with OSS at Code Europe 2024Hiroshi SHIBATA
I develop the Ruby programming language, RubyGems, and Bundler, which are package managers for Ruby. Today, I will introduce how to enhance the security of your application using open-source software (OSS) examples from Ruby and RubyGems.
The first topic is CVE (Common Vulnerabilities and Exposures). I have published CVEs many times. But what exactly is a CVE? I'll provide a basic understanding of CVEs and explain how to detect and handle vulnerabilities in OSS.
Next, let's discuss package managers. Package managers play a critical role in the OSS ecosystem. I'll explain how to manage library dependencies in your application.
I'll share insights into how the Ruby and RubyGems core team works to keep our ecosystem safe. By the end of this talk, you'll have a better understanding of how to safeguard your code.
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
How to Get CNIC Information System with Paksim Ga.pptxdanishmna97
Pakdata Cf is a groundbreaking system designed to streamline and facilitate access to CNIC information. This innovative platform leverages advanced technology to provide users with efficient and secure access to their CNIC details.
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxSitimaJohn
Ocean Lotus cyber threat actors represent a sophisticated, persistent, and politically motivated group that poses a significant risk to organizations and individuals in the Southeast Asian region. Their continuous evolution and adaptability underscore the need for robust cybersecurity measures and international cooperation to identify and mitigate the threats posed by such advanced persistent threat groups.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Digital Marketing Trends in 2024 | Guide for Staying AheadWask
https://www.wask.co/ebooks/digital-marketing-trends-in-2024
Feeling lost in the digital marketing whirlwind of 2024? Technology is changing, consumer habits are evolving, and staying ahead of the curve feels like a never-ending pursuit. This e-book is your compass. Dive into actionable insights to handle the complexities of modern marketing. From hyper-personalization to the power of user-generated content, learn how to build long-term relationships with your audience and unlock the secrets to success in the ever-shifting digital landscape.
Your One-Stop Shop for Python Success: Top 10 US Python Development Providersakankshawande
Simplify your search for a reliable Python development partner! This list presents the top 10 trusted US providers offering comprehensive Python development services, ensuring your project's success from conception to completion.
4. Chapter 1
Introduction to feedback control
We introduce feedback in terms of what will be discussed in these notes.
1.1 Basic notion of feedback control
A block diagram illustration of an ideal standard feedback control system is shown
in Fig. 1.1.
Figure 1.1: Block diagram illustration of ideal feedback control system.
The idea of feedback is straightforward: we monitor the actual output of the system
or plant, then generate an error signal based on the difference between the desired
output and the actual output of the dynamic system and finally use this error term
in a compensator which gives a control signal that can act as an input to the actual
system.
The compensator is a general term and it can be anything such as an algorithm,
function or just a simple gain, i.e., a constant value multiplying the error. The
goal of control design is to determine an appropriate compensator to achieve per-
formance objectives. The plant in the system is the dynamic system that is being
controlled. We model this system via mathematical tools and use it to design
the compensator. A mathematical model is always an approximation of the real
model since we cannot effectively model everything present in the real world and we
cannot also take into account variations in parameters such as geometries, forces
and operating conditions. Thus, there always exists some uncertainty in the plant
model which directly affects compensator design.
4
5. 1.1. Basic notion of feedback control
Feedback goes beyond mathematical functions and abstractions. It is a fact of
everyday life. An obvious example of human feedback is when you adjust the
water temperature in the shower. The hot-cold knob is adjusted until a comfortable
position is reached. In this case, the skin monitors the output of the system, i.e.,
the temperature of the water. It then sends this signal to the brain that judges the
difference between the desired water temperature and actual water temperature.
This difference is then used by the brain to general a control signal that commands
the hand to adjust the knobs to reduce this difference. If the water is cold, you
shiver, the brain determines that you need to be warmer, it sends a signal to
your hand to adjust the knob for warmer water until you stop shivering. Control
engineering is then simply the attempt to mimic the elegant, efficient and effective
control of processes apparent in nature.
We mentioned that the goal of control design is to determine an appropriate com-
pensator to achieve performance objectives. Some common performance objectives
are listed below:
• Stability of the closed-loop system.
• Dynamic response to be satisfactory, e.g.,
– Settling time (time of response).
– Percent overshoot.
• Tracking/steady-state error small.
• Remain within hardware limits, e.g., forces and voltages.
• Eliminate impact of disturbances such as wind gusts in UAV’s and inclines
in a car cruise control system.
• Eliminate impact of measurement noise.
• Eliminate impact of model uncertainty.
The above wish list is not something that is not usually completely possible due to
the existence of fundamental limitations in the the system. There is nothing called
a free lunch. However, we can via feedback control and other strategies, trade-
off these fundamental limitations with respect to each other to achieve the best
possible scenario based on requirements. This is the essence of control engineering.
An example of the previous is when we try to have aggressive control, i.e. small
response time, and also eliminate the impact of model uncertainty. The bandwidth
of the system is a measure of the aggressiveness of the control action and/or
the dynamic response. A higher bandwidth implies a higher frequency at which
we have good response and therefore more aggressive control. But at the same
time, in most models, the magnitude of the uncertainty becomes large at higher
frequencies. Hence we limit the bandwidth or frequency of response depending
on the frequency at which uncertainty begins to become significant. We want low
magnitude of response at frequencies where model uncertainty magnitude becomes
high to reduce the system sensitivity to this uncertainty. This is a situation where,
since we cannot avoid model uncertainties, we have to limit the aggressiveness of
the response to avoid the uncertainty becoming significant.
5
6. 1.1. Basic notion of feedback control
Actual control systems
We often treat the control and feedback of systems as an idealized scenario to aid
in the design process. It is important for the control engineer to appreciate the
actual complex nature of control systems. It is instructive to do this through a
simple example.
Recently, there has been a growing research interest in applications of piezoelec-
tric materials. These are very sensitive materials that produce a voltage sig-
nal when they sense a force. The converse phenomenon is also true, i.e., a
force/displacement is produced in the material when voltage is applied to it. This
characteristic is considered particularly advantageous and is being tested in a wide
variety of applications. Among these is their use as a variable valve actuator in
fuel injector systems.
Figure 1.2: Schematic of a proposed piezoelectric variable valve injector system.
Fuel injection for an internal combustion engine should ideally be tightly controlled
to produce an air-fuel mixture that reduces pollutants and increases efficiency while
at the same time mitigating undesirable phenomena such as combustion instability.
This is possible through a variable valve that regulates the amount of fuel flowing
through the cylinder nozzle.
One type of assembly of such a variable valve available in the literature is shown
6
7. 1.1. Basic notion of feedback control
in Fig. 1.21 . The piezo stack at the top consists of a “stacked” combination
of piezeoelectric materials that produces the desired displacement characteristics
when voltage is applied. The voltage is applied by the piezo stack driver. When
the piezo stack expands (due to voltage via the piezo stack driver), it moves the
top link down which in turn pushes the bottom link down. This displaces fluid
out of the needle upper volume into the injector body and we would expect the
needle lower volume to be reduced as well. However, assuming incompressibility,
this cannot happen because the needle lower volume does not have an opening
into the injector body. Instead, to compensate for the loss of volume induced by
the bottom link moving down, the needle is pushed up by the fluid. This opens the
nozzle. In a similar fashion, with appropriate voltage, the nozzle is closed as well.
The piezo stack via mechanical means, controls the nozzle state and it is hence
called a variable valve actuator (VVA). The chief benefits of using piezoelectric
materials here is their quick response (high bandwidth) and because incorporation
of a piezoelectric actuator helps eliminate many mechanical, moving parts which in
turn reduces cost and increases reliability. The disadvantage is that the maximum
expansion achievable by piezoelectric materials is usually low. This is remedied
by using the stair-like “ledge” shown in Fig. 1.2 which acts as a displacement
multiplier. A larger ledge causes a larger loss of needle lower volume when the
bottom link moves down which makes the needle displace more to compensate for
lost volume.
The idealized block diagram that is used in control design is shown in Fig. 1.3. It
is supposed to be as simple as possible in order to capture only the most essential
characteristics of the system. The actual valve position and the desired valve
position together generate an error signal and the compensator is used to determine
the appropriate voltage signal that will eventually reduce this error to zero. Here
the VVA is actually a 5 state control oriented model, i.e., it needs 5 variables to be
fully described in the time domain. These states include position of the actuator,
velocity of the actuator and the pressure. A full model description of the VVA would
entail many more states that do not have as much effect on the system response
but greatly affect the complexity of the problem. Such models are sometimes called
simulation models because we use them to simulate the response of the system
rather than use them to determine an appropriate compensator (control design).
Figure 1.3: Block diagram of an ideal closed-loop variable valve actuator system.
The actual or close to actual block diagram is shown in Fig. 1.4. Here we do not
ignore any known elements from our system. The valve position is measurement
1 Chris Satkoski, Gregory M. Shaver, Ranjit More, Peter Meckl, and Douglas Memering,
Dynamic Modeling of a Piezo-electric Actuated Fuel Injector, IFAC Workshop on Engine and
Powertrain Control Simulation and Modeling, 11/30-12/2/2009, IFP, Rueil-Malmaison, France.
7
8. 1.2. Control architectures
by the linear variable displacement transducer (LVDT) in an analog form. This is
then converted to a digital signal by an analog to digital converter (A/D). It is
then used to generate an error signal based on the desired valve position. The error
is fed into the compensator which outputs a digital signal which is converted to
an analog voltage via a digital to analog converter (D/A). This signal is amplified
using a pulse-width modulation (PWM) amplifier and then supplied to the VVA
actuator.
Figure 1.4: Block diagram of a closed-loop variable valve actuator system.
It is obvious that this is far more complicated system than the one considered
earlier. Every element in the system has its own dynamics which may or may
not include time delay. Furthermore we have errors in measurement and digiti-
zation/quantization error. We cannot remove any elements from consideration in
this system without first verifying their effect and on the entire system. If the
dynamics of the element are fast enough to approximate as a straight line rather
than a block in the diagram, then we can often ignore the element. For sensors
such as the LVDT, this may be accomplished by checking manufacturer published
information about them such as bandwidth, damping ratio, etc. This is a fairly
simple example but more complicated systems such as flight control systems may
have hundreds of these blocks. These notes only deal with the situation in Fig.
1.3.
1.2 Control architectures
We now consider several commonly used control architectures. In the following,
the reference command is given by the transfer function R(s), the plant by G(s),
the output by Y (s), the compensator C(s), disturbances by D(s) and noise by
N (s).
8
9. 1.2. Control architectures
Open-loop/Feedforward control
We now consider the simplest case of control called open-loop or feedforward
control. As the name suggests, there is no feedback of the output back to the
compensator. Rather everything is done without output measurements. A block
diagram representing a simple feedforward scheme is shown in Fig. 1.5.
Figure 1.5: Block diagram of a feedforward variable valve actuator system.
The transfer function from the output to the input is simply
Y
= CG ⇒ Y = CGR (1.1)
R
where the arguments have been dropped for convenience. Since ideally we want
Y (s) = R(s), a natural choice for the compensator would be C(s) = G−1 (s)
which leads to
Y = CGR = G−1 GR = R. (1.2)
This looks like a perfect scenario but we made some critical assumptions which
makes the previous result problematic. One assumption was that there are no
disturbances anywhere in the system. This assumption is false since we always
have disturbances in the system.
Although there may be multiple disturbances in different parts of the system, we
now consider one type of disturbance in the system for simplicity and for illustrative
purposes. Let there be a disturbance in the control signal being fed into the plant,
i.e., the control signal input into the plant is not the same as the compensator
output. This situation is illustrated in Fig. 1.6. For such a system we can derive
Figure 1.6: Block diagram of a feedforward variable valve actuator system with
disturbance.
the transfer function from the reference R(s) to the output Y (s) as
Y = G(CR + D) = GCR + GD (1.3)
and substituting the previous compensator choice C(s) = G−1 (s)
Y = GG−1 R + GD = R + GD. (1.4)
9
10. 1.2. Control architectures
Therefore, even in the case of a single source of disturbance, feedforward fails to
provide good reference tracking since now we have an extra G(s)D(s) term that
is unwanted and perturbs the output from the reference signal.
Another assumption is of having no model uncertainty. This is always false since
there is always uncertainty in a mathematical reasons for a variety of reasons such
as lack of modeling of certain dynamics for simplicity and physical variation between
systems. Thus, we don’t have an actual true model but a perturbed model G(s)
and therefore we can only have G−1 (s). Substituting this into (1.1) gives
Y = CGR = G−1 GR = εR. (1.5)
where ε is some factor dependent on the model uncertainty. Feedforward fails
when we have uncertainty in the model. A more acute problem occurs when G(s)
and hence G(s) have right-half plane (RHP) zeros, i.e., roots of the numerator
have positive real parts. In this situation, G−1 (s) will have RHP poles, i.e., roots
of the denominator have positive real parts; something that characterizes unstable
systems. And since G−1 = G−1 , there will never be perfect cancellation of the RHP
poles and zeros. Hence, the entire feedforward system (even without disturbances)
will be unstable because of the existence of RHP poles.
Even though the previous has painted a bleak picture, feedforward control is still a
useful tool as long as it is used in an intelligent manner. We sometimes combine
feedback and feedforward control to achieve excellent results as will be shown later.
Feedback/closed-loop control
We consider the previous problem of having input disturbance but now we employ
a feedback scheme to tackle the control and reference tracking problem. We also
add noise to the measurement of the output; something that is expected and
unavoidable. The block diagram of such a closed-loop system is shown in Fig. 1.7.
Figure 1.7: Block diagram of a feedback variable valve actuator system with dis-
turbance and noise.
10
11. 1.2. Control architectures
Following basic procedures, we determine the system transfer function as
Y = GC(R − Y − N ) + GD (1.6)
GC G GC
= R+ D− N (1.7)
1 + GC 1 + GC 1 + GC
= YR + YD − YN (1.8)
where YR (s) is the transfer function from R(s) to Y (s), YD (s) is the transfer
function from D(s) to Y (s) and YN (s) is the transfer function from N (s) to
Y (s). For the output to perfectly track the reference input, we want YR (s) → 1,
YD (s) → 0 and YN (s) → 0. Let the compensator be a large number, i.e., C(s)
∞, then
G
→ 1 ⇒ YD = 0 (1.9)
1 + GC
which implies complete disturbance rejection, i.e., the feedforward problem is
solved. Furthermore,
GC
→ 1 ⇒ YR = 1 (1.10)
1 + GC
which is exactly what we want for perfect reference tracking. This is the motivation
behind high gain feedback. But we also have
GC
→ 1 ⇒ YN = 1 (1.11)
1 + GC
which means the noise is amplified; something we certainly do not want. There
is an inherent problem here because the coefficient of R(s) and N (s) are the
same. Thus, we cannot have YR (s) → 1 and YN (s) → 0 simultaneously. We
have a fundamental contradiction here. The only way to get rid of noise is to set
C(s) = 0 but then this leads to no control action.
Feedback helps us deal with disturbances and plant uncertainty. High gain feedback
looks similar to plant inversion in feedforward control but only better. It gives
us a plant inversion like process and mitigates the effect of disturbances. The
drawback, however, is that mitigating noise and perfect tracking cannot be done
simultaneously.
In many situations, the reference tracking is in a low frequency range. An example
of this would be the reference signal of the bank angle of a commercial airliner.
Also, for most sensors, noise becomes prevalent mainly in the frequency ranges.
Thus we can design C(s) such that the transfer function
GC
YR = YN = (1.12)
1 + GC
is 1 at low frequencies (to aid in reference track) and 0 at high frequencies (to
mitigate measurement noise). The frequency response for such a transfer function
is shown in Fig. 1.8.
Figure 1.8 shows a transfer function with a bandwidth (i.e. approx. roll-off fre-
quency) of 7 radians per second. It implies, for perfect tracking and noise mitiga-
tion, that the reference signal must be predominant in frequencies below 7 radians
per second and the measurement noise must be predominant in frequencies above 7
radians per second. Thus, the extent to which you can be aggressive with control,
i.e. have high bandwidth, depends on two factors:
11
12. 1.2. Control architectures
−5
−10
−15
−20
Magnitude (dB)
−25
−30
−35
−40
−45
−50
−1 0 1 2 3
10 10 10 10 10
Frequency (rad/sec)
Figure 1.8: Typical frequency response magnitude of YR = YN to mitigate noise
and provide good tracking..
• The frequency range at which the noise is present.
• The reference signal frequency range.
This is an example of a fundamental limitation in a feedback situation. The ag-
gressiveness of the control is limited by the measurement noise and the reference
signal frequency range.
When we close the loop, it allows us to trade off the impact of disturbances, noise,
reference tracking signals and stability among others. It gives us the freedom to
trade off quantities which we might not have been able to otherwise, such as
plant uncertainty, noise mitigation and tracking accuracy. These notes deal with
developing a sophisticated outlook and precise tools to do tradeoffs.
Feedback with feedforward
Another way to tackle the above problems is to include a feedforward term in
the feedback architecture as shown in Fig. (1.9). Here Gf (s) is the feedforward
transfer function. The transfer function of the system is
Y = GC(R − Y − N ) + GGf R + GD
⇒ Y (1 + GC) = (GC + GGf )R + GD − GCN (1.13)
and hence
GC + GGf G GC
Y = R+ D− N (1.14)
1 + GC 1 + GC 1 + GC
= YR + YD − YN . (1.15)
As before, we want YR (s) → 1, YD (s) → 0 and YN (s) → 0. Notice we have an
extra degree of freedom in the design of YR (s) due to the feedforward term Gf (s).
12
13. 1.2. Control architectures
Figure 1.9: Block diagram of a two degree of freedom feedback-feedforward variable
valve actuator system with disturbance and noise.
Let Gf (s) = G−1 (s) and thus
GC + GGf GC + GG−1 (s)
= =1 (1.16)
1 + GC 1 + GC
which gives accurate steady-state tracking although we still run into problems of
model uncertainty as in the feedforward architecture. But most importantly, since
we are not using feedforward or feedback alone, accurate steady-state tracking
does not imply noise amplification. Now the challenge is the tradeoff between the
noise and disturbance. If we set C(s) ∞
G
→0 (1.17)
1 + GC
which implies YD (s) → 0. But for YN (s) → 0, we need C(s) = 0
GC
→ 0. (1.18)
1 + GC
These seemingly contradictary/conflicting requirements represent a tradeoff that
we cannot avoid. If our model is excellent, feedforward is beneficial in this case
but we still have tradeoffs. Thus, control cannot change the underlying problem
but can give us tools to play with the fundamental tradeoffs to get an acceptable
design.
Feedback with disturbance compensation
Assuming we know the disturbance D(s), will this buy us anything? Consider the
feedback architecture shown in Fig. 1.10. Here GD (s) is an additional transfer
function called the disturbance compensation transfer function.
13
14. 1.2. Control architectures
Figure 1.10: Block diagram of a combined feedback and disturbance feedback
variable valve actuator system with disturbance and noise.
From Fig. 1.10 we have
Y = GC(R − Y − N ) + CGD GD + GD
⇒ Y (1 + GC) = GCR + (GCGD + G)D − GCN (1.19)
and hence
GC GGD C + G GC
Y = R+ D− N (1.20)
1 + GC 1 + GC 1 + GC
= YR + YD − YN . (1.21)
Again we want YR (s) → 1, YD (s) → 0 and YN (s) → 0. Now we seem to have
more flexibility because setting GD (s) = −C −1 (s) gives
GGD C + G
GGD C + G = −CC −1 G + G = 0 ⇒ =0 (1.22)
1 + GC
which implies that we have perfect disturbance rejection. But again this method
has its own challenges because we need to have knowledge of the disturbance.
This can be through estimation, especially if we have some idea about the nature
of disturbance. For example, the disturbance in a manufacturing when the floor
shaking in a repeating.
14
15. Chapter 2
System models and representation
2.1 Model classification
There are many approaches to developing system models and a similarly large
number of classifications of model types. System models can be classified as white,
grey or black box models. Models where the underlying physics of the system are
first considered to help develop the model are known as white box models. Black
box models, on the other hand, are entirely data drive. The output of a system is
considered subject to a given input and a corresponding model is formed using tools
such as Fourier analysis. Grey box models combine the above two approaches in
that the model form is derived from physical principles while the model parameters
are determined using experimental data.
Models can also be classified as nominal/control models or simulation/calibration
models. The nominal/control model form is a simplified dynamic model where
the desire is to capture the dynamic coupling between control inputs and system
outputs. These models are directed towards usage for controller design since a
simplified model aids in this process. Conversely, simulation models are typically
generated to capture as many aspects of the system behavior as accurately as
possible. The intended use of these types of models is for system and controller
validation, intuition development and assumption interrogation.
2.2 State-space representation
Consider a set of 1st-order ordinary differential equations,
xi = f1 (x1 , ..., xn , u1 , ..., um )
˙ (2.1)
.
.
.
xn = fn (x1 , ..., xn , u1 , ..., um )
˙ (2.2)
where x1 , ..., xn are called the system states and u1 , ..., um are the system inputs.
15
16. 2.3. Input/output differential equation
Next consider a set of algebraic equations relating outputs to state variables and
inputs,
y1 = g1 (x1 , ..., xn , u1 , ..., um ) (2.3)
.
.
.
yp = gp (x1 , ..., xn , u1 , ..., um ). (2.4)
If we let x = [x1 , ..., xn ]T , u = [u1 , ..., um ]T , and y = [y1 , ..., yp ]T , then the above
relationships can be written in the compact state-space form
˙
x = f (x, u) (2.5)
˙
y = g(x, u). (2.6)
If the system considered is linear then it can be written in the linear parameter
varying form (LPV)
˙
x = A(t)x + B(t)u (2.7)
y = C(t)x + D(t)u (2.8)
or if the system is linear time-invariant (LTI)
˙
x = Ax + Bu (2.9)
y = Cx + Du (2.10)
where A, B, C and D are the relevant matrices.
States are the smallest set of n variables (state variables) such that knowledge
of these n variables at t = t0 together with knowledge of the inputs for t ≥ t0
determines system behaviour for t ≥ t0 . The state vector is the n-th order vector
with states as components and the state-space is the n-dimensional space with
coordinates as the state variables. Correspondingly, the state trajectory is the path
produced in the state-space as the state vector evolves over time.
The advantages of the state-space representation are that the dynamic model is
represented in a compact form with regular notation, the internal behaviour of the
system is given treatment, the model can easily incorporate complicated output
functions, definition of states helps build intuition and MIMO systems are easily
dealt with. There are many tools available for control design for this type of model
form. The drawback of the state-space representation is that the particular equa-
tions themselves may not always be very intuitive.
2.3 Input/output differential equation
The input/output differential equation relates the outputs directly to the inputs.
It is obtainable usually through taking the Laplace transform of the state-space
representation, substituting/rearranging appropriately and finally taking the inverse
16
17. 2.4. Transfer functions
Laplace transform to obtain an high-order differential equation. A linear time-
invariant input/output differential equation is given by
y n + an−1 y n−1 + ... + a1 y + a0 y = bm um + bm−1 um−1 + .... + b1 u + b0 u (2.11)
˙ ˙
The advantages of input/output differential equations are that they are concep-
tually simple, can easily be converted to transfer functions and many tools are
available in this context for control design. It is however difficult to solve in the
time domain since we would need to solve the Laplace transform which is generally
not an easy task.
2.4 Transfer functions
Recall from the study of Laplace transforms the following important transforma-
tions
L[f˙(t)] = sF (s) − f (0) (2.12)
L[f (t)] = s2 F (s) − sf (0) − f˙(0)
¨ (2.13)
.
.
.
L[f n (t)] = sn F (s) − sn−1 f (0) − sn−2 f˙(0) − ... − sy n−2 (0) − y n−1 (0). (2.14)
Now consider a generic LTI input/output differential equation given by
y n + an−1 y n−1 + ... + a1 y + a0 y = bm um + bm−1 um−1 + .... + b1 u + b0 u. (2.15)
˙ ˙
Applying the Laplace transforms from above to this differential equation yields
sn Y (s) + an−1 sn−1 Y (s) + ... + a1 sY (s) + a0 Y (s) + fy (s, t = 0) =
bm sm U (s) + ... + b1 sU (s) + b0 U (s) + fu (s, t = 0) (2.16)
where fy (s, t = 0) and fu (s, t = 0) are functions of the initial conditions as given
by the Laplace transform. Rearranging the above gives
bm sm + ... + b1 s + b0 fu (s, t = 0) − fy (s, t = 0)
Y (s) = U (s) + .
sn+ an−1 sn−1 + ... + a0 sn + an−1 sn−1 + ... + a0
1 2
(2.17)
Box 1 represents the transfer function and it describes the forced response of the
system. Box 2 represents the free response of the system depending on the initial
conditions. Depending on the system (whether it has control input or not) and the
exact system scenario (whether the initial conditions are zero or not), Y (s) may
comprise box 1 or box 2 or both. For control analysis, we usually assume box 2
is zero and thus box 1 represents the entire system response. It will be seen later
that many results which are true for this case are also true when box 1 is zero and
box 2 is not.
The roots of the numerator of a transfer functions are called zeros since they send
the transfer function to zero whereas the roots of the denominator of a transfer
17
18. 2.4. Transfer functions
function are called poles since they send the transfer function to ∞. The poles and
zeros are very important in analyzing system response and for designing appropriate
compensators.
18
19. Chapter 3
Dynamic response of systems
3.1 First-order system response
A first-order system (such as a spring-mass system) takes on the general form
τ y + y = ku
˙ (3.1)
y k
⇒ y+ = u
˙ (3.2)
τ τ
⇒ y + ay = bu,
˙ a = 1/τ , b = k/τ (3.3)
⇒ τ [sY (s) + y(0)] + Y (s) = kU (s) (3.4)
k/τ y(0)
⇒ τ Y (s) = U (s) + (3.5)
s + (1/τ ) s + (1/τ )
1 2
where τ is the time constant of the system response and k is a constant.
The roots of the denominator of the transfer function (the characteristic equation)
1
are called poles and in this case the pole is −a = − τ . If the pole lies in the
left-half of the complex s-plane (LHP), it is stable (exponentially decreasing). If it
is in the right-half of the complex s-plane (RHP) then it is unstable (exponentially
increasing). A pole on the imaginary axis (with real part equal to 0) is marginally
stable.
The free response of this system (due to the initial conditions) is given by yfree (t) =
t
y(0)e− τ = y(0)e−at .
The forced response of the system to a step input is given by ystep (t) = k +
t
[y(0) − k]e− τ . The value of y at the time constant value τ is given by y(τ ) =
0.368y(0) + 0.632k. The lower τ is, the faster the response. Thus, making |a|
bigger gives a faster response.
3.2 Second-order systems
The general form of a second-order system is given by
2 2
y + 2ζωn y + ωn y = kωn u
¨ ˙ (3.6)
19
20. 3.2. Second-order systems
where k is a constant, ωn is the natural frequency of the system, and ζ is the
damping ratio. Taking the Laplace transform as before yields the system in terms
of its forced and free response,
2
kωn [s + 2ζωn ]y(0) + y(0)
˙
Y (s) = U (s) + (3.7)
s2 + 2ζωn s + ωn
2 s2 + 2ζω s + ω 2
n n
1 2
where the common denominator is the open loop characteristic equation and whose
roots give the system poles. For such a canonical form of second-order system, the
poles are given by −ζωn ± ωn ζ 2 − 1. If 0 < ζ < 1, then we have two complex
poles (since ζ 2 − 1 is negative) implying oscillation in the system free response. In
this case poles are given by −ζωn ± ωn 1 − ζ 2 j
The free response of a second-order system (0 < ζ < 1) is given by
y(0) 1 − ζ2
yfree (t) = e−ζωn t cos ωt + tan−1 (3.8)
1 − ζ2 ζ
It can be easily seen from the above that we need ζωn > 0 or alternatively the
poles in the LHP for stability.
The forced response of a second-order system (0 < ζ < 1) to a step is given by
e−ζωn t 1 − ζ2
ystep (t) = k 1 − sin ωd t + tan−1 (3.9)
1 − ζ2 ζ
where ωd = ωn 1 − ζ 2.
For a second-order system, the rise time tr is given by
π−β
tr = (3.10)
ωd
where β is the angle such that cos β = ζ. The time to maximum overshoot is
given by
π Td
tp = = (3.11)
ωd 2
and the maximum overshoot Mp itself is given by
− √ πζ
Mp = e 1−ζ 2 ≈ e−πζ (3.12)
where the percent overshoot can be determined by multiplying the above expression
by 100.
If the system is nonminimum phase (RHP zeroes), then the response will have
undershoot instead of overshoot. When the system has a RHP zero at s = c, a
lower bound for the undershoot Mu is given by
1−δ
Mu ≥ (3.13)
ects − 1
where δ is the maximum allowable steady-state error in response beyond the settling
time. Thus for a 2% settling time, δ = 0.02.
20
21. 3.3. Design considerations
3.3 Design considerations
We consider the case where we require a certain percent overshoot in our system.
We know that the damping ratio ζ is a critical factor in this, but how must it be
chosen such that we have a certain percent maximum overshoot? Moreover, how
must we choose our poles so that this choice of ζ is satisfied.
We can use the relationship for percent overshoot given previously to determine
the damping ratio that will ensure a certain maximum overshoot, ζ% OS . As long
as we choose a damping ratio greater than ζ% OS , we will not exceed the specified
maximum overshoot. In the complex s-plane, the following can easily be shown to
be true
cos θ = ζ (3.14)
where θ is a counterclockwise angle made with the negative real axis. Hence any
poles that lie on or between the lines described by θ = ±cos−1 (ζ%OS ) satisfy
ζ ≥ ζ%OS .
For a LHP pole a, it is true that τ = 1/a. Thus, a larger magnitude of a LHP
pole signifies a faster response and these poles are known as ”fast poles”. The 2%
setting time is given by t2% = 4τ and the 5% settling time is given by t5% = 3τ ,
where τ is the time constant. Hence, to achieve a settling time of t2% or less
requires placing the poles of the system to the left of a = t−4 . A similar result
2%
can be easily derived for t5% .
We can combine the above to results for maximum overshoot and settling time to
determine precise poles for a desired system response.
3.4 Routh-Hurwitz stability criterion
As discussed previously, poles in the RHP indicate instability of a system. There-
fore, the roots of the denominator of a transfer function hold key information
regarding the stability and response characteristics of the system.
Consider the denominator of a closed-loop transfer function, also known as the
closed-loop characteristic equation,
CLCE(s) = sn + a1 sn−1 + . . . + an−1 s + an = 0 (3.15)
where a1 , . . . , an are real constants. The system is stable if the roots of the
CLCE(s) are in the LHP. If the system is stable, then a1 , . . . , an > 0 but a1 , . . . , an >
0 does not necessarily imply stability. Furthermore, if any ak ≤ 0, then the system
has at least one pole with a positive or zero real part which implies stability or
marginal stability, respectively.
The Routh-Hurwitz stability criterion helps determine not only whether a system
is stable or not but it also specifies how many unstable poles are present without
explicitly solving the characteristic equation, CLCE(s). It can also be used for
multiple gain closed-loop systems.
By the Routh-Hurwitz stability criterion, if a1 , . . . , an = 0 and if a1 , . . . , an are all
positive (or equivalently all negative) then we can use the Routh array to determine
stability and the number of unstable poles.
21
22. 3.4. Routh-Hurwitz stability criterion
To form the Routh array, first arrange a1 , . . . , an in two rows as follows
Row
n 1 a2 a4 . . . 0
n-1 a1 a3 a5 . . . 0
Then we determine the rest of the elements in the array. For the third row,
coefficients are computed using the pattern below
1 a2 1 a4 1 a6
a1 a3 a1 a5 a1 a7
b1 = − b2 = − b3 = − . . . (3.16)
a1 a1 a1
This is continued until the remaining elements are all zero. Similarly, for the fourth
row
a1 a3 a1 a5 a1 a7
b1 b2 b1 b3 b1 b4
c1 = − c2 = − c3 = − . . . (3.17)
b1 b1 b1
and for the fifth row
b1 b2 b1 b3 b1 b4
c1 c2 c1 c3 c1 c4
d1 = − d2 = − d3 = − . . . (3.18)
c1 c1 c1
where all the series of elements are continued until the remaining are all zero. The
Routh array is then given by
Row
n 1 a2 a4 . . . 0
n-1 a1 a3 a5 . . . 0
n-2 b1 b3 b5 . . . 0
n-3 c1 c3 c5 . . . 0
n-4 d1 d3 d5 . . . 0
. . .
. . .
. . .
2 e1 e2
1 f1
0 g1
The number of roots of the closed-loop characteristic equation in the RHP is equal
to the number of changes in sign of the coefficients of the first column of the array
[1, a1 , b1 , c1 , . . .]. The system is stable if and only if a1 , . . . , an > 0 and all the
terms in [1, a1 , b1 , c1 , . . .] are positive.
We have a special case when the first element in a row becomes zero, since this
implies division by 0 for succeeding rows. For this case, replace the 0 with ε
(arbitrarily small constant) and continue with obtaining expressions for the elements
in the succeeding rows. Finally, when all expressions are obtained, let ε → 0 and
evaluate the sign of the expressions. This is all that is needed since we are only
22
23. 3.5. Pole/Zero effects
concerned with sign changes. If we find no sign changes, then the 0 element
signifies a pair of poles on the imaginary axis (no real parts) implying marginal
stability.
Another special case is when all the elements in a row become zero. In this case
we may still proceed in constructing the Routh array using the derivative of a
polynomial defined using the previous (nonzero) row. If the n-th row is all zero,
first form a polynomial of order n − 1 in s using the elements in row n − 1. Then
d
obtain the derivative of this polynomial with respect to s, i.e. ds and replace the
zero row (the n-th row) with the coefficients of this derivative. The rest of the
array is completed as usual.
3.5 Pole/Zero effects
The location of the closed-loop system poles determines the nature of the system
models but the location of the closed-loop zeros determines the proportion in
which these modes are combined. This can be easily verified via partial fraction
expansions. Poles and zeros far away from the imaginary axis are known as fast
poles and zeros, respectively. Conversely, poles and zeros close to the imaginary
axis are known as slow poles and zeros. Fast zeros, RHP or LHP, have little to no
impact on system response.
Slow zeros have a significant effect on system response. Slow LHP zeros lead to
overshoot and slow RHP zeros lead to undershoot. A lower bound Mu for the
maximum undershoot (due to the presence of a RHP zero at s = c) is given by
1−δ
Mu ≥ (3.19)
ects − 1
where δ = 0.02 for a 2% settling time ts . From the denominator of the above, it
is obvious that fast zeros (large c)lead to a smaller lower bound for the maximum
undershoot Mu and vice versa. Alternatively a short settling time ts , implying a
high bandwidth, would lead to more undershoot. Hence for a given RHP zero,
we can only lower ts so much before getting unacceptable undershoot. To avoid
undershoot, the closed-loop bandwidth is limited by the magnitude of a RHP zero.
We determine the maximum bandwidth acceptable below.
The the approximate 2% settling time is given by ts ≈ 4τ = 4/a where τ is the
time constant and a is the real part of the slowest LHP closed-loop system pole.
Thus Mu can then be expressed as
1−δ
Mu ≥ ∼ . (3.20)
e4c/a −1
Thus if the magnitude of the real part of the slowest LHP closed-loop pole is
smaller than the RHP zero, undershoot will remain low since the denominator of
the above will become large. The converse is true as well. Keep real part of slowest
LHP pole less than real part of any RHP zero to avoid undershoot.
The above results are true for LHP zeros as well in an analogous manner but for
overshoot instead. Thus, in order to avoid overshoot, we must keep |a| < |c| where
a is the slowest LHP pole and c is the slowest LHP zero.
23
24. 3.5. Pole/Zero effects
If the magnitude of the real part of the dominant closed-loop poles is less than the
magnitude of the largest unstable open-loop pole, then significant overshoot will
occur. Keep real part of slowest LHP pole greater than real part of any RHP pole
to avoid overshoot.
24
25. Chapter 4
Frequency response tools
4.1 Frequency response
We consider the input to any transfer function G(s) = B(s)/A(s) to be u(t) =
A sin ωt where A is a constant and ω is the system frequency. Then it can be
shown that the steady-state output is then given by
yss (t) = |G(jω)|A sin ωt + ∠G(jω) (4.1)
where |G(jω)| is simply the magnitude of G(s) when evaluated at jω and the
phase ∠G(jω) is given by
Im B(jω) Im A(jω)
∠G(jω) = ∠B(jω)−∠A(jω) = tan−1 −tan−1 (4.2)
Re B(jω) Re A(jω)
for all ω ∈ R+ . Much useful and generalizable information can be gleaned from
the above (the frequency response function G(jω) or FRF).
4.2 Bode plots
The pair of plots of magnitude |G(jω)| vs. frequency ω and phase ∠G(jω) vs.
frequency ω are collectively known as the Bode plots of G(s). The magnitude
is usually plotted in decibels (dB) and the frequency for both plots is on the
logarithmic scale. The decibel value of the FRF G(jω) is given by
G(jω) = 20 log10 |G(jω)| (4.3)
and the logarithmic scale value of ω is log10 ω. The appropriate values for the
magnitude and phase are determined as previously shown.
The benefit of using a logarithmic scale are many fold but most importantly, multi-
plication in a linear scale implies addition in the logarithmic scale. Thus, since the
poles/zeros of a transfer function can be expressed as an arbitrarily long multiplica-
tion of factors, in the logarithmic scale we can decompose a transfer function into
a summation of elementary transfer functions based on the original poles/zeros.
This helps in plotting the function and obtaining fundamental insights into the
behaviour of the plant.
25
26. 4.2. Bode plots
Example Describe the frequency response of the following closed-
loop transfer function using bode plots
45s + 237
G(s) = . (4.4)
(s2 + 3s + 1)(s + 13)
The bode plots for the transfer function can be generated using the
bode command in MATLAB. These are shown in Figs. (4.1) and (4.2).
Figure (4.1) shows the frequency response bode plots on the standard
logarithmic scale and Fig. (4.2) shows the frequency response bode
plots on a linear scale. The benefits of the logarithmic scale are obvi-
ous from the figures since they show the response of the system better
when compared to the linear scale plots. This is especially true at very
low and very high frequencies where the linear scale response grows
asymptotically.
40
20
Magnitude (dB)
0
−20
−40
−60
−80
0
−45
Phase (deg)
−90
−135
−180
−3 −2 −1 0 1 2
10 10 10 10 10 10
Frequency (Hz)
Figure 4.1: Logarithmic scale bode plot of G(s).
Note that the frequency is shown in Hz and not in rad/sec to make
the linear scale bode plots distinguishable.
Many systems, including control systems, have their performance specified in terms
of frequency response criteria. An important one of these is the bandwidth of
the system. We define it, in general terms, as the frequency range for which
the magnitude of the transfer function from input to output is close to unity (in
absolute terms) or zero (in dB). This implies that the bandwidth is the frequency
range for which the system response is close to ideal.
The previous definition can be expressed more exactly for control systems since they
normally behave like low-pass systems. Low-pass systems are systems for which
the response begins near zero decibels and then rolls off with increasing frequency.
26
27. 4.3. Gain and phase margins
20
15
Magnitude (abs) 10
5
0
0
−45
Phase (deg)
−90
−135
−180
10 20 30 40 50 60 70 80 90 100
Frequency (Hz)
Figure 4.2: Linear scale bode plot of G(s).
It is usually the case that the magnitude response does not roll off immediately but
rather remains level for some frequency range. For such systems, the bandwidth is
the frequency at which the magnitude has rolled off by 3 dB from its low-frequency
level value. Another definition which is the used in the rest of these notes is that
the bandwidth is the real part of the slowest LHP pole. It is commonly the case
that the bandwidth from the two definitions usually closely coincides.
4.3 Gain and phase margins
As has been previously discussed, a system is stable if all of its poles are in the LHP.
Otherwise it is unstable. Not all stable systems are the same and some systems are
more stable than others. Thus, we may are faced with the problem of the extent
of stability of a system. The concepts of gain and phase margins are useful in
this regard and bode plots in particular are helpful in determining these. It must
be noted that gain and phase margins are only meaningful for stable closed-loop
systems that become unstable with increasing gain.
Consider a simple stable feedback system with the plant H(s) = B(s)/A(s) and
the compensator given by C(s) = KP (s)/L(s) where K is a constant gain. Let
G(s) be the closed-loop transfer function given by
H(s)C(s)
G(s) = (4.5)
1 + H(s)C(s)
Then the closed-loop characteristic equation CLCE which is the denominator of
the closed-loop transfer function can be easily found to be
CLCE(s) = 1 + KH(s)C(s) (4.6)
27
28. 4.3. Gain and phase margins
where the roots of 1 + KH(s)C(s) are the closed-loop poles of the system. These
are given by the solutions to
KH(s)C(s) = −1. (4.7)
Since angles in the complex s-plane are measured in a counterclockwise direction
from the positive real axis, in polar coordinates, the point −1 lies at an angle ∠ −
1 = −180◦ and magnitude | − 1| = 1. Thus, if we evaluate the frequency response
of the closed-loop system G(jω), the system will become unstable precisely at
a point where we have both ∠G(jω) = −180◦ and |G(jω)| = 1. It can also
be shown that the closed-loop system is also stable for |G(jω)| < 1. But since
we already have a stable system there will be no point where |G(jω)| < 1 and
∠G(jω) = −180◦ simultaneously. This point is commonly known as the crossover
frequency. The gain crossover frequency is when only |G(jω)| = 1 or G(jω) = 0
is true and the phase crossover frequency is when only ∠G(jω) = −180◦ is true.
It can be seen from the previous that since systems with RHP poles are a priori
unstable, the concepts of phase and gain margins are meaningless.
It follows that we can define the gain and phase margins as how much we will
need to change the system (in terms of magnitude and angle) before we reach
instability. Moreover, we can exploit the bode plots to formulate succinct definitions
of these. Thus, the phase margin is defined as the amount of additional phase lag
needed at the gain crossover frequency which will bring the system to the verge
of instability (i.e. ∠G(jω) = −180◦ or ∠G(jω) = +180◦ ). Correspondingly, the
gain margin is defined as the reciprocal of the magnitude |G(jω)| or the negative
decibel magnitude − G(jω) at the phase crossover frequency. This gain margin
determination is based on a decibel plot since 20 log10 1 = 0.
For minimum-phase systems, the phase margin must be negative for stability. Al-
ternatively, we can use ∠G(jω) = 180◦ as the stability criterion since it refers to
the same angle in the complex s-plane. In this case, for minimum-phase systems,
the phase margin must be positive for stability.
The gain margin describes the maximum multiple of the gain K that can be applied
in feedback before the system becomes unstable. A gain margin in decibels that
is positive implies that the system is stable and conversely, a negative decibel gain
margin implies instability of the underlying system.
For a stable minimum-phase system, the gain margin indicates how much we
can increase the gain before the onset of instability. Conversely for an unstable
minimum-phase system, it indicates how much we must decrease gain to regain
stability. However, since an unstable system would yield a negative decibel value,
this implies 0 < K < 1. This is not a feasible control gain for most systems and
therefore is not a meaningful measure of instability for many unstable systems.
For systems that never approach the phase crossover frequency, the gain margin is
either ∞ or −∞ indicating that the system is stable for all gains or unstable for
all gains, respectively. Furthermore, the system may have more than one crossover
frequency indicating that the system is stable only for gain values within a certain
range. For stable systems with more than one gain crossover frequency, the phase
margin is measured at the highest gain crossover frequency.
For nonminimum-phase system or systems with undefined phase/gain margins, the
best recourse is to use the Nyquist stability criterion.
28
29. 4.4. Phase margin and second-order systems
4.4 Phase margin and second-order systems
For a strict canonical second-order closed-loop system, the phase margin is related
to the damping ratio, ζ. We must be careful to make sure we have a true second-
order closed-loop system before using the following results. The second-order
closed-loop transfer function CLTF(s) is given by
2
ωn
CLTF(s) = (4.8)
s2 + 2ζωn s + ωn
2
and the related second-order open-loop transfer function OLTF(s) is given by
2
ωn
OLTF(s) = . (4.9)
s(s + 2ζωn )
The phase margin for this open-loop transfer function in closed-loop with gain K
can then be related to ζ as follows
2ζ
Phase margin = tan−1 (4.10)
1 + 4ζ 4 − 2ζ 2
≈ 100ζ for 0 < Phase margin < 70◦ (4.11)
The gain crossover frequency ωgc for such a second-order system can also be
determined as
ωgc = ωn 1 + 4ζ 4 − 2ζ 2 (4.12)
This allows us to determine the required gain crossover for a specified percent
overshoot (since percent overshoot can be used to determine ζ).
The bandwidth, ωBW of the system is given by
ωBW = ωn 1 − 2ζ 2 + 4ζ 4 − 4ζ 2 + 2 (4.13)
It can also be shown for the above system that ωgc ≤ ωBW ≤ 2ωgc .
Since the time constant τ = 1/ωBW , a higher bandwidth implies a faster response
(smaller time constant). It also allows us to specify ωBW in terms of τ and de-
termine the corresponding range of ωgc . We can use this and the previous result
to design a system in terms of phase margins and crossover gains using specified
design requirements.
4.5 Root-locus
The basic characteristics of the transient response of a system are closely related
to pole locations. Pole locations depends on the value of the loop gain in a simple
feedback setting where the compensator is a constant gain. Hence, it is becomes
important to know how the closed-loop poles move in the complex s-plane as the
gain is varied. Once the desired poles are determined using previously discussed
techniques, the design problem then only involves determining the appropriate gain
29
30. 4.5. Root-locus
to place the system poles at their desired locations. In many cases, simple gain
will not work and we would need to add a more complex compensator.
Root-locus addresses the design problem when dealing with adjusting a simple
parameter (such as a gain but could be otherwise). It was developed by W. R.
Evans and involves plotting the roots of the characteristic equation of the closed-
loop system for all values (0 to ∞) of an adjustable system parameter that is
usually the loop gain. Root-locus means the locus of roots of the characteristic
equation.
Consider a simple feedback system with plant H(s) and compensator C(s). The
closed-loop transfer function G(s) is then given by
H(s)C(s)
G(s) = . (4.14)
1 + H(s)C(s)
The characteristic equation is the denominator of the above equated to 0 and it
satisfies the following
H(s)C(s) = −1. (4.15)
We can express this in the polar form as
∠H(s)C(s) = ±180◦ |H(s)C(s)| = 1. (4.16)
Only the values of s that satisfy the above satisfy the characteristic equation and
it follows that these are the poles of the closed-loop transfer function G(s).
Let the H(s)C(s) have poles at p1 , . . . , pn and zeroes at z1 , . . . , zm . Then the
angle at a given s maybe determined using the following
∠H(s)C(s) = ∠z1 + . . . + ∠zm − ∠p1 − . . . − ∠pn (4.17)
where the angle of an arbitrary zero/pole x is given by ∠x = tan−1 (Im x/Re x).
√
The magnitude of any complex number x is given by |x| = Re x + Im x. This
can be used to determine |H(s)C(s)|.
• Angles are measured counterclockwise from the positive real axis.
• Root-loci are symmetric about the real-axis, due to the presence of complex
conjugates.
• If the difference between the orders of the numerator and denominator of
H(s)C(s) is greater or equal to two, then the sum of the poles is a constant.
This implies that if some poles move toward the right, others have to move
toward the left.
• A slight change in pole-zero configurations may cause significant changes in
the root-locus.
• The patterns of the root-loci depend only on the relative separation of the
open-loop poles and zeros.
• If a pole in the root-locus plot only moves over into the RHP (implying
instability) or LHP for a fixed bounded interval of the gain, then the system
is called conditionally stable. It is not desirable in a control system since
the danger always exists of becoming unstable/stable by both increasing the
gain too much or decreasing the gain too much.
30
31. 4.5. Root-locus
• If the construction of G(s) involved a cancellation of poles with zeros be-
cause of the interaction between the plant and compensator, all the roots
of the true characteristic equation will not show (since we are dealing with
a reduced equation). To avoid this problem, add the canceled closed-loop
pole retroactively to the closed-loop poles obtained from the root-locus plot
of G(s). This implies that the canceled pole is still a pole of the system but
is only canceled in feedback (or it is available after feedback).
Example For the feedback system shown in Fig. (4.3) with
1
H(s) = (4.18)
s(s + 1)2
find the root-locus plot and the gain values that ensure the system
R(s) U(s) Y(s)
+ K H(s)
-
Figure 4.3: Simple gain feedback system.
stable.
The root-locus plot for this transfer function can be approximately
drawn by hand or plotted using the rlocus command in MATLAB as
shown in Fig. (4.4). The two poles and their movement with increas-
0.86 0.76 0.64 0.5 0.34 0.16
1
0.94
0.5
0.985
Imaginary Axis
2 1.75 1.5 1.25 1 0.75 0.5 0.25
0
0.985
−0.5
0.94
−1
0.86 0.76 0.64 0.5 0.34 0.16
−2 −1.5 −1 −0.5 0 0.5
Real Axis
Figure 4.4: Root-locus plot for H(s).
31
32. 4.6. Nyquist stability criterion
1.2
1.2 0.5 0.38 0.24 0.12
1
1
0.64 System: sys
Gain: 2
0.8 Pole: 0.000468 + 1i
0.8
Damping: −0.000468
Overshoot (%): 100
Imaginary Axis
0.76
0.6 Frequency (rad/sec): 1
0.6
0.4
0.4 0.88
0.2
0.2 0.97
0
−0.2 0.97
0.2
−0.8 −0.7 −0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0 0.1 0.2
Real Axis
Figure 4.5: Maximum stabilizing gain for closed-loop system.
ing gain is indicated on the plot. The stable pole at s = −1 does not
become unstable for any value of K. However, the marginally stable
pole at s = −1 does cross the imaginary axis to become unstable for
some value of K. This maximum value of the gain is shown in Fig.
(4.5). Thus for any gain value K > 2, the system becomes unstable.
4.6 Nyquist stability criterion
This is a helpful tool that is useful for many kinds of systems including time
delay systems and robust stability. Given a closed-loop transfer function G(s), we
want to determine closed-loop stability/instability and also the number of unstable
closed-loop poles.
Nyquist plots are obtained by plotting G(jω) for all ω on the complex plane (real
vs. imaginary). The direction of the plotted line is also indicated in terms of
increasing ω. These can usually be done with the aid of bode plots by reading off
values of magnitude/phase for a certain frequency from the bode plots and then
plotting these points in the complex plane using polar coordinates (i.e. magnitude
and direction/angle). Angles are measured in a counterclockwise manner from the
positive real axis. The Nyquist plot is symmetric about the real axis due to the
presence of complex conjugates.
The number of unstable poles N is then given by the equation
N = NCW + NOL (4.19)
where NOL is the number of open-loop unstable poles and NCW is the number of
clockwise encirclements of the point −1/K by the Nyquist plot. The variable K
is an independent gain on the plant and is usually considered 1 when the Nyquist
32
33. 4.6. Nyquist stability criterion
plot is not being used for design purposes. A counterclockwise encirclement is the
same as a negative clockwise encirclement.
Example Consider the simple feedback system shown in Fig. (4.6).
Given
R(s) U(s) Y(s)
+ C(s) G(s)
-
Figure 4.6: Block diagram of simple single degree of freedom feedback system.
3 K
G(s) =
, C(s) = (4.20)
s−1 s+3
where K is a gain to be determined, find the appropriate Nyquist plot
and comment on the stability of the closed loop system.
Since Nyquist plotting requires an independent gain on the plant, we
rearrange and manipulate the feedback system to obtain the closed-
loop transfer function as
3
GCL (s) = KH(s) = K . (4.21)
(s + 3)(s − 1)
The corresponding block diagram is shown in Fig. (4.7). The bode
R(s) U(s) Y(s)
+ K H(s)
-
Figure 4.7: Block diagram of feedback system manipulated for generating the
Nyquist plot.
diagram is then plotted as in Fig. (4.8) and values at relevant points
are picked out in order to make the Nyquist plot. Typical points to get
the angle/magnitude of the frequency response are when the angle is
at multiples of 90◦ . A more complex Nyquist plot would require more
points to get an accurate representation. The corresponding Nyquist
plot is shown in Fig. (4.9) with the directions put in according to
increasing frequency.
It is clear from the expression of H(s) that we have 1 unstable open-
loop pole at s = 1, i.e. NOL = 1. From the Nyquist plot we have 1
33
34. 4.6. Nyquist stability criterion
0
−20
Magnitude (dB)
−40
−60
−80
−150
−155
Phase (deg)
−160
−165
−170
−175
−180
−2 −1 0 1 2
10 10 10 10 10
Frequency (rad/sec)
Figure 4.8: Bode plot of closed-loop system.
0.4
0.3
0.2
0.1
Imag Axis
0
−0.1
−0.2
−0.3
−0.4
−1.5−1.4−1.3−1.2 −1.1 −1 −0.9 −0.8−0.7−0.6 −0.5−0.4−0.3−0.2 −0.1 0 0.1 0.2 0.3 0.4 0.5
Real Axis
Figure 4.9: Nyquist plot of closed-loop system.
counterclockwise encirclement or -1 clockwise encirclements for −1 <
−1/K < 0, i.e. NCW = −1. It follows that
−1 + 1 = 0 for − 1 < −1/K < 0
NCL = NCW + NOL =
0+1=1 for − 1/K < 1
(4.22)
and thus
0 if K > 1
NCL = (4.23)
1 if K < 1
34
35. 4.6. Nyquist stability criterion
In other words, any gain greater than 1 ensures stability of the closed-
loop system.
When there is a pole at the origin or anywhere else on the imaginary axis, the
Nyquist plot will become singular which leads to a problem of counting the encir-
clements. This problem is countered by evaluating G(s) at a point which is not
singular but is very close to the singular point. If the singular point is given by ωs j,
then the point close to it is usually taken to be ε + ωs j, where ε is an arbitrarily
small positive real number as shown in Fig. (4.10).
Figure 4.10: s-plane showing path taken to determine how symmetric singularities
join when making Nyquist plots.
This point is then located on the plot and is made arbitrarily large in magnitude
(tending to ∞) which helps indicate in which direction the singular points join at
infinite distance.
Example Consider a feedback system similar to the one shown in
Fig. (4.7) with closed-loop transfer function
1
GCL (s) = KH(s) = K . (4.24)
s(s + 1)2
where K is a gain to be determined. Find the appropriate Nyquist plot.
The bode diagram is then plotted as in Fig. (4.11) and values at rele-
vant points are picked out in order to make the Nyquist plot. Typical
points to get the angle/magnitude of the frequency response are when
the angle is at multiples of 90◦ . A more complex Nyquist plot would
require more points to get an accurate representation.
35
36. 4.6. Nyquist stability criterion
20
0
Magnitude (dB)
−20
−40
−60
−90
−135
Phase (deg)
−180
−225
−270
−1 0 1
10 10 10
Frequency (rad/sec)
Figure 4.11: Bode plot of closed-loop system.
Since this transfer function has a pole on the imaginary axis at s = 0,
we do not evaluate GCL (j0) but instead evaluate at GCL ( + j0)
where is an arbitrarily small number. This is in order to determine
the asymptotic direction of the closed contour of the Nyquist plot. The
corresponding Nyquist plot with directions is shown in Fig. (4.12).
10
5
Imag Axis
0
−5
−10
−2 0 2 4 6 8
Real Axis
Figure 4.12: Nyquist plot of closed-loop system.
The stability of the closed-loop system maybe determined as before
36
37. 4.7. Feedback with disturbances
using the Nyquist plot.
4.7 Feedback with disturbances
Consider a single degree of freedom feedback system (shown below) with input
disturbance Di (disturbance between the compensator C(s) output U (s) and the
input of the plant G(s)), output disturbance Do (disturbance in the plant output)
and measurement noise/disturbance Dm . Let the system input be R(s).
Di Do
R(s) U(s) + + Y(s)
+ C(s) + G(s) +
-
+
+
Dm
Figure 4.13: Block diagram of a single degree-of-freedom feedback system with
disturbances.
For such a system, we can write the following two functions
Y (s) = T (s)R(s) + S(s)Do (s) + Si (s)Di (s) − T (s)Dm (s) (4.25)
U (s) = Su (s)R(s) + Su (s)Do (s) − T (s)Di (s) − Su (s)Dm (s) (4.26)
where S(s) is the sensitivity function, T (s) is the complementary sensitivity func-
tion, Si (s) is the input-disturbance sensitivity function and Su (s) is the control
sensitivity function. These are given by the following relations
G(s)C(s)
T (s) = (4.27)
1 + G(s)C(s)
1
S(s) = (4.28)
1 + G(s)C(s)
G(s)
Si (s) = = G(s)S(s) (4.29)
1 + G(s)C(s)
C(s)
Su (s) = = C(s)S(s) (4.30)
1 + G(s)C(s)
We can use the above to derive transfer functions between any input/output pair.
Furthermore, we can independently assess the stability of each input/output pair
by evaluating the relevant transfer function.
37
38. 4.7. Feedback with disturbances
Example Find the closed-loop sensitivity functions for a closed-loop
system with plant transfer function
3
G(s) = (4.31)
(s + 4)(−s + 2)
and compensator
−s + 2
C(s) = . (4.32)
s
Also comment on the stability of the system.
Since G(s) = B(s)/A(s) and C(s) = P (s)/L(s)
B(s) = 3 A(s) = (s + 4)(−s + 2) P (s) = −s + 2 L(s) = s
(4.33)
which gives us
GC BP 3
T (s) = = = (4.34)
1 + GC AL + BP s+7
1 AL s(s + 4)
S(s) = = = 2 (4.35)
1 + GC AL + BP s + 4s + 3
(s + 4)(−s + 2)
Su (s) = SC = (4.36)
s2 + 4s + 3
3s
Si (s) = SG = 2 . (4.37)
(s + 4s + 3)(−s + 2)
All the above closed-loop transfer functions are stable except for the
input-disturbance Si (s) since it has a positive pole. Thus, the input-
disturbance to output path is not stable and therefore the entire system
is unstable.
As can be seen, the complementary sensitivity function T (s) is the basic transfer
function from the input R(s) and the output Y (s). Thus, for good tracking we
need T (s) → 1. But as can be seen from the first function for Y (s), this increases
the measurement noise Dm . The sensitivity on the other hand is the transfer
function from the output disturbance Do (s) to the output Y (s). Moreover the
S(s) sensitivity function is directly related to the input sensitivity Si (s) and the
control sensitivity Su (s), both of which we want to reduce to as low as possible.
Therefore, we want S(s) → 0 and T (s) → 1. This is both possible and is actually
a constraint on the system as it can be easily shown that
T (s) + S(s) = 1 (4.38)
But as mentioned earlier, T (s) → 1 amplifies measurement noise. If T (s) = 1
(and thus S(s) = 0) for all frequencies ω, then the system has infinite bandwidth
(fast response). However, it amplifies the measurement noise at all frequencies
which is even more noticeable at high frequencies since measurement noise is
usually significant at higher frequencies. Therefore, having a high bandwidth is
not necessarily something desirable from a control design standpoint.
Infinite bandwidth leads to high measurement noise because T (s) = 1 ∀ ω.
38
39. 4.8. Trends from Bode & Poisson’s integral constraints
In real systems, T (s) cannot be 1 for all frequencies and rolls off at some finite
bandwidth frequency.
• The bandwidth is defined as ωBW = 1/τ where τ is the time constant of the
slowest LHP pole or in an alternate definition is the 3 dB point on a bode
magnitude plot.
• When the true plant transfer function is not available, we proceed with our
analysis using the nominal plant transfer function G0 (s). In this case the
sensitivity functions remain the same but with G0 (s) instead of G(s). Thus
we have T0 (s), S0 (s), Si0 (s) and Su0 (s).
• For a plant G(s) = B(s)/A(s) and a compensator C(s) = P (s)/L(s), the
closed-loop characteristic Acl is as before and is the denominator of all the
sensitivity functions above
Acl = AL + BP = 0 (4.39)
• We need all the sensitivity functions to be stable for stability, i.e. we need
all the roots of Acl to be in the LHP.
• This is only true if there is no cancellation of unstable poles between C(s)
and G(s). Canceling unstable poles is not recommended since we will never
have a perfect model and this will cause us to end up with a nonminimum-
phase zero instead of canceling the unstable pole. Moreover, this will result
in a RHP zero and pole very close to each other and this leads to much
higher instability as will be seen later.
4.8 Trends from Bode & Poisson’s integral constraints
Consider the case when we have no open-loop RHP planes or zeros. Then for
stability, the following is satisfied
∞
0 τd > 0
ln|S(jω)| dω = (4.40)
0 −k π
2 τd = 0
where k = lims→∞ sG(s)C(s) and τd is the time delay in the system. This
is the first of Bode’s integral constraints on sensitivity. The next equation for
complementary sensitivity also needs to be satisfied for stability
∞
1 1 π
ln T j d = πτd − (4.41)
0 ω ω 2kr
−1
where kr = − lims→∞ 1/sG(s)C(s). Since an integral is the area under a graph,
the above signify how much of the graph of T (jω) and S(jω) needs to be above
or below the 0 axis. Upon inspection of the equations, it can be seen that time
delay causes a more positive integral, leading to the fact that time delays cause
both T (jω) and S(jω) to need to move more above the 0 axis for stability (to
satisfy the more positive integrals). This is undesirable as mentioned before and
therefore, time delays are undesirable.
39