20
Endüstri Robotları Uygulama 2 Prof. Dr. Asım KURTOĞLU Arş. Gör. Paşa YAMAN 22.10.2019 1/12

Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Endüstri RobotlarıUygulama 2

Prof. Dr. Asım KURTOĞLU

Arş. Gör. Paşa YAMAN

22.10.2019

1/12

Page 2: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Öteleme İşlemi

Bir öteleme vektörü kullanarak bir nokta belli birkoordinat sistemine göre tanımlanabilir. 𝑃2noktasını {A} koordinat sistemine göre tanımlamak

için 𝐴𝑃1 vektörü, 𝐴𝑄 vektörü kadar ötelenir. Buişlem matematiksel olarak aşağıdaki gibi ifadeedilebilir.

Denklem 2.34’teki 𝐴𝑃2 vektörünü,

homojen dönüşüm matrisi 𝐷𝑄(𝑞)

cinsinden yazarak aşağıdaki gibi eldeedebiliriz:

2/12

𝐴𝑃2 =𝐴𝑃1 +

𝐴𝑄 (2.34)𝐴𝑃2 = 𝐷𝑄 𝑞 𝐴𝑃1 =

1000

100

010

001

z

y

x

q

q

q

Page 3: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Dönme İşlemi (2 boyutlu)

Bir koordinat sisteminin herhangi bireksen etrafında döndürülmesi iki veya üçboyutlu uzayda ifade edilir. Konunun dahaiyi anlaşılması için öncelikle iki boyutluuzayda inceleyelim.

3/12

𝑥 = 𝑃𝑐𝑜𝑠𝛼𝑦 = 𝑃𝑠𝑖𝑛𝛼

Θ kadar döndürülürse;

𝑥′ = 𝑃𝑐𝑜𝑠(𝜃 + 𝛼)

𝑦′ = 𝑃𝑠𝑖𝑛(𝜃 + 𝛼)

cos 𝐴 + 𝐵 = 𝑐𝑜𝑠𝐴𝑐𝑜𝑠𝐵 − 𝑠𝑖𝑛𝐴𝑠𝑖𝑛𝐵

sin 𝐴 + 𝐵 = 𝑠𝑖𝑛𝐴𝑐𝑜𝑠𝐵 + 𝑐𝑜𝑠𝐴𝑠𝑖𝑛𝐵

𝑥′ = 𝑃(𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝛼 − 𝑠𝑖𝑛𝜃𝑠𝑖𝑛𝛼)

𝑦′ = 𝑃(𝑠𝑖𝑛𝜃𝑐𝑜𝑠𝛼 + 𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝛼)

𝑥′ = 𝑃𝑐𝑜𝑠𝜃𝑐𝑜𝑠𝛼 − 𝑃𝑠𝑖𝑛𝜃𝑠𝑖𝑛𝛼

𝑦′ = 𝑃𝑠𝑖𝑛𝜃𝑐𝑜𝑠𝛼 + 𝑃𝑐𝑜𝑠𝜃𝑠𝑖𝑛𝛼)

Daha önce belirtilen x=Pcosα ve y=Psinαifadelerini denklemde yerine koyarsak;

𝑥′ = 𝑥𝑐𝑜𝑠𝜃 − 𝑦𝑠𝑖𝑛𝜃

𝑦′ = 𝑥𝑠𝑖𝑛𝜃 + 𝑦𝑐𝑜𝑠𝜃

𝑅 𝜃 =𝑐𝑜𝑠𝜃 −𝑠𝑖𝑛𝜃𝑠𝑖𝑛𝜃 𝑐𝑜𝑠𝜃

İki boyutlu uzaydagerçekleştirilen bu dönmeişlemi 2x2’lik bir matris ileaşağıdaki gibi ifade edilebilir.

Page 4: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Soru 1

4/12

Şekilde X ekseni ile 30°’lik açı yapan ve uzunluğu 10 birim olan P1

vektörü Y eksenine doğru 30° döndürülüyor. Buna göre P1

vektörünün yeni durumdaki konumunu bulunuz.

Page 5: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Dönme İşlemi (3 boyutlu)

3x3 boyutlu R dönme matrisini kullanarak𝐴𝑃1 vektörü, yeni bir vektör olan 𝐴𝑃2 olarakdeğiştirilebilir. Bu işlem matematiksel olarakaşağıdaki gibi gösterilebilir.

5/12

𝐴𝑃2 = 𝑅𝐾(𝜃)𝐴𝑃1 (2.38)

Dönme operatörü olan RK(θ), K ekseninde θkadar dönme işlemi gerçekleştirir.

𝑅𝐾 𝜃 =

1000

0

0

