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

talos's profile - activity

2022-05-18 03:24:34 -0500 received badge  Nice Question (source)
2021-10-01 11:18:05 -0500 received badge  Student (source)
2019-01-31 12:14:16 -0500 received badge  Famous Question (source)
2019-01-28 04:09:30 -0500 received badge  Famous Question (source)
2018-11-18 17:20:08 -0500 marked best answer [ROS2] how to keep messages from leaving the machine

I'm enjoying ROS2 so far, but one major issue is that the UDP broadcasting slams the network when sending things like images/pointclouds. Most of the time I'm running on one machine and don't want packets to even leave that machine. Is there a way other than manually configuring tables to tell a node or set a flag that keeps packets on the machine?

2018-11-12 12:12:11 -0500 received badge  Notable Question (source)
2018-11-05 12:39:04 -0500 commented question [ROS2] how to keep messages from leaving the machine

The default EProsima DDS. Maybe I'm incorrect in thinking it was multicast? I only was concerned because our IT guy se

2018-11-05 12:37:53 -0500 received badge  Notable Question (source)
2018-11-05 09:41:05 -0500 received badge  Popular Question (source)
2018-11-04 21:08:56 -0500 asked a question [ROS2] how to keep messages from leaving the machine

[ROS2] how to keep messages from leaving the machine I'm enjoying ROS2 so far, but one major issue is that the UDP broad

2018-11-04 21:05:45 -0500 commented answer [ROS2] What's the best way to wait for a new message?

We've temporarily set it up to spin in an executor with multiple threads and manual flags. Not an elegant solution, but

2018-11-04 21:04:51 -0500 marked best answer [ROS2] What's the best way to wait for a new message?

I'm trying to sync up some behaviors and some data while avoiding callback hell. What's a good way to effectively wait for a new data on a subscription in a synchronous manner?

Here's the high level of what I'd like to do:

start_process_callback() {
    trigger_led();
    wait_seconds();
    leftimage = get_left_image();
    trigger_different_led();
    rightimage = get_right_image();
    result = do_things_to_images(leftimage, rightimage);
    send_result(result);
}

Where the LED functions are publishers and the get_image functions block until a new image is received on a topic then return that image. I hope this helps clarify things. ROS1 had a wait_for_message, but ROS2 doesn't seem to have anything like that. The only other alternative I can think of is to have a convoluted state machine in a bunch of nested callbacks, but I'd really rather not do that if possible.

Thoughts?

2018-11-04 21:04:51 -0500 received badge  Scholar (source)
2018-11-04 21:04:48 -0500 received badge  Supporter (source)
2018-11-04 20:23:56 -0500 received badge  Popular Question (source)
2018-11-01 11:57:01 -0500 commented answer [ROS2] What's the best way to wait for a new message?

Thanks for the link! I notice that this says how to wait without an executor, are there any examples about how to wait

2018-10-31 18:51:12 -0500 asked a question [ROS2] What's the best way to wait for a new message?

[ROS2] What's the best way to wait for a new message? I'm trying to sync up some behaviors and some data while avoiding

2017-06-23 13:15:49 -0500 received badge  Enthusiast