• Sonuç bulunamadı

Sanal Staublı Rx160 Manipülatörün Phantom Premıum Haptıc Cihaz İle Kontrolü

N/A
N/A
Protected

Academic year: 2021

Share "Sanal Staublı Rx160 Manipülatörün Phantom Premıum Haptıc Cihaz İle Kontrolü"

Copied!
137
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

ISTANBUL TECHNICAL UNIVERSITY  GRADUATE SCHOOL OF SCIENCE ENGINEERING AND TECHNOLOGY

M.Sc. THESIS

MAY 2014

CONTROL OF VIRTUAL STAUBLI RX160 MANIPULATOR BY PHANTOM PREMIUM HAPTIC DEVICE

Thesis Advisor: Assoc. Prof. Dr. Zeki Yağız BAYRAKTAROĞLU Aykut GÖREN

Department of Mechatronics Engineering Mechatronics Engineering Programme

(2)
(3)

MAY 2014

ISTANBUL TECHNICAL UNIVERSITY  GRADUATE SCHOOL OF SCIENCE ENGINEERING AND TECHNOLOGY

CONTROL OF VIRTUAL STAUBLI RX160 MANIPULATOR BY PHANTOM PREMIUM HAPTIC DEVICE

M.Sc. THESIS Aykut GÖREN (518111003)

Department of Mechatronics Engineering Mechatronics Engineering Programme

(4)
(5)

MAYIS 2014

İSTANBUL TEKNİK ÜNİVERSİTESİ  FEN BİLİMLERİ ENSTİTÜSÜ

SANAL STAUBLI RX160 MANİPÜLATÖRÜN PHANTOM PREMIUM HAPTIC CİHAZ İLE KONTROLÜ

YÜKSEK LİSANS TEZİ Aykut GÖREN

(518111003)

Mekatronik Mühendisliği Anabilim Dalı Mekatronik Mühendisliği Programı

(6)
(7)

v

Thesis Advisor : Assoc. Prof. Dr. Zeki Yağız BAYRAKTAROĞLU Istanbul Technical University

Aykut GÖREN, a M.Sc. student of ITU Graduate School of Science Engineering and Technology student ID 518111003, successfully defended the thesis entitled “CONTROL OF VIRTUAL STAUBLI RX160 MANIPULATOR BY PHANTOM PREMIUM HAPTIC DEVICE”, which he prepared after fulfilling the requirements specified in the associated legislations, before the jury whose signatures are below.

Date of Submission : 5 May 2014 Date of Defense : 30 May 2014

Jury Members : Prof. Dr. Şeniz ERTUĞRUL Istanbul Technical University

Assist. Prof. Dr. Kadir ERKAN Yıldız Technical University

(8)
(9)

vii

(10)
(11)

ix FOREWORD

This master’s thesis is about developing a software which controls a virtual Staubli RX160 manipulator by a Phantom Premium haptic device and was written in the Department of Mechatronics Engineering of Istanbul Technical University.

I would like to thank my master’s thesis advisor Assoc. Prof. Dr. Zeki Yağız BAYRAKTAROĞLU, my colleagues and friends in Arçelik Inc. and Istanbul Technical University and my family for their moral and material support.

May 2014 Aykut GÖREN

(12)
(13)

xi TABLE OF CONTENTS Page FOREWORD ... ix  TABLE OF CONTENTS ... xi  ABBREVIATIONS ... xiii  LIST OF TABLES ... xv 

LIST OF FIGURES ... xvii 

SUMMARY ... xxi  ÖZET ... xxiii  1. INTRODUCTION ... 1  1.1 Purpose of Thesis ... 1  1.2 Literature Review ... 2  1.3 Staubli RX160 ... 3 

1.4 Phantom Premium 1.5 High Force 6DOF ... 5 

2. HAPTICS ... 11 

2.1 Virtual Reality (VR) ... 13 

2.2 Haptic Rendering ... 13 

2.3 OpenHaptics SDK(Software Development Kit) ... 14 

2.3.1 OpenGL(Open Graphics Library) API ... 15 

2.3.2 QuickHaptics micro API ... 16 

2.3.3 HDAPI ... 21 

2.3.4 HLAPI ... 22 

2.3.5 Multithreading ... 25 

2.3.6 Mapping the device space to world space ... 26 

2.3.7 Calibration ... 27 

3. MODELING OF 3 DOF STAUBLI RX160 ... 31 

3.1 Geometric Model ... 31 

3.1.1 Homogeneous transformation matrices ... 31 

3.1.2 Forward geometric model ... 33 

3.1.3 Inverse geometric model ... 36 

3.2 Kinematic Model ... 41 

3.2.1 Jacobian matrix ... 41 

3.2.2 Forward kinematic model ... 43 

3.2.3 Inverse kinematic model ... 43 

3.3 Static Model ... 43 

3.4 Dynamic Model ... 44 

3.4.1 Robot dynamic parameters ... 44 

3.4.1.1 Inertial parameters ... 45 

3.4.1.2 Friction ... 45 

3.4.1.3 Balancing system ... 47 

3.4.2 Newton-Euler formulation ... 48 

(14)

xii

4. VISUAL INTERFACE ... 53 

4.1 Virtual Model of Staubli RX160 ... 53 

4.2 Motion Algorithm of the Staubli RX160 ... 54 

4.2.1 Hierarchy modeling ... 55 

4.2.2 Proxy rendering ... 56 

4.2.3 Motion algorithm of the virtual Staubli RX160 ... 56 

5. APPLICATION AND EXPERIMENTS ... 59 

5.1 Application Setup ... 59 

5.2 Experiments ... 60 

6. CONCLUSION AND RECOMMENDATIONS ... 89 

REFERENCES ... 91 

APPENDICES ... 93 

APPENDIX A ... 97 

APPENDIX B ... 97 

(15)

xiii ABBREVIATIONS

HF : High Force

DOF : Degrees of Freedom

Hz : Hertz

VR : Virtual Reality

EPP : Enhanced Parellel Por PDD : Phantom Device Drivers

HAVE : Hapto-Audio-Virtual-Environment SDK : Software Development Kit

API : Application Programming Interface IDE : Integrated Development Environment

(16)
(17)

xv LIST OF TABLES

Page Table 1.1 : Amplitude, speed and resolution parameters of the Staubli RX160[7]. ... 4 Table 1.2 : Power Specifications[9]. ... 7 Table 3.1 : Types of equations encountered in Paul method[14]. ... 37

(18)
(19)

xvii LIST OF FIGURES

Page

Figure 1.1 : The Staubli RX160[7]. ... 3 

Figure 1.2 : The physical dimension of the Staubli RX160[7]. ... 4 

Figure 1.3 : The work envelope of the Staubli RX160[7]. ... 5 

Figure 1.4 : The work envelope of the Staubli RX160. ... 6 

Figure 1.5 : Sockets and switches of the Phantom Premium 1.5 HF 6 DOF. ... 7 

Figure 1.6 : Phantom Test Interface. ... 8 

Figure 2.1 : The spectrum and trend for HAVE[11]. ... 11 

Figure 2.2 : Approximate sensing frequencies of the cultaneous mechanoreceptors, kinesthetic and the range of the kinesthetic control[12]. ... 12 

Figure 2.3 : Basic architecture for a virtual reality application incorporating visual, auditory and haptic feedback[11]... 13 

Figure 2.4 : Haptic rendering block diagram[11]. ... 14 

Figure 2.5 : The OpenHaptics overview[8]. ... 15 

Figure 2.6 : Diagram of the OpenGL rendering pipeline[13]. ... 16 

Figure 2.7 : Default QuickHaptics camera location[8]. ... 17 

Figure 2.8 : Default clipping planes for world space[8]. ... 18 

Figure 2.9 : Haptic interface point. ... 19 

Figure 2.10 : The Cursor class association[8]. ... 20 

Figure 2.11 : QuickHaptics micro API program flow[8]. ... 20 

Figure 2.12 : HDAPI program flowchart[8]. ... 22 

Figure 2.13 : The proxy position[8]. ... 24 

Figure 2.14 : The HLAPI program flowchart [8]. ... 24 

Figure 2.15 : The haptic frames inside the HLAPI program flowchart [8]. ... 25 

Figure 2.16 : Thread structures. ... 26 

Figure 2.17 : The haptic device workspace coordinates to world coordinates mapping[8]. ... 27 

Figure 2.18 : Calibration position. ... 28 

Figure 2.19 : Calibration interface. ... 29 

Figure 3.1 : Transformation between frame and frame . ... 32 

Figure 3.2 : Robot Views: (a)Front View. (b)Right View. (c)Top View. (d)Perspective View. ... 34 

