20.08.2013 Views

Force and Visual Servoing (PDF, 910Kb, 32 σελίδες) - Εθνικό ...

Force and Visual Servoing (PDF, 910Kb, 32 σελίδες) - Εθνικό ...

Force and Visual Servoing (PDF, 910Kb, 32 σελίδες) - Εθνικό ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Σχολή Ηλεκτρολόγων Μηχ/κών και Μηχ/κών Υπολογιστών,<br />

Ε.Μ.Π., Ακαδημαϊκό Έτος 2010-11, 8ο Εξάμηνο<br />

Ρομποτική II<br />

Ευφυή και Επιδέξια Ρομποτικά Συστήματα<br />

Κων/νος Τζαφέστας<br />

Τομέας Σημάτων, Ελέγχου & Ρομποτικής<br />

Σχολή Ηλεκτρ. Μηχ/κών & Μηχ/κών Υπολ., Ε.Μ.Π.<br />

Τηλ.: 210 772-3687, (Κτήριο Ηλεκτρ., Γραφείο 21.11)<br />

Email: ktzaf@cs.ntua.gr<br />

Web: http://www.softlab.ntua.gr/~ktzaf/<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Περιεχόμενα Μαθήματος<br />

• ΕΝΟΤΗΤΑ-1: Επιδέξιος Ρομποτικός Χειρισμός<br />

– Έλεγχος Ρομπότ με πλεονάζοντες β.ε. (redundant robots)<br />

– Έλεγχος «Αλληλεπίδρασης» με το περιβάλλον<br />

• Έλεγχος Δύναμης / Σύνθετης Μηχανικής Αντίστασης<br />

• Έλεγχος Οπτικής Οδήγησης<br />

– Μοντελοποίηση και έλεγχος επιδέξιας «ρομποτικής λαβής»<br />

(Συνεργαζόμενα ρομπότ, Ρομποτικά χέρια)<br />

• ΕΝΟΤΗΤΑ-2: Κινούμενα Ρομπότ<br />

– Αρχιτεκτονικές Ελέγχου Κινούμενων Ρομπότ<br />

– Σχεδιασμός δρόμου – Αποφυγή εμποδίων<br />

– Σύνθεση αισθητηρίων πληροφοριών<br />

• Σύνθετοι ρομποτικοί χειριστές - Εφαρμογές<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

1<br />

2


Ε.Μ.Π., ΣΗΜΜΥ, Ακαδημαϊκό Έτος 2010-11, 8ο Εξάμηνο<br />

Μάθημα: Ρομποτική ΙΙ. Διδάσκων: Κ.Τζαφέστας<br />

Έλεγχος «Αλληλεπίδρασης»<br />

με το Περιβάλλον<br />

• Έλεγχος Δύναμης – Έλεγχος «Εμπέδησης»<br />

• Έλεγχος «Οπτικής Οδήγησης»<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Ε.Μ.Π., ΣΗΜΜΥ, Ακαδημαϊκό Έτος 2010-11, 8ο Εξάμηνο<br />

Μάθημα: Ρομποτική ΙΙ. Διδάσκων: Κ.Τζαφέστας<br />

Ρομποτικός Έλεγχος Δύναμης /<br />

Εμπέδησης (Σύνθετης Μηχανικής<br />

Αντίστασης / Συμμόρφωσης)<br />

(<strong>Force</strong> / Impedance / Compliance Robot Control)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

3<br />

4


Ρομποτικός Έλεγχος Δύναμης -<br />

Εισαγωγή<br />

• Έλεγχος μηχανικής εμπέδησης (impedance control)<br />

– Passive impedance – Remote center of compliance (RCC)<br />

(εργαλεία παθητικής «συμμόρφωσης»)<br />

– Active Impedance – Active stiffness control<br />

(έλεγχος «ενεργούς σύνθετης μηχανικής αντίστασης»)<br />

• Έλεγχος δύναμης (force control)<br />

• Υβριδικός έλεγχος δύναμης/θέσης<br />

(hybrid force/motion control)<br />

• Παραδείγματα - Προσομοίωση<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Μέθοδος Παθητικής Συμμόρφωσης<br />

(passive compliance)<br />

Μηχανικά εργαλεία παθητικής συμμόρφωσης<br />

Remote Center of Compliance (RCC)<br />

Αρχή λειτουργίας RCC<br />

(α) συμμόρφωση σε οριζόντια δύναμη<br />

(β) συμμόρφωση σε ροπή<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

5<br />

6


Μέθοδος Παθητικής Συμμόρφωσης<br />

(συνέχεια) (1)<br />

RCC 3 διαστάσεων<br />

Βασική Σχέση:<br />

f = [f x , f y , f z , N x , N y , N z ]<br />

ε = [ε x , ε y , ε z , α x , α y , α z ]<br />

K =<br />

f = Κ · ε<br />

Κsoft 0<br />

Κsoft Κhard Κsoft Κsoft 0 Κ soft<br />

: εξωτερική δύναμη/ροπή<br />

: μηχανική παραμόρφωση<br />

(strain)<br />

K : μήτρα μηχανικής σκληρότητας («ακαμψίας»)<br />

(stiffness matrix)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Μέθοδος Παθητικής Συμμόρφωσης<br />

(συνέχεια) (2)<br />

Μηχανικά εργαλεία παθητικής συμμόρφωσης<br />

Remote Center of Compliance (RCC)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

7<br />

8


Μέθοδος Παθητικής Συμμόρφωσης<br />

(συνέχεια) (3)<br />

Εργαλεία παθητικής συμμόρφωσης σε ρομποτικές<br />

εργασίες συναρμολόγησης (peg-in-hole tasks)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Ρομποτικοί Αισθητήρες Δύναμης<br />

(force sensors)<br />

Αισθητήρας δύναμης: Κατάλληλη μηχατρονική διάταξη<br />

αισθητήρων ελαστικής (μηχανικής) παραμόρφωσης<br />

(strain gauges – strain/deformation transducers)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

9<br />

10


Μετρητές μηχανικής παραμόρφωσης<br />

(strain gauge transducers)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Έλεγχος ενεργούς εμπέδησης<br />

(active-impedance control)<br />

Απλό παράδειγμα 1 β.ε.<br />

⋅ + ⋅ + ( − ) =<br />

( ) ( ) ( )<br />

d d d d d d d<br />

Δυναμικό μοντέλο συστήματος:<br />

mx + bx + kx= f + F<br />

a a a u<br />

ma, ba, ka: δυναμικές παράμετροι συστήματος<br />

f u : ελεγκτής<br />

F : εξωτερική δύναμη<br />

Επιθυμητή μηχανική εμπέδηση (desired impedance):<br />

md x bd x kd x xd F ή πληρέστερα:<br />

m x − x + b x − x + k x − x = F −F<br />

k d<br />

b d<br />

-Fd md F<br />

F : δύναμη ασκούμενη από το εξωτερικό<br />

περιβάλλον πάνω στο σύστημα<br />

0<br />

x xd Fd : επιθυμητή δύναμη η οποία θέλουμε τελικά<br />

να ασκείται από το εξωτερικό περιβάλλον<br />

πάνω στο σύστημα<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

11<br />

m d, b d, k d: επιθυμητές<br />

δυναμικές παράμετροι<br />

«κλειστού βρόχου»<br />

συστήματος<br />

(μοντέλο αναφοράς)<br />

12


Έλεγχος ενεργούς εμπέδησης:<br />

Απλό παράδειγμα 1 β.ε.<br />

mx + bx + kx= f + F<br />

a a a u<br />

( ) ( ) ( )<br />

: Δυναμικό μοντέλο συστήματος<br />

md xd − x + bd xd − x + kd xd − x = Fd −F<br />

(2)<br />

( ω0= kd m ,<br />

d<br />

ζ =<br />

2<br />

bd<br />

mk d d<br />

)<br />

: Επιθυμητή μηχανική εμπέδηση<br />

(desired impedance)<br />

(επιθυμητή συμπεριφορά κλειστού βρόχου)<br />

: ιδιοσυχνότητα<br />

Ελεγκτής ενεργούς μηχανικής εμπέδησης:<br />

f = mu+ bx + kx−F u a a a<br />

(3)<br />

(1)<br />

⇒ u= x<br />

(1)<br />

: συντελεστής απόσβεσης<br />

: εξίσωση κλειστού βρόχου<br />

( ) ( ) ( )<br />

−1<br />

u= xd + md ⎡⎣bd xd − x + kd xd −x − Fd −F<br />

⎤⎦<br />

(3)<br />

(όπου u σήμα ελέγχου)<br />

Για να επιτύχουμε την επιθυμητή συμπεριφορά (2), έχουμε για το u:<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Έλεγχος ενεργούς εμπέδησης:<br />

Απλό παράδειγμα 1 β.ε. (συνέχεια) (1)<br />

Ο νόμος ελέγχου μηχανικής αντίστασης (3) και (4), γράφεται ουσιαστικά ως:<br />

m m m<br />

f = mx + b x − x + k x −x− F −F<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

