Basisc of Automation and Control Lecture 1 - Basic concepts / Control system design Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basisc of Automation and Control Programme Information about lectures and laboratories Automation Systems, lecture - Jakub Możaryn, PhD, Eng., Faculty of Mechatronics, room. 341, e-mail: jakub.mozaryn@pw.edu.pl, webpage: http://jakubmozaryn.esy.es Automation Systems, laboratories - Jakub Możaryn, PhD, Eng., Faculty of Mechatronics, room. 341, e-mail: jakub.mozaryn@pw.edu.pl, webpage: http://jakubmozaryn.esy.es Jakub Możaryn Basisc of Automation and Control Programe Lecture information Lecture: 20 hours Laboratories: 10 hours Work at home: 20 hours Exam preparation: 10 hours Conditions to pass the lecture: pass the writing exam and attend all laboratories Jakub Możaryn Basisc of Automation and Control Literature R.C. Dorf, R.H.Bishop, Modern Control Systems, Prentice Hall, 2008 G.F. Franklin, J.D. Powell, A. Emami-Naeini, Feedback Control of Dynamic Systems, Addison-Wesley, 1994 N.S. Nise, Control Systems Engineering, Wiley, 2015 Massive open on-line courses (MOOC): Coursera, EdX, Iversity Jakub Możaryn Basisc of Automation and Control Introduction Today, many devices are equipped with what is generally called automation. Ranging from household appliances like iron (temperature controller), washing-machine (programmer) to devices with the most advanced technology as the aircraft (autopilot). One of the first controllers, which has been applied in practice was Watt’s centrifugal governor to stabilize the rotation of the steam engine (1784). Since then, automation has become a type of science, and the number of its practical application is constantly growing. The theory of automatic control now includes: theory of linear systems, feedback control, theory of nonlinear systems, optimal control, theory of discrete systems (logical automation systems), robotics. Jakub Możaryn Basisc of Automation and Control Steam engine Figure: Steam engine with the centrifugal speed governor Jakub Możaryn Basisc of Automation and Control Centrifugal speed governor The valve starts fully open at zero speed, but as the balls rotate and rise on the rods. The central valve stem is forced downward and closes the valve. Figure: The detailed view of the centrifugal speed governor Jakub Możaryn Basisc of Automation and Control Aims of the lecture Aims of the lecture Acquiring the ability to recognize and assess the problems of automation and control. Understanding the basic concepts of automation of different processes, methods to determine the nature and elements of automation with continuous and discrete action. Understanding the basic principles of operation of control systems and functions of the elements of these systems. Understanding the requirements for control systems and methods of ensuring the fulfillment of these requirements. Jakub Możaryn Basisc of Automation and Control List of lectures Introduction: basic concepts, classification of control systems of continuous processes, examples. Description methods of dynamical systems: differential equations, transfer functions, time and frequency domains. Static and dynamic features of the basic elements of the automation system. Block diagrams. Process / plant - model identification. PID controllers. Stability of control systems, stability criteria. Static and dynamic indexes of control quality, selection of parameters of controllers. Design of the control system. Complex control systems. Jakub Możaryn Basisc of Automation and Control Natural and technological processes Natural processes Physical and chemical transformations of the state of matter that takes place without human intervention. Examples: weather changes, water movement in rivers, tectonic movements, chemical processes in the human body (eg changes in the level of insulin and glucose). Technological processes Processes carried out by a man with the use of appropriate devices constructed by him in order to obtain the intended changes in the state of matter. Example: changing the temperature in the furnace, changing the water level in tanks in petrochemical installations. During the lecture, issues related to technological processes and their control will be discussed. Jakub Możaryn Basisc of Automation and Control Basic concepts Figure: Block diagram of the process Control System Control System is an interconnection of components constituting a system configuration that shall provide the desired system response (behavior). Jakub Możaryn Basisc of Automation and Control Basic concepts Open-loop control system Jakub Możaryn Basisc of Automation and Control Basic concepts Open-loop control system Examples: toaster, cofee vending machine. Jakub Możaryn Signals yr (t) - desired output response, u(t) - control signal, x(t) - input signal, y (t) - output signal. Basisc of Automation and Control Example - filling the glass with water Figure: Example of the process control - the control of the level in the tank (glass). Jakub Możaryn Basisc of Automation and Control Example - filling the glass with water Aim: Fill half of the glass with water. Figure: Example of the process control - the control of the level in the tank (glass). Jakub Możaryn Function: sensors - eyes, force estimation (weight of glass), actuators - hand, valve, controller - brain. Basisc of Automation and Control Basic concepts Closed-loop control system Jakub Możaryn Basisc of Automation and Control Basic concepts Closed-loop control system Examples: The temperature control in the greenhouse. The water level control in the tank. The autopilot. Jakub Możaryn Signals u(t) - control signal, x(t) - input signal, y (t) - output signal, yr (t) - desired output response, ym (t) - measured output, e(t) = yr (t) − ym (t) - error signal. Basisc of Automation and Control Basic concepts Closed-loop feedback control system The closed-loop feedback control system tends to maintain a prescribed relationship of one system variable (measured process output value) to another variable (desired process output response) by comparing functions of these variables and using their difference as a means of control. Error signal e(t) is amplified. The controller causes the actuator to modulate the process in order to reduce the error e(t). Feedback concept The closed-loop control system uses a measurement of the output and feedback of this signal to compare it with the desired output value (reference value or command). Jakub Możaryn Basisc of Automation and Control Basic concepts Closed-loop control system Elements C - controller, A - actuator, O - process/plant, S - sensor Main Path indicates always an essential input value of the system and output value. This path typically describes the main flow of material or energy in the system. Feedback Path is used to transmit information. Energy requirements of this path are usually small in comparison with the main path, and can be omitted. Jakub Możaryn Basisc of Automation and Control Basic concepts Closed-loop control system - disturbances and noise Advantages of the closed-loop control system over the open-loop control system Rejection of external disturbances d(t), Improvement of the measurement noise n(t) attenuation. Jakub Możaryn Basisc of Automation and Control Basic concepts Closed-loop control system - simplified scheme Jakub Możaryn Basisc of Automation and Control Basic concepts Multi-loop Feedback Control System Jakub Możaryn Basisc of Automation and Control Basic concepts Single Input Single Output (SISO) system Multiple Input Multiple Output (MIMO) system Jakub Możaryn Basisc of Automation and Control Control System Design R.C. Dorf, R.H. Bishop, Modern Control Systems, Prentice Hall, 2009 Jakub Możaryn Basisc of Automation and Control Basics of Automation and Control Lecture 2 - Mathematical Models of Dynamical Systems Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Mathematical modelling for control systems Real processes, and thus control systems, have nonlinear properties: turbulences, multiple stable states, hysteresis, energy losses due to friction. In practice, to simplify the mathematical description, there is carried linearization, enabling the formulation of the approximate description of a linear phenomenon, in vicinity of the operating point (this point corresponds to the nominal or average operating conditions of the system). Linearization steps 1 2 3 description of the phenomenon in the form of differential equations, linearization, operational calculus: differential equations → algebraic equations. Jakub Możaryn Basics of Automation and Control 6 step approach to modelling STEP 1: Define the system and its components. STEP 2: Formulate the mathematical model and fundamental necessary assumptions based on basic physical principles. STEP 3: Obtain differential equations representing the mathematical model. STEP 4: Solve equations for the desired output variables. STEP 5: Examine the assumptions and solutions. STEP 6: If necessary, reconsider and redesign the system. Jakub Możaryn Basics of Automation and Control Description of linear models The basic forms of mathematical description of the system dynamical properties are: Equations of Motion: equations of system dynamics in form of differential equations. Transfer function. State Space Equations (not covered in the course). In the case of dynamical system (process) with one input signal x(t) and one output signal y (t) equation of motion describes the relationship between the output signal y (t) and the input signal x(t) in a following form: y (t) = f (x(t)) = f (x, t) = f (x) (1) Jakub Możaryn Basics of Automation and Control Description of linear models / systems Principle of superposition: f (x1 + x2 ) = f (x1 ) + f (x2 ), and f (0) = 0. (2) Space of solutions of the equation that satisfies (2) is a linear space. Homogeneity (implies scale invariance): Function f (x, y ) is said to be homogeneous of degree k if f (βx, βy ) = β k f (x, y ), and f (0) = 0, where: β - constatnt coefficient. Linear system Homogenous system, which preserve the principle of superposition. Nonlinear system The system, which does not preserve the principle of superposition and/or is not homogenous. Jakub Możaryn Basics of Automation and Control (3) Description of linear models / systems General form of the differential equation describing linear system: an d ny d n−1 y d mx d m−1 x +an−1 n−1 +· · ·+a0 y = bm m +bm−1 m−1 +· · ·+b0 x (4) n dt dt dt dt where: y - output signal, x - input signal, ai , bi - constant coefficients. Jakub Możaryn Basics of Automation and Control Proportional elements Dynamics equation relationship between input and output signal: Figure 1: Proportional element voltage divider Input signal x(t) - voltage U1 (t). Output signal y (t) - voltage U2 (t). Jakub Możaryn U2 (t) = R2 U1 (t) R1 + R2 (5) General equation of proportional element y (t) = kx(t) Basics of Automation and Control (6) First order lag elements Dynamics equation relationship between input and output signal: L dU2 (t) + U2 (t) = U1 (t) (7) R dt Figure 2: First order lag element RL filter Input signal x(t) - voltage U1 (t). Output signal y (t) - voltage U2 (t). Jakub Możaryn General equation of first order lag element T dy (t) + y (t) = kx(t) dt Basics of Automation and Control (8) Static characteristic Static characteristics Static characteristic fs describes the dependence of the output signal y of the system from the input signal x in steady state. Steady state Steady state is a state in which all derivatives of the input signal and output signal are equal to zero. In such a situation the output signal has a steady value. Jakub Możaryn Figure 3: Static characteristics of linear system. Basics of Automation and Control Linearization Creation of linear description of the system, based on nonlinear description of this system is called linearization. Linearization of nonlinear description in the form of nonlinear algebraic equations is called static linearization. (There are no derivatives) Linearization of nonlinear description in the form of nonlinear differential equations is called the dynamic linearization. Methods of static linearization tangent method: obtain the best relation between the linear and nonlinear description of a system for a given value of the independent variable (input), and hence a particular value of the dependent variable (output). secant method: obtain the best relation between the linear and nonlinear description of a system in the specified range of changes of the independent variable (input). Jakub Możaryn Basics of Automation and Control Static linearization Figure 4: Static linearization; a) secant method, b) tabgent method. In control system design, there is considered the behavior of plant/system in a vicinity of a specified operating point. Therefore in practical applications tangent linearization method is much useful. Jakub Możaryn Basics of Automation and Control Tangent method Process of linearization using tangent method involves: replacement of the curve representing nonlinear relationship y = f (x) with its tangent at operating point, transfer the origin to operating point, replacement in mathematical model absolute variables x and y with deviations of these variables from operating point incremental variables ∆x and ∆y . Static characteristics obtained using linearized equation, in terms of the specified operating point, is a linear function. It can be also obtained by linearization of real characteristics in terms of the same operating point. Jakub Możaryn Basics of Automation and Control Dynamic linearization An example of differential equation, which describes linear relationship between functions x(t), y (t) and their derivatives. F [y (t), ẏ (t), ÿ (t), . . . , y (n) (t), x, ẋ(t), ẍ(t), . . . , x (m) (t)] = 0 (9) During dynamic linearization, functions x(t), y (t) and their derivatives are treated analogously to variables of implicit function. ) ( ) ( m n X X ∂F ∂F (i) (j) ∆y + ∆x =0 (10) ∂y (i) y (i) ∂x (j) x (j) j=0 i=0 0 0 where: ∆y = y (t) − y0 , ∆y (1) = d∆y d n ∆y , . . . , ∆y (n) = dt dt n ∆x = x(t) − x0 , ∆x (1) = d∆x d m ∆x , . . . , ∆x (m) = dt dt m Jakub Możaryn Basics of Automation and Control Laplace transform Replacing differential equation with transfer function (algebraic equation) needs transition from the time domain (t) to the complex plane (s). f (t) ⇔ f (s), where s = c + jω (11) where: c - real part coefficient, ω - conjugate part coefficient. Laplace transform Z∞ f (s) = L[f (t)] = f (t)e −st dt (12) 0 Inverse Laplace transform - Riemann-Mellin integral −1 f (t) = L 1 [f (s)] = 2πj c+jω Z F (s)e st ds c−jω Jakub Możaryn Basics of Automation and Control (13) Properties of Laplace transform Linearity property L [f1 (t) + f2 (t)] = L [f1 (t)] + L [f2 (t)] (14) L[k · f (t)] = k · L[f (t)] (15) L−1 [F1 (s) + F2 (s)] = L−1 [F1 (s)] + L−1 [F2 (s)] (16) L −1 [k · F1 (s)] = k · L −1 [F (s)] Transform of derivative n 0 X d f (t) n = s · F (s) − s i · f n−1−i (0+) L dt n i=n−1 where: f (n−1) = d n−1 f (t) . dt n−1 In special case of zero initial conditions Jakub Możaryn P0 i=n−1 s i · f n−1−i (0+) = 0. Basics of Automation and Control (17) (18) Properties of Lapace transform Transform of integral Z t F (s) 1 L f (τ )dτ = · L[f (t)] = s s 0 (19) Shift in the complex plane (frequency shift) L [e −α·t · f (t)] = F (s + α) L [e +α·t · f (t)] = F (s − α) (20) Shift in the real plane (time shift) L [f (t − τ )] = e −τ s · L[f (t)] = e −τ s · F (s) L [f (t + τ )] = e +τ s · L[f (t)] = e +τ s · F (s) (21) Initial and final value theorems if there exists limt→0+ f (t) = f (0+ ) lim f (t) = f (0+ ) = lim s · F (s) t→0+ s→∞ (22) if there exists limt→∞ f (t) = f (∞), to lim f (t) = f (∞) = lim s · F (s) t→∞ Jakub Możaryn s→0 Basics of Automation and Control (23) Laplace transform of the linear systems Laplace transform is used for an analysis of control systems. As a tool for graphical analysis, complex plane S is used, where multiplication by s has the effect of differentiation and division by s has the effect of integration. Analysis of complex roots of a linear equation, may disclose information about the frequency characteristics and the stability of the system. To determine the function’s Laplace transform the following conditions must be met: f (t) has a finite value in any finite interval, f (t) has a derivative df (t) dt in any finite interval, there exists a set of real numbers X for which the integral R∞ 0 absolutely convergent. Jakub Możaryn Basics of Automation and Control e −ct is Laplace transform of the linear systems Linear system is described by following differential equation an d n−1 y d mx d m−1 x d ny +a +· · ·+a y = b +b +· · ·+b0 x (24) n−1 0 m m−1 dt n dt n−1 dt m dt m−1 Using the n-th derivative property of the Laplace transform n d y = s n y (s) − s n−1 y (0+ ) − · · · − y n−1 (0+ ) L dt n and assuming that initial conditions are zero, one obtains n d y = s n y (s) L dt n (25) (26) Laplace transform of the linear dynamic system (22) with zero initial conditions take the following form y (s)(an s n +an−1 s n−1 +· · ·+a0 ) = x(s)(bm s m +bm−1 s m−1 +· · ·+b0 ) (27) Jakub Możaryn Basics of Automation and Control Transfer function Transfer function For continuous-time input signal x(t) and output y (t), the transfer function G (s) is the linear mapping of the Laplace transform of the input, X (s) = L[x(t)], to the Laplace transform of the output Y (s) = L[y (t)] at zero initial conditions: y (s)(an s n +an−1 s n−1 +· · ·+a0 ) = x(s)(bm s m +bm−1 s m−1 +· · ·+b0 ) (28) G (s) = bm s m + bm−1 s m−1 + · · · + b0 y (s) = x(s) an s n + an−1 s n−1 + · · · + a0 (29) Numerator M(s) = bm s m + bm−1 s m−1 + · · · + b0 (30) Denominator - characteristic equation N(s) = an s n + an−1 s n−1 + · · · + a0 Jakub Możaryn Basics of Automation and Control (31) Determination of static characteristics from transfer function x0 = lim x(t), t→∞ y0 = lim y (t), t→∞ (32) using the final value theorem y0 = lim y (t) = lim sy (s) = lim sG (s)x(s) t→∞ s→0 s→0 (33) For the input signal in the form of the unit step x0 = const ⇒ x(s) = 1 x0 s y0 = lim G (s). s→0 x0 (34) (35) Finally, the static characteristcs has a form y0 = Jakub Możaryn b0 x0 a0 Basics of Automation and Control (36) Methods for determining the transient response of the system an d ny d n−1 y d mx d m−1 x +an−1 n−1 +· · ·+a0 y = bm m +bm−1 m−1 +· · ·+b0 x (37) n dt dt dt dt Classic: Assumption of the initial conditions x(0), y (0). Solution of differential equations. Using transfer function: f (t) = L−1 [y (s)] = L−1 [G (s)x(s)] (38) To perform Laplace transform and its reverse, which are the basic operations of a transfer function calculus, it is often sufficient to know basic properties of transfer fuctions and tables of transfer fuctions. Jakub Możaryn Basics of Automation and Control Typical input signals Step with constant value x(t) = for t ≥ 0 for t < 0 xst 1(t) 0 x(s) = xst 1 s Impulse - Dirac delta function x(t) = δ(t) = 0 for t ̸= 0 ∞ for t = 0 x(s) = 1 Ramp x(t) = at x(s) = Jakub Możaryn Basics of Automation and Control a s2 System properties Changes of output signal y (t) as a response to a specific change of an input signal x(t) Figure 5: Example of a transient response of the dynamical system Jakub Możaryn Basics of Automation and Control Table of transfer functions ... Figure 6: Table of transfer functions Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 3 - Frequency response methods / Basic linear dynamical elements Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Frequency response Frequency response methods Jakub Możaryn Basics of Automation and Control Frequency response Frequency response The frequency response of a system is defined as the steady-state response of the system to a sinusoidal input signal. The sinusoidal signal is a unique input signal, and a resulting output signal for linear time-invariant (LTI) system, as well as signals throughout the system, is sinusoidal in the steady-state; it differs from the input waveform only in amplitude and phase angle. In the analysis of linear systems, frequency response methods are used to examine the stability, bandwidth, and robustness of the LTI system. Jakub Możaryn Basics of Automation and Control Frequency response Figure 1: Creation of the frequency response u(t) = A1 sin[ωt] (1) y (t) = A2 sin[ω(t − tφ )] (2) ω= 2π Tosc (3) where: Ai , i = 1, 2 - the amplitude, ω - the angular frequency (constant for input and output signals in case of LTI systems), tφ - the delay between the output signal phase and the input signal phase, Tosc - the period of oscillations. tφ < 0 - the negative phase shift, tφ > 0 - the positive phase shift. Jakub Możaryn Basics of Automation and Control Frequency response There are defined following quantities (as a function of a frequency): Magnitude: an amplitude ratio of the output signal (response) to the input signal (cause), Phase angle shift: between the output signal and input signal There are widely used following plots of the system in frequency domain: an amplitude-phase polar plot - Nyquist plot, amplitude and phase logarithmic plots - Bode plots (diagrams). Jakub Możaryn Basics of Automation and Control Frequency response Figure 2: Input signal Figure 3: Output signal (negative phase shift) Jakub Możaryn Basics of Automation and Control Frequency response A phase shift of an output signal relative to an input signal can be expressed as a shift in time by tφ - output signal is described by the following function y (t) = A2 sin[ω(t − tφ )] The phase shift of the output signal relative to the input signal can be expressed as a shift angle φ(ω) = ωtφ Therefore y (t) = A2 sin[ωt − φ] Jakub Możaryn Basics of Automation and Control Frequency response To describe systems, where the signals are in the form of sinusoidal functions, there is used transform in frequency domain G (jω). The transform in frequency domain is connected with Fourier transform which assigns the transform F (jω) in the frequency domain to the function in time domain f (t) according to the following equation (also called Fourier Integral) Z∞ F (jω) = f (t)e −jωt dt (4) −∞ Jakub Możaryn Basics of Automation and Control Spectral transfer function Spectral transfer function Spectral transfer function is the ratio of the Fourier transform of the output signal to the Fourier transform of the input signal. Gjω = y (jω) x(jω) Between spectral transfer function, and transfer function there is formal relation G (jω) = G (s)|s=jω resulting from the relation between transforms of Laplace and Fourier (Fourier transform is special case of Laplace transform) Jakub Możaryn Basics of Automation and Control Spectral transfer function Using property of Laplace transform - theorem of the shift in the real variable domain L{f (t + τ )} = L{f (t)}e τ s The spectral transfer function of the object in the case of a sinusoidal signal at an input has the following form A2 (ω) L {sin[ω(t)]} e tφ s A2 (ω) tφ s L {A2 (ω)sin[ω(t + tφ )]} = = e L {A1 sin[ω(t)]} A1 L {sin[ω(t)]} A1 G (s) = Because G (jω) = Y (jω) , U(jω) G (jω) = G (s)|s=jω , tφ = φ(ω) ω therefore G (jω) = A2 (ω) tφ s A2 (ω) tφ jω A2 (ω) jφ(ω) e |s=jω = e = e A1 A1 A1 Jakub Możaryn Basics of Automation and Control Spectral transfer function The spectral transfer function can be presented as follows G (jω) = A2 (ω) jφ(ω) e = M(ω)e jφ(ω) A1 where: M(ω) = A2 (ω) A1 - the magnitude of the spectral transfer function φ(ω) - the argument of the spectral transfer function The spectral transfer function can be divided into two components G (jω) = M(ω)e jφ(ω) = P(ω) + jQ(ω) where: P(ω) - the real part of the spectral transfer function, Q(ω) - the imaginary part of the spectral transfer function. Jakub Możaryn Basics of Automation and Control Polar plot - Nyquist plot Polar plot - Nyquist plot A plot of a function expressed in polar coordinates, which is a locus of the terminal point of the vector of spectral transfer function G (jω) with changes ω=0→∞ p [P(ω)]2 + [Q(ω)]2 Q(ω) φ(ω) = arctg P(ω) M(ω) = P(ω) = M(ω) cos[φ(ω)] Figure 4: Example of polar plot Q(ω) = M(ω) sin[φ(ω)] M(ω) = P(ω) cos[φ(ω)] + Q(ω) sin[φ(ω)] Jakub Możaryn Basics of Automation and Control Amplitude and phase logarythmic plots - Bode diagrams Frequency characteristics The phase and magnitude in terms of the frequency can be presented on two separate plots: the amplitude plot L(ω) = |G (jω)| as the function of the frequency ω , phase plot φ = arg G (ω) as the function of the frequency ω. Logarithmic gain (unit - decibel) L(ω) = 10log10 M 2 (ω) Figure 5: Logarythmic plots Jakub Możaryn = 20 log M(ω)[dB] Basics of Automation and Control Basic linear dynamical elements Jakub Możaryn Basics of Automation and Control Basic linear dynamical elements In complex automation systems, it’s often possible to extract a number of the simple, indivisible, functional elements, connected together. Their properties can be assigned with certain accuracy to few basic linear mathematical models. Abstract elements with properties corresponding to those models are basic (or elementary) linear dynamical elements. Methods of the description of basic elements: equations of motion, transfer functions, static characteristics, transient responses, transfer functions in the frequency domain i.e spectral transfer function, polar plot in the frequency domain (Nyquist plot), logarithmic plots in the frequency domain (Bode plots). Jakub Możaryn Basics of Automation and Control Basic dynamical elements Proportional (non-inertial) y (t) = ku(t) T T dy (t) + y (t) = ku(t) dt dy (t) dy (t) = u(t), lub = ku(t) dt dt y (t) = T T T2 First-Order Lag du(t) dt Differentiator (ideal) dy (t) du(t) + y (t) = Td dt dt Differentiator (real) d 2 y (t) dy (t) + 2ξT + y (t) = ku(t) dt dt y (t) = u(t − T0 ) Jakub Możaryn Integrator Second Order Lag, if 0<ξ<1 Delay Basics of Automation and Control Proportional element Figure 6: Examples of proportional elements: a) the two-port network, b) the lever, c) the hydraulic lever Jakub Możaryn Basics of Automation and Control Proportional element Figure 7: Examples of proportional elements: a) the two-port network, b) the lever, c) the hydraulic lever a) U2 (t) = R2 U1 (t) R1 + R2 Equation of motion b) b y (t) = x(t) a y (t) = ku(t) c) where: k - gain. d2 F2 (t) = 22 F1 (t) d1 Jakub Możaryn Basics of Automation and Control Proportional element Dynamic equation y (t) = ku(t) Static characteristic yst = kust Transfer fuction G (s) = Figure 8: Static characteristic of the proportional element Y (s) =k U(s) Jakub Możaryn Basics of Automation and Control Proportional element Transient response 1 y (t) = L−1 [ust k] = kust s Figure 9: Transient response of the proportional element Jakub Możaryn Basics of Automation and Control Proportional element Spectral transfer function Gjω = G (s)|s=jω = k P(ω) = k, Q(ω) = 0 M(ω) = k L(ω) = 20 log k[dB] φ(ω) = 0 Figure 10: Nyquist plot Jakub Możaryn Basics of Automation and Control Proportional element Amplitude diagram L(ω) = 20 log k[dB] Phase diagram φ(ω) = 0 Figure 11: Bode plots Jakub Możaryn Basics of Automation and Control First Order Lag Element - Example 1 Figure 12: First Order Lag Element - spinning disc on a shaft dω(t) + Rω(t) = M(t) dt J dω(t) 1 + ω(t) = M(t) R dt R where: R - the viscosity coefficient in bearings, J - the moment of inertia, M - the torque, ω - the angular velocity. J Jakub Możaryn Basics of Automation and Control First Order Lag Element - Example 2 Figure 13: First Order Lag Element - RL network dI (t) + U2 (t) dt U2 (t) I (t) = R L dU2 (t) + U2 (t) = U1 (t) R dt where: L - the inductance, R - the resistance, U1 (t) - the input voltage, U2 (t) - the output voltage. U1 (t) = L Jakub Możaryn Basics of Automation and Control First Order Lag Element Equations of motion a) disc rotating on the shaft 1 J dω(t) + ω(t) = M(t) R dt R Equation of a motion T dy (t) + y (t) = ku(t) dt b) RL network where: T - time constant. L dU2 (t) + U2 (t) = U1 (t) R dt Jakub Możaryn Basics of Automation and Control Jakub Możaryn Basics of Automation and Control First Order Lag Element Dynamic equation T dy (t) + y (t) = ku(t) dt Static characteristic yst = kust Figure 14: Static characteristic of the First Order Lag Element Transfer function G (s) = k Y (s) = U(s) Ts + 1 Jakub Możaryn Basics of Automation and Control First Order Lag Element Transient response 1 k ] y (t) = L−1 [ust s Ts + 1 −t = ust k 1 − e T Figure 15: Transient response of the First Order Lag Element Jakub Możaryn Basics of Automation and Control First Order Lag Element Spectral transfer function Gjω = G (s)|s=jω = P(ω) = k k |s=jω = = P(ω) + jQ(ω) Ts + 1 Tjω + 1 k T 2 ω2 +1 , Q(ω) = −kT ω T 2 ω2 + 1 Figure 16: Nyquist plot, ωs - the corner frequency Jakub Możaryn Basics of Automation and Control First Order Lag Element Amplitude diagram M(ω) = √ k T 2 ω2 + 1 p L(ω) = 20 log k − 20 log T 2 ω 2 + 1[dB] for 1 = ωs T L(ω) = 20 log k[dB] ω≪ for ω≫ 1 = ωs T L(ω) = (20 log k−20 log p T 2 ω 2 + 1)[dB] Phase diagram φ = −arctg(T ω) Figure 17: Bode plots Jakub Możaryn Basics of Automation and Control Integrator Figure 18: Integrators: a) the hydraulic integrator, b) the gearbox Jakub Możaryn Basics of Automation and Control Integrator a) Hydraulic integrator ( s ) 2 Q = αb (pz − ps ) x(t) = Bx(t) ρ Equation of motion Q1 = Q2 = Bx(t) = A dy (t) dt T or A dy (t) = x(t) B dt b) Gearbox dy (t) = u(t) dt dy (t) = ku(t) dt dφ(t) ω = x(t) dt r Jakub Możaryn Basics of Automation and Control Integrator Dynamic equation T dy (t) = u(t) dt Static characteristic ust = 0 Trasfer function Figure 19: Static characteristic of the integrator 1 Y (s) G (s) = = U(s) Ts Jakub Możaryn Basics of Automation and Control Integrator Transient response y (t) = L−1 [ust t 1 1 ] = ust s Ts T Figure 20: Transient response of the integrator Jakub Możaryn Basics of Automation and Control Integrator Spectral transfer function 1 1 1 |s=jω = = −j Ts Tjω Tω 1 P(ω) = 0, Q(ω) = − Tω Gjω = G (s)|s=jω = Figure 21: Nyquist plot Jakub Możaryn Basics of Automation and Control Integrator Amplitude diagram M(ω) = 1 Tω 1 Tω = −20 log T ω[dB] L(ω) = 20 log Phase diagram − T1ω 0 π = arctg(−∞) = − 2 φ(ω) = arctg Figure 22: Bode plots Jakub Możaryn Basics of Automation and Control Differentiator (ideal) a) Tachometric generator Figure 23: Differentiator - the tachometric generator Uy (t) = dθ(t) dt b) Liquid feeder (syringe) Figure 24: Differentiator - the liquid feeder Q(t) = A Jakub Możaryn dx(t) dt Basics of Automation and Control Differentiator (ideal) Dynamic equation y (t) = Td du(t) dt Static characteristic yst = 0 Figure 25: Static characteristic of the differentiator (ideal) Transfer function G (s) = Y (s) = Td s U(s) Jakub Możaryn Basics of Automation and Control Differentiator (ideal) Transient response 1 y (t) = L−1 [ust Td s] = ust Td δ(t) s Figure 26: Transient response of the differentiator (ideal) Jakub Możaryn Basics of Automation and Control Differentiator (ideal) Spectral transfer function Gjω = Td s|s=jω = jTd ω P(ω) = 0, Q(ω) = Td ω Figure 27: Nyquist plot Jakub Możaryn Basics of Automation and Control Differentiator (ideal) Amplitude diagram M(ω) = Td ω L(ω) = 20 log Td ω[dB] Phase diagram Td ω 0 π = arctg(∞) = 2 φ(ω) = arctg Figure 28: Bode plots Jakub Możaryn Basics of Automation and Control Differentiator (real) a) Absorber A du(t) dy (t) − = Q = k∆p dt dt ∆pA = Cy (t), ∆p = C y A A2 dy (t) A2 du(t) + y (t) = kC dt kC dt dy (t) du(t) T + y (t) = Td dt dt Figure 29: Differentiator - the absorber Jakub Możaryn Basics of Automation and Control Differentiator (real) b) RC network Figure 30: Differentiator - the RC network dU2 (t) dU1 (t) + U2 (t) = dt dt dy (t) du(t) T + y (t) = Td dt dt RC Jakub Możaryn Basics of Automation and Control Differentiator (real) Dynamic equation T dy (t) du(t) + y (t) = Td , dt dt Td T Static characteristic kd = yst = 0 Figure 31: Static characteristic of the differentiator (real) Transfer function G (s) = Y (s) Td s = U(s) Ts + 1 Jakub Możaryn Basics of Automation and Control Differentiator (real) Transient response y (t) = L−1 [ust t Td − t 1 Td s ] = ust e T = ust kd e − T s Ts + 1 T Figure 32: Transient response of the differentiator Jakub Możaryn Basics of Automation and Control Differentiator (real) Spectral transfer function Gjω = P(ω) = Td jω Td s |s=jω = Ts + 1 Tjω + 1 Td T ω 2 , T 2 ω2 + 1 Q(ω) = Td ω T 2 ω2 + 1 Figure 33: Nyquist plot Jakub Możaryn Basics of Automation and Control Differentiator (real) Amplitude diagram Td ω T 2 ω2 + 1 p L(ω) = [20 log Td ω−20 log T 2 ω 2 + 1] M(ω) = √ Phase diagram φ(ω) = arctg 1 π = − arctg(T ω) Tω 2 Figure 34: Bode plots Jakub Możaryn Basics of Automation and Control Second Order Lag Element Figure 35: Second Order Lag: a) the pneumatic positioner, b) the RLC network Jakub Możaryn Basics of Automation and Control Second Order Lag Element a) Pneumatic positioner m dy (t) d 2 y (t) + Cy (t) = Ap(t) +B 2 dt dt m d 2 y (t) B dy (t) A + y (t) = p(t) + 2 C dt C dt C Equation of motion T2 d 2 y (t) dy (t) + 2ξ + y (t) = ku(t) dt 2 dt Jakub Możaryn Basics of Automation and Control Second Order Lag Element b) RLC network U3 (t) = I (t)R dI (t) dt dU2 (t) I (t) = C dt U1 (t) = U2 (t) + U3 (t) + U4 (t) U4 (t) = L LC d 2 U2 (t) dU2 (t) + RC + U2 (t) = U1 (t) dt 2 dt Equation of motion T2 d 2 y (t) dy (t) + 2ξ + y (t) = ku(t) dt 2 dt Jakub Możaryn Basics of Automation and Control Second Order Lag Element Equation of motion T2 dy (t) d 2 y (t) + 2ξ + y (t) = ku(t) 2 dt dt 1 d 2 y (t) 2ξ dy (t) + y (t) = ku(t) + ω0 dt ω02 dt 2 d 2 y (t) dy (t) + 2ξω0 + ω02 y (t) = kω02 u(t) 2 dt dt where: 0 < ξ < 1 - the damping ratio, ω0 - the natural frequency. Static characteristic y = ku Jakub Możaryn Basics of Automation and Control Second Order Lag Element Transfer function G (s) = k Y (s) = 2 2 U(s) T s + 2ξTs + 1 G (s) = kω02 Y (s) = 2 U(s) s + 2ξω0 s + ω02 Transient response 1 kω02 y (t) = L ust 2 s s + 2ξω0 s + ω0 " # p 1 −ξω0 t = kust 1 − p e sin ω0 1 − ξ 2 t + ϕ 1 − ξ2 −1 p 1 − ξ2 ϕ = arctg ξ Jakub Możaryn Basics of Automation and Control Second Order Lag Element Figure 36: Transient response of Second Order Lag element Jakub Możaryn Basics of Automation and Control Second Order Lag Element Figure 37: Influence of values of the damping ratio ξ on the transient response of the Second Order Lag element Jakub Możaryn Basics of Automation and Control Second Order Lag Spectral transfer function G (jω) = kω02 [(ω02 − ω 2 ) − j2ξω0 ω] (ω02 − ω 2 )2 + (2ξω0 ω)2 P(jω) = kω02 [(ω02 − ω 2 )] (ω02 − ω 2 )2 + (2ξω0 ω)2 Q(jω) = − (ω02 k[2ξω03 ω] − ω 2 )2 + (2ξω0 ω)2 Amplitude diagram kω02 (ω02 − ω 2 )2 + (2ξω0 ω)2 q L(ω) = 20 log kω02 − 20 log (ω02 − ω 2 )2 + (2ξω0 ω)2 M(ω) = Phase diagram φ = −arctg 2ξω0 ω ω02 − ω 2 Jakub Możaryn Basics of Automation and Control Second Order Lag Figure 38: Nyquist plot Jakub Możaryn Figure 39: Bode plots Basics of Automation and Control Delay Figure 40: Delay - the belt conveyor system where: Q1 , Q2 - streams of mass, at the beginning and at the end of the belt conveyor system. Q2 (t) = Q1 (t − T0 ), T0 = L v Equation of motion y (t) = u(t − T0 ) where: T0 - the transport delay. Jakub Możaryn Basics of Automation and Control Delay Dynamics equation y (t) = u(t − T0 ) Static characteristic yst = ust Transfer function G (s) = Y (s) = e −T0 s U(s) Jakub Możaryn Figure 41: Static characteristic of the delay Basics of Automation and Control Delay Transient response 1 y (t) = L−1 [ust e −T0 s ] = ust 1(t − T0 ) s Figure 42: Transient response of the delay Jakub Możaryn Basics of Automation and Control Delay Spectral transfer function G (jω) = e −jT0 ω P(ω) = cos (−T0 ω) Q(ω) = sin (−T0 ω) Figure 43: Nyquist plot Jakub Możaryn Basics of Automation and Control Delay Amplitude diagram M(ω) = 1, L(ω) = 0 Phase diagram φ(ω) = −T0 ω Figure 44: Bode plots Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 4 - Block Diagram Models Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Basics of Automation and Control Introduction Block diagram model Block diagram model (structural): Graphical representation of interrelationships between the parts of analyzed system, i.e. there are given directions of signal flow and the relationships between input and output signals of all components of the analyzed system. A block diagram, of either a single element or a complex system, is a form of a mathematical description of the systems function. It clearly expresses the dependence of the output signals from the input signal, if there is known information about properties (the transfer functions) of its components. Block diagrams consists of unidirectional, operational blocks that represent the transfer function. Jakub Mozaryn Basics of Automation and Control Introduction Figure 1: Example of block diagram model Jakub Mozaryn Basics of Automation and Control Elements of block diagrams Block: A rectangle with arrows representing input and output signals. Inside rectangle the transfer function is written. y (s) = G (s)u(s) (1) Pickoff point (information point): Represents device that allow to retrieve the information and send it to several branches of the system. Summary junction: represents the device that allow an algebraic summation of signals and the signs of signals are distinguished. z =u−y Jakub Mozaryn (2) Basics of Automation and Control Types of connections in the block diagram models Using appropriate transformations, the block diagram representation can be often reduced to a simplified block diagram with fewer blocks than a original one, in which there are only 4 types of connections, called elementary connections. Elemetary connections are: 1 serial connection (chain, cascade), 2 parallel connection, 3 negative feedback loop, 4 positive feedback loop. There are also several rules that allow to trasform a complex block diagram to a simpler one. Jakub Mozaryn Basics of Automation and Control Types of connections in the block diagram models Connection type Serial connection (chain) Transfer function Block diagram G (s) = G1 (s)G2 (s) Parallel connection G (s) = ±G1 (s)±G2 (s) Negative feedback loop G (s) = ±G1 (s) 1 + G1 (s)G2 (s) Positive feedback loop G (s) = ±G1 (s) 1 − G1 (s)G2 (s) Jakub Mozaryn Basics of Automation and Control Block diagram transformations - pickoff points Moving pickoff point ahead of the block Changing the order of pickoff points Moving pickoff point behind the block Jakub Mozaryn Basics of Automation and Control Block diagram transformations - summary junctions Moving a summary junction behind a block Moving a summary junction ahead of a block Separation of a multiinput summary junction Changing the order of summary junctions Jakub Mozaryn Basics of Automation and Control Block diagram transformations - pickoff point and summary junctions y (s) = u1 (s) − u2 (s) Jakub Mozaryn Basics of Automation and Control (3) Block diagram transformations - example 1, solution 1 Simplify the following block diagram where: 1 and 2 - summary junctions. Jakub Mozaryn Basics of Automation and Control Block diagram transformations - example 1, solution 1 The block diagram can be simplified using the following rules: a) moving summary junction (2) behind the block, b) changing the order of summary junctions (1) and (2). Jakub Mozaryn Basics of Automation and Control Block diagram transformations - example 1, solution 1 where G′ (s) = 1 + G′′ (s) = 1 G1 (s) G1 (s) 1 − G1 (s)G2 (s) (4) (5) finally G( s) = 1 + 1 G1 (s) 1 + G1 (s) = G1 (s) 1 − G1 (s)G2 (s) 1 − G1 (s)G2 (s) Jakub Mozaryn Basics of Automation and Control (6) Block diagram transformations - example 1, solution 2 The block diagram can be simplified using the following rules: a) moving summary junction (1) ahead of the block, b) changing the order of summary junctions (1) and (2). G( s) = [1 + G1 (s)] 1 1 + G1 (s) = 1 − G1 (s)G2 (s) 1 − G1 (s)G2 (s) Jakub Mozaryn Basics of Automation and Control (7) Multi-input components - Lever Where: x1 , x2 , y - displacements. Equation of motion: y (s) = b a x1 (s) + x1 (s) a+b a+b Jakub Mozaryn Basics of Automation and Control (8) Multi-input components - Hydraulic servodrive Figure 2: Hydraulic servodrive - with spool valve Jakub Mozaryn Basics of Automation and Control Multi-input components - Hydraulic servodrive Figure 3: Hydraulic servodrive - with spool valve Where: x1 , x2 , y - displacements. Equation of motion: y (s) = 1 (x1 (s) + x2 (s)) Ts Jakub Mozaryn Basics of Automation and Control (9) Multi-input components - Absorber Figure 4: Absorber/Damper Jakub Mozaryn Basics of Automation and Control Multi-input components - Absorber Equation of motion: y (s) = Ts 1 x1 (s) + x2 (s) Ts + 1 Ts + 1 Figure 5: Absorber: A - surface, Q flow, x1 , x2 , y , - displacements, C spring constant, α - valve constant Jakub Mozaryn Basics of Automation and Control Construction of block diagram models The block diagram enables to determine the role and place of each element present in the system and how this element influences the processing of information. In order to construct the block diagram model, the following steps should be taken: 1 Identify interactions, caused by changes in the value of the input signal. 2 Distinguish the elemets that process these interactions (blocks in the block diagram). 3 Determine the transfer fuctions of distinguished elements. REMARK: The number of elements present in the block diagram may be larger than the number of structural elements in the block diagram - since some components may be influenced by more than one input. Jakub Mozaryn Basics of Automation and Control Construction of block diagram model - Mechanical feedback 1 Jakub Mozaryn Basics of Automation and Control Construction of block diagram models - Mechanical feedback 1 Transfer function G (s) = = b a 1 b Ts a + b 1 = a 1 1+ a + b Ts 1 a+b T s +1 a Static characteristic y= Jakub Mozaryn a x b Basics of Automation and Control Construction of block diagram models - Mechanical feedback 2 Jakub Mozaryn Basics of Automation and Control Construction of block diagram models - Mechanical feedback 2 Jakub Mozaryn Basics of Automation and Control Construction of block diagram models - Mechanical feedback 2 Substitution A= a e − a+b e +b (10) Transfer function G (s) = 1 b b 1 Ts 1 = a + b Ts + A a + b 1 + A Ts Static characteristic y= b x A(a + b) Jakub Mozaryn Basics of Automation and Control (11) (12) Automation Systems Lecture 5 - Stability of linear dynamic systems Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Automation Systems Introduction Stability A stable system is a dynamic system with a bounded response to a bounded input Stable system - if pushed out a state of equilibrium (considered operating point P) returns to the state of equilibrum (to some state K ) after the termination of factors (disturbances d) that pushed the system from a state of equilibrum. In the case of linear time-invariant systems - the behavior of the system after the termination of an action, that pushed the system out of the equilibrum state, is a characteristic feature of the system and does not depend on the type of the action before it’s termination. (simple analysis) In the case of nonlinear systems - their behavior, as an effect of an action (signal), that pushed the system out of the equilibrum point, can depend on the type and the magnitude of the action before it’s termination. (complicated analysis) Jakub Mozaryn Automation Systems Stability There are three types of behavior after pushing a system out of the equilibrum point: 1 The system returns to the equilibrium state in the operating point prior to action that pushed system out of balance - asymptotical stability, 2 The system returns to equilibrium state in the operationg point other than one present, when action pushed system out of balance non-asymptotical stability, neutral, marginal 3 A system doesn’t reach a state of equilibrum - unstability, instability; (IMPORTANT: a special case of such behavior are sustained oscillations with constant amplitude - system on the border of stability). Figure 1: a) unstability, b) stability, c) neutral Jakub Mozaryn Automation Systems Stability Figure 2: a) unstability, b) stability, c) neutral Jakub Mozaryn Automation Systems Impulse response Impulse response is the simplest case, that allows to determine the stability of the linear time invariant dynamical system (LTI). Figure 3: Impulse response examples for: 1, 2 - non-asymptoticaly stable systems, 3, 4 - asymptoticaly stable systems, 5, 6 - unstable systems, 7 system on the border of stability (sustained oscillations) Jakub Mozaryn Automation Systems Impulse response Impulse response is the simplest case, that allows to determine the stability of the linear time invariant dynamical system (LTI). Using the following formula y (t)|u(t)=δ = g (t) = L−1 {G (s)} (1) Some inverse Laplace transforms for impulse responses, useful for further analysis are: 1 1 −1 −1 L = 1(t) (2) L = e ∓αt (4) s s ±α 1 1 −1 −1 L =t (3) L = te ∓αt (5) s2 (s ± α)2 L −1 As + B s 2 + Cs + D r = Ae C 2 t cos(t C2 2B − AC C t D− )+ √ e 2 sin(t 4 4D + C 2 r D− (6) if: C 2 − 4D < 0. Jakub Mozaryn Automation Systems C2 ) 4 Impulse response - expotential functions Figure 4: a) y = exp(t), b) y = exp(−t) Jakub Mozaryn Automation Systems Stability Equation of motion of a LTI system: an dy (t) d (m) tu(t) du(t) d (n) y (t) + · · · + a1 + a0 = bm + · · · + b1 + b0 (7) (n) dt dt dt dt (m) Transfer function: G (s) = bm s m + · · · + b2 s 2 + b1 s + b0 Y (s) = U(s) an s n + · · · + a2 s 2 + a1 s + a0 (8) y (t)|u(t)=δ = g (t) = L−1 {G (s)} (9) Impulse response: Jakub Mozaryn Automation Systems Stability - asymptotical stability Case 1: Characteristic equation has only single roots with nonzero negative real parts. G (s) = L(s) an (s − s1 )(s − s2 ) . . . (s − sn ) (10) Using the partial fraction decomposition G (s) = C2 Cn C1 + + ··· + s − s1 s − s2 s − sn (11) Impulse response g (t) = L−1 {G (s)} = C1 e s1 t + C2 e s2 t + ... + Cn e sn t (12) Convergence check lim g (t) = 0 if s1 , . . . , sn < 0 t→∞ Jakub Mozaryn Automation Systems (13) Stability - asymptotical stability Figure 5: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability - asymptotical stability Case 2: Characteristic equation has one double root with nonzero real part, and the rest of roots are unique with nonzero negative real parts. G (s) = an (s − s1 )2 (s L(s) − s3 ) . . . (s − sn ) (14) Calculation of the step response and the convergence check G (s) = C1 C2 C3 Cn + + + ··· + s − s1 (s − s1 )2 s − s3 s − sn g (t) = L−1 {G (s)} = C1 e s1 t + C2 te s1 t + C3 e s3 t + ... + Cn e sn t lim g (t) = 0 if s1 , . . . , sn < 0 t→∞ (15) (16) (17) because, in case of s1 < 0, expotential function e s1 t decreases faster than coefficient t increases. Jakub Mozaryn Automation Systems Stability - asymptotical stability Figure 6: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability - neutral Case 3: Characteristic equation has one zero root, and the rest of roots are unique with nonzero real parts. G (s) = L(s) an (s)(s − s2 ) . . . (s − sn ) (18) Calculation of the step response and the convergence check G (s) = C1 C2 Cn + + ··· + s s − s2 s − sn (19) g (t) = L−1 {G (s)} = C1 + C2 e s2 t + ... + Cn e sn t (20) lim g (t) = C1 if s2 , . . . , sn < 0 (21) t→∞ Jakub Mozaryn Automation Systems Stability - asymptotical stability Figure 7: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability - instability Case 4: Characteristic equation has two (or more) zero roots, and the rest of roots are unique with nonzero real parts. C1 C2 Cn C3 L(s) = + + ··· + + an (s)2 (s − s3 ) . . . (s − sn ) s (s)2 s − s3 s − sn (22) Calculation of the step response and the convergence check G (s) = G (s) = L(s) C1 C2 C3 Cn = + + + ··· + 2 an − s3 ) . . . (s − sn ) s (s) s − s3 s − sn (23) g (t) = L−1 {G (s)} = C1 + C2 t + C3 e s3 t + ... + Cn e sn t (24) (s)2 (s lim g (t) = ∞ t→∞ system is instable Jakub Mozaryn Automation Systems (25) Stability - asymptotical stability Figure 8: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability - asymptotical stability Case 5: Characteristic equation has unique real roots with nonzero parts, and complex roots with negative nonzero imaginary parts. s1 = a + jb, G (s) = s2 = a − jb L(s) an (s 2 − 2as + a2 + b 2 )(s − s3 ) . . . (s − sn ) (26) (27) Calculation of the step response and the convergence check G (s) = C1 s + C2 C3 Cn + + ··· + (s 2 − 2as + a2 + b 2 ) s − s3 s − sn (28) C2 + aC1 at e sin(bt)+C3 e s3 t +...+Cn e sn t b (29) lim g (t) = 0 if a < 0, and Re(s3 ), . . . , Re(sn ) < 0 (30) g (t) = L−1 {G (s)} = C1 e at cos(bt)+ t→∞ Jakub Mozaryn Automation Systems Stability - asymptotical stability Figure 9: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability - sustaining oscillations Case 6: Characteristic equation has unique real roots with nonzero parts, and complex roots with zero real parts. s1 = jb, G (s) = (s 2 + s2 = −jb b 2 )(s L(s) − s3 ) . . . (s − sn ) (31) (32) Calculation of the step response and the convergence check G (s) = C1 s + C2 C3 Cn + + ··· + (s 2 + b 2 ) s − s3 s − sn (33) C2 sin(bt) + C3 e s3 t + ... + Cn e sn t (34) b If s3, . . . , sn < 0, then system is on the boundary of stability and has sustainig oscillations. g (t) = L−1 {G (s)} = C1 cos(bt) + Jakub Mozaryn Automation Systems Stability - asymptotical stability Figure 10: Placement of roots of the system on the s-plane Jakub Mozaryn Automation Systems Stability Summary: System is asymptoticaly stable, if it’s chatacteristic equation has roots with nonzero negative real parts. System is neutral, if it’s chatacteristic equation has one zero root and the rest of roots with nonzero negative real parts. System is unstable if it’s chatacteristic equation has more than one zero root or unique roots with positive real parts. System is on the boundary of stability (generates sustaining oscillations) if it’s chatacteristic equation has one zero root and doesn’t have unique roots with positive real parts, but has complex roots with zero real parts. Jakub Mozaryn Automation Systems Stability - stability criteria To determine the stability of linear (LTI) systems there is sufficient knowledge of the distribution of roots of characteristic equation on the complex plane (s-plane). The problems that arise within this method: Complicated calculations of roots of higher order algebraic equations. Characteristic equation of the system is sometimes unknown. Other methods of determining stability - the so-called: stability criteria do not require the determination of the roots of the characteristic equation: analytic criteria (Routh-Hurwitz, Routh), graphical-analytical criterion: (Nyquist). graphic criteria ( Michajlov,Evans-root locus), Jakub Mozaryn Automation Systems Routh-Hurwitz criterion Routh-Hurwitz criterion allows to verify that algebraic equation of any degree has only the roots with negative real parts. The use of RouthHurwitz criterion is limited to LTI systems with the transfer function in the analytical form. Routh-Hurwitz criterion Algebraic equation of the degree n with constant, real coefficients an d (n) y (t) d (n−1) y (t) dy (t) + a + · · · + a1 + a0 n−1 (n) (n−1) dt dt dt (35) has only the roots with negative real parts, when there are fulfilled folowing conditions (Hurwitz conditions). 1 CONDITION I: All coeficients a0 , a1 , ..., an , of this equation are non-zero, and have the same signs, 2 CONDITION II: All determinants of principal minors of so-called Hurwitz matrix ∆n are positive. Jakub Mozaryn Automation Systems Routh-Hurwitz criterion Hurwitz amtrix Hurwitz matrix has following form ∆n = an−1 an−3 an−5 − 0 0 0 an an−2 an−4 − 0 0 0 0 an−1 an−3 − 0 0 0 Jakub Mozaryn − 0 − 0 − 0 − − − a2 − a0 − 0 0 0 0 − a3 a1 0 Automation Systems 0 0 0 − a4 a2 a0 (36) n×n Routh-Hurwitz criterion Example: determine Hurwitz matrix for the 4th degree equation a4 s 4 + a3 s 3 + a2 s 2 + a1 s + a0 = 0 a3 a1 0 0 a4 a2 a0 0 0 a3 a1 0 ∆2 = a3 a4 a1 a2 ∆4 = 0 a4 a2 a0 (37) (38) It’s primary determinants are: ∆3 = a3 a4 0 Jakub Mozaryn a1 a2 a3 0 a0 a1 Automation Systems (39) (40) Routh-Hurwitz criterion - example H1 Determine the value of gain kp that will ensure the stability of the control system. Figure 11: Block diagram - example H1 Jakub Mozaryn Automation Systems Routh-Hurwitz criterion - example H1 Gs = 1 1 (Ts+1)4 1 + (TS+1) 4 = 1 (Ts + 1)4 + kp (41) Characteristic equation: (Ts + 1)4 + kp = 0 Jakub Mozaryn Automation Systems (42) Routh-Hurwitz criterion - example H1 Characteristic equation: (Ts + 1)4 + kp = 0 (43) T 4 s 4 + 4T 3 s 3 + 6T 2 s 2 + 4Ts + 1 + kp = 0 (44) therefore 4 a4 = T , 3 a3 = 4T , 2 a2 = 6T , a1 = 4T , a0 = 1 + kp (45) I. Hurwitz condition will be fulfilled if a0 = 1 + kp > 0, which gives kp > −1 Jakub Mozaryn Automation Systems (46) Routh-Hurwitz criterion - example H1 Hurwitz matrix ∆4 = a3 a1 0 0 a4 a2 a0 0 0 a3 a1 0 0 a4 a2 a0 = 4T 3 4T 0 0 II. Hurwitz condition will be fulfilled if 4T 3 det(∆2 ) = det 4T 4T 3 4T det(∆3 ) = det 0 Jakub Mozaryn 4T 6T 2 1 + kp 0 4T 6T 2 4T 6T 2 1 + kp 0 4T 3 4T 0 0 T4 6T 2 1 + kp (47) >0 (48) 0 4T 3 > 0 4T (49) Automation Systems Routh-Hurwitz criterion - example H1 det(∆2 ) = 24T 5 − 4T 5 = 20T 5 > 0 6 6 6 6 6 (50) 6 det(∆3 ) = 96T − 16T − 16T kp − 16T = 64T − 16T kp > 0 (51) therefore, from II Hurwitz condition kp < 4 (52) I. and II. Hurwitz conditions will be fulfilled if −1 < kp < 4 Jakub Mozaryn Automation Systems (53) Routh-Hurwitz criterion Remaks to Routh-Hurwitz criterion REMARK 1: Non-asymptotic stability occurs when in the characteristic equation of degree n coefficient a0 = 0 (equation has one zero root), while the remaining coefficients are positive. After dividing both sides of the equation by s yields the equation of order n − 1, for which the Routh-Hurwitz criterion should be applied, in order to check the sign of the other elements. If this equation satisfies the Hurwitz conditions it will mean that the system has one zero root and the remaining roots have negative real parts and the system is non-asymptotically stable - neutral. REMARK 2: Routh-Hurwitz criterion can’t be used to determine the stability of system with delays. Jakub Mozaryn Automation Systems Nyquist criterion Nyquist criterion enables to determine the stability of a closed system (with feedback loop) based on the frequency characteristics of the open system. Closed system transfer function GZ (s) = GR (s)G (s) 1 + G1 (s)G2 (s) (54) Open system transfer function G0 (s) = GR (s)G (s) Jakub Mozaryn Automation Systems (55) Simplified Nyquist criterion Simplified Nyquist criterion In the case when the characteristic equation of the open system does not have roots with positive real parts (may have any number of zero value roots), a closed system is stable where amplitude-phase characteristic of open system does not include point {−1, j0}. ’does not include’ means, that moving along the characteristics toward higher frequencies, point {−1, j0} stays to the left side of the characteristics. REMARK: Simplified Nyquist criterion doesn’t include cases when characteristic equation of open system, besides negative or zero value roots, has roots with positive real parts. Jakub Mozaryn Automation Systems Nyquist criterion Nyquist criterion properties frequency response of the open system, on the basis of which stability of the closed system is determined, can be easily determined analytically or experimentally. criterion allows not only a stability check, but also allows designing the system with specified dynamic properties, criterion allows stability check of systems with delays. Jakub Mozaryn Automation Systems Nyquist criterion Figure 12: The amplitude-phase characteristics of open system for 1) stable closed-loop system, 2) unstable closed-loop system Nyquist conditions (frequencies ω−π and ωp ) M(ω−π ) < 1; where ω−π : φ(ω−π ) = −π (56) φ(ωp ) > −π; where ωp : M(ωp ) = 1 (57) Jakub Mozaryn Automation Systems Nyquist criterion - characteristics examples Figure 13: The amplitude-phase characteristics of open-loop systems, corresponding to: stable closed-loop systems - characteristics doesn’t include point {−1, j0} Jakub Mozaryn Automation Systems Nyquist criterion - characteristics examples Figure 14: The amplitude-phase characteristics of open-loop systems, corresponding to: unstable closed-loop systems - characteristics include point {−1, j0} Jakub Mozaryn Automation Systems Nyquist criterion - Bode charakteristics Jakub Mozaryn Automation Systems Nyquist criterion - Bode charakteristics Nyquist conditions for amplitude and phase characteristics L(ω−π ) = 20 log M(ω−π ) < 0; (58) φ(ωp ) > −π; where L(ωp ) = 0 (59) Jakub Mozaryn Automation Systems Nyquist criterion - gain margin and phase margin Gain margin ∆M = 1 M(ω−π ) ∆L = −20 log M(ω−π ) (60) (61) Phase margin ∆φ = π + φ(ωp ) (62) Gain margin and phase margin of the stable system have positive values. INDUSTRIAL PRACTICE 30 deg < ∆φ < 60 deg (63) 2 ≤ ∆M ≤ 4 → 6dB ≤ ∆L ≤ 12dB (64) Jakub Mozaryn Automation Systems Nyquist criterion - example N1 Using Nyquist criterion determine the stability of the following system: G0 (s) = 1 s 3 + 3s 2 + s + 1 1 = − 3ω 2 + jω + 1 2 1 1 − 3ω − j(ω − ω 3 = 1 − 3ω 2 + j(ω − ω 3 ) 1 − 3ω 2 − j(ω − ω 3 ) 2 1 − 3ω −(ω − ω 3 ) + j (1 − 3ω 2 )2 + (ω − ω 3 )2 (1 − 3ω 2 )2 + (ω − ω 3 )2 G0 (jω) = (65) −iω 3 (66) Real part and imaginary part P(ω) = 1 − 3ω 2 ; (1 − 3ω 2 )2 + (ω − ω 3 )2 Jakub Mozaryn Q(ω) = −(ω − ω 3 ) (1 − 3ω 2 )2 + (ω − ω 3 )2 (67) Automation Systems Nyquist criterion - example N1 Real part P(ω) = 1 − 3ω 2 + (ω − ω 3 )2 (68) −(ω − ω 3 ) (1 − 3ω 2 )2 + (ω − ω 3 )2 (69) (1 − 3ω 2 )2 Imaginary part Q(ω) = ω P(ω) Q(ω) 0 1 0 p 1/3 0 -2.6 1 -0.5 0 ∞ 0 0 Jakub Mozaryn Automation Systems Real shape of Nyquist diagram - MATLAB Jakub Mozaryn Automation Systems Nyquist criterion - example N2 Using Nyquist criterion determine the stability and gain/phase margins of the following system: G0 (s) = 10 1 (0.1s + 1)(0.001s + 1) 0.3s Jakub Mozaryn Automation Systems (70) Nyquist criterion - example N2 G0 (s) = G1 (s)G2 (s)G3 (s)G4 (s) (71) therefore 1 1 1 0.1s + 1 0.01s + 1 0.3s (72) In the case of serial connection the Bode characteristics of each elements are summed. G0 (s) = 10 L0 (ω) = L1 (ω) + Lω + L3 (ω) + L4 (ω) (73) φ0 (ω) = φ1 (ω)+φω +φ3 (ω)+φ4 (ω) (74) Jakub Mozaryn Automation Systems Automation Systems Lecture 6 - Controller and single-loop control system Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Automation Systems Controller Figure 1: Place of the controller in the control system (the flow process with the valve eg. gas pipelines, wastewater plants) controlled variable: y (t), process variable (PV ) : ym (t), set point (SP): w (t), Jakub Mozaryn control variable (sym. CV ): u(t) = f (e(t)), control error: e(t) = SP − PV , Automation Systems Controller Role of the controller Controller generates the control signal u(t) (CV, Control Variable) based on the comparison of output signal ym (t)(PV, Process Variable) generated by the sensor that represents the output signal y (t) (controlled variable) with the reference signal yr (t) (SP, Set Point). The result of this comparison is error signal, called Deviation of the Process Variable, defined as: e(t) = ym (t) − yr (t); ⇒ e = PV − SP Jakub Mozaryn Automation Systems (1) Structures of the control systems single loop Figure 2: Structure of the control system - version 1 (w (t) = yr (t)) Figure 3: Structure of the control system - version 2 (w (t) = yr (t)) Jakub Mozaryn Automation Systems Role of the controller - Steady State Figure 4: Structure of the control system - version 2 (w (t) = yr (t)) In the steady state, when e(t) = 0, the controller should generate a control signal which causes activation of the actuator ensuring achievement of the predetermined value of the Controlled Variable - the operation point. Jakub Mozaryn Automation Systems Role of the controller - Set Point Figure 5: Structure of the control system - version 2 Set Point following: The occurence of the positive deviation e(t) > 0 (by increasing the setpoint yr (t)) causes an increase of the control value u and, consequently, the expected increase in the value of the controlled variable (y (t)). Jakub Mozaryn Automation Systems Role of the controller - Disturbances Figure 6: Structure of the control system - version 2 Disturbance minimization: Occurence of the positive deviation e(t) > 0 (by decreasing the controlled variable y (t) due to disturbances) increase the value of the controlled variable u(t) that compensates the impact of dusturbances d(t) on the process. Jakub Mozaryn Automation Systems Structures of the control systems - normal and reverse modes Normal mode In the case of the process, where an increase of the control signal u(t) is connected with a decrease of the output signal (the transfer function Gr (s) is negative), the negative feedback can be obtained as follows: enormal (t) = ym (t) − yr (t). (2) Reverse mode In the case of process, in which an increase of the control signal u(t) causes an increase in the output (the transfer function Gob (s) is positive), the following action of the controller shall be used to obtain the negative feedback: ereverse (t) = yr (t) − ym (t). (3) Jakub Mozaryn Automation Systems Structures of the control systems - normal and reverse modes The increase in the signal from the The increase in the signal from the controller (u(t)) closes the valve - controller (u(t)) opens the valve normal mode. reverse mode. Jakub Mozaryn Automation Systems Technical realization of controllers Figure 7: Technical realization of controllers Jakub Mozaryn Automation Systems Classification of the controllers - pt. 1 Controller type Ctiteria Type of the processed signals: analogous digital The way of influence on the object: continous non-continous Compliance with the law of superposition: linear nonlinear Destination: specialized universal Jakub Mozaryn Automation Systems Classification of the controllers - pt. 2 Controller type Ctiteria Type of implementation: mechanical pneumatic hydraulic electrical Algorithm of control action: PID controllers other (LQR, state-space, predictive) The energy required for operation: direct action indirect action Jakub Mozaryn Automation Systems PID controllers Control Algorithm Dynamic properties of controllers are realized by the control algorithm. The most commonly used control algorithm (95 %) is called PID algorithm (Proportional - Integral - Derivative). It is possible to realize simpler algorithms: P, PI, PD, by setting gains of PID controller (kP , Ti , Td ). P controller ∆u(s) = kp e(s) (4) ∆u(s) 1 = e(s) Ti s (5) ∆u(s) 1 = kp 1 + e(s) Ti s (6) Gr (s) = I controller Gr (s) = PI controller Gr (s) = Jakub Mozaryn Automation Systems Transfer functions of PID controllers PD controller - ideal Gr (s) = ∆u(s) = kp (1 + Td s) e(s) (7) PD controller - real (the ideal derivative part is substituted with the real derivative part) Gr (s) = ∆u(s) Td s = kp 1+ T e(s) d s +1 kd Jakub Mozaryn Automation Systems (8) Transfer functions of PID controllers PID controller - ideal Gr (s) = 1 ∆u(s) = kp (1 + + Td s) e(s) Ti s (9) PID controller - real (the ideal derivative part is substituted with the real derivative part) Gr (s) = ∆u(s) 1 Td s = kp 1+ + T e(s) Ti s d s +1 kd Jakub Mozaryn Automation Systems (10) Block diagram of PID controller PID controller - real Gr (s) = Td s 1 ∆u(s) = kp + 1 + Td e(s) Ti s s +1 kd Figure 8: Block diagram of PID controller - paralell realization Jakub Mozaryn Automation Systems (11) P controller Dynamics equation of P controller ∆u(t) = kp e(t) (12) ∆u(t) = u(t) − up (13) u(t) = kp e(t) + up (14) where: kp - proportionl gain, up - operating point. Proportional range xp = 1 100% kp (15) The proportional range describes the percentage (in relation to the full range of the signal) of the change in the deviation e(t) that is required to induce changes of the control signal u(t) of the full range. Jakub Mozaryn Automation Systems I controller Transfer function Gr (s) = Ti 1 ∆u(s) = e(s) Ti s (16) d∆u(t) = e(t) dt (17) where ∆u(t) = u(t) − u(0) (18) Step response (the response to the step function, 2 components) u(t)|e(t)=e0 1(t) 1 = ∆u(t)+u(0) = u(0)+ Ti Zt e(τ )dτ = u(0)+e0 t (19) Ti 0 Static characteristic e=0 Jakub Mozaryn Automation Systems (20) I controller Figure 9: Step response of I controller Jakub Mozaryn Figure 10: Static characteristic of I controller - astatic algorithm Automation Systems PI controller Transfer function Gr (s) = 1 ∆u(s) = kp (1 + ) e(s) Ti s 1 ∆u(t) = u(0) + kp e(t) + Ti (21) Zt e(τ )dτ (22) 0 Step response (the response to the step function, 2 components) ∆u(t)|e(t)=e0 1(t) = e0 kp 1(t) + e0 kp t Ti u(t)|e(t)=e0 1(t) = ∆u(t) + u(0) = e0 kp 1(t) + e0 kp (23) t + u0 Ti (24) Static characteristics e=0 Jakub Mozaryn Automation Systems (25) PI controller Figure 11: Step response of PI controller Integral time constant Ti (double time) The component that describes an integral action increases with time from an initial value, reaching in time t = Ti a value of the proportional component, which means double the gain in the output signal relative to the proportional component. Jakub Mozaryn Automation Systems PD controller - ideal Transfer function ∆u(s) = kp (1 + Td s) e(s) (26) Step response (the response to the step function, 2 components) Gr (s) = ∆u(t)|e(t)=e0 1(t) = kp e0 [1 + δ(t)] (27) REMARKS: PD algorithm doesn’t have technical realisation because 1 kd = → ∞. Td The ideal PD controller is not used, because the dynamics of the actual devices requires a specific signal duration to be able to react to change (delay). Jakub Mozaryn Figure 12: Step response of PD controller (ideal) Automation Systems PD controller - real Transfer function Td s Td s +1 kd (28) Step response (respone to the step function, 2 components) Gr (s) = kp 1 + −kd t ∆u(t)|e(t)=e0 1(t) = kp e0 [1+kd e Td ] (29) Jakub Mozaryn Figure 13: Step response of PD controller (real) Automation Systems PD controller Figure 14: Ramp response of PD controller - (a) ideal and (b) real Derivative time constant - Td (lead time) The ramp response of the PD controller (ideal / real) explains the name of the lead time of Td - in the case of ramp input, value of the control variable as the sum of the components P and D is achieved earlier by the time Td than value of the component P. Jakub Mozaryn Automation Systems PID controller - ideal Transfer function 1 ∆u(s) = kp 1 + + Td s Gr (s) = e(s) Ti s (30) Step response (the response to the step function, 3 components) ∆u(t)|e(t)=e0 1(t) = kp e0 [1+ t +δ(t)] Ti (31) Jakub Mozaryn Figure 15: Step response of PID controller (ideal) Automation Systems PID controller - real Transfer function Td s t Gr (s) = kp 1 + Ti + Td s +1 kd (32) Step response (the response to the step function, 3 components) ∆u(t)|e(t)=e0 1(t) = kp e0 [1+ −kd t +kd e Td ] Figure 16: Step response of PID Ti controller (real) (33) Jakub Mozaryn Automation Systems PID controller - real Jakub Mozaryn Automation Systems Automation Systems Lecture 7 - Quality of Control System and PID Controller Tuning Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Automation Systems Quality of the control system Apart from the most important requirement of asymptotic stability, there are imposed additional requirements on control systems, concerning the transient (dynamic) response and steady states. They are generally referred to as quality requirements of the control system. The requirements related to the steady state are formulated by determining the so-called static accuracy of the control system - permissible values of deviations of the system output from the set point in steady states (steady state errors) in the case of disturbances or setpoint changes. Requirements related to the transient response in the control systems are determined by a number of indices, generally called dynamic quality indices of the control system. Jakub Mozaryn Automation Systems Quality of the control system The task of the control system is to minimize the deviation from the setpoint (when the time approaches infinity) described as an error in steady state: e(t) = ez (t) + ew (t), (1) where ez (t) - error caused by disturbance, ew (t) - error caused by change of the set point. Jakub Mozaryn Automation Systems Quality of the control system When rating the quality of the control LTI system, because of the superposition property, both components of the steady state error e(t) = ez (t) + ew (t), can be analyzed separately. Jakub Mozaryn Automation Systems Steady state error caused by disturbance Transfer function Gz (s) = ∆ym (s) ez (s) ±Gz (s)Gob (s) = = z(s) z(s) 1 + Gob (s)Gr (s) ez (s) = ∆ym (s) = ±Gz (s)Gob (s) · z(s) 1 + Gob (s)Gr (s) (2) (3) Steady state error caused by disturbance ezst. = lim ez (t) = lim s · ez (s) t→∞ ezst. = lim s · s→0 s→0 ±Gz (s)Gob (s) · z(s) 1 + Gob (s)Gr (s) Jakub Mozaryn Automation Systems (4) (5) Steady state error caused by change of the set point Jakub Mozaryn Automation Systems Steady state error caused by change of the set point Jakub Mozaryn Automation Systems Steady state error caused by change of the set point Transfer function Gew (s) = ew (s) −1 = ∆w (s) 1 + Gob (s)Gr (s) (6) −1 ∆w (s) 1 + Gob (s)Gr (s) (7) ew (s) = Steady state error caused by change of the set point ewst. = lim ew (t) = lim s · ew (s) t→∞ ewst. = lim s · s→0 s→0 −1 ∆w (s) 1 + Gob (s)Gr (s) Jakub Mozaryn Automation Systems (8) (9) Steady state error - example Determine the steady state error of the control system shown in the figure, caused by a step change of disturbances z(t) = 2 and a step change of the setpoint ∆w (t) = 5. Assume, that in the control system there is used: P controller, PD controller, PI controller. Jakub Mozaryn Automation Systems Steady state error - example Transfer function Gob (s) = kob (Ts + 1)4 (10) P controller Gr (s) = kp (11) Gr (s) = kp (1 + Td s) (12) 1 Gr (s) = kp 1 + Ti s (13) PD controller PI controller Disturbance z(t) = 2 → z(s) = 2 s (14) Change of the set point ∆w (t) = 5 → ∆w (s) = Jakub Mozaryn 5 s Automation Systems (15) Steady state error caused by the disturbance - example, P controller ezst. = lim ez (t) = lim s t→∞ s→0 Gob (s) z(s) 1 + Gob (s)Gr (s) (16) P controller ezst.P = lims→0 s lims→0 2 Gob (s) = 1 + Gob (s)Gr (s) s kob kob · 2 (Ts + 1)4 · 2 = lims→0 kob (Ts + 1)4 + kob · kp 1+ kp 4 (Ts + 1) (17) Steady state error caused by the disturbance - P controller ezst.P = Jakub Mozaryn kob · 2 1 + kob kp Automation Systems (18) Steady state error caused by the disturbance - example, PD controller Gob (s) z(s) 1 + Gob (s)Gr (s) (19) kob (Ts + 1)4 · 2 ezst.PD = lims→0 = kob 1+ k (1 + T s) p d (Ts + 1)4 kob · 2 = lims→0 (Ts + 1)4 + kob · kp (1 + Td s) (20) ezst. = lim ez (t) = lim s t→∞ s→0 PD controller Steady state error caused by the disturbance - PD controller ezst.PD = Jakub Mozaryn kob · 2 1 + kob kp Automation Systems (21) Steady state error caused by the disturbance - example, PI controller Gob (s) z(s) 1 + Gob (s)Gr (s) (22) kob (Ts + 1)4 · 2 ezst.PI = lims→0 = kob 1 1+ k (1 + ) p (Ts + 1)4 Ti s kob · 2 = lims→0 =0 1 (Ts + 1)4 + kob · kp (1 + ) Ti s (23) ezst. = lim ez (t) = lim s t→∞ s→0 PI controller Steady state error caused by the disturbance - PI controller ezst.PI = 0 Jakub Mozaryn Automation Systems (24) Steady state error caused by the disturbance - summary P controller ezst.P = kob · 2 1 + kob kp (25) ezst.PD = kob · 2 1 + kob kp (26) PD controller PI controller ezst.PI = 0 Jakub Mozaryn Automation Systems (27) Steady state error caused by change of the set point example, P controller ewst. = lim ez (t) = lim s t→∞ s→0 −1 ∆w (s) 1 + Gob (s)Gr (s) (28) P controller ewst.P = lim s s→0 5 −1 = lim s→0 1 + Gob (s)kp s −5 −5 = kob 1 + kob kp 1+ kp (Ts + 1)4 (29) Steady state error caused by change of the set point - P controller ewst.P = Jakub Mozaryn −5 1 + kob kp Automation Systems (30) Steady state error caused by change of the set point example, PD controller −1 ∆w (s) 1 + Gob (s)Gr (s) (31) −1 5 1 + Gob (s)kp (1 + Td s) s −5 −5 = kob 1 + kob kp 1+ kp (1 + Td s) (Ts + 1)4 (32) ewst. = lim ez (t) = lim s t→∞ s→0 PD controller ewst.PD = lims→0 s = lims→0 Steady state error caused by change of the set point - PD controller ewst.PD = Jakub Mozaryn −5 1 + kob kp Automation Systems (33) Steady state error caused by change of the set point example, PI controller ewst. = lim ez (t) = lim s t→∞ s→0 −1 ∆w (s) 1 + Gob (s)Gr (s) (34) PI controller −1 5 1 s 1 + Gob (s)kp 1 + Ti s −5 =0 kob 1 1+ kp 1 + 4 (Ts + 1) Ti s ewst.PI = lims→0 s = lims→0 (35) Steady state error caused by change of the set point - PI controller ewst.PI = 0 Jakub Mozaryn Automation Systems (36) Steady state error caused by change of the set point summary P controller ewst.P = −5 1 + kob kp (37) ewst.PD = −5 1 + kob kp (38) PD controller PI controller ewst.PI = 0 Jakub Mozaryn Automation Systems (39) Conclusions about steady state errors In a control system with a static object and P or PD control algorithm there are non-zero steady state errors in relation to the disturbances or setpoint changes respectively. Increasing the proportional gain of the P or PD controller reduces the value of static error. Reducing the static deviation by increasing the gain kp is usually limited due to the stability of the system. (The system with PD controller reaches the border of stability at a higher gain than in the case of the regulator P). Integral action in the controller (PI, PID) provides zero steady state errors in relation to the disturbances or setpoint changes respectively. Jakub Mozaryn Automation Systems Dynamical quality of control system Requirements related to the transient response in the control systems are determined by a number of indices, generally called dynamic performance quality indicies of the control system. Groups of such indices are: transient response indices, indices descibing the frequency plots of the control system magnitude and phase margins, integral indices. Jakub Mozaryn Automation Systems Transient response indices To evaluate the transient response following indices are used: Maximum error (dynamical): em - the maximum value of error after the step change of disturbance or setpoint. Settling time: tr - it is the time between the moment of change of the set point w (t), or introduction of disturbances z(t) , and the moment when the error e(t) reaches a fixed value inside a boundary ∆e(t) (eg.∆e(t) = |0.05emax |). Overshoot: κ= e2 · 100% e1 where e1 and e2 are the first 2 consecutive biggest errors with opposite signs, assuming steady state value of output y (t) after transient response as the zero level (baseline). Jakub Mozaryn Automation Systems (40) Oscillatory transient response - disturbances Rysunek: Oscillatory transient response of the control system to disturbances: a) with non-zero steady state error, b) with zero steady state error Jakub Mozaryn Automation Systems Aperiodic transient response - disturbances Rysunek: Aperiodic transient response of the control system to disturbances: a) with non-zero steady state error, b) with zero steady state error Jakub Mozaryn Automation Systems Oscillatory transient response - setpoint Rysunek: Oscillatory transient response of the control system to setpoint change: a) with non-zero steady state error, b) with zero steady state error Jakub Mozaryn Automation Systems Aperiodic transient response - setpoint Rysunek: Aperiodic transient response of the control system to setpoint change: a) with non-zero steady state error, b) with zero steady state error Jakub Mozaryn Automation Systems Selection of controllers The basic premise when choosing the type of controller is dynamic characteristics of the controlled process. Rysunek: Control system Basic equations, describing the properties of the controlled processes Gob (s) = kob ∆ym (s) = e −T0 s , ∆u(s) Tz s + 1 Jakub Mozaryn Gob (s) = Automation Systems ∆ym (s) 1 −T0 s = e ∆u(s) Tz s Selection of controllers T0 < 0, 1 ÷ 0, 2 → - switch controllers (two- three- gain Tz controllers), for for 0, 1 ¬ dla T0 < 0, 7 ÷ 1 ÷ 0, 2 → continuous controllers, Tz T0 > 1 → impulse controllers (impulse output signals). Tz T0 is in the range of Tz 0, 2 ÷ 0, 7. Therefore, in industrial control systems the most common controllers are continuous, with typical control algorithms P, PI, PD and PID. In the case of industrial processes common ratio of Jakub Mozaryn Automation Systems Selection of controllers An analysis of the controller algorithm with the process model leads to the following conclusions concerning the selection of the control algorithm: PI algorithm provides good control only for the low frequencies of setpoint changes or disturbancs. Integral action is necessary to obtain zero error in steady state. PI algorithm provides wider bandwidth than PID algorithm, but poorer performance for the low frequencies of setpoint changes or disturbances. Derivative action is recommended for objects with higher order lag (such as thermal processes), because it allows the strong interaction of control even at small deviations. PD controller does not ensure the achievement of zero deviation in steady state . PID algorithm merges to a certain extent the advantages of PI and PD algorithms. Jakub Mozaryn Automation Systems Selection of controllers In practice, industrial controllers with the continuous algorithm are commonly used. Their parameters (settings) can be changed (adjusted) within a wide range, so they can control properly processes with different dynamical properties. Depending on the requirements of the stability and quality, the controller settings are selected using different selection procedures. There are following settings of PID controller: proportional gain kp = 0, 1 ÷ 100 integral gain Ti = 0, 1 ÷ 3600s derrivative gain Td = 0 ÷ 3600s Jakub Mozaryn Automation Systems Selection of controllers Methods of PID controllers tuning: Experimental methods - usually do not allow to achieve certain quality of the control system, eg. Ziegler – Nichols, Pessen, Hassen and Offereissen, Cohen-Coon, Ă„ström – Hagglund . Tabular methods - determining the set of controller parameters based on the parameters of a mathematical model of the controlled process and the required quality criterion of the control system (like the smallest overshoot, shortest settling time. Problem: often the minimization of different quality indices base on the contrary requirements). Autotuning, eg. relay method. Jakub Mozaryn Automation Systems Tuning of the controllers Ziegler-Nichols method Type 1: controller settings are selected on the basis of the parameters of the closed-loop control system, brought to the border of stability (by experimental excitation of the system). It can be used to controller tuning in the control systems where processes are described by static and astatic, higher order lag elements. Type 2: It can be used to controller tuning in the control systems where processes are described by static higher order lag elements, controller settings are selected based on the transient response of the controlled process. Jakub Mozaryn Automation Systems Ziegler-Nichols method Rysunek: Functional scheme of real control system Jakub Mozaryn Automation Systems Ziegler-Nichols method, steps 1-3 / 6 Step 1: In the manual mode (M) by changing control variable (CV), adjust the process variable ym (PV) to a state in which it is equal with the required setpoint Step 2: Set the controller to the proportional action (switch off integral and derivative actions), set the operation point control value of the controller equal to the setting obtained in Step 1 and set the initial value of the controller gain kp > 0. Step 3: Switch the system to automatic control (A) and if the system maintains equilibrium, by changing SP produce an impulse with some amplitude and pulse duration depending on the expected dynamics of the process; observe or record the change in the controlled variable. It is recommended to use a pulse with the amplitude of 10 % of the process value changes ym (PV) and the pulse duration of about 10 % of the estimated value of the time constant of the controlled process. Jakub Mozaryn Automation Systems Ziegler-Nichols method, steps 4-5 / 6 Step 4: If the transient response is underdamped, set higher values of the proportional gain (Steps 1-3) until the system be on the border of stability (constant oscillations). Step 5: From the steady oscillations read ’critical’ proportional gain kpkryt. and oscillation period Tosc . Step 6: Set the patameters according to the table of setings developed by Ziegler-Nichols. Rysunek: Changes of the process variable (PV) obtained during Ziegler – Nichols experiment Jakub Mozaryn Automation Systems Ziegler-Nichols method PID controller setting according to Ziegler-Nichols Controller type kp Ti Td P 0, 50kpkryt. PI 0, 45kpkryt. 0, 8Tosc • PID 0, 60kpkryt. 0, 5Tosc 0, 12Tosc Jakub Mozaryn Automation Systems Basics of Automation and Control Lecture 8 - Discrete process automation dr inż. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT dr inż. Jakub Możaryn Basics of Automation and Control Bibliography Holdsworth, B., Woods V.: Digital logic design. Newnes, 2002 Potton, A.: An introduction to digital logic. Macmillan Education, 1973 Donzelli, G., Oneto, L., Ponta, D., Aguita, D.: Introduction to digital system design. Springer, 2019 Hruz, B., Zhou, M.C.: Modelling and control of discrete event dynamics systems with Petri nets and other tools, Springer, 2007 dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Discrete processes Discrete processes are processes that are described with variables with a finite number of values; usually they are binary variables. Binary processes The processes that are described wit binary variables (two value; numerals 0 and 1) are called binary processes. Information about the state of such processes is conveyed by means of binary signals. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Figure: An example of a device for the implementation of a discrete process steel sheet bending. Marking: A - work-piece clamping, B - initial bend, C final bend. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Discrete process areas technological processes related to the production of elements/pieces, machine assembly, assembly of electronic components, packaging, dosing, orientation and feeding systems, handling systems, robotics, of the inter-operational transport devices, signaling, security, locks, flexible production systems, building automation, service. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Automation of discrete processes as a field of technology deals with the following issues: technical implementation of discrete technological processes and construction of technological equipment for individual processes, selection of drives, actuators and sensory elements, designing elementary process control systems (logic circuits, systems of medium scale of integration - functional blocks, computer control - programmable controllers), for controlling complex production systems (concurrent control, communication networks), planning and management (e.g. production). dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 1 Example 1 - ventilation control Binary output signal y of the room ventilation control system y = 0, the fan motor is not running, y = 1, the fan motor is running. (1) Signal y is generated from binary input signals x1 , x2 , and x3 T temperature relays located in this room with the same switching threshold: xi = 0 if T < Ti , (2) xi = 1 if T ≥ Ti dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 1 There are various variants of the dependence of the system output signal on the input signals - the truth table. State No. 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y1 0 0 0 0 0 0 0 1 y2 0 0 0 1 0 1 1 1 y3 0 0 or 0 or 0 or 0 or 0 or 0 or 1 1 1 1 1 1 1 y4 0 0 or 1 0 or 1 1 0 or 1 1 1 1 Table of logic values (Truth table) Table of logic values (Truth table) specify the output values of the system for all combinations of input signal values. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 1 The description of variants marked as y3 and y4 is ambiguous and requires additional explanation. State No. 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y3 0 0 or 0 or 0 or 0 or 0 or 0 or 1 1 1 1 1 1 1 y4 0 0 or 1 0 or 1 1 0 or 1 1 1 1 The operation of the system with the output signal y3 : if the following the next states system y3 = 0; if the following the next states system y3 = 1; state of inputs appeared: x1 = 0, x2 = 0, x3 = 0, then in the ventilation is turned off - the output signal of the state of inputs appeared: x1 = 1, x2 = 1, x3 = 1, then in the ventilation is turned on - the output signal of the dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 1 The description of variants marked as y3 and y4 is ambiguous and requires additional explanation. State No. 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y3 0 0 or 0 or 0 or 0 or 0 or 0 or 1 1 1 1 1 1 1 y4 0 0 or 1 0 or 1 1 0 or 1 1 1 1 In the case of a system with an output signal y4 , it turns on the ventilation when any two relays indicate that the set-point temperature is exceeded, and turns ventilation off when all relays have a zero signal. dr inż. Jakub Możaryn Basics of Automation and Control Combinatorial systems State number 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y1 0 0 0 0 0 0 0 1 y2 0 0 0 1 0 1 1 1 Combinatorial systems In systems that implement dependencies y1 = f1 (x1 , x2 , x3 ) i y2 = f2 (x1 , x2 , x3 ) the current state of the output signal depends only on current state of the input signals dr inż. Jakub Możaryn Basics of Automation and Control sequential systemse State number 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y3 0 0 or 0 or 0 or 0 or 0 or 0 or 1 1 1 1 1 1 1 y4 0 0 or 1 0 or 1 1 0 or 1 1 1 1 Sequential systems (Sytems with memory) In the case of systems with the output signals y3 and y4 , certain states of the input signals cause a change in the state of the output signal, after which this new state of the output signal lasts (it is ’stored’) until the state of the inputs appears which should result in another change of the output signal. Such systems are called systems with memory or sequential systems (Latin sequentia - sequence). dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Table of values (Truth table), is used to define the operation of combinational systems, but is not suitable for describing the operation of sequential systems; other methods are needed to determine how sequential systems operate. Process dependent sequential systems In the case of the discussed systems with the output signals y3 and y4 , the desired changes in the output signals are made on the basis of information about the state of the realized process (signals x1 , x2 and x3 ). Time dependent sequential systems These are systems without input signals - the desired changes in output signals are caused by an appropriately programmed timer. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation Figure: System a) combinatorial or sequential (process dependent), b) sequential (time dependent) dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 2 Przyklad 2 The sheet is folded in the pneumatic device. The A actuator clamps the sheet which is initially bent by the B actuator and finally bent by the C actuator. After placing the sheet, the operator calls series of actuators movements by pressing the appropriate ’START’ button. The course of these movements is presented in the so-called step diagram. The actuator control system can be implemented as a process-dependent or time-dependent system. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 2 Figure: Diagram of the actuator system for example 2 - sequential system dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - Example 2 In the case of process-dependent system, it is necessary to equip the actuators with sensors that detect the extreme positions of the actuator pistons. The signals of these sensors inform about the end of the appropriate movement of a given actuator and initiate the start of the next activity. Figure: Reed sensor detecting the position of the piston Figure: The location of the sensors detecting the position of the piston dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - process-dependent sequential systems In the case of implementing the control system as a process-dependent system, its input signals are the signal from the ’START’ button and the signals of sensors detecting positions of piston rods; output signals - signals causing actuator movements. Figure: Signals in process-dependent sequential systems - Example 2 A characteristic feature of the process is that the sequence of input signal changes is defined - it results from assumptions about the process flow. The sequential systems controlling such processes are linear program systems. dr inż. Jakub Możaryn Basics of Automation and Control Discrete process automation - time-dependent sequential systems Mechanical or electronic programmers with internal time measurement are used as time-dependent controlers. Sequential time-dependent systems are systems with no input signals; work without process supervison. Time-dependent systems implement only linear programs. dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes The numeric codes are divided into analytical non-analytical (symbolic) Analytical codes are the notation of an algebraic expression representing the given number. Any integer number can be expressed as 0 X ai 10i = an 10n + an−1 10n−1 + ... + a0 100 (3) i=n The meaning of individual variables depends on the position taken in the code notation; the decimal code is said to be positional code. The following notation is used: i – position number, 10i – i-th position weight, ai – i-th position code variable, 10 – base of the positional code (base of expansion). dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes For example 1989 = 1 · 103 + 9 · 102 + 8 · 101 + 9 · 100 (4) ’1989’ is the decimal notation of a number 1 · 103 + 9 · 102 + 8 · 101 + 9 · 100 (5) Therefore, notation of the number L= 0 X ai 10i = an 10n + an−1 10n−1 + ... + a0 100 (6) i=n In the decimal code: L10 = an an−1 ...a1 a0 coefficients an , ..., a0 (so-called code variables) can take values from 0 to 9. dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes Similarly, one can create analytical codes with different bases L= 0 X ai P i = an P n + an−1 P n−1 + ... + a0 P 0 (7) i=n If the analytical code is based on the number P (it can be an integer ≥ 2), then the code variables ai can take the values from 0 to P − 1 . A particularly important code is the so-called natural binary code with the base P = 2, in which code variables can only take two values: 0 and 1. A number expressed in natural binary code L2 = an an−1 ...a1 a0 is a notation of a number L2 = 0 X ai 2i = an 2n + an−1 2n−1 + ... + a0 20 i=n dr inż. Jakub Możaryn Basics of Automation and Control (8) Non-negative integer codes L10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 a3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 a2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 a1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 a0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 The disadvantage of the natural binary code is occurrence of changes of several code variables (say: a few bits) when going to an adjacent numerical value, e.g. when going from 7 to 8 all bits are changing. Table: Numbers 0 to 15 in natural binary code dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes In technical devices, information about the values of individual code variables is transferred by means of binary signals. Since it is not possible to force several signals to change exactly simultaneously, erroneous information appears when changing the transmitted numerical values. Figure: Illustration of the so-called reading ambiguity dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes Reading ambiguity does not occur in the case of the so-called unit-distance codes where a change in numerical value by 1 is always associated with a change in value of only one bit. Elementary unit distance codes are: Gray code, Gray +3 code, ring codes (eg. Johnson counter). Unit-distance codes are non-analytical (symbolic) codes - writing a number in such a code is not conventional notation of one mathematical formula for the encoded number. To read a number encoded in non-analytical code, one can Use code table or specific rule. dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes Numbers 0 to 15 in the Gray code The Gray code table has the characteristic axes of symmetry (blue lines); hence the names of the codes with this property - reflected codes dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes Numbers 0 to 15 in the Gray code and the Gray +3 code A) Gray code table, B) Gray +3 code table. dr inż. Jakub Możaryn Basics of Automation and Control Non-negative integer codes Gray code a3 , a2 00 Alternate form of Gray code table 01 11 10 00 0 7 8 15 a1 , a0 01 11 1 2 6 5 9 10 14 13 Figure: Graphical representation of the Gray code dr inż. Jakub Możaryn Basics of Automation and Control 10 3 4 11 12 Non-negative integer codes Gray code decoding One can use the following formula determining the absolute value of the weight Wk of the k -th position: |Wk | = k X 2i = 2k+1 − 1 (9) i=0 In the Gray code, the weights of odd ones from the left are positive, and the weights of even ones are negative. For example: (1101)g = (24 –1)–(23 –1) − (21 –1) = 15–7 + 1 = 9 (10) Converting the natural binary code to Gray’s code: values should be changed to opposite values for those items for which the higher position (in binary code) is 1. For example: (1000110)2 = (1100101)g dr inż. Jakub Możaryn Basics of Automation and Control (11) Ring codes (Johnson counter) Ring (and pseudo-ring) codes enable the encoding of even number sets. To encode a set containing n numbers, n2 bits are needed. For example Decimal number 0 1 2 3 4 5 6 7 dr inż. Jakub Możaryn a3 0 0 0 0 1 1 1 1 Code a2 a1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 a0 0 1 1 1 1 0 0 0 Basics of Automation and Control ’1-of-n’ code Codes of the type ’1-z-n’ enable encoding of any set of numbers (n - means the number of encoded elements). Therefore n binary variables are used to encode n elements. In each notation of a number, one variable has the value 1. Decimal number 0 1 2 3 4 5 a5 0 0 0 0 0 1 a4 0 0 0 0 1 0 Code a3 a2 0 0 0 0 0 1 1 0 0 0 0 0 a1 0 1 0 0 0 0 a0 1 0 0 0 0 0 Ring codes and ’1-of-n’ codes are non-minimal codes - they require more variables (bits) than the natural binary code or Gray code. dr inż. Jakub Możaryn Basics of Automation and Control Two-valued logical functions Logical functions Logical functions are functions whose independent variables and the dependent variable can have only a finite number of values. Two-valued logical functions Boolean functions whose independent and dependent variables can only take two values are called two-valued or bivalent logical functions. Two-value logical functions are used to describe the operation of discrete control systems. n Various binary logical functions with the number of arguments n are 22 . So there are only 4 binary unary functions, 16 binary functions, 256 ternary functions, etc. dr inż. Jakub Możaryn Basics of Automation and Control Unary logical functions The basic forms of describing logical functions are: tabular forms, algebraic description. Unary logical functions y = f (x) x 0 1 y 0 0 Constant zero y =0 x 0 1 y 0 1 x 0 1 Repetition (12) y =x y 1 0 x 0 1 Negation (13) dr inż. Jakub Możaryn y =x y 1 1 Constant one (14) Basics of Automation and Control y =1 (15) Binary logical functions Binary logical x1 x2 y0 0 0 0 0 1 0 1 0 0 1 1 0 functions y1 y2 0 0 0 0 0 1 1 0 y = f (x1 , x2 ) y3 y4 y5 0 0 0 0 1 1 1 0 0 1 0 1 Constant zero function, contradiction : y0 = 0 Conjunction, AND : y1 = x1 · x2 Prohibition by x2 , converse nonimplication : y2 = x1 ∆x2 = x1 → x2 = x1 · x2 Repetition x1 : y3 = x1 Prohibition by x1 , material nonimplication, abjuction : y4 = x2 ∆x1 = x2 → x1 = x1 · x2 Repetition x2 : y5 = x2 dr inż. Jakub Możaryn Basics of Automation and Control Binary logical functions Binary logical functions y = f (x1 , x2 ) x1 x2 y6 y7 y8 y9 y10 0 0 0 0 1 1 1 0 1 1 1 0 0 0 1 0 1 1 0 0 1 1 1 0 1 0 1 0 Exclusive OR, exclusive disjunction, XOR : y6 = x1 ⊕ x2 = x1 x2 + x1 x2 Alternation, disjunction : y7 = x1 + x2 Peirce function, alterative denial,NOR function: y8 = x1 ↓ x2 = x1 + x2 = x1 · x2 Logical biconditional, NXOR : y9 = x1 ≡ x2 = x1 · x2 + x1 · x2 Negation, logical complement, NOT x2 : y10 = x2 dr inż. Jakub Możaryn Basics of Automation and Control Binary logical functions Binary logical functions y = f (x1 , x2 ) x1 x2 y11 y12 y13 y14 y15 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 1 0 0 1 1 1 1 1 0 1 0 1 Material conditional : y11 = x2 → x2 = x1 + x2 Negation, logical complement, NOT x1 : y12 = x1 Converse : y13 = x1 → x2 = x1 + x2 Sheffer function, alternative denial, NAND : y14 = x1 /x2 = x1 · x2 = x1 + x2 Constant one, tautology: y15 = 1 dr inż. Jakub Możaryn Basics of Automation and Control textitBoole algebra Boole algebra deals with the dependencies between functions: alternative, conjunction, and negation. The functions alternative, conjunction and negation create the so-called functionally complete system. functionally complete system A functionally complete system is a set (set) of logical functions that enables the creation of algebraic notations of arbitrarily complex logical functions. Creating an algebraic notation of a logical function defined, for example, in the form of a verbal description, in a tabular form or otherwise, is called synthesis of this function, for which the knowledge of the Boolean algebra is necessary. The dependencies between the functions: alternative, conjunction and negation are expressed by a set of theorems (laws) called Boole’s algebra axioms. dr inż. Jakub Możaryn Basics of Automation and Control textitBoole algebra Boole’s algebra axioms Conjunction Alternation 0=1 (16) 1=0 (21) x ·0=0 (17) x +0=x (22) x ·1=x (18) x +1=1 (23) x ·x =x (19) x +x =x (24) x ·x =0 (20) x +x =1 (25) x1 · x2 = x2 · x1 Commutativity (26) x1 + x2 = x2 + x1 (27) Associativity x1 · (x2 · x3 ) = (x2 · x1 ) · x3 (28) x1 + (x2 + x3 ) = (x2 + x1 ) + x3 (29) dr inż. Jakub Możaryn Basics of Automation and Control Algebra Boole’a Distributivity of conjunction over disjunction (x1 + x2 ) · x3 = x1 · x3 + x2 · x3 (30) Distributivity of disjunction over conjunction (x1 · x2 ) + x3 = (x1 + x3 ) · (x2 + x3 ) (31) De Morgan laws x1 · x2 = x1 + x2 (32) x1 + x2 = x1 · x2 (33) Double negation law (involution law) x =x (34) On the basis of the above theorems, a number of other dependencies can be created that are useful in transforming logical functions. The symbols x0 , x1 , x2 , x3 in these statements can represent either a single argument or any complex logical function. dr inż. Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 8 - Discrete process automation dr inż. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT dr inż. Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 9 - Synthesis and minimization of the logical functions Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Synthesis of the logical functions Definitions - based on the function with three arguments - y = f (x1 , x2 , x3 ) Elementary logical product Any product of simple or negated arguments,eg. x1 · x3 , x1 · x2 · x3 Minterm Elementary logical multiplication, with all arguments of the given function, eg. K7 = x1 x2 x3 Elementary logical sum Any sum of simple or negated arguments, eg. x1 + x3 , x1 + x2 + x3 Maxterm Elementary logical sum, with all arguments of the given function, eg. D0 = x1 + x2 + x3 Successive states of arguments of a given function, e.g. state 011 (x1 = 0, x2 = 1, x3 = 1) form binary notations of decimal numbers, which we call state numbers (eg. the state number of binary number 011 is 3). Jakub Możaryn Basics of Automation and Control Synthesis of the logical functions State No 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 Minterms K0 = x1 x2 x3 K1 = x1 x2 x3 K2 = x1 x2 x3 K3 = x1 x2 x3 K4 = x1 x2 x3 K5 = x1 x2 x3 K6 = x1 x2 x3 K7 = x1 x2 x3 D0 D1 D2 D3 D4 D5 D6 D7 Maxterms = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 = x1 + x2 + x3 In table: Minterm K is denoted by the index i, if for i-th state of arguments it takes the value of 1. Maxterm D is denoted by the index i, if for i-th state of arguments it takes the value of 1. Jakub Możaryn Basics of Automation and Control Synthesis of the logical functions In table: Minterm K is denoted by the index i, if for i-th state of arguments it takes the value of 1. Maxterm D is denoted by the index i, if for i-th state of arguments it takes the value of 1. It should be noted that for the adopted method of numbering the minterms and the maxterms: minterm Ki takes the value of 1 only for the i-th state of arguments; is 0 for the remaining argument states, maxterm Di takes the value of 0 only for the i-th state of arguments; is 1 for the remaining argument states, The number of minterms and the number of maxterms are equal to the number of argument states. Jakub Możaryn Basics of Automation and Control Synthesis of the logical functions Any three-argument function (and similar functions with a different number of arguments) can be written in the so-called minterm canonical form : y = (x1 , x2 , x3 ) = y0 ·K0 +y1 ·K1 +y2 ·K2 +y3 ·K3 +y4 ·K4 +y5 ·K5 +y6 ·K6 +y7 ·K7 (1) where: yn is the value of the function’s dependent variable at the n-th argument state. Any three-argument function (and similar functions with a different number of arguments) can be written in the so-called maxterm canonical form : y = (x1 , x2 , x3 ) = (y0 + D0 )(y1 + D1 )(y2 + D2 )(y3 + D3 ) (y4 + D4 )(y5 + D5 )(y6 + D6 )(y7 + D7 ) Jakub Możaryn Basics of Automation and Control (2) Example: Synthesis of the logical functions Minterm canonical form: y = f (x1 , x2 , x3 ) = 1 · K0 + 1 · K1 + 0 · K2 + 0 · K3 + +1 · K4 + 1 · K5 + 1 · K6 + 1 · K7 (3) After the removal of the components with a value of 0 Figure: Truth table of the three-argument function y = f (x1 , x2 , x3 ) = K0 +K1 +K4 +K5 +K6 +K7 (4) This function can be represented in the symbolic (numerical) form: X y= 0, 1, 4, 5, 6, 7 (5) The proper notation of the minterm canonical form of a given function is: y = x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 Jakub Możaryn Basics of Automation and Control (6) Example: Synthesis of the logical functions Maxterm canonical form: y = f (x1 , x2 , x3 ) = (1 + D0 )(1 + D1 )(0 + D2 ) (0 + D3 )(1 + D4 )(1 + D5 )(1 + D6 )(1 + D7 ) (7) After the removal of the components with a value of 1 y = f (x1 , x2 , x3 ) = D2 · D3 Figure: Truth table of the three-argument function (8) This function can be represented in the symbolic (numerical) form: Y y= 2, 3 (9) The proper notation of the minterm canonical form of a given function is: y = (x1 + x2 + x3 )(x1 + x2 + x3 ) Jakub Możaryn Basics of Automation and Control (10) Synthesis of the logical functions Canonical forms are an algebraic form of representing of the arbitrarily complex logical functions. They are created using only three logical operations: disjunction, conjunction, and negation. Functionally complete set A set of logical functions that enables the creation of algebraic notations of any logical functions. Basic functionally complete set Set of logical functions: disjunction, conjunction, and negation. Functionally complete sets are eg. disjunction and negation, conjunction and negation, NOR function, NAND function. Jakub Możaryn Basics of Automation and Control Minimization of logical functions In general, using the laws of the Boolean algebra, canonical forms can be transformed to reduce the number of elementary logical operations involved, which is called minimization of logical functions. The basic activity when looking for the possibility of minimizing canonical forms is searching for pairs of minterms or maxterms over which the so-called minimization based on the distributivity operation can be performed. Distributivity operation - minterm canonical form Distributivity operation (concatenation) while minimizing canonical alternate form is a performing following operations a · b + a · b = a · (b + b) = a · 1 = a (11) where: a - the equal part of both elements, b - the variable with a negative sign. Example: x1 x2 x3 + x1 x2 x3 = x1 x2 Jakub Możaryn Basics of Automation and Control (12) Minimization of logical functions Distributivity operation - maxterm canonical form Distributivity operation (concatenation) while minimizing maxterm canonical form is a performing following operations (a + b)(a + b) = a + (bb) = a + 0 = a (13) gdzie: a represents the equal part of both elements, b - the variable with a negative sign Example: (x1 + x2 + x3 )(x1 + x2 + x3 ) = x1 + x2 (14) The minimization method consisting of successive transformations of the original notation of a function in canonical form is called algebraic transformation method. Jakub Możaryn Basics of Automation and Control Minimization of logical functions Other minimization methods: Quine–McCluskey method, Karnaugh′ s table method (K-table), only improve the searching procedure and performing the distributivity operation. The function form obtained by performing all possible simplifiaction based on concatenation in the minterm canonical form is called normal minterm form. The function form obtained by performing all possible simplifiaction based on concatenation in the minterm canonical form is called normal maxterm form. NOTE: Normal forms are not always a description that uses the smallest possible number of the logical operations. Jakub Możaryn Basics of Automation and Control Minimization of logical functions - factorization It is possible to reduce the number of logical operations in normal minterm form if from two or more elementary products it is possible to find a common factor (distributivity rule), eg. x1 x2 x3 + x1 x2 x3 = x1 (x2 x3 + x2 x3 ) (15) It is possible to reduce the number of logical operations in normal maxterm form if from two or more elementary sums it is possible to find a common factor (asociativity rule), eg. (x1 + x2 + x3 )(x1 + x2 + x3 ) = x1 + (x2 + x3 )(x2 + x3 ) Such operations are called logical factorization. Jakub Możaryn Basics of Automation and Control (16) Minimization of logical functions - Example Minterm canonical function y = x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 (17) There are following possibilities of minimizing y = x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + x1 x2 x3 + | {z } | {z } Figure: Truth table of the three-argument function + x1 x2 x3 + x1 x2 x3 = x1 x2 + x1 x2 + x1 x2 | {z } (18) The result shows the possibility of further minimization - the middle component can be minimized based on the first and to the third component. Jakub Możaryn Basics of Automation and Control Minimization of logical functions - Example By using the Boolean algebra theorem x + x = x, the middle term can be treated as if it occurred twice. Therefore: y = x1 x2 + x1 x2 + x1 x2 = x1 x2 + x1 x2 + x1 x2 + x1 x2 = x2 + x1 | {z } | {z } (19) The obtained form of the function y = x2 + x1 is a minimal form. Maxterm canonical form of the given function is following: y = (x1 + x2 + x3 )(x1 + x2 + x3 ) (20) The maxterms appearing in it differ in the negation sign for the x3 variable, so as a result of combining both factors, we get the following minimal form y = x1 + x2 = x2 + x1 Jakub Możaryn Basics of Automation and Control (21) Karnaugh table method Karnaugh tables are a specific form of function value tables Figure: Karnaugh table Figure: Truth table for 3-argument function Figure: Karnaugh table with the state numbers Jakub Możaryn Basics of Automation and Control Karnaugh table method In the Karnaugh tables, the values of the y dependent variable are typed into the table fields that match the argument values listed on the borders of the table. A characteristic feature of Karnaugh tables is that adjacent argument state values only differ by one position (argument values are consecutive numbers in Gray code). This allows the minterms or maxterms with numbers in the adjacent fields to be concatenated. Adjacent fields are e.g. fields 0 and 1, 0 and 2, 4 and 6, 0 and 4, etc. Figure: Karnaugh table with the state numbers Jakub Możaryn Basics of Automation and Control Karnaugh table method - minterm form Figure: Karnaugh table - concatenation of ones The function takes the value 1 in argument states 0 and 1, which means that minterm canonical form of the function is the logical sum of the minterms K0 and K1 that can be concatenated: y = K0 + K1 = x1 · x2 · x3 + x1 · x2 · x3 = x1 · x2 (22) The ones in fields 0 and 1 are said to be concatenated ones. Concatenation is determined directly by based on the same argument values for both fields. The fields 0 and 1 correspond to the values of x1 = 0 and x2 = 0; therefore y = 00− = x1 · x2 Jakub Możaryn Basics of Automation and Control (23) Karnaugh table method - maxterm form Figure: Karnaugh table - concatenation of zeros The function takes the value 0 in argument states 0 and 1, which means that maxterm canonical form of the function is the logical sum of the maxterms D0 and D1 that can be concatenated: y = D0 · D1 = (x1 + x2 + x3 ) · (x1 + x2 + x3 ) (24) The zeros in fields 0 and 1 are said to be concatenated zeros. Concatenation is determined directly by based on the same argument values for both fields. The fields 0 and 1 correspond to the values of x1 = 0 i x2 = 0; thus y = 00− = x1 + x2 Jakub Możaryn Basics of Automation and Control (25) Karnaugh table method Figure: Karnaugh tables for two- and four-argument functions The Karnaugha tables also allow the minimization of five- and sixargument functions. Jakub Możaryn Basics of Automation and Control Minimization of not-fully defined logical functions Not-fully defined logical functions are functions which for some argument states do not have specified values. In tables of values of such functions in undefined states, a dash is entered instead of the dependent variable value. In numerical notations of functions, the numbers of undefined states are given in parentheses, e.g. X y (x1 , x2 , x3 , x4 ) = 0, 1, 2, 3, 4, 9, 11(5, 7, 13, 15) (26) y (x1 , x2 , x3 , x4 ) = Y 6, 8, 10, 12, 14(5, 7, 13, 15) Jakub Możaryn Basics of Automation and Control (27) Minimization of not-fully defined logical functions Example: By concatenating ones together, the result is the normal minterm form of the function. In this case, it is preferable to assume the dependent variable with the value 1 in all unknown states. Figure: Karnaugh table - not-fully defined logical functions y = x1 · x2 + x1 · x3 + x4 Jakub Możaryn Basics of Automation and Control (28) Minimization of not-fully defined logical functions Example: By concatenating zeros together, the result is the normal maxterm form of the function. In this case, it is preferable to assume the dependent variable with the value 0 in few unknown states, and ones in the rest of the unknown states. Figure: Karnaugh table - not-fully defined logical functions y = (x2 + x3 ) · (x1 + x4 ) (29) Thus, the function obtained by concatenating zeros is different from the function obtained by concatenating ones - although the desired action is the same - the differences apply to undefined states. Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 9 - Synthesis and minimization of the logical functions Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 10 - Switching circuits. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Switching circuits Design of the combinatorial logic circuits Combinatorial logic circuits are realized using: switch and relay technology, from logical elements (gate networks), with the use of systems of medium scale of integration (MSI) – using function blocks (digital circuits, dozens of logic gates per chip), using computer technology e.g. programmable logic controllers (PLC’s). Switch A switch is an electrically operated element. It is a device having a contact or several contacts, the status of which (closing or opening) depends on the value of the input signal affecting the relay. Jakub Możaryn Basics of Automation and Control Switching circuits Normal state of the switch The condition in which the switch is not affected by external signals. Hence the names of the switches: SPST-NO (Single-Pole Single-Throw, Normally-Open) (NO), also called make contact, which is made up of two active elements that do not normally touch each other. SPST-NC (Single-Pole Single-Throw, Normally-Closed) (NC), also called break contact, which is made up of two active elements that in normal state do touch each other. Transfer contact (Single-pole Double-Throw - SPDT) form three contacts that act as NO and NC contacts. Jakub Możaryn Basics of Automation and Control Switching circuits Jakub Możaryn Basics of Automation and Control Switching circuits - Types Due to the function to be performed in a switching system we can distinguish between: Input switches, allowing the system to react to external signals; these are manually controlled switches (operator elements), mechanically, magnetically, temperature and pressure transmitters, etc. Relays, are used for processing and amplification of the signals provided by the input switches. Output switches, also known as contactors, are power-adapted to control actuators, e.g. motors, brakes, heaters, etc. Contactors are equipped with contacts adapted to conduct sufficiently large currents, necessary to supply various types of devices. Jakub Możaryn Basics of Automation and Control Switching circuits - Input switches Input switches Input switches, allowing the system to react to external signals; these are manually controlled switches (operator elements), mechanically, magnetically, temperature and pressure transmitters, etc. Figure 1: Input switches Jakub Możaryn Basics of Automation and Control Switching circuits - Sensors Figure 2: Symbols of electronic proximity sensors Inductive Sensor – an automation element that reacts when the metal is near its active surface (sensor field). Optical sensor – an automation element, it reacts to objects crossing the light beam between the transmitter and receiver or to the beam reflected from the object. Capacitive sensor – an automation element that reacts to approaching its active surface (sensor field) of any material (medium). Jakub Możaryn Basics of Automation and Control Switching circuits - Sensors Figure 3: Capacitive Sensor Jakub Możaryn Basics of Automation and Control Switching circuits - Relays Relays Relays, are used for processing and amplification of the signals provided by the input. Figure 4: Relay Jakub Możaryn Basics of Automation and Control Switching circuits - Relays Relays are used to: obtain the required number of contacts corresponding to the same input signal, converting low-power signals to equivalent but higher power, transmitting signals between circuits with different voltages or other types of current (DC-AC), implementation of feedback in switching sequential circuits. Figure 5: Relay Jakub Możaryn Basics of Automation and Control Switching circuits - Output switches Output switches (contactors) output switches, also known as contactors, are power-adapted to control actuators, e.g. motors, brakes, heaters, etc. Contactors are equipped with contacts adapted to conduct sufficiently high currents, necessary to supply various types of devices, and avoid electric arcs. Figure 6: Contactor (contactor adapted to conduct sufficiently high currents) Jakub Możaryn Basics of Automation and Control Switching circuits - Notation Switching circuits of elementary functions - scientific notation and assembly notation Jakub Możaryn Basics of Automation and Control Switching circuits - Notations Switching circuits of binary functions - scientific notation and assembly notation Jakub Możaryn Basics of Automation and Control Switching circuits - Example: logical function realisation Purposefulness of using intermediary relays. Example: Realize the function given in the Karnaugh array, using the relays. y = a · b + a · c + b · c · d = a · (b + c) + b · c · d Jakub Możaryn Basics of Automation and Control (1) Switching circuits - Example: logical function realisation Purposefulness of using intermediary relays. Example: Realize the function given in the Karnaugh array, using the relays. Jakub Możaryn Basics of Automation and Control Switching circuits - Example: logical function realisation Purposefulness of using intermediary relays. Example: Realize the function given in the Karnaugh array, using the relays. Figure 8: Solution 2 - Relays Jakub Możaryn Basics of Automation and Control Switching circuits - Example: Room temperature control Example: Designing a ventilation control system - (example 1 from lecture 1 - option 2) Binary output signal y of the room ventilation control y = 0, fan doesn’t work, y = 1, fan works. (3) is generated from binary input signals x1 , x2 and x3 from the temperature input switches (sensors) located in this room, with the same switching threshold T : xi = 0 if T < Ti , (4) xi = 1 if T ≥ Ti Jakub Możaryn Basics of Automation and Control Switching circuits - Example: Room temperature control Example: Designing a room temperature control system (example 1 from lecture 1 - option 2) State no. 0 1 2 3 4 5 6 7 x1 0 0 0 0 1 1 1 1 Jakub Możaryn x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 y2 0 0 0 1 0 1 1 1 Basics of Automation and Control Switching circuits - Example: Room temperature control Example: Designing a room temperature control system (example 1 from lecture 1 - option 2) Figure 9: Karnaugh table of y2 Solution: y = x1 · x2 + x1 · x3 + x2 · x3 = x1 · (x2 + x3 ) + x2 · x3 Jakub Możaryn Basics of Automation and Control (5) Switching circuits - Example: Room temperature control Example: Designing a room temperature control system (example 1 from lecture 1 - option 2) y = x1 · x2 + x1 · x3 + x2 · x3 = x1 · (x2 + x3 ) + x2 · x3 Figure 10: Relay circuit of y2 with intermediate relays Jakub Możaryn Basics of Automation and Control (6) Switching circuits - Example: electro-pneumatic system control Switching circuits are used as the control part of electropneumatic and electro-hydraulic control systems. They act on a pneumatic or hydraulic actuator via electrically operated pneumatic or hydraulic valves. Figure 11: Switching circuit diagram of the electropneumatic control system Jakub Możaryn Basics of Automation and Control Switching circuits - Bridges Any complex logic can be realized by using serial or parallel connection of the NO or NC switches. Such switching circuits are called series-parallel circuits or circuits of the class Π . Sometimes it is possible to simplify layout of the class Π by placing switches between parallel branches. Such relay circuits are called bridge circuits or class H circuits. This leads to a reduction in the number of switches. An example of a bridge system is the so-called elementary bridge. Figure 12: Elementary bridge and equivalent series-parallel system y =a·c +b·d +a·e ·d +b·e ·c Jakub Możaryn Basics of Automation and Control (7) Basics of Automation and Control Lecture 10 - Switching circuits. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 11 - Gate circuits. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Systems with logical elements Logic gates Logic elements (logic gates) are devices with a binary output signal and binary input signals, the operation of which (the dependence of the output signal value on the state of input signals) is described by a specific logic function. Logical elements are implemented in various techniques, eg electrical, pneumatic, hydraulic elements, with different signal parameters corresponding to the values ”0” and ”1”. The basic stage when designing circuits from logical elements is creating the so-called structural diagrams, composed of symbols of logical elements informing only about the type of logical function performed (and not about the technique of implementing the element). Jakub Możaryn Basics of Automation and Control Gate circuits To implement arbitrarily complex logic circuits, a set of elements performing logical functions is necessary, creating a functionally complete system. An exemplary functionally complete system consists of the functions disjunction (OR), conjunction (AND), and negation (NOT), and is called basic functionally complete system. In practice, however, single-element systems are more useful. Arbitrarily complex systems can be constructed using only elements that perform the NOR function or using only elements that perform the NAND function. NOR y =a+b (1) y =a·b (2) NAND Jakub Możaryn Basics of Automation and Control Gate circuits 1. Polish norm: PN-78/M-42019 2. IEEE Std. 91 - 1973: IEEE Standard Graphic Symbols for Logic Diagrams 3. Industry standard (polish): BN-71/3100-01 Jakub Możaryn Basics of Automation and Control Gate circuits: AND, OR, NOT Example: Realize minterm form of a function defined as the Karnaugh array. y = x1 · x3 + x1 · x2 + x2 · x4 Jakub Możaryn Basics of Automation and Control (3) Gate circuits: AND, OR, NOT Example: Realize the minterm form of the function defined as the Karnaugh array. (4) y = x1 · x3 + x1 · x2 + x2 · x4 Jakub Możaryn Basics of Automation and Control Boolean algebra Boolean algebra axioms Conjunction Disjunction 0=1 (5) 1=0 (10) x ·0=0 (6) x +0=x (11) x ·1=x (7) x +1=1 (12) x ·x =x (8) x +x =x (13) x ·x =0 (9) x +x =1 (14) x1 · x2 = x2 · x1 Commutativity (15) x1 + x2 = x2 + x1 (16) Associativity x1 · (x2 · x3 ) = (x2 · x1 ) · x3 (17) x1 + (x2 + x3 ) = (x2 + x1 ) + x3 (18) Jakub Możaryn Basics of Automation and Control Boolean algebra Distributivity of conjunction over disjunction (x1 + x2 ) · x3 = x1 · x3 + x2 · x3 (19) Distributivity of disjunction over conjunction (x1 · x2 ) + x3 = (x1 + x3 ) · (x2 + x3 ) (20) De Morgan laws x1 · x2 = x1 + x2 (21) x1 + x2 = x1 · x2 (22) Double negation law (involution law) x =x (23) On the basis of the above theorems, a number of other dependencies can be created that are useful in transforming logical functions. The symbols x0 , x1 , x2 , x3 in these statements can represent either a single argument or any complex logical function. Jakub Możaryn Basics of Automation and Control Gate circuits: NOR, NAND Construction of systems replacing the elements of (a) negation, (b) disjunction, (c) conjunction with NOR or NAND elements. Jakub Możaryn Basics of Automation and Control Gate circuits: NOR, NAND Example: Realize minterm form of function defined as the Karnaugh array, using NOR elements. Eliminate conjunctions or disjunctions by double negating and exploiting de Morgan laws. y = x1 · x3 + x1 · x2 + x2 · x4 = = x1 + x3 + x1 + x2 + x2 · x4 = = x1 + x3 + x1 + x2 + x2 + x4 = = x1 + x3 + x1 + x2 + x2 + x4 = (24) Jakub Możaryn Basics of Automation and Control Gate circuits: NOR, NAND Example: Realize minterm form of function defined as the Karnaugh array, using NOR elements. y == x1 + x3 + x1 + x2 + x2 + x4 = Jakub Możaryn Basics of Automation and Control (25) Gate circuits: NOR, NAND Example: Realize maxterm form of a function defined as the Karnaugh array using NAND elements. Eliminate conjunctions or disjunctions by double negating and exploiting de Morgan laws. y = (x1 + x2 ) · (x1 + x4 ) · (x2 + x3 ) = = x1 · x2 · (x1 + x4 ) · x2 · x3 = = x1 · x2 · (x1 · x4 ) · x2 · x3 (26) Jakub Możaryn Basics of Automation and Control Gate circuits: NOR, NAND Example: Realize maxterm form of a function defined as the Karnaugh array using NAND elements. y = x1 · x2 · (x1 · x4 ) · x2 · x3 Jakub Możaryn Basics of Automation and Control (27) Gate circuits: NOR, NAND Replacing multi-input NOR, NAND elements with two-input elements Jakub Możaryn Basics of Automation and Control Logic static hazard The following factors influence the course of transitional processes in a combination system: non-step character of changes in the values of signals occurring in real systems, delays caused by signal lines when sending signals through them, delays caused by components in signal processing. Jakub Możaryn Basics of Automation and Control Logic hazard Two types of transition states can be distinguished in combinational circuits: transition states (I) in which, according to the equation describing the operation of the system, a change of one of the input signals should not cause any change on the output, transitions states (II) in which, according to the equation describing the operation of the system, a change of one of the input signals should change the output, Logic static hazard The phenomenon of the occurrence of short-term changes in the value of the output signal during the duration of the first transition states (II) is called static hazard. Logic dynamic hazard The phenomenon of the occurrence of additional changes in the value of the output signal in the second kind of transients (II) is called dynamic hazard. Jakub Możaryn Basics of Automation and Control Logic static hazard Static hazard in zeros Signals when x2 = x3 = 0 (sudden value of y = 1, although according to the array y = 0) y = (x1 + x2 ) · (x1 + x3 ) (28) System equation without hazard y = (x1 +x2 )·(x1 +x3 )·(x2 +x3 ) (29) Jakub Możaryn Basics of Automation and Control Logic dynamic hazard Figure 1: Illustration of the causes of logic dynamic hazard (when changing the output y from 1 to 0 - several short changes in the output) Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 11 - Gate circuits. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 12 - Introduction to digital sequential systems. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Basic concepts Let us again use an example of a system controlling the operation of actuators, according to the given work cycle.. After placing the sheet, the operator calls series of actuators movements by pressing the appropriate ’START’ button. The course of these movements is presented in the so-called step diagram. The discrete control system can be implemented as a process-dependent or time-dependent system. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Internal states The term internal state is introduced to describe the operation of sequential circuits. In the considered example, in each of the distinguished internal states, a different operation of the work cycle is performed, which requires the generation of an appropriate set of outputs. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Internal states In internal state 0: yA = 0, yB = 0, yC = 0 In internal state 1: yA = 1, yB = 0, yC = 0 In internal state 2: yA = 1, yB = 1, yC = 0 To distinguish between internal states in the system, a set of binary signals appropriate to the number of states is used. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems The state of the process-dependent sequence system at the moment t determine the values (state) of three groups of signals: input signals x1t , x2t , .., xnt = X t (input state) output signals y1t , y2t , .., ymt = Y t (output state) signals representing the internal state Q1t , Q2t , .., Qkt = Q t Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Due to the method of generating the output signals, there are two types of sequential machines distinguished: The distinguishing parts of the systems are: a block (circuit) implementing the so-called a transition function, a block (circuit) implementing the so-called an output function λ1 (Moore machine), λ2 (Mealy machine). Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems A transition function The transition function determines what internal state the system will take at the next moment (Q t+1 ) under the influence of input signals present at the current moment (X t ), being in the current internal state (Q t ) Q t+1 = δ(X t , Q t ) (1) Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems An output function In Moore machine, the actual state of the outputs depends only on the current internal state Y t = λ1 (Q t ) (2) In Mealy machine, the current state of outputs is a function of not only the current internal state, but also the current state of the inputs Y t = λ2 (Q t , Xt ) (3) Functions λ1 and λ2 are called output functions of the Moore and Mealy machines respectively. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Due to the order of changes in internal states, the following systems are distinguished: systems with linear programming (unbranched) systems with branched programming Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Due to the way the system reads the information about the state of inputs, there are asynchronous systems synchronous systems. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems From the appearance of the input state causing the change of the internal state, according to the transition function, until the new internal state is reached, the system is in transition (unstable) state. In unstable state Q t+1 ̸= Q t (4) The changes in the internal state are delayed in relation to the changes in the state of the inputs by the duration of the transient states of the system realizing the transition function. This delay is the time interval between the present moment t and the next moment t + 1. Until the next input state appears, causing the internal state to change, the system remains in stable state during which: Q t+1 = Q t Jakub Możaryn Basics of Automation and Control (5) Process-dependent sequential systems Asynchronous systems In the asynchronous system information about the inputs state is read by the system in a continuously. This means that the change of the internal state takes place immediately after the appearance of the corresponding state of the inputs. Synchronous systems In the synchronous system changes in the internal state can only take place at certain times, determined by the so-called clock signal (sequence of rectangular pulses with a constant period), depending on the state of the input signals at these times. Information about the state of the inputs is intercepted discontinuously by the synchronous system - at certain times, called samples (sampling moments). Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems States of the synchronous system sychronized with the rising edge of the clock signal. An input state X n of the synchronous system is the state of the input signals at the beginning of the internal state Q n . Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems States of the synchronous system sychronized with the the falling edge of the clock signal. An input state X n of the synchronous system is the state of the input signals at the end of the internal state Q n . Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems Both in the case of Moore and Mealy machines, blocks that realize the output function are combinational systems/circuits. Blocks that perform the transition function, in the case of asynchronous systems, can be built directly on the basis of the transition function as combinational systems, with the feedback, assembly: combination circuit - a block of typical memory elements, the so-called flip-flops; they are said to be systems with a separate flip-flop block. Jakub Możaryn Basics of Automation and Control Process-dependent sequential systems In the case of a system with a separate block of flip-flops, the task of the combinatorial circuit is to generate the input signals of the flipflops (flip-flops excitation). This system realizes the so-called excitation function q t = δ1 (Q t , X t ) (6) where q t is the current state of the input signals of the flip-flops. The form of the excitation function depends on the transition functions of a given system and the type of flip-flops used. Synchronous systems can be implemented only with a dedicated flip-flop block. Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 12 - Introduction to digital sequential systems. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 13 - Elementary sequential automata. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Flip-flops (latches) Flip-flops are Moore’s sequential systems with two internal states, having the so-called full transition system - the ability to go directly from any internal state to any internal state and the so-called full output system - each internal state should correspond to a different output state. Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Flip-flops (latches) Flip-flops are Moore’s sequential systems with two internal states, having the so-called full transition system - the ability to go directly from any internal state to any internal state and the so-called full output system - each internal state should correspond to a different output state. It is assumed that the status of outputs in flip-flops is identical to the internal status. Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops The simplest sequential circuits are asynchronous Moore circuits with two internal states, marked as 0 and 1, and two input signals: S (set) and R (reset) and the output signal y , whose state coincides with the internal state of Q. Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops The simplest sequential circuits are asynchronous Moore circuits with two internal states, marked as 0 and 1, and two input signals: S (set) and R (reset) and the output signal y , whose state coincides with the internal state of Q. Such flip-flops are called asynchronous SR flip-flops. Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops The simplest sequential circuits are asynchronous Moore circuits with two internal states, marked as 0 and 1, and two input signals: S (set) and R (reset) and the output signal y , whose state coincides with the internal state of Q. Such flip-flops are called asynchronous SR flip-flops. For all types of flip-flops, their output function is assumed to be y =Q (1) Therefore, a transition table is sufficient to describe the operation of flipflops. Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops There are three types of asynchronous flip-flops, with different transition functions (tables) Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Dominant Reset asynchronous flip-flop Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Dominant Set asynchronous flip-flop Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Dominant Memory asynchronous flip-flop Jakub Możaryn Basics of Automation and Control Asynchronous flip-flops Dominant Memory asynchronous flip-flop Transition function Q t+1 = Q t · S + Q t · R + S · R = Q t · (S + R) + S · R Jakub Możaryn Basics of Automation and Control (2) Asynchronous flip-flops Multi-input flip-flop - gate circuits S =a·b (3) R =c +d (4) Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 13 - Elementary sequential automata. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 14 - Designing asynchronous systems with linear programs. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs. Example: Design process-dependent control system with two doubleacting pneumatic actuators A and B, equipped with sensors a, b, c, d, e informing about the positions of each actuator piston, located as shown in the figure. Figure 1: Location of the actuators and servo-valves. Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs The control system should execute the cycle of movements consisting of 6 states: 1 1 – the piston of the actuator A extends fully, 2 2 – the piston of the actuator B extends partially out (to the switch d), 3 3 – the piston of the actuator B moves back, 4 4 – piston of the actuator B extends fully (to the switch e), 5 5 – the piston of the actuator B moves back, 6 6 – the piston of the actuator A moves back, Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Figure 2: Work cycle diagram. The work cycle is initiated by a pulse from the START button (x); starting the work cycle is possible only when the piston rods of both actuators are withdrawn (x · a · c). Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs The several variants of the control system are possible. Each of these variants can be realized in a electric or pneumatic version. 1 Moore system - code with a fixed spacing - mono-stable valves, 2 Moore system - code with a fixed spacing - bi-stable valves, 3 Moore system - 1-of-n code - mono-stable valves, 4 Moore system - 1-of-n code - bi-stable valves, 5 Mealy system - code with a fixed spacing - mono-stable valves, 6 Mealy system - code with a fixed spacing - bi-stable valves, 7 Mealy system - 1-of-n code - mono-stable valves, 8 Mealy system - 1-of-n code - bi-stable valves. Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Example: Moore system - code with a fixed spacing - mono-stable valves, Figure 3: Diagram of the actuating system and block diagram of the designed system A different set of outputs (state of the outputs) is required for each movement in the work cycle. Thus, the Moore system must have 6 internal states to realize 6 movements. Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Figure 4: The graph of the Moore system - assignment of the states Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Figure 5: The graph of the Moore system - assignment of the sensor signals indicating transition between states Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Figure 6: The graph of the Moore system - assignment of the output signals in each state Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Figure 7: The graph of the Moore system Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Because there are 6 states, three binary signals are required to code them while using fixed spacing code. Figure 8: The graph of the Moore system - coding of the states Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Graph with internal state codes (pseudo-ring code - constant space code) Figure 9: The graph of the Moore system The core of the discrete control system (state transition block) is thus a set of flip-flops generating the signals Q1 , Q2 , and Q3 . Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs The dependence of the output signals y1 and y2 on the signals Q1 , Q2 and Q3 is determined on the basis of the graph. Output table Q1 ↓ Q2 , Q3 → 0 1 00 01 11 0 1 1 1 − 1 10 − 1 y1 Q1 ↓ Q2 , Q3 → 0 1 00 01 11 0 0 1 0 − 0 10 − 1 y2 Q1 ↓ Q2 , Q3 → 00 01 11 0 00 10 11 1 10 −− 10 Jakub Możaryn Basics of Automation and Control 10 −− 11 y1 , y2 Asynchronous systems with linear programs From the output table the following output functions are obtained: Q1 ↓ Q2 , Q3 → 00 0 00 1 10 01 11 10 10 11 −− −− 10 11 y1 , y2 y1 = Q1 + Q3 (1) y2 = Q1 · Q2 + Q2 · Q3 = Q2 (Q1 + Q3 ) (2) Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs In order to determine the excitations of the flip-flops, there is created a so-called simplified transition table Q1t ↓ Q2t , Q3t → 00 0 001 1 000 Jakub Możaryn 01 11 10 011 111 − − − − − − 110 100 Q1t+1 , Q2t+1 , Q3t+1 Basics of Automation and Control Asynchronous systems with linear programs The simplified transition table is further rewritten into universal table indicating the flip-flops output signals changes between transitions. Q1t ↓ Q2t , Q3t → 00 0 001 1 000 01 11 10 011 111 − − − − − − 110 100 Q1t+1 , Q2t+1 , Q3t+1 Q1t ↓ Q2t , Q3t → 00 0 001 1 000 01 11 10 011 111 − − − − − − 110 100 Q1t+1 , Q2t+1 , Q3t+1 Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Based on the universal table, the excitations ensuring the correct order of changes of internal states are determined. NOTE: Not to be confused with concatenation in Karnaugh table. NOTE The excitation of the flip-flops depends on the adopted code and the number of code variables, and not on the task. FLIP-FLOP Q1 Jakub Możaryn Basics of Automation and Control S1 = Q2 (3) R1 = Q2 (4) Asynchronous systems with linear programs FLIP-FLOP Q2 S2 = Q3 (5) R2 = Q3 (6) S3 = Q1 (7) R3 = Q1 (8) FLIP-FLOP Q3 Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs The external signals are combined with the determined excitations, conditioning the transition to the next internal states. Jakub Możaryn Basics of Automation and Control Asynchronous systems with linear programs Required excitations of flip-flops FLIP-FLOP Q1 S1 = Q2 · d (9) R1 = Q 2 · c (10) FLIP-FLOP Q2 S2 = Q3 · b (11) R2 = Q3 · e (12) FLIP-FLOP Q3 S3 = Q1 ·x ·a ·c (13) R 3 = Q1 · c Jakub Możaryn Basics of Automation and Control (14) Asynchronous systems with linear programs Logical diagram of the servo-valves control system and its mathematical description: STATES S1 = Q2 · d R1 = Q2 · c S2 = Q3 · b R2 = Q3 · e S3 = Q1 · x · a · c R3 = Q1 · c (15) OUTPUTS y1 = Q1 + Q3 y2 = Q2 (Q1 + Q3 ) (16) Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 14 - Designing asynchronous systems with linear programs. Jakub Możaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Możaryn Basics of Automation and Control Basics of Automation and Control Lecture 15- Process identification Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Basics of Automation and Control Controlled process Controlled process Controlled process is a technological process that is under influence of disturbances, where an external control algorithm performs the desired action (control signal/control variable) and enforces desirable behaviour of this process. Mathematical description of the controlled process (simplified SISO - single input single output) y = f (u, z) (1) where: y - process variable, u - control variable, z - disturbance. Jakub Mozaryn Basics of Automation and Control Controlled process Gob (s) = ym (s) PV (s) = u(s) CV (s) Process variables Process variables are output variables (yi ;i =, . . . , n) that characterize controlled process. Process variables characterize the controlled process and their desired course is defined in a control task. Jakub Mozaryn Basics of Automation and Control (2) Controlled process Gob (s) = ym (s) PV (s) = U(s) CV (s) (3) Input variables An amount of supplied energy or matter are an input variables xi ;i = 1, ..., n of controlled process To realize technological process there should be provided the relevant streams of matter or streams of energy. The desired course of the process variables depend on these streams and their parameters. Jakub Mozaryn Basics of Automation and Control Controlled process Gob (s) = ym (s) PV (s) = U(s) CV (s) (4) Disturbances Disturbances (zi ; i = 1, . . . , n) are input signals which adversely affects the course of the process variables. Disturbances may directly affect the process or distort the streams of energy or streams of matter, eg. in a temperature control in furnace such interference are changes in the calorific value of the fuel. Jakub Mozaryn Basics of Automation and Control Controlled process Gob (s) = ym (s) PV (s) = U(s) CV (s) (5) Control variables Control variables (ui ; i = 1, ..., n) are the input variables generated by the controller. Actuators, as a result of an influence of the control signals, shape streams of matter or energy according to the control task. Jakub Mozaryn Basics of Automation and Control Controlled process Gob (s) = ym (s) PV (s) = U(s) CV (s) Symbols: u(s) = CV (s) CV - control variable, ym (s) PV - process variable (from the sensor). Jakub Mozaryn Basics of Automation and Control (6) Selection of elements of control systems Figure: Schematic diagram of the process with actuator (electromagnetic valve) in a) normal model, b) reverse mode Jakub Mozaryn Basics of Automation and Control Classification of controlled processes Due to the type of equations: linear, nonlinear. Due to the behavior in the steady state of step response: static - having the ability to achieve equilibrium, astatic - not having the ability to achieve equilibrium. Due to the number of process variables: one-dimensional, multi-dimensional. Due to the stability of parameters in time: time invariant (stationary), nonstationary. Jakub Mozaryn Basics of Automation and Control Controlled process Step response of the static processes: 1- first order lag element, 2, 3 – higher order lag elements, 4 – oscillatory, 5 - proportional. Jakub Mozaryn Step response of the astatic processes: 1- integral element, 2 integral element with first order lag, 3 - integral element with first order lag and delay. Basics of Automation and Control Experimental determination of the time characteristics of controlled process Jakub Mozaryn Basics of Automation and Control Models of the static process The characteristic features of the step response of the higher order lag elements are fixed time gains T1 and T2 defined by the tangent to the step response at the point of inflection (as given in a picture). Jakub Mozaryn Basics of Automation and Control Models of the static process model 1 - first order lag with delay kob ∆ym (s) = e −T0 s ∆u(s) (Tz s + 1) (7) model 2 - Strejc model G (s) = G (s) = ∆ym (s) kob = (8) ∆u(s) (Tz s + 1)n model 3 - Strejc model with delay G (s) = kob ∆ym (s) = e −T0 s ∆u(s) (Tz s + 1)n (9) Jakub Mozaryn Basics of Automation and Control First order lag model with delay Model 1 - Tangent method T0 = T1 ; Tz = T2 (10) Model 1 - Secant method Assumption: The step response of the model in 2 points corresponds with the step response of the process. P = 0, 5PV → t1 ; P = 0, 632PV → t2 (11) Using the time equation of step response of the first order lag element: t y (t) = ust k(1 − e − T ), (12) the following equations are obtained: T0 = t1 − t2 ln 2 , 1 − ln 2 Tz = t2 − T0 = Jakub Mozaryn t2 − t1 . 1 − ln 2 Basics of Automation and Control (13) (14) Higher order lag elements Model 2 - Strejc model, G (s) = n 1 2 3 4 5 6 1 y (s) = u(s) (Ts + 1)n T1 /T 0 0,282 0,805 1,425 2,100 2,811 T2 /T 1 2,718 3,695 4,463 5,119 5,699 (15) T1 /T2 0 0,104 0,218 0,319 0,410 0,493 Table: Parameters of the higher order lag elements Jakub Mozaryn G (s) = y (s) 1 = u(s) (Ts + 1)6 Basics of Automation and Control (16) Static processes models - example Jakub Mozaryn Basics of Automation and Control Static processes models - example Jakub Mozaryn Basics of Automation and Control Astatic process models - identification Integral element with first order lag Gob (s) = 1 Tz s(T0 s + 1) Gob (s) = Integral element with first order lag and delay (17) Gob (s) = 1 −T0 s e (18) Tz s Jakub Mozaryn 1 e −T0 s (19) Tz s(T1 s + 1) 1 −(T0 +T1 )s e T s Basics of Automation andzControl Gob (s) = (20) Basics of Automation and Control Lecture 15- Process identification Jakub Mozaryn Institute of Automatic Control and Robotics, Department of Mechatronics, WUT Jakub Mozaryn Basics of Automation and Control