Figure 3.3 : Link coordinate frames of 3 DOF Staubli RX 160 robot. ... 35 

Figure 3.4 : Workspace of this study. ... 42 

Figure 3.5 : Coulomb, viscous and static friction model[15]. ... 46 

Figure 3.6 : Stribeck effect of friction model[15]. ... 46 

Figure 3.7 : Staubli RX160 balancing system[7]. ... 48 

Figure 3.8 : Force, torque and position vctors on Staubli RX160 manipulator. ... 50 

Figure 3.9 : Forward and backward recursion shema. ... 52 

Figure 4.1 : Links of the Staubli RX 160 manipulator. ... 53 

(20)

xviii

Figure 4.3 : Virtual model of the Staubli RX 160 manipulator. ... 54 

Figure 4.4 : Tree-structured hierarchy model of the Staubli RX160 manipulator. ... 55 

Figure 4.5 : The illustration of the motion algorithm for a position change of the end-effector. ... 57 

Figure 4.6 : The visual interface window. ... 58 

Figure 5.1 : Application Setup. ... 60 

Figure 5.2 : General scheme of the application. ... 61 

Figure 5.3 : Block diagram of the application. ... 61 

Figure 5.4 : First experiment path. ... 63 

Figure 5.5 : Experimental results for first path, 1 1 and 2 0,01: (a)Position. (b)Velocity. (c)Acceleration. ... 64 

Figure 5.6 : Force graphs for first path, 1 1 and 2 0,01: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 65 

Figure 5.7 : Experimental results for first path, K1 1 and K2 0,001: (a)Position. (b)Velocity. (c)Acceleration. ... 66 

Figure 5.8 : Force graphs for first path, K1 1 and K2 0,001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 67 

Figure 5.9 : Experimental results for first path, K1 1 and K2 0,0001: (a)Position. (b)Velocity. (c)Acceleration. ... 68 

Figure 5.10 : Force graphs for first path, 1 1 and 2 0,0001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 69 

Figure 5.11 : Experimental results for first path, 1 10 and 2 0,01: (a)Position. (b)Velocity. (c)Acceleration. ... 70 

Figure 5.12 : Force graphs for first path, 1 10 and 2 0,01: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 71 

Figure 5.13 : Experimental results for first path, 1 10 and 2 0,001: (a)Position. (b)Velocity. (c)Acceleration. ... 72 

Figure 5.14 : Force graphs for first path, 1 10 and 2 0,001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 73 

Figure 5.15 : Experimental results for first path, 1 10 and 2 0,0001: (a)Position. (b)Velocity. (c)Acceleration. ... 74 

Figure 5.16 : Force graphs for first path, 1 10 and 2 0,0001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 75 

Figure 5.17 : Second experiment path. ... 76 

Figure 5.18 : Experimental results for first path, 1 1 and 2 0,01: (a)Position. (b)Velocity. (c)Acceleration. ... 77 

Figure 5.19 : Force graphs for first path, 1 1 and 2 0,01: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 78 

Figure 5.20 : Experimental results for first path, 1 1 and 2 0,001: (a)Position. (b)Velocity. (c)Acceleration. ... 79 

(21)

xix

Figure 5.21 : Force graphs for first path, K1 1 and K2 0,001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 80 

Figure 5.22 : Experimental results for first path, K1 1 and K2 0,0001:

(a)Position. (b)Velocity. (c)Acceleration. ... 81 

Figure 5.23 : Force graphs for first path, 1 1 and 2 0,0001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 82 

Figure 5.24 : Experimental results for first path, 1 10 and 2 0,01:

(a)Position. (b)Velocity. (c)Acceleration. ... 83 

Figure 5.25 : Force graphs for first path, 1 10 and 2 0,01: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 84 

Figure 5.26 : Experimental results for first path, 1 10 and 2 0,001:

(a)Position. (b)Velocity. (c)Acceleration. ... 85 

Figure 5.27 : Force graphs for first path, 1 10 and 2 0,001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 86 

Figure 5.28 : Experimental results for first path, 1 10 and 2 0,0001:

(a)Position. (b)Velocity. (c)Acceleration. ... 87 

Figure 5.29 : Force graphs for first path, 1 10 and 2 0,0001: (a)Computed virtual end-effector force. b)Limited force applied to the haptic device. ... 88 

Figure A.1 : QuickHaptics micro API classes and properties[8]. ... 95 

Figure B.1 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 97 

Figure B.2 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 98 

Figure B.3 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 99 

Figure B.4 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 100 

Figure B.5 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 101 

Figure B.6 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 102 

Figure B.7 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 103 

Figure B.8 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 104 

Figure B.9 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 105 

Figure B.10 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 106 

Figure B.11 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(c)Acceleration. (d)Force. ... 107 

Figure B.12 : Resulting values (Magnitudes): (a)Position. (b)Velocity.

(22)
(23)

xxi

CONTROL OF VIRTUAL STAUBLI RX160 MANIPULATOR BY PHANTOM PREMIUM DEVICE

SUMMARY

Robots can be used for a variety of purposes in diverse application areas. Therefore, a wide range of tasks can be defined for robots. For satisfying these complicated tasks, robots need to be intelligent. Making robots intelligent is a continuously developable area and one of the effective ways for this purpose is improving the robot sensations. In this context, integrating tactile sensation to a robotic application is one of the objectives of this thesis.

Haptics is the science of incorporating the tactile and/or kinesthetic sensations into the human-computer interaction. It has a broad range of applications in both commercial and scientific researches. Some of these application areas are: Virtual reality, robotic control, teleoperations or telerobotics, rehabilitation, tele-rehabilitation, training simulations such as medical, surgical and dental simulations, virtual assembly, collision detection, molecular modeling, FEM (Finite Element Method) applications, nano manipulation, entertainment and games, remote manipulations for nuclear and hazardeus applications and 3D modeling.

In this thesis, a computer software is written to interact with the virtual model of the 3 DOF Staubli RX160 manipulator via Phantom Premium 1.5 High Force 6 DOF haptic device. OpenHaptics SDK which is based on the C/C++ programming language is used for programming. OpenHaptics have 3 APIs: QuickHaptics micro API, HLAPI and HDAPI. All of these 3 APIs are used in this study to take advantage of each API. A visual interface is designed to obtain a visual feedback of the application by using OpenHaptics commands which are based on the OpenGL API. In the application, human operator moves the haptic interface point and a position change occurs. By using this position change information, the linear velocity and acceleration of the haptic interface point are computed by considering time. Then, using the position change, velocity and acceleration information of the haptic interface point, the haptic rendering algorithm computes the resulting forces of the dynamic model of the virtual 3 DOF Staubli manipulator and the graphics rendering algorithm computes the resulting motion of the virtual Staubli manipulator in virtual environment.

Human tactile and visual perception frequencies are approximately 1000 and 30 Hz respectively. Therefore, to obtain the sense of reality that occurs in user, the haptic rendering algorithm and the graphics rendering algorithm operating frequencies are determined as 1000 Hz and 30 Hz respectively. In the developed software, these two algorithms are programmed in seperate threads which run in parallel by utilizing the OpenHaptics APIs.

(24)

xxii

A virtual tool is designed as an end-effector of the Staubli manipulator and placed to the top of the tool flange of the Staubli manipulator. First 3 DOF of Staubli RX160 manipulator provides to access to the major part of its workspace and the last 3 DOF provides the orientation of the end-effector. First 3 DOF of Staubli RX160 are modeled in this study. The geometric, inverse geometric, kinematic, inverse kinematic, static, dynamic and inverse dynamic model of the 3 DOF Staubli RX160 manipulator are derived. Second link of the Staubli RX160 is equipped with a spring ballance system and it is provided by Staubli. The dynamic and inverse dynamic model of the Staubli manipulator include this spring model and the joint friction models.

The position change of the haptic interface point is mapped to the position change of the end-effector of the virtual 3 DOF Staubli RX160. Then, the resulting forces of the dynamic model of the virtual 3 DOF Staubli RX160 are mapped to a limited range of force which is inside the Phantom haptic device capabilities. Position and force mappings are uniform, in other words, all the axes are mapped in the same proportion. The position and force scaling coefficients express the position and force gain respectively.

In the experiment stage, some specific conditions are determined and the experiments are realized for these conditions. These conditions consist of diverse motion paths, position gains and force gains. During the experiments, the end-effector of the virtual 3 DOF Staubli RX160 manipulator follows the haptic interface point movement, the resulting visual and force feedback are applied to the human operator and the developed software records the position, velocity, acceleration and force informations. After the application is stopped, the software writes all of the recorded data to a file.

