Introduction to Control Theory COMP417 Instructor: Philippe Giguère

Preview:

Citation preview

Introduction to Control Theory

COMP417

Instructor: Philippe Giguère

Actuators

• Earlier lecture presented actuators– Electrical motor

• Now how do we use them in an intelligent manner?

Electric Motor

Open-loop?• We want to spin a motor at a given angular

velocity. We can apply a fixed voltage to it, and never check to see if it is rotating properly.

• Called open loop.

Power Amplifier

Electric Motor

Computer

Vol

tage

Angular Velocity

Open-loop?• What if there is a changing load on the motor?

– Our output velocity will change!

torque

speed no torque at max speed

stall torque

Closing the loop• Let’s measure the actual angular velocities.• Now we can compensate for changes in load

by feeding back some information.Power

AmplifierElectric Motor

Computer

Vol

tag

e

AngularVelocity

Tachometer

Control Theory• Roots in another science: Cybernetics

Cybernetics is the study of feedback and derived concepts such as communication and control in living organisms, machines and organisations.

• Expression was coined by Norbert Weiner in 1948.

Early Example of Feedback System

• James Watt’s “Centrifugal Governor” in 1788.

• Regulates the steam engine speed.

Other Simple Examples• Body temperature regulation

– If cold, shiver (muscles produce heat)– If hot, sweat (evaporation takes away heat)

• Maintaining social peace– If a crime is found (sensor), the guilty party is

punished (actuator).

• Cruise control in cars– You set a speed, CC will increase fuel intake

uphill, and decrease it downhill.

• Etc…

Why Control Theory• Systematic approach to analysis and design

– Transient response– Consider sampling times, control frequency– Taxonomy of basic controllers (PID, open-loop,

Model-based, Feedforward…)– Select controller based on desired characteristics

• Predict system response to some input– Speed of response (e.g., adjust to workload changes)– Oscillations (variability)

• Assessing stability of system

Characteristics of Feedback System

• Power amplification– Compare neural signal power (W) vs muscle power

output (tens of W)– Means it is an active system, as opposed to passive.

• Actuator• Feedback

– measurement (sensor)

• Error signal• Controller

Classic Feedback Diagram

PowerAmplification

Actuatoror

PlantController

Sensor

Command inputx(t)

Errore(t) System

ouputy(t)

ExternalDisturbance

d(t)Actuatorcommand

u(t)

SensorReading

b(t)

Controller Design Methodology

Block diagram

construction

Model

Ok?

Stop

Start

Transfer function formulation and

validation

Controller Design

Objective

achieved?

Controller Evaluation

Y

Y

N N

System Modeling

Control System Goals

• Regulation– thermostat

• Tracking– robot movement, adjust TCP window to

network bandwidth

• Optimization– best mix of chemicals, minimize response

times

Approaches to System Modeling

• First Principles– Based on known laws.– Physics, Queueing theory.– Difficult to do for complex systems.

• Experimental (System Identification)– Requires collecting data– Is there a good “training set”?

Common Laplace TransfomName f(t) F(s)

Impulse

Step

Ramp

Exponential

Sine

1

s

1

2

1

s

as 1

22 s

