kybernetik - uni ulm aktuelles · dr. m. oubbati, kybernetik (neuroinformatik, uni-ulm) vorlesung...
TRANSCRIPT
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Kybernetik
Dr. Mohamed OubbatiInstitut für Neuroinformatik
SS 2008
Vorlesung 8
17 Juni 2008
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Wiederholung vom letzten Mal !
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Signalverarbeitungskette
Physikalische Größen
Sensoren
A/D Wandler
Digital Rechner
D/A Wandler
Verstärker
Energiewandler
Prozess (Bewegung)
Elektrische Energie
Mechanische Energie
Autonomer Mobiler Roboter
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Heutiges Thema:
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Motion Control has three basic problems:
Path followingTracking
Point stabilization
The Path
Find a smooth control input in the mobile robot, to minimise the distance between the mobile robot and the path ξ
ξ
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Motion Control has three basic problems:
Path following
TrackingPoint stabilization
actual robot
reference (robot, object,…)
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Motion Control has three basic problems:
Tracking
Path following
Point stabilization
goal
start
goal
stabilization with obstacle avoidance
start
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
,0)()(lim =−∞→ txtx rt 0)()(lim =−∞→ tyty rt 0)()(lim =−∞→ tt rt θθandObjective:
x
y
yr
θ
θ r
O X
Y
xr
Actual Mobile Robot
Reference (virtual) Mobile Robot
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Control of an Ideal Mobile Robot
actual trajectory
desired trajectory
-
+ desired velocity kinematics
Kinematic-level
controller
Bewegungsregelung
Bewegungsregelung kontrolliert die glatte und zielsichere Bewegung des Roboters entlang des geplanten Pfads.
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Die Kinematik beschäftigt sich mit der Geometrie und den zeitabhängigen Aspekten der Bewegung, ohne die Kräfte, die die Bewegung verursacht.
Was ist die Kinematik ?
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Zentrale Probleme
1. Unter welchen Vorraussetzungen finden Bewegungen statt ?
2. Wie beschreibt man die Bewegung eines Roboters auf Rädern ?
3. Wie kann man anhand der Bewegungen der Räder die Positionbestimmen ?
4. Wie müssen sich die Räder bewegen, damit eine bestimmte Positionerreicht wird ?
KinematikKinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
• Ideale Standart-Räder- reibungslose Rotation um Achspunkt- keine Kompression/Deformation- optimaler Kontakt (kein Schlupf etc.)
• Nur Betrachtung von getriebenen Rädern
• Passive Räder haben keinen Einfluss auf Dynamik der Bewegung
In dieser Vorlesung wird folgendes angenommen.
Unter welchen Vorraussetzungen finden Bewegungen statt ?
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Instantaneous Center of Curvature (ICC)(oder auch Instantaneous Center of rotation ICR)
Der ICC ist der Schnittpunkt aller verlängertenRotationsvektoren
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Randbegingungen der Bewegung
ICC
Für alle verlängerten Rotationsvektoren der Räder muss ein gemeinsamer ICC existiert werden.
Rad
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Wie beschreibt man die Bewegung eines Roboters ?
• Interne Repräsentation der BewegungBewegung der Räder
• Externe Repräsentation der BewegungPositionsänderung des Roboters
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
BeispielVierrad mit Mecanum-Rädern
Interne Repräsentation der Bewegung
Externe Repräsentation der Bewegung
Kinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Wie kann man die interne Repräsentation auf eine externe Repräsentation abbilden ? Vorwärtskinematik
Wie kann man die externe Repräsentation auf die interne Repräsentation abbilden ? Rückwärtskinematik
If I do this, what will happen?
If I want this to happen, what should I do?
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Differentialsantrieb
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Differentialantrieb
Dieses besteht aus zwei angetriebene Räder auf einer Achse mit einem oder zwei passiv mitlaufenden Stützrädern, die sich frei drehen können.
Der Roboter bewegt sich bei konstanten Radgeschwindigkeiten auf einer Kreisbahn mit dem Radius r um ein Drehzentrum ICC(InstantaneousCenter of Curvature)
zwei angetriebene Räder
Stützrädern
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Die beiden Antriebsräder liegen auf derselben Achse und werden getrennt angetrieben.
Differentialantrieb
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
• Hohes Moment für Kurvenfahrt
• Schwierige Positionsbestimmung
• Sehr starke Reibung auf dem Boden
Differentialantrieb
• Einfache Konstruktion
• Einfache Steuerung
• Auf der Stelle drehbar
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
[ ]θθ cos,sin ryrxICC +−=
x
y
Y
X
θ
2rl vvv
+=
2lr vvw
−=
lr
rl
vvvv
dr−+
=
d
Differentialsantrieb
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
2rl vvv
+=
2lr vvw
−=
lr
rl
vvvv
dr−+
=
rl vv = r= und w=0: der Roboter fährt geradeaus
rl vv −= r=0 und v=0: der Roboter dreht sich auf der Stelle
Differentialsantrieb
∞
d
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
x
y
Y
X
θ
robot pose: Position + Orientierungdes Roboters zu einem Zeitpunkt t.
Kinematik Model
Differentialsantrieb
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
In der Vorwärtskinematikberechnet man die Position des Roboters bei gegebenenGeschwindigkeit v und Winkelgeschwindigkeit w.
x
y
Y
X
θ
Vorwärtskinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
x
y
Y
X
θ
Vorwärtskinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Gegeben: start und ziel Positionen: P(0) = [0,0,0], P(t) =[x(t),y(t),θ(t)] Aufgabe: Finde Steuersequenz V=[vr,vl], die die Positionsänderung P(0) P(t)realisieren.
Ziel: P(t)
Start: P(0)
Rückwärtskinematik
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
x
y
Y
X
θ
robot pose: Position + Orientierungdes Roboters zu einem Zeitpunkt t.
Kinematik Model
Positionsregelung (Kinematics Control)
Das Problem zu lösen ist, welche Werte die Translationsgeschwindigkeiten vund die Rotationsgeschwindigkeit wannehmen müssen, damit der Robotereine bestimmte Pose erreichen kann.
Dafür existiert aber kein allgemeines Verfahren.
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Lösung: Es gibt mehrere Lösungen!
Differentialsantrieb: RückwärtskinematikPositionsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Lösung 1
Differentialsantrieb: RückwärtskinematikPositionsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Lösung 2
Differentialsantrieb: Rückwärtskinematik
Eine Lösung zu finden ist nicht ein Problem, aber die beste zu finden…
Es hängt von der Definition „beste“ ab:
• schnell
• Energie effizient
• smoothest velocity
vr, vl
t
Positionsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Point stabilization
Positionsregelung
x
y
PZiel
θ
lΔ
Problem: Find a control law so that: 0→Δ l
Kinematik Model
This is not trivial since the variable does not appear in the kinematics model(Nonholonomic constraint)
lΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
x
y
PZiel
θϕ
xref
yref
ϕΔ
lΔ
Positionsregelung
Point stabilization
Kinematik Model
To overcome thisproblem, we can define a new variable ϕΔ
θϕϕ −=Δ θϕ −⎟⎟⎠
⎞⎜⎜⎝
⎛
−−
=Δ −xxyy
ref
ref1tan
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
x
y
PZiel
θϕ
xref
yref
ϕΔ
lΔ
Positionsregelung
Point stabilization
Kinematik Model
Wenn Zeitvariant ist, das Kinematik-Model ist Nichtlinear Braucht man einen nichtlinearen Kontroller um das Problem zu lösen.
θ
0→Δϕ 0→Δ l
Die Tafel !
und
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 1: die Position und die Orientierung werden getrennt und nicht gleichzeitiggeregelt.
lΔ ϕΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 1: die Position und die Orientierung werden getrennt und nicht gleichzeitiggeregelt.
lΔ ϕΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 1: die Position und die Orientierung werden getrennt und nicht gleichzeitiggeregelt.
lΔ ϕΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 1: die Position und die Orientierung werden getrennt und nicht gleichzeitiggeregelt.
lΔ ϕΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 1: die Position und die Orientierung werden getrennt und nicht gleichzeitiggeregelt.
lΔ ϕΔ
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 2: die Position und die Orientierung werden getrennt aber gleichzeitiggeregelt.
lΔ ϕΔ
x
y
PZiel
θ
xref
yref
ϕΔ
lΔ R
λΔ
ϕλΔ
Δ=Δ
cosl
0→Δλ0→Δϕ
0→Δl
If and nearest point to Pziel
then
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
Lösung 2: die Position und die Orientierung werden getrennt aber gleichzeitiggeregelt.
lΔ ϕΔ
θθ −⎟⎟⎠
⎞⎜⎜⎝
⎛
−−
= −xxyy
eref
ref1tan
( ) ( ) )cos(22 θeyyxxe refrefp −+−=
x
y
PZiel
θ
xref
yref
ϕΔ
lΔ R
λΔ
0→pe 0→θeif
then 0→ΔlThis could be reached bytwo PID controllers. Die Tafel!
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Point stabilization
θe
Roboter
(kinematik)
wd
vdθ
xy
xref
yref +-
+
-compute
θe
Die gesamte Positionsregelung
se p se p
PID1
PID2
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Positionsregelung
Positionsregelung mit PID-Regler
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
,0)()(lim =−∞→ txtx rt 0)()(lim =−∞→ tyty rt 0)()(lim =−∞→ tt rt θθandObjective:
x
y
yr
θ
θ r
O X
Y
xr
Actual Mobile Robot
Reference (virtual) Mobile Robot
Bewegungsregelung
Tracking
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Bewegungsregelung
Tracking
Kinematics model of a reference robot:
It is defined that
The desired linear and angular velocities (vd,wd) which make e1, e2, e3 converge to zeroare given by
where K1,K2,K3 are positive constants.
Fierro R. and Lewis F. L. Control of a Nonholonomic Mobile Robot UsingNeural Networks. IEEE Transactions on neuralnetworks, 9(4):589–600, July 1998.
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Control of an Ideal Mobile Robot
actual trajectory
desired trajectory
-
+ desired velocity kinematics
Kinematic-level
controller
Positionsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Control of a Real Mobile Robot
Kinematic-level
controllerKinematics
+
-
desired trajectory
actualtrajectory
outer loopInner loop Velocity control (motors)
outer loop position control
Dynamic-level
controllerDynamics
Vd torque Vr
Inner loopDie soll Geschwindigkeit
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Geschwindigkeitsregelung (Dynamics Control)
Um ein stabiles und sauberes Fahren zu ermöglichen, muss die Drehgeschwindigkeit der Motoren geregelt werden. Dies erfolgt Z.b. mit Hilfe eines PID-Reglers.
Bewegungsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Der Radenkoder gibt dem PID-Regler Informationen über die Aktuelle Geschwindigkeit des Rads. Durch die Stellgröße, hier die Frequenz und das Tastverhältnis der PWM, wird die Regelgröße also die Rad-Geschwindigkeit verändert (geregelt).
Bewegungsregelung
Geschwindigkeitsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
PID Left Motor
PID Right Motor
Desired left
speed vl
Desired right
speed vr
+
T
PWM
PWM
-
+ -
desiredlinear and angularvelocityvd, wd
T: Transformationsfunktion
Bewegungsregelung
Geschwindigkeitsregelung
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Bewegungsregelung
Die gesamte Bewegungsregelung des Roboters.
-
Dr. M. Oubbati, Kybernetik (Neuroinformatik, Uni-Ulm) Vorlesung 8. SS 2008
Signalverarbeitungskette
Physikalische Größen
Sensoren
A/D WandlerD/A Wandler
Verstärker
Energiewandler
Prozess (Bewegung)
Elektrische Energie
Mechanische Energie
Kinematik & Dynamik
Kontrol
Bewegungsregelung
Übersicht
Wiederholung vom letzten Mal !�Instantaneous Center of Curvature (ICC)�(oder auch Instantaneous Center of rotation ICR)Randbegingungen der Bewegung