Robot tasarımı yapılırken, bir robotun fiziksel ve kinematik özelliklerini tanımlamak için standart bir yapıya ihtiyaç vardır. Bu ihtiyaç, robotun modelini tanımlayan formatlar ile karşılanır. Yaygın olarak kullanılan formatlar arasında URDF, SDF ve MJCF bulunur.
URDF (Unified Robot Description Format), bir robotun fiziksel ve kinematik özelliklerini tanımlayan XML tabanlı bir formattır. Özellikle açık kaynaklı ve günümüzde en yaygın kullanılan robot yazılım altyapılarından biri olan ROS (Robot Operating System) içinde kullanılır.
URDF’nin ne yaptığına daha yakından bakalım:
- Robotun yapısını tanımlar: yapısal elemanlar (link’ler), bunların bağlantıları (eklem/ joint’ler) ve aralarındaki ilişkiler.
- Robotun geometrisini tanımlar: hem görselleştirme hem de robotun kendi parçaları için çarpışma (collision) tespiti amacıyla. Başka bir deyişle, parçaların görsel olarak detaylı gösterimi ayrı bir konudur; robotun bu parçaların birbirine veya dış ortama çarpıp çarpmayacağını hesaplaması ise ayrı bir konudur. Bu nedenle, görsel model daha detaylı olabilirken, çarpışma hesapları için daha basit geometriler kullanılır. Daha basit geometriler kullanılması, gerçek zamanlı işlemlerde daha hızlı hesap yapılmasını sağlar.
- Simülasyon için gerekli inertial (atalet) özelliklerini içerir: kütle, kütle merkezi ve atalet tensörü gibi.
Bu nedenle URDF, robotun görselleştirilmesi ve simülasyon hazırlanması için güçlü bir araçtır. Ancak önemli bir nokta: robotun nasıl davrandığını veya nasıl kontrol edildiğini tanımlamaz. Sadece robotun fiziksel modelini tanımlar.
Bir URDF dosyası şu elemanlardan oluşur:
- <robot>: Ana (root) eleman
- <link>: Rijit (katı) bir parçayı tanımlar
- <joint>: İki link arasındaki bağlantıyı tanımlar (dönel, doğrusal veya sabit olabilir)
- Diğer etiketler: <visual>, <collision>, <inertial>, <origin>
URDF; sensörler, aktüatörler, malzeme özellikleri ve karmaşık joint kısıtları (basit hinge, prismatic veya fixed joint dışında) ile ilgilenmez. Temelde yapısal ve kinematik bir modeldir; gelişmiş bir fizik simülasyon aracı değildir. Örneğin sürtünme, esnek temas veya çarpışma dinamiği gibi etkileri içermez. Bu tür durumlar için SDF (Simulation Description Format) veya MJCF (MuJoCo – Multi Joint Dynamics with Contact) gibi daha gelişmiş formatlara ihtiyaç duyulur.
SDF ile sadece robotu değil, tüm simülasyon ortamını tanımlamak mümkündür. Bu açıdan bakıldığında, SDF bazı durumlarda URDF’nin ötesine geçer.
MJCF, yüksek performanslı simülasyonlar için kullanılır ve MuJoCo fizik motoru ile birlikte çalışır. Bu format ile yumuşak temaslar, tendonlar gibi daha detaylı fiziksel etkileşimler simüle edilebilir. MuJoCo, fizik tabanlı simülasyon ve reinforcement learning çalışmalarında kullanılır.
Günümüzde tüm platformlar, simülatörler ve donanımlar arasında tamamen ortak çalışan tek bir format yoktur; ancak bu yönde çalışmalar devam etmektedir. Örneğin ROS 2 ile birlikte SDF kullanımı giderek yaygınlaşmaktadır.
Sonuç olarak bu tür formatlara ihtiyaç duyulmasının nedeni şudur:
Robotik yazılıma, robotun nasıl göründüğünü, parçalarının nasıl hareket ettiğini ve birbirleriyle ilişkilerini, kütle ve atalet özelliklerini, parça geometrilerini ve fiziksel sınırlarını, joint türlerini ve bağlantılarını, sensör ve aktüatör yerleşimlerini, yani robotun fiziksel yapısını ve kinematiğini anlatan bir “model tanımı” gerekir.
Bu sayede ileri ve ters kinematik (forward ve inverse kinematics) hesapları yapılabilir, hareket planlama gerçekleştirilebilir ve fiziksel simülasyonlar kurulabilir. Ayrıca bu bilgilerin tek bir yerde, düzenli bir formatta tanımlanması; hataları azaltır, ekip içinde anlaşılabilirliği artırır ve farklı uygulamalar arasında robot modellerinin paylaşılmasını kolaylaştırır.
Robot modelini tanımlayan bu formatlar; kontrol yazılımı, davranış, komutlar, yapay zekâ veya veri iletişimi gibi konuları içermez.
Örneğin URDF, robotun belirli bir durumda nasıl hareket edeceğini kontrol etmez. Ancak kontrol yazılımının bu hareketi gerçekleştirebilmesi için gerekli olan fiziksel ve kinematik modeli sağlar.
Yazar: A. Tüter
——————————————————-
Kullanım Koşulları: İçeriklerimizin her hakkı saklıdır, izinsiz olarak kopyalanamaz, yayınlanamaz. Paylaşımlarımızı tarihli olarak kaydetmekteyiz. İçeriklerimizde hata ve eksiklikler olabilir. Bahsi geçen ticari markalar sahiplerine aittir; bunlarla bağlantımız bulunmamaktadır ve bu içerik onay anlamı taşımaz. Kullanım koşulları sayfamızı ziyaret ediniz.
Yorum yapabilmek için kayıtlı kullanıcı olmanız gerekmektedir. Giriş