博客摘录于:机器人操作系统(ROS)浅析–[美] Jason M. O’Kane 著–肖军浩 译
启动文件
6.1 使用启动文件
可以启用多个节点。
关于roslaucn工具一个重要但容易忘记的事实是,文件内所有的节点几乎都在同一时刻启动。因此,事实上你无法确定各个节点的启动顺序。不过这并没有什么影响,设计良好的ROS节点是不关心各个节点的启动顺序的。(7.3节会列举一个启动顺序起重要作用的示例)。
该特性也表明,在ROS中,每一个节点都应该和其他节点尽可能保持独立。(回忆一下在2.8节中讨论的节点的松耦合关系)。只有在特定启动顺序下才能运行良好的节点不符合这种模块化思想。因此,这样的节点需要进行重新设计,从而克服启动顺序的约束。
必要节点(requiring node) 复位之外的另一种策略是将一个节点声明为必要节点。required=”true”
当一个必要节点终止的时候,roslaunch会终止所有其他活跃节点并退出。当出现(1)某个节点非常重要,此节点的故障会导致整个ROS会话的瘫痪;(2)节点即便设置了复位属性也不能很好地重启的时候,该需求属性的作用就会体现出来。