写ros程序的时候话题订阅上了,但是callback不触发的问题
是没有在线程的while循环中加入
ros::spinOnce();切记
如图:
触发机制就是每执行一次ros::spinOnce();
如果有话题的话就会触发一次callback
订阅话题和发布话题的时候,
订阅和发布要弄成全局的,
如下所示
如果弄成
ros::Subscriber enabled_sub = node_handle_.subscribe<std_msgs::Bool>("/is_robot_enabled", 1,
这种函数内部的局部变量就订阅不上了,
订阅者的生命周期随着函数的退出就销毁了。切记