(4)<br />

( ) ( ) ( )<br />

a a a<br />

u a d d<br />

md + bx a+ kx a −F<br />

d<br />

e x<br />

md d d<br />

ex md<br />

d<br />

eF<br />

ή άλλως:<br />

όπου:<br />

K V K P λ m<br />

( ) ( ) ( )<br />

f = mx + bx+ kx + K x − x + K x − x + K F<br />

u a d a a V d P d F<br />

(όταν F d=0)<br />

K = λ −1(<br />

λ m = ( ma md)<br />

) K = λ b και K = λ k<br />

F m<br />

V m d<br />

P m d<br />

Παρατήρηση: Το κέρδος ανάδρασης δύναμης K F (K F≠0) επιτρέπει τη μεταβολή των<br />

«αδρανειακών» χαρακτηριστικών του συστήματος (λ m≠1) στο κλειστό βρόχο<br />

13<br />

14


k d<br />

b d<br />

(2)<br />

⇒<br />

(5)<br />

Έλεγχος ενεργούς εμπέδησης:<br />

Απλό παράδειγμα 1 β.ε. (συνέχεια) (2)<br />

m d<br />

x c<br />

x<br />

F<br />

k c<br />

b c<br />

Δυναμική εξίσωση “εξωτερικού περιβάλλοντος”:<br />

b x− x + k x− x =−F<br />

(5)<br />

( ) ( )<br />

c c c c<br />

( ) ( ) ( )<br />

E<br />

d d d d d d d<br />

Επαφή με εξωτερικό περιβάλλον E<br />

k c : σκληρότητα<br />

b c : απόσβεση<br />

x c : θέσης ισορροπίας<br />

Δυναμική εξίσωση (2) κλειστού βρόχου συστήματος {M, b, k, f u }<br />

(μηχανική αντίσταση συστήματος που επιτυγχάνεται με τον ελεγκτή f u ):<br />

m x − x + b x − x + k x − x = F −F<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Έλεγχος ενεργούς εμπέδησης:<br />

Απλό παράδειγμα 1 β.ε. (συνέχεια) (3)<br />

Δυναμική συμπεριφορά τελικού κλειστού συστήματος {M, b, k, f u }<br />

σε επαφή με το εξωτερικό περιβάλλον Ε (k c , b c , x c ):<br />

( ) ( ) ( )<br />

( )<br />

mx + b + b x + k + k x= mx + bx + bx<br />

d d c d c d d d d c c<br />

kd+ kc bd+ bc<br />

ω′ 0 = m , ζ′<br />

=<br />

d 2 md<br />

( kd+ kc)<br />

: ιδιοσυχνότητα : συντελεστής απόσβεσης<br />

+ kx d d + kx c c −Fd<br />

Δύναμη πάνω στο σύστημα από το εξωτερικό περιβάλλον εργασίας,<br />

= →∞ = −<br />

στην τελική (μόνιμη) κατάσταση (t∞): Fef F( t ) kc( xcxf) όπου xf : τελική θέση συστήματος x<br />

( kdxd+ kcxc) = x( t→∞ ) = − 1 F<br />

Άρα:<br />

( )<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

( kd+ kc) ( kd+ kc)<br />

15<br />

f d<br />

kk k<br />

ef d<br />

d c<br />

c<br />

F = F t→∞ =<br />

( )<br />

( xc − xd)<br />

+ F<br />

kd+ kc ( kd+ kc)<br />

16


Έλεγχος ενεργούς μηχανικής εμπέδησης<br />

ρομποτικού χειριστή - Γενικά<br />

Γενική Περίπτωση (ρομποτικός χειριστής)<br />

(a) Σύστημα ελέγχου (ροπές τ i )<br />

με ανάδραση δύναμης F<br />

(και θέσης y)<br />

(b) Μηχανική αντίσταση που<br />

θέλουμε να επιτύχουμε μέσω<br />

του ρομποτικού ελεγκτή ενεργούς<br />

μηχανικής εμπέδησης<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Δυναμική ρομποτικού χειριστή (1)<br />

Δυναμικό μοντέλο ρομποτικού χειριστή (υπενθύμιση):<br />

T<br />

M( q) ⋅ q + h( q, q) = τ + J F<br />

(στο χώρο των γενικευμένων μεταβλητών q i των αρθρώσεων)<br />

όπου Μ: μήτρα αδρανείας ρομπότ (συχνά συμβολίζεται και ως D(q))<br />

h: όροι Coriolis και φυγοκέντρου δυνάμεως<br />

τ: ροπές (γενικευμένες μεταβλητές δράσης) στις αρθρώσεις<br />

F e: εξωτερική δύναμη που ασκείται από το εξωτερικό περιβάλλον<br />

και J : Ιακωβιανή μήτρα του ρομπότ<br />

Μοντέλο Lagrange :<br />

Μοντέλο Newton-Euler :<br />

τ =<br />

i<br />

d<br />

dt<br />

⎛ ⎞<br />

⎜∂K⎟ K P<br />

⎜ ⎟−<br />

∂ + ∂<br />

⎜∂qi ⎟ ∂qi ∂q<br />

⎝ ⎠<br />

i<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

e<br />

(Δ1)<br />

∑ fi = mv i ci<br />

∑ Ni = I <br />

ciωi+ ωi× ( Iciωi)<br />

K: κινητική ενέργεια<br />

P: δυναμική ενέργεια<br />

17<br />

18


Δυναμική ρομποτικού χειριστή (2)<br />

Δυναμικό μοντέλο ρομποτικού χειριστή στο χώρο εργασίας (task-space):<br />

* *<br />

M ⋅ p+ h = F + F (Δ2-α)<br />

όπου M * : μήτρα αδρανείας ρομπότ στο χώρο εργασίας,<br />

h * : όροι Coriolis και φυγοκέντρου δυνάμεως στο χώρο εργασίας,<br />

Fa: (τ=JTFa) γενικευμένη δύναμη στο χώρο εργασίας οφειλόμενη<br />

στη δράση των κινητήριων στοιχείων του ρομπότ,<br />

Fe: εξωτερική δύναμη που ασκείται από το εξωτερικό περιβάλλον.<br />

Έχουμε: = J⋅ ⇒ = J⋅ J⋅ <br />

p q p q+ q<br />

T T<br />

και (Δ1): M⋅ q + h= J Fa + J Fe −1 −1<br />

T<br />

⇔ q + M h= M J Fa + Fe<br />

⇔<br />

−1 −1<br />

T<br />

Jq + JM h= JM J F + F<br />

Επομένως τελικά:<br />

και<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

a<br />

− − T<br />

με ( )<br />

* −1<br />

*<br />

( M J M ) M J <br />

= = ⋅ ⋅<br />

*<br />

h = ⋅ ⋅ h− ⋅ ⋅q<br />

* 1 1<br />

M Q Q J M J<br />

e<br />

( a e)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

( )<br />

(Δ2-β)<br />

Δυναμικός έλεγχος ενεργούς μηχανικής<br />

εμπέδησης ρομποτικού χειριστή (1)<br />

Επιθυμητή μηχανική εμπέδηση (desired impedance) ρομποτικού χειριστή<br />

στο χώρο εργασίας (επιθυμητή δυναμική συμπεριφορά κλειστού βρόχου)<br />

M p − p + B p − p + K p − p = F −F<br />

(Ε1)<br />

( ) ( ) ( )<br />

d d d d d d d e<br />

Δυναμική εξίσωση ρομποτικού χειριστή στο χώρο εργασίας (Δ2-α):<br />

* *<br />

M ⋅ p+ h = F + F<br />

a<br />

e<br />

Δυναμικός ελεγκτής ενεργούς εμπέδησης:<br />