Consequently, the determined experiments are realized and the resulting graphs are plotted. Then, the stability of the system is investigated. Numerical derivations and other numerical computations caused to instability and “force kicking” in the system. Decreasing the position and the force gain improves the stability, however, sense of reality decreases. Considering the results, some suggestions are made to improve the stability and future works.

(25)

xxiii

SANAL STAUBLI RX160 MANİPÜLATÖRÜN PHANTOM PREMIUM HAPTIC CİHAZ İLE KONTROLÜ

ÖZET

Robotlar çeşitli amaçlarla çok farklı uygulama alanlarında kullanılabilmektedirler. Bu nedenle robotlar için çok çeşitli görevler tanımlanabilir. Bu karmaşık görevleri yerine getirebilmek için, robotların akıllı sistemler olmaları gerekmektedir. Robotları daha fazla akıllı hale getirebilmek sürekli olarak geliştirilebilir bir alandır ve bunu gerçekleştirmenin etkin yollarından biri robot algılarını geliştirmektir. Bu bağlamda, robot algılarının robotik bir uygulamaya entegre edilmesi bu tezin amaçlarından birisidir.

Haptics dokunsal ve/veya kinestetik duyuların insan-bilgisayar etkileşimine dahil edilmesi bilimidir. Hem ticari hem de bilimsel araştırmalarda geniş bir yelpazede uygulamalara sahiptir. Bu uygulama alanlarından bazıları şunlardır: Sanal gerçeklik, robotik kontrol, medikal, ameliyat ve diş ile ilgili simülasyonlar gibi eğitim simülasyonları, sanal montaj, çarpışma algılama, moleküler modelleme, SEM (Sonlu Elemanlar Metodu) uygulamaları, nano manipülasyon, eğlence ve oyun, nükleer ve tehlikeli uygulamalar için uzaktan manipülasyon ve 3 boyutlu modelleme.

Bu tezde, Phantom Premium 1.5 High Force 6 DOF haptic cihaz kullanılarak Staubli RX160 manipülatörün 3 serbestlik dereceli sanal modeli ile etkileşim sağlayabilen bir yazılım geliştirilmiştir. Kullanıcı haptic arayüz noktasını hareketlendirerek sistem için pozisyon, hız ve ivme girdisi oluşturmaktadır. Geliştirilen algoritma ile, bu girdiler kullanarak kullanıcıya geri besleme olarak kuvvet ve sanal robot görsel hareketi uygulanmaktadır. Kuvvet geri beslemesi Staubli manipülatörün oluşturulan dinamik modeli aracılığı ile hesaplanmaktadır. Görsel geri besleme ise 3 serbestlik dereceli Staubli RX160 için geliştirilen hareket algoritması tarafından heaplanmaktadır.

Geliştirilen yazılım açık kaynak kodlu bir yazılımdır ve konu ile ilgili yapılacak yeni çalışmalara entegre edilebilmesine imkan sağlamaktadır. Gerçek robot davranışlarının ilk aşama olarak, sanal ortamda simüle edilmesi, gerçek robotlar ile yapılan deneyler esnasında oluşabilecek hasarların test ve algoritma geliştirme aşamalarında fark edilip önlenmesi açısından önem taşımaktadır. Ayrıca, ilk aşama olarak uygulamaların sanal ortamda geliştirilmesi harcanacak enerji ve zaman açılarından da tasarruf sağlamaktadır. Bu doğrultuda Staubli manipülatör ve Phantom haptic cihaz ile ilgili yapılacak çalışmaların sanal ortamda simüle edilmesi, bu tezin hedeflerinden birini oluşturmaktadır.

Programlama aşamasında, C/C++ programlama dili temeline dayanan OpenHaptics yazılım geliştirme kiti kullanılmıştır. OpenHaptics QuickHaptics micro API, HLAPI ve HDAPI olmak üzere 3 UPA’ya (Uygulama Programlama Arayüzü) sahiptir. QuickHaptics micro API, az sayıda kod ile hızlı bir şekilde temel uygulamaların geliştirilmesinde kolaylıklar sağlamaktadır. HLAPI, grafiksel olarak ileri

(26)

xxiv

uygulamalar geliştirilmesinde avantajlar sağlamaktadır. HDAPI ise doğrudan motor ve enkoderlerin kullanılması ve direk kuvvet ve tork yüklemeleri gibi kontrol algoritmaları ile çalışılacak ileri seviyede çalışmalarda avantajlar sağlamaktadır. Bu çalışmada, her bir UPA’nın avantajlarından faydalanmak amacı ile 3 UPA da kullanılmıştır. Sanal robot hareketlerinin kullanıcıya görsel geri besleme olarak sağlanması için bir görsel arayüz tasarlanmıştır. Tasarlanan görsel arayüz, içerisinde Staubli RX160 manipülatörün katı modelinin konumlandığı sanal bir ortamı göstermektedir. Oluşturulan sanal ortam ve görsel arayüz OpenGL UPA temeline dayanan OpenHaptics komutları kullanılarak geliştirilmiştir.

Uygulamada, kullanıcı haptic arayüz noktasını hareket ettirmekte ve bir pozisyon değişimi oluşmaktadır. Gerçekleşen bu pozisyon değişimi ile, zaman dikkate alınarak doğrusal hız ve ivme değerleri hesaplanmaktadır. Daha sonra, bu pozisyon, hız ve ivme değerleri kullanılarak haptic rendering algoritması 3 serbestlik dereceli sanal Staubli manipülatörün dinamik modelinin sonuçlanan kuvvetlerini hesaplamakta ve grafik rendering algoritması sanal Staubli manipülatörün sanal ortamda sonuçlanan hareketini hesaplamaktadır.

Staubli RX 160 manipülatörün gerçek boyutlu katı modelleri Staubli tarafından .stp dosya uzantılı olarak sağlanmıştır. Sanal uzaya bu parçalar .3ds dosya formatına çevrilerek alınmıştır. Sanal uzayda uzuvlar birbirinden bağımsız parçalar olarak konumlanmakta ve hareket etmektedirler. 3 serbestlik dereceli sanal Staubli manipülatör uzuvlarının sanal ortamdaki koordine hareketinin elde edilmesi için robot uzuvları ile bir hiyerarşik model oluşturulmuştur. Daha sonra, sanal modelin sanal uzayda hareketi için, oluşturulan hiyerarşiyi dikkate alarak, her bir uzvun ve eklem koordinat sistemlerinin dönmelerini yinelemeli olarak hesaplayan ve uzuv katı modellerini hareketlendiren bir hareket algoritması geliştirilmiştir. Bu algoritma, sanal Staubli manipülatör uzuvlarının sanal ortamdaki konum ve eksen bilgilerini elde etmek için 3 serbestlik dereceli Staubli manipülatörün çözülen geometrik modelini ve katı modellerin hareketi için OpenHaptics komutlarını kullanmaktadır. İnsan için dokunsal algı frekansı 1000 Hz ve görsel algı frekansı 30 Hz civarındadır. Bu nedenle, kullanıcıda oluşan gerçeklik hissinin sağlanması için, haptic rendering algoritması çalışma frekansı 1000 Hz, grafik rendering algoritması çalışma frekansı 30 Hz olarak belirlenmiştir. Geliştirilen yazılımda, bu iki algoritma OpenHaptics UPA’larından faydalanılarak farklı iş parçacıklarında, parelel olarak koşacak şekilde programlanmıştır. Böylece, kullanıcıya uygulanacak kuvvet geri beslemeleri saniyede 1000 defa hesaplanarak kullanıcıya uygulanmaktadır. Sanal modelin hareketi ise saniyede 30 defa hesaplanmakta ve arayüzde saniyede 30 kare yenilenmektedir. Uygulanan bu iki ayrı frekans sayesinde kullanıcı, aslında ayrık zamanda gerçekleştirilen uygulamayı sürekli olarak hissediyor olmaktadır.

Staubli manipulator için, haptic device tarafından konum kontrolünün sağlanacağı bir sanal uç işlevci ekipmanı tasarlanmış ve sanal ortamda Staubli manipülatörün flanşına eklenmiştir. Staubli RX160 manipülatörün ilk 3 serbestlik derecesi robotun çalışma uzayının büyük kısmına erişimini ve son 3 serbestlik derecesi uç işlevcinin yönelimini sağlamaktadır. Bu çalışmada, Staubli RX160 manipülatörün ilk 3 serbestlik derecesi modellenmiştir. Uygulamada Staubli manipulatörün son 4 uzvu ve tasarlanan uç ekipman tek bir uzuv gibi hareket etmektedir ve böylece yönelim açıları devre dışı bırakılmıştır. Staubli RX160 manipülatör için geometrik, ters geometrik, kinematik, ters kinematik, statik, dinamik ve ters dinamik modelleri çözülmüştür. Staubli RX160 manipülatörün ikinci uzvu yay denge sistemi ile

