ROS2基于ROS升级而来,如果说ROS为机器人研究和机器人原型开发提供了公用的软件架构并建立了良好的开源⽣态的话,那么ROS2就是在此基础上进一步补齐了⽤于机器人部署环境的开发架构和相应的工具链。 6 H. g$ @* v. H4 \- u C9 K+ F ~/ Z) ^1 C, l( i9 a0 k9 k
这一升级也是因为随着ROS在各类机器人系统,甚至延伸到在各类无人系统中的普及,暴露出了越来越多的弊端。首先它对资源的需求大,并不能保证在资源有限的嵌入式系统中运行,其次它的通信抗干扰性较差。可以说传统机器人ROS实质上是仍旧停留在主控芯片边界的,需要通过串行协议或者ROS中的工具与主控芯片集成在一起。如果操作系统允许在硬件级别附近运行ROS节点,那么所有硬件外设都可用于该应用程序,从而使其能够直接与低级总线系统进行交互,亦与传感器和执行器接口互通。从ROS到ROS2正是基于这些原因进行的升级改版。; B* s. n, C) t$ Q