【ROS一个节点多次启动且能正常运行,怎么办?】

需求

特定场景下,需要一个节点多次启动且能正常运行,怎么办?

解决

设置启动项 ros::init options::AnonymousName

当创建ROS节点时,会在用户自定义的节点名称后缀随机数,从而避免重名问题。
分别在终端中启动相同的节点,先启动的那个会被关闭,继续执行后启动的哪个。
在这里插入图片描述
解决办法在代码里面加上设置启动项ros::init_options::AnonymousName
即可。

ros::init(argc ,argv , "erGouZi" );
ros::init(argc ,argv , "erGouZi" , ros::init_options::AnonymousName);

然后就可以同时启动相同的多个节点。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_47869094/article/details/130200971