Introduction to Control (034040) lecture no. 2 Leonid Mirkin Faculty of Mechanical Engineering Technion IIT
Setup: Abstract control problem to begin with y P(s) u where P is a plant u is a control signal (control input) y is a controlled (regulated) signal (output) Problem: Given P, find u resulting in a desired y.
Outline Modeling Case-study systems and their first-principles modeling Actuation: DC motors and their first-principles modeling Parameter identification of DC motor
Outline Modeling Case-study systems and their first-principles modeling Actuation: DC motors and their first-principles modeling Parameter identification of DC motor
What is it about? y P(s) u Model is a description of systems using an abstract (e.g. mathematical) language. Modeling lets us handle problems of various nature, e.g. mechanical, electrical, biological, social,... in a unified manner. It must be realized though that models of real-world phenomena are never perfect, they are just (more or less accurate) approximations of real processes.
What is it about? y P(s) u Model is a description of systems using an abstract (e.g. mathematical) language. Modeling lets us handle problems of various nature, e.g. mechanical, electrical, biological, social,... in a unified manner. It must be realized though that models of real-world phenomena are never perfect, they are just (more or less accurate) approximations of real processes.
Why to model? y P(s) u From control viewpoint, modeling is necessary just because if we don t know how plant responds to our actions, any control task is hopeless. In other words, model-free control is essentially a coin tossing.
Car example 1 (Myers, 1999)
Car example 2 (Butler, 2008)
How to model? Essentially, two ways: 1. first-principles modeling 2. modeling from experimental data
Outline Modeling Case-study systems and their first-principles modeling Actuation: DC motors and their first-principles modeling Parameter identification of DC motor
Case-studies System Σ 1 : System Σ 2 : System Σ 3 : τ ρ ρ ρ θ θ J, f ω c k c k y y m m y m m control mass position y via pulley angle control mass position y via pulley angle control mass position y via torque elevator as motivation elevator with long hoistway as motivation
Data Consider τ J, f 0 y 20 y 10 y 1 ρ θ k c m 1 m 2 where : pulley radius m 1 ; m 2 : masses Denote also k: spring constant c: damping coefficient J: moment of inertia of pulley + shaft f : friction coefficient of pulley + shaft F : external force applied to m 1 (2nd input) F t1 ; F t2 : tension forces at m 1 and m 2, respectively L 0 = y 20 y 2 at = 0 y 2 F L 1 = y 10 y 1 L 2 = y 20 y 2 L = L 1 + L 2 length of non-elastic part
Motion equations Masses dynamics: m 1 ÿ 1 (t) = m 1 g + F (t) F t1 (t) and m 2 ÿ 2 (t) = m 2 g F t2 (t) Spring-damper dynamics: c(ẏ 20 (t) ẏ 10 (t)) + k(y 20 (t) y 10 (t)) = F t1 (t) Pulley dynamics: J (t) + f (t) = (t) F t1 (t) + F t2 (t) Algebraic constraints: y 10 (t) y 1 (t) = L 1 ; y 20 (t) y 2 (t) = L 2 ; y 20 (t) y 2 (t) = L 0 + 2(t)
From algebraic constraints, y 10 = y 1 + L 1 ; Elimination of variables y 20 = + L 0 L 2 + ; y 2 = L 0 + L 2 2 2 Then, spring-damper verifies ( ) c( L0 L 2 + ẏ 1 ) + k( y 1 ) + k L 1 = F t1 2 and the tension forces are F t1 = m 1 ÿ 1 + m 1 g + F ; F t2 = m 2 ÿ 2 + m 2 g = m 2 + m2 g
System equations Thus, we have: ( m1 g m 1 ÿ 1 + cẏ 1 + ky 1 + k + L + L ) 1 L 0 = (c k 2 + k) F (J + 2 m 2 ) + f = m 1 ÿ 1 (m 1 m 2 )g F This is a nonlinear set of equations (superposition principle doesn t hold).
System equations Thus, we have: ( m1 g m 1 ÿ 1 + cẏ 1 + ky 1 + k + L + L ) 1 L 0 = (c k 2 + k) F (J + 2 m 2 ) + f = m 1 ÿ 1 (m 1 m 2 )g F This is a nonlinear set of equations (superposition principle doesn t hold 1 ). 1 Just think of the simpler system y = u + 1. Since (u 1 + u 2) + 1 (u 1 + 1) + (u 2 + 1), it isn t linear. Such systems, called affine, can be linearized precisely via introducing deviation variables. For example, define ũ = u + 1, which yields linear system y = ũ.
Equilibrium In equilibrium, the system satisfies algebraic equations y 1 = L + L 1 L 0 2 = (m 1 m 2 )g + F F + m 1g k If we assume that y 1 = y 2 at = 0 and F = 0, an additional constraint L + L 1 L 0 2 m 1g k yields L 0 = L 1 + m 1 g=k, so that y 1 = L + m 1g=k 2 = (m 1 m 2 )g + F = L 0 + L 2 2 F k We then choose the equilibrium corresponding to = 0 and F = 0.
Defining deviation variables ỹ 1 (t) = y 1 (t) + L + m 1g=k 2 Linearization and (t) = (t) (m 1 m 2 )g we end up with the following linear model: { m1 ỹ 1 (t) + c ỹ 1 (t) + kỹ 1 (t) = (c (t) + k(t)) F (t) (J + 2 m 2 ) (t) + f (t) = (t) m 1 ỹ 1 (t) F (t) or 1 ( ) ỹ(s) = (cs + k)(s) F (s) m 1 s 2 + cs + k 1 (s) = ( (s) m1 (J + 2 m 2 )s 2 s 2 ỹ(s) F (s) ) + fs
Thus, Block-diagram can be modeled as τ m 1 s 2 J, f 0 y 20 y 10 y 1 y 2 c ρ θ k m 1 m 2 F ỹ 1 (cs+k) m 1s 2 +cs+k in terms of deviations 1 (J+ 2 m 2)s 2 +fs 1 (cs+k) ỹ 1 (t) = y 1 (t) + L + m 1g=k ; 2 (t) = (t) (m 1 m 2 )g from the equilibrium corresponding to y 1 = y 2 at = 0 and F = 0. F
Let System Σ 1 (Atwood machine) Assuming inelastic string, no slippage, and y = 0 at = 0, ρ y(t) = (t) (with in rad); θ so the system can be presented by the following block diagram: y u y and the plant transfer function P(s) =
ρ System Σ 2 Let Now, the system motion satisfies mÿ(t) + c(ẏ(t) (t)) + k(y(t) (t)) = 0 θ (assuming no slippage and y = 0 at = 0), which leads to y c m k m (cs + k) ms 2 + cs + k and the plant transfer function y P(s) = (note that lim k P(s) = ). u (cs + k) ms 2 + cs + k
ρ Let System Σ 2 with disturbance Now, the system motion satisfies mÿ(t) + c(ẏ(t) (t)) + k(y(t) (t)) = F (t) θ (assuming no slippage and y = 0 at = 0 and F = 0), which leads to c k y (cs + k) ms 2 + cs + k 1 (cs + k) d u F y m m where signal d called input disturbance. F
Let τ System Σ 3 In this case, assuming no slippage and y = 0 at = 0 we have the following block diagram: J, f ρ ω y (cs+k) ms 2 +cs+k ms 2 1! s 1 (J+ 2 m)s+f u y c m k m and the plant transfer function P(s) = (cs+k) s((j+ 2 m)s+f )(ms 2 +cs+k)+ 2 ms 2 (cs+k) (it is unstable because of the pole at the origin).
Outline Modeling Case-study systems and their first-principles modeling Actuation: DC motors and their first-principles modeling Parameter identification of DC motor
DC motors Rotor windings Brush Stator winding N Armature R a L a Shaft i a Inertia load Angle u S Bearings Brush Commutator V f R f i f (t) Field L f i a v, u Inertia J Friction f Load sketch wiring diagram Electric motors are devices converting electrical energy into mechanical energy. DC motors run on DC electric power. There are many types of DC motors, we study armature-controlled brushed DC motors.
DC motors (contd) Advantages: high torque position / speed / torque controllability over a wide range portability well-behaved speed-torque characteristics... Applications (actuators): robotic manipulators tape transport mechanisms disk drivers...
DC motors (contd) Advantages: high torque position / speed / torque controllability over a wide range portability well-behaved speed-torque characteristics... Applications (actuators): robotic manipulators tape transport mechanisms disk drivers...
Important things: Modeling voltage-controlled DC motors 1. Torque m generated by the motor proportional to armature current i a : m (t) = K m i a (t) or T m (s) = K m I a (s); [ where K Nm ] m A is the motor constant (torque constant). 2. Armature current satisfies L a i a (t) + R a i a (t) = v a (t) v b (t) or I a (s) = V a(s) V b (s) L a s + R a ; where v a is the applied input voltage and v b is the back electromotive force (back emf) voltage proportional to motor angular velocity! m : v b (t) = K b! m (t) or V b (s) = K b Ω m (s); [ where K V sec ] b rad is the motor back emf constant (9:55 V sec rad 1 V rpm ).
Important things: Modeling voltage-controlled DC motors 1. Torque m generated by the motor proportional to armature current i a : m (t) = K m i a (t) or T m (s) = K m I a (s); [ where K Nm ] m A is the motor constant (torque constant). 2. Armature current satisfies L a i a (t) + R a i a (t) = v a (t) v b (t) or I a (s) = V a(s) V b (s) L a s + R a ; where v a is the applied input voltage and v b is the back electromotive force (back emf) voltage proportional to motor angular velocity! m : v b (t) = K b! m (t) or V b (s) = K b Ω m (s); [ where K V sec ] b rad is the motor back emf constant 2 (9:55 V sec rad 1 V rpm ). 2 Normally, K b = K m if measured in compatible units.
Modeling voltage-controlled DC motors (contd) Resulting system can be presented as the following block diagram: y load m i a 1 Load K m L a s + R a v a! m v b K b Here y load is a (controlled) load output, not necessarily coinciding with the motor shaft angular velocity! m. The dependence of! m on the load and internal feedback loop (back emf) renders voltage-controlled motors strongly dependent on load dynamics. We must explicitly have! m as an output of the load model to incorporate the load into the motor model.
Modeling voltage-controlled DC motors (contd) Resulting system can be presented as the following block diagram: y load m i a 1 Load K m L a s + R a v a! m v b K b Here y load is a (controlled) load output, not necessarily coinciding with the motor shaft angular velocity! m. The dependence of! m on the load and internal feedback loop 3 (back emf) renders voltage-controlled motors strongly dependent on load dynamics. We must explicitly have! m as an output of the load model to incorporate the load into the motor model. 3 Models substantially simplified in the current-controlled case (no back emf loop).
Example 1: rigid mechanical load τ m ω m J, f ω m Consider a rigid load (e.g. the rotor itself) with y load =! m and satisfying J! m (t) + f! m (t) = m (t) or Ω m (s) = 1 Js + f T m(s); where J is its moment of inertia and f is the friction coefficient.
In this case we have: Example 1: rigid mechanical load (contd)! m 1 m i a 1 K Js + f m L a s + R a v a v b K b which results in the following transfer function from v a to! m : P! (s) = K m (L a s + R a )(Js + f ) + K b K m ; which is always stable (2nd order denominator with positive coefficients).
Example 1: rigid mechanical load (contd) If y load = m (motor shaft angle), then system becomes m 1! m 1 m i a 1 K s Js + f m L a s + R a v a v b K b with transfer function P (s) = K m s ( (L a s + R a )(Js + f ) + K b K m ) = 1 s P!(s); which is unstable (pole at the origin). If armature (electrical) time constant is significantly smaller than mechanical time constant, i.e. if La R a J f, then P! (s) K m R a (Js + f ) + K b K m and P (s) (where L a neglected) are sufficiently accurate. K m s(r a (Js + f ) + K b K m )
Example 1: rigid mechanical load (contd) If y load = m (motor shaft angle), then system becomes m 1! m 1 m i a 1 K s Js + f m L a s + R a v a v b K b with transfer function P (s) = K m s ( (L a s + R a )(Js + f ) + K b K m ) = 1 s P!(s); which is unstable (pole at the origin). If armature (electrical) time constant is significantly smaller than mechanical time constant, i.e. if La R a J f, then P! (s) K m R a (Js + f ) + K b K m and P (s) (where L a neglected) are sufficiently accurate. K m s(r a (Js + f ) + K b K m )
Example 1: electrical time constant Consider a motor (in fact, Minimotor 2342) with K m [ N m ] K A b [ V sec ] J [kg rad m2 kg m2 ] f [ ] Ra [Ω] La [H] sec 0:0261 0:0261 5:8 10 7 9:67 10 5 7:1 2:65 10 4 with mechanical and electrical time constants of 6 10 3 and 3:73 10 5, respectively. This results in P! (s) = 19:082 (0:003s + 1)(3:756 10 5 s + 1) or, if we neglect L a, P! (s) 19:082 0:003s + 1 :
Example 1: electrical time constant (contd) 182.2!m(t) (rpm) 0 0 0.01 0.02 Time, t (sec) Step responses of the second- and first-order systems almost indistinguishable, which justifies neglecting the dynamics of the armature circuit in this case.
Example 1: electrical time constant (contd) 182.2 86.8!m(t) (rpm)!m(t) (rpm) 0 0 0.01 0.02 Time, t (sec) 0 0 1 2 Time, t (sec) x 10 3 Step responses of the second- and first-order systems almost indistinguishable 4, which justifies neglecting the dynamics of the armature circuit in this case. 4 Except for a small difference at the start, see the close-up on the right.
Example 2: load with flexible transmission ω m τ m τ t J m, f m k t, c t J l, f l ω l Consider now a load (J l and f l ) connected with the motor shaft (J m and f m ) by a flexible inertialess transmission with the dynamics t (t) = k t ı (t) + c t! ı (t) or T t (s) = c t s + k t Ω s ı (s); where ı = m l and k t and c t are the stiffness and damping coefficient, respectively, of the transmission. The other equations are J m! m (t) + f m! m (t) = m (t) t (t) or Ω m (s) = T m(s) T t (s) J m s + f m ; J l! l (t) + f l! l (t) = t (t) or Ω l (s) = 1 J l s + f l T t (s):
Example 2: load with flexible transmission (contd) This system corresponds to the following block-diagram:! l 1 t c t s + k t! m 1 J l s + f l s J m s + f m m Combining load and motor block diagrams, we end up with The transfer function of the system can be derived by routine block-diagram manipulations, as shown in Lecture 1.
Example 2: load with flexible transmission (contd) This system corresponds to the following block-diagram:! l 1 t c t s + k t! m 1 J l s + f l s J m s + f m m Combining load and motor block diagrams, we end up with! l 1 t c t s + k t! m 1 m i a 1 K J J m l s + f l s m s + f m L a s + R a v a v b K b The transfer function of the system can be derived by routine block-diagram manipulations, as shown in Lecture 1.
ρ τ System Σ 3 as load Remember, this system described as J, f ω ms 2 c k y (cs+k) ms 2 +cs+k 1! s 1 (J+ 2 m)s+f y m m If T is generated by a DC motor, we end up with the plant having the following t.f. (assuming L a = 0 and denoting κ = K m K b =R a ): P(s) = (cs+k)k m=r a m(j+m 2 )s 4 +(κm+cj+fm+2cm 2 )s 3 +(κc+cf +Jk+2km 2 )s 2 +k(κ+f )s
ρ τ System Σ 3 as load Remember, this system described as J, f ω ms 2 c k y (cs+k) ms 2 +cs+k 1! s 1 (J+ 2 m)s+f y m m If T is generated by a DC motor, we end up with the plant ms 2 y (cs+k) ms 2 +cs+k! 1 1 i a 1 s (J+ 2 m)s+f K m L a s + R a v a v b K b having the following t.f. (assuming L a = 0 and denoting κ = K m K b =R a ): P(s) = (cs+k)k m=r a m(j+m 2 )s 4 +(κm+cj+fm+2cm 2 )s 3 +(κc+cf +Jk+2km 2 )s 2 +k(κ+f )s
Outline Modeling Case-study systems and their first-principles modeling Actuation: DC motors and their first-principles modeling Parameter identification of DC motor
We know that P! (s) The problem but we might not know the parameters, K m R a (Js + f ) + K b K m : some of them (K m, K b, R a ) can be taken from the catalog the others (load s J and f ) are harder to calculate Alternative to the first-principles approach: determining parameters from experiments (system identification) To that end, rewrite where k st = K m R a (Js + f ) + K b K m = K m K b K m + R a f and = k st s + 1 ; R a J K b K m + R a f :
We know that P! (s) The problem but we might not know the parameters, K m R a (Js + f ) + K b K m : some of them (K m, K b, R a ) can be taken from the catalog the others (load s J and f ) are harder to calculate Alternative to the first-principles approach: determining parameters from experiments (system identification) To that end, rewrite where k st = K m R a (Js + f ) + K b K m = K m K b K m + R a f and = k st s + 1 ; R a J K b K m + R a f :
Experimental setup We try to identify parameters k st and from the step response! m k st s + 1 u taking into account that it s relatively simple, y(t) = k st (1 e t= ): k st 90% 2 5% 2 2% 10% 0 2.2 3 3.9 t
Experimental data Reality (response to the step voltage of a magnitude of 1:2V): 1.864!m(t), rad/sec 3 6 9 t is not exactly according to the theory. Reasons: measurement noise (sensor is an encoder, hence quantization) nonlinearities (e.g. mechanical friction) additional dynamics (inductance, eccentricity, etcetera) Still, it closely resembles the step response of a 1-order system.
Fitting 1-order response to experimental data Brute-force parametric search over possible values of k st and to fit! m (t) = 1:2 k st (1 e t= ) into experimental data yields k st = 1:5533 and = 1:7 with a reasonable fit: 1.864!m(t), rad/sec 3 6 9 t