(27)

xxv

donatılmıştır ve bu model Staubli tarafından sağlanmıştır. Dinamik ve ters dinamik model bu yay modelini ve eklem sürtünme modellerini içermektedir.

Haptic arayüz noktasının pozisyon değişimi belirli bir bir katsayı ile ölçeklendirilerek Staubli manipülatörün uç işlevcisinin pozisyon değişimine dönüştürülmektedir. Daha sonra, 3 serbestlik dereceli sanal Staubli manipülatör dinamik modelinin sonuçlanan kuvvetleri haptic cihaz kuvvet limitleri içerisinde bir aralığa ölçeklenmektedir. Pozisyon ve kuvvet ölçeklendirmeleri uniform olarak, diğer bir deyişle her eksen için aynı oranda gerçekleştirilmiştir. Uygulanan pozisyon ölçeği katsayısı pozisyon kazancını ve kuvvet ölçeği katsayısı kuvvet kazancını ifade etmektedir.

Deney aşamasında, uygulama için şartlar belirlenmiştir ve deneyler bu koşullar altında gerçekleştirilmiştir. Bu koşullar farklı hareket yörüngeleri, pozisyon ve kuvvet kazançlarından oluşmaktadır. Deney süresince 3 serbestlik dereceli sanal Staubli manipülatörün uç işlevcisi haptic arayüz noktasını takip etmekte, sonuçlanan görsel geri beslemeler ve kuvvet geri beslemeleri kullanıcıya uygulanmaktadır ve geliştirilen yazılım pozisyon, hız, ivme ve kuvvet bilgilerini kayıt altına almaktadır. Uygulama sonlandırıldığında yazılım bu bilgileri bir dosyaya kaydetmektedir.

Yazılımın geliştirilmesinin ardından bu tezde incelenecek deney şartları belirlenmiştir. Öncelikle iki farklı hareket yörüngesi kurgulanmıştır. İlk yörüngede haptic arayüz noktasının x,y ve z eksenlerinde sıralı olarak hareket ettirilmesi planlanmıştır. İkinci yörüngede ise haptic arayüz noktasının x, y ve z eksenlerinde aynı anda hareketini sağlayacak dairesel bir yörünge planlanmıştır. Diğer deney şartları kuvvet ve pozisyon kazançlarının farklı değerleri için deneylerin tekrarlanmasını kapsamaktadır.

Yörüngelerin tasarlanmasından sonra, bu çalışma için uygun olacak şekilde iki adet pozisyon kazancı ve üç adet kuvvet kazancı belirlenmiştir. Tasarlanan her bir yörünge için, iki pozisyon kazancı ve her bir pozisyon kazancı için üç kuvvet kazancı deney şartlarını oluşturmaktadır. Böylece, bu şartlar altında 12 deney gerçekleştirilmiştir.

Belirlenen şartlar için deneyler gerçekleştirilmiş ve sonuçlanan pozisyon, hız, ivme ve kuvvet değerleri zamana bağlı olarak çizdirilerek, grafikler elde edilmiştir. Deney esnasında oluşan pozisyon, hız, ivme ve kuvvet bilgilerinin, x, y ve z eksenlerindeki etkilerinin detaylı olarak incelenebilmesi için grafiklerde, bu bilgilerin x, y ve z eksenlerine izdüşümleri çizdirilmiştir. Aynı sonuçların büyüklük eğrileri ise eklerde verilmiştir.

Sonuç olarak, hedeflenen yazılım geliştirilmiş ve çeşitli yörünge, pozisyon ve kuvvet kazançları için deneyler gerçekleştirilmiştir. Daha sonra, uygulanan deney koşulları için sistemin kararlılığı ve gerçeklik hissi incelenmiştir. Sayısal olarak hesaplanan türevlerin ve diğer sayısal hesaplamaların sonuçlarda gürültü ve düzensizliklere neden olduğu gözlemlenmiştir. Genel olarak, pozisyon ve kuvvet kazançlarının azaltılmasının kararlılığı iyileştirdiği fakat kullanıcı tarafından algılanan gerçeklik hissini düşürdüğü, hem sonuçlanan grafiklerden hem de haptic cihaz tarafından kullanıcıya uygulanan kuvvet geri beslemelerinden saptanmıştır. Sonuçları dikkate alarak, sistem kararlılığının iyileştirilmesi ve kuvvet düzensizliklerinin azaltılması amacıyla, çeşitli sinyal işleme filtrelerinin ve yapay zeka algoritmalarının sisteme uygulanması gibi bu çalışmanın geliştirilmesine ve ileriki çalışmalara yönelik öneriler sunulmuştur.

(28)
(29)

1 1. INTRODUCTION

A broad range of tasks can be defined for robots. Therefore, making the robots more intelligent is a continuously developable area. One of the effective ways for this purpose is improving the sensations of the robots. In this context, integrating the tactile unilateral or bilateral force/torque feedback to the robotic applications is the one of the state of the art in robotic researches.

Developing the robotic applications in a virtual environment is a safety and fast method to test the applications. These kinds of virtual reality applications can prevent the possible damages in the developing or the testing stage.

The tactile perception of the robots is the objective of this study. A master-slave robot system is used. The master robot is the Phantom Premium 1.5 6DOF /1.5HF 6DOF haptic device and the slave robot is the virtual model of the Staubli RX160 manipulator. The stylus of the haptic device controls the end-effector position of the virtual model of the Staubli manipulator. The haptic device provides position, velocity and acceleration informations for the virtual Staubli manipulator. Then, by calculating the resulting forces of the derived dynamic model of the 3 DOF Staubli RX160 manipulator, the haptic device applies the force feedback toward the human operator.

12 experiments are realized for two different paths and diverse position and force gains. After 12 experiments are completed, position, velocity, acceleration and computed force values are obtained. Then, the stability of the system is investigated for these experiments.

1.1 Purpose of Thesis

The purpose of this thesis is to visualize the motions of the Staubli manipulator and feel the resulting forces at the end-effector of the Staubli manipulator controlling the end-effector by the haptic device. A software application developed in this context can be used to simulate the manipulator behaviours in the virtual environment. Thus,

(30)

2

the application allows to analyze and avoid the unexpected behaviors before run the applications on the real manipulator. The software developed in the scope of this study can be also used for further researches about the Staubli manipulator and the haptic device.

1.2 Literature Review

In the literature, there is a wide range of applications including the communication between Staubli manipulators and Phantom haptic devices. Some of these applications are stated below.

In reference [1], an open robotic platform based on Staubli RX60 manipulator is introduced, different possibilities of software configurations explaining the advantage and drawbacks of these software configurations are described and experimental results are given to validate the performance of the robotic setup. The experimental setup consists of a Staubli RX60 manipulator, a CS8 controller, a 6 DOF ATI wrist force-torque sensor, a 3 DOF capacitive accelerometer, a 3 DOF gyroscope, an acquisition board integrated to the robot controller and a 6 DOF Phantom haptic device.

In reference [2], bilateral haptic guided robot teleoperation using Internet Protocol version 6 (IPv6) with high Quality of Servis (QoS) is achieved. The Phantom 1.5 6 DOF haptic device, Staubli TX90, CS8 controller and JR3 force-torque sensor are used.

In reference [3], eliminating and scaling the non-contact forces and torques from the measurements of a wrist-mounted force-torque sensor are studied. The Phantom Premium 1.5 HF 6 DOF haptic device, either Staubli RX60 or RX90, CS7B controller and a combined force-torque sensor are used.

In reference [4], path planning techniques based on harmonic functions are used to generate force feedbacks for teleoperated assembly tasks. A phantom haptic device and a Staubli TX90 manipulator are used. The cross-platform tools Qt (as application frame-work), Coin3D (as graphics toolkit) and OpenHaptics Toolkit are used for programming. The communication between the haptic device and the Staubli manipulator is achieved via internet protocol.

(31)

In referen force cont PUMA560 is used fo network u 1.3 Staub The Staub academic position an The 6 basi where A, B and the w rotational The physi dimension nce [5], a te trol on the 0 manipulat or operating used for com

bli RX160 bli RX160 i application nd the last 3 ic compone B, C, D, E a wrist respec directions o ical dimens ns are given eleoperation slave robot tor are used system. Th mmunication

is a manipu ns. The first 3 DOF prov ents and 6DO

