Robot İşletim Sistemi

ROS Bu görüntünün açıklaması, aşağıda da yorumlanmıştır RVIZ ile 3D simülasyon Bilgi
Yaratıcı Keenan Wyrobek ( d )
Tarafından geliştirildi Willow Garage - OSRF - Açık Robotik
İlk versiyon 2 Mart 2010
Son sürüm Noetic Ninjemys (23 Mayıs 2020)
Depozito github.com/ros
Yazılmış C ++ ve Python
İşletim sistemi Linux
Çevre Linux , Mac OS X
Tür Çerçeve
İşletim Sistemi
Lisans BSD lisansı
İnternet sitesi ROS.org

Robot İşletim Sistemi ( ROS) , robotik için yazılım geliştirilmesine izin veren, özgür yazılım (sistem BSD lisansı altındadır ) açık kaynak biçiminde bir dizi bilgisayar aracıdır . Başlangıçta, 2007 yılında Amerikan şirketi Willow Garage tarafından PR2 (Personal Robot 2) robotu için geliştirildi. Geliştirilmesi şu anda Open Robotics (eski adıyla Open Source Robotics Foundation veya OSRF) tarafından yürütülmektedir. ROS, resmi olarak 75'ten fazla robot tarafından desteklenmektedir.

Açıklama

Robot İşletim Sistemi  ( ROS ), robotlar için bir yazılım geliştirme platformudur. Bir veya daha fazla bilgisayarda çalışabilen ve birkaç özellik sağlayan bir meta işletim sistemidir: donanım soyutlaması, düşük seviyeli cihaz kontrolü, yaygın olarak kullanılan özelliklerin uygulanması, işlemler arasında mesajlaşma ve kurulu paketlerin yönetimi . 

ROS yazılımı üç gruba ayrılabilir: 

  1.  ROS tabanlı yazılım oluşturmak, başlatmak ve dağıtmak için kullanılan araçlar (roscore, roslaunch, catkin)
  2.  Diller için ROS istemcileri: roscpp ( C ++ ) ve rospy ( python )
  3. paketler , bir veya daha fazla müşteri kullanarak ROS ROS için programlar içeren

Ana ROS araçları ve istemcileri (roscpp ve rospy), BSD Lisansı koşulları altında piyasaya sürülmüştür . Çeşitli açık kaynak lisansları ( BSD , MIT ) ile ROS için birçok paket piyasaya sürülmüştür . Bu paketler, ROS ile robotlar arasında arayüz oluşturmak için uygulamaları, algoritmaları ve hatta programları başlatmak için kullanılır. Gazebo simülasyon aracı doğrudan ROS'a entegre edilmiştir.

Ana ROS istemcileri (C ++ ve Python) Unix benzeri sistemlerle uyumludur . Bu, temel olarak diğer açık kaynaklı yazılımlara bağımlılıklarından kaynaklanmaktadır. İçindeTemmuz 2014, bu istemci kitaplıkları ve ROS Indigo sürümü için  Ubuntu , varsayılan olarak resmi olarak desteklenen tek sistemdir. Aşağıdaki sistemler için deneysel sürümler vardır: OS X , Android , Arch Linux , Debian Wheezy ve OpenEmbedded / Yocto .

Sürüm için (ROS jargonunda dağıtım denir) Melodic Morenia, AMD64 , ARM32 ve ARM64 işlemci mimarileri desteklenir (sürümMayıs 2018 -de Mayıs 2023)


Resmi olmayan ROS istemcileri var. Bunların arasında özellikle şunlardan bahsedebiliriz:

Özellikleri

ROS, robotik için esnek ve modüler uygulamaların geliştirilmesini kolaylaştıran çeşitli özellikleri bir araya getirir.

İletişim mimarisi

ROS, esnek bir süreçler arası ve makineler arası iletişim mimarisi sunar. ROS sürecine düğüm adı verilir ve her bir düğüm , konular aracılığıyla başkalarıyla iletişim kurabilir . Düğümler arasındaki bağlantı bir yönetici tarafından yönetilir ve aşağıdaki süreci izler: 

  1. İlk düğüm , yöneticiye paylaşılacak verilere sahip olduğunu  bildirir
  2. İkinci bir düğüm , yöneticiye bir veriye erişmek istediğini  bildirir
  3. İki düğüm arasında bir bağlantı oluşturulur 
  4. İlk düğüm , ikinciye veri gönderebilir 

