Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control.

Similar presentations


Presentation on theme: "CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control."— Presentation transcript:

1 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control

2 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst A Simple Abstraction An open loop control system Goal/desired state Controller The process Under control Desired output Process output Process input

3 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Open Loop Control Only for static environment Accurate manipulation needed Problem: –Noisy environment (disturbance) –Inaccurate effector Controller The process Under control Desired output Process output Process input Disturbance

4 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Open Loop Control May use expected disturbance –Static environment Controller The process Under control Desired output Process output Process input Disturbance Predicted disturbance

5 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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?

6 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feed Forward Control Disturbance measured on the fly Problems? –May not include all the parameters Controller The process Under control Desired output Process output Process input Disturbance Measured disturbance Sensors

7 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control (Closed Loop) Include all the parameters as included into the output. Controller The process Under control Desired output Process output Process input Disturbance Sensors

8 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control Another diagram Controller The process Under control Desired output Process output Process input Sensors Σ + -

9 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Example

10 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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 !

11 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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?

12 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

13 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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?

14 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Control Theory Studies the behavior of control systems Major basic controllers: – P: proportional control – PD: proportional derivative control – PID: proportional integral derivative control

15 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst P: Proportional Control Error = measurement – setpoint –Setpoint = desired output Process input = Gain * error + bias –bias: manual reset (to fix any offset) Controller The process Under control Desired output Process output Process input Sensors Σ + -

16 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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)

17 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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!

18 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Oscillation Wrong gain may put the system into oscillation

19 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Damping The process of systematically decreasing oscillation Properly damped : Reduces and removes oscillation in a reasonable amount of time.

20 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

21 Example K p = 20 K p = 200 K p = 50 K p = 500

22 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Example: Analysis steady-state error settling time rise time overshoot 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 ss error -- difference from the system’s desired value

23 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

24 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

25 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst PD Control K d = 300 K d = 3 K d = 30

26 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

27 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Example: PI SS error (offset) has been removed K i = 0K i = 2

28 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst PI Example: Draw backs K i = 20 K i = 90 K i = 200

29 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst PID Controller Proportional Integral Derivative Control is a combination of proportional, integral, and derivative control: output = K p * i + K d * di/dt + K f * int i(t) dt

30 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst PID Controller

31 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst PID results K p = 100K i = 200 K d = 2 K d = 10K d = 20 K d = 5

32 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Simulation http://newton.ex.ac.uk/cgi-bin/metaform?http://newton.ex.ac.uk/teaching/CDHW/Feedback/OvSimForm-gen.html

33 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Choosing Parameters Ziegler-Nichols Method 1.Adjust the set-point value, T s, 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. 2.Progressively increase the gain until suddenly decreasing or increasing T s by about 5% induces oscillations that are just self-sustaining. 3.Call the gain at this stage G u, and the period of the oscillations t u. Note the values of each quantity. 4.Set the controller parameters as follows: –P-Control: P =0.50* G u, I =0, D =0. –PI-Control: P =0.45* G u, I =1.2/ t u, D =0. –PID-Control: P =0.60* G u, I =2/ t u, D = t u/8. 5.Check the overall performance of system is satisfactory under all normal conditions.

34 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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

35 CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst 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


Download ppt "CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Feedback Control."

Similar presentations


Ads by Google