modelarea roboțilorrovislab.com/courses/br/curs_05_modelarea robotilor.pdf · unui robot i se pot...

18
B azele R oboticii Curs 0 5 Modelarea roboților Gigel Măceșanu Universitatea Transilvania din Braşov Laboratorul de Vedere Artificială Robustă şi Control

Upload: others

Post on 07-Feb-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

1

Bazele Roboticii

Curs 05

Modelarea roboților

Gigel Măceșanu

Universitatea Transilvania din Braşov

Laboratorul de Vedere Artificială Robustă şi Control

Page 2: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

2

Cuprins

Introducere

Reprezentarea unui punct în sisteme de coordonate

Transformări de coordonate

Page 3: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

3

Introducere

Modelarea sistemului mecanic al roboților reprezintă etapa de bază pentru

elaborarea comenzilor axelor, în conformitate cu obiectivul de mișcare

Modele de comandă:

Model geometric: permite calculul în regim static al pozițiilor structurii

mecanice, considerată ca fiind formată din corpuri elementare rigide

de formă regulată, cu dimensiuni și mase cunoscute

Modelul cinematic: permite calculul în regim static al vitezelor

structurii mecanice considerată ca fiind formată din corpuri

elementare rigide

Modelul dinamic: Permite calculul în regim dinamic al cuplurilor și

forțelor active și rezistente având în vedere forțele de inerție,

gravitaționale, exterioare și admițând o serie de ipoteze

simplificatoare: inflexibilitatea segmentelor și articulațiilor mecanice,

se neglijează efectul forțelor Coriolis

Page 4: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

4

Reprezentarea unui punct în sisteme de coordonate

Un punct într-un sistem cartezian 𝑶𝒋𝑿𝒋𝒀𝒋𝒁𝒋, de versori 𝒊, 𝒋, 𝒌 este

determinat de trei coordonate carteziene: 𝑷(𝒙, 𝒚, 𝒛)

Vectorul 𝑶𝒋𝑷 ce determină poziția punctului 𝑷 se determină astfel:

𝑶𝒋𝑷 = 𝒙 ⋅ 𝒊 + 𝒚 ⋅ 𝒋 + 𝒛 ⋅ 𝒌

Utilizat pentru modelarea roboților cu structură mecanică carteziană

Pentru modelarea roboților cu structură

mecanică cilindrică, se utilizează sistemul de

referință în coordonate cilindrice: 𝑷(𝒓, 𝜽, 𝒛)

Page 5: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

5

Reprezentarea unui punct în sisteme de coordonate

Conversia între cele două sisteme se poate face utilizându-se relațiile:

𝒙 = 𝒓 cos𝜽𝒚 = 𝒓 sin 𝜽𝒛 = 𝒛

,

𝒓 = 𝒙𝟐 + 𝒚𝟐

𝜽 = 𝐚𝐫𝐜𝐭𝐠𝐱

𝐲

𝒛 = 𝒛

Reprezentarea unui punct într-un sistem de

coordonate sferice 𝑷(𝝆, 𝜽, 𝝓) se face în

funcție de raza de poziție 𝝆 și unghiurile de

azimut 𝜽 și elevație 𝝓

Page 6: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

6

Reprezentarea unui punct în sisteme de coordonate

Conversia între sistemul sferic și cel cartezian se poate face utilizându-se:

𝒙 = 𝝆 sin𝝓 cos𝜽𝒚 = 𝝆sin𝝓 sin𝜽𝒛 = 𝝆 cos𝝓

,

Unui robot i se pot atașa următoarele sisteme de referință:

sistemul de referință absolut WCS (World Coordinate System), este

sistemul de referință legat de baza robotului, într-un punct stabilit de

constructor și în raport cu care se determină toate pozițiile

sistemului mecanic;

sistemul de referință al sculei TCS (Tool Coordinate System), este

sistemul de referință atașat în punctul activ al dispozitivului de

prehensiune al sculei

sistemul de referință al senzorului SCS (Sensor Coordinate System),

este sistemul de referință legat uzual de un senzor de viziune care

are în câmpul său vizvizual, sau de măsură, efectorul ale cărui poziții

le determină

Page 7: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

7

Reprezentarea unui punct în sisteme de coordonate

Unui robot i se pot atașa următoarele sisteme de referință:

sistemul de referință al programatorului PCS (Program Coordinate

System), este un sistem de referință definit de programator în raport

cu WCS, pentru a simplifica operațiile de calcul ale traiectoriilor de

lucru majoritare

Page 8: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

8

Transformări de coordonate

Reprezentarea unui corp solid în sistemele de coordonate

Pentru a caracteriza deplasarea spațială a unui solid, acestuia i se

asociază un sistem de referință orientat după o direcție și o origine

În raport cu WCS (legat de baza robotului 𝑶𝟎𝑿𝟎𝒀𝟎𝒁𝟎), poziția unui

corp solid în spațiul cartezian este determinată dacă se cunoaște:

• Poziția originii 𝑶𝒊 a sistemului de coordonate asociat solidului

