380 likes | 587 Views
Feedback Control. A Simple Abstraction. An open loop control system Goal/desired state. Process output. Desired output. Process input. Controller. The process Under control. Open Loop Control . Only for static environment Accurate manipulation needed Problem:
E N D
A Simple Abstraction • An open loop control system • Goal/desired state Process output Desired output Process input Controller The process Under control
Open Loop Control • Only for static environment • Accurate manipulation needed • Problem: • Noisy environment (disturbance) • Inaccurate effector Disturbance Desired output Process output Process input Controller The process Under control
Open Loop Control • May use expected disturbance • Static environment Predicted disturbance Disturbance Desired output Process input Process output Controller The process Under control
Examples • Putting book on a desk • Activating an event • Start a sensor • Play a sound • Conduct a scripted movement • Question: What about inserting a light bulb?
Desired output Process input Process output Controller The process Under control Feed Forward Control • Disturbance measured on the fly • Problems? • May not include all the parameters Measured disturbance Disturbance Sensors
Feedback Control (Closed Loop) • Include all the parameters as included into the output. Disturbance Desired output Process output Process input Controller The process Under control Sensors
Feedback Control • Another diagram Desired output Process output Process input Controller The process Under control Σ + - Sensors
Errors • Direction (sign) • Magnitude (distance) • Frequent feedback is needed • Sensor rates can effect response • Control may not be immediate • May be a delay from when you decide to change, and when a change actually occurs!
A Wall Following Robot • How would you use feedback control to implement a wall-following behavior in a robot? • What sensors would you use? • Would they provide magnitude and direction of the error? • What will this robot's behavior look like?
Oscillation and the Set Point • Desired state is called the set point • Can we decrease oscillation? • A range rather than a single value • Slower change • Wall following example: • Larger turning angle • A range rather than fix distance
Sensor Noise • What happens when there is sensor noise in the system? • Example: • Sensor tells the robot it is far from a wall, when it is close? • vice versa? • How might we fix these problems?
Control Theory • Studies the behavior of control systems • Major basic controllers: • P: proportional control • PD: proportional derivative control • PID: proportional integral derivative control
P: Proportional Control • Error = measurement – setpoint • Setpoint = desired output • Process input = Gain * error + bias • bias: manual reset (to fix any offset) Desired output Process output Process input Controller The process Under control Σ + - Sensors
P: Proportional Control • Q: What happens if the gain is increased? • A: Loop may go unstable • Q: What if the gain is decreased? • A: It takes along time to get close enough to the setpoint. • Determining the gain: hard problem • analytically (mathematics) • empirically (trial and error)
Setting Gain • Determining the gain depends on the physics of the system: • Analytical approaches: • System should be understood well • System should be characterized mathematically. • Trial and error (ad hoc, system-specific): • System should be tested extensively. • Can be done • manually • Automatically by the system • Wrong gain may put the system into oscillation!
Oscillation • Wrong gain may put the system into oscillation
Damping • The process of systematically decreasing oscillation • Properly damped: Reduces and removes oscillation in a reasonable amount of time.
P: Proportional Control • Q: What happens if the system is very dynamic? • Example: Following another robot • A: P control does not work well. • It senses the present time. • Q: What happens close to the setpoint? • A: • If gain is fixed: May not work for low errors • Leaves some offset • If gain is high: Tends to overshoot
Example Kp = 20 Kp = 50 Kp = 200 Kp = 500
Example: Analysis overshoot steady-state error ss error -- difference from the system’s desired value settling time overshoot -- % of final value exceeded at first oscillation rise time -- time to span from 10% to 90% of the final value settling time -- time to reach within 2% of the final value rise time
D: Derivative Control • Predict the future: • Adjust based on the rate of change • The speed of change • Example: wall following robot • High derivative: Very fast toward the wall • Low derivative: Very slow toward the wall • Output: • o = Kd * di/dt
Momentum of Correction • Momentum of correction results in oscillation and instability • A result of a slow reaction time to the controller • Momentum = mass * velocity • D to overcome oscillation • Output = error * Gp + d(error)/dt * Gk • Example: Wall following: P and D are opposite each other • PD: Mostly used for industrial plants
PD Control Kd = 3 Kd = 300 Kd = 30
Integral Control • The controller output is proportional to the amount of time the error is present. • Integrate all previous values. • To overcome (eliminate) the offset • The longer the offset hangs around, the larger the I component becomes • Output o = Kf * int i(t)dt
Example: PI • SS error (offset) has been removed Ki = 0 Ki = 2
PI Example: Draw backs Ki = 20 Ki = 200 Ki = 90
PID Controller • Proportional Integral Derivative Control is a combination of proportional, integral, and derivative control: • output = Kp * i + Kd * di/dt + Kf * int i(t) dt
PID results Kp = 100 Ki = 200 Kd = 2 Kd = 5 Kd = 10 Kd = 20
Simulation http://newton.ex.ac.uk/cgi-bin/metaform?http://newton.ex.ac.uk/teaching/CDHW/Feedback/OvSimForm-gen.html
Choosing Parameters Ziegler-Nichols Method • Adjust the set-point value, Ts, to a typical value for the system and turn off the derivative and integral actions (0). Select a safe value for the maximum power M and set the proportional gain to minimum. • Progressively increase the gain until suddenly decreasing or increasing Ts by about 5% induces oscillations that are just self-sustaining. • Call the gain at this stage Gu, and the period of the oscillations tu. Note the values of each quantity. • Set the controller parameters as follows: • P-Control: P=0.50*Gu, I=0, D=0. • PI-Control: P=0.45*Gu, I=1.2/tu, D=0. • PID-Control: P=0.60*Gu, I=2/tu, D=tu/8. • Check the overall performance of system is satisfactory under all normal conditions.
Is it Set Well? How do we measure system accuracy? • Elementary: The plant didn’t blow up • Informal: • Optimum decay ratio (1/4 wave decay) • Minimum Overshoot • Maximum Disturbance Rejection
Is it Set Well? • Mathematical: • Various integral definitions, such as: • IAE - Integral of absolute value of error • ISE - Integral of error squared • Mostly reserved for “academic” purposes