MAKİNA EĞİTİMİ BÖLÜMÜ
Transkript
MAKİNA EĞİTİMİ BÖLÜMÜ
MAKİNA EĞİTİMİ BÖLÜMÜ TEZİN ADI : ENDÜSTRİYEL ROBOT KOL PROTOTİPİ TASARIMI ADI SOYADI : Fatih AYTA NUMARASI : 0105. 04016 DANIŞMANI : Yrd. Doç. Dr. Ergün NART T.C. SAKARYA ÜNİVERSİTESİ TEKNİK EĞİTİM FAKÜLTESİ MAKİNA EĞİTİMİ ANABİLİM DALI OTOMOTİV ÖĞRETMENLİĞİ ENDÜSTRİYEL ROBOT KOL PROTOTİPİ TASARIMI BİTİRME ÖDEVİ ADI SOYADI Fatih AYTA ANA BİLİM DALI: Makine Eğitimi BÖLÜMÜ : Otomotiv Öğretmenliği Yapılan Tez, SAÜ. Teknik Eğitim Fakültesi Bitirme Tezi Yazım Kurallarına Uygundur ve Tarafımdan Yönlendirilerek Yapılmıştır. İmza Yrd. Doç. Dr. A. Ergün NART Bu Tez Makine Eğitimi Otomotiv öğretmenliği Bölümü Bitirme Tezi Jürisi Tarafından Kabul Edilmiştir. ......................................... Jüri Başkanı ................................... Jüri Üyesi ................................. Jüri Üyesi ÖNSÖZ Gelişen teknolojiyle birlikte bir yarış halini alan yazılım dili ve programlama, tasarımların günümüzde çok daha kısa zaman ve çalışmalar neticesinde ürün haline dönüştürülebilmesini mümkün kılmaktadır. Bu tasarım benzetim programlarının en kapsamlısı ve kullanılabilir niteliğe sahip olanı olarak tercih edilen CATIA tüm içeriğiyle hareketlendirme, analiz ve tasarım açısından kullanıcılarına tam yeterlilik notu verebileceği boyutta bir programdır. Bu çalışmada örnek bir robot tasarımının evrelerinden önce neler olması gerektiği ve tüm detaysal incelemeler açık bir dille kapsamlı bir şekilde anlatılmaya çalışılmıştır. Çalışmanın ilerleyen kısımlarında basit, ucuz ve aynı zamanda üretilebilir bir potansiyel sahip olan bir robotun ne gibi tasarım evrelerinden geçerek üretimin gerçekleştiğini kavrayabileceksiniz. Tasarımda ortaya çıkarılabilecek ürünler tamamıyla kullanıcıların yetenek ve hayal gücüyle sınırlıdır. Gelişen yazılım dili ve programcılık adından sıkça bahsedeceğimiz CATİA’yı tam donanımlı bir ürün geliştirme yazılımı haline getirmiştir. Tasarıma yakın olduğunuzu düşünüyorsanız bilmeniz gereken çoğu program arasında birçok seçim yapma imkânınız olduğunu zamanla anlayacaksınız. Mümkün olan en iyi seçim en pahalı ya da en gelişmiş gözüken yazılım doğrudur mantığından çok; en kullanışlı ve fonksiyonel yazılımınızı keşfetmektir. Gerisi sizlerin düşünce ve üretim yaratıcılığınıza kalmış. TEŞEKKÜR Öğrencilik yıllarım boyunca eğitimimin farklı zamanlarında farklı sorumluluklar aldım ama yüksek öğrenimimin bu son yılında bu denli büyük bir projenin sorumluluğunu üstlenmemde hayatım boyunca desteklerini ve sevgilerini bir gün dahi esirgemeyen Sevgili Aile’me ve bana bu projemde her türlü desteğini sunmaya çalışarak ilgi ve zamanını esirgemeyen bitirme danışmanım Sayın Hocam; Yrd. Doç. Dr. Ergün NART’ a da ayrıca teşekkürlerimi sunarım. İÇİNDEKİLER TEŞEKKÜR....................................................................................................... ii İÇİNDEKİLER ................................................................................................ iii ŞEKİLLER LİSTESİ ....................................................................................... vii ÖZET................................................................................................................. ix BÖLÜM I ROBOT SİSTEMLERİ ve PROJE TANITIMI 1 [1.1] Proje Kavrami 1 [1.2] Projenin Hedef ve Kapsamları 1 [1.3] Projeden beklenen sonuçlar. 1 BÖLÜM II ROBOTLARIN SİSTEMSEL YAPILARI 2 [2.1] Genel Olarak Bir Robot Kavramı: 2 [2.2] Robotların Tarihçesi: 3 [2.2.1] Robot Kavramının Doğusu: 3 [2.2.2] Robot Kavraminin Gelisimi: 5 [2.3.1]Robot Nedir ? 7 [2.3.1.1] Robotu Oluşturan Parçalar 8 [2.3.1.2] Eklem Yapıları 8 [2.3.1.3] Manipülatörlerin Sınıflandırılması 9 [2.3.4] Günümüzde kullanilan belli basli robot örnekleri: 12 [2.3.5.1] Fiziksel Olarak Robot Kol 12 [2.3.5.1.1] Temel Fizik Kavramları ve Hareket Teoremi 14 [2.3.5.1.2] Kinematiksel İnceleme 15 [2.3.5.1.3] Üç Boyutlu Tasarım ve Matematik 16 [2.3.5.1.3.1]Eksensel döndürme: 16 [2.3.5.1.3.2]İki adet iki boyuttan üçüncü boyut kavramı: 16 [2.4.] Mekanik Olarak Robot Kol: 19 [2.4.1] Mekaniğin Temelleri: 19 [2.4.2] Eklem Analizi: 20 [2.5] Gücün Ağırlığa Oranı: 21 [2.6] Mekanik Açıdan Robot Kol: 21 [2.6.1] Mekanik Kısıtlamalar: 21 [2.6.2] Madde Aşınması ve Ömür 21 [2.6.3] Mekanik İhmaller ve Sonuçları 22 [2.7] Mekanik Hareket 22 [2.8] Güç Devreleri: 22 [2.9] Ana Hatlarıya Sürücü Devreleri: 22 [2.10] Elektriksel Motorlar: 23 [2.10.1] DC Motorlar: 23 [2.10.2] Sürücü Devresi: 25 [2.10.2.1] Olumlu Olumsuz Yapıları: 26 [2.10.3] Adım Motorları: 27 [2.10.4] Servo Motorlar: 28 [2.11] Yapay Kas Sistemleri: 29 [2.11.1] Geri Besleme(Feed Back): 29 [2.11.2] Mağnetik Ortamlar: 30 [2.11.3] Potansiyometre: 30 [2.11.4] Mağnetik Encoder: 30 [2.11.5] Optik Encoder: 31 [2.12]Programlama Dili 32 [2.12.1] Robot Programlama Dilleri: 32 [2.13] Robot Sistemlerin Kontrolü ve Oluşan Konum Hatalarının Analizi 34 [2.14] Robot Kontrol Sistemleri 35 [2.14.1.] Açık Devre Kontrol Sistemleri 35 [2.14.2] Kapalı Devre Kontrol Sistemleri 37 [2.15] Robot Programlama Yöntemleri 38 [2.15.1] Kılavuz Programlama 39 BÖLÜM III ROBOTLARIN GENEL KİNEMATİK HESAPLAMALARI [3.2]Dönüşümler 40 [3.2.1] Dönme Matrisi 40 [3.2.1.1] Euler Açıları ve Gösterilimi 42 [3.2.1.2] Roll/Pitch/Yaw Açıları ve Gösterilimi 42 [3.2.1.3] Homojen Dönüşüm 44 [3.3] Düz Kinematikler 45 [3.3.1] Denavit-Hartenberg(DH) Dönüşümü 46 [3.4] Ters Kinematikler 50 [3.5] Hız Kinematikleri 53 [3.5.1] Jakobyen 53 [3.5.2] Tekillikler(Singülerlikler) 55 [3.6] Dinamikler 55 [3.6.1] Lagrange Eşitlikleri 56 [3.6.2]Newton-Euler(NE) Eşitlikleri 56 [3.7]Robotıcs Toolbox 58 61 BÖLÜM IV ENDÜSTRİYEL ROBOTLAR [4.1] ENDÜSTRİYEL ROBOTLAR [4.2] Endüstriyel Robot 62 [4.2.1] Kartezyen Robot 63 [4.2.2] Silindirik Robot Kolları 63 [4.3] Robot Tahrik Sistemleri 67 [4.3.1] Pnömatik 67 [4.3.2] Hidrolik 67 [4.3.3] Elektrik 67 [4.4] Çevre Birimleri 67 [4.4.1] Tutucular 67 [4.4.2] Kontrol Paneli 68 70 BÖLÜM V CATIA V5’DE BİR ROBOT TASARIMININ AŞAMALARI [5.1 CATIA 70 [5.1.1] Tasarım ve imalat avantajları FİZİKSEL HAREKETLENDİRME [5.2.1] Hareketlendirme Menüsü 72 [5.2.2] Hareketlendirme Fonksiyonları Part – Assembley -- Dmu Kınematıcs 73 [5.2.2.1] Yüzeysel ve Eksensel Hareketlendirme 73 [5.2.2.2] Prizmatik Parçaların Hareketlendirilmesi 74 [5.2.2.3] Silindirik Parçalara Hareketlendirme 75 [5.2.2.4] Küresel parçaların hareketlendirilmesi 75 [5.2.2.5] Farklı Parçaları Birleştirme 77 [5.2.2.6] Düz Yüzeylerde Dairesel Hareketlendirme 80 [5.3] ÖRNEK MEKANİZMA 83 SONUÇ…….…………………..……………………………………………... 99 KAYNAKLAR……………………………………………………………….. 100 EKLER……………………………………………………………………….. 103 ÖZGEÇMİŞ……………………………………………….………………….. ŞEKİLLER LİSTESİ TABLOLAR VE ŞEKİLLER LİSTESİ Şekil 1.1 Catia kullanıcı ara yüzü Şekil 2.1 Hareketlendirme ara yüzü Şekil 2.2 Var olan dosyayı açma Şekil 2.3 Hareketlendirme ikonu ara yüzü Şekil 2.4 Eksenlerin belirlenmesi Şekil 2.5 Yüzeyler belirlenerek hareketlendirme yapılır Şekil 2.6 Prizmatik parçanın çizgileri belirlenir Şekil 2.7Cylindirical komutu kontrol penceresi Şekil 2.8 Silindirik parçaların hareketlendirilmesi Şekil 2.9 Küresel parçanın hareketlendirilmesi Şekil 2.10 Düz yüzeylerde hareket Şekil 2.11 Farklı parçaların rijitlenmesi Şekil 2.12 Hareketlendirme ürün ağacı Şekil 2.13 Dişli sistemlerinin hareketlendirilmesi Şekil 2.14 Ürün ağacında işlemin tamamlanması Şekil 2.15 Ürün ağacı Şekil 2.16 Hareketlendirmede ürün ağacı Şekil 3.1 Hareketlendirilecek mekanizma Şekil 3.2 Alt taban sacı boyutlandırma Şekil 3.3 Alt taban sacı genişletilmesi yan görünüş Şekil 3.4 Gövde kolu boyutlandırılması Şekil 3.5 Gövde kolu içi boşaltılmasının şeffaf görünüşü Şekil 3.6 Gövde kolu ucundaki karşılık dişlisi tertibatı Şekil 3.7 Gövde kolu ile üst hareket kolu arasındaki sonsuz vida sistemi Şekil 3.8 Gövde koluyla bağlantısı olan ara iletim kolu Şekil 3.9 Ara iletim kolunun içi boşaltılmış şeffaf görünümü Şekil 3.10 Ara iletim kolu sonsuz vida karşılık dişlisi Şekil 3.11 Alt taban gövde motor bağlantısı Şekil 3.12 Gövde motor bağlantısı sonsuz vida dişlisi arka görünüş Şekil 3.13 Gövde motor bağlantısı sonsuz vida dişlisi profil görünüş Şekil 3.14 Gövde motor bağlantısı sonsuz vida dişlisi ön görünüş Şekil 3.15 Alt taban gövde motor bağlantısı sonsuz vida iletim dişlisi görünüş Şekil 3.16 Alt taban gövde motor bağlantısı sonsuz vida dişlisi bağlantısı Şekil 3.17 Gövde – İletim kolu motor bağlantısı sonsuz vida dişlisi Şekil 3.18 Gövde – Kısa kol arasındaki İletim Kolu ve motor bağlantısı Şekil 3.19 Gövde kolu motor bağlantısı Şekil 3.20 Robot mafsal ucu Şekil 3.21 Sonsuz vida milinin gövde tahrik motoruna bağlantısının yapılması Şekil 3.22 Gövde tahrik milinin revolute komutu ile sabitlenmesi Şekil 3.25 Gövde – İletim kolu bağlantısının oluşturulması Şekil 3.24 Döner gövdenin tabanla eksenleşmesi Şekil 3.23Sonsuz vida milinin Gear komutu kullanılarak yerleşimi Şekil 3.26 İlk İletim kolu ile Ara iletim kolu bağlantısı Şekil 3.27 İlk İletim kolu ile Ara iletim kolu bağlantısı sonsuz vida sistemi Şekil 3.28 Ara kol tertibatı Şekil 3.29Ara kol tertibatı sonsuz vida dişli sistemi bağlantısının oluşturulması Şekil 3.30 Ara kol bağlantısına Cylindirical komutu atanması Şekil 3.31 Uç mafsalının ara kol ile bağlantısı Şekil 3.32 Mekanizmaya Mechanism 1 atanarak Simülasyonun oluşturulması Şekil 3.33 Simülasyon arka profil görünüşü Şekil 3.34 Mekanizma All Edges görünüşte tam profili Şekil 3.35 Mekanizma üst görünüş Şekil 3.36 Mekanizma ön görünüş Şekil 3.37 Mekanizmanın Gövde motoru tarafından yan görünüş Şekil 3.38 Mekanizma kuşbakışı tam profili Şekil 3.39 Mekanizma Motor bloklarının ve Encoderlerin yerleşimi Şekil 3.40 Ara iletim kolu tarafından ya görünüş Şekil 3.41 Mekanizma İzometrim görünümü Şekil 3.42 Mekanizma hareket anında profil görünümü Şekil 3.43 Mekanizmanın sınırlarının kesitsiz görünüş Şekil 3.44 Mekanizma tam profili şeffaf görünüm Şekil 3.45 Mekanizma Trianciles görünümü Şekil 3.46 Mekanizma Trispi görünüm Şekil 3.47 Mekanizma sabit montajı Şekil 3.48 Mekanizma alt montajı Şekil 3.49 Hareketli Borunun içeri alınması Şekil 3.50 Mekanizma oluşturma Şekil 3.51 Hareketli borunun hareketlendirilmesi Şekil 3.52 Hareketlendirme ara yüzü Şekil 3.53 Ara kolun hareketli boruyla hareket verilmesi Şekil 3.54 Yapılan hareketli bağlantıda mesafe verilmesi Şekil 3.55 ara kolların boruya bağlantısı Şekil 3.56 Ara montajın içeri alınması Şekil 3.57 Parçanın hizalanması Şekil 3.58 Hareketlerin tanımlanması Şekil 3.59 Revolute Şekil 3.60 Hareketlerin tanımlanması Şekil 3.61 Mekanizmamızın hareket ettirilmesi ÖZET Catia yenilikçi kullanımı kolay Windows için hazırlanmış 3 boyutlu tasarım programıdır. Catia her türlü makine, tesis, ürün tasarımında kullanıcıya Windows’un kolaylıklarını kullanarak hızlı bir şekilde çizim yapılmasını sağlar. Catia parasolid prensibinde çalıştığı için kullanıcıya, tasarımın her aşamasında müdahale şansı vererek modelin boyutlarının, ölçülerinin ve ayrıntılarının istenilen şekilde değiştirilmesi imkanı vardır.saniyelerle ölçülebilecek zaman dilimlerinde teknik resim ve montajların yapılıp hareket kazandırılarak analizinin yapılmasına imkan verir. Tasarım ağacı ile yapılan işlemlerin sıraları ve yapıları değiştirile bilir. Üstelik yapılan değişiklikler sonucu varsa yapılmış olan montaj hareketlendirme veyahut analiz alanında güncelleşmektedir. Böylece kullanıcıya montajda, hareketlendirmede ve analizde parçaya müdahale imkanı doğar. Catia dünya üzerinde kullanılan ve işletmelerin kullanımına açık en iyi ve detaylı çalışma olanağı sunan tasarım programıdır. Dünyanın en büyük şirketleri tasarım firmaları, otomotiv üreticileri Catia’yı kullanmaktadır. BÖLÜM I ROBOT SİSTEMLERİ ve PROJE TANITIMI [1.1] Proje Kavrami Proje bir amaç için gelistirme, arastirma için yapilan ve yapilacak olan kavramlar olarak yer alsada üiversite ve dengi okullar için bu kavram yillarca alinan egitimin uygulamaya dökülerek amaca uygun çalismalardaki son sinav olmaktadir. Iste bu yüzden bir ögrenci için proje kapsami bence hayatinin diger yarisi için çok uygun temel ve çok güzel bir baslangiçtir. Eger ögrenci projesi ile yenilik ve avantaj getirebiliyorsa yada sistemleri yürütebiliyorsa egitimini tamamlamis ve üretim moduna geçmeye baslamis demektir. Ama bu asla var olan ve daha iyisi için yapilmayan projeler için çok büyük bir gerçegi ortaya koymaktadir. Sonuç olarak mutlak olarak alinan proje mutlaka bir yenilik yada özellik içermeli ve yapitaslari içermelidir. Aksi halde yapilan bir is arastirma mantiginin disina çikip kopyalama durumuna girer!. İste bu yüzden gelişmekte olan ve ihtiyaç duyulan bilgisayar destekli Robot Kol (eng: Robot ARM) tasarımını proje olarak seçtim. [1.2] Projenin Hedef ve Kapsamları Projede hedef robot kol mantığını daha esnekleştirip bilgisayar destekli insan kol yapısının yerini alabilecek bir yapıyı oluşturmaktır. Kol piyasada üretilen aşağıda görülen modellerden farklı olarak daha ekonomik ve geniş acili kullanıma hitap etmesi için yüksek hassasiyetli bir sistemi ayni zamanda düşük ama hızlı hassasiyeti düşük olarak da çalışabilecek bir yapıda da çalışabilmesi ve de asil olarak bilgisayar yazılım yapısının open-source mantığıyla kullanım alanlarının artırılıp sistem için sistem değil de herhangi bir olay için tasarım mantığının getirilmesidir. Robot Kol projesi benim için temel olarak aşağıdaki yapıları içermektedir: 1. Mekanik bakış Temel madde seçimleri - Eklem yapı ve yerleri - Bağlantı ve türleri 2. Hareket sistemleri Motor yapıları - Dişli kutusu - Encoder (Şayici) - Motor Kontrolcüsü - Mikroişlemci 3. Temel yazılım ve bilgisayara bağlantı. Mikroişlemci yazılımı - Port bağlantıları ve güvenli iletişim 4. Yazılım ve Uygulama teorileri [1.3] Projeden beklenen sonuçlar. Projemden beklenen sonuçların basında ebetteki tam sonuç isteniyor ama asil olarak bu tür uygulama geliştirme yapılarının da okul programlarında gerçekleştirilebileceği kanisinin okulumuza yerleşmesi ve bizim gibi geleceğe bakan öğrencilerin teşvik edilmesi. Unutulmaması gereken basarî sadece bir kişiye veya kuruma ait değildir başarı geçmişe katkısı olan ve su anda destek olan her sahsa aittir.. Ama asil önemli olan uygulamadaki başarının mutlak olması, projenin tamamlanarak bir sonraki aracın geliştirilmesine uygunlanmasıdır... BÖLÜM II -ROBOTLARIN SİSTEMSEL YAPILARI Temel olarak robotlar kapsam ve yetenkleriyle siniflandirilabilirler ama bence asil olarak yapisal yeteneklerine göre siniflandirilabilir: Kartezyen Robotlar: X,Y,Z koordinat düzleminde her kol bir öncekine göre dik açiyla kayar. Dikdörtgen sekline bir çalisma alanlari vardir. Silindirik Robotlar: Çalisma alanlari silindiriktir.Kolun bir bölümü dikey, diger bölümü ise yatay hareket eder. Polar Robotlar: Kol taban etrafinda dönebilir. Kolun bir parçasi içeri disari öteleme hareketi yapabilir. Bir bölümüde assagi yukari dönebilir. Revolüt Robotlar: Dönel veya küresel eklemler sahiptir. Taban eklemine bagli olan kol taban etrafinda döner ve diger iki kismi tasir. Dönel eklemler yatay ve dikey olarak birlestirlmistir.Yarim küre seklinde bir çalisma alanlari vardir. [2.1] Genel Olarak Bir Robot Kavramı: İlk olarak genel robot tanımlarını incelersek; " Robot, mekanik sistemleri ve bunlarla ilişkili kontrol ve algılama sistemleriyle bilgisayar algoritmalarına bağlı olarak akilli davranan makinelerdir. Genel bir enstitü tarafından ise robot su şekilde tanımlanmaktadır: Robot Yeniden programlanabilen; maddeleri, parçaları, aletleri, programlanmış hareketlerle yapılacak ise göre taşıyan veya isleyen çok fonksiyonlu makinelerdir". (Robot Institute of America, 1979) " Robot nedir? Robot, bir kaide üzerinde en az bir kol, tutma organları(Ganalıkla pensler, vantuzlar veya elektromıknatıslar), pnömatik, hidrolik veya elektriksel sensorlar ile konumu ve basınç algılayıcılarıyla, bilgi işlem organlarıyla donatılmış kontrollü-mekanik maniplelerdir." Yukarıdaki tanımlarda görüldüğü gibi robot temel bir işlemi yerine getirebilen, yetileri olan yeniden programlanabilen aygıtlardır.Temel olarak bir robotun aşağıdaki özelliklerinin olması gerekir: İşlem yapma yetisi: Bir işlemi fiziksel veya farazi olarak yerine getirebilmelidir yoksa robot olmaz sadece bir madde olur. İşlemin sonucunu belirleme yetisi: İşlemi yaptıktan sonra mutlak olarak işlemin sonucunu belirlemelidir ki işlem tam olarak yapılmış olsun. Karar verme yetisi : İşlemin sonucuna göre ya da dış etmenlere göre mutlaka bir yargı kurabilmelidir. İste bu yapıları içeren her sisteme genel olarak robot diyebiliriz. Örneğin sınav robotu, ışık izleyen robot, vana açıp kapayan robot veya robot kol gibi. Fakat asil robot kavramı bu yapıların çok daha ilerisine giderek doğada en karmaşık yapı olan insanoğlunun yetilerini taklit etmek için yapılan makinelerdir. Robot kavramı da onlar üzerine kurulmuş olmasına rağmen tanım genel olarak farazi yapilari da içermektedir. Çeşitli ileri gelen dünya ülkeleri tarafından robot çeşitli şekilde tanımlanmış olmakla beraber hepsinin buluştuğu nokta Robotlar yeniden programlanabilen mekanik aksamlardır. Bu kurumların ayrıldıkları nokta algılama ve sonuca varma yetisidir. Japon konseyi bu konuda algılama ve karar verme mekanizması olmayan robot kavramını kabul ederken İngiliz ve Amerikan Enstitüsü buna karsı çıkmaktadırlar. [2.2] Robotların Tarihçesi: [2.2.1] Robot Kavramının Doğusu: Medeniyet, kölelik düzeni sayesinde bugünkü olağanüstü seviyeye ulaşmıştır. Bir köle tükettiğinden fazlasını üretmek zorundadır. Amerika da seker kamışı toplayan zenci köleler sahiplerini milyarlarca dolar kazandırırken kendileri açlıktan sağlıksız ortamlardan ölmüşlerdir. Bu çirkin olaylar Amerika iç savası ve ardından dünya çapında kölelik düzeninin sona ermesiyle çalışan ihtiyacı duyan işverenler eskisi gibi ucuza isçi bulamamakta bulduklarıyla da istediği kadar verimi alamamaktaydı çünkü artik zorlama yoktu çalışma hakları ve sendikaları vardı. İste bu kötü durumdan insanları isten çıkarıp yerlerine birkaç insanin isini yaptırabilecekleri mekanizmalar aramaya başlandı. Ve o günden günümüze dek teknolojiyle bağlantılı olarak robot kavramı değişti ve gelişti. Ama asil aşamayı bilgisayar kavramaya birlikte gelen karar verme yetisi (algılama-karar verme-uygulama) sayesinde sağlandı. Ve günümüzde 1Ghz işlem gücündeki bilgisayarlar ile robotların gücü ve kapasite siniri insanin ötesine geçti. Artik robotlar bir saç kilini iki eşit parçaya ayırabiliyor ve bunu saniyenin onda biri kadar bir sürede yapabiliyorlar. Genel açıdan robot kavramının tarihteki gelişimi: Ortaçağda Selçuklu Türklerinden Sıkman boyundan Cizreli Bul-İz, yalnız suyun potansiyel ve kinetik enerjilerinden faydalanarak makineler ve robotlar yaptı. İlkel otomatlar 17. ve 18. yüzyıllarda Avrupa'da bulundu. Bunlar birer mekanik harikasıydılar. O zamanlarda mucitler ilginç makineler icat edip üretime geçtiler. Kilise ve katedrallerin tepesinde bulunan devasa saatlerde gerçek boyutlarda insan, melek, şeytan gibi figürler vardı. Bunlar ellerindeki tokmağı çana doğru giderek vuruyorlardı, vuruş şayisi saatice belirliyordu. Ötücü Kus: Kurulu düzenek tarafından miller ve kaldıraçlar yardımıyla kusun kanatları, kafası ve gagası kontrol edilebiliyordu. Ayrıca vana ve pistonlar sayesinde kus sesi çıkartılıyordu. Çalışırken kafası ve kanatları hareket ettirip öterken de gagasını oynatabiliyordu. Bunlardan çok sayıda üretildi ve ev deklarasyonunda kullanıldı. Kusun hareketleri belirli bir sırayla yapılıyordu bu sıra takibi için miller kulan iliyordu, iste bu miller ilk bilinen ROM yapısıdır. Millerle yapılan rom yapısına iyi bir örnek: (Meillardet'in Otomatı dan alınmadır) Otomatik Flütçü: Müzisyen kıyafet giydirilmiş otomatik flütçü dudaklarına yapışık flüte hava pompalarken parmaklariylada flütün deliklerini açıp kapatarak müzik yapabilmekteydi. Yine millerle sağlanan bir takim hareketlerle işlem gerçekleştiriliyordu. Bu flütçü 1738 yılında Jacques de Vaucanson tarafından Paris’çe yapılmıştır. Otomat tamamen el isiydi. yaplian bu otomat bir binada sergilendi ve insanlar bunu görebilmek için çok uzaklardan bile geldiler. Hatta krallar ve İmparatorlar bile özellikle memnuniyetlerini belirtiler. İste bu ilgi ve piyasa kavramı pek çok mucidi otomatlar üzerinde çalışmaya teşvik etti. Yaptığı diğer önemli otomatlar: Meillardet'in Otomatı: Belki de kurulu düzenekli otomatlar içinde en karmaşık olanı 1805 yılında Londra'da Henry Meillardet tarafından yapılan yazı yazabilen ve resim yapabilen inanılmaz otomattır. Geniş belleği ve titiz hareketleri vardır. Örneğin bir gemi resmini aslına uygun, bütün detaylarıyla beş dakikada çizebilmekteydi. Yapabildikleri arasında Fransız stilinde yazılmış beş dizelik bir şiir bile vardır. Bu otomat halen Franklin Enstitüsünde sergilenmektedir. R.U.R. Kullanılan Otomat. Dünya literatüründe ilk defa "Robot" kelimesi 1917 yılında Karıl Capek'in kısa hikâyesi olan Opilec de geçmiştir. Fakat asil kavram olarak robot anlayışını 1921 yılında yine ayni yazarın Rossum's Üniversal Robots (R.U.R.) adli tiyatro eserinde ortaya atililmistir. Eserde robotlar Romsum ve oğlunun topluma hizmet için oluşturduğu insan görüşlü yaratıklardı. Robot kelime olarak ise çek dilinden gelmektedir. Ağır, sıkıcı, angarya is manasındadır. Dünyada ilk olarak robotlarla ilgilene bilim dalına "Robotik" ifadesini kullanan kişi Issak Asimov'dur. (Doğum Temmuz 2, 1920, Ölüm Nisan. 6, 1992). Kelimenin kullanıldığı eser Runaround(1942) adli hikayesidir, bu eser 1,Robot adli kitabında yer almıştır(1950).Ünlü bilimkurgu yazarı hikayelerinde henüz olamayan fakat ileride olması muhtemel sorunlarla ilgili durumları anlatmaktadır.Dünyaca ünlü bazı eserleri bazıları I Robot (1950), THA Foundation Trilogy (1951-52), Foundation's Edge (1982), THA Gods Themselves (1972) bu kitabiyla Hugo vade Nebula ödüllerinin ayni anda kazanmıştır. Issak Asimov göre robot kavramında insanlığın geleceği için üç önemli kuram vardır: (Daha sonradan 0. kuramı eklemiştir.) 0.kuram: Robotlar asla insan olgusuna zarar vermemelidir. 1.kuram: Robotlar asla insanlığa zarar vermemelidir. diğer assagidaki kuramlar tarafından aksi idde edilemez. 2.kuram: Robotlar insanoğlundan aldığı emirleri yerine getirmelidir. diğer assagidaki kuramlar tarafından aksi idde edilemez. 3.kuram: Robotlar kani varlıklarını diğer kuramları bozmadan ellerinden geldikçe korumalıdırlar. 1918-1938 2 dünya savası nedeniyle bir çok araştırma durdu ve bazıları bir daha asla devam edemedi. [2.2.2] Robot Kavraminin Gelisimi: Sayisal kontrol ve Uzaktan kumanda kavramlarin gelismesiyle robotic çalismalarinda önemli gelismeler ortaya çikmistir. John Parson tarafindan uzaktan kumandali olarak yapilan makine 1940 yillarinda Amerika Birlesik Devletleri Hava Kuvvetleri tarafindan ardindanda Atom Enerjisi Komisyonu tarafindan kullanilmaya baslandi. Radyoaktif maddeler üzerine yapilan çalismalarda önemli islemlerde kullanildi. Bu sistem endüstri alaninda kullanilmaya basladi. Cyril Walter Kenward birlikte 1954 ün Mart ayinda patenti alindilar. Böylece ilk endüstriyel robot denilebilecek bir sistem tasarlandi. Belli basli gelismelerden birinide Joseph F. Engelberger (Fizik Müh.) ile George C.Devol tarafindan gerçeklestirildi.Robotlarin Babasi olarak adlandirilan parça aktarim robotu yaptilar. Bilgileri magnetik ortamlarda saklamakti önemli gelisme çünkü artik daha fazla veri daha küçük alanlarda rahatlikla istenlidigi zaman degistirilebilecek sekilde saklanabildi. Ve çalismalari sonucunda "Unimate " adli firmayi kurdular 1949, bu firma ilk robotic üzerine kurulan firmadir. Bu tarihten sonra dünya üzerinde özellikle Amerika, Avrupa ve Japonyada pek çok firma robotic üzerine çalismaya basladilar. Ve bu ilgi gelismeyide beraberinde artirdi. Bu gelismeler arasinda göze çarpan ilk robot uygulama dili olan " WAVE" Stanford Akedemisi tarafindan gelistirildi ve robotic bilimine kazandirildi. 1974 de "AL " ve ticari amaçli olan " VAL " yapildi. Val Ultimate tarafindan gelistirlmisti ve buna bagli olarak "PUMA (Programmable Universal Machine for Assembly)" gelistirilerek üzerinde uygulandi. Nispetten kisa eklemli bir robottu fakat temel olarak General Motors firmasinin montaj hatti baz alinmisti. 1979 yilinda Yamanashi Üniversitesi tarafindan montaj amaçli olan "SCARA (Selective Compliance Arm for Robotic Assembly)" gelistirldi.Bu sistem ticari olarak 1981 piyasaya sürüldü. Unimate'in puma robotu. 90 yillara gelindiginde robotlar artik çok çesitli alanlarda ve özellikle insanlarin rahatlikla yapamiyacagi isleri kusursuz yaparak insanoglu'nun yasam sürecinde yerlerini aldilar. Assagidaki örneklerde insan oglunun inemedigi derin sularda arastirma yapabilen, Hiçbir mola vermeden yillarca çalisabilen montaj robotlari, Cerrahlarin hata yapmasini engelliyen hatta cerrahlik meslegini oratdan kaldiracak kadar iddali olan ameliyat robotlari, insan kolunun yerine takilabilen yapay kol sanirim bu gelismelere en iyi örneklerdir. Fakat asil gelisme Sony firmasi tarafindan evlerimize kadar sokulan robot köpek "Aibo" olmalidir. Yapilan robotta algilama karar verme vede komut dogrultusunda uygulama yetileri muvcut olmakla beraber genis açili bir hafiza ile sahibini tanimlama kadar birçok özellik yer almaktadir:(1998) Sonuc olarak Robotic teknolojisindeki çalismalar artik büyük oranda bilgisayar teknolojisindeki gelismelere dayaniyor. Robotik endüstrisi dogdugunda bilgisayarlar mevcut olmasina ragmen 1970'lerin sonuna kadar boyutlari nedeniyle robot kontrolünde kullanmiya elverisli degildi. Bugün pazardaki tüm robotlar bilgisayar kontrolü kullanilmaktadir. Fakat halen Robotic biliminin alaninin makine vede bilgisayar bilimlerini kapsadigi kesindir. Robotik fiziksel aktivite ve karar verme gibi uygulamalarla bir görevi yürüterek insanların yerini alabilecek makinalarla ilgili çalışmaları içerir. Robotik , geleneksel mühendislik sınırlarını kesiştiren yeni bir modern teknoloji alanıdır. Robotların karmaşıklığını ve uygulama alanlarını anlamak elektrik-elektronik mühendisliği , makina mühendisliği , endüstri mühendisliği , bilgisayar mühendisliği , matematik alanlarında geniş bir bilgi ağı gerektirmektedir. Bu çalışmada robotikte genel kavramlara değinilecek ve robot modellemesi için MATLAB ’da kullanılan Robotics Toolbox hakkında genel bilgi verilecek ve diğer çalışmalar anlatılacaktır. 2.3.1.Robot Nedir ? Robot , bir dizi verilen görev çerçevesinde çeşitli programlanmış hareketler ile materyalleri , parçaları , aletleri veya özel donanımları hareket ettirmek için tasarlanmış programlanabilir çok işlevli manipülatördür. Bu tanım Robot Institute of America-RIA tarafından verilmiştir. Bu bölümde robotu oluşturan parçalar kısaca incelenecektir. 2.3.1.1Robotu Oluşturan Parçalar Robot dört ana kısımdan meydana gelir : Bir mekanik yapı yada eklemlerle birbirine bağlanmış sıralı rijid cisimlerden(uzuvlardan) oluşan manipülatör ; manipülatör , serbestliği sağlayan bir koldan(arm) , el becerisi sağlayan bir bilekten(wrist) ve robotun yapması gereken görevi tamamlayan sonlandırıcıdan(end effector) oluşmaktadır. Eklemlerin hareketlenmesiyle manipülatörün hareketini sağlayan hareketlendiriciler(actuators-motors) Manipülatörün veya çevrenin durumunu gözleyen algılayıcılar(sensors) Manipülatör hareketini kontrol eden ve yöneten bir kontrol sistemi 2.3.1.2 Eklem Yapıları Eklemler manipülatörlerde hareketi sağlayan mekanizmalardır ve yapılarına göre ikiye ayrılırlar : Döner ( Revolute – R ) Eklemler : Menteşeye benzer ve iki uzuv arasında dönme hareketine izin verir . Şekil 1.1 Döner tip eklem Kayar ( Prismatic – P ) Eklemeler : İki uzuv arasında doğrusal harekete izin verir. Şekil 1.2 Kayar tip eklem 2.3.1.3 Manipülatörlerin Sınıflandırılması Manipülatörler çalışma uzaylarına göre sınıflandırılırlar. Aşağıda manipülatör yapıları ve bunların çalışma uzayları görülmektedir. Kartezyen(Cartesian) manipülatör : Bu tip bir manipülatör üç tane kayar tip eklem ile elde edilir. Mekanik yönden çok sağlamdır fakat çalışma uzayındaki hareket yeteneği bakımından zayıftır. Bu tip manipülatörler çok büyük boyutlarda ve ağırlıklarda nesneleri hareket ettirmek ve taşımak için idealdir. Kartezyen manipülatörlerde eklemleri hareket ettiren motorlar çoğunlukla elektrik bazen de pönomatik motorlarıdır. Şekil 1.3 Kartezyen manipülatör Silindirik(Cylindirical) manipülatör : Bu tip bir manipülatör bir tane döner ve iki tane kayar tip eklem ile elde edilir. Bu tip manipülatörler de mekanik yönden sağlamdır fakat bilek konum doğruluğu(accuracy) yatay harekete bağlı olarak azalır. Benzer şekilde büyük boyutlu nesnelerin taşınmasında kullanılırlar. Bu tip manipülatörlerde hidrolik motorları tercih edilir. Şekil 1.4 Silindirik manipülatör Küresel(Spherical) manipülatör : Bu tip bir manipülatör iki tane döner ve bir tane kayar tip eklem ile elde edilir. Bu tip manipülatörler mekanik yönden diğer iki tipten daha zayıf, mekanik yapı yönünden daha karmaşıktır. Çoğunlukla makina montajlarında kullanılırlar. Bu tip manipülatörlerde elektrik motorları tercih edilir. Şekil 1.5 Küresel manipülatör Eklemli(Articulated)-İnsan Kolu(Anthrophomorphic) manipülatör : İnsan kol yapısı esas alındığı için bu isim verilmiştir. Bu tip manipülatörler tüm eklemleri döner olduğundan çalışma uzaylarında en yetenekli manipülatörlerdir. Endüstriyel uygulamalarda geniş kullanım alanına sahiptirler.(Boyama , kaynak yapma , montaj , yüzey temizleme vb.) Bu tip manipülatörlerde elektrik motorları tercih edilir. Şekil 1.6 Eklemli-İnsan kolu manipülatör [2.4] Otomasyon Kavrami: Otomasyon kavrami çesitli sekillerde ifade edilebilir ama kavram mutlak olarak mekanizasyonu içermektedir. Peki nedir bu mekanizasyon ve otomasyon. Mekanizasyon: Insan enerjisi disinda saglanan hareket olgusuna Mekanizasyon denir. Mekanizasyon kismen veya tam olabilir, bazi mekanik hareketler insan gücü katilarak tamamlanabilir buda mekanizasyonu kesinlestirmez. Otomasyon: Iste bu mekanizasyonlar sonucunda olusan toplu islem bloguna ototmasyon denir. Kontrol yani denetimden gelmektedir. Otomasyonda önemli olan üretim ortamlari olan tezgahlar ilk olarak klasik tezgahlardi daha sonra Kam kontrollü, Pim kontrollü tezgahlarin kullanilmaya baslanmasi, üretim hizinin ve kalitanin artirilmasini sagladi. Daha sonraki gelisme Sayisal Kontrollü (NC) tezgahlarin uygulanmasi biçiminde olmustur. Biligisayar sisteminin tezgaha uygulanmasi sonucunda Bigisayar Kontrollü Tezgahlar (CNC) ve Bilgisayar kontrollü sistemler (CIM) ortaya çikmistir. Sadece üretimde degil Bilgi islem, Dökümantasyon, Arastirma ve Gelistirme çalismalarinda özel hazirlanmis olan bilgisayar programlari kullanilmaktadir. Iste bu sayede 20. yüzyil basinda insan oglu daha az çalisarak daha kisa sürede en mükemmelini üretmektedir. Otomasyon kavrami için robotlar çok önemlidir çünkü ne kadar çok insana bagli olmadan çalisabilen robot sistemde yer alirsa sistem o kadar çok tam mekanizasyona vede hatasiz üretime geçmektedir. bugün gelismis ülkeler düzeyi denen toplulukta yer alan ülkelerin tamami üretimlerini otomasyon zincirleriyle tamamlamaktadir. Buna en iyi örnek robot için kullandigim motorun Isviçre'de tamamen insan eli degmeden 0.1 mikron çözünürlügünde yapilip test edilmesi sayesinde olusan mükemmel motor yapilaridir. Ilk olarak tarihte otomasyon kavrami Henry Ford la birlikte baslamistir. Henry Ford 1800 yillarda Ford araba fabrikasini kurup isletirken aldigi araba siparislerini karsilayamiyordu. O da en kisa sürede montaji nasil tamalayacagini düsünürken iki seçenegi göz önünde bulundurmus. 1. Fabrikayi büyüterek daha çok isçi ve daha çok tezgah almak. 2. Tezgahlari bir sekilde hizladirarark bir tezgahi iki veya daha çok tezgah gibi çalistirabilmek. Iste bu iki kavramdan birincisinde üretim kesinlikle artacakti ama kurulmasi vede çalismasi çok daha fazla is getirecekti fabrikaya bunun için Ford tezgahlari fabrikda üretim sirasina dizdi ve bir hareketli band ile tezgahlar arasinda baglantiyi kurdu. Iste o günden sonra Ford firmasinin üretimi katlanarak büyüdü. O günler için yeterli görülen bu kavram birkaç sene sonra yetmemeye basladi çünkü insanlar yürüyen bandlara yetisemiyor hata yapiyor ürünlerin yüzde ellilere varan hatali üretimlere dönüsmeye basliyordu. Isçiler daha çok para daha az çalisma istiyorlardi. Sendika kurup güçlendiler. Vardiyali çalisma dönemi baslamisti ama halen bir sorun vardi üretim kazancinin nerdeyse yarisi fabrika giderlerine yani maaslar vede hatali üretim giderlerine gitmeye baslamisti, ürünlerin fiyati artiriliyor ve maliyetin 3 katini asan fiyatlara satiliyordu. Ama bir gün, bir Japon bilmadami mikrochip denen küçültülmüs elektronik komplex parçayi yapinca isler biraz degisti artik üretimde 24 saat çalisabilecek maas istemeyen, hata yapmayan, hasta olmayan, greve gitmeyen mükemmel isçi gelmisti, robotlar gelmisti. bu olgunun yararlarini assagida maddelemeye çalistim: Otomasyonda robotlarin Yararlari: Üretim artisi. Üretim maliyetinin düsmesi. Kalite artisi Tehlikeli ortamlarda çalisabilme. Yönetim ve denetim kolayligi. Tümlesik sistem organizasyonu. Is esnekligi. Uzun ömür. 1. 2. 4. 3. üstten [2.2.5] Günümüzde kullanilan belli basli robot örnekleri: Piyasaya bakildiginda satilan robot türlerinde bir genellesme dikkat çekici. Robotlar genel olarak bir amaç için degilde bir amaç robota uyarlaniyor, yani ek parça tanimlayici vede özellikle program olgulariyla yapi kusursuz olarak tamalaniyor. Piyasa robotlarini su sekide siralayabiliriz: Robot Kollar Su alti robotlari Uzay arastirma robotlari Mobile robotlar [2.2.5.1] Fiziksel Olarak Robot Kol Fiziksel olarak bir robot kol ucu uca eklenmiş cubukların 3 boyutlu uzaydaki salınımına benzer. Fakat dünya şartlarında bu ivmelere yer çekimi, sürtünme ve aşınma gibi ufak tefek görünen ama sonucu etkileyen faktörler yani vektörler vardır. İlk olarak 3 boyutlu uzay kavramıyla üç eklemli bir kolu yapısal olarak incelersek; Eklemler birbirlerini izlerken bu izlemeden doğan hareket bağımlığı ilede birbirlerini etkilemektedirler. Kısacası en altan en üste doğru doğrusal bir zincir yapısı vardır demek doğru olabilir. Eklemler biribrlerini farklı yönler ve şekillerde hareketlendriebilrler buda bize üç boyutlu uzayda erişim alanını artırmamızı sağlar. Daha doğrusu hareket yeteneği kazandırır. Ayrıca şekilde her eklemin kendine ait 3 eklemi vardır bu eklemeler silindirik eksenli olup kendi etraflarında, ilerisindekini yukarı aşşağı oynatan vede altındakini sağa sola çekebilen eklemlerden oluşur vektöriyel merkezleri motor başları olup 2 si üst kısmında diğer 1 ise alt kısmı ucundadır. Sadece tutucu kısmı aynı anda iki eksenli bir ekleme sahiptir. Aşağıda ise tasarlanmış bir robotun ana hatlarını görmektesiniz: [2.2.5.1.1] Temel Fizik Kavramları ve Hareket Teoremi Vektör bir hareket göstergecidir. Hareketin yönünü kuvvetini gösterir. Temel olarak bir hareket konumsal vektörlerle tanımlanabilr. Vektör; Şekilde görüldüğü gibi küresel objenin hareket yönü AB vektörleri ile gösterilmiştir fakat objeye uygulanan yerçekim ivmesi CD vektörüyle aşşağıya doğru bir çekme uyguladığı için ortalama(bileşke) vektör olan EF vektörü yönünde obje hareket edecektir bu EF vektörü AB büyüdükçe AB'ye doğru yakınlaşacaktır. tam tersi durumdada yani CD vektörü büyüdükçe CD vektörüne doğru yaklaşacaktır. Sonuç olarak fizikte temel hareket birimi vektörlerle ifade edilebilir çünkü her hareketin bir şiddeti vede bir yönü vardır. Vektörler üç boyutlu uzayda ifade edilebilirken her hareket bileşeni vektörlere ayrılması zorunludur. Aynı zamanda ters etkime yapan karşı vektörlerde bu kurala dahildirler. Vektörler temel olarak sade ve tek düze olmalarına rağmen fatöriyel şeklindeki katlamalı artımlarda sonuç vektörünü tespit etmek için ihmaller hesabı ortaya atılmış ve sonuca öylece varılabilmiştir. Fakat robotumuzun sonuca mikron düzeyinde ulaşmasını istiyorsak mutlak olarak bu ihmal hesaplarınıda mikronun altında tutmalıyız. [2.2.5.1.2] Kinematiksel İnceleme Kinematik kavramı robotların temelini oluşturmaktadır, çünkü robotlara yaptıracak hareket ve sonuçta ulaşılacak konum bu dal tarafından incelenmektedir. Eklem kinematik için çok büyük bir yere sahiptir ve genelde robotlar açısından eklemler bir zinciri andıracak şekilde ard arda bağlanarak kullanılmaktadır işte bu yüzden kinematik temel eklemler açısından ikiye ayrılmaktadır. Zincirin açık olduğu sistemler ve kapalı zincir yapısındaki sistemler.Açık uçlu kinematik zincirde bir ucu serbest iken diğer ucu sabit bir aksama bağlı olan eklemdir. Kapalı uçlu kinematik zincir ise her iki ucuda sabitlenmiş olan eklem türüdür. Bir robot kolu kinematiğin en önemli başlangıç ilkesi kinematik hesabına nereden ve ne biçimde başlanacağıdır, bunun için iki ana başlangıç noktası vardır. Bunlardan birincisi sabit ağırlıktan (en altta yer alan sabitleme kütlesi) başlayarak en uca ulaşmak buna düz kinematik denir diğeri ise en uç noktadan başlıyarak sabite ulaşmaktırki bunada ters kinematik denir. Unutulmaması gereken kinematik hesapları kayıpsız konum algılaması yapar, robot koluna uygulanan momentleri dikkate almadan hesap yapıldığından gerçek sonuç bulunamamıştır. Yapılan tüm işlemler kolun eklem sayısına bağlı olarak değişen katlara sahiptir bu katlar mutlak olarak eklem serbestlik ve tepkime değerlerinide içermektedir. Geçmişten günümüze geçen sürede birçok sistem ve uygulama gerçekleştirilmiştir ve oluşan sorunlar karşısında yeni çözümler oluşturularak sonuça varılmıştır. Bu sistemlerin çoğunda yapılan hesap programları mutlak olarak ters kinematiği kullanmaktadır. Aşşağıda temel olarak iki çözümün ayrıntıları yer almaktadır; Robot Kolunun Düz Kinematiği: Kolun yönlendirlmesinde her eklem hareket noktası bir merkezi XYZ eklemsel düzlemleri için başlangıç kabul edilip hareket sonucunda oluşacak yeni konum en alttan en üsteki ekleme kadar takip edilmektedir. Üç eksenli bu yapıda her eklem için bir 3x3'lük matris tanımlanır eksenlere uygulanan dönme hareketi sonucu bu matrisin 4x4 olmasını sağlar ve 4-4 elemanı daima 1 olacak şekilde 4 satır ve 4 sütun bilgileri sonuç konumudur. İlk olarak Denavit Hartenberg tarafından kullanılmıştır. Robot Kolunun Ters Kinematiği: Düz kinematiğe göre daha kapsamlı bir hesap gerektiren ters kinematik işlemleri daha çok hedefe geometrik ve matematiksel ifadelerle yaklaşarak sonuca ulaşmaya çalışmaktadır. Hedef konuma yaklaşımlarda integral gibi tersleyici fonksiyonlar kullanıldığından sonuç kesin bir yolla çıkmaz değişik yönerge ve denemlerle sonuca ulaşılabilir, geometrik açıdan çözümselliği daha elverişli olmasına karşın her robotla aynı şekilde kullanılamaz. robotların kısıtlayıcı etmenleri olan eklem ve dönüş serbestlikleri devreye girmektedir. Altı eksenli bir robotun her hareketi yerine getirebilineceği idda edilmektedir fakat sonuçta kolun yapısı ve hedef konum bilinmeden eklem sayısı olayaı netleştirmez. Sonuçta kinematik hersaplar bize hedef konuma ulaşmak için enkısa yolu değil, en uzun tasarımı sağladığı için gereksizdir. [2.2.5.1.3] Üç Boyutlu Tasarım ve Matematik X,Y,Z eksenlerinden oluşan üç boyut kavramı beraberinde döndürme ve iki boyuttan üçüncü boyuta geçme gibi işlevleride getirmektedir. [2.2.5.1.3.1]Eksensel döndürme: Cisimler bir koordinat düzleminde noktalardan oluşmakatdır bu cismi bellirli bir yönde döndürme işlevinin yapılması demek işte bu noktalarının açısal cevrim sonrası yerlerini belirlemektir. Aşşağıdaki örnekte bir karenin 45 derece sola döndürülmesi incelenmektedir; Matematiksel açıdan bir doğrunun cevrilmesi iki boyutlu düzlemlerde tan, arctan değerleriyle mümkündür. Yani bilinen iki noktadan aktif düzlemsel açı arctan ile bulunur daha sonra çevrim açısı eklenerek sonuç açıya ulaşılır vede sonuç açınısının tan değeriylede hedef noktaya ulaşılır. Aşşağıdaki örnekte bu olay görülmektedir; Örnekte Kaynak nokta a,b değerlerinde iki boyutlu düzlemdedir. Noktanın Q açısı arctan ile ( Q=arctan(b/a) ) bulunur ve açıya eklenecek değer eklendikten sonra Q' açısal değeri elde edilir vede yeni noktasal değerler d,c sinüs ve cosinüs işlemleriyle bulunur ( d=sin(Q')*f , c=cos(Q')*f, hipotenüs f=^(a²+b²)). Noktasal hedefe varılmış olur. Üç boyutlubir düzlemde ise bu noktasal iki boyutlu çevrim iki şer eksenlere ayrılarak yapılır; X-Y; X-Z; Y-Z gibi. [2.2.5.1.3.2]İki adet iki boyuttan üçüncü boyut kavramı: Cisimler genelde tek bir açıdan bakıldığından dolayı iki boyutlu görüntüleri mevcuttur buyüzden cismin tam olarak algılanabilmesi vede işlemlerin doğru bir şekilde yapılabilmesi için iki boyutlu görüntüden açısal dödürmeyle bir adet daha alınır bu sayede iki boyutlu 2 farklı görüntüden içsel üçüncü bir görüntü çıkarılabilir. çekilen görüntü sayısıyla doğruluk ve çekim açıları arasındaki oran sonucu doğrusal olarak etkilemektedir. Sonuç olarak temel tirigonometri ve temel cebir robotic açısından konum bazlı büyük önem taşımaktadır. Robotun bir sonraki hamlesini hesaplamak doğacak hataları ve yanlş tanımlamaları engelliyecektir. Bu yüksen sabit noktasal hesap için bilgisayar işlemcisi çok uygun bir tabandır. [2.3] Gelişmiş Konum Formül Tasarımı İşlemler artıkça ve sonuca bağımlı yeni ortamlar real-time(gerçek zaman) bazlı çalışması gerektiğinde bu hesaplamaların gecikme yaratmaması vede sonucu işlem bittikten sonra yalanlamaması gerekmektedir. Bunun için yapılan hesaplar artıkça işlemler birleştirilmeli ve kalıpsal tanımlara kullanılarak bir tampon oluşturulmalıdır. İşlem sonuçlarının bitirilmesi kısaldıkça sistem optimize edilerek gereksiz işlemler taranmalı ve ayıklanmalıdır. bu işlemler hem bilgisayarın hemde mekanizmanın hata yapmasını ve yavaşlamasını engelliyecektir. [2.3.1] Bilgisayar kavramı ve dinamiksel çözümler Bilgisayar kavramı işte asıl bu kavramların hesaplanması ve analizinde önemli bir yer almaktadır. Üç bouytlu olarak bir noktayı ilerletmek için yapılan işlem mikro saniyeler aldığından robotun hareketinde bir gecikme faktörü olmaktan çıkıp geri besleme vede hata aramada yer almaya başlamaktadır. Olmazsa olmaz kavramında yer alan bilgisayar aynı zamanda bize dizayn aşamasında şimdi olduğu gibi özgün yardımcı olarak yerini almaktadır. Ama bilindiği gibi bilgisayar programlanmadan bir hiç olduğundan bizim işimizi görebilecek temel bir üç boyutlu tasarım ve geliştirme programına ihtiyacımız bulunmaktadır işte burada devreye alman yapımı olan mühendislik harikası olan AutoCad programı girmektedir. Program temel kalıp çizimleri ve yapısal analiz yapabilmektedir ama yinede daha ortada parça yokken o parçayı test edebileceğimiz ve sonuçlar çıkarabileceğimiz bir program olan 3DS MAX adlı programa ihtiyaç duymaktayız. Max programıyla Olmayan kolu cizip eklemleri kısıtlayarak yapabileceği ve yapamıyacağı hareketleri görebiliriz tabiki bu bize çok önemli bir avantaj sağlamaktadır. Aşşağıda 3DSmax 2.5 cizilmiş temel bir örnek yer almaktadır bu örnek üzerinden kemik(bone) yapısı ve eklem kısıtlamayı inceleyebilirsiniz. Sonuç olarak bilgisayar ve doğru program her dalda olduğu gibi robot dizaynındada biz yol göstermekle kalmayıp hatlarımızı minumuma indirebilmektedir. [2.4] Mekanik Olarak Robot Kol: Mekanik olarak robot kavramı fiziksel olarak doğan hareket kavramlarının gerçekleştirilmesi için gerek duyulan mekanik aksamlar yani eklemlerin oluşmasıya otaya çıkmıştır. Mekanik açıdan robot kavramı EKLEMSEL olarak inceleme ve madde üzerindeki hareket, tepki ve sürtünme gibi kavramları içerir. Kısacası yapılmış olan bir robotta hesaba katılması gereken vektörlerden biride mekanik açıdan tepki ve etki vektörleridir. Ayrıca robotun yapabileceği hareket ve yapamıyacağı hareket kıstasları da mekanik olarak yapılan dizayn sonucunda ortaya çıkmaktadır. Aşşağıdaki örnekte kemiksel olarak dört eksenli bir robot kol görülmektedir; Robot dizaynında ilk olarak yapılamsı gerekenlerden biri robotun yapması gereken harekeler doğrultusunda yapılacak eklemlerin konum ve serbesliklerine karar vermektir. Bu karar robotun kapasite, serbeslik, çözünürlük, erişebilrilik vede hız gibi ana temellerini doğrudan etkilemektedir, eklemleri uzunluk ve hacimleri ise yine robotun hareket ögesinde yer edinmekle beraber robotun eklemlerinin kırılması veya eklemlerin titremesiyle sonuçlanabilir. [2.4.1] Mekaniğin Temelleri: Mekaniğin temeli yine hareket ve madde ögeleri üzerinde yoğunlaşmaktadır. Mekanikte amaç bir maddesel ögeyi belli bir şekilde hareketlendirme ve durdurma işleminin en az güc ve en fazla hareket ivmesiyle gerçekleştirmektir. Tabi bunun yanında mekanik aksamların aşınma, dayanma ve süreç gibi kavramlarınıda hatapaylı hesaplayarak önlem belirleme işide mekanik dizayna düşmektedir. Bu konuda en iyi örnek dişlilerdir, dişliler kuvveti kendinden bir sonraki etmene aynı şekilde artırıken hızından kaybettirerek güç kazandırmaktadır buda bize motor gücünün kaldıramıyacağı yükleri daha yavaş ama kaldırılıp hareketlendirilebilecek düzeye getirilmesini sağlar. Aşağıdaki şekilde bir dişli yapısı görülmektedir; Yukarıdaki örnekte A dişlisinden verilen kuvvet B dişlisinden 3 kat daha büyük olarak ama 3 kat azalmış bir hızla bize geri dönmektedir, buda bize robotumuzun eksen hareklerini motorları büyütmeden ve ağırlığı arttırmadan istenilen şekilde yapılmasını sağlar. [2.4.1] Eklem Analizi: Her ne kadar istenilen kadar eklem tasarlanıp ard arda eklenir gibi gözüksede hedef en az eklemle istenilen hareketi yapabilmektir. Elimizdeki motor ve katı tutucular zamanla aşınma ve esneme gösterdiğinden eklemlerin uç uca eklenmesiyyle oluşan ağırlığa ve hareket sırasında oluşan ters kuvvetlerin etkilerine dayanamayıp istenilen hassasiyetin dışına çıkabilmektedir. Aşağıda görülen örnek mükkemmel derecede insan kolunu taklit edebilen bir yapı göstermekle birlikte gerçek ortamda yetersiz kalmaktadır. İlk olarak yapılması gereken hareketler çıkarılmalıdır bunun için istenilen yön ve şekildeki harekler sınırlandırılmış bir otamda tasarlanmalıdır. Eklem bağlantı noktaları ve eklem uzunluklarını hedef olayda en etkili şekilde etkileyen etmendir. Eğer eklem bağlantıları hatalı ise eklemler istenilen hareketleri yapamaz veya motorlar hesaplananın dışında yüklendiğininden istenmiyen durumlarla karşılaşılılabilinir. [2.5] Gücün Ağırlığa Oranı: Bazı sistemlerde büyük motorlarının kullanılması yüzünden ağılığın artmasıyla eklem bloklarıda güçlendirilmiş ve motorların kuvveti tam olarak yükü kaldırmaya ve hareketleri yapmaya yeterli olamamıştır, bu durumu düzeltmek için piston ve hidrolik sistemler tasarlanmıştır. Günümüzde hem motorlar hemde sürücü katları ilerlemesi çok iyi bir konumdadır, cm² ye 80 Newton uygulayabilen 8000 devirlik dc servo motolar ile birlikte kullanılan spur yapıdaki 415:1 oranındaki dişli kutularıyla kuvvet gerekenin 100 kat üzerine bile çıkabilmektedir. Dikkat edilmesi gereken nonta kuvvet/ağırlık oranının yaklaşın 1 olması gerektiğidir. Tersi durumlarda hareket ivmeleri veya ağırlık çekmeleri sonucunda kısa zamanda robotumuz devre dışı kalmaktadır. Buna en iyi örnek yüksek kuvvet gerektiren sistemlerde gücü artırmak için yapılan işlemlerde ağırlığında artmasıya yeniden gereken kuvveti kazanmanın imkansız olduğu görülünce hedefe ulaşma yönteminin değiştirilerek eklem ve eksen azaltılmasıyla olay çözümlenmiştir. Bu tip durumlarda ters ağırlık veya zıplama ivem hareketleri sadece çözümü imkansız hale getirmemekte çalışma zamanınıda kaybetmemizi sağlamaktadır. [2.6] Mekanik Açıdan Robot Kol: Robot kolun en önemli görülen ve ilk olarak tasarlanması gereken konularından biridir mekanik analiz, çünkü robotun yapabileceği ve yapamıyacağı hareketler bilinecek elektronik dizaynıyla bilgisayar programıda ona göre ayarlanacaktır. Oysa ortada çalışacağı ümit edilen mekanik üzerine yazılmış programı ve muhteşem elektronik dizaynı gerçekleşemiyen mekanik eklemleri çözememektedir.Şimdi sırasıyla dikkat edilmesi gereken mekanik konuları ve çözümlerine bir bakalım; [2.6.1] Mekanik Kısıtlamalar: Mekanik bir paçanın eğer oynuyan bir parçası varsa mutlak olarak bu parçanın bir şekilde korunması yani ana kütleye sabitlenerek serbest bırakılması yani kısıtlanması gerekmektedir. Bu kısıtlamalar yapılacak harekette gerek duyulmayan şekilde yapılmalıdır, eğer yapılması gereken bir hareketi eklem kısıtlaması yüzünden yapmıyorsak işin ta başında başarısız oluruz. Eklemin serbestlik açıları çıkarılmalı eriye kalan bütün yönler kısıtlanacak şekilde eklem kısıtlanmalıdır, bu sayede mümkün olan en yüksek güçte sağlamlık ve esneklik sağlanmış olur. [2.6.2] Madde Aşınması ve Ömür: İki metal birbirine hareketli bir şekilde monte edildiğinde hareketler sonucunda zamanla metal aşınması yapmakta ve iki oynayan yüzey arasında boşluk oluşturmaktadır bu boşluk belirli bir düzeyden sonra istenmiyen ters haretklerin yapılmasını sağlamakta ve başarısızlıkla sonuçlanmaktadır. Yapılması gereken en az yüzey sürtünmesinin kurulması ve gerekli yüzeylerdede çelik halka veya teflon yüzey kullanılmalıdır. [2.6.3] Mekanik İhmaller ve Sonuçları: Oluşacak sürtünme ters kuvvetlerinin ve yer yüzü çekiminin ihmal edilmesi ilk denemelerde her ne kadar başarılı gözüksede zaman içinde çalışan yüzeyler arasında sürtünme yüzünden boşluk ve yer yüzü Bilgisayar kavramı işte asıl bu kavramların hesaplanması ve analizinde önemli bir yer almaktadır. Üç bouytlu olarak bir noktayı ilerletmek için yapılan işlem mikro saniyeler aldığından robotun hareketinde bir gecikme faktörü olmaktan çıkıp geri besleme vede hata aramada yer almaya başlamaktadır. [2.7] Mekanik Hareket: Yapılacak hareketin mekanik olarak tanımlanması kavramı ilk olarak eklemlerin hareketlenmesiyle gözlenebilir. Eklemler hareket ettiren kuvvet olan motorlarla birlikte bir hareket şekli göstersede dış etmenler sonucunda istenmiyen veya zorlayıp hiçbir hareket yapamadan olduğu yerde kalabilir. bu yüzden mekanik harekette normal hareket hesaplamalarının dışında hareket ettirilen metal aksamın ve sabitlerin davraışlarıda hesaplanıp ona göre yeni çözüm ve teknikler uygulanmalıdır. İlk olarak hareketin yönü ve şekli incelenmelidir; [2.8] Güç Devreleri: Elektronikte mekanikte olduğu gibi küçük olan bir olguyla büyük olan olguyu kontrol etmek gerekmektedir. Örneğin ATX bilgisayar kasalarında bilgisayar üzerideki her alet maximum 24V çalışmasına karşın bilgisayar mikro işlemcisi 220V güç kaynağını bir yarıiletken ile kontrol edebilmektedir. Bu yapıda bizim için önemli olan minimum güçle maximum güçü kayıpsız olarak hızlı ve kesin bir şekilde kontrol etmektir. Robotic alanında ise güç devreleri özellikle lojik ibarelerden oluşan hareket ifadelerini motora anlatmak için kullanılmaktadır. Bu işlemler için özel güç katları vede entegreler tasarlanmaktadır bunlardan bazıları L293, L297, L297D, UMB 2003 gibi 5-30 volt arasında çalışabilen güç katlarıdır. [2.9] Ana Hatlarıya Sürücü Devreleri: Güç devreleriyle kazanılan lojiksel kontrolü doğru ve manalı bir hareket çevirmek için devreye sürücü devreler girmektedir. Sürem asıl anlam olarak yön verme mansaına gelmekle birlikte yapısal olarak atılacak bir sonraki adımı belirleme işlemidir. Roboti'de motor sürücü devreleri motorun yerine ve bir sonraki pozisyonuna geçişini belirlemektedir. Aşşağıda genel olarak bir model görülmektedir: Sürücü devrelerinde genel olarak motor kontrolü yapacağımızdan gelin şimdi elektriksel motor nedir onu inceliyelim: [2.10] Elektriksel Motorlar: Elektriksel Motor kavramı elektriksel alanın yani magnetik alan kuvvetinin elektrik akımıyla oluşturulmasıyla ortaya atılmıştır. Bir demir nüve üzerine sarılan çok spirli bobin telin üzerinden akım geçirildiğinde demir nüve kutup başları olan N S kutuplarını oluşturarak ceçresindeki zıt kutupları veya metal cisimleri çekmektedir. Bu teoriden çıkan bilimadamları çekme itme kuvvetini ardarda koyarak ve bu hareketi dairesel harekete çevirerek ilk elektriksel motoru yapmışlardır. Bu motorlar kendi aralarında ana hatlarıyla üç guruba ayrılırlar: [2.10.1] DC Motorlar: Mantık olarak bobin üzerinden geçen akımın sonucunda oluşturduğu mağnetik kaçaklar sayesinde oluşturduğu kutuplaşmayı ileri ve geri yönlü olarak kullanarak yani zıt kutupların çekmesi vede aynı kutupların birbirin itmesi prensibinin dairesel harekete dönüştürlmesini baz alınan en basit yapıdır. Diğer motorların tamamı bu mantık üzerine kurulmuştur Şekillerde ve akımın yönünün iletkenin şeklinin Magnetik alanı ve de kuvvet yönünü nasıl etkilediğni görmektesiniz. Aşağıda ise bu hareketin dairesel harekete dönüştürülmesini görebilmekteyiz [2.10.2] Sürücü Devresi: DC motorlarda yapısal olarak akım geldiği sürece motor akımın yönüne bağlı olarak döner fakat akımın siddeti ve sekli motoru doğrudan etkiler. Aşşağıda ilk olarak Wien köprüsüyle akımın yönünü değiştrimeyi vede akımın zamansal bölünmesini ayarlayarakta hızını etkileyebilriz. Yukarıdaki DC hız ayarlayıcısı devre pulse mode yani darbe modlu çalışan bir hız devresidir devrede ana gerilim transistörü tetiklenerek DC motora gerilim verilerek motro hareketlendirilip transistör kesime götürülerek DC motor beslemesi kesilmektedir bu sayede motor tetiklenme aralığına göre hız kazanmaktadır. Tork beklenen yapılar için sakıncalı bir devredir tercih edilmesi gereken akıma dayalı gerilim bölme ya da kısıtlama yapılarıdır. [2.10.2.1] Olumlu Olumsuz Yapıları: Olumsuz yanları ilk üretilen motorlardan biri olması nedeniyle bayağı çok fakat halen çoğu alanda kullanıldığını düşünürsek yapısal olarak bir imkansızı başarmıştır fakat robotic acısından sıfırn altında bir kontrol alanına sahiptir çift kutup değişimi yüzünden açısal veya konumsal kontrol yapılamamakta emule edilen (micro wave) motor sürücü devreleri ise ağır şartlar altında iflas ettmekte ve uzun ömürlü olmamaktadır. [ [2.10.3] Adım Motorları: Yapısal açıdan DC motorla çok benzemekle beraber bobin sargı sayısıyla sarım şekli değişmektedir. Bu sayede motor adım adım ilerletilebilmekte ve herhangi bir adımda durdurulabilmektedir. Aşşağıda temel olarak bir Adım Motorunun yapısını görülmektedir: Görüldüğü gibi akımın geçebileceği birden fazla boboinsargıları vardır bu sargıların sayısı artırıldıkça adım atabilme yetisi yani açısal dönüşü o kadar küçülür. örneğin 4 ayrı sargılı fakat 100 parçalı bir adım motoru bir devirede 100*4 = 400 adım atabilir açısal olarak ise 360/400 = 0,9 derecedir. Aşşağıda bir adım motorunun çalışması canlandırılmıştır. Adım motorunda aynı anda iki kutbun aktif olamsıyla dönen kısım olan rotor bu iki kutbun ortasında durabilmekdedir.Fakat Rotor üzerinde uygulanan güç iki farklı noktaya zıt yönlerde çekildiğinden tutuş gücü olan tork düşmektedir. Aşşağıda tam, yarım adım şemaları karşılaştırılmalı olarak görülmektedir; [2.10.4] Servo Motorlar: Adım motorunun yapısal frenleme ve cözünürlük sağlamasından dolayı amaça uygun olarak gözüksede sorun olarak karşımıza yetersiz çözünürlük vede hız problemleriyle çıkan adım kaçırma sorunları çıkınca cazibesini yitirmektedir. Servo motor kavramı burada ortaya çıkmaktadır. Yapı Step motorla DC motorun birleştirilmesiyle oluşmuştur. Üç ana dış bobin yapısıyla step motorun parçalama teporisine döndürme prensipiylede DC motoru çağrıştırmaktadır. Extra olarak konum algılama sensörleri ve gelişmiş sargı teknikleri yer almaktadır. Aşşağıda gelişmiş bir SERVOGEAR(DİŞLİ)-ENCODER(SAYICI) üçlemesinin yer aldığı bir örnek görülmektedir. Bu Motor Nasa'nın Pathfinder adlı marsa inen ilk aracında kullanılmıştır. [2.11] Yapay Kas Sistemleri: Yapay kas sisteminde keşvedilen bir silikon birelşimli bir maddeye elektrik verince kasılamaktadır fakat madde karasız olmakla beraber uzun ömürlü bir kasılma hareketinide gerçekleştirememektedir. Sonuç olarak henüz test aşamasındadır. Aşağıdaki örnekte ise hava basıncı ile çelik tellerin dairesel hareketini kullanarak kasılan ve bırakan bir yapay kas sistemi görülmektedir. Bu sistem insan kasını taklit eden en başarılı çalışmalardan biridir, piyasa satışıda başlamıştır. Tam isim olarak Air Muscle olarak adlandırılmaktadır. [2.11.1] Geri Besleme(Feed Back): Bilgisayar kavramı işte asıl bu kavramların hesaplanması ve analizinde önemli bir yer almaktadır. Üç bouytlu olarak bir noktayı ilerletmek için yapılan işlem mikro saniyeler aldığından robotun hareketinde bir gecikme faktörü olmaktan çıkıp geri besleme vede hata aramada yer almaya başlamaktadır. Motorların dönme hareketini açısal olarak yani adımsal olarak belirli bir çözünürlükte aktarılabilmesi için gerekli sistem sonucunda encoder yapısı ortaya atılmıştır. Temel olarak iki ana yapıda yer almaktadırlar; 1.Mağnetik 2.Optik [2.11.2] Mağnetik Ortamlar: Mağnetik kavramındanda anlaşılabileceği gibi mağnetik ortamlar olan endüvisel bobin ve mıklatıs yapılarından oluşan bir geribesleme türüdür. Hareket bir mıklatış çembere aktarılır ve çembere en az iki kutup başı olmak üzere birden fazla kutup yerleştirilerek imal edilir çemberin bir noktasında yeralan magnetik alan algılayıcı olan transistör yapılı entegre ile kutup değişimleri algılanabilir. Ne kadar fazla kutup başı olursa sistem o kadar çok adım gösterir, veya çemberin çevresel uzunluğuda kutup sayısıyla birlikte encode sistemine etki eder. Sistemde kutup başları arasındaki geçişlerdeki boşluk ve hassasiyet yüksek çözünürlüklü sistemler için kabul edilebilecek sınırların dışındadır. İki farklı kullanım türü vardır; [2.11.3] Potansiyometre: Her ne kadar mağnetik alan içermesede yapısal olarak mağnetik encoderleri çağrıştırmaktadır. Bilinen Pot dirençler bu işlem için kulanılır, potun sonsuz turlu olması gerekmektedir. Bu sistemin encode işlemlerindeki en büyük avantajı anlık konum bilgisini verebilmesidir yani adımları sayarak değilde sıfırıncı dirençten itibaren olan direnç değişim farkından açısal dönüş maximum dirençe göre çıkarılabilir. Dez ajantajı ise sonsuz turlusunun fiyatının yüksek olması ve 0(sıfır) noktasındaki bir miktar olan fakat sistem genelini etkileyen boşluktur. [2.11.4] Mağnetik Encoder: Mağnetik ortamlarda anlatıldığı gibi çembersel bir mıklatısın kutup değişimini algılayan bir mağnetik alan değişim entegresi ile sistem encode yapmaktadır. Bu sistem anlık pozisyon yerine adım bilgisi vermektedir. Aşşağıda örnek resimleri görülmektedir. [2.11.5] Optik Encoder: Yukarıda işlenen mağnetik encoderlardan farklı olarak optik yapı önplana çıkmaktadır. Mağnetik ortamdaki mıklatıs çember yerine belirli adetlerde var olan delikler devreye girmektedir bunlar kutup başları gibi adım atmaları belirtmek için kullanılır. Mağnetik kutup değişimi entegresi yerine optic bir led ile tam karşısına optic algılayıcı konarak önünde yer alan delikli çemberin dönüşünü algılamaktadır. İleri ve geri hareket ayrımını yapabilmesi içinde optic çember delikleri ikili olarak dizilmişlerdir vede cift optic led ve algılayıcıyla tek-çift mantığı sayesinde hareket çözülmektedir. Aşşağıda buna ilişkin tablo ve örnek yapılar yer almaktadır. 1.Motor 2.Koruyucu Kesit 3.Optic Verici ve yansıyanı alıcı 4. Ana bağlantı kablosu 5. Ters ışıkların girmesini önleyen koruyucu kap. [2.12]Programlama Dili Programlama Dilini tanimlayacak olursak ilk önce dip kökün anlamina bakmamiz gerekir. Dil insan oglunun gelistirdigi ilk iletisim sistemlerinden biridir, amaç iki veya daha faza insan arasindaki iletisimi saglamaktir. Program ise bilgisayar ortaminda yer alan bir amaç dogrultusunda yazilan islevsel dökümandir, yani bilgisayarin anlayacagi dilden tasfir ve emir gurubu dökümanidir. Bu ikisini birlestirirsek ortaya bilgisayar hedefli yeni bir lisan kurami çikar. Diger diller gibi kendisine has kurallari ve gereksinimleri vardir. Bu dili olusturanlarin belirleyip korudugu bir ifade toplulugudur, diger normal dillerden en büyük farki dil yordamininda bilgisayarla olusturulmus olmasidir. Genel olarak proje hedefli dillere bakacak olursak ilk olarak bilgisayar ortamindan bagimsiz görünen Robot Programlama Dilleri görebiliriz. [2.12.1] Robot Programlama Dilleri: Geçmiste olusturulan bilgisayar disi aygitlarin temel bir standart ile kendi aralarinda uyumlu çalisabilmesi için genel kuram ve zorumluluklar konulmak istenmistir fakat günümüzde oldugu gibi firmalar yüksek basari ve kalite için kendi standartlarini koymuslardir örnegin su anda yazici kurulumunda en önemli etmen HP olup olmamasidir, Hp kendi ansi standartini olusturmus ve kalitesi ile bunu dünyaya kabul ettirmistir. Gelisen isletim sisitem fonksiyonlari ile program yönetimi sanal ortamlara tasinarak yapilan ana islevler çok basitlestirilmistir. Ilk olarak "Teach by Lead" yani göster ve uygulat olarak tanimlayabilecegimiz bir yapiyi görmekteyiz bu yapida hedef olan programlam dili olmasina karsin robot kendine yaptirilan bir hareketi defalarca tekrarlayabilmektedir. Daha çok boyama robotlarinda kullanilan bu teknik sayesinde yapilacak boyama islevi kolu çekistirerek yapilir bu yapilan islemler sirasinda "Teach(Ögrenme)" kademsinde olan robot algilayicilarindan gelen verileri Epromuna kaydederek islevi sonladirilinca tekrarlayabilir, enbüyük dez avantaji kolun hareketinin insan ögesi ile tekrarlamaktir. Bundan sonraki asamalarda devreye uygulayici olarak bilgisayar yani yapisal bir program devreye girmektedir. VAL ve VAL II(tm): Bu programlama dili ile daha çok PUMA robotlari programlanmaktadir. Bu Basic tipi benzeri hareketlerin tanimlanmasini saglayan bir özellik tasimaktadir. VAL ve gelistirilmis versiyonu olan VAL II (TM) yüksek seviyeli dil olarak tanimlanmaktadir. Bu programlama dilinde kullanilan komutlar ve özellikleri asagidadir. SPEED 100 ALWAYS : Robot yeni bir komut gelene kadar 100 ünite degerindeki hizla hareket edecektir. Robot hizlari ünite olarak tanimlanir ve 0,01 ila 327,67 sinirlari arasindadir MOVE POINT : Robot kol halihazirda bulunulan konumdan POINT olarak tanimlanmis yeni noktaya hareket edecektir. MOVE 2POINTS : Robot kol dogrusal olarak tanimlanmis iki noktaya hareket edecektir. Önce birinci hedefe daha sonra ikinci hedefe ulasacaktir. DRIVE 1 , 30 , 100 : Bu komut ile 1 nolu birlesim robot tabani 30 derecelik dönmeyi ve 100 ünite hizinda gerçeklestirecektir. DRAW 100 , 200 , 50 : Draw komutu takim merkez noktasi için kullanilmaktadir. Robot tutucusu 100 cm x ekseninde 200 cm y ekseninde ve 50 cm z ekseninde kartezyen koordinat sisteminde hareket edecektir. APPRO POINT , 100 : Bir önceki pozisyon noktasindan 100 cm ileriye hareket komutudur. Burada 100 cm takimin robot ucun bulundugu noktadan z ekseni boyunca ilerlemesidir. DEPART 100 : Ayni Appro Point komutu gibidir. Yalniz burada hareket Z ekseninin negatif yönünde olacaktir. VAL dilinde yazilan her bir program bütün diger programlarin alt programi olabilir. Unimation VAL program dilini gelistirerek yeni bir versiyonu olan VAL II (TM) çikartmistir. Burada robot hareket komutlari trigonometrik fonksiyonlar, gerçek zaman iletisimi için ileri fonksiyonlarve çevre ekipmanlari ile kontrol sisteminin baglantisi için gerekli olan komutlarla desteklenmistir. AML PROGRAMLAMA DILI: Yüksek seviyeli dil olarak kabul edilen AML A Manufacturing Language kelimelerinin bas harflerinden olusmustur. Bu dil Endüstriyel robot sistemlerinin islemleri için özellikle dizayn edilmistir. Bu programlama dili ile robot sistemlerinin dört temel fonksiyonu kontrol edilebilmektedir. Bunlari su sekilde siralayabiliriz. 1- Manipulation (Kullanma Isletme) fiziksel objelerin ismerkezi etrafinda dödürülmesi. 2 - Sensing (Algilama) 3 - Intelligence (Haberlesme) [2.13] Robot Sistemlerin Kontrolü ve Oluşan Konum Hatalarının Analizi Robot sistemlerde, görevin yerine getirilmesi için final aşaması, robotun kontrolü ve programlanmasıdır. Kontrol ve programlama teknikleri, robot sistemin yapacağı İşin karmaşıklığına göre seçilir. Robot sistem sürücülerinin kumandasından ve mekanik alt sistemlerin sürtünmesinden oluşan aşınmalardan doğabilecek konum hatalarının kabul edilebilir hata sınırları içerisinde tutulması için, elektronik ya da elektro-mekanik denetimci (controller) devreler kullanılması gerekir. Robot sistemlerin çok geniş kullanım alanları olduğundan dolayı tanımlanmalarında bazı ufak ayrıntılar önem kazanmıştır. Robot sistemlerin en yaygın kullanım alanlarından biri de endüstri sahalarıdır. İngiliz Robot Birliği (BRA) ve Japon Endüstriyel Robot Birliği (JIRA) gibi ulusal robotik birliklerinin yayınladığı resmi robot tanımları, çoğunlukla endüstriyel robotların tanımıdır. Robot sistemlerin endüstri alanlarında kullanılmalarıyla ilgili olarak robot tanımı, Amerikan Robot Enstitüsü (RIA) tarafından şu şekilde yapılmıştır. "Robot, çeşitli görevleri yapmak maksadıyla değişik şekillerde programlanmış hareketlerle; nesnelerin, gereçlerin, gereçlerin ya da özel düzeneklerin taşınması için tasarlanmış çok işlevli bir manipülatördür." Robot sistemler, uygun şekilde bir araya getirilen mekanik ve elektronik alt sistemlerin amaca uygun olarak kumanda edilmesi İle çalışır. Bir robot sistemin tasarımında, istenilen hareketlerin kusursuz biçimde elde edilmesi için, kontrol ünitelerinin ve programlama şekillerinin doğru seçilmeleri gerekir. Kontrol birimindeki özel bir kabin içerisine yerleştirilen bilgisayar sayesinde, kontrol bağlantıları yapılan bütün alt sistemlerin yönetimi yapılabilir. Robot sistemlerin kontrollerindeki en karmaşık yapı, siborg (cyborg) adı verilen bir bölümü makine diğer bölümü biyolojik yapıdan oluşan sistemlerdir. Bu gibi sistemler günümüzde, yapay kalça eklemlerinde ya da kalp kapakçıklarında kullanılmaktadır. Robotik kontrol sistemlerinin, insanların sağlıklarım düzeltmek amacıyla, tıp alanında kullanılmasına tam olarak siborg (cyborg) demek mümkün değildir. Siborg; sibernetik ve organizmanın bir karışımıdır. Sibernetik, mühendislik ve biyolojide denetim düzenlerin (kontrol sistemlerinin) bilimidir. İlk olarak bu sistemden Norbert WIENER tarafından bahsedilmiştir. Robot sistemlerin kontrollerinde ya da programlarında meydana gelebilecek yanlışlıklar, ilgili alt sistemlerin çalışmasında büyük hatalara sebep olabilir. Örneğin, robot kol sistemine ait pnömatik piston tipindeki bir sürücü hassas kontrol edilememesinden dolayı, meydana gelen hata neticesinde hem çevresine zarar verebilir, hem de kullanılmaz duruma gelebilir. Bu nedenle, robot sistemler İçerisinde kullanılan bütün sürücüler ve alt sistemlerin en hassas biçimde kontrolleri sağlanmalıdır. Zamanla sistemdeki mekanik aşınmalar ve sürücü hatalarından meydana gelecek aksaklıklar, robot sistemin pozisyonunu kontrol eden denetleyicilerle, konum hatası sınır toleransları içerisinde tutulmalıdır. [2.14] Robot Kontrol Sistemleri Uygun şekilde bir araya getirilen mekanik ve elektronik sistemlerin kumanda edilmesi ve robot sistemlerinin hareketlerinin düzenli bir şekilde yapılması İçin, robot sisteminde en son yapılan işlem kontrol ve programlama biriminin yerleştirilmesidir. Kontrol birimi, güçlü bir bilgisayar yerleştirilmiş özel kabinden oluşur ve robotun bütün alt sistemlerinin görevlerini düzenler[3]. Kontrol birimi, robot aktüatörleriyle ilgili olan taşıma işlemlerini belirtilen hata sınırlarında, robotun içerisine yerleştirilen dahili sensörlerle kontrol eder. Robot sisteminin çevre ile ilgisi varsa, harici sensörler kullanılarak kontrol sağlanır. Robotlarda kullanılan kontrol alt sistemleri temelde İki gruba ayrılır. 1. Açık Devre Kontrol Sistemleri, 2. Kapalı Devre Kontrol Sistemleri. [2.14.1.] Açık Devre Kontrol Sistemleri Açık devre kontrol sistemlerinde, çıktı hareketinin miktarını algılayacak kontrol birimi yoktur. Endüstride yapılan işlerin çoğu, genellikle insanlar tarafından açık devre kontrolle yapılır. Operatör, kumanda kolunu kontrol ederek istediği büyüklükteki deliği açabilir. Manuel kontrollü bütün mekanizmalar, insan kontrolünde kapalı devre kontrol sistemi gibi çalışsa da, gerçekte açık devre kontrol sistemleridir[4]. Şekil 1. Açık devre kontrol sistemiyle silindir hareketi diyagramı. Açık devre kontrol sistemleri, kartezyen tip robot kolların fazla hassasiyet gerektirmeyen eksenlerindeki hareketlerinin kontrolünde kullanılabilmektedir. Kartezyen robot kollar öteleme hareketleriyle ilgili olduğundan, matematiksel olarak pozisyon hesaplamaları en yalın sistemdir. Yükü, bir yerden bir yere götürmek İçin gerek duyulan eklem hareketini hesaplamak kolaydır ve kol hareketi, yük yönlendirilmesine etki etmez. Elemanları baskılı devre tahtasına takmak gibi, dik açının egemen olduğu yerlerde bu üstün bir özelliktir.[5] Sekil 2. Bilgisayar kontrollü açık devre ite vinç blok diyagramı. Şekil 1'de basit bîr açık devre kontrol sistemiyle silindir hareketi diyagramı görülmektedir. Bu sistemle pozisyon kontrolünde hassasiyet elde edilmesi beklenmez. Açık devre kontrol sistemleri, yapılması istenen işlerin hassasiyetinin düşük olduğu durumlarda kullanılır. Kullanım sırasında sistemde, insan faktörü ya da kumanda kolları yerine bilgisayar da kullanılabilir. Şekil 2'de bilgisayar ile kontrol edilen bir vincin blok diyagramı görülmektedir. Şekil 3. Kapalı devre kontrolle yapılan silindir hareketinin blok diyagramı. Bilgisayara, motorun on-off durumu istenilen hareket sırasına göre programlanmıştır. Hareketin bütününü elde etmede, motoru çalıştırmak, için önceden tasarlanan hareket süresi bilgisayara işlenmelidir. Bu şekildeki sürücü kontrolüne on-off kontrol denir. Sürücüleri istenilen miktarda hareket ettirmek için, belirlenen süre kadar enerji anahtarı açılır. Açık devre kontrol sistemlerinin, hassas pozisyon kontrolünde kullanılmamasının bazı nedenleri şunlardır: * Sürücülerdeki ilk harekete geçme ve durma anlarındaki hız sapmaları, * Yük büyüklüğü, * Sürtünme. Yukarıda belirtilen nedenlerden dolayı, belirlenen işlem zamanı içerisindeki hareket miktarı değişebilir. Bilgisayar ile açık devre olarak kumarda edilebilen en iyi sürücü, step-adım motorlarıdır. Step motor, elektrik akımı verildiği sürece sabit adımla döner. Bilgisayar yardımıyla kontrol step motorlarını kumanda etmek için en iyi yollardan biridir. Elektrik akımı yo da işaretler bir program içerisinde bilgisayar yardımı ile step motora gönderilir. Açık devre kontrol sistemde görülen genel özellikleri şunlardır: * Açık devre kontrol sistemlerinde, sürücülerde ve mafsallarda oluşan hareket miktarları ölçülemez. * Robot mafsallarının doğru konuma geldiğini ölçebilecek bir eleman yoktur. * Açık devre kontrol sistemlerinde, step motorlar kullanıldığında istenilen miktardaki hareketi elde etmek mümkün olabilmektedir. * Açık devre kontrol sistemlerin kurulum maliyeti, kapalı devre kontrol sistemlerinin maliyetine göre daha düşüktür. * Açık devre kontrol sistemlerinin kullanım alanları sınırlıdır. [2.14.2] Kapalı Devre Kontrol Sistemleri Kapalı devre kontrol sistemi, açık kontrol sistemlerine konum ölçü devresi eklenerek sürücülerin yaptığı hareket miktarını sistem içerisinde algılayarak, sürücülere kumanda edilmesi esasına göre çalışır. Bir hidrolik silindire konum ölçü devresi eklenerek, robot kol sistem mafsalının hareketleri kontrol edilebilir. Kapalı devre kontrol sisteminin genel çalışma özellikleri şunlardır: * Sürücüyü kontrol eden devre elemanları, sisteme hareket noktasında ilişkilendirilmelidir. * Silindir veya mafsalın gerçek pozisyonu transistor ya da transdüktör kullanılarak ölçülmelidir. * Hareket uzaklığı ölçülüp, silindir ile karşılaştırılarak, silindir istenilen miktar kadar hareket ettirilir. Sisteme transistor eklenmesi sırasında montaj için en uygun yer sürücünün üzeri değil, hareket eden mafsalın üzeridir. Böylelikle sürücülerde ve bağlantılarındaki aşınmadan dolayı oluşacak hatalar önlenmiş olur(Şekil3). Transistörler, hareketli mafsalların konum açısını ölçebilir ve bir silindirin kontrolünde kullanılabilir. Yukarıda verilen örnek İçin silindirin boyunun 30 mm pozisyonuna gelmesi İstenirse, denetleyici transistör sinyali olarak: ¸0=30x0.1=3 V'u hesaplar. Silindir o anda konum olarak 40 mm pozisyonunda bulunmaktadır. İstenilen konuma ulaşmak İçin 10 mm geri hareket etmesi gerekir. Burada konum hatası 10 mm'dir ve sinyal hata miktarı ¸¸ ile gösterilir. Konum hata sinyali denklemi ¸¸=¸i-¸0 şeklinde yazılır. Hesaplanan bilgilerin sistemde kullanılabilmesi için denetleyiciye geri bildirilmesi, dijital sinyal sağlayan transistörlerle olur. Bilgisayar programı basit bir hesaplama İle sistem sinyallerini karşılaştırıp gerekli voltajı hesaplayarak güç sistemine doğru pozisyon için gerekli analog voltaj üretmesi için sinyal verir. Şekil 4. Robot sistem elemanları: 1 .Robot kol, 2. Tutucu, 3. Bilgisayar, 4. Güç Ünitesi [7], [2.15] Robot Programlama Yöntemleri Robot sistemlere, program yazılarak aynı robot sistemin farklı zamanlarda değişik işler yapması sağlanabilir. Program bir öğretim paketidir. Robot sisteme ait her bir mafsalın ne zaman ve ne kadar hareket edeceği program İçerisinde belirtilir. Çok amaçlı robotlarda, genel sistem kontrol elemanı bilgisayardır (Şekil 4). Bilgisayar kullanıcı tarafından girilen dijital bilgileri mikrochipte saklar. Şekil 5. Pozisyon-zaman grafiği. Mikrochipler robotun iç belleğini oluştururlar. Yeni bir program ya da aynı programın tekrarı istenirse, talimat olarak bilgisayara bildirilmesi gerekir. Düşük seviyeli robot sistemlerde bilgisayar kontrolü kullanılmaz. Robot hareketleri switclerle ve elektronik devrelerle kontrol edilir. Bu en kolay kontrol şeklidir. Pnömatik sürücülü robot sistemler, küçük mekanik valfler ve selonoid valfler ile kontrol edilebilir. Bu tip kontroller hidrolik sürücüler kullanılan robotlar için uygun değildir. Robot sistemlerin çalışması sırasında, operasyonlar arasında zaman aralığını ayarlamak, hareketin hızını değiştirmek için değişik teknikler kullanılır. Bu tekniklerden bazıları çok ilkel olabilmektedir. Örneğin, bazı robot sistemlerde hareketi ve işlem sırasını değiştirmek için switclerin fiziksel konumunu değiştirmek gerekir. İşlem sırasını değiştirmek için bazen devrenin değişmesi gerekir. Bu zahmetli ve zaman alıcı bir iştir. Bu şekildeki sistemler bazı İş makinelerin otomasyonunda kullanılır. Robot sistemlerin yeniden programlanmasını kolaylaştırmak için elektrik ya do pnömatik devre elemanları bir kontrol merkezinde toplanır. Programlama, pano ve panelde İstenilen devre kurularak daha kolay yapılabilir (Şekil 4). Robot sistemlerin programlanmasında kullanılan gelişmiş programlama teknikleri vardır. Gelişmiş programlama teknikleri yüksek seviyeli ve hareket alanı karmaşık robotların hareketinde kullanılır. Bu tekniklerden en fazla aşağıdaki 3 tanesi kullanılır [3]. 1. Off-line programlama, 2. On-line programlama, 3. Kılavuz programlama. Aşağıdaki İş alanlarında programlama sistemi kullanımı pratiklik sağlar. * Bir palet üzerinden elemanı ya da parçayı alarak, bir makineye yerleştirme işlemleri, * Parçaları tezgahtan alarak tekrar palete koyma işleri, * Parça monte etmek işleri, * Cisimleri konveyör hattında hareket ettirme işleminde. * Kapları sıvı ile doldurma işleri, * Isıl İşlem fırınlarına parça verip-alma ve yerleştirme işlemini hızlandırmada. [2.15.1] Kılavuz Programlama Kılavuz programlamada operatör, robot kolu tutacağından, yapılacak işi yavaş bir şekilde robot kola bir defa yaptırır. Bu İşlem sırasında robot sistemin hareket algılayıcıları kayıt modundadır. Yapılan bu kayıt, robot sisteme playback olarak tekrarlanabilir. Bir robot kol sistemin, araba gövdesini sprey boya ile nasıl boyayacağı öğretilmiş ise, sistem daha sonra bu işlemi aynı şekilde yapabilir. Robot sistemin görevini yapması için kontrolör, kaydedilmiş hız ve sırada istenilen konuma mafsal hareketini yaptırır. Bu tip programlama ile çok karmaşık hareketler üretilebilir[4]. Kılavuz programlamanın en genel olarak kullanıldığı yerler ise; * Birleştirme yerlerine tutkal, yağ sürme, kaplama, * Birleştirme bölgesini mühürlemek, * Kaynak bağlantılarını taşlayıp, gizlemek, * Sürekli ve süreksiz kaynak işleri, olarak sıralanabilir. Kılavuz programlama aynı zamanda öğretici panel olmaksızın nokta operasyonda da kullanılabilir. Nokta ve konum marka edilir. Her iki konum kontrolöre kaydedilir. Program çalıştırıldığında, robot iki nokta arasındaki mesafeyi en kısa yoldan alacaktır. Bu işlemin endüstrideki en iyi uygulama yeri, panel üzerine deliklerin açılması işlemidir. BÖLÜM III ROBOTLARIN GENEL KİNEMATİK HESAPLAMALARI [3.1 ]Robotik alanındaki genel kavramlar aşağıdaki ana ve alt başlıklarda toplanabilir: Dönüşümler Dönme Matrisi Öteleme Vektörü Homojen Dönüşüm Düz Kinematikler Denavit-Hartenberg(DH) Dönüşümü Ters Kinematikler Hız Kinematikleri Jakobyen Tekillikler Dinamikler Lagrange Denklemleri Newton-Euler(NE) Denklemleri [3.2]Dönüşümler Manipülatör eklemlerle birbirine bağlanmış rijid cisimlerin açık uçlu kinematik zinciri olarak kabul edilir. Zincirin bir ucu yere bağlı iken diğer ucu sonlandırıcıya bağlıdır. Sonuçta bu yapının hareketi her bir uzvun diğerine göre hareketlerinin toplamından oluşturulur. Bunun için önce bir rijid cismin uzaydaki konumunu ve yönelimini belirtmek için dönme(rotation) matrisi ve öteleme(translation) vektörü oluştururuz. Bu matris ve vektörü birleştirmek için daha sonra homojen dönüşüm gösterilimini kullanırız. [3.2.1] Dönme Matrisi Şekil 2.1’de gösterildiği üzere {i0,j0,k0} ox0y0z0 koordinat çerçevesi için , {i1,j1,k1} ox1y1z1 koordinat çerçevesi için birim vektörler olsun. 1. koordinat çerçevesi 0. koordinat çerçevesinde z0 ekseni etrafında θ açısı kadar döndürülerek elde edilmiştir. Bu iki koordinat çerçevesi arasındaki dönüşüm Eşitlik 2.1.1 ile 1 bulunur. Buradaki R0 matrisi 1. koordinat çerçevesinden 0. koordinat çerçevesine dönme matrisini göstermektedir. 1. koordinat çerçevesi 0. koordinat çerçevesinden belli bir dönme ile elde edildiğinden bu matris dönme matrisi adını alır. ⎡ i0 .i1 R01 = ⎢⎢i0 . j1 ⎢⎣i0 .k1 j0 .i1 j0 . j1 j0 .k1 k 0 .i1 ⎤ k 0 . j1 ⎥⎥ k 0 .k1 ⎥⎦ (2.1.1) Şekil 2.1 z0 ekseni etrafında dönme Burada i0 .i1 = cosθ j1 .i0 = − sin θ j0 . j1 = cosθ (2.1.2) i1 j0 = sin θ k 0 k1 = 1 ve diğer tüm nokta çarpımlar sıfır olmak üzere, ⎡cosθ R = ⎢⎢ sin θ ⎢⎣ 0 1 0 − sin θ cosθ 0 0⎤ 0⎥⎥ 1⎥⎦ (2.1.3) 1 dönme matrisi elde edilir. R0 gösterilimi yerine dönme eksenini ve açısını belirten Rz ,θ gösterilimi de kullanılabilir. Koordinat çerçeveleri etrafında dönme tek olmayabilir , böylece devam eden şekilde ox2y2z2 , ox3y3z3 , ox4y4z4 … koordinat çerçeveleri elde edilebilir. Aslında sonuçta elde edilen koordinat çerçevesi sadece üç eksen etrafında (x,y,z) belirli açılarla dönmüştür. Bu nedenle elimizde bulunan rasgele bir koordinat çerçevesinin temel koordinat çerçevesine göre dönme matrisini elde etmek için üç tane açı değeri yeterlidir. Bu açıların tanımlanması için iki tane gösterilim mevcuttur : Euler açıları gösterilimi Roll / Pitch / Yaw açıları gösterilimi , 3.2.1.1 Euler Açıları ve Gösterilimi Euler açıları sırasıyla z ekseni etrafında Ф açısı kadar , y ekseni etrafında θ açısı kadar , tekrar z ekseni etrafında Ψ açısı kadar dönmelere karşılık gelmektedir. Euler açıları gösterilimi Şekil 2.2 ‘de verilmiştir. Şekil 2.2 Euler açıları gösterilimi Burada cos = c , sin = s olmak üzere dönme matrisi şu şekilde elde edilir : (3.1.4) R01 = Rz ,φ R y ,θ Rz ,ψ 0 sθ ⎤ ⎡cψ − sψ 0 ⎤ ⎡cφ − sφ 0 ⎤ ⎡ cθ ⎢ ⎥ ⎢ cφ 0⎥ ⎢ 0 1 0 ⎥⎥ ⎢⎢ s ψ cψ 0 ⎥⎥ = ⎢ sφ ⎢⎣ 0 0 1 ⎥⎦ ⎢⎣ − s θ 0 c θ ⎥⎦ ⎢⎣ 0 0 1 ⎥⎦ ⎡ c φc θ c ψ − s φs ψ − cφc θ s ψ − s φcψ cφs θ ⎤ = ⎢⎢ s φ c θ c ψ + c φ s ψ − s φ c θ s ψ + c φ c ψ s φ s θ ⎥⎥ ⎢⎣ sθsψ c θ ⎥⎦ − sθcψ 2.1.2. Roll/Pitch/Yaw Açıları ve Gösterilimi Roll / Pitch / Yaw açıları sırasıyla z ekseni etrafında Ф açısı kadar , y ekseni etrafında θ açısı kadar ve x ekseni etrafında Ψ açısı kadar dönmelere karşılık gelmektedir. Roll / Pitch / Yaw açıları gösterilimi Şekil 2.3 ‘de verilmiştir. Şekil 2.3 Roll / Pitch /Yaw açıları gösterilimi Burada dönme matrisi şu şekilde elde edilir : (2.1.5) R01 = Rz ,φ R y ,θ Rx ,ψ 0 ⎤ ⎡cφ − sφ 0⎤ ⎡ cθ 0 sθ ⎤ ⎡1 0 ⎢ ⎢ ⎥ ⎢ ⎥ 1 0 ⎥ ⎢0 cψ − sψ ⎥⎥ = ⎢ sφ cφ 0⎥ ⎢ 0 ⎢⎣ 0 0 1⎥⎦ ⎢⎣− sθ 0 cθ ⎥⎦ ⎢⎣0 sψ cψ ⎥⎦ ⎡cφcθ − sφcψ + cφsθsψ sφsψ + cφsθcψ ⎤ = ⎢⎢ sφcθ cφcψ + sφsθsψ − cφsψ + sφsθcψ ⎥⎥ ⎢⎣ − sθ ⎥⎦ cθsψ cθcψ 2.2 Öteleme Vektörü d kadar bir öteleme ile elde edilmiş oxyz Şekil 2.4’de gösterildiği üzere oxyz’den koordinat çerçevesi düşünelim. Bu iki koordinat çerçevesi arasındaki dönüşüm öteleme vektörü ile tanımlanır. (3.2.1) ⎡d x ⎤ d = ⎢⎢d y ⎥⎥ ⎢⎣ d z ⎥⎦ 1 0 Şekil 2.4 Ötelenmiş çerçeve 3.2.1.3 Homojen Dönüşüm Üç boyutlu uzayda koordinat çerçeveleri arasındaki dönüşüm dönme matrisleri ve öteleme vektörleri yardımıyla yapılır. Her ikisinin birlikte gösterilimi için yani koordinat çerçeveleri arasında hem dönmenin , hem de ötelemenin var olduğu durumda homojen dönüşüm matrisleri kullanılır. Homojen dönüşüm matrisleri aşağıdaki gibi elde edilir : ⎡ ⎢ R1 0 T01 = ⎢ ⎢ ⎢ ⎣0 0 (3.3.1) ⎤ d ⎥⎥ ⎥ ⎥ 0 1 ⎦ 4x4 1 0 T01 matrisi 1. koordinat çerçevesinden 0. koordinat çerçevesine T1 homojen dönüşüm matrisini göstermektedir. 0 matrisini 4x4 boyutundan kare matris Burada elde edilen olduğuna dikkat edilmelidir. Bu homojen matris oluşturulurken matrisin tersinin T1 alınabilmesi için yapılmıştır. 0 matrisindeki T4,4 elemanı olan 1 tüm elemanların bire bir ölçeklendiğini göstermektedir.Bu elde ettiğimiz genel kalıba bağlı olarak temel homojen dönüşüm matrisleri şu şekildedir : Rx ,α ⎡1 0 ⎢(2.3.2) 0 cα =⎢ ⎢0 sα ⎢ ⎣0 0 d x ,a ⎡1 ⎢0 =⎢ ⎢0 ⎢ ⎣0 0 1 0 0 0⎤ 0⎥⎥ R y ,φ 0⎥ ⎥ 0 1⎦ a⎤ ⎡1 ⎥ ⎢0 0⎥ d y ,b = ⎢ ⎢0 0⎥ ⎥ ⎢ 1⎦ ⎣0 0 − sα cα 0 0 1 0 ⎡ cφ ⎢ 0 =⎢ ⎢− sφ ⎢ ⎣ 0 0 sφ 1 0 0 cφ 0 0 0 0 0⎤ 1 0 b⎥⎥ d z ,c 0 1 0⎥ ⎥ 0 0 1⎦ 0⎤ ⎡cθ ⎥ ⎢ sθ 0⎥ Rz ,θ = ⎢ ⎢0 0⎥ ⎥ ⎢ 1⎦ ⎣0 ⎡1 0 0 0 ⎤ ⎢0 1 0 0 ⎥ ⎥ =⎢ ⎢0 0 1 c ⎥ ⎥ ⎢ ⎣0 0 0 1 ⎦ − sθ cθ 0 0 0 0 1 0 0⎤ 0⎥⎥ 0⎥ ⎥ 1⎦ 3.3. Düz Kinematikler Robotikte düz kinematikler manipülatörün verilen eklem değişken değerleri için sonlandırıcının konumunu ve yönelimini bulmak olarak tanımlanabilir. Eklem değişkenleri , eklemin döner olması durumunda uzuvlar arasındaki açı , eklemin kayar olması durumunda uzuv uzanma miktarıdır. Bu değişkenler için gösterilimler aşağıda verilmiştir : (3.1) ⎧θ döner eklem için ⎫ qi = ⎨ i ⎬ ⎩d i kayar eklem için⎭ Manipülatörlerin eklemlerle birleştirilmiş bir dizi uzuv olduğundan yola çıkarak Şekil 3.1 ‘de gösterildiği üzere n+1 uzva sahip bir manipülatörümüz olduğunu ve her bir uzva bir koordinat çerçevesi atandığını düşünelim. Eklem i Uzuv i-1 Uzuv i Eklem i+1 Eklem i-1 Eklem n Eklem 2 Uzuv n Uzuv 1 Eklem 1 Uzuv 0 Şekil 3.1 n+1 uzva sahip kinematik zincir oluşturan manipülatör Şimdi Ti −i 1 ’in çerçeve i ‘den çerçeve i-1’e homojen dönüşüm matrisi olduğunu i düşünelim. Burada Ti −1 matrisinin sabit olmadığına , manipülatörün hareketiyle değiştiğine dikkat edilmelidir. Bu ifadelere bağlı olarak sonlandırıcının konumunu ve yönelimini temel(base) koordinat çerçevesinde elde etmek için homojen dönüşüm matrisini şu şekilde ifade edebiliriz : H = T0n = T01 .T12 ....Tnn−1 (3.2) 3.3.1 Denavit-Hartenberg(DH) Dönüşümü Eşitlik 3.2 ile elde edilen dönüşüm kolay gibi görünse de her bir eklem için koordinat çerçevelerinin yerleştirilmesi ve birbirlerine göre yorumlanması anlam karmaşasına yol açmaktadır. Bu anlam karmaşasını ortadan kaldırmak için Denavit ve Hartenberg 1955 yılında sistematik bir yöntem önermişlerdir. Bu yöntemde aşağıdaki kurallara göre önce koordinat çerçeveleri atanır , daha sonra dönüşüm için gerekli uzuv ve eklem parametreleri bulunur. Yöntem dokuz adımdan oluşmaktadır ve bu adımlar aşağıda verilmiştir : 1. Eklem eksenleri z0…zn-1’i konumlandır. 2. Temel çerçeveyi sağ el kuralına göre düzenle. i =1 ,…, n-1 için adım 3-5’i tekrarla. 3. Merkez oi ’yi yerleştir.Eğer zi zi-1 ile kesişiyorsa oi ’yi bu noktaya yerleştir. Eğer zi zi-1 paralelse oi ’yi eklem i üzerine yerleştir. 4. xi ’yi yerleştir. Eğer zi zi-1 kesişiyorsa ikisinin oluşturduğu düzleme dik olarak xi ’yi yerleştir. Eğer zi zi-1 paralelse bunların ortak normalleri boyunca oi ’ye doğru xi ‘yi yerleştir. 5. Sağ el çerçevesini tamamlayacak şekilde yi ’yi yerleştir. 6.Sonlandırıcı çerçevesi onxnynzn ’i yerleştir.Bu yerleşim sonlandırıcı tipine göre değişir. Bu ilk altı adım koordinat çerçevelerinin yerleştirilmesi için kullanılır , daha sonraki üç adım bize eklem ve uzuv parametrelerini verir. 7. Daha sonra eklem ve uzuv parametreleri belirle. Bu parametreler aşağıdaki gibidir ve Şekil 4.2 üzerinde gösterilmiştir : uzuv uzunluğu ai : xi boyunca oi ’den xi ve zi-1’nin kesişimlerine olan uzaklık uzuv ofseti di : zi-1 boyunca oi-1’den xi ve zi-1’in kesişimlerine olan uzaklık. uzuv bükümü αi : xi etrafında zi-1 zi arasındaki açı eklem açısı θi : zi-1 etrafında xi-1 xi arasındaki açı eklem i uzuv i uzuv i-1 eklem i+1 eklem i-1 Şekil 3.2 Denavit-Hartenberg çerçeve ataması 8.Aşağıdaki matrise bağlı olarak iki çerçeve arasındaki homojen dönüşüm matrisini hesapla. (3.1.1) Uzuv ai αi di θi 1 a1 0 0 θ1* 2 a2 0 0 θ2* Tablo 3.1 İki uzuvlu düzlemsel manipülatör için parametreler Ai = Rot z ,θ i Trans z ,d i Trans x ,ai Rot x ,α i ⎡cθ i ⎢ sθ =⎢ i ⎢ 0 ⎢ ⎣ 0 − sθ i cα i cθ i cα i sα i 0 sθ i sα i − cθ i cα i 0 ai cθ i ⎤ ai sθ i ⎥⎥ di ⎥ ⎥ 1 ⎦ 9.Daha sonra sonlandırıcı koordinat çerçevesinden temel çerçevesine dönüşüm matrisini hesapla. T0n = A1 .... An (3.1.2) Eklem eksenleri z0 ve z1 sayfa düzlemine diktir. o0x0y0z0 temel koordinat çerçevesini Şekil 3.3’de görüldüğü üzere sağ el kuralına bağlı olarak düzenleriz. Merkezi z0 ekseninin sayfa düzlemiyle kesiştiği noktaya yerleştirilmiştir ve x0 ekseninin seçimi tamamen rasgeledir. Temel koordinat çerçevesi yerleştirildiğinde DH dönüşüm kurallarında belirtildiği gibi o1x1y1z1 çerçevesi yerleştirilir. Bu çerçevenin merkezi o1 , z1 ekseni ile sayfa düzleminin kesiştiği noktaya yerleştirilmiştir. Son çerçeve o2x2y2z2 merkez o2 ‘yi uzuv 2’nin sonunda seçerek yerleştirilir. Daha sonra oluşturulan şekilden yola çıkarak uzuv ve eklem parametreleri bulunur. Tablo 3.1’de * ile verilen parametreler değişken değerli parametrelerdir. Eşitlik 3.1.1’den yararlanarak ve Tablo 3.1’i kullanarak A matrisleri şu şekilde bulunur : ⎡c1 ⎢s A1 = ⎢ 1 ⎢0 ⎢ ⎣0 − s1 0 a1c1 ⎤ c1 0 a1 s1 ⎥⎥ 0 1 0 ⎥ ⎥ 0 0 1 ⎦ ⎡c 2 ⎢s A2 = ⎢ 2 ⎢0 ⎢ ⎣0 − s2 c21 0 0 (3.1.3) 0 a2 c2 ⎤ 0 a 2 s 2 ⎥⎥ 1 0 ⎥ ⎥ 0 1 ⎦ (3.1.4) Elde edilen A matrisleri Eşitlik 3.1.2’de yerine koyulursa ⎡c − s ⎢s c T02 = A1 A2 = ⎢ ⎢0 0 ⎢ ⎣0 0 0 a1c1 + a 2 c12 ⎤ 0 a1 s1 + as12 ⎥⎥ ⎥ 1 0 ⎥ 0 1 ⎦ (3.1.5) olur. Burada c12 ifadesi cos(θ1+θ2)’ye , benzer şekilde s12 ifadesi sin(θ1+θ2)’ye T2 karşılık gelmektedir. Burada 0 matrisinin son sütunun birinci ve ikinci elemanları sırasıyla o2 merkezinin temel koordinat çerçevesindeki x ve y bileşenleri olduğuna dikkat edilmelidir. 2. Şekil 3.4’deki üç uzuvlu manipülatörü düşünelim. Şekil 3.4 Üç uzuvlu manipülatör o0 merkezi eklem 1’e yerleştirilir. x0 ekseni sayfa düzlemine dik seçilmiştir. o merkezi de eklem üzerine yerleştirilmiştir. x0 ekseni θ1= 0 olduğunda sayfa düzlemine diktir ve θ1 değiştiğinde bu durum değişir. z1 ve z2 kesiştiğinden o2 merkezi bu kesişim noktasına yerleştirilir. x2 ‘nin yönü x1 ‘e paralel seçilmiştir böylece θ2 sıfır olur. Son olarak üçüncü çerçeve uzuv 3’ün sonunda seçilmiştir. Eşitlik 3.1.1 ve Tablo 3.2’ye bağlı olarak A matrisleri şu şekilde bulunur : ⎡c1 ⎢s A1 = ⎢ 1 ⎢0 ⎢ ⎣0 (3.1.6) − s1 0 0 ⎤ c1 0 0 ⎥⎥ 0 1 d1 ⎥ ⎥ 0 0 1⎦ ⎡1 0 ⎢0 0 A2 = ⎢ ⎢0 − 1 ⎢ ⎣0 0 ⎡1 ⎢0 A3 = ⎢ ⎢0 ⎢ ⎣0 0 1 0 0 0 0⎤ 1 0 ⎥⎥ 0 d2 ⎥ ⎥ 0 1⎦ 0 0⎤ 0 0 ⎥⎥ 1 d3 ⎥ ⎥ 0 1⎦ Elde edilen matrisler Eşitlik 3.1.2’de yerine konursa ⎡c1 ⎢s 3 T0 = A1 A2 A3 = ⎢ 1 ⎢0 ⎢ ⎣0 0 − s1 0 c1 −1 0 0 0 − s1d 3 ⎤ c1d 3 ⎥⎥ d1 + d 2 ⎥ ⎥ 1 ⎦ olur. Uzuv 1 2 3 ai 0 0 0 αi 0 -90 0 di d1 d2* d3* θi θ1* 0 0 (3.1.7) 3.4. Ters Kinematikler Düz kinematiklerin tersi biçimde robotikte ters kinematikler verilen sonlandırıcı konum ve yönelimi için gerekli eklem değişken değerlerini bulmak olarak tanımlanabilir. Ters kinematik problemlerinde düz kinematiklerin tersi biçimde homojen dönüşüm matrisleriyle oluşturulan doğrusal olmayan denklemlerin çözümlenmesi istenir. Şekil 4.1 ‘de verilen 6 uzuvlu Stanford Arm manipülatörü incelersek Eşitlik 4.1 ‘de verilen homojen matris değerleri için Eşitlik 4.2’deki doğrusal olmayan trigonometrik eşitlikler çözümlenmelidir. Şekil 4.1 Stanford Arm manipülatör ⎡ r11 ⎢r 6 T0 = ⎢ 21 ⎢ r31 ⎢ ⎣0 r12 r22 r32 0 r13 r23 r33 0 dx ⎤ d y ⎥⎥ dz ⎥ ⎥ 1⎦ c1[c2 (c4 c5c6 − s4 s6 ) − s2 s5c6 ] − s1 ( s4 c5c6 + c4 s6 ) = r11 s1[c2 (c4 c5c6 − s4 s6 ) − s2 s5c6 ] + c1 ( s4 c5c6 + c4 s6 ) = r21 − s2 (c4 c5c6 − s4 s6 ) − c2 s5c6 = r31 c1[−c2 (c4 c5c6 + s4 s6 ) + s2 s5c6 ] − s1 ( − s4c5c6 + c4c6 ) = r21 s1[−c2 (c4c5c6 + s4 s6 ) + s2 s5c6 ] + c1 ( s4c5c6 + c4c6 ) = r22 s2 (c4c5 s6 + s4c6 ) + c2 s5c6 = r32 c1 (c2c4 s5 + s2c5 ) − s1s4 s5 = r13 s1 (c2c4 s5 + s2c5 ) + c1s4 s5 = r23 − s2c4 s5 + c2c5 = r33 c1s2 d 3 − s1d 2 − d 6 (c1c2c4 s5 + c1c5 s2 − s1s4 s5 ) = d x s1s2 d 3 + c1d 2 + d 6 (c1s4 s5 + c2 c4 s1s5 + c5 s1s2 ) = d y c2 d 3 + d 6 (c2 c5 − c4 s2 s5 ) = d z (4.1) (4.2) Bu eşitliklerin kapalı formda doğrudan çözümlenmesi çok zordur , bu yüzden çözüm için etkin ve sistematik yöntemler gerektirir. Bu tip eşitliklerin çözümü için iki ana yöntem mevcuttur : Kapalı Form Yaklaşımı : Kapalı form yaklaşımı homojen dönüşüm matrisinden elde edilen eşitliklere bağlı olarak genel eklem değişkenleri çözümü elde etmeyi sağlar. Böylece çok hızlı hesaplamaların gerektiği online robot uygulamaları için pratik ve hızlı bir yaklaşım sağlar. Ayrıca çoklu(multiple) çözümlerin olduğu durumlarda bu çözümlerden sadece birini seçerek çözüm karmaşasını ortadan kaldırır. Kapalı form yaklaşımı iki alt başlıkta incelenir : Geometrik yaklaşım : Bu yaklaşım manipülatör duruşuna bağlı olarak oluşan geometrik şekilden yararlanır. Bu sebeple ters konum kinematiklerinin çözümünde tercih edilir. Cebirsel yaklaşım : Bu yaklaşım manipülatörün parametreleri ve eklem değişkenleri arasındaki cebirsel ilişkilerden yararlanır. Çoğunlukla ters yönelim kinematiğinin çözümünde tercih edilir. Sayısal(İteratif) Yaklaşım : Bu yaklaşım manipülatörün diferansiyel kinematik eşitliklerinden ve eklem değişkenlerinin başlangıç değerlerinden yararlanarak eklem değişkenlerinin zamana sayısal değerlerini bulur. Sayısal yaklaşım robot kontrolünde ve benzetiminde çok az uygulamada yer bulduğundan verilen örnekte bu yaklaşım üzerinde durulmayacaktır. Örnek : Şekil 4.2’de verilen üç uzuvlu düzlemsel manipülatör üzerinde geometrik ve cebirsel yaklaşımları inceleyelim. Şekil 4.2 Üç uzuvlu düzlemsel manipülatör Geometrik yaklaşım : Şekil 4.2’den görüldüğü üzere φ = θ1 + θ 2 + θ 3 (4.3) olur W noktasının x ve y düzlemindeki izdüşüm değerleri pwx = a1c1 + a2 c12 pw y = a1 s1 + a 2 s12 olur. Birinci eklem , ikinci eklem ve W noktasına merkezden çizilen doğrunun oluşturduğu üçgende kosinüs teoremini uygularsak 2 2 2 2 pwx + pw y = a1 + a2 − 2a1a2 cos(π − θ 2 ) olur. cos(π − θ 2 ) = − cosθ 2 (4.5) eşitliğinden yararlanarak 2 c2 = (4.4) 2 2 pwx + pw y − a1 − a 2 2 2a1a 2 (4.6) (4.7) θ 2 = A cos(c2 ) olur. Burada θ 2 ∈ ( −π ,0) dirsek yukarı , θ 2 ∈ (0, π ) dirsek aşağı duruşuna karşılık gelmektedir. Daha sonra Şekil 4.2’de çözüm için yerleştirilmiş α ve β değerlerinden yararlanarak çözüm bulunur. ⎛ pwy ⎞ ⎟⎟; ⎝ pwx ⎠ α = A tan⎜⎜ cβ 2 2 pwx + pwy = a1 + a2 c2 ; ⎛ pw 2 + pw 2 + a 2 − a 2 ⎞ ⎜ y 1 2 ⎟ β = A cos⎜ x ⎟⎟ 2 2 ⎜ 2a1 pwx + pwy ⎝ ⎠ θ1 = α ± β ; (4.8) θ 3 = φ − θ1 − θ 2 ; Cebirsel yaklaşım : Bu yaklaşımda yine Eşitlik 4.3 ve 4.4 geçerlidir. Eşitlik 4.4’deki eşitliklerin karelerini alıp toplarsak 2 2 2 2 pwx + pw y = a1 + a2 + 2a1a 2 c2 (4.9) olur. Eşitlik 5.9’da c2 terimini çekersek 2 2 2 2 pwx + pw y − a1 − a2 c2 = 2a1a2 (4.10) olur. Buradan s 2 = ± 1 − c2 2 (4.11) olarak bulunur. Eşitlik 4.11’deki ± dirsek yukarı ve dirsek aşağı duruşlarına karşılık gelmektedir. Devam edersek θ 2 = A tan( s2 , c2 ) (4.12) olur. Elde ettiğimiz bu değerleri Eşitlik 4.4’de yerine koyarsak ( a1 + a2 c2 ) pw y − a 2 s 2 pwx = s 1 2 2 (4.13) pw + pw x c1 = olur. Benzer biçimde (4.14) y ( a1 + a 2 c2 ) pwx + a 2 s2 pw y 2 pwx + pw y 2 θ1 = A tan(s1 , c1 ) θ 3 = φ − θ1 − θ 2 sonucu bulunur. 3.5. Hız Kinematikleri Matematiksel olarak düz kinematikler , kartezyen konum ve yönelim uzayı ile eklem konumları arasında bir işlev tanımlar. Hız kinematiklerini (sonlandırıcının doğrusal ve açısal hızları) bu işlevin Jakobyen’ini belirleyerek elde edebiliriz. 3.5.1 Jakobyen Jakobyen matris değerli bir işlevdir ve skaler bir işlevin türevinin vektörel hali olarak düşünülebilir. Bu Jakobyen veya Jakobyen matrisi robotikte aşağıdaki alanlarda büyük önem taşır : Düzgün yörünge(smooth trajectory) türetilmesi Tekil(Singüler) konfigürasyonların bulunması Hareket denklemlerinin türetilmesi Sonlandırıcı kuvvet ve momentlerinin diğer manipülatör eklemlerine taşınması n eklemli bir manipülatör için Jakobyen , eklem hızlarının n-vektörü ile sonlandırıcının 6 vektörden oluşan doğrusal ve açısal hızları arasındaki ilişkiyi verir. Buna göre n eklemli bir manipülatör için Jakobyen 6 x n boyutunda bir matristir. Jakobyen için genel ifade n v 0 = J v q& (5.1.1) (5.1.2) n ω 0 = J ω q& (5.1.3) n ⎡ v0 ⎤ n (5.1.4) ⎢ n ⎥ = J 0 q& ⎣ω 0 ⎦ ⎡J ⎤ J 0n = ⎢ v ⎥ ⎣Jω ⎦ şeklindedir. Jakobyen matrisi n uzuvlu bir manipülatör için sırasıyla sütunların düzenlenmesiyle oluşturulur. J 0n = [J 1 J 2 ⋅ ⋅ ⋅ J n ] (5.1.5) Buna göre eğer eklem i dönerse sütun i ⎡ z × (o n − o i −1 )⎤ → J v J i = ⎢ i −1 ⎥→ J zi −1 w ⎦ ⎣ (5.1.6) Eğer eklem i kayarsa sütun i ⎡z ⎤ → Jv J i = ⎢ i −1 ⎥ ⎣ 0 ⎦ → Jw (5.1.7) olur. Örnek : Tekrar Şekil 3.3’deki iki uzuvlu düzlemsel manipülatörü ele alalım. Burada n=2 olduğundan Jakobyen 6x2 boyutundadır ve şu şekilde ifade edilir : ⎡ z × (o 2 − o 0 ) z1 × (o 2 − o1 )⎤ J (q) = ⎢ 0 ⎥ z0 z1 ⎦ ⎣ (5.1.8) Burada o0 , o1 , o2 sırasıyla sıfırıncı , birinci ve ikinci koordinat çerçevelerinin merkezleridir. Eşitlik 5.1.8’de gerekli değişkenleri Şekil 3.3’den yararlanarak bulursak ⎡0 ⎤ ⎡a1c1 ⎤ ⎡a1c1 + a2 c12 ⎤ ⎢ ⎥ ⎢ ⎥ o 0 = ⎢0⎥ o1 = ⎢ a1s1 ⎥ o 2 = ⎢⎢ a1s1 + a2 s12 ⎥⎥ ⎢⎣0⎥⎦ ⎢⎣ 0 ⎥⎦ ⎢⎣ ⎥⎦ 0 (5.1.9) ve ⎡0 ⎤ z0 = z1 = ⎢⎢0⎥⎥ ⎢⎣1⎥⎦ (5.1.10) olur. Bu değerleri Eşitlik 5.1.8’de yerine koyarsak ⎡− a1 s1 − a 2 s12 − a 2 s12 ⎤ ⎢ a c +a c a 2 c12 ⎥⎥ ⎢ 1 1 2 12 ⎢ 0 0 ⎥ J (q) = ⎢ ⎥ 0 0 ⎥ ⎢ ⎢ 0 0 ⎥ ⎢ ⎥ 1 1 ⎦⎥ ⎣⎢ (5.1.11) olarak bulunur. 3.5.2 Tekillikler(Singülerlikler) Jakobyen matrisinin rankının azaldığı(det(J)=0) manipülatör konfigürasyonları tekillikler veya tekil konfigürasyonlar olarak adlandırılabilir. Ranktaki bu azalma serbestlik derecesinde azalma olarak da kabul edilebilir. Tekilliklerin belirlenmesi şu sebeplerden önemlidir : Tekillikler yapılamayacak hareketleri veya ulaşılamayacak noktaları belirtebilir. Tekilliklerde küçük sonlandırıcı hızları büyük eklem hızlarına sebep olabilir. Tekilliklerde ters kinematik problemleri için çözüm olmayabilir veya sonsuz sayıda çözüm olabilir. Tekillikler incelemede kolaylık getirmesi açısından iki kısımda incelenebilir : Kolun hareketi sonucu oluşan kol tekillikleri Bileğin hareketi sonucu oluşan bilek tekillikleri Örnek : 6’dan daha az uzva sahip manipülatörlerin Jakobyen matrisleri kare değildir , bu yüzden determinantı hesaplanamaz. Bu tip manipülatörlerin tekilliklerinin belirlenmesi için Jakobyen matrisinin gerekli kısımları incelenir. Tekrar Şekil 3.3’deki iki uzuvlu düzlemsel manipülatörü ele alırsak ⎡− a1 s1 − a 2 s12 − a 2 s12 ⎤ ⎢ a c +a c a 2 c12 ⎥⎥ ⎢ 1 1 2 12 ⎢ 0 0 ⎥ J (q) = ⎢ ⎥ 0 0 ⎥ ⎢ ⎢ 0 0 ⎥ ⎢ ⎥ 1 1 ⎥⎦ ⎢⎣ (5.2.1) Matrisin bizim için gerekli 2x2’lik kısmının determinantını hesaplarsak det( J ) = − a1s1 − a2 s12 − a2 s12 a1c1 + a2 c12 a2 c12 = a1a2 s2 (5.2.2) olarak bulunur. Eşitlik 5.2.2’den yola çıkarak bu manipülatör için θ2=0 ve θ2=π değerli duruşların tekillikler olduğunu söyleyebiliriz. 3.6. Dinamikler Manipülatör dinamiği hareketlendiriciler veya dış kuvvetler tarafından uygulanan momentler sonucu hareket eden manipülatörün hareket denklemleri ile ilgilenir. Tersi biçimde hareket denklemleri oluşturulmuş bir manipülatör için uygulanması gereken hareketlendirici momentlerinin hesabı da manipülatör dinamiği yardımıyla yapılır. Bu çözümleme fiziksel bir sisteme gerek kalmadan bir manipülatörün yapısını , hareketlendiricileri , sürücüleri , kontrol yaklaşımlarını ve hareket planını tasarlamada önemli bir rol oynamaktadır.Manipülatör dinamiğini çözümlemede ve hareket denklemlerini oluşturmada kullanılan iki önemli eşitlik takımı vardır.. Lagrange eşitlikleri Newton-Euler(NE) eşitlikleri 3.6.1 Lagrange Eşitlikleri Lagrange eşitlikleri mekanik sistemin kinetik enerjisi(K) ve potansiyel enerjisi(V) arasındaki farktan yola çıkarak oluşturulur : L = K −V (6.1.1) Burada L Lagrange işlevi olarak adlandırılır. Sanal(virtüel) işler prensibinden yararlanarak hareket denklemleri oluşturulursa aşağıdaki eşitlik ortaya çıkar : d ∂L ∂L − =τi dt ∂q&i ∂qi (6.1.2) Eşitlik 6.1.2 için gerekli düzenlemeler yapılırsa genelleştirilmiş hareket denklemleri oluşturulur : Q = M ( q )q&& + C ( q, q& )q& + F ( q& ) + G( q ) (6.1.3) Bu eşitliklerin elde edilmesinde ara işlemler gözardı edilmiştir. Konu ile ilgili daha ayrıntılı bilgi için okuyucu verilen kaynaklardan yararlanabilir. Lagrange eşitlikleri basittir ve sistematik olarak elde edilebilir. Ayrıca sistemin mekanik yapısıyla ilgili tüm ayrıntılar(elastik deformasyon , eylemsizlik momenti vb.) bu eşitliklerde görülmektedir. Bu sebeple gerçek bir manipülatör tasarımı sırasında Lagrange eşitlikleri mutlaka çıkarılmalıdır. 3.6.2 Newton-Euler(NE) Eşitlikleri Newton-Euler(NE) eşitlikleri ise her bir uzuv için Newton Yasaları’na bağlı olarak hareket eşitliklerini türetir. Newton Yasaları şu şekilde sıralanır : Her etkinin eşit ve zıt biçimde bir tepkisi vardır. Eğer cisim 1 cisim 2’ye f kuvveti ve τ momenti uygularsa cisim 2 cisim 1’e -f kuvveti ve -τ momenti uygular. Doğrusal momentumdaki değişme hızı cisme uygulanan toplam kuvvete eşittir. Açısal momentumdaki değişme hızı cisme uygulanan toplam torka eşittir. NE eşitlikleri her bir uzuv için tek tek hesaplandığından Yinelemeli (Recursive) NE eşitlikleri adını alır. Yinelemeli NE eşitlikleri iki kısımda incelenir : İleri yineleme : Açısal hız , açısal ivme , doğrusal ivme gibi kinematik bilgiler temel çerçeveden sonlandırıcı çerçevesine sırayla(1’den n ’e) formüller sırasıyla uygulanarak bulunur. Geri yineleme : Her bir uzuvdaki kuvvetler ve momentler sırayla sonlandırıcıdan temel çerçeveye(n ’den 1’e) formüller sırasıyla uygulanarak taşınır. NE eşitliklerini elde etmek için kullanılan genel iki uzuvlu yapı Şekil 6.1 ’de verilmiştir. Eklem i Eklem i-1 Eklem i+1 Uzuv i-1 Uzuv i Şekil 6.1 NE eşitlikleri için kullanılan genel iki uzuvlu yapı İleri yineleme için sırasıyla uygulanması gereken formüller(1’den n’e doğru) Eğer eklem i+1 dönerse ω i +1 = Rii +1 (ω i + z 0 q& i +1 ) { (6.2.1) } ω& i +1 = Rii +1 ω& i + z 0 q&&i +1 + ω i × ( z 0 q& i +1 ) ∗ (6.2.2) ν i +1 = ω i +1 × p i +1 + R ν i i +1 i (6.2.3) ∗ ∗ ν& i +1 = ω& i +1 × p i +1 + ω i +1 × (ω i +1 × p i +1 ) + R ν i (6.2.4) Eğer eklem i+1 kayarsa ω& i +1 = Rii +1ω& i (6.2.5) i +1 i ∗ ν i +1 = R ( z 0 q& i +1 +ν i ) + ω i +1 × p i +1 i +1 i ∗ (6.2.6) ν& i +1 = R ( z 0 q&&i +1 +ν& i ) + ω& i +1 × p i +1 + 2ω i +1 × ( R z 0 q& i +1 ) i +1 i i +1 i ∗ + ω i +1 × (ω i +1 × p i +1 ) (6.2.7) ν& i = ω i × s i + ω i × {ω i × s i } +ν& i (6.2.8) F i = miν& i (6.2.9) N i = J i ω& i + ω i × ( J i ω i ) (6.2.10) Geri yineleme için sırasıyla uygulanması gereken formüller(n’den 1’e doğru) f i = Rii+1 f i +1 + F i (6.2.11) ∗ i i +1 * n i = Ri +1 n i +1 + ( Ri p i ) × f i +1 + ( p i + s i ) × F i + N i (6.2.12) T i ⎪⎧( n i ) ( Ri +1 z 0 ) Eğer uzuv i+1 dönerse Qi = ⎨ T i ⎪⎩ ( f i ) ( Ri +1 z 0 ) Eğer uzuv i+1 kayarsa (6.2.13) { } Yukarıda verilen formüller gerekli başlangıç değerleri kullanılarak ve formüller sırasıyla uygulanarak yinelemeli NE eşitlikleri tamamlanır. 3.7. RobotIcs Toolbox Robotics Toolbox kinematikler , dinamikler ve yörünge türetme gibi robotikte geçerli birçok işlevi oluşturmada yararlı bir modelleme aracıdır. Robotics Toolbox gerçek robotlarla yapılan deneyleri çözümlemek kadar önemli olan 3D benzetimi yerine getirir. Peter I. Corke(CSIRO Manufacturing Science and Technology-Australia) tarafından 1996 yılında ilk versiyonu çıkarılmıştır. Şu anda kullanılan versiyon Release 6 ’dır ve yazılım tarihi 2001’dir. Yazılım www.cat.csiro.au/cmst/staff/pic/robot adresinden ücretsiz olarak edinilebilir. Toolbox daha önceki bölümlerde bahsedilen robotikteki genel kavramlar üzerine seri uzuvlu manipülatörler için yazılmıştır. Yapılan hesaplamalarla ilgili kaynaklar verilmiştir. Matlab’ın genel özelliği olarak yazılıma müdahale edilebilmektedir. Böylece kullanıcı belirli konular için kendi benimsediği algoritmaları kullanarak gerekli hesaplamaları yapabilir. Robotics Toolbox’ta kullanılan komutların listesi ekte verilmiştir. Komutlarla ilgili ayrıntılı bilgi için kaynaklara başvurulabilir. Robotics Toolbox’ta robot modeli tanımlama iki şekilde olabilir : Kendi modelini oluşturma : Robotics Toolbox’ta robot modeli tanımlamak için her uzuv için DH parametrelerini tanımlamak ve uzuvlarla robotu oluşturmak yeterlidir. L1= link([alpha1, a1, theta1, d1, sigma1]) L2= link([alpha2, a2, theta2, d2, sigma2]) . . . r=robot({L1 L2 . . . }) Burada link komutu ile uzuv nesnesi tanımlanır. alpha1, a1, theta1, d1 değerleri ise uzvun DH parametreleridir. En sondaki sigma1 parametresi ise 0 değeri için uzvun döner , 1 değeri için uzvun kayar olduğunu belirtmektedir. Oluşturulan bu uzuv nesneleri robot komutu ile birleştirilerek robot tanımı tamamlanmış olur. Uzuv nesnesinin diğer kinematik ve dinamik parametreleri de istenildiği gibi tanımlanabilir. Hazır robot modellerini kullanma : Robotics Toolbox’ta tanımlanmış üç tane hazır robot modeli vardır : Basit iki uzuvlu(twolink) Şekil 7.1 Twolink MATLAB 3D modeli Puma 560(p560) Şekil 7.2 Puma 560 MATLAB 3D modeli Stanford Arm(stanf) Şekil 7.3 Stanford Arm MATLAB 3D Modeli . BÖLÜM IV 4.1 ENDÜSTRİYEL ROBOTLAR Ekonomik olarak gelişmiş olan ülkelerin üretim sistemleri incelendiğinde otomasyon teknolojilerinin etkin bir şekilde kullanıldığı görülmektedir. Otomasyon sisteminin önemli bir parçası olan endüstriyel robot kolların önemi her geçen gün artmaktadır. Üretim sistemlerini robot teknolojisi ile donatan ülkeler diğer ülkelere rekabet şansı tanımamaktadırlar. Ekonomik rekabet gücümüzü artırabilmek için, üretim sistemlerimizi dünyada gelişmekte olan teknoloji ile donatmamız gerekmektedir. Üretim sistemlerinde son zamanlarda yaygınlaşmaya başlayan robotların tanıtılıp ülkemizdeki üretim sistemlerine adapte edilmesi gerekir. Bu amaçla bu yazıda endüstriyel robotlar hakkında genel bilgi verilmiştir. Anahtar kelimeler: Robot Kolu, Endüstriyel Otomasyon 1-Giriş Teknolojinin çok hızlı bir şekilde gelişme kaydettiği günümüzde, teknolojinin getirmiş olduğu bu yenilikler insan hayatının bir parçası olmuştur. Bu yeniliklerden insanları haberdar etme ve yenilikleri insanlara sunma bir zorunluluk haline gelmiştir. Globalleşen dünya da iletişimin çok artması insanları değişik dünya pazarlarına yöneltmiştir. Artık kaliteli ürünü daha ucuza imal etmek rekabet piyasasında bir zorunluluk olmuştur. Bu da ancak otomasyon teknolojisini kullanarak üretim yapmakla mümkün olmaktadır [6]. İnsanlar fiziksel yapılarından dolayı bedensel olarak bütün işleri yapma imkânına sahip olmadıkları için, gücünün yetmediği yerlerde kullanmak üzere değişik makineler geliştirmiştir. İlk çağlarda ilkel ve fonksiyonel olmayan bu makineler, teknolojinin gelişme süreci içerisinde insanlar tarafından geliştirilmiş ve insan meziyetlerine yakın meziyetlere sahip olan makineler üretilmiştir. İlk önceleri insan yardımı ile çalışan bu makineler, zamanla geliştirilerek ve çeşitli çevre birimlerini de beraberinde kullanarak insana ihtiyaç duymadan otomatik olarak çalışır hale getirilmiştir. Sanayide kullanılmak için tasarlanmış birçok robot bulunmaktadır. Robotlar genellikle, üretim maliyetini düşürmek ve daha kaliteli üretim yapmak için kullanılmaktadır. Ayrıca insan sağlığının zarar görme riskinin olduğu işlerde (kimyasal enerji, nükleer enerji, çok yüksek ısı, titreşim, yüksek ses v.b) ve insan elinin ulaşamayacağı yerlerde robotlar kullanılmaktadır. 18. YY. da tekstil endüstrisinde otomatik makinelerin kullanılmaya başlaması, robotlar bakımından teknoloji alanında atılan ilk adımdır. Jacquard’ın dokuma tezgâhını kontrolde kullandığı delikli kart ilk adım olarak bilinmektedir. 20.YY. da ise kendi kendini kontrol eden ve ölçebilen programlanabilir makineler icad edilmiştir. 1950 lerde otomasyonun, elektroniğin ve haberleşmenin gelişmesi ile birlikte Robot teknolojisinde büyük gelişmeler yaşanmıştır. Bunlardan ilk üretilen robot “Sammıe” dir. Bu robot insanın değişik ortamlara nasıl uyum sağladığını anlamak amacıyla tasarlanmıştır. Robotları endüstride ilk olarak kullanan ülke Japonya’dır. İlk robot kullanma fikrinin ortaya atılması ile birlikte, işsizlik oluşturacağı endişesi ile büyük tepkiler almıştır. Ama kullanılmaya başlandıktan sonra kaygıların yersiz olduğu anlaşılmıştır. Robot kullanımı ile birlikte birçok iş kolu türemiş ve işsizlik daha çok azalmıştır[4]. Bu gün robot kullanımı hayatımızın birçok alanına girmiş olup, özellikle insan sağlığını aşırı derecede tehdit eden iş kollarında, yüksek ısı, titreşim, kimyasal ve nükleer enerji ile çalışılan yerler vb. kullanımı çok daha yaygındır [2]. Bu çalışmada; dünyada hızla gelişmekte olan robot kullanımını yaygınlaştırmak ve bu konuda araştırma yapan, araştırmacılara yardımcı olmak için endüstriyel robot kollar tanıtılmıştır. 4.2 ENDÜSTRİYEL ROBOT ISO 8373 tarafından verilen sanayi robotu tanımı: Üç veya daha fazla programlanabilir ekseni olan, otomatik kontrollü, programlanabilir, çok amaçlı, bir yerde sabit duran veya tekerlekleri olan endüstriyel uygulamalarda kullanılan manipülatör dür [1]. Bir robot, çeşitli işleri yerine getirmek üzere, malzeme, parça veya özel aletleri değişken programlanabilir hareketlerle taşımak üzere tasarlanmış, yeniden programlanabilir, çok fonksiyonlu bir aygıttır. Robot uygulamaları başlıca otomotiv, elektrik, elektronik ve mekanik olmak üzere endüstrinin hemen her alanında görülebilir[3]. Endüstride robot kullanımının başlıca nedenleri aşağıda görülebilir 1. İşçilik maliyetini azaltmak 2. Tehlikeli ve riskli yerlerde çalışanların yerini almak 3. Daha esnek bir üretim sistemi sağlamak 4. Daha tutarlı bir kalite kontrol sağlamak 5. Çıktı miktarını artırmak 6. Vasıflı işçilik sıkıntısını karşılayabilmek 7. Üç vardiya boyunca aralıksız çalışma kabiliyeti, 8. İnsana göre daha fazla yük kaldırma kabiliyeti, 9. İnsana göre daha çabuk sonuca ulaşma kabiliyeti, 10. Usandırıcı ve tekrarlı işlerde yeterlilik, 11. Tehlikeli ortamlarda çalışabilme kabiliyeti, 12. İnsan hatalarını elimine etme, 13. Kalite kontrol hatalarını minimuma indirme, 14. Kendini hızla amorti etme, 15. Yüksek hareket esnekliği, 16. Yüksek kar eldesi. Yukarıdaki birçok faydalarının yanında şu sakıncaları robotlar için söyleyebiliriz; 1. Düşünemez, 2. Vision System, ile yalnızca kendisine öğretilen cisimleri görebilir, 3. Programlanmadan çalışamaz, 4. Kendisine öğretilenleri yapabildiğinden hareketleri kısıtlıdır, 5. Yüksek yatırım maliyeti, 6. Boşa geçen bakım ve onarım zamanları[2]. Endüstriyel robotlar kendi aralarında sınıflandırlırsa; 4.2.1 Kartezyen Robot Sadece tutma ve taşıma yeteneği olan bu robot tipi X,Y,Z, eksenlerinde doğrusal olarak hareket etme yeteneğine sahiptirler. Basit bir yapıya sahip oldukları için hareketlerin planlanması çok kolaydır. Bu tür robotlarda; pozisyon hesaplamaları, robot uç elemanının bulunduğu pozisyon, mafsalların o anda olduğu yerde bulunduğundan çok kolaydır. Çalışma alanları şekil1. de görüldüğü gibi robotun yapısından daha küçüktür. Eğilme ve bükülme işlemlerini gerçekleştiremez. Çalışma alanları kare veya dikdörtgen pirizma şeklinde dir. Yük taşıma kapasitesi diğer robot türlerine göre daha büyüktür. İnsan gücünün taşıma kapasitesini aşan yüklerin taşınmasında kullanılır. Bu nedenle genellikle yük araçlarına, yükleme ve boşaltma işlerinde, fabrikalar da ağır yükleri taşımak amacı ile fabrikaların tavanlarına monta edilerek kullanımı yaygındır. Islak, nemli, rutubetli çalışma ortamlarında kullanılabilir. Küçük güçte olanları pnömatik olarak tahrik sistemine sahiptir. Büyük güç gereken yerlerde hidrolik tahrikli olan kartezyen robotlar kullanılır. Bunların yağ sızdırma problemleri olduğu için temizliğin önem arz ettiği ortamlarda pnömatik tahrikli olanlar tercih edilir. Hava tahrikli olan robot tipinde basınçlı hava ve havanın kontrolüne ihtiyaç olduğu için yatırım maliyetleri daha ucuz olup işletim maliyetleri de düşüktür. Büyük güçte yapılan kartezyen robotların tahrik sistemleri elektrik motorları veya hidrolik tahrik sistemleri ile sağlanmaktadır. 4.2.2 Silindirik Robot Kolları Silindirik robot kollar da kendi etrafında dönebilen bir mafsal ve bunun üzerinde bulunan X,Y,Z düzleminde doğrusal hareket edebilen kollardan oluşmaktadır. Şekil 2. de görüldüğü gibi esnek olmayan silindirik bir koordinat sistemine sahiptirler. Kartezyen robot kola göre hareket serbestiyesi daha geniştir. Çalışma alanı içindeki noktalara ulaşımı çok iyidir. Hareket kabiliyetinin az olmasından dolayı programlanması kolaydır. Robot kolun çalışma alanı silindirik koordinat sisteminde hareket eden kolların uzunluğuna bağlı olarak değişmektedir. Robotun kullanım alanı ve yük taşıma kapasitesine göre hidrolik, pnömatik veya elektrik tahrikli olarak kullanılmaktadır. Silindirik robot kollar nemli, rutubetli ve tozlu ortamlarda, deniz altı, uzay gözlem araçlarında ve nokta kaynağı işlerinde yaygın olarak kullanılmaktadır. 3.3 Küresel Robot Kolları Bel, omuz ve dirsek mafsallarından oluşan bir yapıya sahiptirler. Bel ve omuz mafsalı kendi etrafında dönme hareketi yapabilirken, dirsek mafsalı kola uzama ve kısalma hareketi yaptırmaktadır. Hareket alanı şekil 3 de görüldüğü gibi silindirik bir koordinat sistemine sahiptir. Kol yapılarından dolayı eklemli robot kollarına benzemektedirler. Kinematik yapıları kartezyen ve silindirik robot kollara göre daha karmaşıktır. Çalışma şeklinin zihinde canlandırılması zor olduğu için programlama ve kontrolü de zordur. Çalışma alanının büyüklüğü kolların büyüklüğüne bağlıdır. Hidrolik tahrik sistemine sahip olan küresel robot kollar eğme, bükme işlerinde, kameralı izleme işlerinde kullanılmaktadır. Ayrıca sarkaç robot olarak ta küçük bir moment ile hareketlerini devam ettiren bu robotlar kaynak ve zamklama işlemlerinde kullanılırlar. 3.4 Scara Robot Kol İki eklem yerinde elektrik motoru ve aşağı yukarı hareket edebilen pnömatik koldan oluşmuştur. Eklemlerdeki elektrik motorları eksenlerin kendi etrafında dönmesini sağlamaktadır. Tutucu ağzın bulunduğu kol pnömatik tahrikli olup Z ekseninde hareket etme kabiliyetine sahiptir. Buda robot kola esnek hareket imkânı sağlamaktadır. Hız ve konum performansı çok iyi olduğundan dolayı bu robot kol en çok elektronik sanayinde, elektronik kartlara malzemelerin montajını gerçekleştirmek için kullanılmaktadır. Tutma ve taşıma işlerinde maliyetinin ucuz olmasından ve programlanmasının kolay olmasından dolayı şu anda sanayide en çok kullanılan robot olmuştur. Bu robot kol şekil 4. den çalışma alanı görüldüğü gibi, kolun altında bulunan parçaların taşınmasında kullanılır. Mafsallı Robot Kollar İnsan kolunun hareketlerini taklit etmeye en yakın robot kol dur. Üretim sistemlerinde diğer kolların hareket kabiliyetlerinin sınırlı olmasından dolayı mafsal sayısı genellikle 5 veya 6 adet olan robot kollara ihtiyaç duyulmuştur. Bu tip robot kollarda her mafsal ayrı ayrı kontrol edilebilen servo motorlardan oluşmaktadır. Mafsallarda bulunan motorlar 12–24 V. gerilim ile beslenmektedir. Hareket esneklikleri en yüksek olan robot kollardır. Kol üzerinde bulunan her eklem yeri şekil 5. de görüldüğü gibi X,Y,Z eksenlerinde üç boyutlu hareket yapabilmektedir. Çalışma alanı içerisinde tanımlanan bir noktaya en kısa yoldan ve kısa zamanda ulaşım imkânı tanımaktadır. Robotun hedef pozisyonlara yaklaşımı mafsal hareketi veya doğrusal X,Y,Z, koordinatları doğrultusunda hareket ederek gerçekleşmektedir. Diğer robot türlerine göre karmaşık bir yapıya sahip olup, programlanması da diğerlerine göre zordur. Her mafsal şekil 6. da görüldüğü gibi program içersinden sınırlandırılan belirlenmiş bir alan içersinde hareket edebilmektedir. Bu da robotun güvenli bir çalışma ortamı ve alan içerisinde bulunan diğer parçalara çarparak zarar vermesini önlemekte ve hedef noktaya, robotun daha kısa zamanda ulaşmasını sağlamaktadır. Yapılacak uygulamanın niteliğine göre robot kolun eksen sayısı tercihi yapılmalıdır. Daha basit işlemlerin uygulanmasında 3 eksenli robot kol yeterli gelmekte iken daha karmaşık ve çok fonksiyonlu bir uygulama işleminde 3 eksenli robot kol yeterli olmamaktadır. Uygulanan işlemler karmaşıklaştıkça mafsal sayısının artması gerekmektedir. Mafsal sayısının artması robotun hareket serbestîye sınır artırmaktadır. 4.3 ROBOT TAHRİK SİSTEMLERİ Günümüzdeki modern yapıya ulaşmış robotlarda tahrik sistemi olarak genellikle AC. servo motorlar kullanılırken, sanayide kullanılan birçok robot kolda, farklı tahrik sistemleri kullanılmaktadır[5]. 4.3.1 Pnömatik Birçok endüstriyel robotta tahrik sistemi olarak kullanılmakta olup, maliyetleri oldukça düşüktür. Ancak kontrolleri oldukça karmaşıktır. Basit yapılı robotlarda eksen hareketlerinin tahrikinde kullanılırken, gelişmiş robotların tutucu kısımlarının tahrik edilmesinde yaygın olarak kullanılmaktadır. Hemen hemen bütün fabrikalarda basınçlı havanın bulunması kullanımını yaygınlaştırmaktadır. 4.3.2 Hidrolik İlk zamanlarda çok kullanılan bir tahrik sistemi olmasına rağmen bazı vazgeçilemeyen alanlar dışında yerini diğer tahrik yöntemlerine bırakmaktadır. Büyük güçlü robotlarda yaygın olarak kullanılmaktadır. Çünkü hidrolik olarak elde edilen tahrik gücünü diğerlerinde elde etmemiz mümkün değildir. Dez avantajları yavaş çalışmaları ve bulundukları ortamı yağ sızdırmalarından dolayı kirletmeleridir. 4.3.3 Elektrik DC Servo Motorlar: Pozisyon ve hız kontrolünün geniş ölçülerde ve kolay yapılabildiği motorlar olduğu için kullanılmaktadırlar. Bakım masrafları ve kurulum masrafı diğerlerine göre çok daha fazladır. Bu sakıncalardan dolayı yerini giderek diğer elektrik motorlarına bırakmaktadır. AC Servo Motor: Elektronik kontrol ün gelişmesi ile birlikte bu motorlarda hız ve konum kontrolünde büyük ilerlemeler kaydedilmesi sonucu dc servo motorların yerini almaktadırlar. Dc Servo motorlara göre daha ucuzdurlar, bakıma az ihtiyaç duyarlar ve sessiz çalışma özellikleri vardır. Step Motor: Diğer motorlara göre sürücü ünitelerinin ucuz olmasından dolayı tercih edilirler. Diğer motorlara göre konum kontrolünde daha hassas kontrol sağlama olanağı vardır. Daha çok robot tutucularında kullanımı yaygındır. 4.4 ÇEVRE BİRİMLERİ 4.4.1 Tutucular Bir parçayı tutmak amacıyla değişik büyüklük ve yapılarda tasarlanmış tutucular bulunmaktadır. Tutma işlemi robotun yapacağı işe bağlı olarak pnömatik tutucuyla veya bir elektrik motorlu tutucuyla gerçekleştirilebilir. Bazen ise robot kolun ucuna iş makinesi direk olarak bağlanmıştır. Örneğin kaynak makinesi veya vida sıkma aparatı gibi. Tutucuların sıkma kuvvetlerinin kontrolünde pnömatik basınç valfleri veya sensörler kullanılmaktadır. Şekil 8. de pnömatik bir tutucunun şekil 7. de elektrikli bir tutucunun resmi görülmektedir. 4.4.2 Kontrol Paneli Robotların kontrolünde PLC (programlanabilir Lojik Kontrol Ünitesi), PIC veya üretici firmaların kendilerine ait robotları kontrol etmek için imal ettikleri kontrol üniteleri kullanılmaktadır. PLC’ lerde sinyal giriş- çıkışının sınırlı olmasından dolayı basit yapılı robotlarda kullanılabilir ama karmaşık yapılı robotlarda plc yeterli gelmemekte ve robot üreten firma şekil 9. de görüldüğü gibi kendi kontrol ünitesini de beraberinde üretmektedir. Robot ile bilgisayar seri veya paralel portlar vasıtası ile haberleşme sağlayarak, program seçme, program durdurma, başlatma resetleme, hareket hızı ayarı gibi kontrol imkânları sağlamaktadır. 6. ROBOT PROGRAMLAMA Robotların programlanmasında iki yöntem kullanılmaktadır. Bunlar öğretim yöntemi ve bir ara yüz programı ile programlamaktır. Basit yapılı robotların programlanması ara yüz programı ile yapılırken gelişmiş robotlar da uygulanabilen öğretim yöntemi programcıya büyük kolaylık sağlamaktadır. BÖLÜM V CATIA V5’DE BİR ROBOT TASARIMININ AŞAMALARI 5.1 CATIA Bu bölümde bilgisayar destekli tasarım hakkında kısa ve genel bir bilginin yanı sıra catia programını avantajlarından bahsedeceğiz. Dünyada sanayileşmenin başlaması endüstriyel iletişim vasıtası olarak görülen çizim yöntemlerinin de bir ölçüye kadar gelişmesine yardımcı olmuştur. Ancak bilgisayar teknolojisinin son yıllarda gösterdiği gelişim, günümüze kadar çok fazla değişim geçirmeden gelen, geleneksel çizim teknikleri olumlu yönde ve çok geniş bir çerçevede etkilenmiştir. (CAD Computer Aided Design ) geleneksel tekniklerden birçok üstünlüğü vardır. Bu üstünlükler sırası ile maddeler halinde sıralanmıştır; Doğruluk ve hassasiyet Hız ve güvenlik Düzgünlük ve temizlik Okunaklılık ve açıklık Uyum ve ahenk Yukarıda sayılan üstünlükler göz önünde tutulursa CAD sistemleri daha pratik ve verimli çalışma imkanı doğurmakta. Şekil 1.1 Catia kullanıcı ara yüzü 1.2 CATIA’nın gelişim tarihi Bilimsel uygulamalarının bilgisayarlara uyarlamaları ancak ikinci kuşak kabul edilen 60’lı yıllarda yapılandırılan bilgisayarlar tarafından gerçekleştirilmiştir. İkinci kuşak bilgisayarlarda tüpler yerini günümüze kadar gelen güvenli transistörlere bırakıyordu. Kritik hesaplamaların gerekli olduğu uçak endüstrisinde özellikle bilgisayarla tasarım önem kazanmaktaydı. Uçak konstrüktörleri uçak formunun optimizasyonu ve ağırlığının minimize edilebilmesi için gerekli olan akışkan hareketleri ve mukavemet testleri adına bir takım programlar geliştirdiler. Bundan birkaç zaman önce Fransız uçak imalatçılarından Dassault Aviation şirketi yüzeyleri bir bilgisayarda oluşturabilmek için çalışmalara başladı. Bu amaçla 1969 da interaktif bir grafik programın oluşturulması faaliyetlerine önayak oldular. Bu programın yardımıyla sırt ve kanat yüzeylerinin taslağı bilgisayarda saklandığı gibi çizilebiliyordu. Bu veriler daha sonra aerodinamik araştırmalar, yapı analizi ve NC makinelerinin kumanda edilmeleri için kullanıldı. Bu tarzda geliştirilmiş ilk uçak AlphaJet’dir. CATIA-Fonksiyonu SPLINE bu programla geliştirilip o zamandan bu bugüne hemen hemen hiç değişmeden gelmiştir. 1975 de Dassault Aviation bir Amerikan firması olan Lockheed den 2D çizim paketi olan CADAM'ı aldı. 3D geometrik tanımlamalar için bu programa karşılık, gelişimine 1977'de başlanan kendine has bir yazılım tasarlandı. Buna da CATIA (Computer Aided Three-Dimensional Interactive Application) ismi verildi. 1979 öncesi CATIA ile ilk hava kanalı modeli 4 hafta içerisinde tamamlandı. Daha önceleri bu çalışma için 6 haftaya ihtiyaç duyuluyordu. Zaman içinde Francis Bernard’ın idaresindeki geliştirme grubundaki eleman sayısı 3 den 15'e çıktı. Geliştirilmesine gerekli olan yüksek maliyet açığını kapatmak için CATIA'yı pazara sunma kararına varıldı. 1981 de Dassault Systemes firması Dassault Aviation’un bünyesinde barınan bir şube olarak tesis edildi. Yine aynı yıl IBM ile yazılımın pazarlanması hususunda sözleşme yapıldı. 1981 Kasım ayında CATIA V1, IBM tarafından Mainframe ortamına aktarıldı. CATIA’nın teknolojik avantajları ve hardware’deki fiyat düşüşü hızlı bir gelişime sebep oldu. 1985'de V2 tanıtıldı. 1988'de V3 ile birlikte iş istasyonuna dönüşme devresi başladı. Güncel CATIA V4 1993 senesinde pazara sunuldu. Bu esnada Dassault Systemes’in çalışanlarının sayısı 1000’i aştı. CATIA V4 kısa sürede özellikle ana sanayi ve büyük ölçekli yan sanayi firmalar tarafından benimsendi ve kullanımı giderek daha fazla yaygınlaştı. Bu gelişime paralel olarak Dassault Systemes’in başka bir Fransız yazılım şirketi Matra Datavision’u bünyesine katmasıyla yazılım daha da güçlendi. 2000 yılına yaklaşıldığında, PC’lerin giderek güçlenmesiyle birlikte, Windows işletim sistemi iş istasyonlarında da yaygınlaştı ve CAD/CAM/CAE sistemlerinde kabul görmeye başladı. Bu gelişime paralel olarak 2000 yılında, tamamen Windows işletim sistemi için yeniden yazılmış olan CATIA V5 duyuruldu. CATIA V5 gerek kullanım kolaylığı, gerekse sunduğu esneklik, bilgi birikimini değerlendirebilme gibi avantajlarla pazarda çok çabuk yaygınlaştı. Özellikle endüstride ana sanayi - yan sanayi entegrasyonunun önem kazanmasıyla, orta ve küçük ölçekli yan sanayi firmaları tarafından da benimsendi. CATIA V5, IBM’in dünyada ilk defa ortaya attığı ve bugün hemen hemen tüm büyük ölçekli CAD/CAM/CAE yazılım firmaları tarafından da kullanılan PLM (Product Lifecycle Management- Ürün Yaşamçevrimi Yönetimi) kavramının yaygınlaşmasında temel rolü üstlendi. Bugün artık CATIA otomobil, uçak, makine ve dayanıklı tüketim eşyası endüstrilerinde 200.000 den fazla kullanıcı tarafından en önde gelen üst seviye CAD/CAM/CAE sistemi olarak tercih ediliyor. 5.1.1 Tasarım ve imalat avantajları Katı modellemenin avantajlarını kullanarak kolayca ve hızlı bir şekilde tasarım yapabilme. İstenildiği anda ölçü değiştirerek tasarımı kolayca düzeltebilme. Parça tasarımında diğer parçalara bağlı ölçü verebilme Yapılan tasarımların bilgisayar ortamında analizini yaparak hataların maliyet yaratmadan ayrıca zaman kaybetmeden düzeltilebilme olanağı. FİZİKSEL HAREKETLENDİRME 5.2.1 Hareketlendirme Menüsü Catia P3 V5 R14 çalıştırıldıktan sonra Start menüsüne girilir buradan DMU Kinematics tıklanarak ana menü açılır. Şekil 2.1 Hareketlendirme ara yüzü Menü açıldıktan sonra open ikonu tıklanarak hareketlendireceğimiz Mekanizmamızı içeri alırız. Şekil 2.2 Var olan dosyayı açma Öncelikle hareketlendireceğimiz mekanizmayı assembly menüsüne alıp kaydettikten sonra kinematics menüye alırız. 5.2.2 Hareketlendirme Fonksiyonları Mekanizmada hareketlendirme yaparken kullanacağımız ana fonksiyonlar aşağıdaki resimde gösterilmiştir. Bu fonksiyonlar parçaların kinematics içinde hareketlerini belirleyecek ve mekanizmadaki yerini tayin edecektir. Diğer ana fonksiyonlar ise vereceğimiz büyük örnekte anlatacağız. 5.2.2.1 Yüzeysel ve Eksensel Hareketlendirme Revolute fonksiyonu yüzeysel ve eksensel hareketlerde kullanılır tıklandıktan sonra ikonu Şekil 2.3 Hareketlendirme ikonu ara yüzü gelen menüde new mechanishim tıklanır ve yeni mekanizma oluşturulur. Bu işlem bir defa yapılır ve diğer işlemlerde mekanizmayı fonksiyon otomatik olarak kendi seçer. Şekil 2.4 Eksenlerin belirlenmesi Öncelikle line 1 ve 2 de parçaların eksenleri seçilir daha sonra plane 1 ve 2 de yüzeyler seçilir. Şekil 2.5 Yüzeyler belirlenerek hareketlendirme yapılır En son olarak ta tamam tıklanıp parçalar birleştirilir. 5.2.2.2 Prizmatik Parçaların Hareketlendirilmesi Prizmatik fonksiyonumuz köşeli yüzeyler için kullanılır ikon tıklandıktan sonra Şekil 2.6 Prizmatik parçanın çizgileri belirlenir Açılan menüden parçaların önce lineları daha sonra yüzeyleri seçilip ok tıklanır ve parçalar birleştirilir. 5.2.2.3 Silindirik Parçalara Hareketlendirme Cylindrical fonksiyonumuz silindirsel parçaların eksenlerini birleştirir. İkon tıklandıktan sonra açılan menüden işlemler yapılır. Şekil 2.7Cylindirical komutu kontrol penceresi eksenler seçildikten sonra hareket yönü verilerek ok tıklanır. Şekil 2.8 Silindirik parçaların hareketlendirilmesi 5.2.2.4 Küresel parçaların hareketlendirilmesi Bu fonksiyon küresel parçaların hareketlendirilmesinde kullanılır Şekil 2.9 Küresel parçanın hareketlendirilmesi Sadece yüzeyler seçilir ve ok tıklandığında ilişkilendirme tamamlanmıştır. 2.9.1 Düz yüzeylerdeki hareketlendirme Creating Planar Joints fonksiyonumuz yüzeysel birleştirme ve hareketlendirmede kullanılır. Öncelikle ikonumuz tıklanır daha sonra Şekil 2.10 Düz yüzeylerde hareket Birinci parçanın hareket edeceği yüzeyi seçilir daha sonra diğer parçanın ise ekseni seçilerek ok tıklanır. 5.2.2.5 Farklı Parçaları Birleştirme Rigid fonksiyonu prizmatik parçaların birbirlerine sabitlenmesinde kullanılır. Öncelikle rigid ikonu tıklanarak menüsü açılır. daha sonra sabitlenecek parçaların birincisi seçilir Şekil 2.11 Farklı parçaların rijitlenmesi sonra ise ikincisi ve ok tıklanarak sabitleme yapılır. 2.2.7 Dişli Sistemlerinin Hareketlendirilmesi Gear fonksiyonumuz birbirlerine hareket veren dairesel parçaların hareketlerinin tanımlanmasında kullanılır. Gear ikonumuzu kullanmadan önce hareketin çıkacağı daireyi ve yataklandığı mili birbirine revolute fonksiyonu ile hareketlendiririz daha sonra gear ikonumuzu tıklayarak menüyü açarız. Menüde iki bölüm gözükmekte birinci bölümde create 1 boşluğa revolute 1 ağaçtan tıklayarak tanıtırız. Şekil 2.12 Hareketlendirme ürün ağacı İkinci bölüme ise create tıkladığımızda revolute 2 fonksiyonu otomatik gelmektedir. Bu bölümde de ikinci dairesel parçamız ve yataklandığı mili birbirine hareketini tanımlarız Şekil 2.13 Dişli sistemlerinin hareketlendirilmesi Bu işlemler yapıldığında farklı fonksiyonlar kullanılarak parçalar birbirine bağlamış oluruz.Son olarak angle driven for seçilerek açı değerinde hareketi tayin ederiz. Ürün ağcımızda ise tekbir fonksiyon gözükmektedir gear. Şekil 2.14 Ürün ağacında işlemin tamamlanması 2.2.8 Düz Yüzeylerde Dairesel Hareketlendirme Rack fonksiyonumuzda gear fonksiyonumuzdan farklı olarak hareketli parça sabit yüzey üzerinde dönerek gezinme hareket yapmaktadır. Burada da bir öncekinde farklı olarak dönen parçaya revolute fonksiyonu ile tanıtılırken sabit parçamız prizmatik fonksiyonuyla çözeriz. Şekil 2.15 ürün ağacı Ürün ağacında yaptığımız birleştirme ilk olarak böyle gözükür. Rack ikonu tıklanarak birinci ve ikinci bölüme ürün ağacından prismatic ve revolute fonksiyonları işaretlenerek seçilir ve ok tıklanır. Şekil 2.16 Hareketlendirmede ürün ağacı 5.3. ÖRNEK MEKANİZMA Yapacağımız örnek fiziksel hareketlendirmenin birçok fonksiyonunu içerecek şekilde düzenleyerek örneklendirdik çizeceğimiz mekanizma 5 Ana Parça, 4 Motor, 4 Sonsuz vida dişli tertibatı ve karşılık dişlileri ile bunların zamanlayıcıları olan Encoderlerden oluşmaktadır. Genel olarak sistemimiz bir Endüstriyel Robot Mekanizmasının basitleştirilmiş hareket kinematiğine sahip bir yapıda hazırlanmıştır. Sistemin oluşum basamakları ve montaj evreleri adım adım anlatılarak uygulamada en son hareket kinematiği kazandırılmıştır. Şekil 3.1 Hareketlendirilecek mekanizma Mekanizmamızı hareketlendirmeye başlamadan önce yapmamız gereken hususlar var çizilmiş olan parçaları öncelikle gruplandırılması ile sabit olanlar parçalarla hareket edecek parçalarında birlikte yönelmesi sonucu kendi içinde guruplara ayırırız birlikte hareket edenler kendi başlarına hareket edenler diye bu sınıflandırmayı yaptıktan sonra: Sabit kalacak olan parçaları assembly içinde montajını yaparız ve buna ana montaj adını veririz. Şekil 3.2 Alt taban sacı boyutlandırma Part Desıgn’ daiki boyutlu alanda il olarak ön profili oluşturulan taban sacının Pad komutu ile boyutlandırılması yabılarak Z ekseni yönünde boyutlandırılması yapılır. Genişletme işleminden sonra sac boyutlandırması verilmesi için köşegen kenarlarına saç kalınlığı boyutunda Edge Filet komutu kullanılarak pah kırılır, işlem parçanın iç gövdesi içine de tekrar uygulanarak işlem tamamlanır. Şekil 3.3 Alt taban sacı genişletilmesi yan görünüş Alt taban sacına merkezdeki gövde hareket deliğini oluşturmak için tekrar Part Desıgn’daki işlem boyutuna geçilir. Oluşturduğumuz sac gövdenin köşegen noktalarından istersek doğrular çekerek isterse paralel iki eksen oluşturarak istenirse de her iki kenara eşit uzaklıkta bir nokta işaretlenerek dairenin merkezi bulduğumuz noktaya oturtulur. Oluşturduğumuz daireye gövdenin hareket edebileceği kadar tolerans değerleri de ilave edilerek tekrar Exit workbench komutuna tıklanır ve 3 boyuta geçilir. Pocket komutu kullanılarak oluşturulan daire düzlemi sac profili üstünden delinerek boşaltılır. Şekil 3.4 Gövde kolu boyutlandırılması Gövde kolu oluşturulmadan önce Workbenchte daire kesitli eksenleri çakışık durumda çift daire oluşturulur. Dimension komutu kullanılarak oluşturulan dairelere kesit çaplarının ölçülendirilmesi yapılır. Workbenchten tekrar çıkış yapılarak Sketcher düzlemine geçilir. Sketcher düzleminde tekrar PAD komutu kullanılarak oluşturduğumuz dairesel düzlemin uzatılması sağlanır. Kesit düzlemi oluşturulduktan sonra dairesel taban alt düzleminden Workbench düzlemine geçiş için yüzey seçimi yapılır SKETCHER komutu kullanılarak tekrar iki boyuta geçilir. Seçilen düzlemde köşegen kesitli profilin oluşturulması için LİNE komutu kullanılarak tekrar çizim profili oluşturulur. Oluşturulan köşegen profilinden çıkış yapılmadan tekrar EXIT WORKBENCH komutu kullanılarak üç boyuta geçilir. Oluşturulan köşegen profil düzlem noktası referans alınarak ilk oluşturulan dairesel düzlem doğrultunda ve son sınırına kadar PAD komutu kullanılarak genişletilir. Şekil 3.5 Gövde kolu içi boşaltılmasının transparan görünüşü Üst profilde gövde koluna bağlı iletim kolunu tutan kavisli profilin oluşturulması için tekrar SKETCHER komutu kullanılarak yan düzlemlerden biri seçilerek boyut değiştirilir. Üzerinde ölçüm değişikliği yapılması istenen yüzeye çift tıklanarak Dimension boyutlandırılmaları görüntülenebilir. İstenen ölçüm değişiklikleri gereken dimensionda çift tıklama ile tekrar referans değişiklikleri sağlanabilir. Tutucu profili oluşturmak için iki boyutta SKETCHER’da profil düzlemi parça üzerinde LINE komutu kullanılarak oluşturulduktan sonra her iki profilden POCKET komutu ile istenen yüzeyler boşaltılır. Şekil 3.6 Gövde kolu ucundaki karşılık dişlisi tertibatı Tekrar HOLE komutu kullanılarak tutucu kolun pimlerinin bağlanacağı kesitler düzleme dik eksende seçilerek boyutlandırılır. Boşaltma işlemi sağlandıktan sonra dişli alt gövdesi oluşturulması için tekrar SKETCHER boyutlandırma düzlemine geçiş yapılır. Dairesel alanın tam ortasında bir nokta oluşturulduktan sonra diş profillerinin oluşturulması için gerek diş hatve açısı miktarında (burada kullandığımız LINE çizgi açısı 5 derecedir ) eğik bir LINE oluşturularak dişlinin alt ve üst tabanı miktarınca CONCENTRIE komutu kullanılarak düzleme yapıştırılır. Tekrar SKETCHER dan çıkılarak 3 boyutta diş dairenin diş üstü çapına sıfır gelecek şekilde diş genişliği kadar yarım daire çizilerek PATTERN komutu ile daire ekseni seçilerek hatve boşluğu oluşacak miktarda adımlarla daireler oluşturulur. Diş boşlukları arasından diş derinliği çapında bir daire oluşturularak bir önceki düzlemde oluşan dairelerin çapları bu daireye yapıştırılır. Boşaltılacak kesit düzlemi seçilerek SLOT komutu ile kanallar boşaltılır. Şekil 3.7 Gövde kolu ile üst hareket kolu arasındaki sonsuz vida sistemi Sonsuz vida karşılık dişlilerinin oluşturulması aşamasında öncelikli olarak PART DESIGN’a geçiş yapılarak oluşturulan motor blokları ile karşılık dişlileri PRODUCT’a aktarım yapılarak sırasıyla; PRODUCT ------ Components ------ Exıstıng Components bölümleri açılır. Açılan OPEN – Fıle menusunde gerekli montaj parçaları Product içine aktarılarak montajın ilk aşamasına geçilmiş olur. Şekil 3.8 Gövde koluyla bağlantısı olan ara iletim kolu Gövde kolu ile ara iletim kolu arasında kalan iletim kolu tekrar iki boyutta çoklu LINE komutu kullanılarak ön görünüşü oluşturulur. SKETCHER’da PAD komutu kullanılarak parça genişliği kadar genişletme işlemi yapılarak perspektifin katı görünümü oluşturulur. Değiştirilmesi istenen yüzeyde çift tıklama işlemi yapılarak DİMESİON ayarlarında istenen değişim gerçekleştirilir. Tekrar PART DESIGN’ a geçilerek uç yüzeyde gerekli boşaltma işlemi için seçim yapılan yüzeyin boşaltma kesiti oluşturulur. WORKBENCH’te POCKET komutu kullanılarak seçim yapılarak oluşturulan yüzeyin boşaltımı yapılır. Gerekli kavis işlemleri ise EDGE FİLLET komutu kullanılarak oluşturulduktan sonra parçanın delik düzlemleri HOLE komutu ile ölçülendirilerek delinir. Şekil 3.9 Ara iletim kolunun içi boşaltılmış transparan görünümü Ara iletim kolunun HOLE komutu kullanılarak delikleri EXTRUDE edildikten sonra gerekli üç boyuta geçilerek ön görünüşten saç kesiti kadar bir köşegen boyutlandırılarak boşaltma işlemi yapılır. Gerekli kesit alanları DİMENSİON ayarları ile sınırlanarak HOLE komutu ile boşaltılır. EDGE FİLLET komutu kullanılarak kesit alanların köşeleri gerekli dairesel yarıçapta pah kırılarak yuvarlatılarak köşeleme işlemi de tamamlanır. Şekil 3.10 Ara iletim kolu sonsuz vida karşılık dişlisi Ara iletim kolu ile sonsuz vida karşılık dişlisi tertibatı arasında gövdedeki kolun hareket boyutlandırılmasında en etkin görevi sonsuz vida karşılık dişlisi karşılamaktadır. Sonsuz vida iletim dişlisi ile birlikte çalışan sonsuz vida karşılık dişlisinin adımı ile sonsuz vida dişlisi adımları aynı olmalıdır ki; sistem takılmadan çalışmasını sürdürsün. Adım farklılıklarını dikkate almak için ise Diş üstü çapı ve modül hesaplanarak gereken diş açısı da belirlendikten sonra adımları hesap edilir. Gereken sınır boyutlandırmaları uygulanarak diğer bir çok parçada oluşturulduğu gibi yine bu iletim parçamızda sınırları belirlendikten sonra PAD komutu ile uzatıldıktan sonra tekrar gerekli boşaltmalar ve eklemeler malzeme yüzeyinden seçim yapılarak uygulanır. Şekil 3.11 Alt taban gövde motor bağlantısı Part Desıgn’ daiki boyutlu alanda il olarak ön profili oluşturulan taban sacının Pad komutu ile boyutlandırılması yabılarak Z ekseni yönünde boyutlandırılması yapılır. Genişletme işleminden sonra sac boyutlandırması verilmesi için köşegen kenarlarına saç kalınlığı boyutunda Edge Filet komutu kullanılarak pah kırılır, işlem parçanın iç gövdesi içine de tekrar uygulanarak işlem tamamlanır. DC Hareket motorumuzun mil ekseni karşılık dişlisi ile sonsuz vida dişlisin yarıçapının toplamı kadar bir mesafe ile delik merkezinden uzaktadır. Şekil 3.14 Gövde motor bağlantısı sonsuz vida dişlisi ön görünüş Şekil 3.13 Gövde motor bağlantısı sonsuz vida dişlisi profil görünüş Şekil 3.15 Alt taban gövde motor bağlantısı sonsuz vida iletim dişlisi görünüş Şekil 3.16 Alt taban gövde motor bağlantısı sonsuz vida dişlisi bağlantısı Alt tabandaki DC akım motoru ile motorun tam hareket kabiliyetine ulaşması ile Sonsuz vida karşılık dişlisi ile modülleri aynı olacak şekilde kavrattırılmıştır. Bu hareket iletiminde temel amaç sonsuz vida milinden alınan döndürme hareketinin karşılık dişlisine iletimini sağlamaktır. Sonsuz vida mili helis dişleri bu örneğimizde mile göre sağa doğru 5 derecelik bir açıyla tamamlanmış ve karşılık dişli tertibatı da aynı şekilde bu düzeneğe uygun olarak aynı açı değerleriyle sınırlandırılmıştır. Şekil 3.18 Gövde – Kısa kol arasındaki İletim Kolu ve motor bağlantısı Şekil 3.19 Gövde kolu motor bağlantısı Şekil 3.20 Robot mafsal ucu Şekil 3.21 Sonsuz vida milinin gövde tahrik motoruna bağlantısının yapılması Revolute fonksiyonu yüzeysel ve eksensel hareketlerde kullanılır. Revulote ikonu tıklandıktan sonra gelen menüde new mechanishim tıklanır ve yeni mekanizma oluşturulur. Bu işlem bir defa yapılır ve diğer işlemlerde mekanizmayı fonksiyon otomatik olarak kendi seçer. Şekil 3.22 Gövde tahrik milinin revolute komutu ile sabitlenmesi Şekil 3.23Sonsuz vida milinin Gear komutu kullanılarak yerleşimi Şekil 3.25 Gövde – İletim kolu bağlantısının oluşturulması Şekil 3.26 İlk İletim kolu ile Ara iletim kolu bağlantısı Şekil 3.27 İlk İletim kolu ile Ara iletim kolu bağlantısı sonsuz vida sistemi Şekil 3.29Ara kol tertibatı sonsuz vida dişli sistemi bağlantısının oluşturulması Şekil 3.30 Ara kol bağlantısına Cylindirical komutu atanması Şekil 3.31 Uç mafsalının ara kol ile bağlantısı Şekil 3.32 Mekanizmaya Mechanism 1 atanarak Simülasyonun oluşturulması 3.3.1 Ana Montaj Dosyasının Hareket Kazandırılması Ana hareketlendirme assmbly dosyamızı açtıktan sonra hareketlendireceğimiz montaj ve parçaları teker teker içeri alırız ilk olarak ana montaj dosyasını içeri alırız içeri alma işlemi bildiğimiz montajdaki içeri alma metodu ile aynıdır iki dosyayıda aynı anda açarak ana montaj dosyasını ana hareketlendirme dosyasının içine sürükleriz. Bu ana hareketlendirme dosyamız bizim sabit parçalardan oluşan montajımızdır o yüzden bu montajdaki parçalardan herhangi biri hareket etmeyecektir sadece hareketli parçaları üzerinde taşıyarak bir sabit görevi görecektir. 3.3.2 Kol Parçasına Hareket Kazandırılması (Stroke Slode) Şekil 3.49 Hareketli Borunun içeri alınması İlk montajımızı taşıdıktan sonra bu montaj üzerinde bir mekanizma oluşturacağız ve montaj üzerinde hareket edecek ilk parçamızı taşırız stroke solide ve yine aynı yolla. Parçayı içeri aldıktan sonra start menüyü açarak DMU kinematic’i çalıştırarak hareketlendirme bölümüne geçeriz.1 Hareketlendirme bölümüne geçtikten sonra hareketli boru parçamızın hareket şekline göre hareket ikonlarından birini seçeriz öncelikle parçamızı hareket edeceği parçanın eksenine kumpas vasıtası ile getiririz. Parçamız z ekseninde aşağı yukarı guide pipe üzerinde hareket edecektir bu nedenle en uygun hareketlendirme fonksiyonu Cylindrical fonksiyonudur ikonumuzu tıkladıktan sonra gelen menüde bizden yeni bir mekanizma oluşturmamızı isteyecektir. 1 Catia programında assembly ve DMU kinematic aynı part düzleminde çalışır birbirleri arasında geçiş mevcuttur. Şekil 3.46 Mekanizma Trispi görünüm Şekil 3.34 Mekanizma All Edges görünüşte tam profili Şekil 3.45 Mekanizma Trianciles görünümü Şekil 3.44 Mekanizma tam profili transparan görünüm Şekil 3.50 Mekanizma oluşturma Yeni bir mekanizma oluşturmak için new mechanism tıklanarak mechanism 1 ok tıklanır ve yeni mekanizma oluşturulur. Mekanizmamızı oluşturduktan sonra strok slide nin ve guide pipe nin eksenleri seçilerek z ekseni üzerinde hareket kabiliyeti verilir. Şekil 3.51 Hareketli borunun hareketlendirilmesi 3.3.3 Ara Kol Adlı Parçamızın Hareket Kazandırılması (Offset Link) Ara kol adlı parçamızdan mekanizmamızda iki tane bulunmakta bu nedenle assmbly de olduğu gibi parçayı iki defa üst üste içeri alacağız ara kolu da hareketli kolun üzerine monte edileceğinden en uygun hareketlendirme opsiyonu seçilir buda ikonu tıklanarak menüsü hazırlanır. Şekil 3.52 Hareketlendirme ara yüzü Menüde de görüldüğü gibi hareket kazandırılarak birleştirilecek parçaların eksenleri ile yüzeyleri istenmekte bu nedenle önce eksenler işaretlenir. Şekil 3.57 Parçanın hizalanması Parçamızı konumlandırdıktan sonra revolute ikonu tıklandıktan sonra ara montajın ön kısmındaki milin ekseni ile ofset link 1 in üst kısmındaki deliğin ekseni ile yüzeyleri seçilerek bağlantı oluşturulur. Aynı işlem ofset link 2 içinde uygulandıktan sonra ok tıklanarak 2. birleştirmede tamamlanır. Şekil 3.58 Hareketlerin tanımlanması Şekil 3.59 Revolute Bu birleştirme işleminde revolute kullanılmasının amacı hem z ekseninde aşağı yukarı bir hareket hem de z ekseni etrafında bir harekete ihtiyacımız olduğu için. Şekil 3.47 Mekanizma sabit montajı Bu işlemi yaptıktan sonra birlikte aynı eksen ve doğrultuda hareket edecek olan diğer parçaları ara montaj adı altında bir araya getiririz: Bu işlemi de tamamladıktan sonra geriye kalan üç parçamızı yeni bir montaj dosyası açarak ismine ana hareketlendirme deriz ve bu üç parçayla birlikte iki diğer montaj dosyasını da bu ana hareketlendirme dosyamızın içinde hareket kazandırmaya başlarız. Şekil 3.53 Ara kolun hareketli boruyla hareket verilmesi Eksenlerin birleşiminde yaptıktan sonra yüzeyleri de seçerek 25mm mesafe vererek birleştirmeyi tamamlarız. Yüzeyler işaretlendikten sonra mesafeyi görmemiz gerekir. Şekil 3.54 Yapılan hareketli bağlantıda mesafe verilmesi Yukarıdaki işlemlerin aynısı tekrarlanarak diğer offset link te bağlantısı yapılır. Şekil 3.55 ara kolların boruya bağlantısı 3.3.4 Ara Montajın Hareketlendirilmesi: Son olarak ara montajı sisteme alarak üç noktadan birleştirme yapacağız. İşleme montajımızı içeri olarak başlayalım. Şekil 3.56 Ara montajın içeri alınması Montajımızı içeri aldıktan sonra kumpas yardımı ile ara montajı birleştirme noktalarına getirilir2 Son olarak ta ara montajın arka kısmını dayanma kolu delikleriyle birleştirilir.Hareketlendirme için revolute ikonu tıklanarak pivot deliklerinin ekseni ile ara montajdaki arka milin ekseni işaretlenir. Şekil 3.60 Hareketlerin tanımlanması 2 Kumpas parçaların herhangi bir yüzeyine bırakıldığında bırakıldığı yüzeyi taban seçerek parçayı istediğimiz konuma getirebiliriz. Daha sonra yüzeyler de seçildikten sonra hareketin asıl verileceği ara montajın üçüncü bağlantısında hareket için ok tıklanarak işlem bitirilir. İşlemler bitirildikten sonra mekanizmanın çalışması için bir sabit belirlenmesi gerekmektedir bu sabitte ana montaj olmaktadır sabit fix ikonu tıklanarak ana montaj seçilerek sabit belirlenir. Hareketlendirme işleminde son olarak harekete start verecek ikonumuz tıklanarak harekette verilecek sınırlamalar belirtilerek işlem sonlandırılır. Şekil 3.61 Mekanizmamızın hareket ettirilmesi SONUÇ Endüstriyel otomasyon sistemleri hızla gelişmekte olup, birçok iş sahasında insan gücünün yerini almaktadır. Dünyada hızlı bir gelişme sağlayan otomasyon sistemleri, sağladıkları faydalardan dolayı endüstrinin birçok alanında kullanımı yaygınlaşmıştır. Ülkemiz, otomasyon sistemlerini ve robot teknolojisini kullanma konusunda dünyada ki gelişmiş ülkelerin oldukça gerisin de kalmıştır. Robot, kullanılan sistemlerde üretim kalitesini artırmakla kalmayıp bunun yanında verimliliği de artırmaktadır. Üretim sektörünün rekabet ortamında vazgeçilmez iki unsur, kaliteli ve ucuza imalat yapmaktır. Bu sağlandığı takdirde diğer üreticilerle rekabet etme imkânı bulunmaktadır. Robotlu üretim sistemleri; üretimde insan kaynaklı hataları ortadan kaldırdığı ve kuruluş maliyetinin yüksek olması yanı sıra sonradan kendini amorti edip karlılık sağlayan bir sistem olduğu için üretim sistemlerinde yaygın olarak kullanılmaya başlanmıştır. Türkiye de robotlu sistemler çok pahalı olarak algılandığı ve bilinmediği için yaygınlaşamamıştır. Yaptığımız bu ödev Catia P3 V5 R14 programında oluşturulmuş bir mekanizmanın kinematik hareketlendirilmesiydi. Ödev detaylı incelendiğinde programın simülasyon ve montaj menülerini teferruatlı biçimde anlatmakta olup montaj ve mekanizma kabiliyeti açık bir yapıla oluşturulmaya çalışılmıştır. Simülasyondan ziyade montaj ve hareket mekanizması çalışmada daha fazla ön plana çıkmaktadır. Bunun başlıca nedeni ise basit, ucuz ve üretilebilir bir prototipin de istenirse kısa bir çalışma sonucunda ortaya çıkarılabileceğini ortaya koymaktır. Üretim yapan kurumlar tasarlanan bir mamulü seri üretime geçmeden önce çalışma düzenine parçaların dayanma süresine ancak deneme yanılma yöntemi ile elde ederken catia ve benzeri programlar bu işlemi bilgisayar ortamında kısa sürede çözerken üreticiyi büyük masraflara sokacak uzun zaman kaybettirecek deneme yanılma yönteminden de kurtarmış olmaktadır. KAYNAKLAR [1] Robotics And Automated Systems Yazarı: Robert L. Hoekstra [2] Modern Control Engineering Yazarı: Katshiko Odaka [3] Browne et al.1998 Browne, I.W.A., et al. 1998 MNRAS 293, 257 Interferometer phase calibration sources - II De Silva, D.,“Reactions to Robots, Engineering”. April, 1987, s. 227-230 Altınay Robotik ve Otomasyon A.Ş., “Dünya Robot Nüfusu1997”, Makina Magazin Dergisi., Sayı: 23, Mart 1998, s. 89-94 Kayhan G. , 2003 , “ Robot Kinematiğinin Esasları ” , Yüksek Lisans Semineri , Ondokuz Mayıs Üniversitesi Elektrik-Elektronik Müh. bölümü Hanselman D. , Littlefield B. , 1996 , “ Mastering MATLAB : A [4] [5] [6] [7] Compherensive Tutorial and Reference “ , 542 s. [8] Uzunoğlu M. , Kızıl A. , Onar Ö. Ç. , 2002 , “ Kolay Anlatımı ile İleri Düzeyde MATLAB 6.0-6.5 ” , Türkmen Kitabevi , 517 s. [9] Corke Peter I. , 2001 , “ Robotics Toolbox for MATLAB [10] www.cat.csiro.au/cmst/staff/pic/robot [19] Mills K.J Robotic manipulator control genarilazed contact force and position.IEEE Trans on SMAC 1994;24{3} p:523-531 Bailin C.,Huitang C.,ASME J DSMC 1993;115:566-569 Sosyal Planlama Genel Müdürlüğü “Sanayide Robot Teknolojisi, Uygulaması Ve Önemi”Aralık 1991. Şuhubi E. S. , 1988 , “ Rijid Cisimler Dinamiği “ , İ.T.Ü. FenEdebiyat Fakültesi Matbaası , 763 s Sciavicco L. , Siciliano B. , 1996 , “ Modeling and Control or [110] [111] [112] Robot Manipulators ” , McGraw-Hill International Publications , 358 s. [113] Paul R. P. , 1981 , “ Robot Manipulators : Mathematics , Programming and Control “ , MIT Press , 279 s. [114] [115] [116] Peşkircioğlu, N., “Otomasyon ve Entegre Kalite Kontrolu”, VerimlilikDergisi,Sayı15,Mayıs,s.19–40 Shımon Y.”Endustrial Robotics” 605 Thirt Avenue,New York,N.Y. 10158–0012, 1999 Nakamura,Y. “Advanced Robotics Redundancy and Optimization” [19] Mitsubishi Industrial Robot,“Standart [20] Specifications Manual”(Mitsubishi Electrıc Corporation), Nagoya, [217] Japan.8. http://bruce.cs.cf.ac.uk/bruce/LVM/Methods%20040049/LA%20 Method%20041/ LA%20041(b).jpg Robot Teknolojisi Ders Notları Yazarı: A.Çoşkun Sönmez ITU [219] Robot Hands and the Mechanics of Manipulation M.T.Mason Electronics In Industry Yazarı:George M. Chute 5.baskı [220] Robotics Yazarı: K.S.Fu, R.C. Gonzales [221] Spong M. W. , Vidyasagar M. , 1989 , “ Robot Dynamics and [218] Yazarı: Control ”,John Wiley & Sons Inc. , 336 s. [222] [223] [224] [29] [30] [31] [32] [33] [34] S.Haykın, "Neural Networks",Macmillan College Printing Company,New Jersey, 1994 G.Oke, Y.Istefanopulos, "Gradient Descent Baseb Trejactory Planning for Regulation of a Two Link Flexible Robotic Arm"vol.2, s.948,952,2001 O.Efe, O.Kaynak, "Yapay sinir Ağları ve Uygulamaları", Bogaziçi Uni.,Ist., 2000 H.Asada, H. Takumaru, "Inverse Dymanics of Flexible Robot Arms: Modelling and Computation for Trajectory Control", ASME Journal of Dynamic Systems Masurement and Control, Vol.112,s.177-185,1990 D .S.Yoo, M.J. Chung and Z.Bien, Real Time Implementation and Evolution of Dynamic Control Algorithms for Industrial Manipulators , IEEE Trans. on Industrial Electronics, Vol.38, No.1 ,26-31,1991 M. Spong ,and M. Vidyasagar, Robot Dynamics and Control, John Wiley& Sons, New York, 1989 Kürüm,H., Aydın S., "The Analysis of Permanent Magnet Brushless D.C. Motor" Seventh International Ansys Conference and Exhibition, pp.3.153-156,1996 M.O. Efe and O.Kaynak, " A Comparative Study of Soft Computing Methodologies in Identification of Robotic Manipulators," Proc. 3rd Int. Conf. On Advanced Mechatronics, ICAM’98, vol.1,pp.21-26, Okayama, Japan,1998 D.E. Whitney, "The Mathematics of Coordinated Control of Proshetics Arms and Manipulators", Journal of Dynamics Systems, Measurement and Control, 303- 309,1972. [35] J.S. Nielsen, "Learning Mobile Robot Navigation: a BehaviorBased Approach", Int.Conf. on Systems , Man and Cybernetics 1994. [36] T. Lozano-perez, "Robot Programming", Proceedings of The IEEE, vol.71, no.7, 821- 841,1983 Robotik Kaynak Sistemleri ve Gelişme İstikametleri, Doç. Dr. Selahattin Yumurtacı, Y.T.Ü. Mak. Fak. Mak. Müh, 2002 [325] [38] Peşkircioğlu, N., “Otomasyon ve Entegre Kalite Kontrolu”, Verimlilik Dergisi, Sayı 15, Mayıs, s. 19–40 [39] Robotların Tarihçesi, Evrim Itır Barutçuoğlu, Ocak 2001 [40] http://robot.cmpe.boun.edu.tr [41] CRAIG J, 1981, Introduction to Robotic : Mechanics and Control. [42] http://www.robbot.org/default.aspx?pid=10968 [43] RANKLY H, 1981, Robot Modelling Control and applications With Software, IFS (Publications) LTD. UK. Springer-Verlag. [44] http://www.vektorelbilisim.com/kurslar/index.aspx [45] www.makinemühenedisi.com [46] MITSUBISHI Industrial Micro-Robot System, 1994, Model RV -M 1 Instruction Manuel ERKMEN, A., 1992, Robot elle kavrama planlaması, Elektrik Mühendisliği Dergisi, 393, 25-28. BULCA F, 1990, Robot sistemlerde kullanılan uç elemanları ve tutucu sensörleri, Mühendis ve Makina, 31 (367), 5-11 BOZDEMİR M., 1996, Robot sistem elemanları ve hareket analizleri, Yüksek Lisans Tezi, Gazi Üniversitesi. [47] [48] [49] [50] EKLER Ek -1. Alt tabla – Sonsuz vida ve Hareket Mili Ek-2. Gövde kolu motor aksamı bağlantı yönü ve perspektif görünüşü Ek – 3. Gövde güç iletim kolu perspektif görünüş Ek – 4. Ara kol bağlantı perspektifi Ek-5. Gövde motoru teknik boyutları Ek-6. Gövde motor mil iletim dişlisi boyutları Ek-7. Mafsal ucu teknik boyutları Ek-8. Sonsuz vida karşılık dişlisi iletim dişlisi Ek- 9. Tam mekanizam görünüşü İzometrik –ve profil görünüşleri ÖZGEÇMİŞ Fatih AYTA Ordu \ Fatsa 05.05.1983 tarihi doğumluyum. Memur bir ailenin ilk çocuğuyum. İlk, orta ve lise öğrenimimi Ordu’da başarı ile tamamladım. Gayretli ve düzenli bir çalışma sonucu 2001 yılında Ordu Teknik Lisesinden mezun oldum. Aynı sene Sakarya Üniversitesi Teknik Eğitim Fakültesi Makine Eğitimi Bölümü Otomotiv Öğretmenliği Bölümünü kazandım.