• Orientarea axelor sistemului de coordonate 𝑶𝒊𝑿𝒊𝒀𝒊𝒁𝒊 în raport cu

coordonatele absolute WCS

Page 9: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

9

Transformări de coordonate

Reprezentarea unui corp solid în sistemele de coordonate

𝑶𝒊𝑶𝒋 = 𝒂𝟏𝟏𝒊𝒊 + 𝒂𝟏𝟐𝒋𝒊 + 𝒂𝟏𝟑𝒌𝒊, unde 𝒊𝒊, 𝒋𝒊, 𝒌𝒊 sunt vectorii unitari ai

sistemului de referință 𝑶𝒊𝑿𝒊𝒀𝒊𝒁𝒊

Page 10: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

10

Transformări de coordonate

Metoda cosinusurilor directoare

Transformarea vectorilor unitari din sistemul de referință inițial

𝑶𝒊𝑿𝒊𝒀𝒊𝒁𝒊 în noul sistem de referință 𝑶𝒋𝑿𝒋𝒀𝒋𝒁𝒋 se face cu matricea:

𝒊𝒋

𝒋𝒋

𝒌𝒋

=

𝒓𝟏𝟏 𝒓𝟐𝟏 𝒓𝟑𝟏𝒓𝟏𝟐 𝒓𝟐𝟐 𝒓𝟑𝟐𝒓𝟏𝟑 𝒓𝟐𝟑 𝒓𝟑𝟑

𝒊𝒊

𝒋𝒊

𝒌𝒊

, unde

𝒓𝟏𝟏 = cos𝜶𝟏 𝒓𝟐𝟏 = cos𝜶𝟐 𝒓𝟑𝟏 = cos𝜶𝟑𝒓𝟏𝟐 = cos𝜷𝟏 𝒓𝟐𝟐 = cos𝜷𝟐 𝒓𝟑𝟐 = cos𝜷𝟑𝒓𝟏𝟑 = cos𝜸𝟏 𝒓𝟐𝟑 = cos𝜸𝟐 𝒓𝟑𝟑 = cos𝜸𝟑

Sunt cosinusurile directoare ale unghiurilor formate de fiecare axă a

noului sistem în raport cu axele vechiului sistem de referință

Matricea cosinusurilor directoare transpusă se numește matricea de

rotație 𝑹𝒊𝒋, și definește orientarea reperului în raport cu vechea

poziție

Page 11: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

11

Transformări de coordonate

Metoda cosinusurilor directoare

𝑹𝒊𝒋 =

𝒓𝟏𝟏 𝒓𝟏𝟐 𝒓𝟏𝟑𝒓𝟐𝟏 𝒓𝟐𝟐 𝒓𝟐𝟑𝒓𝟑𝟏 𝒓𝟑𝟐 𝒓𝟑𝟑

, cu proprietatea: 𝑹𝒊𝒋𝑻 = 𝑹𝒊𝒋

−𝟏 = 𝑹𝒊𝒋

Matricea de transformare, cu translație și rotație este de forma:

𝑸𝒊𝒋 =

𝒓𝟏𝟏 𝒓𝟏𝟐 𝒓𝟏𝟑 𝒕𝟏𝟏𝒓𝟐𝟏 𝒓𝟐𝟐 𝒓𝟐𝟑 𝒕𝟐𝟏𝒓𝟑𝟏 𝒓𝟑𝟐 𝒓𝟑𝟑 𝒕𝟑𝟏𝟎 𝟎 𝟎 𝟏

, unde 𝑻𝒊𝒋 =

𝒕𝟏𝟏𝒕𝟐𝟏𝒕𝟐𝟐

este matricea de translație

Exemplu: translație după axa X cu valoarea d

𝑸 =

𝟏 𝟎 𝟎 𝒅𝟎 𝟏 𝟎 𝟎𝟎 𝟎 𝟏 𝟎𝟎 𝟎 𝟎 𝟏

Page 12: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

12

Transformări de coordonate

Metoda cosinusurilor directoare

Exemplu: rotație după axa X cu unghiul 𝜽

𝑸 =

𝟏 𝟎 𝟎 𝟎𝟎 cos𝜽 − sin𝜽 𝟎𝟎 sin𝜽 cos𝜽 𝟎𝟎 𝟎 𝟎 𝟏

Exemplu: Rotație și translație după aceeași axă:

𝑸 =

𝟏 𝟎 𝟎 𝒅𝟎 cos𝜽 − sin𝜽 𝟎𝟎 sin 𝜽 cos𝜽 𝟎𝟎 𝟎 𝟎 𝟏

Page 13: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

13

Transformări de coordonate

Metoda cosinusurilor directoare

Exemplu: rotație și translație după axe diferite:

Page 14: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

14

Transformări de coordonate

Metoda unghiurilor Euler

Poziția axelor noului reper este definită în raport cu vechiul reper în

funcție de trei unghiuri rezultate prin trei rotații succesive, astfel:

