Professional Documents
Culture Documents
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
O UTLINE
T YPES OF C ONTROL P ROBLEMS
Some Typical Problems First Examples The Control Design Process
C RUISE C ONTROL
problem denition modeling and design robustness
W HEELED ROBOT
problem denition control design
P OWER C ONDITIONING
problem denition & solution
MEM 355 L ECTURE 2
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
T YPICAL PROBLEMS
Continuous
Stabilization Output regulation Disturbance rejection Command tracking
Discrete event
Startup sequencing Fault accommodation Mode change Obstacle avoidance
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
F IRST E XAMPLES
We will consider three motivating examples: Cruise control: a simple linear example.
Taylor linearization. As in this example, the dynamics of most systems near an equilibrium point can be adequately approximated by a linear model derived via
Wheeled robot path tracking: control of nonlinear dynamics. Some systems are nonlinear in a fundamental way so that no linear model gives a
satisfactory characterization of its behavior. This is one very simple example.
mode changes in which the system dynamics are different in each mode. Decisions about mode change are often based on logic leaving a system described mathematically by mixed logic-differential equation models.
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
D ESIGN C ONSIDERATIONS
Objectives: What are the goals of control and how do we quantify them? Dynamics: What is the essential natural behavior of the system? Input-Output Structure: Have we posed the problem correctly? For example, Do we have appropriate actuators? Sensors? Does the design problem formulation avoid known obstacles? Implementation: Today controllers are typically implemented in digital microcomputers. There are alternatives e.g., electronic analog computers, pneumatic and hydraulic devices. Design Tools: There are several computational suites that support modeling, simulation, control design, and implementation. MATLAB with Simulink and Real Time Workshop has become a de facto standard.
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
deep s
elcihev
ecrof gnibrutsid
ecrof gnivird
enigne
lortnoc
gm
mg cos
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
ERROR RESPONSE FROM DIFFERENTIAL EQUATIONS
( ( ) v ( )) d v
u (t) = kp ( v (t)) + ki v
0
( v ( )) d u = kp e + ki e v
v + (0.02 + kp ) e + ki e = 9.8 + + 0.02 v e E (s) = (s + 0.02) 9.8s V (s) + 2 (s) s2 + (0.02 + kp ) s + ki s + (0.02 + kp ) s + ki
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
ERROR RESPONSE FROM BLOCK DIAGRAMS
(t )
9.8
k p s + ki
1 s + 0.02
e : G = v v
1 1+
kp s+ki 1 s s+0.02
G = v
(s + 0.02) s2 + (0.02 + kp ) s + ki
e: E= 1+
1 kp s + ki (9.8) E s + 0.02 s
elcihev
v
enigne
rotasnepmoc
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
STEP RESPONSES
e 1 0.8 0.6
kp = 1, ki = 0, 0.5, 1, 2, 6
Response to unit step disturbance:
E (s) =
(s) =
1 s
0.4 0.2 t 2 4 6 8 10 12 14
1 V (s) = s
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
OBSERVATIONS
Both transfer functions have the same denominator (same poles) but different numerators (different zeros). When ki = 0 (proportional control) the ultimate error is not zero in fact the error in response to command is very small, but to disturbance is quite large. For stability we can look at either transfer function, but for performance we need to consider both. To evaluate kp , ki it is helpful to make the association:
2 s2 + (0.02 + kp )s + ki s2 + 20 s + 0
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
REFINE THE CONTROL
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
EFFECT OF ENGINE DYNAMICS
FAST CONTROLLER
e
= 0.1 sec
These gures show the error response to a command step using the fastest controller: = 0.707, 0 = 3 Results are shown for two engine time constants: = 0.1, 0.2
-0.75
e 60 40 20
= 0.2 sec
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
EFFECT OF ENGINE DYNAMICS
SLOW CONTROLLER
performance comparison: ideal and slow engine.
Now, we use the slowest controller: = 0.707, 0 = 1 The response degrades when the slow engine is included, but at least it is stable. Pushing for high performance often leads to a non-robust design.
0.6 0.5 0.4 0.3 0.2 0.1 2 -0.1 4 6 8 10 12 14
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
Gv (1 Ge ) E= D 1 + Gv Ge Gc
v
Gc
9.8
k p s + ki
0.6
0.4
0.2
t 2 -0.2 4 6 8 10 12 14
elcihev
rosnes tlit
Ge
C RUISE C ONTROL
(t )
9.8
Gv
1 s + 0.02
enigne
rotasnepmoc
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
C RUISE C ONTROL
O BSERVATIONS Any one of the closed loop transfer functions can be used for stability analysis (all have same poles). Performance analysis usually requires considering two or more closed loop transfer functions. Ultimate error depends on controller type, e.g. PI controller resulted in zero error eventually, but P controller left some residual error nontrivial in the case of disturbances. We can choose control parameters to shape transient response (locate closed loop poles) in this special case we used our knowledge of second order system behavior. The system may be sensitive to model accuracy, including neglected dynamics even to the point of instability. Disturbance feedforward is an important tool for disturbance rejection. It does not change the system poles. It changes the zeros from disturbance to error.
MEM 355 L ECTURE 2
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
W HEELED ROBOT
PROBLEM DEFINITION
x = vx cos y = vx sin = M vx = F
by bx
y,x(
y emarf ecaps
J = T
vx
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
W HEELED ROBOT
FEEDBACK LINEARIZATION
1 s
wr ( t )
zc (t )
v
-
1 ( x )
x = f ( x ) + G ( x) u y = h( x )
( x)
z ( x)
z = Ax + Bv y = Cx
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
W HEELED ROBOT
SIMULATIONS
Simulation Results 100
Trajectory Truth blue Simulated red
y 40 20 x 0.0002 0.0004 coord 0.10 0.0002 20 40 60 80 100 0.05 0.10 t 20 40 60 80 100 20 10 20 40 10 20 0.05 t 0.02 0.04 0.06 20 40 60 80 100
Control Force
F 0.06 0.04 0.02 T
Control Torque
50
Trajectory Truth blue Simulated red
y 40 20 x 20 10 20 40 10 20 coord 0.002 0.001 0.001 0.002 0.003 0.004 10 20 30 40 50 0.2 0.4 t 10 20 30 40 50 0.1 0.2 0.4 0.2 t 10 20 30 40 50 0.2 0.1 t
Control Force
F T
Control Torque
25
Trajectory Truth blue Simulated red
y 40 20 x 20 10 20 40 10 20 coord 0.02 0.01 5 10 15 20 25 1 2 t 0.01 0.02 0.03 5 10 15 20 25 0.5 1.0
Control Force
F 1.0 0.5 t 5 T
Control Torque
10
15
20
25
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
W HEELED ROBOT
O BSERVATIONS
tracking errors are quite small, but as speed increases ( decreases) error in y coordinate increases. Is this the right problem formulation? Look at speed.
V 14 12 10
Out[43]=
8 6 4 2 0 0 20 40 60 80 100 t
For example:
We could require path tracking at constant speed, or we may want to let speed vary so as to minimize time around the loop while respecting some error bound. How about two robots racing around the track and have to avoid each other?
MEM 355 L ECTURE 2
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
& SOLUTION
R pre
Rbleed
C RUISE C ONTROL
W HEELED ROBOT
P OWER C ONDITIONING
& SOLUTION
K EY I SSUES
If the dynamics are complicated, they may interact with the mode change decisions and produce chattering between two modes. The state chart shown is in the form of a StateFlow diagram and is easily implemented in a microcontroller using the Real Time Workshop. This system is fairly simple example but more complex ones abound. Protection systems, for example. Most controllers involve both logical or discrete event control and continuous dynamic feedback control.