Bir düğüm verilerini yayınlamak denir yayıncı bir düğüm veri abone bir denir abone . Bir düğüm , bir ikisi de olabilir , yayıncı bir abone . Konulara gönderilen mesajların çoğu standartlaştırılmış, bu da sistemi son derece esnek hale getiriyor. 

ROS, makineler arası iletişime izin verir, düğümler ayrı makinelerde çalışır, ancak aynı master hakkında bilgi sahibi olmak , kullanıcı için şeffaf bir şekilde iletişim kurabilir. 

Tarih

ROS ilk olarak 2007 yılında  Stanford Yapay Zeka Laboratuvarı tarafından Stanford AI Robot STAIR (STanford AI Robot) projesinin bir parçası olarak şalt sahası adı altında geliştirildi  .

2008'den 2013'e kadar geliştirme, esas olarak bir robotik araştırma enstitüsü / inkübatörü olan Willow Garage tarafından gerçekleştirildi. Bu arada, yirmiden fazla kurumdan araştırmacılar, federe bir geliştirme modelinde Willow Garage'daki mühendislerle işbirliği yaptı.

İçinde Şubat 2013, ROS'un gelişimi Açık Kaynak Robotik Vakfı tarafından sürdürülmektedir. İçindeAğustos 2013, bir blog yazısı, Willow Garage'ın kurucusu Uygun Teknolojiler tarafından oluşturulan başka bir şirket tarafından kullanılacağını duyuruyor. Willow Garage tarafından oluşturulan PR2 robotu için destek daha sonra Clearpath Robotics tarafından devralındı.

Sürüm geçmişi

ROS sürümleri birbiriyle uyumsuz olabilir ve genellikle sürüm numaraları yerine kod adlarıyla anılır. Ana sürümler şu ana kadar:

