linear systems control and vibrations
TRANSCRIPT
-
8/21/2019 Linear Systems Control and Vibrations
1/262
Linear Systems Control and Vibrationsfor Mechanical Engineers
Dr. Robert L. Williams II
Mechanical Engineering, Ohio University
NotesBook Supplement forME 3012 System Vibrations, Analysis, and Control
2015 Dr. Bob Productions
[email protected]/people/williar4
These notes supplement the ME 3012 NotesBook by Dr. Bob
This document presents supplemental notes to accompany the ME 3012 NotesBook. The outline
given in the Table of Contents on the next page dovetails with and augments the ME 3012 NotesBook
outline and hence is incomplete here.
-
8/21/2019 Linear Systems Control and Vibrations
2/262
2
ME 3012 Supplement Table of Contents
1. INTRODUCTION ...............................................................................................................................................3
1.1 CONTROL SYSTEMS AND MECHANICAL VIBRATIONS DEFINITIONS ................................................................3
1.4 MATLABINTRODUCTION ...............................................................................................................................6
2. LINEAR SYSTEM SIMULATION ...................................................................................................................7
2.1 SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS .....................................................................................7
2.1.1 First-Order ODEs ......................................................................................................................................9
2.1.2 Second-Order ODEs ................................................................................................................................13
2.1.3 MATLAB Functions for ODEs .................................................................................................................19
2.2 THE LAPLACE TRANSFORM ............................................................................................................................20
2.2.2 ODE Solution via Laplace Transforms ...................................................................................................22
3. TRANSFER FUNCTIONS AND BLOCK DIAGRAMS ...............................................................................23
3.1 TRANSFER FUNCTIONS ...................................................................................................................................23
3.2 BLOCK DIAGRAMS .........................................................................................................................................24
3.4 FEEDBACK ......................................................................................................................................................27
4. TRANSIENT RESPONSE ................................................................................................................................28
4.1 SECOND-ORDER SYSTEM DAMPING CONDITIONS .........................................................................................28
4.2 SECOND-ORDER SYSTEM PERFORMANCE SPECIFICATIONS ...........................................................................36
4.3 OPEN-LOOP AND CLOSED-LOOP SYSTEM EXAMPLE...................................................................................... 42
4.4 FIRST-AND SECOND-ORDER TRANSIENT RESPONSE CHARACTERISTICS ......................................................46
4.5 SYSTEM TYPE .................................................................................................................................................51
4.7 TERM EXAMPLE OPEN-LOOP TRANSIENT RESPONSE ....................................................................................60
5. CONTROLLER DESIGN ................................................................................................................................64
5.1 CONTROLLER DESIGN INTRODUCTION ...........................................................................................................64
5.2 ROOT-LOCUS METHOD ..................................................................................................................................69
5.8 CONTROLLER DESIGN EXAMPLE 2UNSTABLE G(S) .................................................................................... 725.9 CONTROLLER DESIGN EXAMPLE 3G(S)WITH A ZERO ................................................................................76
5.10 HIGHER-ORDER SYSTEM CONTROLLER DESIGN ..........................................................................................80
5.11 CLOSED-LOOP CONTROLLER INPUT EFFORT ...............................................................................................84
5.12 DISTURBANCE EVALUATION AFTER CONTROLLER DESIGN .........................................................................91
5.13 WHOLE T(S)MATCHING CONTROLLER DESIGNTHE J-METHOD..............................................................96
5.14 TERM EXAMPLE CONTROLLER DESIGN..................................................................................................... 111
5.15 TERM EXAMPLE DISTURBANCES AND STEADY-STATE ERROR.................................................................. 123
6. VIBRATIONAL RESPONSES ...................................................................................................................... 128
6.1 FREE VIBRATIONAL RESPONSES .................................................................................................................. 128
6.1.1 Undamped Second-Order System Free Responses: Simple Harmonic Motion ..................................... 128
6.1.2 Damped Second-Order System Free Responses ................................................................................... 1516.2 FORCED VIBRATIONAL RESPONSES ............................................................................................................. 171
6.2.1 Undamped Second-Order System Harmonically-Forced Responses .................................................... 171
6.2.2 Damped Second-Order System Harmonically-Forced Responses ........................................................ 197
6.2.3 General Forcing Functions ................................................................................................................... 245
7. HARDWARE CONTROL IN THE OHIO UNIVERSITY ROBOTICS LAB .......................................... 254
7.1 QUANSER/SIMULINK CONTROLLER ARCHITECTURE................................................................................... 254
7.2 PROGRAMMABLE LOGIC CONTROLLER (PLC)ARCHITECTURE................................................................... 260
-
8/21/2019 Linear Systems Control and Vibrations
3/262
3
1. Introduction
1.1 Control Systems and Mechanical Vibrations Defini tions
This section presents some important definitions for linear control systems and mechanical
vibrations concepts, used throughout the ME 3012 NotesBook. You may be familiar with some these
terms if some are unfamiliar, dont panic, we will discuss them later.
linear system Satisfies the principles of linear superpositionand homogeneity(see p.6).
control To make an engineering dynamic system behave as desired using anactuator, a sensor, and a computer software controller.
actuator The physical component in a control system that provides the open-loopsystem input (such as a servomotor) whose values can be changed to affect
the output.
sensor The physical component in a control system that measures the outputvalue continuously to provide the feedback.
controller The software component in a feedback control system that automaticallycalculates the actuator input every time cycle to improve the output.
PID Proportional, Integral, Derivative; popular industry-standard controller.
PLC Programmable Logic Controller; popular industry-standard controller
hardware, programmed by Ladder Logic. Not part of ME 3012.
SISO Single-Input, Single-Output
MIMO Multiple-Input, Multiple-Output
stability A system is said to be stable if its output is bounded for all bounded
inputs.
open-loop A control system that functions without sensor feedback
closed-loop A control system that functions with sensor feedback and a controller
disturbances Unknown, unwanted effects that open-loop and closed-loop control
systems are subjected to in the real world, modeled at the input level.
model The set of ordinary differential equations and algebraic equations that
represents the simplified dynamics of a real-world system.
simulation Solving the model equations and plotting to predict and display the
dynamic motion of the system.
-
8/21/2019 Linear Systems Control and Vibrations
4/262
4
digital A data system that uses discrete values, such as computers.
discrete Discontinuous values.
analog A data system that uses continuous values, such as voltage-based sensors.
continuous Non-discontinuous values.
Laplace transform A mathematical transformation from the time domain to the frequency
domain.
input The external forcing function that drives a dynamic system.
output The variable of interest in motion of a dynamic system.
initial conditions The values of the output variable and its derivatives at t= 0. There must
be ninitial conditions given where nis the system order.
transfer function The Laplace transform of the output of a block divided by the Laplacetransform of the block input, with zero initial conditions.
characteristic polynomial The denominator polynomial of a transfer function, whose order is the
system order. Also appears in ODE solutions.
poles The roots of the transfer function denominator. The roots of the
characteristic polynomial.
zeroes The roots of the transfer function numerator
root locus A plot in theRe-Implane demonstrating how the closed-loop poles moveas a controller parameter Kis varied from zero to infinity.
frequency response The plots of system amplitude and phase angle vs. independent variable
input frequency.
degrees of freedom dof the number of independent parameters required to fully specify the
location of a device. The number of different ways something can move.
dynamics The study of motion with regard to forces/torques.
free-body diagram FBD, a diagram drawn out of context for each separate mass or inertiawith all external and internal forces and moments shown to give context.
cycle A repeating unit of motion.
period T, time for one cycle, sec.
cyclical frequency f, number of cycles per second, the inverse of time period, 1 / T, Hz.
-
8/21/2019 Linear Systems Control and Vibrations
5/262
5
circular frequency 2 f , scalar measure of rotational rate, i.e. the magnitude of theangular velocity vector, rad/sec.
natural frequency The rate at which an unforced, undamped dynamic system tends to
vibrate, either cyclical frequencyfn, or circular frequency n.
spring Idealized massless mechanical element that provides the oscillatorymotion in a dynamic system.
dashpot Idealized massless mechanical element that provides the energy
dissipation in a dynamic system.
mass Idealized mechanical element that provides the inertia in a dynamic
system.
mass moment of inertia Idealized mechanical element that provides the rotational inertia in a
dynamic system.
damping A linear model for energy loss due to friction and other energy dissipaters,
for either translational or rotational motion. Damping is provided by a
virtual viscous dashpot (an automotive shock system is a real example).
amplitude The maximum magnitude of a sinusoidal oscillation.
differential equation An equation in which the unknown appears with its time derivatives.
initial conditions Given values at time t= 0 for the output and its time derivatives. Theremust be as many initial conditions as the order of the differential equation.
transient response Dynamic motion that goes to zero given enough time.
homogeneous solution Transient response due to initial conditions and the external input
forcing function, yielding zero in the ODE.
steady-state response Dynamic motion that does not disappear as time increases.
particular solution Steady-state responsedue to the external input forcing function. Thereis also a transient solution due to the external input forcing function.
forcing function The input actuation provided by an external source (actuator).
damped frequency The rate at which an unforced, damped dynamic system tends to vibrate,
either cyclicalfd, or circular d.
-
8/21/2019 Linear Systems Control and Vibrations
6/262
6
Linear System Definition
A linear system is one in which all governing equations (differential, algebraic) are linear.
Linear systems satisfy the principles of linear superpositionand homogeneity. Let u(t) be the input
andy(t) be the output. Further, ( ) ( )u t y t indicates a system yielding outputy(t) given input u(t).
1) linear superposition
if 1 1( ) ( )u t y t and 2 2( ) ( )u t y t then 1 2 1 2( ) ( ) ( ) ( )u t u t y t y t
2) homogeneity
if ( ) ( )u t y t then ( ) ( )au t ay t
where ais any constant.
Examples
linear ODEs( ) ( ) ( )ay t by t u t 2( ) 2 ( ) ( ) ( )
n ny t y t y t u t
non-linear ODEs2 ( ) sin ( ) ( )ay t b y t u t 3 2( ) 2 ( ) cos ( ) ln ( )n ny t y t y t u t
Almost all real-world systems are non-linear due to Coulomb friction, hysteresis, unmodeled dynamics,
non-linear stiffness, large-angle dynamics, etc.
However, many engineering systems have
linear operating ranges, or equations may be piecewise linearized in various operating regions
Model vs. actual system we use a mathematical model to design the controller, but in the end the
controller will run with an actual system. The controller is a software program, a MATLAB/Simulink
block or blocks, taking sensor feedback from the real world and automatically generating actuatorcommands to continuously improve the dynamic performance of the system.
1.4 MATLAB Introduction
MATLAB is a general engineering analysis and simulation software. MATLAB stands forMATrix LABoratory. It was originally developed specifically for control systems simulation and
design engineering, but it has grown over the years to cover many engineering and scientific fields.MATLAB is based on the C language, and its programming is vaguely C-like, but simpler. MATLAB is
sold by Mathworks Inc. (mathworks.com) and Ohio University has a site license. For an extensive
introduction to the MATLAB software, see Dr. Bobs MATLAB Primer:
www.ohio.edu/people/williar4/html/PDF/MATLABPrimer.pdf
-
8/21/2019 Linear Systems Control and Vibrations
7/262
7
2. Linear System Simulation
2.1 Solution of Ordinary Differential Equations
Simulation means solving linear constant-coefficient ordinary differential equations, subject to
the given initial conditions (ICs). We must solve and plot the system response (output vs. time) given
the input forcing function and the initial conditions. We will consider first- and second-order ODEs.The number of initial conditions must equal the ODE order.
e.g. Solve 2 1 0( ) ( ) ( ) ( )a x t a x t a x t r t forx(t)
Given the input forcing function r(t) and subject to the initial conditions0
0
(0)
(0)
x x
x v
.
General Solution Methods
Slow ME Way
Laplace Transforms
Slow ME Way
total solution = homogeneous solution + particular solution
transient response to ICs steady-state response to input
1. Homogeneous Solution transient response to initial conditions (0), (0)x x
This method works for ODEs of any order it is demonstrated for the second-order ODE above.
2 1 0( ) ( ) ( ) 0H H Ha x t a x t a x t
Assume: ( ) stH
x t Ae
Substitute
2
( )
( )
( )
st
H
st
H
st
H
x t Ae
x t sAe
x t s Ae
into 2 1 0( ) ( ) ( ) 0H H Ha x t a x t a x t
Calculate si the roots of the nth
-order polynomial in s(called the system characteristic polynomial)
The general homogeneous solution form must have nterms. For the second-order case:
1 2
1 2( ) s t s t
Hx t A e A e
Substitute the specific siroots at this stage, but leave theAicoefficients unknown for now (there are nof
each of these, n = 2 in this example).
-
8/21/2019 Linear Systems Control and Vibrations
8/262
8
2. Particular Solution steady-state response to input forcing function r(t)
2 1 0( ) ( ) ( ) ( )P P Pa x t a x t a x t r t
AssumexP(t) according to the same form as the input forcing function r(t).
Table of Particular Solution Forms
r(t) xP(t)
constant different constant
t B1t+B2
t2 B1t
2+B2t + B3
cosD t 1 2cos sinB t B t
sinD t 1 2cos sinB t B t etc. etc.
Method of Undetermined Coefficients
Determine the unknown coefficientsBi:
Substitute ( ), ( ), ( )P P Px t x t x t into 2 1 0( ) ( ) ( ) ( )P P Pa x t a x t a x t r t
and solve for the unknown coefficientsBiright away.
3. Total Solution
( ) ( ) ( ) ( )T H P
x t x t x t x t
Now determine the unknown homogeneous coefficientsAiusing the initial conditions onxT(t).
# of characteristic polynomial roots = # of initial conditions = ODE order = n
-
8/21/2019 Linear Systems Control and Vibrations
9/262
9
2.1.1 First-Order ODEs
First-Order System Example 2
Same cksystem and initial condition, but ( ) 5sin2f t t Solve ( ) 50 ( ) 5sin2x t x t t subject tox(0) = 0
Solution
505
( ) 25sin 2 cos 21252
tx t e t t
Equivalent alternate solution form
505
( ) 25.02sin 2 0.041252
tx t e t using sin( ) sin cos cos sina b a b a b
The responsex(t) starts at zero as specified by the initial condition.
The transient solution goes to zero by about t= 0.10 sec. Steady-state solution is ( ) 25.02 sin 2 0.04ssx t t m.
= 2 rad/s = 2f f= 1/= 1/T T= sec
0 1 2 3 4 5 6 7 8-0.1
-0.08
-0.06
-0.04
-0.02
0
0.02
0.04
0.06
0.08
0.1
t (sec)
-5/1252 cos(2 t)+125/1252 sin(2 t)+5/1252 exp(-50 t)
x(t)(m)
-
8/21/2019 Linear Systems Control and Vibrations
10/262
10
Alternate form for particular solution (Example 2)
Sum-of-angles formulaecos( ) cos cos sin sin
sin( ) sin cos cos sin
a b a b a b
a b a b c a b
25sin 2 cos 2 sin(2 )
sin 2 cos cos 2 sin
t t C t
C t t
sin 2 25 cos
cos 2 1 sin
t C
t C
2 2 2 2 2cos sin 25 1C 626 25.02C
sin 1
cos 25
1
1tan 0.04
25
rad
25sin 2 cos 2 25.02 sin 2 0.04t t t
In general: 2 21 2C B B 1 2
1
tan B
B
when
1 2
( ) sin 2 cos2
sin 2
Px t B t B t
C t
-
8/21/2019 Linear Systems Control and Vibrations
11/262
11
A Final First-Order ODE exampleR, C series electrical circuit (voltage v(t) input, current i(t) output)
Model (from KVL and electrical circuit element table)1
( ) ( ) ( )Ri t i t dt v tC
substitute charge q(t)( ) ( )
( ) ( )
i t dt q t
i t q t
1
( ) ( ) ( )Rq t q t v tC
Given R= 50 and C= 0.2 mF, solve 50 ( ) 5000 ( ) 1q t q t subject to (0) 0q and a unit step voltageinput v(t). Solution
1001
( ) 15000
tq t e
1001
( ) ( )50
ti t q t e
As expected from the circuit dynamics, the charge q(t) in the capacitor builds up to a constantgiven a constant voltage input.
Also as expected, the capacitor current i(t) goes to zero at steady-state. The steady state charge value is qSS= 1/5000. The time constant is = RC= 0.01, so at 3 time constants (t = 0.03 sec) both the q(t) and i(t)
values have approached 95% of their respective final values.
v(t)
R
+
-i(t) C
0 0.01 0.02 0.03 0.04 0.05 0.060
0.5
1
1.5
2x 10
-4
q(t)
0 0.01 0.02 0.03 0.04 0.05 0.060
0.005
0.01
0.015
0.02
i(t)
t (sec)
-
8/21/2019 Linear Systems Control and Vibrations
12/262
12
First-Order System Examplesc, k massless translational mechanical system
force inputf(t) and displacement outputx(t)
( ) ( ) ( )cx t kx t f t
m, c springless translational mechanical system
force inputf(t) and velocity output v(t)
( ) ( ) ( ) ( ) ( )mx t cx t mv t cv t f t
cR, kR massless rotational mechanical system
torque input (t) and angular displacement output (t)
( ) ( ) ( )R R
c t k t t
J, cR springless rotational mechanical system
DC servomotor, torque input (t) and angular velocity output (t)
( ) ( ) ( ) ( ) ( )R RJ t c t J t c t t
L,R series electrical circuit
voltage input v(t) and current output i(t)
( )( ) ( )
di tL Ri t v t
dt
R, C series electrical circuit
voltage input v(t) and current output i(t), or charge ( ) ( )q t i t dt
1 1( ) ( ) ( ) ( ) ( )Ri t i t dt Rq t q t v t
C C
The time constants for these 6 examples are1
R
R R
cc m J L RC
k c k c R
All first-order ODEs are solved in the same way as Example 1 (assuming a unit step input), all
have the same type of time response graph, all share the same time constant behavior (after three time
constants 3the output response is within 95% of its final value).Some first-order system models are given in:
www.ohio.edu/people/williar4/html/PDF/ModelTFAtlas.pdf.
f(t)
x(t)
c
k
f(t)
x(t)
mc
k
(t)
R
(t)
cR
J
(t) (t)
cR
v(t) L
R
+
-i(t)
v(t)
R
+
-i(t) C
-
8/21/2019 Linear Systems Control and Vibrations
13/262
13
2.1.2 Second-Order ODEs
Derivation of underdamped homogeneous solution form
In this case we have complex conjugate characteristic polynomial roots1,2s a bi .
For this example assume 1,2 1 3s i as in the Section 2.1.2 ME 3012 NotesBook example.
Eulers identity must be usedcos sin
cos( ) sin( ) cos( ) sin( )
i
i
e i
e i i
1 2
1 2
( 1 3 ) ( 1 3 )
1 2
3 3
1 2
1 2
( )
cos3 sin 3 cos3 sin 3
s t s t
H
i t i t
t it it
t
x t Ae A e
Ae A e
e A e A e
e A t i t A t i t
where we used = 3tin Eulers identify. Simplifying by collecting (factoring) terms.
1 2 1 2( ) cos 3 sin 3t
Hx t e A A t A A i t
Let
1 1 2
2 1 2
B A A
B A A i
We can only have real solutions when starting with real ODE coefficients, so *1 2
A A (these constants
must be complex conjugates of each other).
1
2
RE IM
RE IM
A A A i
A A A i
1
2
2
2
RE
IM
B A
B A
Therefore 1 2( ) cos 3 sin 3t
Hx t e B t B t
Biare the real constant unknown homogeneous solution coefficients
And the general underdamped homogeneous solution form given1,2s a bi is:
1 2( ) cos sinat
Hx t e B bt B bt
That is, the real part of the poles is placed in the exponential and the imaginary part of the poles is
placed as the circular frequency of the cosand sinfunctions.
-
8/21/2019 Linear Systems Control and Vibrations
14/262
14
Derivation of alternate solution form for Second-Order ODE Example 3
The solution
( ) 0.20 cos 3 0.05 sin 3 0.30tx t e t t
from the ME 3012 NotesBook may be expressed in an equivalent form, using a single sinusoid (e.g. sin
here; cos is also possible) with phase angle. Clearly the steady-state response 0.30 will not change sonow we will work only on the transient response.
Though this underdamped x(t) solution is unique, there are alternate solution forms that are allmathematically-equivalent. A second-order system has two-dof, expressed in this solution by a cosine
term and a sine term (two modes), both with the same damped natural frequency d= 3, but of differentamplitudes. An alternate solution form which is mathematically equivalent is found by applying the
following trigonometric identity for sine (the sum-of-angles formula):
sin( ) sin cos cos sina b a b a b
Here the two-dof are expressed as an overall amplitudeAand a phase angle .
( ) (0.20cos3 0.05sin 3 ) sin(3 ) [sin 3 cos cos3 sin ]t t tH
x t e t t e A t e A t t
Matching terms, we havecos 0.05
sin 0.20
A
A
Solving for the alternate solution unknownsAand :
2 20.05 0.20 0.2062A atan2(0.20,0.05) 1.326
where we further used the trigonometric identity 2 21 1
cos sin 1 . atan2 is the MATLAB
quadrant-specific inverse tangent function and the result is given in radians. The input to atan2must
be (num,den)rather than a single ratio as in the atancase.
So the alternate solution form is:
( ) 0.206 sin 3 1.326 0.30tx t e t
Note the choice of sine in the above alternate solution was arbitrary; we could have equallychosen cosine.
Recall that the cosine function leads the sine function by /2 rad, or 90 deg.
-
8/21/2019 Linear Systems Control and Vibrations
15/262
15
Second-Order System Example 1
m= 1 kg, c= 7Ns/m, k= 12N/m
Solve ( ) 7 ( ) 12 ( ) ( ) 3 ( )x t x t x t f t u t subject to(0) 0.10
(0) 0.05 /
x m
x m s
This system is overdampedReal distinct roots, relatively slower response, no overshoot
This solution is left to the interested reader.
-
8/21/2019 Linear Systems Control and Vibrations
16/262
16
Second-Order System Example 2
m= 1 kg, c= 6Ns/m, k= 9N/m
Solve ( ) 6 ( ) 9 ( ) ( ) 3 ( )x t x t x t f t u t
Subject to(0) 0.10
(0) 0.05 /
x m
x m s
1. Homogeneous Solution ( ) 6 ( ) 9 ( ) 0H H Hx t x t x t
Assume ( ) stH
x t Ae 2( 6 9) 0sts s Ae
Characteristic polynomial 2 26 9 ( 3) 0s s s
1,2 3, 3s Real, repeated roots
Homogeneous solution form 3 31 2( )
t t
Hx t A e A te
2. Particular Solution ( ) 6 ( ) 9 ( ) 3P P Px t x t x t
( )Px t B 0 6(0) 9 3B so ( ) 1/ 3Px t B
3. Total Solution3 3
1 2
3 3 3
1 2 2
( ) ( ) ( ) 1/ 3
( ) 3 3
t t
H P
t t t
x t x t x t Ae A te
x t Ae A e A te
Now apply initial conditions
1 2
1 2
(0) 0.10 (0) 0.33
(0) 0.05 3
x A A
x A A
1
2
0.233
0.65
A
A
3( ) (0.233 0.65 ) 0.33tx t t e
This system is critically-dampedReal, repeated roots fastest response without overshoot
Check solution
Plug answerx(t) plus its two derivatives into the original ODE. Also check the initial conditions.
Plot check transient and steady state solutions, plus total solution.
-
8/21/2019 Linear Systems Control and Vibrations
17/262
17
Second-Order System Example 2 Forcedm-c-kSystem
Model ( ) ( ) ( ) ( )mx t cx t kx t f t
( ) 6 ( ) 9 ( ) 3 ( )x t x t x t u t (0) 0.10
(0) 0.05 /
x m
x m s
2 26 9 ( 3) 0s s s
Solution3 1( ) (0.233 0.65 )
3
tx t t e
Plot of x(t) vs. t
The total solutionx(t)starts at 0.1 m, ( )x t is non-zero, as specified by the initial conditions. Transient approaches zero after t = 2.5 sec Critically damped; 3 root goes to zero slightly faster alonethan witht Steady-state valueisxSS= 1/3 m.
0 1 2 3 4
-0.2
-0.1
0
0.1
0.2
0.3
0.4
t (sec)
x(t)
-
8/21/2019 Linear Systems Control and Vibrations
18/262
18
Second-Order System Example 4: Forcedm-kSystem
Model ( ) ( ) ( )mx t kx t f t (no damping)
( ) 9 ( ) 3 ( )x t x t u t (0) 0.10
(0) 0.05 /
x m
x m s
2 9 ( 3 )( 3 ) 0s s i s i
Solution ( ) (7 30)cos3 (1 60)sin3 1 3x t t t
Plot of x(t) vs. t
x(t) starts at 0.1 m, ( )x t is non-zero, as specified by the initial conditions. Simple harmonic motion Undamped; zero viscous damping coefficient
Transient solution oscillates forever about the particular solution 1/3 = 3 rad/s = 2f f= 3/2= 1/T T= 2/3 = 2.09 sec
This system is undampedComplex-conjugate roots with 0 real part, simple harmonic motion, no damping, theoretically
never stops vibrating.
-
8/21/2019 Linear Systems Control and Vibrations
19/262
19
2.1.3 MATLAB Functions for ODEsIn solving ODEs the slow ME way, we have to do the work manually, so MATLAB doesnt help
all that much (with the exception of symbolicMATLAB, see dsolvebelow). We can find the roots of
the characteristic equation; the remaining code below plots the results that were obtained manually.
cl c; cl ear ;char = [ 1 2 10] ; % Char act er i st i c pol ynomi al and r oot ss = r oot s( char ) ;
% Pl ot second- or der syst em sol ut i on r esul t sTee = i nput ( ' Ent er [ i ni t i al , del t a, and f i nal t i mes (sec) ] : ' ) ;t 0 = Tee( 1) ; dt = Tee( 2) ; t f = Tee( 3) ;t=[ t 0: dt : t f ] ;x = - exp( - t ) . *( 0. 20*cos( 3*t ) +0. 05*si n( 3*t ) ) + 0. 30;ss = 0. 3*ones( si ze( t ) ) ; % St eady- st at e sol ut i onf i gure;pl ot ( t , x, t , ss, ' : ' ) ; gr i d;set ( gca, ' Font Si ze' , 18) ;
axi s ( [ t 0 t f 0 0. 4] ) ;xl abel ( ' t i me' ) ; yl abel ( ' X( t ) ' ) ;
Other MATLAB ODE-related functions
dsolve symbolic ODE solution (see below)
ode45 numerical ODE solution using 4th
/5th
order Runge-Kutta method
After we get into Laplace Transforms, we will learn other useful MATLAB functions for ODE solution.
ODE solution via symbolic MATLAB function dsolve
The MATLAB code below shows how to analytically solve first- and second-order ODEs (first-
order ODE Example 1 and second-order ODE Example 3), using MATLAB function dsolve, display
the analytical solution results to the screen, and then plot results using MATLAB function ezplot
(which reversesthe input data compared to most MATLAB plot commands).%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Anal yt i cal sol ut i on f or ODEs usi ng symbol i c MATLAB% Dr . Bob, ME 3012%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -cl c; cl ear ;x1 = dsol ve( ' Dx+50*x=5' , ' x(0) =0' ) ;pretty(x1)f i gure;
t 1 = [ 0: 0. 001: 0. 16] ;ezpl ot ( x1, t 1) ; gr i d; axi s( [ 0 0. 16 0 0. 105] ) ;x2 = dsol ve( ' D2x+2*Dx+10*x=3' , ' Dx( 0) =0. 05' , ' x(0) =0. 10' ) ;pretty(x2)f i gure;t 2 = [ 0: 0. 01: 6] ;ezpl ot ( x2, t 2) ; gr i d; axi s([ 0 6 0 0. 4] ) ;
-
8/21/2019 Linear Systems Control and Vibrations
20/262
20
2.2 The Laplace Transform
Partial Laplace Transform Table
( )f t ( )F s
1 Dirac delta (t) 1
2 unit step u(t)1
s
3 unit ramp r(t) = t2
1
s
4 tn
n
sn
!1
5 e at 1( )s a
6 1 ate ( )
a
s s a
71
( ) ( )
at bt e e
ab a a b b b a
1
( )( )s s a s b a b
8 n att e
1!
( )nn
s a
9 sin t
s2 2
10 cos ts
s2 2
11 e tat sin 2 2( )s a
12 e tat cos 2 2( )
s a
s a
-
8/21/2019 Linear Systems Control and Vibrations
21/262
21
Partial Laplace Transform Table (continued)
( )f t ( )F s
13 cos sinat b a
e t t
2 2( )
s b
s a
142 2( )
sin( )atb a
e t
1tanb a
2 2( )
s b
s a
15 2sin
1
ntnde t
;
21d n ; 0 1 2
2 22
n
n ns s
16 21 sin( )
1
nt
d
et
; 1cos ; 0 1 2
2 2( 2 )
n
n ns s s
17 2 2 2 21
sin( )ate
ta a
; 1tan
a
2 2
1[( ) ]s s a
18
2 2
2 2 2 2
1 ( )sin( )at
b b ae t
a a
1 1tan tan
b a a
2 2[( ) ]
s b
s s a
-
8/21/2019 Linear Systems Control and Vibrations
22/262
22
2.2.2 ODE Solut ion via Laplace TransformsThis subsection presents an alternate solution for the first-order ODE problem from the ME 3012
NotesBook. Again, this ODE is solved using the Laplace Transform method but now, if we have aLaplace Transform table of sufficient detail, as on the preceding pages, we can skip the partial fraction
expansion step and use the table directly.
ODE Solution via Laplace Transforms Examples
First-Orderckmechanical system Example 1
Solve ( ) 50 ( ) 5x t x t forx(t), subject tox(0) = 0 and a step input of magnitude 5.
We did this ODE solution via the slow ME way and the Laplace Transform method with partial fraction
expansion.
Take the Laplace transform of both sides (dont forget the initial condition but it is given as zero).
5
( ) (0) 50 ( )
5( ) 50 ( )
sX s x X s
s
sX s X ss
Solve for the variable of interest,X(s), which is the Laplace transform of the answerx(t).
5( 50) ( )
5( )
( 50)
s X ss
X ss s
Up to this point the solution is identical to that in the ME 3012 NotesBook. But now we can skip thepartial fraction expansion if we use the following Laplace Transform table entry.
( )( )
aF s
s s a
( ) 1 atf t e
We must algebraically modify X(s) so that the same constant a appears in the numerator and
denominator, by multiplying by 1 (10/10).
10 5 1 50( )
10 ( 50) 10 ( 50)X s
s s s s
Taking the inverse Laplace transform ofX(s) yields the solutionx(t).
1 1 1
50
1 50 1 50( ) ( )
10 ( 50) 10 ( 50)
1( ) (1 )
10
t
x t X ss s s s
x t e
This is the same solution obtained twice previously.
-
8/21/2019 Linear Systems Control and Vibrations
23/262
23
3. Transfer Functions and Block Diagrams
3.1 Transfer Functions
Addi tional Transfer Funct ion Example
4. R-L-C Parallel Electrical Circuit
Model:( ) 1 1
( ) ( ) ( )dv t
C v t v t dt i t dt R L
input: current i(t) output: voltage v(t)
Open-loop transfer function :
2
( ) 1 1( ) ( ) ( )
1 1 ( )( ) ( ) ( )
1 1( ) ( )
( ) 1( ) 1 1 1 1( )
dv tC v t v t dt i t
dt R L
V sCsV s V s I s
R L s
Cs V s I sR Ls
V s sG s I s
Cs Cs sR Ls R L
Open-loop block diagram
i(t) R L C v(t)
+
-
i (t)L
-
8/21/2019 Linear Systems Control and Vibrations
24/262
24
3.2 Block Diagrams
Method to define transfer functions in MATLAB
Define polynomials via an array using square brackets with the numerical polynomial
coefficients given in descending power of s. See denGbelow.
Define the numerator and denominator polynomials num and den for your transfer function;
then use:
SysName = tf(num,den); % define transfer function in MATLAB
to define the transfer function in MATLAB. You then use the name SysName in various MATLAB
functions that require a transfer function as one of its inputs.
Examples2
1( )
2 8G s
s s
1( )
2C
sG s
s
1( )
3H s
s
numG = [1];denG = [1 2 8];sysG = tf(numG,denG);
numGc = [1 1];denGc = [1 2];sysGc = tf(numGc,denGc);
numH = [1];denH = [1 3];
sysH = tf(numH,denH);
-
8/21/2019 Linear Systems Control and Vibrations
25/262
25
MATLAB to reduce block diagrams to one transfer function
[num,den] = zp2tf(Z,P,K); % convert zero-pole to transfer function
[Z,P,K] = tf2zp(num,den); % convert transfer function to zero-pole
Z zeroes
P poles
K scalar gain
num,den transfer function numerator and denominator
[num,den] = series(num1,den1,num2,den2); % series connection of two systems
or [sys] = series(sys1,sys2);
sysi = tf(numi,deni) % transfer function description of block i
[sysT]=feedback(sys1,sys2,sign) %close the feedback loop determine T(s)
sys1 = tf(num1,den1); % transfer function for GC(s)G(s)
sys2 = tf(num2,den2); % transfer functionH(s)
sign: +1 for positive feedback, 1 for negative (the default)
Make sure you can do each of these by hand!
Methods to solve ODEs
Slow ME way, Laplace Transforms MATLAB dsolve analytical MATLAB numerical solutions: impulse, step, lsim, ode45
MATLAB functions to numerically solve ODEs
impulse impulse response of continuous-time linear systems
1. impulse(SysName); % plots to screen
2. impulse(SysName,T); % plots to screen, user controls timeT3. [Y,X] = impulse(SysName); % saves to [ Y, X] for plotting later
4. [Y,T,X] = impulse(SysName,T); % same as 3, user controls timeT
where:
SysName=tf(num,den) name for transfer function-based system
num,den transfer function numerator and denominator
T = [t0:dt:tf]; evenly-spaced, user-supplied time array
Y output
X system state ( ,Y Y stored column-wise)
step step response of continuous-time linear systems
step(SysName); % same options and terms as impulse
lsim simulation of continuous-time linear systems for any general given input
lsim(SysName,U,T);plots to screen
[Y,X] = lsim(SysName,U,T,X0); % saves to [ Y, X] for plotting later
U given input, same length asT
X0 initial conditions
-
8/21/2019 Linear Systems Control and Vibrations
26/262
26
Simulink model and plots for the Example of Section 3.2
Open-loop Closed-loop
See Dr. Bobs on-line MATLAB Primer for a Simulink tutorial to get you started:
www.ohio.edu/people/williar4/html/PDF/MATLABPrimer.pdf
Step Ydes
Step U
StepResponses
1
s+3
H
s+1
s+2
Gc
1
s +2s+82
G Open
1
s +2s+82
G
Ydes E U Closed Yact
Yact
Yact
Ysens
U Y Open
-
8/21/2019 Linear Systems Control and Vibrations
27/262
27
3.4 Feedback
Four reasons for using feedback
1. To modify the transient response of the system. We can change open-loop poles to closed-looppoles with more desirable behavior to ensure stability and modify the system transientperformance.
2. To reduce steady-state error in the system.
3. To decrease the sensitivity of the closed-loop system to variations in the open-loop plant transfer
function. Sensitivity is like a derivative( )
( )
T s
G s
.
4. To reduce the effects of disturbances, unmodeled dynamics, uncertainties, nonlinearities,parameters changing with time, and noise. To increase system robustness.
Feedback is not free. A closed-loop feedback system is more expensive and complex, and thus
less reliable, than an open-loop system. Therefore, the engineer must determine if closed-loop feedback
control is justified or if the open-loop system can perform adequately.
There are a host of real-world dynamic systems which demand closed-loop feedback control.
-
8/21/2019 Linear Systems Control and Vibrations
28/262
28
4. Transient Response
4.1 Second-Order System Damping Condit ions
Here is the MATLAB program to create the figure for the example of Section 4.1, comparing the
overdamped, critically-damped, underdamped, and undamped second-order system responses to a unit
step input.
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % Over - , Cr i t i cal l y, Under - , and Undamped cases usi ng st ep f unct i on% Dr . Bob, ME 3012%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cl ear ; cl c;
num = [ 1] ;denOVER = [ 1 6 4] ; % Over dampeddenCRI T = [ 1 4 4] ; % Cr i t i cal l y- dampeddenUNDR = [ 1 2 4] ; % Under dampeddenUN = [ 1 0 4] ; % Undamped
pol esOVER = r oot s( denOVER) ; % Pol es f or each casepol esCRI T = r oot s( denCRI T) ;pol esUNDR = r oot s( denUNDR) ;pol esUN = r oot s( denUN) ;
OVER = t f ( num, denOVER) ;CRI T = t f ( num, denCRI T) ;UNDR = t f ( num, denUNDR) ;UN = t f ( num, denUN) ;
t = [ 0: 0. 01: 8] ;[ yOVER, xOVER] = st ep( OVER, t ) ; % Uni t st ep r esponses[ yCRI T, xCRI T] = st ep( CRI T, t ) ;[ yUNDR, xUNDR] = st ep( UNDR, t ) ;[ yUN, xUN] = st ep( UN, t ) ;
% Pl ot uni t st ep r esponsesf i gure;pl ot ( t , yOVER, ' r ' , t , yCRI T, ' g' , t , yUNDR, ' b' , t , yUN, ' m' ) ;set ( gca, ' Font Si ze' , 18) ;
gr i d; yl abel ( ' \ i t y( t ) ' ) ; xl abel ( ' \ i t t ( \ i t sec) ' ) ;l egend( ' Over ' , ' Cr i t ' , ' Under ' , ' Un' ) ;
-
8/21/2019 Linear Systems Control and Vibrations
29/262
29
Over-, Critically-, Under-, and Un-damped Examples using impulse
Solve
( ) 6 ( ) 4 ( ) ( )
( ) 4 ( ) 4 ( ) ( )
( ) 2 ( ) 4 ( ) ( )
( ) 0 ( ) 4 ( ) ( )
y t y t y t t
y t y t y t t
y t y t y t t
y t y t y t t
fory(t), all subject to zero initial conditions(0) 0
(0) 0
y
y
and an impulse input.
For the impulse responses, solve the same ODEs as the step examples in the ME 3012
NotesBook, subject to zero initial conditions and impulse input (t). Note that though we specified zero
initial conditions (0) 0y
and (0) 0y , for the impulse responses only the y(0) initial condition can besatisfied, i.e. all (0)y initial velocities take their own value, different from zero as seen below.
Impulse responses plot
The impulse input final value is 0. Why are the slopes non-zero at t = 0? See Section 4.4 in thisSupplement.
The above figure was generated using the same MATLAB program as given above, but
substituting MATLAB function impulsefor step.
0 1 2 3 4 5 6 7 8-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
y(t)
t (sec)
Over
Crit
Under
Un
-
8/21/2019 Linear Systems Control and Vibrations
30/262
30
MATLAB Simulink
MATLAB has a powerful graphical user interface (GUI) called Simulink. From the MATLAB
command window type simulinkand you can create and simulate any control system described by
block diagrams and transfer functions. Look around to find the transfer function, step input, and scope(plot) output blocks. Simply drag and drop the desired block to the Simulink workspace. Double-click
on any block to change its parameters. Connect blocks with lines using the mouse/cursor. Simply press
the play button to run your model. Its fast, fun, and addicting! Make sure you can do the steps byhand, but you are free to use this tool for homework.
For example, the Simulink diagram below recreates the unit step responses for the overdamped,critically-damped, underdamped, and undamped second-order system example of Section 4.1. All
transfer functions are fed by the same Stepinput. The mux, or multiplexer, block is used to compare 4
results in one plot, in this case combining 4 scalar signals to one vector signal, to send to the Plots
scope. The resulting plot is identical in form to that shown in the ME 3012 NotesBook, though the
Simulink graphics do not look as nice.
A Simulink tutorial is given in Dr. Bobs on-line MATLAB Primer:
www.ohio.edu/people/williar4/html/PDF/MATLABPrimer.pdf
-
8/21/2019 Linear Systems Control and Vibrations
31/262
31
Impulse Input in Simulink
One can simulate the impulse responses in Simulink also. Since there is no Impulse input
block, we must create our own impulse input. There are three possible methods.
1. The Dirac Delta impulse input (t) should have infinite magnitude but infinitesimal duration. It is
normalized in the sense that ( ) 1t , i.e. the area under the curve is 1. One way to approximate theimpulse input (t) is to turn on a step input at t= 0 with a large magnitudeMand then subtract from thisstep input another of equal magnitudeM, starting at time t = 1/Msec, as shown in the figure below. Ihave had success withM= 1000 and 10000, among others. Be sure to scope the resulting impulse input
to ensure it is what you intended.
2. We know that( )
( ) du t
tdt
, where u(t) is the unit step input and (t) is the impulse input. This
concept is implemented in the figure below. It appears that this approach may not work when starting at
t= 0 (it does not generate (t) but gives zero instead). If you start the Simulink simulation at t= 1, itshould work fine. Again, be sure to scope the resulting impulse input to ensure it is what you intended.
Step dt
Step
Scope
10
s +s+102
G(s)
impulse input
du/dt
derivativeStep @ t=1
Scope
10
s +s+102
G(s)
impulse input
-
8/21/2019 Linear Systems Control and Vibrations
32/262
32
3. Either of the previous two methods work fine. Here is a third method instead of using a discrete
step input as in Method 1 on the previous page, use a steep ramp for a very short time, followed by a
symmetric steep ramp with negative slope to send the input signal back to zero. Again the area underthis steep triangular input must be 1.
Let the final input value be a, the time to rise from 0 to abe called t1, and the final time when theinput signal reaches back to zero be called t2(by symmetry t2= 2t1. This type of approximated Dirac
delta input is constructed in Simulink as follows. Add three ramp inputs, the first starting at t= 0 with a
steep positive slope of c= a/ t1, the second starting at t= t1with a negative slope of 2c, and the third
starting at t= t2with a positive slope of c(see the Simulink model shown below). For example, use a=1000, t1= 0.001 sec, c= 1,000,000, and t2= 0.002 sec. Again, be sure to scope the resulting ramped-
unramped Dirac delta approximation to ensure it is what you expected. The general equations for this
case are summarized below:
12 1
2
1
1
a ct
at
ta
tc
-
8/21/2019 Linear Systems Control and Vibrations
33/262
33
Other Inputs in Simulink
Simulink provides step, ramp, sine inputs among many other built-in possibilities. Thissubsection discusses and presents some other inputs that can be built in Simulink.
Ramped-step input
The unit step input is very popular and common in the controls field. Actually it is a poor input
signal in the real world because no dynamic system can change its value instantaneously to match what
the unit step input is demanding. Instead, a ramped-step inputmay be better for real-world systems tofollow. The ramped-step input signal starts at zero (not instantaneously starting at a constant value) and
linearly changes, with constant slope, to a final constant value, which is held as long as the simulation
proceeds. Let the final input value be a, and the time to rise from 0 to a be called t1. This generalramped-step input may be constructed in Simulink as follows. Add two ramp inputs, the first starting at
t= 0 with a positive slope of c= a/ t1, and the second starting at t= t1with a negative slope of c(or,
equivalently, subtract the second ramp with a positive slope as shown in the Simulink model below).The example shown assumes a= 3 and t1= 2 sec. be sure to scope the resulting ramped-step to ensure it
is what you expected.
Scope
Ramp @ t1
Ramp
ramped-step input
-
8/21/2019 Linear Systems Control and Vibrations
34/262
34
Step and ramped-step inputs work well for controlling position variables (either translational or
rotational). They also work for controlling velocity when that is the output of interest. However, many
projects may need to move positions based on velocity control. In these cases consider using atrapezoidal step input, which is similar to the ramped-step, but turns off rather than holding a constant
value indefinitely.
Trapezoidal-step input
The trapezoidal-step input signal starts at zero, linearly changes with constant slope to a final
constant value, which is held for a specified time. Then the input signal linearly decreases in asymmetric manner back to zero, which is held as long as the simulation proceeds. Let the final input
value be a, the time to rise from 0 to abe called t1, the time to start the linear decrease back to 0 be
called t2, and the final time when the input signal reaches back to zero be called t3(by symmetry t3 t2=t1. This general trapezoidal-step input is constructed in Simulink as follows. Add four ramp inputs, the
first starting at t= 0 with a positive slope of c= a/ t1, the second starting at t= t1with a negative slope
of c, the third starting at t= t2with a negative slope of c, and finally the fourth starting at t= t3with apositive slope of c(see the Simulink model shown below). The example shown assumes a= 1, t1= 2, t2
= 6, and t3= 8 sec. Again, be sure to scope the resulting ramped-step to ensure it is what you expected.
-
8/21/2019 Linear Systems Control and Vibrations
35/262
35
Trapezoidal Veloci ty Input, Associated Position Command
The example trapezoidal-step velocity input is shown in magenta in the plot above. Integrating
this desired signal yields the associated position command. Since the controlled velocity returns to zero,
the associated position can be controlled to move from one displacement to another. This appliesequally to translational or rotational velocity/position.
Assuming the example trapezoid-step represents angular velocity (t), the associated final
angular displacement Fis:
2 2
0 1 2 1 3 2
2
0 1 1
1 1( ) ( )
2 2
2
F
F
ct a t t c t t
ct at
where in the example above, initial angle 0 = 0 and by symmetry t1 = t3 t2. Further we chose
2 1 12t t t (this can be changed by the user). Since the slope is c= a/ t1, the above equation simplifiesto:
01
3
Fta
Using the above equation, one can specify the initial and final angles (or translational positions), plus theconstant velocity term a, and solve for t1and construct any desired trapezoidal-step velocity input like
the example above.
-
8/21/2019 Linear Systems Control and Vibrations
36/262
36
4.2 Second-Order System Performance Specifications
This section presents plots for the four performance specifications presented in the 3012
NotesBook, based on the analytical formulas for the underdamped case.
Rise Time vs. for various nvalues
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 15
10
15
20
25
30
(unitless)
tR(sec)
n= 0.1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.5
1
1.5
2
2.5
3
(unitless)
tR(sec)
n= 1
n= 10
n= 100
-
8/21/2019 Linear Systems Control and Vibrations
37/262
37
Rise Time vs. nfor various values
Peak Time vs. d
-
8/21/2019 Linear Systems Control and Vibrations
38/262
38
Percent Overshoot vs.
Settling Time vs. n
-
8/21/2019 Linear Systems Control and Vibrations
39/262
39
MATLAB Function stepinfo
The ME 3012 NotesBook presented a fast and easy method for MATLAB to display the rise time
tR, peak time tP, percent overshoot PO, and settling time tS for any given step response. This right-
clicking in a stepwindow is accurate for any order and type of system since MATLAB applies the
rules to calculate these results numerically, rather than applying the generic-second-order-system-only
equations.
This section presents an alternative MATLAB function to obtain the same information. The
drawback is there is no graphical output in this case, but then more information is given. We now
demonstrate this approach for the same example from the NotesBook.
num = [10];den = [1 0.5 10];Sys = tf(num,den);stepinfo(Sys);
The result of this piece of m-code is a structure with the following data:
RiseTime: 0.3505SettlingTime: 15.1295SettlingMin: 0.3924SettlingMax: 1.7795Overshoot: 77.9467Undershoot: 0
Peak: 1.7795PeakTime: 0.9966
These answers agree well with the results presented earlier in the ME 3012 NotesBook. The
familiar rise time tR, peak time tP, percent overshoot PO, and settling time tSare given on lines 1, 8, 5,and 2 above, respectively.
The additional information given is as follows (from help stepinfoin MATLAB):
SettlingMin: min value of Y once the response has risenSettlingMax: max value of Y once the response has risenUndershoot: percentage undershoot
Peak: peak absolute value of Y
This extra information is rather redundant in this example; the SettlingMaxvalue is identical to the
Peakvalue, both of which were already known from percent overshoot PO.
Two items are new and potentially interesting: SettlingMin gives the value of the lowest
valley, which is directly following the maximum peak, and the Undershootvalue gives the percent
undershoot (negative from zero) relative to the final value. Refer to the ME 3012 NotesBook to see that
these values of 0.3924and 0, respectively, are correct for this example.
See also: lsiminfo.
-
8/21/2019 Linear Systems Control and Vibrations
40/262
40
Specifying Desired Poles for Critically-Damped or Overdamped Performance
In the ME 3012 NotesBook, to specify good behavior for the closed-loop controller, all we haveare underdamped performance specification equations. Many real-world controllers can benefit from
critically-damped or overdamped performance specifications. This original work is presented below.
For the critically-damped and overdamped cases, percent overshoot is zero and peak time is
infinite. Generally settling time is more important than rise time so this work will focus only on settling
time. We cannot use the underdamped equation for calculating 2% settling time for the critically-damped and overdamped specifications. However, the definition for settling time is identical (the time
at which the critically-damped or overdamped response crosses the 98% line of the final value for aunit step response. Using MATLAB step and right-clicking on the resulting plot can easily calculate thesettling time numerically this is the approach followed here.
For the critically-damped case, s1= s2 (both poles are negative, real, and identical). There areinfinite overdamped cases; here we use s2= 2s1 (both poles are negative and real). All poles must be
negative for stability, but the plots below show positive s1 for convenience of viewing the data
represents only negative poles.
For various pole values in the critically-damped case the settling time is found numerically using
MATLAB step and right-clicking in the plot (Characteristics Settling Time). The settling time tSvs.pole s1 plot is shown below. The same data was entered in Excel and the best exponential curve fitswere found to be:
Critically-Damped Overdamped
1
1
5.83( )St s
s 2R 1
1
1
4.6( )St s
s 2R 1
It was found that including s1values less than 1 made for worse curve fitting; therefore the curve
fits reported above are only for 11 10s and the table below reports discrete settling time results for
11s , for completeness. Again the overdamped case uses s2= 2s1. The two R
2values indicate that
these are perfect curve fits.
s1 tS(critically-damped) tS(overdamped)
0.25 23.30 18.40
0.50 11.70 9.20
0.75 7.78 6.14
The two plots below present settling time results for the critically-damped and overdampedcases, respectively. To use these results for specifying good behavior in controller design, one can
specify the desired settling time, choose critically-damped or overdamped, and solve for s1 from the
appropriate best curve fit equation above (or try to read the s1value from the appropriate plot). Once s1is known, use s2= s1for the critically-damped case and s2= 2s1for the overdamped case. If you desire a
different type of overdamping, you can use trial-and-error.
-
8/21/2019 Linear Systems Control and Vibrations
41/262
41
For all design cases, be sure to evaluate the expected dynamic response over time for your
desired behavior to ensure it agrees with what you specified (in terms of settling time and 0%
overshoot).
Settling Time vs. s1
Critically-Damped s2= s1and Overdamped s2= 2s1
1 2 3 4 5 6 7 8 9 100
1
2
3
4
5
6
s1
tS(sec)
critically-damped
overdamped
-
8/21/2019 Linear Systems Control and Vibrations
42/262
42
4.3 Open-Loop and Closed-Loop System Example
Given the following open-loop system model ( ) 2 ( ) 4 ( ) 4 ( )y t y t y t u t
subject to (0) 0, (0) 0y y and a unit step input.
Open-Loop Behavior
Open-loop transfer function and block diagram:
2
2 2 2
4( )
2 2 4
n
n n
G ss s s s
Open-loop characteristic polynomial OL(s), natural frequency n, dimensionless damping ratio ,damped frequency d, and poles s1,2 (complex conjugate poles with negative real part, therefore this
system is underdamped):
2( ) 2 4OL
s s s 2n 0.5 3d 1,2 1 3s i
Open-Loop System Unit Step Response
Open-loop performance specificationstR 0.84 stP = 1.81 s
PO = 16.30%tS 4.00 s
Open-loopySS use the final value theorem (FVT)
2 20 0 0 0
4 1 4 4lim ( ) lim ( ) lim ( ) ( ) lim lim 1
2 4 2 4 4OLSS
t s s s sy y t sY s sG s U s s
s s s s s
0 1 2 3 4 5 60
0.2
0.4
0.6
0.8
1
1.2
yo(t)
t (sec)
-
8/21/2019 Linear Systems Control and Vibrations
43/262
43
Closed-Loop Controller Evaluation
Choose a simple controller ( ) 10CG s K Assume a perfect sensor, i.e.H(s) = 1.
Control law ( ) ( ) ( ) ( )CU s G s E s KE s
Closed-loop block diagram and transfer function:
2 24 40( )
2 4 4 2 44KT s
s s K s s
Closed-loop characteristic polynomial CL(s), natural frequency n, dimensionless damping ratio ,damped frequency d, and poles s1,2 (complex conjugate poles with negative real part, therefore this
closed-loop system is also underdamped):
2( ) 2 44CL s s s 6.63n 0.15 6.56d 1,2 1 6.56s i
Open- and Closed-Loop System Unit Step Responses
Closed-loop performance specs Open-loop performance specstR 0.14 s(in error) tR 0.84 stP = 0.48 s tP = 1.81 s
PO = 62.1% PO = 16.3%tS 4.02 s tS 4.00 s
The MATLAB m-file to generate this plot is given later in this section.
Closed-loopySS use the final value theorem (FVT)
2 20 0 0 0
40 1 40 40lim ( ) lim ( ) lim ( ) ( ) lim lim 0.909
2 44 2 44 44CLSS
t s s s sy y t sY s sT s R s s
s s s s s
0 1 2 3 4 5 60
0.5
1
1.5
t (sec)
y(t)
Open-loop
Closed-loop
-
8/21/2019 Linear Systems Control and Vibrations
44/262
44
Steady-state error
Let us assume that the steady-state valueySSof the open-loop system is the desired output value.
We calculate the steady-state error of the closed-loop system relative to the desired open-loop value.
100%OL CL
OL
SS SS
SS
SS
y ye
y
For the example40
144 100% 9.1%
1SSe
Closed-loop steady-state error Open-loop steady-state error
eSS = 9.1% eSS = 0%
Summary
Choosing a random simple controller made the step response worse than the original open-loop
case! Controller design must be done properly or things can easily get worse.
For ( ) 10CG s K , the closed-loop system is more underdamped than the open-loop
system: the riseand peak timesare much faster (not necessarily good for the dynamics of the system),
the percent overshootis much worse, the settling timeturned out to be about the same, and a steady-
state error was introduced. The steady-state error arose because the controller introduced a virtual
spring, in addition to the existing spring in the open-loop system, making the closed-loop system stiffer,
resulting with a smaller displacement given the same unit step input force.
Simulink Simulation
The MATLAB Simulink diagram below recreates the previous plot comparing the open- and
closed-loop systems for the current example.
Two new blocks are used, the circular summing junction and the triangular gain (representing thesimple proportional controller). More complex controllers can be represented by transfer functions as
we will see later. The feedback loop takes the closed-loop system output back to the summing junction.
Themuxblock (two signals into one above) allows us to compare both results on one scope (Plots).
Both open- and closed-loop simulations use the same Stepinput for a fair comparison (pickoff point).
If we choose a final simulation time of 6 sec (entered via the time box on the simulation windowmenu), the Simulink plots are identical to that shown earlier.
-
8/21/2019 Linear Systems Control and Vibrations
45/262
45
Here is the MATLAB program to create the figure for the example of this section, comparing the
open- and closed-loop system responses to a unit step input.
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % Open- l oop/ Cl osed- l oop Exampl e% Dr . Bob, ME 3012%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - cl ear ; cl c;% Open- l oop uni t st ep r esponsenumo = [ 4] ; deno = [ 1 2 4] ;SysO = t f ( numo, deno) ;zeroso = r oot s( numo) ; pol eso = r oot s( deno) ;[ wno, zet ao] = damp(deno) ;t = [ 0: 0. 01: 6] ;yo = st ep( SysO, t ) ; % Open- l oop uni t st ep response
% Cl osed- l oopK = 10; % Si mpl e pr opor t i onal cont r ol l er numc = [ 4*K] ; denc = [ 1 2 4+4*K] ;SysC = t f ( numc, denc) ;zerosc = r oot s( numc) ; pol esc = r oot s( denc) ;
[ wnc, zet ac] = damp(denc) ;yc = st ep( SysC, t ) ; % Cl osed- l oop uni t st ep r esponse
% Check hand- deri vat i on of T( s) =[ numc/ denc] vi a MATLABnumgc = [ K] ;dengc = [ 1] ;[ numa, dena] = ser i es( numgc, dengc, numo, deno) ;[ numc2, denc2] = f eedback( numa, dena, [ 1] , [ 1] ) ;
TCheck = t f ( numc2, denc2) % Di spl ay T( s) check r esul t s
% Pl ot open- and cl osed- l oop st ep r esponsesf i gure;pl ot ( t , yo, ' r ' , t , y c , ' g' ) ;set ( gca, ' Font Si ze' , 18) ; l egend( ' Open- l oop' , ' Cl osed- l oop' ) ;axi s([ 0 6 0 1. 5] ) ;gr i d; yl abel ( ' \ i t y( t ) ' ) ; xl abel ( ' \ i t t ( \ i t sec) ' ) ;
% Per f ormance specs: open- l oopwdo = wno( 1) *sqrt ( 1- zet ao( 1) 2) ; % Damped nat ural f r equencyt r o = ( 2. 16*zet ao(1) + 0. 60) / wno(1) % Ri se t i met po = pi / wdo % Peak t i mepoo = 100*exp( - zet ao(1) *pi / sqr t ( 1- zet ao(1) 2) ) % Per cent overshoott so = 4/ ( zet ao( 1) *wno( 1) ) % Set t l i ng t i me
% Per f ormance specs: cl osed- l oopwdc = wnc( 1) *sqr t ( 1- zetac( 1) 2) ; % Damped nat ural f r equencyt r c = ( 2. 16*zet ac( 1) + 0. 60) / wnc( 1) % Percent overshoot
t pc = pi / wdc( 1) % Peak t i mepoc = 100*exp( - zet ac( 1) *pi / sqr t ( 1- zet ac( 1) 2) ) % Per cent overshoott sc = 4/ ( zet ac( 1) *wnc( 1) ) % Set t l i ng t i me
% Ri ght - cl i ck f or per f ormance specs: open- and cl osed- l oopf i gur e; st ep( SysO) ; gr i d;f i gure; step( SysC) ; gr i d;
-
8/21/2019 Linear Systems Control and Vibrations
46/262
46
4.4 First- and Second-Order Transient Response Characteristics
The Cartesian representation of the 3x4 subplots (step responses) from the ME 3012 NotesBook
Section 4.4 is for convenience only, since that is the way the MATLAB subplot works. For more
accuracy, the underdamped cases c. should be represented using polar coordinates (for this example
shown to scale below) rather than Cartesian coordinates.
Recall for underdamped poles the polar representation is r= nand1sin ; thus the two symmetric
angles in the examples above are 5.7 and 30 .
Also, remember all complex conjugates occur in pairs, as shown above (two poles generate onetime response plot in all second-order cases, including the non-complex-conjugate cases).
c1
n
n
Im
Re
x
x
x
xx
x
x
x
c1
c2
c2
c3
c3
c4
c4
n
n
-
8/21/2019 Linear Systems Control and Vibrations
47/262
47
We can also perform the example of Section 4.4 using the impulse function in place of the
stepfunction; this is shown below.
Transient Response Characteristics vs.Re-Im-plane pole locations
(impulseresponses, generic second-order system, zero initial conditions)
Figure key
5.0 n 2 s i1 2 1 173, .
c1. underdamped
01. n 2 s i1 2 02 199, . .
c2. underdamped
0 n 2 s i1 2 2,
d1. undamped
01. n 2 s i1 2 0 2 199, . .
e1.
0 5. n 1s i1 2 05 0866, . .
c3. underdamped
01. n 1s i1 2 01 0995, . .
c4. underdamped
0 n 1 s i1 2,
d2. undamped
01. n 1 s i1 2 01 0 995, . .
e2.
2 n 1s1 2 373 0 27, . , .
a. overdamped
1 n 1s1 2 1,
b. critically-
damped
0 n 0 s1 2 0,
d3. special
undamped
1(-1.005)
n 1( 0.99n )s1 2 1, (0.9,1.1)
f. (g.)
Note While cases fand gmay look identical between the step (ME 3012 NotesBook) and impulse (this
page) responses, they are different the impulse responses go to infinity faster than the step cases.
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-100
-50
0
50
100
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-10
-5
0
5
10
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 20-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
0 5 10 15 200
5
10
15
20
0 5 10 15 200
2
4
6
8
10
12
14
16x 10
9
f
g
-
8/21/2019 Linear Systems Control and Vibrations
48/262
48
Here is the MATLAB program to create the figure for the example of Section 4.4, comparing the
various second-order system transient responses to a unit step input, based on pole locations. To find
the impulse responses of the previous page, simply substitute MATLAB function impulsefor step.
%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Gener at e pl ot s t o di spl ay t r ansi ent uni t st ep r esponse char act er i st i cs% gi ven di f f er ent di mensi onl ess dampi ng r ati os and natural f r equenci es% f or t he generi c second- order system Dr. Bob, ME 3012%- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -cl c; cl ear ; f i gure;
dt = 0. 01; t f = 20; t = [ 0: dt : t f ] ;Xmi n = 0; Xmax = t f ; Ymi n = 0; Ymax = 2;
subpl ot ( 3, 4, 1) ;zet a = 0. 5; wn = 2; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 1 = r oots ( den) ;
subpl ot ( 3, 4, 2) ;zet a = 0. 1; wn = 2; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 2 = r oots ( den) ;
subpl ot ( 3, 4, 3) ;zet a = 0; wn = 2; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep(num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 3 = r oots ( den) ;
subpl ot ( 3, 4, 4) ;zet a = - 0. 1; wn = 2; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot ( t , y); axi s( [ Xmi n Xmax - 50 50] ) ; r 4 = r oot s( den) ;
subpl ot ( 3, 4, 5) ;zet a = 0. 5; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 5 = r oots ( den) ;
subpl ot ( 3, 4, 6) ;zet a = 0. 1; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 6 = r oots ( den) ;
subpl ot ( 3, 4, 7) ;zet a = 0; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep(num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 7 = r oots ( den) ;
subpl ot ( 3, 4, 8) ;zet a = - 0. 1; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep( num, den, t ) ;pl ot ( t , y); axi s( [ Xmi n Xmax - 10 10] ) ; r 8 = r oot s( den) ;
subpl ot ( 3, 4, 9) ;zet a = 2; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep(num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 9 = r oots ( den) ;
subpl ot ( 3, 4, 10) ;zet a = 1; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; y = st ep(num, den, t ) ;
pl ot ( t , y) ; axi s( [ Xmi n Xmax Ymi n Ymax] ) ; r 10 = r oot s( den) ;
subpl ot ( 3, 4, 11) ;zet a = 0; wn = 0; num = [ 1] ; den = [ 1 0 0] ; y = st ep( num, den, t ) ;pl ot( t , y) ; axi s( [ Xmi n Xmax 0 200] ) ; r 11 = r oot s( den) ;
subpl ot ( 3, 4, 12) ;zet a = - 1; wn = 1; num = [ wn 2] ; den = [ 1 2*zet a*wn wn 2] ; yf = st ep( num, den, t ) ;zet a = - 1. 005; wn = sqr t ( 0. 99) ; num = [ wn 2] ;den = [ 1 2*zet a*wn wn 2] ; yg = st ep( num, den, t ) ;pl ot ( t , yf , ' b' , t , yg, ' g' ) ; l egend( ' f ' , ' g' ) ; axi s( [ Xmi n Xmax 0 16e09] ) ;
-
8/21/2019 Linear Systems Control and Vibrations
49/262
49
For the impulse response transient characteristics plots presented two pages back, no initial
conditions were specified in the MATLAB program, which means that MATLAB assumes zero initial
conditions. We can see zero initial condition on position are achieved in all of the plots. However, none
of these impulse response plots has a zero slope at t = 0, which means that the impulse response cannot
allow zero velocity initial condition. Why? Let us address this issue via an example.
Example analytical impulse response solution for the generic second-order system
Solve 2 2( ) 2 ( ) ( ) ( )n n n
y t y t y t t fory(t) given , n, and zero initial conditions:
0
0
(0) 0
(0) 0
y y
y v
Here the Laplace Transform method will be used. The first step is to take the Laplace Transformof both sides of the ODE, including the zero initial conditions, and solving algebraically for the
unknown in the Laplace domain, ( ) { ( )}Y s y t .
2 2
2 2 2
2 2 2
2
2 2
( ) 2 ( ) ( ) ( )
( ( ) (0) (0)) 2 ( ( ) (0)) ( ) (1)
( 2 ) ( )
( )2
n n n
n n n
n n n
n
n n
y t y t y t t
s Y s sy y sY s y Y s
s s Y s
Y ss s
Note that the system characteristic polynomial 2 22n n
s s appears when using the Laplace
Transform method.
For simplicity in solution, let us assume this system is overdamped, i.e. there are two negative,real, distinct poles (our impulse response conclusion will apply to all damping cases).
2 2
2 2
1 2
( )2 ( )( )
n n
n n
Y ss s s s s s
The Heaviside Partial Fraction expansion of Y(s) is:2
1 2
1 2 1 2
( )( )( ) ( ) ( )
n C CY ss s s s s s s s
Solving for the residues C1and C2:
2 2
1 2 1 2 2 1
1 2 1 2 1 2 1 2
0( ) ( )
( ) ( ) ( )( ) ( )( ) ( )( )
n nsC C C s s C s s
s s s s s s s s s s s s s s s s
-
8/21/2019 Linear Systems Control and Vibrations
50/262
50
1
1 2
0 2
1 2 2 1
0
n
s C C
s C s C s
2
1
2 1
2
2
1 2
n
n
Cs s
Cs s
This solution is always valid since due to the overdamped assumption, 1 2s s .
To find the solutiony(t) in the time domain, we must take the inverse Laplace Transform of Y(s).
1 2
1
21
1 2
1 1 2
1 2
1 2
( ) ( )
( )( )( )
( )( ) ( )
( )
n
s t s t
y t Y s
y ts s s s
C Cy t
s s s s
y t C e C e
Checking the zero initial conditions from this solution, it is seen that the initial position is zero,
but the initial velocity is NOT zero:
1 2(0) (0)
1 2 1 2
2 2 2 2
2 1 1 2 2 1 2 1
(0) (1) (1)
0
s s
n n n n
y C e C e C C
s s s s s s s s
1 2
1 2
1 1 2 2
(0) (0)
1 1 2 2 1 1 2 2
2 2 2 2
1 2 1 2
2 1 1 2 2 1 2 1
2
2 1
2 1
2
( )
(0) (1) (1)
( )
0
s t s t
s s
n n n n
n
n
y t s C e s C e
y s C e s C e s C s C
s s s ss s s s s s s s
s s
s s
The impulse responses for all other damping cases similarly result in non-zero initial velocities(slopes ofy(t) at t= 0).
-
8/21/2019 Linear Systems Control and Vibrations
51/262
51
4.5 System Type
For a system transfer function expressed in the following zero-pole form (mzeroeszjand nnon-
zero polespi):
1 2
1 2
( )( ) ( ) ( )( )
( )( ) ( ) ( )
m
r
n
K s z s z s z Y sG s
s s p s p s p U s
ris the System Type, i.e. ris the number of poles at s= 0. The System Type is the number of system
integrators. This section presents transient response characteristics for example Type 0, I, and IIsystems.
Example Transfer Functions G(s) for different System Types
Type 0 Type I Type II
1( )G s
s
2
1( )G s
s
1
( ) ( 1)G s s 1
( ) ( 1)G s s s 21
( ) ( 1)G s s s
2
10( )
( 10)G s
s s
2
10( )
( 10)G s
s s s
2 2
10( )
( 10)G s
s s s
Example Unit Step Responses (outputy(t) vs. time, 0 ICs) for different System Types
Type 0 Type I Type II
-
8/21/2019 Linear Systems Control and Vibrations
52/262
52
Type I, II, and higher systems have no effective spring, so their transient responses go to infinity.
The steady-state results are constant, linear, and parabolic for Types 0, I, II, respectively.
Analytical Unit Step Response Solutions for the System Types examples above
Type 0 Type I Type II
( )y t t 2
( )2
ty t
( ) 1 ty t e ( ) 1ty t e t 2
( ) 12
t ty t e t
0.5( ) 1 (cos3.12 0.16sin 3.12 )t
y t e t t
0.51 1( ) (cos3.12 3.04sin 3.12 )
10 10
ty t t e t t
20.59 9( ) (cos3.12 0.52sin 3.12 )
2 10 100 100
tt ty t e t t
For they(t) solutions summarized in the above table, what is the transient solution in each case?
The steady-state solutions?
System Order, Poles, and Stability Conditions for the System Types examples above
Type 0 Type I Type IIfirst
10s
marginally-stable
second
1 20s s
marginally-stable
first
1 1s stable
second
1 0s 2 1s marginally-stable
third
1 2 0s s 3 1s marginally-stable
second
1,2 0.5 3.12s i
stable
third
1 0s 2,3 0.5 3.12s i
marginally-stable
fourth
1 2 0s s 3,4 0.5 3.12s i
marginally-stable
Note that the natural frequency nand the dimensionless damping ratio , defined for the generic secondorder system, have no meaning for Type I or II systems (other than as modes in the third line above).
The first Type 0 example is typical of a stable first-order system step response. The second Type0 example is typical of a stable underdamped second-order system step response. The top Type II
example was previously identified in the ME 3012 NotesBook as case d3, the special undamped case
with 1 2 0s s .
-
8/21/2019 Linear Systems Control and Vibrations
53/262
53
The middle Type I example is typical of an electric motor model with input torque (t), output
angle (t), and transfer function1
( )( )R
G ss Js c
, where J is the motor shaft/load mass moment of
inertia and cR is the rotational viscous damping coefficient. A distributed block diagram explicitlyshows the angular-velocity-to-angle integrator in this system:
Analytical ODE Solutions
Since only two of these ODEs are familiar in our previous analytical ODE solutions in ME 3012
(the stable first- and stable underdamped second-order systems), let us perform an analytical solution for
one example: the second-order Type I system from above. Solve
( ) ( ) ( )y t y t u t
fory(t), given that input u(t) is a unit step function and subject to given zero initial conditions (0) 0y and (0) 0y .
For funlet us solve this problem in three ways, two alternate methods using the slow ME Way
and also using the Laplace Transform approach. Since this is a linear ODE, all methods must yield the
one correct answer, stated earlier in the Analytical Unit Step Response Solutionstable.
1a. Slow ME Way second-order solution
1. Homogeneous Solution
( ) ( ) 0H Hy t y t
Assume: ( ) stH
y t Ae so that2
( )
( )
st
H
st
H
y t sAe
y t s Ae
2 2( ) ( ) ( ) 0st st st H H
y t y t s Ae sAe A s s e
The system characteristic polynomial is2
s s , leading to a system characteristic equation2 ( 1) 0s s s s , whose two roots are 1 0s and 2 1s . The general homogeneous solution form isthen:
1 2 (0 ) ( 1)
1 2 1 2 1 2( ) s t s t t t t
Hy t A e A e A e A e A A e
We must leave the homogeneous coefficientsAiunknown for now.
-
8/21/2019 Linear Systems Control and Vibrations
54/262
54
2. Particular Solution
( ) ( ) ( ) 1P Py t y t u t
Our standard particular solution assumption of ( )Py t B will not work in this case so we immediatelytry:
( )Py t B
whereBis an unknown constant, which must be determined in this step. Clearly ( ) 0P
y t and so:
( ) ( ) 0 1P Py t y t B
And so the particular solution for velocity is ( ) 1P
y t B . However, we need the particular solution fory(t), not its first derivative, and so we must integrate:
0 0( ) ( )
t t
P Py t y t dt dt t c
where cis a constant of integration, in this case left unknown until Step 3.
3. Total Solution
1 2( ) ( ) ( ) t
H Py t y t y t A A e t c
An alert student may ask, how can we solve for three constantsA1,A2, and cwith only two initial
conditions? The solution to this little dilemma is quite easy, recognizing that 1A c is simply a single
constant, call it 3 1A A c . Then the total solution is expressed by:
3 2( ) ty t A A e t
to which we apply the two given initial conditions (0) 0y and (0) 0y in order to solve for theunknown constantsA1andA3.
(0)3 2
2 3
(0) 0
0 (0)
0
y
A A e
A A
2( ) 1ty t A e (0)
2
2
2
(0) 0
0 1
1 0
1
y
A e
A
A
And since2 3 0A A , we then have
3 2 1A A
-
8/21/2019 Linear Systems Control and Vibrations
55/262
55
and the total solution is:
( ) 1t
y t e t
The transient part of this solution ist
e
and the steady-state part of this solution is 1t .
To demonstrate the transient and steady-state components of this solution better, it is instructive
to plot this response, both its components and the total solution (which was shown previously, the centerType I case).
Detailed Plot for Center Type I System Example Unit Step Response
Transient, Steady-State, and Total Responses
-
8/21/2019 Linear Systems Control and Vibrations
56/262
56
In order to check this solution, we can first check the resulting initial conditions. From the
solution ( ) 1t
y t e t we clearly see that 0(0) 0 1 1 0 1 0y e as required. Also, for the
first derivative of the solution ( ) 1ty t e , we have 0(0) 1 1 1 0y e as required.
A more complete solution check involves substituting the solution y(t) and its two time
derivatives into the original ODE and prove than an equality results.
( ) 1
( ) 1
( )
t
t
t
y t e t
y t e
y t e
?( ) ( ) ( ) 1
1 1t t
y t y t u t
e e
Since an equality results, 1 = 1, this proves that the solution is the correct one.
-
8/21/2019 Linear Systems Control and Vibrations
57/262
57
1b. Slow ME Way firs t-order solut ion
A clever alternate solution method arises (either the Slow ME Way or using Laplace Transforms)
when we use the equivalence ( ) ( )v t y t in the original ODE to be solved. Solve
( ) ( ) ( )v t v t u t
for v(t), given that input u(t) is a unit step function and subject to given zero initial condition
(0) (0) 0v y . The findy(t), by integration, using the second given initial condition (0) 0y .
1. Homogeneous Solution
( ) ( ) 0H H
v t v t
Assume: ( ) stH
v t Ae so that ( ) stHv t sAe
( ) ( ) ( 1) 0st st st H Hv t v t sAe Ae A s e
The system characteristic polynomial is 1s , leading to a system characteristic equation 1 0s , whoseone root is 1 1s . The homogeneous solution form is then:
1
1 1( ) s t t
Hv t A e A e
We must leave the homogeneous coefficientA1unknown for now.
2. Particular Solution
( ) ( ) ( ) 1P Pv t v t u t
Assume ( )P
v t B , where B is an unknown constant which must be determined in this step. Clearly
( ) 0Pv t and so:
( ) ( ) 0 1P P
v t v t B
And so the particular solution for velocity is ( ) 1Pv t B .
3. Total Solution
1( ) ( ) ( ) 1t
H Pv t v t v t A e
Applying the given initial condition (0) (0) 0v y in order to solve for the unknown constantA1:
-
8/21/2019 Linear Systems Control and Vibrations
58/262
58
(0)
1
1
(0) 0
0 1
1
v
Ae
A
the total solution for v(t) is then:
( ) 1 tv t e
However, we need the total solution fory(t), not its first derivative v(t), and so we must integrate:
0 0( ) ( ) (1 )
t tt ty t v t dt e dt t e c
where cis a constant of integration, that is found by applying the remaining initial condition (0) 0y .
(0)(0) 0 (0) 1
1
y e c c
c
and so the total solution is:
( ) 1t
y t e t
which agrees with the Slow ME Way second-order solution.
-
8/21/2019 Linear Systems Control and Vibrations
59/262
59
2. Laplace Transforms solution
Take the Laplace transform of both sides, with initial conditions.
2
( ) ( ) ( )
1
( ) (0) (0) ( ) (0)
y t y t u t
s Y s s sY s s
Combine Y(s) terms on the left.
2 1( ) ( ) ( 1) ( )s s Y s s s Y ss
Solve for the variable of interest, Y(s) the Laplace transform of the answer,y(t).
2
1( )
( 1)Y s
s s
The partial fraction expansion for this Y(s) is given below, where the constants C1,2,3are the residues.
31 2
2 2
1( )
( 1) 1
CC s CY s
s s s s
Express the partial fraction form over a common denominator.2 2
3 1 2 3 1 3 1 2 21 2
2 2 2 2
( )( 1) ( ) ( )1( )
( 1) 1 ( 1) ( 1)
C C s C s C s C C s C C s C C s CY s
s s s s s s s s
Equate like powers of sin the numerator to get 3 equations to solve for the residues C1,2,3.
21 3
1
1 2
0
2
0
0
1
s C C
s C C
s C
1
2
3
1
1
1
C
C
C
Solution by inverse Laplace transform
1 1 1 1 131 22 21 1 1
( ) ( )1 1
CC s Cy t Y s
s s s s s
( ) 1 ty t t e
which agrees with the solutions we previously derived, but as expected is a more-direct one-stageprocess and faster to obtain.
-
8/21/2019 Linear Systems Control and Vibrations
60/262
60
4.7 Term Example Open-Loop Transient Response