𝑶𝒊𝑿𝒊𝒀𝒊𝒁𝒊 𝒓𝒐𝒕𝒂ț𝒊𝒆 𝒁𝒊,𝚿𝑶𝒊+𝟏𝑿𝒊+𝟏𝒀𝒊+𝟏𝒁𝒊+𝟏 𝒓𝒐𝒕𝒂ț𝒊𝒆 𝑿𝒊+𝟏,𝜽

[𝑶𝒋−𝟏𝑿𝒋−𝟏𝒀𝒋−𝟏𝒁𝒋−𝟏]

𝒓𝒐𝒕𝒂ț𝒊𝒆(𝒀𝒋−𝟏,𝝓)[𝑶𝒋𝑿𝒋𝒀𝒋𝒁𝒋]

Page 15: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

15

Transformări de coordonate

Metoda unghiurilor Euler

Matricea de rotație se scrie astfel:

𝑹𝒊𝒋 =cos𝝍 −sin𝝍 𝟎sin𝝍 cos𝝍 𝟎𝟎 𝟎 𝟏

⋅𝟏 𝟎 𝟎𝟎 cos𝜽 − sin𝜽𝟎 sin 𝜽 cos𝜽

⋅cos𝝓 − sin𝝓 𝟎sin𝝓 𝒄𝒐𝒔𝝓 𝟎𝟎 𝟎 𝟏

Pentru cazul unei deplasări în spațiu a sistemului 𝑶𝒋𝑿𝒋𝒀𝒋𝒁𝒋 atașat unui

corp solid, se determină matricea de transformare omogenă (Euler)

după cum urmează:

𝑻𝒊𝒋 =

cos𝝍 cos𝝓 − sin𝝍 cos𝜽 sin𝝓 − cos𝝍 sin𝝓 − sin𝝍 cos𝜽 sin𝝓 sin𝝍 sin 𝜽 𝒙𝒊sin𝝍 cos𝝓 + cos𝝍 cos𝜽 sin𝝓 − sin𝝍 sin 𝜽 + cos𝝍 cos𝜽 cos𝝓 − cos𝝍 sin 𝜽 𝒚𝒊

sin 𝜽 sin𝝓 sin 𝜽 cos𝝓 cos𝜽 𝒛𝒊𝟎 𝟎 𝟎 𝟏

Page 16: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

16

Transformări de coordonate

Metoda Denavit–Hartenberg

Poziția axelor noului reper este definită în raport cu vechiul reper în

funcție patru parametrii de poziție 𝜽𝒋, 𝒂𝒋, 𝒅𝒋, 𝜶𝒋, astfel:

𝑶𝒋−𝟏𝑿𝒋−𝟏𝒀𝒋−𝟏𝒁𝒋−𝟏𝒓𝒐𝒕 𝒁𝒋−𝟏,𝜽𝒋 +𝒕𝒓𝒂𝒏𝒔 𝑿𝒋−𝟏,𝒂𝒋 +𝒕𝒓𝒂𝒏𝒔 𝒁𝒋−𝟏,𝒅𝒋 +𝒓𝒐𝒕(𝑿𝒋−𝟏,𝜶𝒋)

𝑶𝒋𝑿𝒋𝒀𝒋𝒁𝒋

Page 17: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

17

Transformări de coordonate

Metoda Denavit–Hartenberg

Matricea de transformare omogenă Denavit-Hartenberg

corespunzătoare cuplei de ordin j este de forma:

𝑫𝑯𝒋 =

cos𝜽𝒋 −sin 𝜽𝒋 𝟎 𝟎

sin 𝜽𝒋 cos𝜽𝒋 𝟎 𝟎

𝟎 𝟎 𝟏 𝟎𝟎 𝟎 𝟎 𝟏

𝟏 𝟎 𝟎 𝒂𝒋𝟎 𝟏 𝟎 𝟎𝟎 𝟎 𝟏 𝒅𝒋𝟎 𝟎 𝟎 𝟏

𝟏 𝟎 𝟎 𝟎𝟎 cos𝜶𝒋 −sin𝜶𝒋 𝟎

𝟎 sin𝜶𝒋 cos𝜶𝒋 𝟎

𝟎 𝟎 𝟎 𝟏

Rezultând o matrice de transformare de forma:

𝑻𝒊𝒋 =

cos𝜽𝒋 −sin 𝜽𝒋 cos𝜶𝒋 sin 𝜽𝒋 sin 𝜶𝒋 𝒂𝒋 cos 𝜽𝒋sin 𝜽𝒋 cos 𝜽𝒋 cos𝜶𝒋 −cos𝜽𝒋 sin 𝜶𝒋 𝒂𝒋 sin 𝜽𝒋𝟎 sin𝜶𝒋 cos𝜶𝒋 𝒅𝒋𝟎 𝟎 𝟎 𝟏

Page 18: Modelarea roboțilorrovislab.com/courses/br/Curs_05_Modelarea robotilor.pdf · Unui robot i se pot atașa următoarele sisteme de referință: sistemul de referință al programatorului

18

Contact:

Email: [email protected]

Web: rovis.unitbv.ro