ROS 1
Dağıtım Yayın tarihi Resim Kullanım ömrü sonu tarihi
ROS 1.0 22 Ocak 2010
Kutu Kaplumbağa 2 Mart 2010 ROS Box logo.png
C Kaplumbağa 3 Ağu 2010 ROS C logo.jpg
Diamondback 2 Mart 2011 ROS Diamondback logo.jpg
Elektrik Emys 30 Ağustos 2011 ROS Electric logo.png
Fuerte Kaplumbağa 23 Nisan 2012 ROS Fuerte logo.jpg
Harika Galapagos 31 Aralık 2012 ROS Groovy logo.jpg 31 Temmuz 2014
Hydro Medusa 4 Eylül 2013 ROS Hydro logo.png 31 Mayıs 2014
Indigo Igloo 22 Temmuz 2014 Indigoigloo 600.png 30 Nisan 2019
Yeşim kaplumbağa 23 Mayıs 2015 ROS yeşim logo.png 30 Mayıs 2017
Kinetik Kame 23 Mayıs 2016 Kinetic.png 30 Mayıs 2021
Ay loggerhead 23 Mayıs 2017 ROS Lunar Loggerhead.png 30 Mayıs 2019
Melodik Morenia 23 Mayıs 2018 Melodic Morenia.png 30 Mayıs 2023
Noetic Ninjemys
(ROS 1'in en son sürümü)
23 Mayıs 2020 Noetic.png 30 Mayıs 2025

Uygulama alanları

Paketler ROS çeşitli uygulama alanlarında uygulanabilir:

Resmi olarak uyumlu robotlar

ROS artık resmi olarak 75'ten fazla robot tarafından destekleniyor. ROS'un büyük esnekliği, çok farklı robotlarda (mobil robot, endüstriyel kol, çoklu tarayıcı) ve çeşitli ortamlarda (kara, hava, deniz ve su altı) çalışmasına izin verir. Aşağıda, ROS uyumlu robotların kapsamlı olmayan bir listesi bulunmaktadır:

Robot Oluşturucu
Nao Aldebaran
Biber Aldebaran
PR2 Söğüt-Garaj
Husky Clearpath Robotik
Yalıçapkını Clearpath Robotik
Kaplumbağa Söğüt Garajı
Kaplumbağa Robotu 2 Yujin Robotik
Kaplumbağa Robotu 3 Robotlar
Gölge El Gölge robot
Robonaut 2 NASA
Erle-helikopter Erle Robotik
Baxter Robotikleri Yeniden Düşün
Otomatik olarak Georgia Tech
Stan (robot vale) Stanley robotik

Notlar ve referanslar

  1. "  http://wiki.ros.org/noetic  "
  2. Topluluk Metrikleri Raporu 2015 - http://download.ros.org/downloads/metrics/metrics-report-2015-07.pdf
  3. "  roscore - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  4. "  roslaunch - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  5. "  catkin - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  6. "  roscpp - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  7. "  - Rospy ROS Wiki  " de wiki.ros.org (erişilen Ocak 28, 2016 )
  8. "  indigo / Installation - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  9. https://www.ros.org/reps/rep-0003.html#melodic-morenia-may-2018-may-2023
  10. "  rosjava - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  11. "  roslibjs - ROS Wiki  " , wiki.ros.org adresinde ( 28 Ocak 2016'da erişildi )
  12. "  rosbag - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  13. "  gazebo_ros_pkgs - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  14. "  STAIR  " , merdiven.stanford.edu (erişim tarihi 14 Ocak 2016 )
  15. http://www.aaai.org/Papers/Workshops/2007/WS-07-15/WS07-15-008.pdf
  16. www.ros.org adresinde "  ROS Wiki  " ( 14 Ocak 2016'da erişildi )
  17. Morgan Quigley, Brian Gerkey, Ken Conley, Josh Faust, Tully Foote, Jeremy Leibs, Eric Berger, Rob Wheeler, Andrew Ng. http://www.robotics.stanford.edu/~ang/papers/icraoss09-ROS.pdf
  18. “  Açık Kaynak Robotik Vakfı | Willow Garage  ” , www.willowgarage.com (erişim tarihi 14 Ocak 2016 )
  19. "  Willow Garage çalışanları Uygun Teknolojilere katıldı | Willow Garage  ” , www.willowgarage.com (erişim tarihi 14 Ocak 2016 )
  20. (En-US) "  Clearpath, PR2'yi Aileye Hoş Geliyor - Clearpath Robotics  " , Clearpath Robotics'te (erişim tarihi 14 Ocak 2016 )
  21. "  navigation - ROS Wiki  " , wiki.ros.org'da ( 31 Ocak 2016'da erişildi )
  22. "  amcl - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  23. "  moveit - ROS Wiki  " , wiki.ros.org'da ( 31 Ocak 2016'da erişildi )
  24. "  hector_slam - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  25. "  gmapping - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  26. "  robot_localization - ROS Wiki  " , wiki.ros.org adresinde ( 31 Ocak 2016'da erişildi )
  27. "  nao - ROS Wiki  " , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  28. "  pepper - ROS Wiki  " , wiki.ros.org'da ( 30 Ocak 2016'da erişildi )
  29. "  Robots / PR2 - ROS Wiki  " , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  30. "  Robotlar / Husky - ROS Wiki,  " en wiki.ros.org (erişilen 30 Ocak 2016 )
  31. "  Robotlar / Kingfisher - ROS Wiki,  " en wiki.ros.org (erişilen 30 Ocak 2016 )
  32. “  Robots / TurtleBot - ROS Wiki  ” , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  33. "  Robots / Shadow_Hand - ROS Wiki  " , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  34. "  Robots / Robonaut2 - ROS Wiki  " , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  35. "  Robots / Erle-copter - ROS Wiki  " , wiki.ros.org adresinde ( 30 Ocak 2016'da erişildi )
  36. "  Rethink ROS - ROS robotik haberleri  " , www.ros.org'da ( 30 Ocak 2016'da erişildi )
  37. "  Robots / Autorally - ROS Wiki  " , wiki.ros.org adresinde ( 4 Aralık 2018'de erişildi )
  38. stanley-robotics.welcomekit.co adresinde “  Senior Robotics Engineer  ” ( 19 Ocak 2019'da erişildi )

Ayrıca görün

İlgili Makaleler

Dış bağlantılar