ROBOT OPERATING SYSTEM
Pengertian ROS
ROS adalah Sistem Operasi Robot
bersifat open source yang didalamnya terdapat library dan tools untuk membuat
perangkat lunak robot. ROS merupakan sebuah middleware robot yang dapat
menghubungkan perangkat keras robot dengan sistem operasi komputer secara
fleksibel.
ROS bertujuan untuk memudahkan
pengembang robot dalam membuat perangkat lunaknya tanpa harus membuat kode
sumber dari awal serta dapat dikembangkan bersama-sama
Sejarah ROS
Menurut beberapa sumber, ROS
merupakan sebuah project besar yang dikembangkan oleh banyak komunitas dan
peneliti robot. Sejak pertengahan tahun 2000, Universitas Stanford telah
melibatkan STanford AI Robot (STAIR) dan Personal Robot (PR) untuk menciptakan sebuah
prototype perangkat lunak fleksibel dan dinamis yang dapat digunakan pada
sistem robotika.
Menurut pengembangnya, mereka telah
mendesain ROS untuk mensupport filosofi modular dan tools berbasis pengembangan
software.
ROS mulai dikembangkan sejak November
2007 oleh Stanford Artificial Intelligence Laboratory (SAIL) yang disupport
oleh Stanford AI Robot Project. Pada tahun 2008, Willow Garage yang merupakan
sebuah Institute penelitian robot telah bekerjasama dengan lebih dari 20
Institusi untuk saling berkolaborasi dan mengembangkan ROS dalam model
pengembangan federasi. ROS bersifat open-source yang berlisensi BSD dan ditulis
menggunakan bahasa pemrograman C++ dan Python. Platform ini secara bertahap
banyak digunakan dan dikembangkan oleh komunitas dan peneliti robot.
Perkembangan ROS
Hingga saat ini ROS terus
dikembangkan oleh banyak peneliti serta banyak digunakan untuk pengembangan
proyek otomasi, baik itu untuk keperluan industri, penelitian dan pendidikan. ROS
dijadwalkan rilis setiap bulan Mei dengan support sistem antara dua hingga lima
tahun.
Berdasarkan informasi tabel 1 dapat
di lihat bahwa ROS terus berkembang dan di aplikasikan sejak tahun 2010. Hingga
saat ini ROS terus dikembangkan menjadi ROS2 oleh beberapa peneliti yang saling
berkontribusi. Tujuan pengembangan ROS2 adalah untuk mengembangkan sistem yang
sudah ada pada ROS. Salah satu perbedaan antara ROS dan ROS2 adalah terletak pada
sistem komunikasinya, dimana ROS menggunakan TCP/UDP untuk saling berkomunikasi
sedangkan ROS2 menggunakan Data Distributed System (DDS), selain itu ROS2 sudah
mensupport untuk sistem komunikasi multi-robot.
Konsep ROS
ROS memiliki 3 konsep yaitu level
filesystem, level grafik komputasi dan level komunitas. Level filesystem
merupakan level sumber daya ROS yang ada pada sistem. Langkah awal saat menggunakan
atau mengembangkan ROS adalah dengan membuat konsep layaknya sebuah system operasi.
Pada sebuah filesystem ROS terdapat folder, dan setiap folder mempunyai
deskripsi file yang berbeda-beda sesuai dengan fungsinya masing-masing. Level
filesystem ROS meliputi packages, metapackages, packages manifests, metapackage
manifests, message dan service.
Level grafik komputasi adalah
jaringan peer-to-peer pada proses ROS yang memproses data bersama-sama. ROS
akan saling terkoneksi ketika semua proses saling terhubung. Setiap node dalam
sistem akan saling terhubung, melihat informasi dan berinteraksi dengan node
lainnya. Secara mendasar grafik komputasi ROS terdiri atas level nodes, master,
parameter server, message, topics, services, dan bags. Konsep level komunitas
ROS adalah komunitas dapat membagi resource ROS secara terpisah untuk dapat
saling bertukar pengetahuan dan perangkat lunak. Resource tersebut meliputi
distribusi ROS, repository, ROS wiki, bug ticket system, mailing list, ROS
answer dan blog.
Sumber :
https://www.ros.org/wiki/Robots
Tidak ada komentar:
Posting Komentar