ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

Looking for steps to establish Publisher connection in ROS

asked 2014-03-30 20:22:00 -0600

unknown_entity1 gravatar image

updated 2014-03-31 05:10:28 -0600

My ROS client is having issues connecting Publishers to topics. Subscribers work flawlessly, and then Publishers get setUp, start listening on a Socket. The only ROS topic that is attempting to subscribe to a topic is /rosout, which calls requestTopic on rosout, receives the connection information, and then never attempts to connect to the Publishers. Can anybody assist me in trying to figure out why ROS is not attempting to connect to the Topic Publishers?

Thanks for your assistance!

Aaron image description Response to comment: Yes, I am implementing my own TCPROS/UDPROS client in Java. The client is running locally. This is on turtlesim, all subscribers subscribe to /turtle1/color_sensor, /rosout, /rosout_agg, /turtle1/pose. Then the Publishers are initialized, and on the same topics call registerPublisher on each topic. ROS automatically calls requestTopic at startup on /rosout even without calling registerPublisher on /rosout (why?, this required writing specialized startup code due to how the initialization is started...), lastly, after the /rosout is responded to the subscriber requestTopic the subscriber is not connecting to the Publisher via TCPROS. I've attached a screenshot of rqt_graph, to add further confusion to the question...

edit retag flag offensive close merge delete

Comments

Are you implementing your own tcpros interface? If yes, what exactly are you doing. If no, what code/node setup do you use in ROS that doesn't work. Are you running locally or over the network?

dornhege gravatar image dornhege  ( 2014-03-30 23:26:03 -0600 )edit

@dornhege - I've replied to your comment below the original question, and included a screenshot of rqt_graph for further information.

unknown_entity1 gravatar image unknown_entity1  ( 2014-03-31 05:11:23 -0600 )edit

I'm don't know the ros internals to make something out of that. Are you aware that there is a rosjava implementation?

dornhege gravatar image dornhege  ( 2014-03-31 05:19:01 -0600 )edit

I am aware there is a ROSJava implementation. Unfortunately, it does not meet the requirements of the system my group is building;)

unknown_entity1 gravatar image unknown_entity1  ( 2014-03-31 10:29:39 -0600 )edit

You might consider installing Rosbridge and contacting it from java using websockets. All you need to do is to include websockets in your java project. An example of rosbridge can be found on this website (here implemented on javascript): http://rosbridge.org/doku.php?id=rosbridge_v2.0_example_commands

Mehdi. gravatar image Mehdi.  ( 2014-03-31 19:46:36 -0600 )edit

Thanks Mehdi, I appreciate your suggestion, and, rosbridge does not meet the requirements of the system my group is building. Our client will be highly efficient, very flexible, and work out of the box in autonomous robots, built by other robots, without the need for people in the middle.

unknown_entity1 gravatar image unknown_entity1  ( 2014-04-01 05:17:05 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2014-04-01 05:13:37 -0600

unknown_entity1 gravatar image

updated 2014-04-01 05:18:03 -0600

Last night I ran rqt_console in an attempt to obtain logging information to see what was happening. A funny thing happened;) /rosout_agg Publisher instantly connected. This confirms that my client's Publishers are now working, and the issue I was encountering was with the /turtlesim behavior. I fully expect that when I configure my client to Publish to /cmd_vel that it will start working. Thanks for you input, and glad this one resolved itself.

Sincerely,

Aaron

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2014-03-30 20:22:00 -0600

Seen: 630 times

Last updated: Apr 01 '14