20/10/2009 IVR Herrmann IVR: Introduction to Control OVERVIEW Control systems Transformations Simple...
-
Upload
cecil-farmer -
Category
Documents
-
view
214 -
download
0
Transcript of 20/10/2009 IVR Herrmann IVR: Introduction to Control OVERVIEW Control systems Transformations Simple...
20/10/2009 IVR Herrmann
IVR: Introduction to Control
OVERVIEW
Control systems
Transformations
Simple control algorithms
20/10/2009 IVR Herrmann
History of control Boulton and Watt’s governor
J. C. Maxwell (1868) On Governors.
Wright Brothers (1899)pilot control rather than “inherent stability”
flight = wings + engines + control
20/10/2009 IVR Herrmann
Examples of Control
Pilot control Cruise control Robot control Electronics Power control Thermostat Fire control Process control Space craft control Homeostasis &
biological motor control Control in economy
20/10/2009 IVR Herrmann
Control Example
• Dynamical system(plant)
• Continuous states
• Physical inputs and outputs (to the system)
• Control actuators
• Controller
• A room(containing air)
• Temperature at certain points in the room
• Heater and measurement device
• A way of switching the heater on or off
• Thermostat
20/10/2009 IVR Herrmann
Questions & Problems
What control strategy? Stability
Does the system really behave as desired? Controlability and observability
Are the critical variables accessible and measurable Delays
Is the measurement up to date, when does the control take effect?
Efficiency Can the same effect be achieved with less effort?
Adaptivity Is the control strategy appropriate for changing conditions?
20/10/2009 IVR Herrmann
Controller ‘A device which monitors
and affects the operational conditions of a given dynamical system’
The controller receives “outputs” and adjusts “input” variables.
It may also receive signals from a (human) operator or from another controller
Controllers often affect the “outputs” to stay close to a desired setpoint (homeostasis)
“Input” from the controlled system can serve as feedback telling the controller to what extend the control goal was achieved
Controller
System
input
output
20/10/2009 IVR Herrmann
Dynamical systems
• Differ from standard computational view of systems:– Perception-Action loop rather than
input → processing → output– Analog vs. digital, thus set of states describe a
state-space, and behaviour is a trajectory• On-going debate whether human cognition is better
described as computation or as a dynamical system (e.g. van Gelder, 1998)
20/10/2009 IVR Herrmann
The control problem
How to make a physical system (such as a robot) function in a specified manner?
Particularly when:• The function would not happen naturally• The system is subject to a large class of
changes
e.g. get the mobile robot to a goal, get the end-effector to a position, move a camera…
20/10/2009 IVR Herrmann
“Bang-bang” control
• Simple control method is to have physical end-stop…
• Stepper motor is similar in principal:
Moff
20/10/2009 IVR Herrmann
The control problem
• For given motor commands, what is the outcome?
• For a desired outcome, what are the motor commands?
• From observing the outcome, how should we adjust the motor commands to achieve a goal?
Motor command
Robot in environment
OutcomeGoal
= Forward model
= Inverse model
= Feedback control
Action
20/10/2009 IVR Herrmann
Want to move robot hand through set of positions in task space: X(t)
X(t) depends on the joint angles in the arm A(t)A(t) depends on the coupling forces C(t)delivered by transmission from motor torques T(t)T(t) produced by the input voltages V(t)
A less-than-perfectrobotic arm
20/10/2009 IVR Herrmann
The control problem
Depends on:• Kinematics and geometry: Mathematical
description of the relationship between motions of motors and end effector as transformation of coordinates
• Dynamics: Actual motion also depends on forces, such as inertia, friction, etc…
V(t) T(t) C(t) A(t) X(t)command voltage torque force angle position camera
20/10/2009 IVR Herrmann
The control problem
• Forward kinematics is not trivial but usually possible
• Forward dynamics is hard and at best will be approximate
• But what we actually need is backwards kinematics and dynamics
Difficult!
V(t) T(t) C(t) A(t) X(t)
20/10/2009 IVR Herrmann
Inverse model
(V given X)Solution might not existNon-linearity of the forward transformIll-posed problems in redundant systems Robustness, stability, efficiency, ... Partial solution and their composition
V(t) T(t) C(t) A(t) X(t)
20/10/2009 IVR Herrmann
Beyond Inverse Models
Feed-back controlDynamical systemsAdaptive controlLearning control
1788 by James Watt following a suggestion from Matthew Boulton
20/10/2009 IVR Herrmann
Problem: Non-linearity
• In general, we have good formal methods for linear systems
• Reminder:
Linear function:
• In general, most robot systems are non-linear
bxaxF )(
)()()( 2121 xFxFxxF
x
F(x)
20/10/2009 IVR Herrmann
Kinematic (motion) models
• Differentiating the geometric model provides a motion model (hence sometimes these terms are used interchangeably)
y = F(x)
• This may sometimes be a method for obtaining linearity (i.e. by looking at position change in the limit of very small changes)
)()( ygxfdt
dyy if x=x(y)
20/10/2009 IVR Herrmann
Dynamic models
• Kinematic models neglect forces: motor torques, inertia, friction, gravity…
• To control a system, we need to understand the continuous process
• Start with simple linear example:
Battery voltage
VB
Vehicle speed
s? VB
IR
e
20/10/2009 IVR Herrmann
A fairly simple control algorithm
Compensator
High-frequencyoscillator
Compensator in orderto determine the effector
characteristicsEffector
High passfilter
Control of the compensator characteristics
Addition
N. Wiener: Cybernetics, 1948
20/10/2009 IVR Herrmann
K = Σ ci xi
e.g. xpred
= xold
System: dx/dt = f(x)
System + Controller
What if system description is not analytically given?
Stabilizing controller for box pushing or wall-followingmore complex behaviors for more complex predictors
A Simple Controller
20/10/2009 IVR Herrmann
How to find better parameters ci in K = Σ ci xi ?
Perform “test actions” at both sides of the trajectory works best in 1D (e.g. for steering)
A Simple Controller
cexpl
= c + a sin(w t)
Δc = < E(t) sin (w t) >
short-term average