Vrep Tanıtımı

V-REP nedir?

  V-REP, herhangi bir robotik sistemin fiziksel ve yazılımsal modelini oluşturabileceğiniz Sanal Robot Deney Platformudur. V-REP, robot simülatörleri arasında tam bir “İsviçre çakısı”dır. V-REP, hızlı algoritma geliştirme, fabrika otomasyon simülasyonları, hızlı prototipleme ve doğrulama, robotik ile ilgili eğitim, uzaktan izleme, güvenlik çifte kontrolü, vb. için kullanılır. Yazılımı kullanarak;

  • bir kara robotunun hareketleri esnasındaki davranışlarını, 
  • bir su altı robotunun su veya herhangi bir akışkan içerisindeki davranışlarını, 
  • bir hava aracının havadaki davranışlarını 

gözlemleyebilirsiniz. Bütün bunları çok kolay bir şekilde, robotunuzu fiziksel olarak modelleyip üzerine esnek kontrol algoritmalarınızı geliştirerek yaparsınız. Üstelik bütün bunları sıfırdan yapmak yerine, yazılım içerisinde hazır bulunan kütüphaneleri de kullanabilirsiniz.

Yükleme Adresi : 

http://www.coppeliarobotics.com/downloads.html

 

3 ANA UNSUR

V-REP’i oluşturan  3 ana unsur:
 
 

SAHNE NESNELERİ

  •  Temel yapıtaşları
  • 12 farkı tip nesne
  • Birbirleriyle kullanılabilirler.
  • Hesaplama modülleri ve kontrol mekanizmaları ile kullanılarak kompleks sistemler oluşturabilirler.

 

ŞEKİLLER(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

MAFSALLAR (JOİNTS)

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)

 