(βασισμένος στη μεθοδολογία ελέγχου υπολογιζόμενης ροπής (computed-torque control)<br />

T<br />

τ<br />

= J ⋅ Fa<br />

F = M ⋅ u+ h −F<br />

* *<br />

a e<br />

(Ε2)<br />

( u= p : εξίσωση κλειστού βρόχου )<br />

με το σήμα ελέγχου u να δίνεται από τη σχέση (ώστε στο κλειστό βρόχο να έχουμε την (Ε1))<br />

( ) ( ) ( )<br />

−1<br />

u= pd + Md ⎡⎣Bd pd − p + Kd<br />

pd − p − Fd −Fe<br />

⎤⎦<br />

(Ε3)<br />

σφάλμα ταχύτητας<br />

σφάλμα θέσης<br />

σφάλμα δύναμης<br />

19<br />

20


p d<br />

pd<br />

p d<br />

F<br />

Δυναμικός έλεγχος ενεργούς μηχανικής<br />

εμπέδησης ρομποτικού χειριστή (2)<br />

p d<br />

pd<br />

p d<br />

F<br />

d<br />

e p<br />

+<br />

x<br />

- + e p<br />

x<br />

- +<br />

x<br />

-<br />

K d<br />

eF<br />

B d<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

ανάδραση θέσης<br />

Δυναμικός<br />

Ελεγκτής<br />

(Ε2),(E3)<br />

τ Ρομποτικός<br />

Χειριστής<br />

(Δ2)<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

ανάδραση θέσης<br />

Σχηματικό διάγραμμα (block-diagram)<br />

δυναμικού ρομποτικού ελεγκτή ενεργούς μηχανικής<br />

αντίστασης<br />

(υπολογιζόμενης ροπής)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Δυναμικός έλεγχος ενεργούς μηχανικής<br />

εμπέδησης ρομποτικού χειριστή (3)<br />

d<br />

e p<br />

+<br />

x<br />

- + e p<br />

x<br />

- +<br />

x<br />

-<br />

(task-space)<br />

K d<br />

eF<br />

B d<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

ανάδραση θέσης<br />

+<br />

+<br />

-<br />

J( q )<br />

Γ(q)<br />

Ρομποτικό Μοντέλο: M * ,h *<br />

*<br />

h( q, q<br />

)<br />

*<br />

M( q )<br />

+<br />

+<br />

+<br />

-<br />

Ρομποτικός<br />

Χειριστής<br />

(Δ2)<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

(joint space)<br />

ανάδραση θέσης<br />

Σχηματικό διάγραμμα (block-diagram)<br />

δυναμικού ρομποτικού ελεγκτή ενεργούς εμπέδησης<br />

(impedance control)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

*<br />

MM<br />

−1<br />

d<br />

τ<br />

p<br />

p<br />

F<br />

21<br />

22<br />

e<br />

q<br />

q<br />

F<br />

e


p<br />

p<br />

Δυναμικός έλεγχος ενεργούς μηχανικής<br />

εμπέδησης ρομποτικού χειριστή (4)<br />

d<br />

p d<br />

F<br />

d<br />

d<br />

(task-space)<br />

Έλεγχος<br />

Εμπέδησης<br />

(Ε3)<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

ανάδραση θέσης<br />

u Αντίστροφη<br />

Δυναμική<br />

(Ε2)<br />

J( q )<br />

Γ(q)<br />

Ευθεία κινηματική<br />

Ρομποτικό Μοντέλο: M * ,h *<br />

Ρομποτικός<br />

Χειριστής<br />

(Δ2)<br />

ανάδραση δύναμης<br />

ανάδραση ταχύτητας<br />

(joint space)<br />

ανάδραση θέσης<br />

Γενική δομή ρομποτικού ελεγκτή εμπέδησης<br />

(impedance control)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Απλοποιημένος έλεγχος ενεργούς μηχανικής<br />

ακαμψίας (stiffness) ρομποτικού χειριστή<br />

Θεωρούμε: M * =I και h * =0<br />

οπότε ο ελεγκτής (Ε2)-(Ε3) μπορεί να γραφεί:<br />

τ<br />

( )<br />

J ⎡⎣ p B eK e K e F ⎤⎦<br />

T<br />

= ⋅ d + d p + d p − Fd F − e<br />

όπου: e = p − p και e = F −F<br />

p d F d e<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

τ<br />

(Ε4)<br />

Εαν επιπλέον Fd=0 και KFd = I, καθώς και Βd = 0, pd = 0,<br />

τότε η (Ε4) γράφεται:<br />

K qd<br />

(Ε5)<br />

τ = J ⋅K ⋅ e = J ⋅K ⋅J⋅e T T<br />

d p d q<br />

όπου:<br />

και ονομάζεται active-stiffness control, όπου:<br />

eq = qd − q<br />

K d : μήτρα «ακαμψίας» (stiffness matrix) ορισμένη στο χώρο εργασίας<br />

K qd = J T K d J : ισοδύναμη μήτρα «ακαμψίας» στο χώρο αρθρώσεων<br />

q<br />

q<br />

F<br />

23<br />

24<br />

e


Έλεγχος δύναμης για ρομποτικό χειριστή<br />

(<strong>Force</strong> control) - Εισαγωγή<br />

ενεργός μηχανική<br />

αντίσταση ρομπότ<br />

K d<br />

B d<br />

Δύναμη πάνω στο ρομποτικό χειριστή<br />

από το εξωτερικό περιβάλλον εργασίας,<br />

στην τελική (μόνιμη) κατάσταση (t∞):<br />

( t ) K ( )<br />

F = F →∞ = p −p<br />

ef e e e f<br />

όπου pf : τελική θέση (στη μόνιμη κατάσταση) του στοιχείου δράσης του ρομπότ<br />

p = p t →∞ = K + K<br />

−1<br />

K p + K p −F<br />

Άρα:<br />

M d<br />

Fe pe εξωτερικό περιβάλλον<br />

p<br />

p d<br />

K e<br />

B e<br />

( ) [ ] ( )<br />

f d e d d e e d<br />

−1<br />

( t ) K ( K K ) K ( )<br />

Fef = Fe→∞ = e d + e ⎡⎣ d pe− pd+ Fd⎤⎦<br />

Βασική αρχή:<br />

Στον έλεγχο δύναμης θέτουμε: Kd =0 ⇒ Fef = Fe (t→∞) = Fd (δηλαδή δε λαμβάνουμε υπ’όψη στον έλεγχο το σφάλμα θέσης)<br />

E<br />

σφάλμα<br />

θέσης<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

επιθυμητή<br />

δύναμη<br />

Έλεγχος δύναμης ρομποτικού χειριστή<br />

Ρομποτικός έλεγχος δύναμης βασισμένος στο μοντέλο (υπολογιζόμενης ροπής):<br />

T<br />

τ = J ⋅Fa<br />

* *<br />

Fa = M ⋅ u+ h −Fe<br />

(F1)<br />

(computed torque)<br />

( u= p : εξίσωση κλειστού βρόχου )<br />

με το σήμα ελέγχου u να δίνεται από τη σχέση (ώστε στο κλειστό βρόχο να έχουμε την (Ε1))<br />

( ) ( )<br />

u= M ⎡⎣−B p − F − F ⎤⎦=−K<br />

p −K F −F<br />

−1<br />

d d d e Bd Fd d e<br />

ανάδραση<br />

ταχύτητας<br />

ανάδραση<br />

δύναμης<br />

Σε σύγκριση με το δυναμικό ελεγκτή ενεργούς εμπέδησης (impedance control),<br />

στον έλεγχο δύναμης (force control) θέτουμε Kd =0 , δηλαδή:<br />

«Ακαμψία» του συστήματος ελέγχου του ρομποτικού χειριστή = μηδέν<br />

(μηδενική φαινόμενη «ακαμψία» -apparent stiffness- στο χώρο εργασίας)<br />

Με άλλα λόγια δεν έχουμε ανάδραση σφάλματος θέσης παρά μόνο<br />

ανάδραση σφάλματος δύναμης (και ταχύτητας για ευστάθεια),<br />

οπότε τελικά: ⇒ Fef = Fe (t→∞) → Fd (επιθυμητή δύναμη)<br />

(F2)<br />

25<br />

26


Fd<br />

x<br />

+ -<br />

eF<br />

Άμεσος Έλεγχος δύναμης (1)<br />

(direct force control)<br />

K F<br />

pF p<br />

x<br />

+<br />

e<br />

-<br />

K P<br />

-<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

u<br />

Δυναμική<br />

συστήματος<br />

−1<br />

x M<br />

x<br />

d ∫ ∫ +<br />

Bd<br />

p<br />

Περιβάλλον<br />

p<br />

p p -<br />

Άμεσος Έλεγχος Δύναμης με εσωτερικό βρόχο θέσης<br />

Άμεσος Έλεγχος δύναμης (2)<br />

(direct force control)<br />

Άμεσος Έλεγχος Δύναμης με εσωτερικό βρόχο θέσης (συνέχεια)<br />

( )<br />

( )<br />

u = KP⋅ pF − p −Bd ⋅ p<br />

p = K F −F<br />

F F d e<br />

M ⋅ p= u<br />

d<br />

( )<br />

F = K p− p<br />

e e e<br />

( )<br />

M d ⋅ p+ Bd ⋅ p+ KP⋅ p=<br />

= KPKF ( Fd − Fe)<br />

∧<br />

( / )<br />

p = F K + p<br />

e e e<br />

⇒ M ⋅ F + B ⋅ F + K I + K K F = K K K F<br />

Δυναμική Εξίσωση κλειστού βρόχου<br />

d e d e P e F e P e F d<br />

Proportional (P) <strong>Force</strong>‐Control: K = K = const.<br />

F FP<br />

Proportional‐Integral (PI) <strong>Force</strong>‐Control:<br />

F = FP + FI∫(<br />

) t<br />

Μηδενικό μόνιμο σφάλμα δύναμης eF K K K . dτ<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Ke<br />

e<br />

Fe<br />

27<br />

28


Fd<br />

x<br />

+ -<br />

Άμεσος Έλεγχος δύναμης (3)<br />

(direct force control)<br />

p<br />

eF F<br />

K F<br />

K P<br />

-<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

u<br />

M<br />

Δυναμική<br />

συστήματος<br />

−1<br />

x ∫ ∫ x<br />

d<br />

Bd<br />

p<br />

Περιβάλλον<br />

p<br />

p p -<br />

Άμεσος Έλεγχος Δύναμης με εσωτερικό βρόχο ταχύτητας<br />

⇒ M ⋅ F + B ⋅ F + K K K F = K K K F<br />

d e d e P e F e P e F d<br />

Δυναμική Εξίσωση κλειστού βρόχου<br />

P και PI force controller: Μηδενικό μόνιμο σφάλμα δύναμης eF Υβριδικός έλεγχος δύναμης/τροχιάς<br />

ρομποτικού χειριστή (hybrid control)<br />

Βασική Αρχή<br />

έλεγχος δύναμης<br />

έλεγχος θέσης<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

+<br />

Ke<br />

e<br />

Fe<br />

Διαφορετικός τύπος ελέγχου σε<br />

διαφορετικές κατευθύνσεις στο<br />

χώρο εργασίας:<br />

Έλεγχος θέσης / δύναμης /<br />

ενεργούς μηχανικής εμπέδησης /...<br />

κλπ.<br />

ανάλογα με την υπο-εργασία<br />

29<br />

30


Υβριδικός έλεγχος δύναμης/τροχιάς<br />

ρομποτικού χειριστή (συνέχεια) (1)<br />

Παραδείγματα μηχανικών εργασιών που απαιτούν την<br />

εφαρμογή υβριδικού ελέγχου δύναμης/θέσης<br />

(σε διαφορετικούς άξονες στο χώρο του τελικού στοιχείου δράσης)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Υβριδικός έλεγχος δύναμης/τροχιάς<br />

ρομποτικού χειριστή (συνέχεια) (2)<br />

Βασικό σχήμα υβριδικού ελέγχου δύναμης/τροχιάς (1)<br />

Επιθυμητή<br />

Τροχιά +<br />

Εντολή κατεύθυνσης<br />

ελέγχου {s i } (i=1,..,n)<br />

Επιθυμητή<br />

Δύναμη<br />

S=diag[s i ]<br />

+<br />

-<br />

-<br />

Μετασχηματισμοί<br />

Συντεταγμένων<br />

[S]<br />

[I] – [S]<br />

Μετασχηματισμοί<br />

Συντεταγμένων<br />

s i =1 έλεγχος τροχιάς<br />

s i =0 έλεγχος δύναμης<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

Έλεγχος<br />

Τροχιάς<br />

+<br />

+<br />

Έλεγχος<br />

Δύναμης<br />

Αισθητήρες<br />

Θέσης<br />

Ρομποτικός<br />

Χειριστής<br />

Αισθητήρας<br />

Δύναμης<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

T<br />

T<br />

Θέση<br />

31<br />

Δύναμη<br />

<strong>32</strong>


Υβριδικός έλεγχος δύναμης/τροχιάς<br />

ρομποτικού χειριστή (συνέχεια) (3)<br />

Βασικό σχήμα υβριδικού ελέγχου δύναμης/τροχιάς (2)<br />

Επιθυμητή<br />

Τροχιά +<br />

Εντολή κατεύθυνσης<br />

ελέγχου {s i } (i=1,..,n)<br />

1<br />

Επιθυμητή<br />

Δύναμη<br />

y 0<br />

S=diag[s i ]<br />

+<br />

-<br />

-<br />

Μετασχηματισμοί<br />

Συντεταγμένων<br />

Έλεγχος<br />

Τροχιάς<br />

Έλεγχος<br />

Δύναμης<br />

u<br />

u<br />

( c )<br />

p<br />

( c )<br />

F<br />

Μετασχηματισμοί<br />

Συντεταγμένων<br />

s i =1 έλεγχος τροχιάς<br />

s i =0 έλεγχος δύναμης<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

[S]<br />

[I] – [S]<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

Αισθητήρες<br />

Θέσης<br />

Αισθητήρας<br />

Δύναμης<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

T<br />

T<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦ ανάστροφη<br />

δυναμική<br />

+ u τ<br />

D·(.)+h Ρομπότ<br />

+<br />

0<br />

⎡ c ⎤<br />

⎣<br />

R<br />

⎦<br />

Ρομποτικός έλεγχος εμπέδησης –<br />

Παράδειγμα R-R 2D (1)<br />

2 βαθμοί ελευθ.<br />

2D, επίπεδο<br />

l 1<br />

lc1 m1,I1 O0 y 1<br />

O 1<br />

q 1<br />

m2,I2 lc2 q2 x 0<br />

2<br />

yΕ OΕ x 1<br />

xΕ θ<br />

Δυναμικό μοντέλο Lagrange :<br />

τ =<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

i<br />

d<br />

dt<br />

⎛ ⎞<br />

⎜∂K⎟ K P<br />

⎜ ⎟−<br />

∂ + ∂<br />

⎜∂qi ⎟ ∂qi ∂q<br />

⎝ ⎠<br />

i<br />

K = ml q Iq<br />

1<br />

1<br />

2<br />

2 1<br />

1 c1<br />

1 +<br />

2<br />

2<br />

1 1<br />

= 1 1ˆc1 1 ( s1 sin(<br />

q1)<br />

)<br />

P mgl s =<br />

K = mvv I q + q<br />

2<br />

1 T<br />

+ 1 ⎛ ⎞<br />

2 2 c2 c2<br />

2⎜ 1 2⎟<br />

⎝ ⎠<br />

2 2<br />

P = mgls ˆ + l s s q q<br />

⎝<br />

c<br />

⎠<br />

όπου: vc2= d ( p<br />

dt c2)<br />

⎡ lsq l s ⎛qq⎞⎤ ⎢− ⎡ ⎤<br />

1 1 − 1 c2<br />

12⎜ + 1 2⎟⎥<br />

⎝ ⎠<br />

⎢lc 1 1+ lc2c ⇒ v<br />

12⎥<br />

c2<br />

= ⎢ ⎥<br />

και: pc2<br />

=<br />

⎢<br />

⎢ ⎥<br />

lcq l c ⎛qq⎞ ⎥<br />

⎢<br />

⎢ls+ l s ⎥<br />

1 1 + 1 c2<br />

12⎜ + 1 2⎟<br />

⎥<br />

⎣ ⎝ ⎠ ⎦<br />

⎣ 1 1 c2<br />

12⎦<br />

⎛ ⎞<br />

2 2 ⎜ 1 1 2 12⎟ ( 12 = sin ( 1+ 2 ) )<br />

Θέση<br />

Δύναμη<br />

33<br />

K: κινητική ενέργεια<br />

P: δυναμική ενέργεια<br />

1ος σύνδεσμος<br />

2ος σύνδεσμος<br />

34


Άρα:<br />

Ρομποτικός έλεγχος εμπέδησης –<br />

Παράδειγμα R-R 2D (2)<br />

T<br />

c2c2 ⎡<br />

⎢<br />

⎣<br />

lsq 1 11lc2s ⎛<br />

12 ⎜q ⎝ 1<br />

2<br />

⎤ q ⎞<br />

2 ⎟⎥ ⎠⎦ ⎡<br />

⎢lcq 1 1 ⎣<br />

1 lc2c ⎛<br />

12 ⎜q ⎝ 1<br />

2<br />

⎤ q<br />

⎞<br />

2 ⎟⎥<br />

⎠⎦<br />

T<br />

c2 2 2 2 2 2<br />

2<br />

= lsq l s q q 2llssqq<br />

q<br />

c2 1 1 + ⎛ ⎞ ⎛ ⎞<br />

1 c2 12⎜ + 1 2⎟ + 1 c2<br />

1 121⎜ + 1 2⎟<br />

⎝ ⎠ ⎝ ⎠<br />

2 2 2 2 2<br />

2<br />

+ lcq 1 1 1+ lc2c ⎛<br />

12 q1 q ⎞<br />

⎜ + 2⎟<br />

+ 2ll<br />

⎝ ⎠ 1 c2cc<br />

1 12q ⎛<br />

1⎜q ⎝ 1 q<br />

⎞<br />

2⎟<br />

⎠<br />

T<br />

c2 2 2 2<br />

2<br />

= lq 2<br />

c2 1 + l ⎛qq ⎞ llcq ⎛qq ⎞<br />

1 c2⎜ + 1 2⎟ + 1 c2<br />

21⎜ + 1 2⎟<br />

⎝ ⎠ ⎝ ⎠<br />

vv<br />

vv<br />

vv<br />

=− − + + + + ⇒<br />

+ ⇒<br />

• K ml q Iq I q q m l q l q q ll c 2q<br />

q<br />

q ∂ = + + + + + + + + <br />

∂ <br />

1<br />

2<br />

1 c1 1 1 1<br />

⎛<br />

2⎜ ⎝ 1<br />

⎞<br />

2⎟ ⎠<br />

⎡ 2<br />

2⎢1 ⎣<br />

1<br />

2 ⎛<br />

c2⎜ ⎝ 1<br />

⎞<br />

2⎟ ⎠ 1 c2<br />

⎛<br />

2⎜ ⎝ 1<br />

⎞⎤<br />

2⎟⎥<br />

⎠⎦<br />

⎛<br />

⎜<br />

⎜<br />

⎜<br />

⎝<br />

⎞<br />

⎟<br />

⎟ ml q Iq I ⎛q q ⎞<br />

1 c11<br />

11 2⎜1 2⎟<br />

⎟<br />

⎝ ⎠<br />

1 ⎟<br />

⎠ ⎡ 2 2<br />

⎛ ⎞ ⎛ ⎞ ⎤<br />

+ m2 l1q1 l ⎛<br />

c2 q1 q ⎞<br />

⎢ + ⎜ + 2⎟ + ll 1 c2c2⎜2q1+ q2⎟− ll 1 c2s2⎜2q1+<br />

q2⎟q2⎥ ⎣ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎦<br />

d<br />

dt K q<br />

• ∂ ∂ = + + +<br />

•<br />

∂P∂ ∂q ∂q<br />

= mgl ˆ s+ mgˆ ls+ l s = mgl ˆ c+ mgˆ lc+ l c<br />

1 1<br />

...<br />

Τελικά:<br />

⎡ ⎛ ⎞⎤ ⎛ ⎞<br />

⎢ 1 c1 1 2 ⎜ 1 1 c2 12⎟⎥ 1 c1 1 2 ⎜ 1 1 c2<br />

12⎟<br />

⎣ ⎝ ⎠⎦ ⎝ ⎠<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Ρομποτικός έλεγχος εμπέδησης –<br />

Παράδειγμα R-R 2D (3)<br />

Ρομποτικό Δυναμικό Μοντέλο 2D Χειριστή 2 β.ε.<br />

• = I + ml + I + m l + l + 2ll<br />

c q+ I + m l + ll c q<br />

τ1 ⎡<br />

⎢<br />

⎣<br />

1<br />

2<br />

1 c1 2<br />

⎛ 2<br />

2⎜ ⎝<br />

1<br />

2<br />

c2 1 c2 ⎞⎤ 2⎟⎥ ⎠<br />

1<br />

⎦<br />

⎡<br />

⎢<br />

⎣<br />

2<br />

⎛ 2<br />

2⎜ ⎝<br />

c2 1 c2<br />

⎞⎤<br />

2⎟⎥ ⎠<br />

2<br />

⎦<br />

⎛ mll s 2qq q2⎞ ⎛ ⎞<br />

− mgl 21c22⎜ + 1 2 2⎟+<br />

1ˆ c+ mg c112ˆ⎜lc+ l c<br />

1 1 c212⎟<br />

⎝ ⎠ ⎝ ⎠<br />

⎡ ⎛ 2 ⎞⎤ ⎡ 2 ⎤<br />

τ 2<br />

2 ⎢I2 ml 2⎜ c2 llc 1 c2 2⎟⎥q1 ⎢I2 ml 2 c2⎥q2 mllsq 2 1 c2 21 mglc 2ˆ ⎝ ⎠ ⎣ ⎦<br />

c2<br />

12<br />

⎣ ⎦<br />

• = + + + + + +<br />

τ = M q 2<br />

1 11 + M q 2<br />

1 12 + h q h qq g<br />

2 122 + +<br />

2 112 1 2<br />

1<br />

τ = M q 2<br />

2 21 + M q h q g<br />

1 22 + +<br />

2 211 1 2<br />

όπου: 2 2 2<br />

M11 = I1+ ml 1 c1+ I2+ m2( l1+ lc2+ 2ll<br />

1 c2c2)<br />

2<br />

M12 = M21 = I2+ m2( lc2+ ll 1 c2c2)<br />

M22 = I2+ ml 2<br />

h122 = h112 =− h211 =−mll<br />

2 1 c2s2<br />

g1= m1gl ˆ c1c1+ mg 2ˆ( lc 1 1+ lc2c12) g2= m2gl ˆ c2c12<br />

Δηλαδή:<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

2<br />

c2<br />

35<br />

36


Είναι:<br />

Θέτουμε:<br />

Ρομποτικός έλεγχος εμπέδησης –<br />

Παράδειγμα R-R 2D (4)<br />

M=<br />

M M<br />

=<br />

h<br />

=<br />

h q + 2h<br />

qq + g<br />

⎡ ⎤ ⎡ ⎤ ⎡ 2<br />

⎤<br />

⎢ 11 12 ⎥ ⎢ 1⎥ ⎢ 122 2 112 1 2 1⎥<br />

⎢ ⎥ h ⎢ ⎥ ⎢ ⎥<br />

⎢M M ⎥ ⎢ 2<br />

21 22 h ⎥ ⎢ h q g ⎥<br />

⎣ ⎦ ⎣ 2⎦ ⎣ 211 + 1 2 ⎦<br />

− − T<br />

με ( )<br />

* −1<br />

*<br />

( M J M ) M J <br />

* 1 1<br />

M = Q Q= J⋅M ⋅J<br />

*<br />

h = ⋅ ⋅ h− ⋅ ⋅q<br />

Ρομποτικός Ελεγκτής Ενεργούς Μηχανικής Εμπέδησης (υπολογιζόμενης ροπής)<br />

με<br />

τ = J F 1 11 ax + J F 21 ay και τ = J F 2 12 ax + J F 22 ay<br />

F = Mu+ Mu+ h−F και F * * *<br />

= Mu+ Mu+ h−F * * *<br />

ax 11 1 12 2 1 ex<br />

όπου, θέτοντας:<br />

−1 −1 −1<br />

B′ d = Md Bd, K′ d = Md Kd και Μ′ d = M d<br />

με: ep= pd − p και eF = Fd −Fe<br />

έχουμε:<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

(J: Ιακωβιανή μήτρα)<br />

ay 21 1 22 2 2 ey<br />

[ ′ ′ ′ ′ ′ ′ ]<br />

[ ′ ′ ′ ′ ′ ′ ]<br />

u = p + B e+ B e+ K e + K e −M e −M<br />

e<br />

1 dx d , xx px d , xy py d , xx px d , xy py d , xx Fx d , xy Fy<br />

u = p + B e+ B e+ K e + K e −M e −M<br />

e<br />

2 dy d , yx px d , yy py d , yx px d , yy py d , yx Fx d , yy Fy<br />

Ε.Μ.Π., ΣΗΜΜΥ, Ακαδημαϊκό Έτος 2010-11, 8ο Εξάμηνο<br />

Μάθημα: Ρομποτική ΙΙ. Διδάσκων: Κ.Τζαφέστας<br />

Ρομποτικός Έλεγχος Δύναμης /<br />

Εμπέδησης<br />

(Παράδειγμα Εφαρμογής)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

37<br />

38


Δυναμικός έλεγχος ενεργούς<br />

εμπέδησης ρομποτικού χειριστή<br />

Επιθυμητή μηχανική εμπέδηση (desired impedance) ρομποτικού χειριστή<br />

στο χώρο εργασίας (επιθυμητή δυναμική συμπεριφορά κλειστού βρόχου)<br />

( ) ( ) ( )<br />

M p − p + B p − p + K p − p = F −F<br />

d d d d d d d e<br />

Δυναμική εξίσωση ρομποτικού χειριστή στο χώρο εργασίας (Δ2-α):<br />

⋅ p+ h = F + F<br />

* *<br />

M <br />

a<br />

e<br />

Δυναμικός ελεγκτής ενεργούς εμπέδησης:<br />

(βασισμένος στη μεθοδολογία ελέγχου υπολογισμένης ροπής (computed-torque control)<br />

T<br />

τ = J ⋅ Fa<br />

(Ε2) ( u= p : εξίσωση κλειστού βρόχου )<br />

* *<br />

F = M ⋅ u+ h −F<br />

a e<br />

με το σήμα ελέγχου u να δίνεται από τη σχέση (ώστε στο κλειστό βρόχο να έχουμε την (Ε1))<br />

( ) ( ) ( )<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

(Ε1)<br />

−1<br />

u= pd + Md ⎡⎣Bd pd − p + Kd<br />

pd − p − Fd −Fe<br />

⎤⎦<br />

(Ε3)<br />

σφάλμα ταχύτητας<br />

σφάλμα θέσης<br />

σφάλμα δύναμης<br />

Έλεγχος δύναμης ρομποτικού χειριστή<br />

Ρομποτικός έλεγχος δύναμης βασισμένος στο μοντέλο:<br />

T<br />

τ = J ⋅Fa<br />

F = M ⋅ u+ h −F<br />

* *<br />

a e<br />

(F1)<br />

( u= p : εξίσωση κλειστού βρόχου )<br />

με το σήμα ελέγχου u να δίνεται από τη σχέση (ώστε στο κλειστό βρόχο να έχουμε την (Ε1))<br />

( ) ( )<br />

u= M ⎡⎣−B p − F − F ⎤⎦=−K<br />

p −K F −F<br />

−1<br />

d d d e Bd Fd d e<br />

ανάδραση<br />

ταχύτητας<br />

ανάδραση<br />

δύναμης<br />

Σε σύγκριση με το δυναμικό ελεγκτή ενεργούς εμπέδησης (impedance control),<br />

στον έλεγχο δύναμης (force control) θέτουμε K d =0 , δηλαδή:<br />

«Ακαμψία» του συστήματος ελέγχου του ρομποτικού χειριστή = μηδέν<br />

(μηδενική φαινόμενη «ακαμψία» -apparent stiffness- στο χώρο εργασίας)<br />

Με άλλα λόγια δεν έχουμε ανάδραση σφάλματος θέσης παρά μόνο<br />

ανάδραση σφάλματος δύναμης (και ταχύτητας για ευστάθεια),<br />

οπότε τελικά: ⇒ F ef = F e (t→∞) → F d (επιθυμητή δύναμη)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

(F2)<br />

39<br />

40


1<br />

Έλεγχος δύναμης ρομποτικού χειριστή –<br />

Παράδειγμα R-R 2D (1)<br />

2 βαθμοί ελευθ.<br />

2D, επίπεδο<br />

y 0<br />

l 1<br />

lc1 m1,I1 O0 y 1<br />

O 1<br />

q 1<br />

m2,I2 lc2 q2 x 0<br />

2<br />

yΕ OΕ x 1<br />

xΕ θ<br />

Ρομποτικό δυναμικό μοντέλο:<br />

τ = M q + M q + h q+ 2h<br />

qq + g<br />

2<br />

1 11 1 12 2 122 2 112 1 2 1<br />

τ = M q + M q + h q+ g<br />

2<br />

2 21 1 22 2 211 1 2<br />

όπου:<br />

M = I + ml + I + m l + l + ll c<br />

M22 = I2+ ml2<br />

2 c2<br />

2<br />

M12 = M21 = I2+ m2( lc2+ ll 1 c2c2)<br />

h122 = h112 =− h211 =−mll<br />

2 1 c2s2<br />

g1= mgl 1ˆ c1c1+ mg 2ˆ( lc 1 1+ lc2c12) g = mgl ˆ c<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

( 2 )<br />

2 2 2<br />

11 1 1 c1221c21c22 2 2 c2<br />

12<br />

Έλεγχος δύναμης ρομποτικού χειριστή -<br />

Παράδειγμα R-R 2D (2)<br />

Ρομποτικό Δυναμικό Μοντέλο ρομπότ 2 β.ε. (στο χώρο αρθρώσεων)<br />

με:<br />

T<br />

τ = M( q) ⋅ q + h( q, q) −J<br />

F<br />

M=<br />

M M<br />

=<br />

h<br />

=<br />

h q + 2h<br />

qq + g<br />

⎡ ⎤ ⎡ ⎤ ⎡ 2<br />

⎤<br />

⎢ 11 12 ⎥ ⎢ 1⎥ ⎢ 122 2 112 1 2 1⎥<br />

⎢ ⎥ h ⎢ ⎥ ⎢ ⎥<br />

⎢M M ⎥ ⎢ 2<br />

21 22 h ⎥ ⎢ h q g ⎥<br />

⎣ ⎦ 2 211 +<br />

⎣ ⎦ ⎣ 1 2 ⎦<br />

Ρομποτικό Δυναμικό Μοντέλο ρομπότ 2 β.ε. στο χώρο δράσης (task-space)<br />

J Fa<br />

T<br />

= ⋅<br />

τ και:<br />

*<br />

F = M ⋅ p+ h −F<br />

*<br />

a e<br />

− − T<br />

με ( )<br />

* −1<br />

*<br />

( M J M ) M J <br />

* 1 1<br />

M = Q Q= J⋅M ⋅J<br />

όπου:<br />

*<br />

h = ⋅ ⋅ h− ⋅ ⋅q<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

e<br />

(J: Ιακωβιανή μήτρα)<br />

41<br />

42


y (cm)<br />

Ρομποτικός έλεγχος συμμόρφωσης -<br />

Παράδειγμα R-R 2dof - Αποτελέσματα (1)<br />

y (cm)<br />

10<br />

8<br />

6<br />

4<br />

2<br />

0<br />

-2<br />

-4<br />

-6<br />

-8<br />

-10<br />

0 5 10<br />

x (cm)<br />

15 20<br />

-2<br />

0 0.5 1<br />

time t (sec)<br />

1.5 2<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Fex,Fey (grf)<br />

Ελεγκτής τροχιάς υπολογιζόμενης ροπής (στο χώρο των αρθρώσεων)<br />

(joint-space trajectory computed-torque controller)<br />

τ = M( q) ⋅ u+ h( q, q)<br />

u= qd + ⎡⎣ Bd ( qd − q) + Kd<br />

( qd −q)<br />

⎤⎦<br />

2.5<br />

2<br />

1.5<br />

1<br />

0.5<br />

0<br />

-0.5<br />

-1<br />

-1.5<br />

σφάλμα ταχύτητας<br />

x 104<br />

3<br />

σφάλμα θέσης<br />

Ρομποτικός έλεγχος συμμόρφωσης -<br />

Παράδειγμα R-R 2dof - Αποτελέσματα (2)<br />

10<br />

8<br />

6<br />

4<br />

2<br />

0<br />

-2<br />

-4<br />

-6<br />

-8<br />

-10<br />

0 5 10<br />

x (cm)<br />

15 20<br />

-6000<br />

0 0.5 1<br />

time t (sec)<br />

1.5 2<br />

Ελεγκτής ενεργούς μηχανικής εμπέδησης (στο χώρο εργασίας)<br />

(task-space active impedance controller)<br />

T<br />

* *<br />

τ<br />

= J ⋅FaFa<br />

= M ⋅ u+ h −Fe<br />

−1<br />

u= pd + Md ⎡⎣Bd ( pd − p) + Kd<br />

( pd − p) −( Fd −Fe)<br />

⎤⎦<br />

σφάλμα ταχύτητας<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Fex,Fey (grf)<br />

8000<br />

6000<br />

4000<br />

2000<br />

0<br />

-2000<br />

-4000<br />

σφάλμα θέσης<br />

σφάλμα δύναμης<br />

43<br />

44


y (cm)<br />

Ρομποτικός έλεγχος συμμόρφωσης -<br />

Παράδειγμα R-R 2dof - Αποτελέσματα (3)<br />

10<br />

8<br />

6<br />

4<br />

2<br />

0<br />

-2<br />

-4<br />

-6<br />

-8<br />

-10<br />

O<br />

y<br />

x<br />

x c<br />

O c<br />

yc<br />

0 5 10<br />

x (cm)<br />

15 20<br />

0<br />

0 0.5 1<br />

time t (sec)<br />

1.5 2<br />

Υβριδικός έλεγχος δύναμης / εμπέδησης (στο χώρο εργασίας)<br />

(task-space hybrid force/impedance robot manipulation control)<br />

τ<br />

Έστω RO-xyz, το γενικό πλαίσιο του χώρου εργασίας, και<br />

Rc-xcyczc το τοπικό πλαίσιο αναφοράς στο σημείο επαφής<br />

O<br />

R c η μήτρα στροφής του τοπικού πλαισίου αναφοράς Rc ως προς το RΟ T<br />

= ⋅<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Υβριδικός ρομποτικός έλεγχος<br />

δύναμης / τροχιάς - Παράδειγμα<br />

Υβριδικός ρομποτικός έλεγχος δύναμης / τροχιάς βασισμένος<br />

στη δομή του δυναμικού ελέγχου ενεργούς εμπέδησης<br />

J Fa<br />

F = M ⋅ u+ h −F<br />

* *<br />

a e<br />

( c) ( c) ( c) −1<br />

( c) ( c) ( c) ( c) ( c) ( c)<br />

= d + ⎡Md ⎤ Bd p + Kd<br />

p − d − e<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Fey (task-space) (grf)<br />

1200<br />

1000<br />

800<br />

600<br />

400<br />

200<br />

45<br />

O<br />

⎡⎣Rc⎤⎦ ( c)<br />

( Fe O ( c)<br />

= ⎡<br />

⎣Rc⎤ ⎦Fe<br />

)<br />

( )<br />

u= ⋅u<br />

u p ⎣ ⎦<br />

⎡<br />

⎣<br />

e e F F ⎤<br />

⎦<br />

( c) O<br />

T<br />

O<br />

T<br />

ep = ⎡⎣Rc⎤⎦ ⋅ ep = ⎡⎣Rc⎤⎦ ( pd − p)<br />

και<br />

( c) O<br />

T<br />

⎡⎣R ⎤⎦ O<br />

T<br />

⎡⎣R ⎤⎦<br />

( c)<br />

Για το Kd<br />

( c)<br />

μπορούμε να θέσουμε: Kd = S⋅Kd όπου η μήτρα Kd επιλέγεται κανονικά για έλεγχο εμπέδησης, ενώ<br />

η μήτρα S (selection matrix) είναι στο συγκεκριμένο παράδειγμα S=diag[sx ,sy ]<br />

όπου ep = c ⋅ ep = c ( pd − p)<br />

με s x (,s y ) = 0, για έλεγχο δύναμης στον άξονα x c (y c )<br />

1, για έλεγχο τροχιάς στον άξονα x c (y c )<br />

( ή γενικά s x (,s y ) στο διάστημα [0,1] )<br />

46


Ε.Μ.Π., ΣΗΜΜΥ, Ακαδημαϊκό Έτος 2010-11, 8ο Εξάμηνο<br />

Μάθημα: Ρομποτική ΙΙ. Διδάσκων: Κ.Τζαφέστας<br />

Ρομποτικός Έλεγχος<br />

Οπτικής Οδήγησης<br />

(Robot <strong>Visual</strong> <strong>Servoing</strong>)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Διατάξεις Οπτικού Συστήματος<br />

Camera Placement Configurations<br />

R 0 e R c e<br />

R e t<br />

R<br />

“eye-in-h<strong>and</strong>” (‘h<strong>and</strong>-eye’) διάταξη “fixed camera” (‘static-eye’) διάταξη<br />

0 c<br />

R c R<br />

t 0 t<br />

Κάμερα προασαρτημένη στο τελικό Κάμερα σταθερά τοποθετημένη<br />

εργαλείο δράσης του ρομπότ<br />

στο περιβάλλον εργασίας<br />

Πλαίσια Αναφοράς<br />

(0): βάση ρομπότ, (e): end-effector, (c): camera, (t): target/task (αντικείμενο/εργασία)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

47<br />

48


Αρχιτεκτονικές Ελέγχου Οπτικής Οδήγησης<br />

(c) pd +<br />

1. Οπτική οδήγηση – Έλεγχος θέσης/τροχιάς ρομπότ<br />

a. Ιεραρχικός έλεγχος (look-<strong>and</strong>-move) (οπτικό σύστημα<br />

παρέχει σήματα αναφοράς σε ρομποτικό ελεγκτή αρθρώσεων)<br />

b. Απ’ευθείας έλεγχος αρθρώσεων (direct visual servo)<br />

2. Πλαίσιο αναφοράς για σφάλμα ελέγχου<br />

a. Έλεγχος βασισμένος στη θέση (position-based):<br />

σφάλμα ορισμένο σε κάποιο Καρτεσιανό πλαίσιο αναφοράς<br />

b. Έλεγχος βασισμένος στην εικόνα (image-based):<br />

σφάλμα ορισμένο στο χώρο των οπτικών χαρακτηριστικών<br />

(feature space)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Αρχιτεκτονικές Ελέγχου (συνέχεια) (1/4)<br />

-<br />

(c)<br />

pˆ<br />

Καρτεσιανός<br />

Νόμος Ελέγχου<br />

Cartesian-space<br />

control law<br />

q d<br />

Εκτίμηση Θέσης<br />

(pose estimation)<br />

Ελεγκτές αρθρώσεων<br />

(joint controllers)<br />

Ενισχυτές<br />

(power amplifiers)<br />

Ανάδραση q – αισθητήρες αρθρώσεων<br />

f<br />

Εξαγωγή Οπτικών<br />

Χαρακτηριστικών<br />

(feature extraction)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Εικόνα (video)<br />

“Position-based” / “look-<strong>and</strong>-move”<br />

Aρχιτεκτονική ‘Βασισμένου στη Θέση’ / ‘Ιεραρχικού’ Ελέγχου<br />

τ<br />

49<br />

50


f d<br />

Αρχιτεκτονικές Ελέγχου (συνέχεια) (2/4)<br />

+<br />

-<br />

(c) pd +<br />

Νόμος Ελέγχου<br />

Οπτικών Χαρακτηριστικών<br />

Feature-space<br />

control law<br />

q d<br />

Ελεγκτές αρθρώσεων<br />

(joint controllers)<br />

Ενισχυτές<br />

(power amplifiers)<br />

Ανάδραση q – αισθητήρες αρθρώσεων<br />

f<br />

Εξαγωγή Οπτικών<br />

Χαρακτηριστικών<br />

(feature extraction)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Εικόνα (video)<br />

“Image-based” / “look-<strong>and</strong>-move”<br />

Aρχιτεκτονική ‘Βασισμένου στην Εικόνα’ / ‘Ιεραρχικού’ Ελέγχου<br />

Αρχιτεκτονικές Ελέγχου (συνέχεια) (3/4)<br />

-<br />

(c)<br />

pˆ<br />

Καρτεσιανός<br />

Νόμος Ελέγχου<br />

Cartesian-space<br />

control law<br />

τ<br />

Εκτίμηση Θέσης<br />

(pose estimation)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

τ<br />

Ελεγκτές αρθρώσεων<br />

(joint controllers)<br />

f<br />

Ενισχυτές<br />

(power amplifiers)<br />

Εξαγωγή Οπτικών<br />

Χαρακτηριστικών<br />

(feature extraction)<br />

Εικόνα (video)<br />

“Position-based” / “direct” visual servo<br />

Aρχιτεκτονική ‘Βασισμένου στη Θέση’ / ‘Αμέσου’ Ελέγχου<br />

51<br />

52


f d<br />

Αρχιτεκτονικές Ελέγχου (συνέχεια) (4/4)<br />

+<br />

-<br />

Νόμος Ελέγχου<br />

Οπτικών Χαρακτηριστικών<br />

Feature-space<br />

control law<br />

τ<br />

Ελεγκτές αρθρώσεων<br />

(joint controllers)<br />

f<br />

Ενισχυτές<br />

(power amplifiers)<br />

Εξαγωγή Οπτικών<br />

Χαρακτηριστικών<br />

(feature extraction)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Εικόνα (video)<br />

“Image-based” / “direct” visual servo<br />

Aρχιτεκτονική ‘Βασισμένου στην Εικόνα’ / ‘Αμέσου’ Ελέγχου<br />

Έλεγχος με βάση τη θέση (1/2)<br />

Position-Based <strong>Visual</strong> Servo Control<br />

Οπτικά χαρακτηριστικά εξάγονται από την εικόνα και χρησιμοποιούνται<br />

για την εκτίμηση της «θέσης» του «στόχου» (target pose) ως προς την<br />

κάμερα ...<br />

Συνάρτηση Κινηματικού Σφάλματος : E(p e)=0<br />

where p e: robot (end-effector) pose<br />

E(.): T m , where T : robot workspace (robot poses)<br />

Γενικά: T ⊆ SE3 = 3 ×SO3 <strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

53<br />

54


Έλεγχος με βάση τη θέση (2/2)<br />

Position-Based <strong>Visual</strong> Servo Control (cont’d)<br />

Σημείο-προς-Σημείο (point-to-point positioning):<br />

Τοποθέτηση σημείου p του ρομποτικού εργαλείου, με<br />

end-effector coordinates p (e) , σε επιθυμητή θέση pd 0 ( e)<br />

Epp = Pd−Ae⋅P Έστω: T =<br />

0 ( ) 0 ( )<br />

Static-eye: ˆ ˆ c ˆ e<br />

u3= K ⋅⎡⎣Ac⋅Pd −Ae⋅P ⎤⎦<br />

3 u3=K·Epp •<br />

Συνάρτηση κινηματικού<br />

σφάλματος<br />

•<br />

H<strong>and</strong>-eye:<br />

ˆ e<br />

A c<br />

( )<br />

ˆ c<br />

pd<br />

βαθμονόμηση κάμερας<br />

κινηματική ρομπότ<br />

( e) ˆ e ˆ( c) ( e) ˆ e ˆ( c) ˆ(<br />

c)<br />

u3= K⋅⎡⎣Ac⋅Pd − P ⎤⎦= K⋅Ac⋅⎡⎣Pd<br />

−P<br />

⎤⎦<br />

σφάλμα ανεξάρτητο κινηματικής ρομπότ<br />

: βαθμονόμηση κάμερας (τοποθέτηση ως προς ρομποτικό εργαλείο)<br />

: παρατηρήσεις στόχου μέσω της κάμερας (camera observations)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Σήμα Καρτεσιανού<br />

ελέγχου (επιθυμητή μεταβολή<br />

θέσης ρομποτικού εργαλείου)<br />

Έλεγχος με βάση την εικόνα (1/8)<br />

Image-Based <strong>Visual</strong> Servo Control<br />

Camera Projection Models<br />

Y<br />

Μοντέλο Προοπτικής Προβολής<br />

X<br />

viewpoint<br />

f=(u,v)<br />

λ<br />

P=(x,y,z)<br />

Z<br />

αντικείμενο<br />

(Perspective Projection)<br />

⎡u⎤ x<br />

π ( xyz , , )<br />

λ ⎡ ⎤<br />

= ⎢ ⎥= v z ⎢ ⎥<br />

⎣ ⎦ ⎣y⎦ λ: εστιακή απόσταση<br />

(focal length)<br />

image plane<br />

Μοντέλο Ορθογραφικής Προβολής<br />

(Orthographic Projection)<br />

⎡⎤ u ⎡⎤ x<br />

oxyz ( , , ) = ⎢⎥= σ ⎢⎥<br />

⎣⎦ v ⎣⎦ y (σ: fixed scale)<br />

(ειδική περίπτωση)<br />

Μοντέλο Αφινικής Προβολής<br />

(Affine Projection)<br />

⎡u⎤ u ( c)<br />

⎡ 0⎤<br />

⎢ ⎥= A⋅ P + ⎢ ⎥ (A: 2x3)<br />

⎣v⎦ ⎣v ⎦<br />

0<br />

55<br />

56


Έλεγχος με βάση την εικόνα (2/8)<br />

Image-Based <strong>Visual</strong> Servo Control (cont’d)<br />

Image Jacobian («Ιακωβιανή Μήτρα Εικόνας»)<br />

f = J ( p) ⋅p<br />

J<br />

c<br />

c<br />

f: feature vector (k×1), π.χ.: f=[u 1 ,v 1 , …, u n ,v n ] T<br />

J: (k×m) Ιακωβιανή Εικόνας<br />

⎡∂f1 ∂p1 ∂f1 ∂pm⎤<br />

⎡∂f ⎢ ⎥<br />

= ⎤=<br />

⎢<br />

<br />

⎢⎣∂p⎥⎦ ⎥<br />

⎢<br />

⎣∂f∂p ∂f ∂p<br />

⎥<br />

⎦<br />

k 1<br />

k m<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

( n=(k/2) σημεία )<br />

Έλεγχος με βάση την εικόνα (3/8)<br />

Image-Based <strong>Visual</strong> Servo Control / «Eye-in-H<strong>and</strong>»<br />

Παράδειγμα εξαγωγής Ιακωβιανής Μήτρας Εικόνας<br />

R c<br />

P<br />

P<br />

(c)<br />

vz<br />

x = zωy − ωz<br />

+ Vx<br />

λ<br />

uz<br />

y= ωz − zωx + Vy<br />

λ<br />

z<br />

z= ( vω − uω ) + V<br />

λ<br />

x y z<br />

[ x y z]<br />

[ x y z]<br />

• Έστω:<br />

( c)<br />

P =<br />

⇒ P = = × P + V<br />

∧<br />

Τ<br />

( c) Τ ( c) ( c) ( c)<br />

Ωe<br />

e<br />

⎧ λ ⎫ ⎧ λ λ ⎫<br />

⎪<br />

u = x⋅ u x x z 2<br />

z⎪ ⎪<br />

= ⋅ − ⋅ ⋅<br />

⎪ ⎪ ⎪ z z ⎪<br />

⎨ ⎬⇒⎨ ⎬<br />

⎪ λ λ λ<br />

v = y⋅ ⎪ ⎪v= ⋅y− ⋅y⋅z⎪ 2<br />

⎩⎪z⎭⎪ ⎩⎪ z z ⎭⎪<br />

57<br />

58


Έλεγχος με βάση την εικόνα (4/8)<br />

Παράδειγμα εξαγωγής Ιακωβιανής Μήτρας Εικόνας (συνέχεια)<br />

2 2<br />

λ u uv λ + u<br />

u= Vx− Vz − ωx + ωy −vωz<br />

z z λ λ<br />

2 2<br />

λ u −λ−v uv<br />

v= Vy − Vz + ωx + ωy + uωz<br />

z z λ λ<br />

⎡Vx ⎤<br />

⎢ 2 2 V<br />

⎥<br />

⎡λ u uv λ + u ⎤ y<br />

0 − − −v<br />

⎢ ⎥<br />

⎡u⎤ ⎢<br />

z z λ λ<br />

⎥⎢Vz⎥ f<br />

= ⎢ 2 2<br />

v<br />

⎥ = ⎢ ⎥⎢⎥<br />

⎣⎦ ⎢ λ u −λ −v<br />

uv ⎥ ωx<br />

0<br />

u ⎢ ⎥<br />

⎢<br />

−<br />

⎣ z z λ λ ⎥⎦⎢ω⎥ y<br />

⎢ ⎥<br />

⎣ωz ⎦<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

Έλεγχος με βάση την εικόνα (5/8)<br />

Για κίνηση σε επίπεδο:<br />

και για περισσότερα (n) χαρακτηριστικά<br />

(σημεία) στην εικόνα, παίρνουμε για τη<br />

χρονική μεταβολή του διανύσματος<br />

χαρακτηριστικών :<br />

⎡λ⎤ 0 −v<br />

⎡Vx ⎤<br />

⎡u⎤ ⎢Z⎥⎢ V<br />

⎥<br />

⎢ y<br />

v<br />

⎥= ⎢ ⎥<br />

⎣⎦ λ ⎢ ⎥<br />

⎢0u⎥ ⎢<br />

⎢ωz ⎥<br />

⎣ Z ⎥⎦⎣⎦<br />

⎡ λ ⎤<br />

0 −v<br />

⎢ 1<br />

Z ⎥<br />

1<br />

⎢ ⎥<br />

⎡u1⎤ ⎢ λ ⎥<br />

0 u1<br />

v<br />

1<br />

1<br />

⎢ ⎥ ⎢ Z ⎥ Vx<br />

⎢ ⎥<br />

⎡ ⎤<br />

⎢ ⎥<br />

f<br />

= ⎢ ⎥ =<br />

⎢<br />

V<br />

⎥<br />

⎢ ⎥ y<br />

⎢ ⎥<br />

⎢ ⎥<br />

u<br />

⎢<br />

n λ ⎥<br />

⎢<br />

<br />

⎥<br />

⎢ωz ⎥<br />

⎢ 0 −v<br />

⎥⎣⎦<br />

n<br />

⎢⎣v⎥ Z<br />

n ⎦ ⎢ n ⎥<br />

⎢ λ ⎥<br />

⎢ 0 u ⎥ n<br />

⎢⎣ Zn<br />

⎥⎦<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

J<br />

c<br />

59<br />

60


Έλεγχος με βάση την εικόνα (6/8)<br />

Image-Based <strong>Visual</strong> Servo Control (cont’d)<br />

Έλεγχος Οπτικής Οδήγησης Επίλυση Συστήματος:<br />

(Ιακωβιανή κάμερας J: k × m)<br />

ΣχετικήΚίνησηΣτόχου– Κάμερας <br />

Επιθυμητή Κίνηση της Κάμερας (ρομποτικού εργαλείου)<br />

• Εαν<br />

−1<br />

= : =J (c)<br />

p f<br />

k m<br />

Εαν τώρα: k ≠ m, rank( J)<br />

= min( k, m)<br />

+ +<br />

k < m:<br />

= J + ( I−J J)<br />

⋅<br />

(c)<br />

• Εαν p f c<br />

όπου<br />

+<br />

• Εαν k > m:<br />

=J όπου J = ( J J) J<br />

(c)<br />

p f<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

= J ⋅ (c)<br />

f p<br />

(c)<br />

p<br />

J = J ( JJ )<br />

+ T T −1<br />

+ T −1<br />

T<br />

Έλεγχος με βάση την εικόνα (7/8)<br />

Καρτεσιανός Έλεγχος Επιλυμένης Ταχύτητας (resolved rate)<br />

u =−K ⋅ p<br />

Έστω:<br />

(c) (c)<br />

(1) Σήμα καρτεσιανού ελέγχου ρομπότ<br />

(επιθυμητή κίνηση ρομποτικού εργαλείου)<br />

ε =Δ f = ( fd−f ) (2)<br />

όπου fd<br />

το επιθυμητό διάνυσμα χαρακτηριστικού<br />

Στόχος του ελεγκτή ασυμπτωτικήμείωσησφάλματοςε:<br />

Από (2) ⇒<br />

(3)<br />

ε =−f ⇔ f = K ⋅ε<br />

(4)<br />

+<br />

Αλλά, ως γνωστόν, έχουμε: = Jc (c)<br />

p f ⇒ (4)<br />

(c)<br />

K +<br />

(c)<br />

u = − ⋅J⋅ε Νόμος Ελέγχου: c<br />

K +<br />

p = ⋅J⋅ε c<br />

ε= −K⋅ε 61<br />

(3)<br />

62


Έλεγχος με βάση την εικόνα (8/8)<br />

Image-Based <strong>Visual</strong> Servo Control (cont’d)<br />

Πρόβλεψη κίνησης – Παρακολούθηση χαρακτηριστικών στην εικόνα<br />

(«παράθυρο» πρόβλεψης για αναζήτηση/παρακολούθηση χαρακτηριστικών)<br />

ft+ h= ft−h⋅Jc( p) ⋅u<br />

(h=Δt)<br />

Κατάστρωση εξισώσεων στο χώρο κατάστασης<br />

Προβλήματα «ιχνηλάτησης» στόχου –<br />

βέλτιστη εκτίμησης (π.χ. Φίλτρο Kalman, ... )<br />

<strong>Εθνικό</strong> Μετσόβιο Πολυτεχνείο, Σχολή ΗΜ&ΜΥ. Μάθημα: Ρομποτική ΙΙ (K.Τζαφέστας)<br />

63

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!