Figure and F are th ctively. 1, 2 of the robot sions of the n in mm scal 3 n approach t is introdu d as a maste he servo ra n. ulator havin t 3 DOF pr vides the ori OF of the S 1.1 : The S he base, the 2, 3, 4, 5, t. e Staubli R le. using a vi uced. A Pha er and a slav te is about ng 6 DOF a rovides the ientation of Staubli RX1 Staubli RX1 shoulder, t 6 indicate RX160 are irtual spring antom 1.0A ve device re 10 000 Hz nd used in major part f the end-eff 60 are show 60[7]. he arm, the the revolu shown in F g and local A haptic dev espectively. z and wirele both indus of the end fector. wn in Figure elbow, the ute joints a Figure 1.2. l contact vice and LINUX ess LAN trial and -effector e 1.1. forearm and their All the

(32)

Each jo parking capacity of the S Table Axi Amplit (°) Work Rang Distribu (°) Nomi Speed Maxim Speed Angu Resolu (°.10 Figure oint has a b brake sys y is 20 kg a Staubli RX1 e 1.1 : Amp is tude ) 32 king ge ution ) ±1 inal (°/s) 1 mum (°/s) 20 ular ution ) 0.0 1.2 : The p brushless m stem. The t at the nomin 60 are given plitude, spee 1 2 20 27 160 ±13 65 15 00 20 042 0.0 physical dim motor to ob total arm w nal speed. A n in Table 1 ed and resol 2 75 3 37.5 ± 50 1 00 2 042 0. 4 mension of t tain the mo weight is 2 Amplitude, 1.1. lution param 3 300 150 190 255 054 0 the Staubli R otion and a 248 kg and speed and meters of the 4 540 ±270 295 315 0.062 RX160[7]. all the moto d the maxi resolution p e Staubli RX 5 225 +120 -105 260 390 0.12 ors have a imum load parameters X160[7]. 6 540 ±270 440 870 0.17

(33)

Work env move insid As an end envelope c There is a control it m 1.4 Phant The SensA like works velope is the de this area Figure d-effector v changes dep a control un manually. A tom Premiu Able Techn space, type e range of t . Figure 1.3 1.3 : The w arious tools pending on nit to comm Additional e um 1.5 Hig nologies pr of the com 5 the movem 3 illustrates work envelo s can be mo

the tool pos municate wit equipments gh Force 6D rovides Pha mmunication ments of the the work en ope of the St ounted to th sition. th the robot can be sele DOF antom hapti n, force/torq robot and nvelope of t taubli RX16 he tool flan t and a han cted for div

ic device p que/velocity the robot is the Staubli R 60[7]. nge. Thus, t nd control d verse purpos products. Pr y/acceleratio s able to RX160. the work device to ses. roperties on limits

(34)

