Sanal Robot Deney Platformu: Virtual Robot Experimentation Platform: V-REP

Benzer belgeler
NX Motion Simulation:

MATLAB A GİRİŞ. EE-346 Hafta-1 Dr. Ayşe DEMİRHAN

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

PR Kasım 2009 Yazılım, PC-tabanlı kontrol Sayfa 1 / 5

MEKATRONİK MÜHENDİSLİĞİ YÜKSEK LİSANS PROGRAMI

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

Sanal Ortamda Nesnelerin Haptic Kol ile Manipülasyonu. Sevcan AYTEKİN Alpaslan DUYSAK

Autodesk Robot Structural Analysis Professional İnşaat Müh. için Yapısal Modelleme, Analiz ve Tasarım çözümü

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Omron Sysmac ailesi ile gerçek makina otomasyonu. Nurcan Konak, Mayıs 2012

GörüntüĐşlemede Yeni Bir Soluk, OpenCV

GÖRÜNTÜ TABANLI ALGILAMA İLE QUADROTORUN HAREKETLİ BİR CİSMİ TAKİBİ

CNC (COMPUTER NUMERİCAL CONTROL)

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 1 ( yılı ve sonrasında birinci

SIEMENS NX CAE YAZILIMLARI İÇİN COMPOSITE HOST ID VE MAC ADRESİ NASIL ÖĞRENİLİR?

Alanın En Güvenilir ve En Hızlı İmalat Çözümü Inventor İçinde Kusursuz Entegrasyon

YAŞAR ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 4 YILLIK EĞİTİM PLANI ( AKADEMİK YILINDAN İTİBAREN GEÇERLİDİR)

SPS ZOOM D Lazer Tarayıcı SPS ZOOM 300

Özgür Yazılımlar ile VoIP Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

AX-3000 ALLPLAN ve AutoCAD için

Video Management Software. ÜrünBilgileri

METROPOL SOFT SOLIDWORKS PREMIUM SOLIDWORKS STANDARD SOLIDWORKS PROFESSIONAL KOLAY KULLANIM

Autodesk Robot Structural Analysis Professional. Yapısal projeleriniz için kapsamlı analizler.

Plaka Tanıma. Plaka. Tanıma Sistemi. Sistemi

YENİLENEBİLİR ENERJİ KAYNAKLARI RÜZGAR ENERJİSİ SİSTEMLERİ Eğitim Merkezi Projesi

Sanal Santral A.Ş. Çözümleri

: ODTÜ Kent Konukevi - 1 Daire:101/5 ODTÜ Kampüsü Üniversiteler Mah. Dumlupınar Blv. No: Çankaya-Ankara, Türkiye

Akılda kalıcı sahneler

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR

3B ÜRÜN TASARIMINDA KOMPLE ÇÖZÜM

qscale I2 Low-End SLI

Veritabanı. Ders 2 VERİTABANI

FAN-SİM FAN-SİM FAN PERFORMANS HESAPLAMA VE SEÇİM YAZILIMI.

Android Platformunda OpenCV İle Görüntü İşleme

HASSAS OTOMATİK GEOMETRİ ÖLÇÜMLERİ DAHA HIZLI, DAHA KOLAY VE ÇOK DAHA EKONOMİK

COĞRAFİ BİLGİ SİSTEMLERİ SERVER MİMARİSİ SERVER UYGULAMA GELİŞTİRME EĞİTİMİ

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

Simulink Kullanılarak ROS Tabanlı Gezgin Robot Kontrol Benzetimi

Kepware Veritabanı Ürünleri. Teknolojiye Genel Bir Bakış

Profesyoneller için Çelik Bağlantılar ve Detay Çizimleri

Öğr. Gör. Serkan AKSU 1

Eclipse, Nesneler ve Java 2 Java Nereden Çıktı? 2

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

UZAKTAN OKUMA EDM/MDM SİSTEMLERİ IDSPECTO, ENERJİ MARKETİNİN MEVCUT VE GELECEKTEKİ TÜM UYGULAMALARI İÇİN EKSİKSİZ BİR YAZILIM ÇÖZÜMÜDÜR

NETFORM Mühendislik Makina Metal. Firma Sunumu

BİL 542 Paralel Hesaplama. Dersi Projesi. MPJ Express Java Paralel Programlama

Mühendislik Tasarım-3 ve Bitirme Çalışması Konuları

Akıllı Kontrolde Teknoloji Devi SCADA YAZILIMI. Supervisory Control and Data Acquisition. ViewPLUS. Açık, Esnek, Ölçeklenebilir.

Temel Bilgisayar (Basic Computer) Yazılım (Software)

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

AMAÇ Araçlardaki Kamera Sistemleri

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

WORKNC

cofaso ile farkı yaşayın Şubat

BULUT BİLİŞİM VE BÜYÜK VERİ ARAŞTIRMA LABORATUVARI. Ekim 2017

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

WINDESKCONCENTO. sıgnum. Kurumsal İş Süreçleri Uygulamaları. windesk.com.tr

Sony FY14 BRAVIA B2B. Yeni FY14 Bravia B2B serisi tanıtımı

AFYON KOCATEPE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MAKİNE MÜHENDİSLİĞİ ANABİLİM DALI BAŞKANLIĞI YÜKSEK LİSANS PROGRAMI

Hazırlayan: Ahmet Alper ÇALIŞKAN Probiz Yazılım Proje Mühendisi

Zararlı Yazılım Analizi

Smart Automation, Quality and IT Excellence Solutions - our experience, your success. Versiyon 2.5.

T.C. İZMİR KÂTİP ÇELEBİ ÜNİVERSİTESİ BİLİMSEL ARAŞTIRMA PROJELERİ KOORDİNASYON BİRİMİ

ve Sonrası Girişli Öğrenciler için Uygulanacak Ders Program

24 KANALLI DOREMİ SİSMİK CİHAZI

Web adresi : MEKANSAL VERİLER İLE ÜRETİLECEK TÜM ÇÖZÜMLER İÇİN... BİLİŞİM TEKNOLOJİLERİ LTD. ŞTİ.

Eğitim veya Danışmanlık Hizmetinin Tanımı

ALICIA Projesi ve SDT A.Ş. nin Katılımı

Windows Server 2012: Sanallaştırmanın ötesine geçin. Oğuz Pastırmacı IT Pro Teknolojileri Yöneticisi Microsoft Türkiye

MEKANİZMA TEKNİĞİ (1. Hafta)

Teknoloji Kullanımı. Oyun Motorları

SOLIDWORKS SIMULATION EĞİTİMİ

Çözümleri TRAFİK ÖLÇÜM SİSTEMLERİ. İSBAK A.Ş., İstanbul Büyükşehir Belediyesi iştirakidir.

AFYON KOCATEPE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ MAKİNE MÜHENDİSLİĞİ ANABİLİM DALI BAŞKANLIĞI YÜKSEK LİSANS PROGRAMI

TurkUAV Thermo Havadan Görüntüleme ve Ölçüm Sistemi

EGE Üniversitesi Mühendislik Fakültesi Bilgisayar Müh. Bölümü Öğretim Yılı Lisans Tezi Önerileri

Ekin SAFE TRAFFIC Hız İhlal Tespit Sistemi

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

İŞLETİM SİSTEMLERİ. (Operating Systems)

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Ekin SAFE TRAFFIC Kırmızı Işık İhlal Tespit Sistemi

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

ALMS SUNUMU KARİYER TEKNOPARK

BEDEN EĞİTİMİ I: Haftalık ders 1 saattir (T-0 ) (U-l) (K-0).

Bilgi İşlemde Yeni Bir Çağ IBM Corporation

BENZERSİZ SORUNLARA BENZERSİZ ÇÖZÜMLER

Leica DISTO D3a / BT Çok fonksiyonel, hassas ölçüm imkanı

ÜÇ BOYUTLU ÖLÇÜM VE ANALİZ SİSTEMİ.

Ekin SAFE TRAFFIC Plaka Tanıma Sistemi

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

Yazılım Mühendisliği 1

Başlama Rehberi Resmi ResellerClub WHMCS Modülleri

Selahattin Esim CEO

BMS-302 İleri Web Programlama. İş Parçacığı (Thread) ve Soket (Socket) Programlama

Transkript:

Sanal Robot Deney Platformu: Virtual Robot Experimentation Platform: V-REP Tanıtım Sunumu Serkan ÇİÇEK Makine Mühendisi Tura Akıllı Sistemler Mühendislik Enerji Elektronik Robotik ve İmalat Tic. Ltd. Şti.

V-REP ve Uygulama Alanları Sahne Nesneleri Hesaplama Modülleri Kontrol Mekanizmaları Diğer Özellikler Genel Bakış Ürün Ailesi ve Lisanslama Tipleri İçerik V-REP ve Uygulama Alanları Sahne Nesneleri Hesaplama Modülleri 3 Ana Unsur Kontrol Mekanizmaları Diğer Özellikler Genel Bakış Ürün Ailesi ve Lisanslama Tipleri 2

V-REP Nedir? Herhangi bir sistemin fiziksel ve yazılımsal modelini oluşturabileceğiniz genel amaçlı bir robot simülatörüdür. Modeller; Lyall Randell, HiBot, Cubictek, KUKA ve ABB nin izniyle kullanılmaktadır. Diğerlerinden farklı olarak ABB nin V-REP ile resmi bir bağlantısı yoktur. Tura Mühendislik, Coppelia Robotics'in Türkiye'de yetkili tek distribütörüdür. 3

Tipik Uygulama Alanları Hızlı prototipleme ve doğrulama Fabrika otomasyon sistemleri simülasyonu Hızlı algoritma geliştirme Robotik eğitimi Uzaktan görüntüleme Donanım kontrolü Güvenlik kontrolü Etkili ürün sunumu vb. Kara robotu hareketleri Su altı robotu davranışları Hava aracı davranışları 4

3 Ana Unsur V-REP'i oluşturan 3 ana unsur. Sahne Nesneleri Hesaplama Modülleri Kontrol Mekanizmaları 5

Sahne Nesneleri Temel yapıtaşları 12 farkı tip nesne Birbirleriyle kullanılabilirler. Hesaplama modülleri ve kontrol mekanizmaları ile kullanılarak kompleks sistemler oluşturabilirler. Sahne Nesneleri Kontrol Mekanizmaları Hesaplama Modülleri 6

Sahne Nesneleri Şekiller Mafsallar Kameralar Işıklar Referans Nesneler Mesafe Sensörleri Sahne Nesneleri Aynalar Kuvvet / Tork Sensörleri Görüntü Sensörleri Kesiciler Yollar / Güzergahlar Grafikler 7

Sahne Nesneleri Şekiller (Shapes) Üçgen yüzlerden oluşan rijit sayısal ağ nesneleridir. İçeri-dışarı aktarılabilirler. Program içerisinde oluşturulabilir/düzenlenebilirler. Hızlı hesaplamalar için optimize edilmişlerdir. Dört tipi vardır: Simple/grouped random shape Simple/grouped convex shape Pure simple/grouped shape Heightfield shape * * A special non-primitive collision shape. A terrain mesh can easily be constructed by just giving a heightfield image. 8

Sahne Nesneleri Mafsallar (Joints) En az bir serbestlik derecesi olan, mekanizmalar oluşturmaya ve nesneleri hareket ettirmeye yarayan nesnelerdir. Döner (Revolute-type) Prizmatik (Prismatic-type) Vida (Screw-type) Küresel (Spherical-type) 9

Sahne Nesneleri Mesafe Sensörleri (Proximity Sensors) US'ten IR'e her tip mesafe sensörü, çok gerçekçi modellenebilir. Algılama hacmi yaklaşımı ile ayrık (discrete) algılama ışınları yaklaşımına göre çok daha gerçekçi mesafe hesaplaması. Ayalanabilir algılama hacmi Hacim içerisinde çok hızlı en kısa mesafe hesaplaması 10

Sahne Nesneleri Görüntü Sensörleri (Vision Sensors) Kamera simülasyonu Entegre görüntü işleme özelliği Plugin mekanizması ile geliştirilebilir. 11

Sahne Nesneleri Kuvvet/Tork Sensörleri (Force/Torque Sensors) İki şekil arasındaki kuvvet ve tork iletimini ölçebilen rijit bağlantılardır. Rijitlikleri koşullara bağlıdır; belli eşik değerlerine göre kırılabilirler. 12

Sahne Nesneleri Kesiciler (Mills) Şekiller üzerinden talaş kaldırabilmeyi sağlar. Neredeyse her tip işleme metodu modellenebilir. Özelleştirilebilir kesme hacmi. 13

Sahne Nesneleri Kameralar (Cameras) Sahnemizi farklı bakış açılarından görebilmek içindir. Perspektif / ortografik gösterim Bir nesneyi takip edebilme özelliği Otomatik görüntü sığdırma fonksiyonu 14

Sahne Nesneleri Işıklar (Lights) Sahneyi görebilmemizi sağlayan ışık kaynaklarıdır. 3 tipi vardır: Spot Lamba (Spotlight) Yönlü Lamba (Directional) Yönsüz Lamba (Omnidirectional) 15

Sahne Nesneleri Referans Nesneler (Dummies) En basit nesnedir (oryantasyonu olan bir nokta). Çok amaçlı yardımcı nesnelerdir. Referans Koordinat Ekseni olarak düşünülebilir. Tek başına anlamlı değildir, ancak diğer nesne ve hesaplama modülleriyle birlikte kullanılması çok önemlidir. 16

Sahne Nesneleri Grafikler (Graphs) Simülasyondaki veri akışlarını kaydetmek ve görselleştirmek için kullanılır. 3 tipi vardır: Zaman Grafikleri X/Y Grafikleri 3B Eğriler Dışarı aktarılabilirler. 17

Sahne Nesneleri Yollar (Güzergahlar) (Paths, Trajectories) 6 eksende güzergah tanımlama. Yollar, mevcut şekillerden türetilebilir. 18

Sahne Nesneleri Aynalar (Mirrors) Ayna olarak görüntüyü/ışığı yansıtan nesneler olarak kullanılabilir. Sahne/model/nesneden kesit almak için kullanılabilir. 19

Hesaplama Modülleri 5 temel algoritma Birbirleriyle kullanılabilirler. Sahne nesneleri ve kontrol mekanizmaları ile kullanılarak kompleks sistemler oluşturabilirler. Sahne Nesneleri Kontrol Mekanizmaları Hesaplama Modülleri 20

Hesaplama Modülleri Hesaplama Modülleri Çakışma Tespiti Dinamik / Fizik En Kısa Mesafe Hesaplaması Güzergah Planlama İleri / Ters Kinematik Hesaplamalar 21

Hesaplama Modülleri Dinamik / Fizik Gerçek ortam fiziğini ve nesnelerin etkileşimlerini (çarpışma, kavrama, vb.) simüle edebilmek için hızlı ve özelleştirilebilir dinamik hesaplamalar yapabilir. İki fizik motoru desteği: Bullet & ODE Tek tıklamayla motorlar arası geçiş. Hava ve su jeti simülasyonları için dinamik partiküller. Kinematik modülü ile birlikte çalışabilir. ODE and Bullet are both open-source physics engines. Physics engines track all of the physically-active objects, and take into account gravity, collisions, and other constraints to determine how each object's position and orientation changes from one frame to the next. The "open-source" part is important for two reasons. First, it makes cross-platform development a lot easier. Second, with source-code access, users can change anything that isn't working just how they want, and then submit their improvements so that others can use them as well. 22

Hesaplama Modülleri İleri / Ters Kinematik Hesaplamalar Herhangi bir mekanizma için ileri ve ters kinematik hesaplamalar modülüdür. Her türlü mekanizma/yapı için uygundur. Sönümlü/sönümsüz çözüm Ağırlık fonksiyonlu çözüm Koşulluk çözüm Engellerden kaçınma Modele gömülebilme 23

Hesaplama Modülleri Çakışma Tespiti Tüm yapılar için çakışma kontrolü. 24

Hesaplama Modülleri En Kısa Mesafe Hesaplaması Tüm yapılar için en kısa mesafe hesaplaması. 25

Hesaplama Modülleri Güzergah Planlama 2-6 serbestlik derecesinde holonomik Taşıt benzeri yapılar için holonomik olmayan Holonomik sistemler, olası durumlarını sınırlayan kısıtlara bağlı olan mekanik sistemlerdir. Kısıtlar hız üzerine verildiğinde durum değişkenleri integre edilebilecek şekilde bulunabilir. Holonomik kısıtlara örnek olarak normal salınımdaki uzunluk kısıtları ve katı cisim hareketindeki rijitlik kısıtları gösterilebilir. 26

Kontrol Mekanizmaları 6 metot / arayüz Aynı anda ve iç içe kullanılabilirler. 6 programlama dili Entegre geliştirme ortamı Sahne Nesneleri Kontrol Mekanizmaları Hesaplama Modülleri 27

Kontrol Mekanizmaları V-REP kontrol mimarisinde her bir nesne/model bir arayüz tercihi ile bireysel olarak kontrol edilebilir. API: Bir yazılımın başka bir yazılımdaki fonksiyonları kullanabilmesi için oluşturulmuş bir tanım bütünü. Gömülü Uzak API >280 API fonksiyonu Script'ler İstemcileri >100 API fonksiyonu >400 API fonksiyonu Plugin'ler ROS Node'lar >100 servis >30 "publisher" tipi >25 "subscriber" tipi Robot Operating System (ROS) is a software framework for robot software development, providing operating system-like functionality on a heterogeneous computer cluster. Add-on'lar Özel Çözümler A node is an executable file within a ROS package. ROS nodes use a ROS client library to communicate with other nodes. Nodes can publish or subscribe to a Topic. Nodes can also provide or use a Service. 28

Kontrol Mekanizmaları Yerel ve Uzak Arayüzler (Local and Remote Interfaces) Yerel Uzak Yerel (aynı işlem) senkron* veya asenkron* operasyon. Gömülü Script'ler Uzak API İstemcileri Uzak (farklı işlem/donanım) asenkron* operasyon. Plugin'ler ROS Node'lar Add-on'lar Özel Çözümler * simülasyon döngüsüne 29

Kontrol Mekanizmaları Yerel Arayüzler (Local Interfaces) Gömülü Script'ler > 300 API fonksiyonu. Genişletilebilir. Herhangi bir sahne nesnesi ile ilişkilendirilebilir. Birçok Lua genişleme kütüphanesi mevcuttur. Threaded veya non-threaded olabilirler. Thread'ler kolayca senkronize edilebilir. Farklı tipler: main script, child scripts, callback scripts (ör: özel mafsal kontrolcüleri) Plugin'ler > 400 API fonksiyonu. Genişletilebilir. C/C++ arayüzü Simülatörü özelleştirebilir. Yeni gömülü script komutları tanımlamak için kullanılabilir. Add-on'lar > 300 API fonksiyonu. Genişletilebilir. Lua arayüzü Simülatörü özelleştirebilir. Pratik ve kolay kurulum. Birçok Lua genişleme kütüphanesi mevcuttur. Non-threaded: Sıraya konulan işlem. Threaded: Sıraya konulmadan paralelden yürütülen işlem. 30

Kontrol Mekanizmaları Uzak Arayüzler (Remote Interfaces) Uzak API İstemcileri > 100 API fonksiyonu. Genişletilebilir. C/C++, Python, Java, Matlab ve Urbi arayüzleri Veri akışı ve bölümlendirme modları Pratik ve kolay kurulum. ROS Node'lar > 100 servis (>30 "publisher" tipi, >25 "subscriber" tipi. Genişletilebilir. "Publisher"lar ve "Subscriber"lar, servis çağrısı veya gömülü script fonksiyon çağrısı ile aktifleştirilebilir. 31

Kontrol Mekanizmaları Gömülü Script Avantajları 1/6: Kontrolcü Entegrasyonu Plugin Gömülü Script Simülasyon modeli (şekiller, mafsallar, sensörler, vb.) + Plugin (kontrolcü) Simülasyon modeli (şekiller, mafsallar, sensörler, vb.) + kontrolcü 2 öğe 1 öğe 32

Kontrol Mekanizmaları Gömülü Script Avantajları 2/6: Ölçeklenebilirlik Plugin Gömülü Script Simülasyon modeli 1 Simülasyon modeli 1 Simülasyon modeli 2 Plugin Simülasyon modeli 2 Simülasyon modeli 3 Simülasyon modeli 3 Modelleri plugin yönetmeli. Doğal olarak ölçeklenebilir. 33

Kontrol Mekanizmaları Gömülü Script Avantajları 3/6: Versiyon Uyuşmazlığı Plugin Gömülü Script Simülasyon modeli 1 (versiyon 1) Simülasyon modeli 2 (versiyon 1) Plugin (versiyon 1) Simülasyon modeli 1 (versiyon 1) Simülasyon modeli 2 (versiyon 1) Simülasyon modeli 1 (versiyon 2) Plugin (versiyon 2) Simülasyon modeli 1 (versiyon 2) Uyuşmazlık ihtimali çok fazla. Uyuşmazlık ihtimali yok. 34

Kontrol Mekanizmaları Gömülü Script Avantajları 4/6: Taşınabilirlik Aynı İşletim Sistemi Plugin Aynı İşletim Sistemi Gömülü Script Simülasyon modeli Farklı İşletim Sistemi Plugin Simülasyon modeli 2 dosya 1 dosya Farklı İşletim Sistemi Simülasyon modeli Plugin Plugin source Plugin source kaynağı Simülasyon modeli Çok fazla dosya Derleme gereksinimi İşletim sist. yönelik problemler 1 dosya Derleme gereksinimi yok İşletim sist. yönelik problemleri yok 35

Kontrol Mekanizmaları Gömülü Script Avantajları 5/6: Diğer Etkenler Plugin Oluşturma, derleme ve kurulum zorluğu: Yüksek Gömülü Script Oluşturma, derleme ve kurulum zorluğu: Düşük Model düzenleme zorluğu: Yüksek Model düzenleme zorluğu: Düşük Bakım: İşletim sistemine bağlı. Bakım: İşletim sisteminden bağımsız. 36

Kontrol Mekanizmaları Göm. Scr. Avan. 6/6: Simülasyon Döngüsü ile Senkronizasyon Non-treaded Threaded Plugin Kontrol rutini, her simülasyon döngüsünde bir çağrılır. Kolay Kompleks senkronizasyon mekanizması gereksinimi Zor Non-treaded Threaded Kontrol rutin thread'i, bir yardımcı rutinmiş gibi davranır. Ör: Gömülü Script Kontrol rutini, her simülasyon döngüsünde bir çağrılır. Kolay simswitchthread() simsetthreadswitchtiming(delay) simsetthreadisfree(isfree) simsetthreadresumelocation(location,order) Kolay 37

Kontrol Mekanizmaları Gömülü Script Örneği Şekil Mafsal Mesafe sensörü Gömülü script Algılanan noktalar Hexapod Simülasyon Modeli Hokuyo modelinin hiyerarşik görünümü Hokuyo Simülasyon Modeli Mesafe örnekleme ışınları 38

Kontrol Mekanizmaları Uzak API Avantajları 1/2: Herhangi bir donanım üzerinde çalışabilir, pratik, birçok dil desteği Urbi Matlab............................ V-REP Java C/C++ Python 39

Kontrol Mekanizmaları Uzak API Avantajları 2/2: Kolay kullanım, normal bir API gibi V-REP............................ Remote API client Uzak API fonksiyonu Normal değişkenler int errorcode=simxgetjointposition(jointhandle,&position,operationmode); simx_error_noerror simx_error_timeout_flag simx_error_novalue_flag simx_error_remote_error_flag simx_error_local_error_flag etc. Bloklama modu simx_opmode_oneshot simx_opmode_oneshot_wait simx_opmode_streaming simx_opmode_discontinue simx_opmode_buffer etc. 40

Kontrol Mekanizmaları İşbirlikçi Kontrol Mekanizmaları Gömülü Script'ler Uzak API İstemcileri Plugin'ler ROS Node'lar Add-on'lar Özel Çözümler 41

Kontrol Mekanizmaları İşbirlikçi Kontrol Mekanizmaları Örneği 1/3 Sinyale koordinat bilgisi ekler. "objcreation" Uzak API İstemci int pos[3]={1.0f,2.0f,3.0f}; simxappendstringsignal("objcreation",(simxchar*)pos,3*4,simx_opmode_oneshot); Sinyalde bulunan koordinatlarda silindirler yaratır. "objcreation" signaldata=simgetstringsignal("objcreation") simclearstringsignal("objcreation") if signaldata then data=simunpackfloats(signaldata) for i=0,(#data-1)/3,1 do handle=simcreatepureshape(2,22,{0.1,0.1,0.1},0.1) Gömülü Script simsetobjectposition(handle,-1,{data[3*i+1],data[3*i+2],data[3*i+3]}) end end 42

Kontrol Mekanizmaları İşbirlikçi Kontrol Mekanizmaları Örneği 2/3 void SCRIPT_DO_SOME_MAGIC_CALLBACK(SLuaCallBack* p) {... ( gets called when a script calls simxext_dosomemagic ) } Plugin // Initialization phase of plugin: register new script commands: #define SCRIPT_DO_SOME_MAGIC "simext_dosomemagic" int inargs[]={2,sim_lua_arg_int,sim_lua_arg_float sim_lua_arg_table}; simregistercustomluafunction(script_do_some_magic,strconcat("number value1, number value2=",script_do_some_magic,"(number index,table invals)"), inargs,script_do_some_magic_callback); Özel API fonksiyonunu kaydeder ve işler. "simext_dosomemagic" Özel API fonksiyonunu çağırır. "simext_dosomemagic" Gömülü Script returndata1,returndata2=simext_dosomemagic(arg1,arg2) 43

Kontrol Mekanizmaları İşbirlikçi Kontrol Mekanizmaları Örneği 3/3 ROS'a resim akışını aktifleştirir. -- Following in the script initialization phase (executed just once): -- Retrieve the handle of the vision sensor we wish to stream: visionsensorhandle=simgetobjecthandle('vision_sensor') -- Now enable topic publishing and streaming of the vision sensor's data: topicname=simextros_enablepublisher('visionsensordata',1, simros_strmcmd_get_vision_sensor_image,visionsensorhandle,0,'') -- Retrieve the handle of the passive vision sensor. We will use -- the passive vision sensor to visualize received data: passivesensorhandle=simgetobjecthandle('passivevision_sensor') Gömülü Script -- Now enable a topic subscription: simextros_enablesubscriber(topicname,1, simros_strmcmd_set_vision_sensor_image,passivesensorhandle,0,'') ROS'tan resim akışını aktifleştirir. ROS Framework 44

Kontrol Mekanizmaları Unsurlara Genel Bakış 45

Kontrol Mekanizmaları Mimariye Genel Bakış 1. C/C++ API bildirileri 2. Script'lerin ard arda yürütülmesi 3. Lua API çağrıları 4. Özelleştirilmiş Lua API bildirileri 5. V-REP olay bildirileri 6. Uzak API fonksiyon çağrıları 7. ROS aktarımı 8. Özelleştirilmiş iletişim (soket, seri, veri yolu, vb.) 9. Lua API'ye Add-on çağrıları 10. Script bildiri çağrıları 46

Diğer Özellikler Özelleştirilebilir Kullanıcı Arayüzü Entegre arayüz düzenleme modunda, tamamen özelleştirilebilir sayısız kullanıcı arayüzü bileşeni. Butonlar, kaydırıcılar, düzenleme kutuları ve etiketleri Kaplanabilir veya anime edilebilir (örneğin video akışı ile) Sahne nesneleri ile ilişkilendirilebilir (gömülebilir). Taşınabilir Entegre düzenleme modu Kişiselleştirilmiş Windows stilleri desteği 47

Diğer Özellikler Entegre Düzenleme Modları (Mesh Edit Modes) Modellere yönelik temel düzenleme modları. Örneğin; Yarı-otomatik temel şekil algılama metodunu içeren sayısal ağ düzenleme modu. Üçgen, kenar ve nokta düzenleme modları Sayısal ağ düzenleme (nokta ayarlama, üçgen ekle/çıkar) Yarı-otomatik ilkel şekil çıkartma fonksiyonu Üçgen, kenar ve nokta çıkartma Sayısal ağ ayrıştırma Dışbükey şekil ayrıştırma Dışbükey şekil kabuğu ayrıştırma 48

Diğer Özellikler Daha birçok özellik İçeri aktarma formatları: OBJ, STL, 3DS, DXF, COLLADA, URDF Entegre Reflexxes Hareket Kütüphanesi (Tip 4) Dinamik partiküller Yüzey işleme simülasyonu Video kaydedici Kablosuz haberleşme simülasyonu Boyama ve kaynak atma simülasyonları Optik aynalar Model listeleyici ve sahne hiyerarşisi Statik ve dinamik dokular Çoklu geri al / yinele özelliği Detaylı dokümantasyon ve yardım vb... The Reflexxes Motion Libraries provide instantaneous trajectory generation capabilities for motion control systems. 49

V-REP'e Genel Bakış Gelişmiş dağınık kontrol mimarisi Gömülü script'ler Uzak API ROS arayüzü Çok sayıda gelişmiş unsur >400 farklı API fonksiyonu 12 tip simülasyon nesnesi (kuvvet/tork sensörü, mafsal, kamera, vb.) Entegre fizik motoru, kinematik/çakışma/mesafe/güzergah hesaplamaları Çok sayıda platform, arayüz ve dil desteği Arayüzler : Plugin'ler, Gömülü script'ler, Add-on'lar, Uzak API, ROS Diller : C/C++, Java, Python, Lua, Matlab, Urbi Fizik motorları : Bullet, ODE Platformlar : Windows, MacOS, Linux 50

Ürün Ailesi V-REP PRO EDU: Ticari olmayan kullanım için. Ücretsiz. Hobi amaçlı kullanıcı, öğrenci, öğretmen, akademisyen, okul, üniversite, vb. Sınırlamasız, tüm fonksiyonlar açık. Kullanıcı kaydı gereksinimi yok. V-REP PRO: Ticari kullanım için. Ücretli. Şirket, araştırma enstitüsü, kar amacı gütmeyen organizasyon, vb. Sınırlamasız, tüm fonksiyonlar açık. V-REP PLAYER: Oynatıcı. Ücretsiz. Herkes için. Ücretsiz ve dağıtılabilir. Düzenleme kabiliyetleri sınırlı. Dosya kaydetme özelliği yok. 51

Açık Kaynak Kodu ve Alt-Lisanslama V-REP, açık kaynak kodludur. V-REP'i kullanarak kendi yazılımınızı geliştirebilir, bu yazılımı kendi bünyenizde kullanabilir ya da satabilirsiniz. Yazılımı yine esnek bir simülatör olarak geliştirebileceğiniz gibi, kendi ürünlerinize özel bir yazılıma da dönüştürebilirsiniz. Alt-Lisanslama: Özelleştirilmiş V-REP'in ticari olarak satılması için gereken lisans tipidir. V-REP SOURCE CODE Educational: Açık kaynak kodun eğitim versiyonu. Ücretsiz. V-REP SOURCE CODE Commercial: Açık kaynak kodun ticari versiyonu. Yani özelleştirilmiş V-REP'in alt-lisanslaması için. Ücretli. 52

Teşekkürler Tura Akıllı Sistemler Mühendislik Enerji Elektronik Robotik ve İmalat Tic. Ltd. Şti. Aşağı Öveçler Mah. 1322. Cad. No:27/7 Çankaya/Ankara/Türkiye +90 312 472 66 16 iletisim@turamuhendislik.com www.turamuhendislik.com