Не могу подписаться на тему в rqt_plugin

У меня есть GUI в качестве плагина rqt, и я хочу подписаться на тему, но я не вижу свой узел rqt_plugin на rqt_graph. Тема, на которую я хочу подписаться, находится на той же машине, на которой я хочу запустить свой rqt_plugin. У меня есть несколько машин, и я запускаю rqt_graph на другой машине. На другой машине я вижу все другие темы и вижу также тему, на которую я хочу подписаться с помощью моего rqt_plugin.

Вот создание издателя на машине А:

 pubCmd = n.advertise<std_msgs::String>("/sci/cmd", 10);

Вот подписка на тему / sci / cmd на моем rqt_plugin также на машине A:

ros::Subscriber sub = getNodeHandle().subscribe("/sci/cmd", 10, &ccgui::receiveSC, this);

Если сейчас я что-то опубликовал, мой плагин rqt ничего не получает. Я знаю, что издатель работает правильно, потому что я подписался на тему с нормальным узлом, и я получаю сообщения.

Я надеюсь, что кто-то может помочь мне:)

1 ответ

Решение

Хорошо, у меня проблема.

Я создал локального подписчика, который всегда удалялся, если программа оставляла метод. Так просто, но так фатально.

Теперь я создаю переменную объекта, и она работает.

Другие вопросы по тегам