1)( tf

ttf )(

atetf )(

)sin()( ttf

00

01)(

t

ttf

Damped Sine 22)(

as)sin()( tetf at

Transfer Function• Definition: H(s) = Y(s) / X(s)

• Relates the output of a linear system to its input.

• Describes how a linear system responds to an impulse… called impulse response– (remember! Convolving with impulse yields the same

thing. Hence probing a system with and impulse is finding its transfer function…)

• All linear operations allowed– Scaling, addition, multiplication

Block Diagram

• Expresses flows and relationships between elements in system.

• Blocks may recursively be systems.• Rules

– Cascaded elements: convolution.

– Summation and difference elements

b(t)a(t) )()( tbta

Laplace Transform of Classic Feedback Sysem

ActuatorA(s)

ControllerC(s)

SensorS(s)

Command inputX(s)

ErrorE(s) System

ouputY(s)

ExternalDisturbance

D(s)Actuator

commandU(s)

SensorReading

B(s)

Key Transfer Functions

FeedbackFeedforward

ActuatorA(s)

ControllerC(s)

SensorS(s)

Command inputX(s)

ErrorE(s) System

ouputY(s)

ExternalDisturbance

D(s)

Actuatorcommand

U(s)

SensorReading

B(s)

)()()(1

)()(

X(s)

)( :Feedback

sHsAsC

sAsCsY

)()(

)(

)( :dFeedforwar sAsC

sE

sY

First Order System

sTK

K

sX

sY

1)(

)(

K

1

Command inputX(s) sT1

1 Systemoutput

X(s)

1

1

1

11

11 iserror stateSteady

Theorem) Value (Final 0 is valuestateSteady

0KKK

K-

sTKK

s

s

Response of System

• Impulse

• Step

sTK

K

1Exponential

=

t

t

“step” function

TsK

K

1s

1x

sT

K

K

Ks

K

TsKs

K

1)1()1()1(

t-

t

Tim

e D

omai

nLa

plac

e D

omai

n

Steady-State vs. Transient

t

• Step Response illustrates how a system response can be decomposed into two components:– Steady-state part:

– Transient

t

Second Order System

:frequency natural Undamped

2 where :ratio Damping

)04 (ie,part imaginary zero-non have poles if Oscillates

2)(

)( :response Impulse

2

22

2

2

J

K

JKBB

B

JKB

ssKBsJs

K

sX

sY

N

cc

NN

N

Second Order Response

• Typical response to step input is:

t-

t t+

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% or 5% of the final value

2% or 5%

settling time

overshoot

rise time

90%

Basic Controller Function

)(

)()()(:control alDifferenti

)(

)()()(:control Integral

)(

)()()(:control alProportion

0

sKsE

sUte

dt

dKtu

s

K

sE

sUdtteKtu

KsE

sUteKtu

dd

it

i

pp

Effect of Controller Functions

• Proportional Action– Simplest Controller Function

• Integral Action– Eliminates steady-state error– Can cause oscillations

• Derivative Action (“rate control”)– Effective in transient periods– Provides faster response (higher sensitivity)– Never used alone

Control Performance (2nd O), P-type

Kp = 20

Kp = 200

Kp = 50

Kp = 500

Steady-state Errors, P-type

Kp = 200 Kp = 50

Control Performance, PI - type

Kp = 100

Ki = 50 Ki = 200

You’ve been integrated...

Kp = 100

instability & oscillation

Control Performance, PID-typeKp = 100 Ki = 200 Kd = 2

Kd = 10 Kd = 20

Kd = 5

PID final control

PID Tuning

How to get the PID parameter values ?

(1) If we know the transfer function, analytical methods can be used (e.g., root-locus method) to meet the transient and steady-state specs. (2) When the system dynamics are not precisely known, we must resort to experimental approaches.

Using only Proportional control, turn up the gain until the system oscillates w/o dying down, i.e., is marginally stable. Assume that K and P are the resulting gain and oscillation period, respectively.

Then, use

Ziegler-Nichols Tuning for second or higher order systems

for P control for PI control for PID control

Kp = 0.6 K

Ki = 2.0 / P

Kd = P / 8.0

Kp = 0.45 K

Ki = 1.2 / P

Kp = 0.5 K

Ziegler-Nichols Rules for Tuning PID Controller:

Layered Approach to Control

• Robotic systems often have a layered approach to control:

Planner

Autopilot

AttitudeController

FlipperPositionController

Motor

movie

Multiple Loops

Angle

Motor

PositionEncoder

PID

Back-EMFcomp

d/dt

DCMotor module

Velocity PID

Robotd/dt

UnderwaterSwimmer

GaitGeneration

Rate

IMU

Autopilot

Controller

Camera

Vision Tracker

TargetDetection

TargetLocation

DesiredTarget

Location

Target

Inner loops are generally “faster” that outer loop.

Advanced Control Topics

• Adaptive Control– Controller changes over time (adapts).

• MIMO Control– Multiple inputs and/or outputs.

• Predictive Control– You measure disturbance and react before measuring

change in system output.• Optimal Control

– Controller minimizes a cost function of error and control energy.

• Nonlinear systems– Neuro-fuzzy control.– Challenging to derive analytic results.

RC Servo• Is a controller + actuator in a small

package.

• Not expensive 10$-100$.

• Those in 417 will use some of these.

PWM• PWM -- “pulse width modulation

• Duty cycle:– The ratio of the “On time” and the “Off time” in one cycle.– Determines the fractional amount of full power delivered to

the motor.

• Why:– Transistor acts as a resistor when partially on.– Leads to energy being wasted heat.

Recommended