vary de device p The Pha It has a first 3 d are for o The bot Force 6D  A p  I C F  T Power s given in epending on products are antom Prem high fidelit degrees of fr orientationa Fig th software DOF haptic An Intel® processor is IEEE 1284 Converter ( FireWire Po The most cu specification n Table 1.2. n the Phant e used for v mium 1.5 Hi ty force fee reedom are al sensing. gure 1.4 : Th e and hardw c device are based per s recommen EPP compl (PCC) and ort). urrent versi ns of the Ph om haptic arious pupo igh Force 6 edback and for position he work env ware require e listed below rsonel comp nded). liant paralle FireWire C on of the Ph hantom Prem 6 device that oses in hapt 6 DOF hapt senses moti nal sensing velope of th ements of t w[9]: puter (A m el port inter Card (requi hantom Dev mium 1.5 H t is chosen. ics. ic device is ion in 6 deg and the last

he Staubli R the Phantom minimum o rface; a Pha ires IEEE-1 vice Driver High Force 6 The Phant s shown in F grees of fre t 3 degrees o RX160. m Premium of Pentium® ntom Comm 394a-2000 (PDD). 6DOF hapti tom haptic Figure 1.3. eedom. The of freedom m 1.5 High ® II class munication compliant ic device is

(35)

Output C AC Inpu Input Fr AC Curr Inrush C The Phant parallel po Power sup device are and base m In some ap switches c the switch continue t Figur After com software c The Phant application interface o The devic in Table 1 Current Rat ut requency rent Current tom Premiu ort. To enab pply and par e shown in motor switc

pplications, can be used hes are turn

o be powere re 1.5 : Soc mpleting the can be used tom Test s ns to check of the Phant ce specificat .3. Table 1 W ting um 1.5 High ble the comm

rellel port s Figure 1.5. hes. , the motors d to cut off ned off, the

ed. ckets and sw required in to verify th oftware als k the commu tom Test so tions of the 7 .2 : Power With Intern 200 ̴ 2 h Force 6DO munication, socket of the . The two s s need to be the powers e motor po witches of th nstallations he installatio so provides unication be oftware is sh e Phantom P Specificatio nal Auto-Sw 240 VAC (a OF haptic d , PDD must e Phantom P switches in e deactivate s of the mot owers are cu he Phantom and cable c ons and con

a calibrati etween the hown in Fig Premium 1. ons[9]. witching Po uto-switchi 5 A / 115 15 A / 115 device is con t be installed Premium 1. the Figure d for differe tors by turn ut off, how m Premium 1 connections nnections. on interface PC and the ure 1.6. 5 High For ower Supp 100 ̴ 120 ing power su 50/ 5 V, 2.5 A / 5 V, 30 A / ntrolled thro d on the PC .5 HF 6 DO 1.5 are the ent purpose ning of them wever, the e 1.5 HF 6 DO s, the Phant e and some e haptic dev rce 6DOF a ly 8.3 A 0 VAC upply) /60 Hz 230 V 230 V ough the C. OF haptic e gimbal es. These m. When encoders OF. tom Test e simple vice. The are given

(36)

Worksp Footpri Range o Nomina Backdri Maximu (nomina Continu (nomina Stiffnes Inertia ( -withou Force F Position Interfac Support GHOST Compat OpenHa Compat pace nt of Motion al Position R ive Friction um exertabl al position) uous exertab al position) ss (apperant m ut encoder g Feedback n Sensing ce ted Platform T® SDK tibility aptics™ To tibility Figur Table Resolution n le force ble force mass at tip) gimbal ms oolkit re 1.6 : Phan e 1.3 : Devic Phantom 8 ntom Test I ce Specifica m Premium Translation Rotation Ro Ro (roll, Interface. ations[9]. 1.5 High F nal= 381 W Rotationa Lower a nal= Yaw& otational= Y otational= Y pitch, yaw orce 6DOF x 267 H x al= Yaw: 29 Pitch: 26 Roll: 33 330 W x 2 arm pivotin 0 Pitch: 0.002 Roll: 0.00 Yaw&Pitch: Roll: Yaw&Pitch: Roll 3.5 upon speci Pa Intel-Upon spec F 191 D mm 97 degrees 60 degrees 35 degrees 254 D mm ng at elbow 0.0007 mm 23 degrees 08 degrees 0.2 N 37.5 N 188 mNm 170 mNm 6.2 N 515 mNm l: 48 mNm 5 N <159 g x, y, z x, y, z ial request) arellel Port -based PCs cial request Yes

(37)

9

The workspace of the Phantom 1.5 High Force 6DOF haptic device is physically limited by using mechanical stops. The device must be operated in this workspace. GHOST® SDK and OpenHaptics™ Toolkit are two Software Development Kits, which are generated to use in haptics applications.

(38)

10

(39)

2. HAPT Haptics te sense of kinesthetic Haptic int between th the force haptic inte In 1970s manipulat building a In the earl graphics objects in objects we The spectr is shown i TICS erm is deriv touch”. Th c sensations terfaces are he user and feedback to erface appli and 1980s tion and p autonomous ly 1990s, ha technology n 1960s. Ho ere possible rum and tre in Figure 2. Figu ved from Gr he haptics s into the hu the haptic d the virtual oward the u es the comp s, significan erception b robots[11]. aptic applica . Knoll de owever, ha e in the early end for Hap

1. ure 2.1 : The 11 reek word “ is the scie uman-comp devices wh l environme user for int puted force nt research by touch a . ations were emonstrated aptic interac y 2000s and pto-Audio-V e spectrum 1 “haptesthai” ence of inc puter interac hich stimula ent. Haptic teracting w feedback to h studies in and initially e begun to b d haptic in ctions with d are still de Virtual-Envi and trend fo ” and mean corporating ction.

ate the sens rendering a ith the virtu o the user. n robotics b y researche be combined teraction w complex c eveloping. ironment (H for HAVE[1 ns “pertainin the tactile se of the int algorithms c ual objects began to f es concern d with the c with simple computer-si HAVE) app 11]. ng to the e and/or teraction compute and the focus on ned with computer e virtual imulated lications

(40)

The hap can be divided Human mechan importa General and the mechan ruffini bandwid moveme kinesthe aproxim mechan left side on the r Figure Machin machine Comput using ap the grap ptics has a achieved by into three a haptics: Fo nical, sensor ant. Therefo lly, the hap e kinestheti noreceptors endings. D dth. The k ent of the etic sensin mately 30 H noreceptors e and the ki right side in e 2.2 : Appr kinest ne haptics: T es for replac ter haptics: ppropriate s phical interf broad range y combinin areas: huma or developi ry, motor an

re, the hum ptic percept ic sensing. such as Me Different cu kinesthetic s parts of th ng bandwi Hz and 5-10 with their o nesthetic se Figure 2.2. roximate sen thetic and th The machine cing or scal The objecti softwares fo faces. e of applica ng different an haptics, m

ing the opti nd cognitiv man hapics c ion is divid The tactil eissner corp ultaneous m sensing pro e body suc idth and 0 Hz respec own approx ensing and t . nsing frequ he range of e haptics co ling the hum ive of the co or rendering 12 ation areas disciplines machine hap imal haptic ve subsystem concerns wit ded into tw le sensing puscle, Pacin mechanorec ovides the ch as the m the kines ctively[12]. ximate sens the kinesthe uencies of th f the kinesth oncerns with man touch. omputer hap g the touch a and multid s. In referen ptics and co c application ms of huma th these top wo sensation is achieve nian corpus ceptors hav information muscles, ten thetic con Different ty sing frequen etic control he cultaneou hetic control h design, co ptics is gen and feel of t disciplinary nce [6], the omputer hap ns, understa n tactile pe ics. ns: the tacti ed by the scle, Merkel ve their ow n about po ndons and j ntrol bandw ypes of the ncy are sho

bandwidth us mechanor l[12]. onstruction erating the the virtual o researches e haptics is ptics. anding the erception is ile sensing cultaneous l disks and wn sensing osition and joints. The width are cutaneous own on the are shown receptors, and use of algorithms objects and

(41)

2.1 Virtua Virtual re enables th human sen industry an Fundamen auditory computes rendering the human feedback v Figure 2 2.2 Hapti The haptic It allows interfaces. The hapti [11]. The algorithms The collis proxy and The force-and the vir The contr considerin al Reality ( eality or im he user to nsations wi nd science. ntal block and haptic the behavi algorithms n operator. via visual d .3 : Basic a auditory c Renderin c rendering the user to . c rendering ese three b s. sion-detecti d a virtual ob -response al rtual object rol algorith ng the haptic (VR) mmersive v interact w ith compute Therefore, diagram of feedback or of the v compute th Then, the isplays, aud architecture y and haptic ng is the proc o touch, fee g is splitted locks inclu on algorith bject by usin lgorithms c . hms compu c interface d 13 virtual reali with the gen

er and mac the VR has f a virtual is shown virtual envir he graphic, human op dio and hapt

for a virtua c feedback[1 cess of user el and man d into three ude collisio hms give th ng position compute the

ute the clos device capa 3 ity is a co nerated virt chine skills s a wide ran reality app in Figure ronment. Th sound and erator perc tic devices. al reality app 11]. r interaction ipulate the e main bloc on-detection he collision information e ideal intera sest force t abilities. omputer-gen tual enviro can spread nge of applic plication in 2.3. The he visual, a force/torqu eives video plication inc n with the v virtual obj cks as prev n, force-res ns and pene n. action force to the idea nerated me onment. Co d to many f cation areas ncorporating simulation auditory an ue feedback o, audio an corporating virtual envir jects via th viously prop sponse and etrations be e between th al interactio edia and ombining fields of s. g visual, n engine nd haptic k toward nd haptic g visual, ronment. he haptic posed in control etween a he proxy on force

(42)

2.3 Ope The O program code ex version QuickH (HLAPI The Qu range o haptic/g The HD force/to The HL it with graphics The gen the hapt HHLRC with the respecti F enHaptics S OpenHaptics mming tools xamples. It 3.1 is use Haptics micr I). uickHaptics of default graphic scen DAPI provi orque render LAPI provid the Open s processes neral schem tic device h C is the HL e haptic de ively. Figure 2.4 : SDK(Softw s toolkit i s, PHANTO is provide ed in this s ro API, Ha micro API parameters nes.

ides the low ring. des high-lev nGL® API can be achi me of an Op handle and i haptic rend vice. The g : Haptic ren ware Develo is a Softw OM® Devic ed by Sens study. The aptic Devic enables fa s. It requir w-level inte vel haptic re . Haptic a ieved with t penHaptics it needs to b dering conte graphics an 14 ndering bloc opment Kit ware Deve ce Drivers (P sAble techn APIs of th ce API (HD

ast and easy res minima eraction wi endering an applications the HLAPI. application be initialize ext. The HH nd the servo ck diagram[ t) elopment K PDD), docu nologies. O he OpenHa DAPI) and y programm al amount

ith the hap

nd enables th s including . is shown i ed and confi HLRC uses o loop runs 11]. Kit includi umentation OpenHaptics aptics Toolk Haptic Li ming through of codes ptic device he program advanced n Figure 2. igured by th the HHD t at 30 Hz a ding APIs, and source s® Toolkit kit 3.1 are ibrary API h the wide to set up and direct mmer to use computer .5. HHD is he HDAPI. to interface and 1 kHz

(43)

2.3.1 Ope OpenGL i which pro The Open programm from verte that are te The geom utilized to In the clip splitted fro Rasterizat and this da Fragments in the fra displays th F enGL(Open is a cross-la oduces 2D a nGL render mable opera ex arrays. T ssellated in metry shader o process the pping stage om outside tion refers th ata is used t s are rectan agment sha he framebuf Figure 2.5 n Graphics anguage an nd 3D comp ring pipelin ations. Basi These vertex the tesellat r is a primit e incoming e, primitive primitives. he conversi to compute ngular array ader stage. ffer. 15 : The Open Library) A nd cross-pla puter graph ne is given ically, verte x attributes tion stage. tive assemb primitives i es which ar ion of the g the final da ys and their Finally, th 5 nHaptics ove API atform appli hics. n in Figure ex shader p describe th

bly step and in this stage e located in

geometric da ata for pixel

color and d he interface erview[8]. ication prog 2.6. The b performs th he boundarie d user-define e. nside the v ata to a seq s in the outp depth prope e window gramming i blue boxes he vertex a es of the pr ed function viewing vol quence of fr put framebu erties are pr of the app interface are the attributes rimitives ns can be lume are ragments uffer. rocessed plication

(44)

2.3.2 Q The Qu QuickH fundam QHRen The De workspa The QH and QH used to Win 32 In this s OpenGL Howeve Figure uickHaptic uickHaptics Haptics mic mental four nderer, Shap eviceSpace ace of a spe HRenderer c HGLUT are create wind API and Op study, the Q L. The Ope er, these com

e 2.6 : Diag cs micro AP s micro AP ro API cla classes o pe and Curso defines fo ecific Phanto class draws e two classe dows. The Q penGL Util QHGLUT c enhaptics S mmands are ram of the O PI PI is used asses and p of the Qui or class. orce parame om haptic d s the scene es inherited QHWin32 a lity Toolkit. lass is used SDK has its e based on t 16 OpenGL ren d with C/C properties a ickHaptics eters and u device. both graph d from the and the QH . d to take the s own com the OpenGL ndering pip C++ progra are given i micro AP user interac hically and QHRender HGLUT are e advantage mmands to g L API. eline[13]. aming langu in Appendi PI are Dev ction with haptically. er class an generated t e of the utili generate a guage. The ix A. The eviceSpace, the haptic QHWin32 nd they are to use with ities of the 3D space.

(45)

The Open haptic ren projection image on t The defau in the wor generate a The defau viewing an The world plane and between th and the far for the app

nHaptics use ndering alg n of the Ope the compute ult camera lo rld space ha a global bou ult viewing ngle is 45 Figur d space has d they are s he near and r plane mus plication. es the Open orithms of enGL 3D w er screen is ocation of t as a boundin unding box t g direction as shown in re 2.7 : Defa two clippin shown in F d the far cli st be set to e 17 nGL to def the define world space a 2D repre the QuickH ng box that that contain of the cam n the Figure fault QuickH ng planes. T Figure 2.8. ipping plan encompass 7

fine the geo ed geometri is displayed sentation of aptics is sh encloses its ns all of the mera is alon e 2.7. Haptics cam These plane Here, the ne of the wo the virtual e ometries and ies. In the d on the com f a 3D frustu own in Figu self. All of t shapes insid ng the z-ax mera location es are the ne camera see orld space. environmen nd to implem imaging st mputer scre um. ure 2.7. Eac the boundin de it. xis and the

n[8]. ear and far es only the Therefore, nt which is d ment the tage, the een. This ch shape ng boxes e default clipping volume the near designed

(46)

The Sha of the S class. Pr shape cl The Tri formats modelin design a The Cu “haptic workspa the virtu The po OpenHa compute Figu ape class is Shape class roperties lik lass. iMesh prim . These are ng software a 3D model ursor class d interface p ace of the h ual environm sition infor aptics comm es the posit ure 2.8 : De s the base c are Line, P ke color, tex mitive is a e the some es can produ , they can b defines the point”[8]. T haptic devic ment. rmation of mands. The ion value. efault clippi lass for the Plane, Cone xture, positi 3D model of the stan uce these fi be converted interaction The user co ce and the the haptic e OpenHap 18 ing planes f e geometry e, Cylinder, ion can be a and includ andart 3D m ile formats. d to these fi point in th ontrols the h haptic inter c interface ptics reads t for world sp operations. Sphere, Bo applied to th des .stl, .ob model file f If another le formats. he world sp haptic inter rface point point is ob the encode pace[8]. The inherit ox, TriMesh hese primiti bj, .3ds and formats. A file format

pace and thi rface point controls th btained by rs of the m ited classes h and Text ives by the nd .pyl file lot of 3D t is used to is is called inside the he proxy in using the motors and

(47)

The haptic shown in F interface p The defau Since, com interaction micro API The curso class assoc The locati The world is obtaine cursor int provided b classes. c interface Figure 2.9. point. ult cursor is mputing the n with all o I. r class uses ciation is sh ion of the h d space info d from the eraction is by the shap point of the The proxy i Figure s a blue con e cursor pos f the compo

s all the othe hown in Fig haptic inter ormation (tr QHRender obtained fr e class. Thu 19 e Phantom in the virtua 2.9 : Hapti ne and a T sition in the onents, it u er classes to gure 2.10. rface point ransformatio rer class. T rom the sha us, the cuso

9 Premium 1 al environm ic interface TriMesh mo e world spa uses all of th

o get the req

is obtained on from dev The informa ape class. T or class gets .5 6DOF H ment is contr point. odel can be ace requires he classes o quired infor d from the vice space t ation of the The cursor the inform High Force m rolled by th used inste s informatio of the Quick rmation. Th DeviceSpac to the worl e virtual obj information mation from model is his haptic ead of it. on of the kHaptics he cursor ce class. d space) jects for n is also all other

(48)

The Qu needs to are used before t uickHaptics o be defined d in a singl the shapes a Figu Figure 2.1 micro API d. Then, the le applicati are defined. ure 2.11 : Q 10 : The Cu program fl e flow order

on, the Dev

QuickHaptic 20 ursor class a low is show r can be ch viceSpace m cs micro AP association[8 wn in Figure hanged. If m must be de PI program f 8]. e 2.1. First, multiple hap fined for ea flow[8]. a window ptic devices ach device

(49)

21 2.3.3 HDAPI

The HDAPI provides low-level haptic rendering. Control and haptics algorithms can be applied to the haptic applications with the HDAPI by using the motors and the encoders directly. Therefore, it has an important role in haptics researches.

The HDAPI can be used to query the device capabilities and parameters during the application.

The servo loop is a control loop for computing force algorithms and sending the forces to the haptic device. The servo loop can be adjusted by the HDAPI and needs 1 kHz or higher haptic update rate for a stable force feedback. To obtain this high update rate, the servo loop should be executed in a particular high-priority thread. There are two fundamental components in the HDAPI involving the device and the scheduler. The device component provides the communication process with the haptic device. The device processes comprise device initialization, device safety and device state.

The device initialization is about the communication settings with the haptic device. The device safety includes the device protection routines and controls the safety parameters of the haptic device like maximum velocities, maximum forces and motor tempratures. The device state provides the settings and queries about the haptic device.

The scheduler enables the user to access the servo loop with routines. Thus, forces, which will be applied to the haptic device can be sent to the servo loop and the device state informations can be obtained.

A typical program flowchart of the HDAPI is given in Figure 2.12. The main operations of the HDAPI are realized in the servo loop.

A typical application starts by initializing the haptic device. Then, force output is enabled and the scheduler is started. Afterwards, the haptic frame is begun in servo loop. In the servo loop, the haptic rendering algorithms are run and then, the haptic frame is stopped. These haptic frames are repeated until the haptic rendering algorithm is stopped.

After the servo loop is stopped, finally, the scheduler is stopped and the haptic device is disabled.

(50)

2.3.4 HL The HL OpenGL color an LAPI LAPI is use L API. The nd texture, Figure 2. ed for grap e HLAPI p camera pr 12 : HDAP phic renderi provides the roperties an 22 PI program f ing. It is a e graphic s nd location flowchart[8 high-level cene prope and arrang ]. API, which rties like b gement of ch uses the background the matrix

(51)

stacks. Th material p can be ach functions as well. The Opne OpenGL, shapes. In the dep buffer and algorithm, In the fee captured i feedback b sent to the Proxy me object” an haptic dev can’t pene device pos The HLAP assuming the surfac virtual obj he geometri properties, c hieved by t such as col GL comma there are t pth buffer sh d the HLAP , calculates dback buffe n the OpenG buffer and a e haptic dev ethod is use nd follows t vice and the etrate the su sition) pene PI calculate the existenc e of the sh ject surface ies can be colors, textu the HLAPI llision detec ands can be two possib hapes meth PI gets the the forces, fer shapes m GL feedbac applying the vice. ed for hapt the haptic i e world spac urface of th etrates the su es the conta ce of a virtu ape. The sp by the HLA 23 imported t ures and mo . The HLA ction, the st used in the ble ways: d

hod, the Ope image from which will method, the ck buffer an e force algo tic renderin interface po ce (graphic he shape, w urface of th act forces, w ual spring-d pring-dampe API is illust 3 o the world otions like tr API enables tylus button e HLAPI. T depth buffer enGL rende m the depth be sent to th geometry nd the HLAP orithm, calcu ng. The pro oint conside space). If th whereas, the he shape. which will b damper mec er mechani trated in Fig d space by ranslation, r the user to n queries an To capture a r shapes an

ers the geom buffer and he haptic de is rendered PI gets the g ulates the fo oxy is calle ering the ma he proxy tou e haptic inte be sent to th hanism betw sm, which gure 2.13. y the HLAP rotation and o set event nd impleme a geometry f nd feedback metries to th d applying t evice. d by the Op geometry o orces, which ed “SCP” o apping betw uches a geo erface point he haptic d ween the pr is placed u PI. Their d scaling callback entations from the k buffer he depth the force penGL is ut of the h will be or “god-ween the ometry it t (haptic evice by roxy and under the

(52)

A typic starts w between In the n are perf geometr 3D curs In the H Therefo operatio The hap beginnin cal program with the Op n the haptic next step, pr formed. Th ry in the ha sor is render F HLAPI, all t ore, before

ons, the hap ptic frames ng of the h Figur m flowchart penGL setu device and ocess event he depth or aptics render red. Then, th Figure 2.14 the haptic r these opera ptic frame m s inside the haptic fram re 2.13 : Th of the HL up and the d the graphic ts such as co r the feedb ring. After he loop con : The HLA rendering op ations, a ha must be term e HLAPI p me, the curre

24 he proxy pos LAPI is give HLAPI in c workspace ontact detec back buffer graphics an ntinues with API program perations ar aptic frame minated. program ar ent haptic r sition[8]. en in Figur nitialization e is carried ction and sty

method is nd haptics re h the process m flowchart re realized must be st re given in rendering s re 2.14. Th . Then, the out. ylus button s used to c endering op s events step [8]. inside a hap tarted and Figure 2.1 tate is obta he program e mapping operations capture the perations, a ep again. ptic frame. end of the 15. At the ained from

(53)

haptic thr processed Figu 2.3.5 Mul In comput independe or multipl The multit parellel pr operation. programm A basic sc read and at and the pro

ure 2.15 : T ltithreading ter program ently by an e threads in threading pr rocessing, a There are ming. Multith cheme of a s the end of oxy position The haptic fr g mming, a th operating s n a compute rovides the an operation several met hreads, whi single threa 25 f the haptic n is updated frames insid hread of exe system sche er program. concurrent n does not n thods to pro ich processe ad and multi 5 c frame, ha d. de the HLAP ecution is a eduler. Ther execution o need to wait ocess an app es parellely iple threads aptic render PI program a routine th re can be ei of multiple t the termin plication pa are used in are shown ring operat flowchart [ hat can be a ither a singl threads. Du nation of an arellely in c n this study. in Figure 2 tions are 8]. accessed le thread ue to this n another computer .16.

(54)

The file own reg Multithr generall threads and serv stable fo Hz for h The one For exa servo an situation are the t process call ret informa using sy 2.3.6 M In gene (graphic

es, data and gisters and s reading can ly, there is a in a typical vo thread. T force feedba human eye p e of the imp ample, since nd other thr n, asynchro two operatio is finished turns instan ation can be ynchronous Mapping the erally, the d cs space) code are co stack. Fig n be utilize a main appl l haptics app The servo lo ack. Wherea perception. portant topi e the servo reads can c onous calls ons of the s and the app ntly. When e logged un call. Thus, e device spa device spac have diffe ommon for gure 2.16 : T ed for diff lication thre plication. T oop needs t as, the grap

cs for a mu o thread run ause to tim can be use cheduler. T plication thr n a proces ntil it is que the applica ace to worl ce (the hapt erent dime 26

all the threa

Thread stru ferent purpo ead called “ The addition to run appro phics loop n ultithreading ns at a high me delays fo

ed. The syn The synchro read waits i s was star eried. Then ation is threa ld space tic device w ensions fro ads. Howev ctures. oses in hap “client threa nal threads a oximately a needs to run g applicatio h rate, shar or haptic ren nchronous a nous call re its completi rted betwee , the inform ad-safe. workspace) om each o ver, each thr ptics applic ad” and two are the graph at 1000 Hz t n approxima

on is the thr ring the dat ndering. To and asynchr eturns the da

on. The asy en two thr mation can b

and the w other. Ther

read has its

cations. In o additional hics thread to obtain a mately at 30 read safety. ta between o avoid this ronous call ata after its ynchronous reads, that

be queried

world space refore, an

(55)

appropriat workspace a predefin virtual spa There are HL_VIEW The mapp shown in scene. Th world to c The view workspace haptic dev parent co transforma Figur The HLA uniform m different a 2.3.7 Cali The posit encoder d reasons li haptic inte application and shoul inkwell ca te mapping e of the hap ned sub-wo ace and it ca two matrix WTOUCH_M ping between Figure 2.1 he world-vie camera coor -touch mat e to view c vice indepen ordinate sy ation, which re 2.17 : Th ma API provides mapping is axes. The Q ibration tion of the data. Howev ke overvelo erface point n start. The ld be check alibration an must be d ptic device. A rkspace can an be define stacks for m MATRIX a n the world 7. The wo ew matrix rdinate fram rix is the t coordinates ndent of the ystem of th h transform he haptic dev apping[8]. s both unif a mapping uickHaptics haptic int ver, some o ocity. This t. Therefore e calibration ked during nd auto calib 27 done betwee According t n be used ed dependin mapping op and HL_TO d coordinate orld coordin is the trans me. The view

transformat s and includ e workspac he workspa ms the works vice worksp form and n g method, s micro API terface poin of the enco causes inc e, the haptic n data can g the applic bration met 7 en these sp to the appli in the appl ng on the dim peration in t OUCHWOR es and the de nates are th sformation w coordinat tion matrix, des the rot e mapping. ace. The to space to the pace coordi non-uniform which incl I uses a non nt is calcul der data ca correct calc c device nee also be co cation. Har thods are the

paces. The d cation, all o ication. Th mensions of the HLAPI. RKSPACE_ evice works he coordinat matrix, wh tes are the c , which tra ations and The touch ouch-worksp view coord nates to wo m mapping m ludes the d n-uniform m lated accor an be misse ulation of eds to be ca rrupted dur rdware rese e general ca device spac of this work he world sp f the applic . These mat _MATRIX a space coord ates of the hich transfo camera coor ansforms th translation coordinate pace matrix dinates. orld coordin methods. T different sc mapping by rding to th ed because the position alibrated, be ring the app et of the e alibration m ce is the kspace or pace is a ation. rices are and 4x4. dinates is graphics orms the rdinates. he haptic ns of the s are the x is the nates The non-cales for default. he motor of some n of the efore the plication encoders, methods.

(56)

The har devices Then, th The ink fixture. point. T In the a the devi The Op with the The PH moveme applicat rdware rese . The links he encoders kwell calibra This fixtu Then, the de auto calibrat ice moves, t penHaptics e PDD (PHA HANTOM T ents and u tion, it can b et of the en s are placed s are reseted Figu ation can be ure constrai vice is calib tion method the calibrati SDK provi ANTOM D Test progra ses the the be used for coders meth d at the ort d. ure 2.18 : C e applied on

ins the tran brated. d, the devic ion is updat ides the PH evice Drive am has a c e hardware the initial c 28 hod can be thogonal po Calibration p nly the devi nslation and ce calibratio ted. HANTOM ers). calibration reset of th calibration o e used for a osition as sh position. ces having d rotation o on is checke Test progra interface v he encoders of the device all PHANTO hown in Fi an inkwell of the haptic ed periodica am and it i visualizing t s. Before r e. OM haptic igure 2.18. calibration c interface ally. When is installed the device running an

(57)

The Phant haptic dev The PHAN tom Test s vice such as NTOM Test oftware als the velocity t interface i Figure 29 so gives som y limit or th is shown in 2.19 : Calib 9 me informa he motor tem Figure 2.19 bration inte ations and w mperatures. 9. erface. warnings a bout the

(58)
(59)

31 3. MODELING OF 3 DOF STAUBLI RX160

In this chapter, the geometric, kinematic, static and dynamic models of the 3 DOF Staubli RX160 manipulator are derived.

3.1 Geometric Model

The geometric model consists of the forward and inverse geometric model. The homogeneous transformation matrices are the fundamental computation tools for the geometric model. By defining homogeneous transformation matrices, the computations of the forward and inverse geometric model are achieved.

3.1.1 Homogeneous transformation matrices

In robotics, transformation between frames is a crucial topic since, computing the location, position and orientation of robot links relative to each other or specific frames are the basic calculations of robotics.

The transformation matrix expresses a frame according to a frame describing translations and rotations between these two frames.

(4X4) Homogeneous transformation matrix structure is used in this study. represents translations and rotations of a frame with respect to a frame . The matrix form is stated in Equation (3.1).

0 0 0 1 0 0 0 1

(3.1)

( , and ) expresses the (3X3) rotation matrix and expresses the translation vector. Since, is orthogonal:

(60)

32 However,

(3.3)

Illustration of is stated in Figure 3.1.

Figure 3.1 : Transformation between frame and frame .

The transformation matrix including only translation is expressed as Trans(a,b,c), where a,b and c denotes the translation along x,y and z axes.

1 0 0 0 1 0 0 0 1 0 0 0 1

(3.4)

The translation matrix including only rotation about principle axes (x,y,z) by an angle θ is expressed as Rot(x,θ), Rot(y,θ) and Rot(z,θ). Whereas, rot(x,θ), rot(y,θ) and rot(z,θ) denotes the (3X3) orientation matrices about x, y and z axes by an angle θ.

Equation (3.5), (3.6) and (3.7) are shown Rot(x,θ), Rot(y,θ) and Rot(z,θ) matrices.

Rot x, θ 1 0 0 0 0 0 0 0 0 0 0 1 0 rot x, θ 0 0 0 0 0 1 (3.5)

Referanslar

Benzer Belgeler

Sadrazam Müşir Edhem Paşa'nın oğlu olan Osman Hamdi Bey, Hukuk öğrenimi için gittiği ve 12 sene kaldığı Paris'te Şeker Ahmet Paşa, Süleyman Seyyit gibi dostlan

In this article, IKEA Place App, by the renowned furniture retailer, is explored con- cerning its service innovation to offer its customers with an outstanding digital experience

[r]

Bu tanta­ nalı debdebeli ihtişam günlerini ge­ ride bırakan devirden sonra yapıl­ mış, kışlaya benzeyen, zevksiz ve senelerden beri mektep ve sonra Kandilli

Bir tarafta, es­ ki saltanatı şahsiye, an’ane ve itiyadlarından zerresi terke- dilmemiş, aynı saraylar, aynı hademeler, aynı merasim, aynı teşrifat, aynı

Atatürk günü için bana mektub ya­ zan öğretmen arkadaş, «A ta Kitab» ı tekrar tekrar, dikkatli dikkatli, ve not ala ala okuyun, bütün ömrüniizce, O -

We aimed to emphasize that lumbar disc pathologies may cause new onset pain in the patients with amputated limb and should importantly take a place in the differential diagnosis

What is reflected in the mirror corresponds to different psychological stages of the human and Lacan categorizes them in three orders, imaginary, symbolic, and real