RoboComp projesi

Bu sayfa, Google Dokümanlar Sezonu için kabul edilen bir teknik yazı projesinin ayrıntılarını içerir.

Proje özeti

Açık kaynak kuruluşu:
RoboComp
Teknik yazar:
Le Thai An
Projenin adı:
RoboComp'in temel bileşenleri
Proje süresi:
Standart uzunluk (3 ay)

Proje açıklaması

Motivasyon

RoboComp, araştırmalar ve pratik uygulamalar için bilinen robotik çerçevelerden biridir. Robocomp deposunda motor kontrolü, yerelleştirme ve haritalama, navigasyon, tanıma vb. gibi farklı robot uygulamaları için çok çeşitli bileşenler (robocomp-robolab adlı daha küçük bir depoda saklanır) bulunur. Ancak bileşenlerin deposunda, her bileşenin derlenmesi veya kullanılması için ayrıntı dokümantasyonu yoktur. Bu nedenle yeni geliştiriciler için kullanılabilirliği sınırlıdır. Bu teklif, RoboComp'in önemli bileşenlerini belgeleyerek ve belirli bir robotik görevini çözmek için farklı bileşenleri birleştirmeye yönelik örnek bir kullanım belgesi derleyerek bu sorunu çözmeyi amaçlamaktadır. Belgeleme sürecinin ayrıntıları bir sonraki bölümde ele alınacak ve ardından projeyi tamamlamak için zaman çerçevesinin planlanması amacıyla ara hedef bölümü anlatılacaktır. Son olarak, belgeleme süreciyle ilgili bazı notlara değindik.

Açıklama

Bahsettiğimiz gibi, bu projenin iki ana hedefi vardır:

  • RoboComp'teki her bileşenle ilgili belge ayrıntıları açıklaması, derleme ve yükleme, yapılandırma, kullanımlar ve bilinen sorunlar
  • Belirli bir robotik görevini, yani yerelleştirmeyi çözmek için RoboComp ortamında farklı bileşenleri kullanan örnek bir kılavuz yazın.

robocomp-robolab deposundaki temel bileşenlerin çoğu, şu anda derleme ve farklı parametre yapılandırmalarında nasıl kullanılacağı konusunda ayrıntılı talimatlar sunmamaktadır. Bu durum, projelerinde bileşen kullanmak veya çerçeveye katkıda bulunmak isteyen yeni geliştiricilerin önünde büyük bir engel oluşturur. Bunun nedeni birçok bileşenin, birçok bağımlılığı olan harici sürücü veya kitaplıkların sarmalayıcısı olmasıdır. Bu da görevin derlenmesini ve yüklenmesini zorlaştırır. Buna ek olarak birçok bileşen, parametreleri ayarlamak için cihaza özel bilgi gerektiren RoboComp'te mesaj arayüzü sağlamak amacıyla karmaşık cihaz sürücüsünü (ör.genel hokuyoComp) sarmalar.

Bu nedenle, cihaz açıklamalarını, bağımlılıkları ve kullanımları kapsayan ayrıntılı dokümanlara duyulan ihtiyaç, açık kaynaklı katkı için olmazsa olmazdır. İş hokuyoComp bileşen dokümanımın bir örneğini bağlantıda bulabilirsiniz:

https://github.com/anindex/robocomp-robolab/tree/master/components/hokuyoComp

Yukarıdan aşağıya yaklaşımı kullanarak somut ve ayrıntılı bir bileşen dokümantasyonu yazmak için kişi en azından bu dokümanda yazılan içeriği deneyimleyebilmelidir, çünkü belgelemenin nihai amacı, çalışma bilgisini devralınan geliştiricilere aktarmaktır. Her bileşen dokümanı için önerilen yapı aşağıdaki gibi sunulur:

  • Açıklama
  • Derleme ve Montaj
  • Yapılandırma parametreleri
  • Bileşeni başlatma (kullanımlar)
  • Bilinen sorunlar

Örnekte, ilk olarak Hokuyo sensör spesifikasyonu hakkında bilgiler toplanıyor ve bileşen açıklamaları yazmak üzere bileşen işlevlerinin resmi anlamak için bileşen kodu okunuyor. Ardından, RoboComp ortamını anlamak, cihaza özgü parametreler ve kitaplık bağımlılıkları hakkında bilgi sahibi olmak, bileşenin derleme, kurulum ve yapılandırma sürecinin belgelenmesine yardımcı olur. Örneğin, hokuyoComp'ın derlenmesi için Ubuntu 14.04'ten eski liburg0-dev deb paketi gerekir ancak sonraki sürümde deb paketi Ubuntu PPA'dan kaldırılır. Bu nedenle, derleme için belgede belirtildiği gibi geçici çözümü uygulamamız gerekir. Bu süreçte, yeni geliştiriciler için hata ayıklamayı hızlandırmak amacıyla bilinen sorunları da kaydedebiliriz. Son olarak, farklı kullanım senaryolarına yönelik bileşen kullanımları, bileşenin farklı robotik görevleri için RoboComp ortamına kolayca entegre edilmesi amacıyla belgelendirildi.

Aşamalar

Bu bölümde projenin belirtilen hedeflerinin tamamlanması için ilk zaman dilimi planlanır. Kategorilere göre (ör.kamera bileşenleri, lazer bileşenleri) yazılacak bileşen dokümanlarını seçeceğiz. Bileşenler belgesini tamamlama süresi için mevcut tahmin, örnek hokuyoComp dokümanlarını tamamlama süresine bağlıdır. Zaman tablosu aşağıdaki gibidir:

  • 1 Ağustos-1 Eylül: Topluluk bağları:

    1. Haftalık toplantılar yaparak proje kapsamlarını tespit edebilir, hem yazar hem de mentorlardan beklentileri belirleyebilirsiniz.
    2. RoboComp çerçevesiyle ilgili ayrıntılı bilgi edinme.
  • 2 Eylül - 2 Kasım: robocomp-robolab deposundaki her bileşen için dokümanlar yazılırken, toplantılar aracılığıyla mentorlar ve yazarlar arasında tekrarlı iyileştirmeler yapıldı (belgelenmemiş belgelerin çoğunun tamamlanması bekleniyor)

  • 2 Kasım - 26 Kasım: Robot bilimiyle ilgili bir görevi çözmek için farklı bileşenleri kullanmaya örnek olarak genel belge yazma.

  • 27 Kasım-29 Kasım: Proje raporlarının sonu.

  • GSoD 2019'dan sonra: Çalışmalarımı daha da iyileştirmek ve sürdürmek için RoboComp ile bağlantıda kalmak istiyorum.

Son notlar

Kullanıcıların RoboComp işlevlerinin büyük resmini anlamaları için, RoboComp ortamına farklı bileşenlerin nasıl entegre edileceğine dair genel bir örnek yazmak çok önemlidir. Bu örnek belge, RoboComp'in mevcut uygulamasına bağlı olarak hangi robotik görevinin uygun olduğuna karar vermek için danışmanlarla daha ayrıntılı bir şekilde tartışılacaktır.