ROS雖然非常優秀,但他也還是有一些小…或許並不小,的問題存在。
最大的問題是,Master(我們前面所說的Core)維持整個系統的通訊運轉,當Master出問題,底下所有節點瞬間失效,這和某一節點死去不影響全局的基本概念其實互相違背--同時這也是星狀拓樸的通病
實時性不佳,不適合需要時間精度的工作。
因此,開始有人進行ROS2計畫。
而經過了許多過程,ROS2至今也終於算穩定下來了。他主要有幾項改動和ROS產生差別:
在ROS2中,去除了Master概念,改為網狀拓樸,也就是終於不會因為core當機而拖垮整個ROS系統了。
從原本的TCP/IP改為DDS,加強訊息傳輸的實時性。並因為DDS,多了一些新的通訊性質。
支援更多系統,原本ROS除了linux以外的系統都必須自己想辦法,門檻很高,ROS2直接支援多系統運行。
在以上更動之後,ROS2相較於ROS有更多更好的性質,也保持了ROS原本優良的分布式節點設計。
ROS2現在可以在Windows、Linux和mac上直接安裝,也可在Raspbian上編譯安裝。