Sie sind auf Seite 1von 19

Error

Components Data
•Target system: what is controlled •Reference input: objective
•Controller: exercises control •Control input: manipulated to affect output
•Transducer: translates measured •Disturbance input: other factors that affect the
outputs target system
•Transduced output: result of manipulation
Given target system, transducer, Control theory finds controller that adjusts
control input to achieve given measured output in the presence of disturbances.
 AC temperature control
◦ Controlled Variable: temperature
◦ Control variables: fan speed, time for which
compressor is on?
 Car cruise control
◦ Controlled variable: Car speed
◦ Control variable: Angle of pushing of accelerator
and brake
Road surface,
gradient Random variation

Embedded Distance
Desired System Pedal
Speed Error Travelled,
that does Angle
Setting
Car
cruise control Time taken

Speed
Speed
Actuator: calculator
The entity Sensor:
that Odometer,the entity
implements that
Car clockmeasures
the control
the output
Mechanical
Device that
Changes pedal Feedback!
angle
Other Virtual Machines
Doing some
interfering work Random variation
Controller:
Process in
Desired Domain 0 that
periodically Xen VM Response
Response Error changes CPU (Guest Domain) Time (of
time Cap value of Cap Applications)
Value
With applications
Guest
Domain
running

E.g.
Smoothed
Smoothing
Actuator: Response
“filter”
The entity time Sensor:
that the entity
E.g. a “proxy” that
implements Can measure that
Time takenmeasures
the control
Xen hypervisor the output
scheduler
Feedback!
Error

Components Data
•Target system: what is controlled •Reference input: objective
•Controller: exercises control •Control input: manipulated to affect output
•Transducer: translates measured •Disturbance input: other factors that affect the
outputs target system
•Transduced output: result of manipulation
Given target system, transducer, Control theory finds controller that adjusts
control input to achieve given measured output in the presence of disturbances.
 Reference Tracking
◦ Ensure that measured output “follows” (tracks) a
target desired level
 Disturbance Rejection
◦ Maintain measured output at a given stable level
even in presence of “disturbances”
 Optimization
◦ No reference input may be given. Maintain
measured output and control input at “optimal”
levels
 Minimize petrol consumption, maximize speed (not
available in reality!!)
 Minimize power consumed by CPU, maximize
performance
r(k) u(k) x(k)
e(k)

y(k)

 “Control Loop” executed every T time units.


◦ y(k): Value of measure at time instant k
◦ u(k): Value of control input at time instant k
◦ r(k): Value of “reference” at time instant k
◦ e(k): Error between reference and measured value
 Next value of control input, i.e. u(k+1) to be computed
based on feedback: e(k)
 Change in u should depend on relationship
between y and u
 Relationship should be known
◦ If known, then why feedback? Why not:
 y = f(u)
 (Car speed as function of accelerator pedal angle)
  u = f-1(y). For a desired reference, just calculate the
control input required by using inverse. This is called
feed forward

Feed-
forward
 Problems:
◦ Need accurate model
 If model wrong, control input can be totally wrong
 Imagine wrong model b/w accel. pedal and car speed
◦ Does not take into account time-dependent
behaviour
 E.g. how long will system require to attain desired value
 If car was at speed S1, we set cruise control to speed S2, if we
set pedal angle to f-1(S2), will it immediately go to speed S2?
◦ Cannot take care of “disturbances”
 E.g. if environmental conditions change, model may not be
applicable.
 What if car was climbing a slope? (And angle was measured on
flat ground?)
Feedback addresses many of these problems.
 Rather than use only some offline model, also take
into account the immediate measured effect of the
value of your control variable
◦ If car at S1, want to go to S2, S1 < S2 (positive error), pedal
must be pushed further down.
 We still need some idea of the relationship between
“input” and “output”
◦ Pedal should be pushed? Or released? If pushed – by what
angle?
 (Intuitively, for larger S2 - S1, angle of pushing in must be larger)
◦ Another e.g. if e(k) = r(k) – y(k) is positive
 Should u(k) increase or decrease?
 If u is CPU frequency, y is response time. If e(k) is positive, u should?
 Increase/Decrease by how much?
 If increase/decrease too much:
◦ Measured output will keep on oscillating above and below
reference: Unstable behavior
 Since we want control to work in a timely
manner (not only in “steady-state”),
relationship should be time dependent
 New value of y: y(k+1) will generally depend
on y(k) and u(k)
◦ Speed of car at this instant, will depend on what
speed was at the beginning of previous interval,
and the pedal angle in the previous interval
◦ Similarly, queuing delay at this intv’l will depend
on queuing delay of previous instant, and CPU
frequency setting of previous interval
 Need a model to capture this relationship
over time
◦ Can be first order (depending on 1 previous
value), or higher order (more than 1 previous
values).
◦ First Order Linear model: y(k+1) = a y(k) + b u(k)
 Can be done by “first principles” or
“analytical modeling”
◦ E.g. If y is response time of queueing system, u is
service time, it may be possible to find an
equation to relate y(k+1) to y(k) and u(k)
 If “first principles” difficult: empirical model
 Run controlled experiments on target system,
record values of y(k), u(k), run regression
models to find a and b.
◦ How to do this correctly is a field called “system
identification”
 Main issues:
◦ Relationship may not be actually be linear
l m

{
K
Number in System Utilization Response Time
•E.g. number in queueing system vs buffer size
•Relationship can be “linearized” in certain
N regions. Centre of such a region: Operating
Point
Operating point: ( N , K )
Operating range
Values of N,K for
which model applies.
Offset value
Difference from
operating point
yNN
u  K K
Linear Relationship is made between y and u defined
K as “offsets”
 Once system model is made, need to design
“control laws”
 Control Laws relate error to new value of control
input:
◦ From e(k) determine value of u(k)
 Controllers should have good SASO properties:
◦ STABILITY - ACCURACY - SETTLING TIME - OVERSHOOT
 Deeply mathematical theory for deriving these laws
◦ Transfer functions, Poles
◦ Estimating SASO properties of control laws
◦ Using this understanding to design good control laws which
have good SASO properties
Cannot go into details
Stability Accuracy Short settling Small overshoot
Unstable System
 Proportional Control Law
◦ u(k) = Kpe(k) (Kp is a constant, called controller
gain)
◦ Can be made stable, short settling time, less
overshoot – but may be inaccurate
 Integral Control Law
◦ u(k) = u(k-1) + KI e(k) (KI is controller gain)
 =u(k-2) + KI e(k-1) + KI e(k)
 = u(0) +…+ KI * [ e(1) + e(2) + … +e(k) ]
◦ Keeps reacting to previous errors also
◦ Can show that this law will lead to zero error
◦ Has longer settling time
 Padala paper uses integral control law in most
places.
 It uses empirical methods for generating
system model
 Slides gave just enough required background.
 Control theory is a huge field with lots of
books (mainly used in EE, MECH, CHEM)
◦ Read books/papers/if further interested

Das könnte Ihnen auch gefallen