0

RA

B(2.39)

Dönme matrisi, konum vektörüsıfır olan 4x4 boyutlu birhomojen dönüşüm matrisiylegösterilebileceği gibi 3x3boyutlu bir matrisle degösterilebilir.

Page 6: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Soru 2

6/12

Şekilde 5 birim uzunluğunda olan 𝐴𝑃1 vektörügörüldüğü gibi Z eksenine yerleştirilen bir K vektörüyle

45° döndürülerek 𝐴𝑃2 vektörü elde ediliyor. 𝐴𝑃2vektörünün konumunu bulunuz.

Page 7: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

Dönüşüm Matrislerinin İleri Yönlü Çarpılması

7/12

Şekilde görülen iki koordinat sisteminden {A} koordinat sistemine göre tanımlanan {B} koordinat sisteminin dönüşüm matrisi 𝐵

𝐴𝑇aşağıdaki gibi tanımlanır.

1000

333231

232221

131211

z

y

x

A

Bprrr

prrr

prrr

T

Dönüşüm matrisinin ileri yönlü çarpma etkisini anlamak için 𝐵

𝐴𝑇 matrisini başka bir dönüşüm matrisi RY(θ) ile çarpalım.

1000

00

0010

00

1000

)(.333231

232221

131211

cs

sc

prrr

prrr

prrr

RTz

y

x

Y

A

B

1000

3331323331

2321222321

1311121311

z

y

x

pcrsrrsrcr

pcrsrrsrcr

pcrsrrsrcr

(2.44)

• Denklem 2.44’teki Y eksenine ait birim vektörçarpmadan önce mevcut 𝐵

𝐴𝑇 matrisindeki Yeksenine ait birim vektörle aynı çıkmıştır.

• Aynı durum konum vektörü için de geçerlidir.

Page 8: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

8/12

4x4’lük Matrislerin Çarpılması

1000

00

0010

00

1000

333231

232221

131211

cs

sc

prrr

prrr

prrr

z

y

x

Page 9: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

9

Dönüşüm Matrislerinin Önden Çarpılması

10001000

00

0010

00

).(333231

232221

131211

z

y

x

A

BYprrr

prrr

prrr

cs

sc

TR

1000

331332123111

232221

331332123111

cpspcrsrcrsrcrsr

prrr

spcpsrcrsrcrsrcr

zx

y

zx

Bir dönüşüm matrisini başka bir dönüşüm matrisiyle öndençarpmak, öteleme/dönme işleminin sabit referanskoordinat sistemine göre gerçekleştirildiği anlamına gelir.

Page 10: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

10

Dönüşüm Matrisinin Özellikleri

Dönüşüm matrisi, dönme matrisi vekonum vektörü olmak üzere iki önemlinitelikten oluşmaktadır.

Şekilde de görüldüğü gibi, uç işlevcisi birhedefe yöneldiği zaman, bu yönelim uçişlevcisinin normal vektörü n=[nx ny nz]

T,kayma vektörü s=[sx sy sz]

T ve yaklaşımvektörü a=[ax ay az]

T olmak üzere üçvektörle ifade edilir.

𝐵𝐴𝑇 = 𝐵

𝐴𝑅 𝐴𝑃𝐵𝑂𝑅𝐺000 1

10001000

333231

232221

131211

zzzz

yyyy

xxxx

z

y

x

pasn

pasn

pasn

prrr

prrr

prrr

Page 11: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

11

Öteleme Dönüşmesi

Bir vektörün uzayda herhangi bir miktarötelemesini bulmak için 3x3 boyutundabir matris yetmez.

[x1 y1 z1]T gibi bir vektör aşağıdakidönüşmeler ile [a b c]T kadar kaydırılabilir.

x2=x1+a y2=y1+b z2=z1+c

Uzayda vektörlerin homojen koordinatlarolarak gösterilmeleri [a b c]T gibi hervektöre x,y,z,w’nin x=x/w; y=y/w; z=z/wolmak üzere 4x1 boyutunda bir vektörbağlanmasıyla mümkündür. Burada wölçek etmenidir ve değeri 1’dir.

[2 1 3]T vektörü [4 2 6 2]T veya [2 1 3 1]T

şeklinde yazılabilir.

11000

100

010

001

1

1

1

1

2

2

2

z

y

x

c

b

a

z

y

x

1000

100

010

001

),,(c

b

a

cbaötelemeHTwzyxT ],,,[

w

cwz

bwy

awx

w

z

y

x

c

b

a

THU

1000

100

010

001

Page 12: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

12

Örnek

U=2i+3j+4k vektörü B=5i+6j+7k ile ötelenirse dönüşmüş vektör:

1

11

9

7

1

4

3

2

1000

7100

6010

5001

V

Page 13: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

13

Dönme Dönüşmesi

Bir koordinat sisteminde x,y,z eksenleri etrafında dönmeleri:

1000

00

00

0001

),(

cs

scxDönme

1000

00

0010

00

),(

cs

sc

yDönme

1000

0100

00

00

),(

cs

sc

zDönme

ABABAB

ABABAB

ABABAB

ZZZYZX

YZYYYX

XZXYXX

VERİLEN MATRİSLER KLASİK KOORDİNATSİSTEMLERİNİN DÖNDÜRÜLMESİNE GÖREÇIKARILMIŞ.

Page 14: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

14

Örnek:Kartezyen uzayda A=5i+4j+3k vektörü ile ifade edilen bir vektör verilmiş olsun. Bu vektör önce z ekseni etrafında 90°döndürülerek elde edilen B ve elde edilen bu vektörü y ekseni etrafında 90° döndürerek elde edilen C vektörünün aldığı değerler nelerdir?

𝐵 = 𝑑ö𝑛𝑚𝑒 𝑧, 90° ∙ Ԧ𝐴

Ԧ𝐶 = 𝑑ö𝑛𝑚𝑒 𝑦, 90° ∙ 𝐵

1

3

5

4

1

3

4

5

1000

0100

0001

0010

1

3

4

5

1000

0100

009090

009090

cs

sc

B

1

4

5

3

1

3

5

4

1000

0001

0010

0100

1

3

5

4

1000

090090

0010

090090

cs

sc

C

Page 15: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

15

Öteleme ve Dönme Hareketlerinin Birleştirilmesi

Önceki örnekte verilen vektöre, yapılan dönmelerin (2 -1 3) ötelemesi ile birleşeceği varsayılsın.

İşlem sırası 1. Z ekseni etrafında 90° dönme2. Y ekseni etrafında 90° dönme3. Öteleme4. Vektörle birleştirme

dönme(z,90°)*dönme(y,90°)

1000

0010

0100

0001

1000

0010

0001

0100

1000

0100

0001

0010

1000

1010

3100

2001

1000

3100

1010

2001

1000

0010

0100

0001

dönme(z,90°)*dönme(y,90°)*öteleme(2 -1 3)

D1=

D2=

D3=

1

3

10

7

1

3

4

5

1000

1010

3100

2001

Page 16: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

16

Koordinat Çerçevelerinin Dönüşmeleri

Birbiriyle ilişkilendirilen iki koordinat çerçevesininikincisinin orijini [0 0 0 1]T öteleme dönüştürülmesiile bulunur.

Önceki bölümde gösterilen dönüşmeyi (iki kez dönme ve

bir öteleme sonucunda ortaya çıkan vektör) [-2 3 -1 1]T vektörüile ötelersek yeni çerçevenin orijini [0 0 0 1]T

dönüştürülmesi ile aşağıdaki gibi bulunur.

1

1

3

2

1

0

0

0

1000

1010

3100

2001

Dönüşmeler x, y, z eksenlerinin birim vektörlerinekarşı gelecek şekilde yapılması durumunda yenikoordinat çerçevesinde birim vektörler şu şekildebulunur.

1

1

3

3

1

0

0

1

1000

1010

3100

2001

1

0

3

2

1

0

1

0

1000

1010

3100

2001

1

1

4

2

1

1

0

0

1000

1010

3100

2001

X ekseni yönünde

Y ekseni yönünde

Z ekseni yönünde

İkinci koordinatçerçevesinin yenix birim vektörü [-3 3 -1 1]T olur.

İkinci koordinatçerçevesinin yeniy birim vektörü [-2 3 0 1]T olur.

İkinci koordinatçerçevesininyeni z birimvektörü [-2 4 -11]T olur.

Page 17: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

17

Örnek 2.2

Önce z ekseni etrafında 90° dönme, sonra [1 7 3]T vektörüne göre öteleme işlemi yapıldığında elde edilen koordinat çerçevesinin orijinini ve koordinat yönlerini bulunuz.

𝑐90° −𝑠90° 0 0𝑠90° 𝑐90° 0 00 0 1 00 0 0 1

=

0 −1 0 01 0 0 00 0 1 00 0 0 1

Dönme(z,90°)

1

Dönme(z,90°) . Öteleme[1 7 3]

0 −1 0 01 0 0 00 0 1 00 0 0 1

1 0 0 10 1 0 70 0 1 30 0 0 1

=

0 −1 0 −71 0 0 10 0 1 30 0 0 1

2

0 −1 0 −71 0 0 10 0 1 30 0 0 1

0001

=

−7131

Yeni koordinatçerçevesininorijini

0 −1 0 −71 0 0 10 0 1 30 0 0 1

1001

=

−7231

0 −1 0 −71 0 0 10 0 1 30 0 0 1

0101

=

−8131

0 −1 0 −71 0 0 10 0 1 30 0 0 1

0011

=

−7141

X yönündeki birim vektör

Y yönündeki birim vektör

Z yönündeki birim vektör

Verilen matrisler düzeltilmiştir

Page 18: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

18

Örnek 2.3

Örnek 2.2’de elde edilen çerçevede şekildeki gibi bir 𝐸𝑃=[2 2 0 1]T noktası verilmiş olsun. Bu çerçeveye göre [1 7 3 1]T

vektörü ile ötelenmiş bir R sisteminde 𝑅𝑃 nasıl elde edilir?

𝑅𝑃 = 𝑅𝑅𝐸 ∙𝐸𝑃

𝑅𝑃 =

0 −1 0 11 0 0 70 0 1 30 0 0 1

2201

=

−1931

Page 19: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

19

Robot Kinematiği ve Değişkenlerin Bulunması

Her koordinat çerçevesinin x eksenleri aynıyönde olacak şekilde seçilir ve dönereklemler dönme hareketlerini, prizmatikeklemler öteleme hareketlerini, z eksenleriboyunca yaparlar.

x1, y1, z1 koordinat çerçevesinin x2, y2, z2 gibi birkoordinat çerçevesine dönüşme hareketi:• Z1 etrafında θ2 kadar dönme• X1 boyunca a2 kadar yer değiştirme yapılır

x2, y2, z2 koordinat çerçevesinin x3, y3, z3 gibi birkoordinat çerçevesine dönüşme hareketi:• Z2 boyunca d3 kadar öteleme• X2 etrafında α3 kadar dönme hareketi yapılır

Bu dönüşmelerde ardışık adımlar izlenmelidir:

1. Eğer döner bir ekleme varsa, θn kadar dönme hareketi zn-1 etrafında yapılır.2. Eğer ötelemeli bir eklem varsa, dn kadar öteleme hareketi zn-1 boyunca yapılır.3. Xn-1 boyunca yapılan yer değiştirme an ile gösterilir.4. Xn-1 etrafında yapılan dönme hareketi αn ile gösterilir.

Page 20: Uygulama 2 - KLUpersonel.klu.edu.tr/.../dosya_ve_belgeler/uygulama2.pdf · 2019. 10. 22. · Öteleme İşlemi Bir ötelemevektörükullanarak bir nokta belli bir koordinat sistemine

20

Robot Kinematiği ve Değişkenlerin Bulunması

𝑐θ𝑛 −𝑠θ𝑛 0 0𝑠θ𝑛 𝑐θ𝑛 0 00 0 1 00 0 0 1

1 0 0 00 1 0 00 0 1 𝑑𝑛0 0 0 1

=

𝑐θ𝑛 −𝑠θ𝑛 0 0𝑠θ𝑛 𝑐θ𝑛 0 00 0 1 𝑑𝑛0 0 0 1

𝑐θ𝑛 −𝑠θ𝑛 0 0𝑠θ𝑛 𝑐θ𝑛 0 00 0 1 𝑑𝑛0 0 0 1

1 0 0 𝑎𝑛0 1 0 00 0 1 00 0 0 1

=

𝑐θ𝑛 −𝑠θ𝑛 0 𝑐θ𝑛𝑎𝑛𝑠θ𝑛 𝑐θ𝑛 0 𝑠θ𝑛𝑎𝑛0 0 1 𝑑𝑛0 0 0 1

𝑐θ𝑛 −𝑠θ𝑛 0 𝑐θ𝑛𝑎𝑛𝑠θ𝑛 𝑐θ𝑛 0 𝑠θ𝑛𝑎𝑛0 0 1 𝑑𝑛0 0 0 1

1 0 0 00 𝑐α𝑛 −𝑠α𝑛 00 𝑠α𝑛 𝑐α𝑛 00 0 0 1

=

𝑐θ𝑛 −𝑠θ𝑛𝑐α𝑛 −𝑠θ𝑛𝑠α𝑛 𝑐θ𝑛𝑎𝑛𝑠θ𝑛 𝑐θ𝑛𝑐α𝑛 −𝑐θ𝑛𝑠α𝑛 𝑠θ𝑛𝑎𝑛0 𝑠α𝑛 𝑐α𝑛 𝑑𝑛0 0 0 1

Z etrafında dönme ve öteleme

X boyunca öteleme

X etrafında dönme