Emre güzel açıklamış aslında. Temelde olay içinde birden fazla birim, kontrolör hatta bilgisayar bulunan daha karmaşık yapıdaki robotları tasarlarken kolaylık sağlamak. Aynı bilgisayarın işletim sistemi gibi robotun işletim sistemi de ROS oluyor yani. Kendi içinde bi sürü yapısı ve komutu var. Temelde olay birbirine mesaj yollayan Node ismindeki yapılar üzerinden yürüyor tabi mesajların da çeşitleri var içerdiği bilgiye yada gönderilme şekline göre. Genellikle Master-Slave mantığında çalışan bir haberleşmesi var. Örnek vermek gerekirse,
Elimizde bir bilgisayar olsun mesela iki tane Node da bir motor ve onun encoderı olarak seçildiğini düşünelim. Burda motorun kontrolü için bu birimler arasında bir haberleşme olması gerekiyor. Bilgisayar bu noktada karar mekanizması oluyor. Bu haberleşme için belirli bir paket yada yöntem oluşturuyorsun ve bu iki tane Node birbiriyle bunları kullanarak iletişim kuruyorlar.
İşin asıl önemli ve güzel yanı bütün bu iletişimi tablolar ve grafikler üzerinden takip etme şansın var hatta her saniye yolladıkları mesaja kadar görebiliyorsun. Bu şekilde sistemde bir sıkıntı olduğu zaman nerede olduğunu ve ne olduğunu bulmak çok kolay oluyor.
Daha bir sürü özelliği ve farklı olayı var ama burada tek tek anlatmak hayli uzun sürer. En güzel kaynak Emre'nin söylediği gibi kendi web sayfası. Orada öğrenmek için tutorial okumanın ardından örneklere bakmakta fayda var. ROS open-source bir sistem ve oradaki projelerde insanların bugüne kadar bunu kullanarak yaptığı neredeyse bütün çalışmalar var direk indirilip kullanılabiliyor. Gerçek hayatta tutorialdaki teorinin neye yaradığını görmek için en iyisi o örnekleri indirip çalıştırmak. Özel bi durumda bir şey gerekirse bana da sorabilirsin elimden geldiğince yardımcı olmaya çalışırım