MESAFE SENSÖRLERİ(PROXİMİTY 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ı
  • Ayarlanabilir algılama hacmi.
  • Hacim içerisinde çok hızlı en kısa mesafe hesaplaması

 

V-Rep’in  yol planlama modülü, 3D alanda yol planlama görevlerini ve 2D alanı için holonomik olmayan hareket kısıtlamaları olan araçları halledilmesini sağlar. Yol planlama modülü, hareket planlama modülü (motion planning module) tarafından işlenen kinematik zincirlerin hareket planlamasını içermez.

Yol planlama görevi genellikle birkaç giriş değeri veya parametre alır:

  • Bir başlangıç konumu(a start position) (veya yapılandırmayı başlatmak): bir cihazın (ör. Robot) ilk yapılandırmasıdır.
  • Bir hedef konum (veya hedef yapılandırması): cihaz veya robot için istenen yapılandırmadır.

  • Engeller: Bu, cihazın (veya robotun) çarpışmaması gereken nesnelerdir(objects), baştan hedefe yapılandırma yolunu izlerken.

Başlangıç yapılandırmasını hedef yapılandırmasına bağlayan bir yol, belirli bir sayıda boyuta sahip bir yapılandırma alanında (ör. X, Y yapılandırma alanı) belirlenebilir (veya sınırlı olabilir). Bundan başka, görevi daha karmaşık hale getiren (örneğin, engellere belirli bir mesafe eşiğini tutmak veya yalnızca bir yönde hareket ettirmek) ek kısıtlamalara ihtiyaç vardır.

GÖRÜNTÜ SENSÖRLERİ(VİSİON SENSORS)

  • Kamera simülasyonu
  • Entegre görüntü işleme özelliği
  • Plugin mekanizması ile geliştirilebilir.

Görüntülenebilir nesneler olan görme sensörleri, kamera nesneleri gibi çok benzer bir şekilde çalışırlar: Kendi görüş alanındaki nesneleri oluşturacak ve belirlenen eşiklerin fazla veya az olduğu tespit edilene tetikleneceklerdir.Oluşturulabilir varlıkları algılayabilen görme sensörleri, renk, ışık veya yapının algılama işleminde rolü olduğunda (örn. Kızılötesi sensörler veya daha genel olarak ışığa duyarlı sensörler (kameralar, vb.)) Yakınlık sensörleri üzerinde kullanılmalıdır. Bununla birlikte, uygulamanın çalıştığı grafik kartına veya sahne nesnelerinin karmaşıklığına bağlı olarak görüntü sensörleri, yakınlık sensörlerinden biraz daha yavaş olabilir. 

KUVVET/TORK SENSÖRLERİ(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.

KESİCİLER(MİLLS)

  • Şekiller üzerinden talaş kaldırabilmeyi sağlar.
  • Neredeyse her tip işleme metodu modellenebilir.
  • Özelleştirilebilir kesme hacmi.

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

IŞIKLAR(LİGHTS)

  • 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)

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.

GRAFİKLER(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.

Graphlar, bir simülasyondaki verileri kaydetmek, görselleştirmek veya dışa aktarmak için kullanılabilen nesnelerdir. Çok güçlü ve esnektirler.   Kullanıcı, kaydetmek için belirli nesnelere uygulanan çok sayıda veri türünü seçebilir.

Veri, üç farklı şekilde görselleştirilebilen bir veri akışı (veri değerlerinin sıralı listesi) olarak kaydedilir:

-Time graphs: Tek bir veri akışının (zaman vs veri akışı) bir zaman grafiği.

-X/Y Graphs: Iki veri akışını birleştiren bir grafik (veri akışı A ile veri akışı B).

-3D curves: Zamanla üç veri akışını birleştiren bir 3D grafik (zamana karşı (veri akışı A, veri akışı B, veri akışı C)).

YOLLAR-GÜZERGAHLAR

  • 6 eksende güzergah tanımlama.
  • Yollar, mevcut şekillerden türetilebilir.

Yollar tek başlarına pek bişey yapmaz.İstenilen etkiyi elde etmek için genellikle dummies veya diğer nesnelerle birlikte kullanılırlar.Bir nesneyi bir yol boyunca taşımak için bir kukla (dummy) ilk olarak yola atanmış olması gerekir sonra yolun içsel (gerçek) hareketini izleyecek olan kuklaya (dummy) bağlanabilir.

Yollar sunulabilir nesnelerdir (renderable objects) bunun anlamı yolların vision sensors tarafından görülebileceği anlamına gelmektedir. Bununla birlikte yol şekillendirme işlevselliği (path shaping functionality) etkinleştirilmelidir. Bir yolun renderable özelliği, ortak nesne özelliklerinden (object common properties) değiştirilebilir.

AYNALAR(MIRRORS)

  • Ayna olarak görüntüyü/ışığı yansıtan nesneler olarak kullanılabilir.
  • Sahne/model/nesneden kesit almak için kullanılabilir.

HESAPLAMA MODÜLLERİ

  • 5 temel algoritma
  • Birbirleriyle kullanılabilirler.
  • Sahne nesneleri ve kontrol mekanizmaları ile kullanılarak kompleks sistemler oluşturabilirler.

DİNAMİK/FİZİK

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.

İLERİ/TERS KİNEMATİK 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 

 

ÇAKIŞMA TESPİTİ

Tüm yapılar için çakışma kontrolü.
 
 

EN KISA MESAFE HESAPLAMASI

Tüm yapılar için en kısa mesafe hesaplaması.
 
 
V-REP, ölçülebilir iki varlık arasındaki minimum mesafeyi çok esnek bir şekilde ölçebilir. Hesaplama kesin bir minimum mesafe hesaplamasıdır. Mesafe hesaplama modülü sadece mesafeleri ölçer; Ancak onlara doğrudan tepki vermez.
 
Mesafe hesaplama modülü, ölçülebilir nesne çiftleri olan mesafe nesnelerinin kaydedilmesini sağlar. Simulasyon sırasında, kayıtlı her mesafe nesnesinin minimum mesafe segmenti daha sonra görselleştirilebilir veya bir graph nesnesine kaydedilebilir.
 

GÜZERGAH PLANLAMA

  • 2-6 serbestlik derecesinde holonomik
  • Taşıt benzeri yapılar için holonomik olmayan

 

KONTROL MEKANİZMALARI

  • 6 metot / arayüz
  • Aynı anda ve iç içe kullanılabilirler.
  • 6 programlama dili
  • Entegre geliştirme ortamı
V-REP kontrol mimarisinde her bir nesne/model bir arayüz tercihi ile bireysel olarak kontrol edilebilir.
 
 

YEREL VE UZAK ARAYÜZLER

YEREL ARAYÜZ:Yerel (aynıişlem) senkron*  veya  asenkron* operasyon.

-Gömülü Scriptler, Pluginler, Add-on’lar

UZAK ARAYÜZ:Uzak (farklı işlem/donanım)  asenkron*  operasyon.

-Uzak API İstemcileri, ROS Nodelar, Özel Çözümler

YEREL ARAYÜZ

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.

UZAK ARAYÜZLER

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.

vrep sürümleri ve farkları 

V-REP PLAYER: Düzenleme kabiliyetleri sınırlıdır. Dosya kaydetme özelliği yoktur. Herkes için ücretsizdir.

V-REP PRO: Ticari versiyondur. Eğitim amaçlı olmayan kullanımlar içindir. Ücretlidir.

V-REP PRO EDU: Eğitim versiyonudur. Eğitim amaçlı kullanımlar için ücretsizdir.

V-REP SOURCE CODE Educational: Açık kaynak kodun eğitim versiyonudur. Eğitim amaçlı kullanımlar için ücretsizdir.

V-REP SOURCE CODE Commercial: Açık kaynak kodun ticari versiyonudur. Yani özelleştirilmiş V-REP’in alt-lisanslaması içindir. Ücretlidir.

 

https://www.youtube.com/watch?v=gBYqOBdIcaY