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

Wolf's profile - activity

2023-08-09 04:07:05 -0500 received badge  Great Answer (source)
2023-08-09 04:07:05 -0500 received badge  Guru (source)
2023-07-20 07:24:40 -0500 received badge  Famous Question (source)
2023-07-20 07:24:40 -0500 received badge  Notable Question (source)
2023-06-21 10:59:26 -0500 received badge  Good Answer (source)
2023-01-01 08:16:44 -0500 received badge  Nice Answer (source)
2022-11-22 04:17:05 -0500 received badge  Guru (source)
2022-11-22 04:17:05 -0500 received badge  Great Answer (source)
2022-11-14 04:00:59 -0500 received badge  Popular Question (source)
2022-10-27 12:56:29 -0500 received badge  Good Answer (source)
2022-08-03 03:53:48 -0500 received badge  Great Answer (source)
2022-08-03 03:53:48 -0500 received badge  Guru (source)
2022-03-31 04:54:47 -0500 received badge  Good Question (source)
2022-01-25 01:06:09 -0500 received badge  Nice Question (source)
2022-01-24 11:41:47 -0500 marked best answer share params between nodes ROS2

In ROS1 there you can read params from node namespace (prefixing param name with "~") and global namespace (prefixing param name with "/")

If understand the tutorials

https://index.ros.org/doc/ros2/Tutori...

and

https://index.ros.org/doc/ros2/Tutori...

correctly, for ROS2 every node has its own param server and name space. Params can be adjusted via launch file or command line. However, regardles of the prefix in cpp code, the node will query its own namespace.

Now, what would be the recommended pattern if 2 cpp nodes shall share a common parameter that must be known to both of them? Is there any way to avoid having 2 parameters in different namespaces with the same value?

2022-01-04 04:44:19 -0500 asked a question LookupTwist equivalent in tf2_ros

LookupTwist equivalent in tf2_ros Hi guys, for classic tf lib, there was a lookupTwist method (besides lookupTransform)

2021-08-30 10:16:50 -0500 received badge  Nice Question (source)
2021-08-30 10:16:27 -0500 marked best answer How "expensive" is getNumSubscribers() of Publisher

I am processing data in a pipeline and I would like to publish out some intermediate results to check what is going on. However, some of these intermediate results are not necessary for the main processing chain but only for introspection. I. e. if everything runs smoothly and nobody watches them, there is no point for calculating them at all. So basically I want to calculate them, only if the respective publisher has a subscriber. However, my the data flows through my pipeline at some 20 to 40 Hz and I do not want to incorporate any heavy function calls at that freq. So the question is, whether or not it is ok to poll getNumSubscribers() at that frequency? Is the number cached somewhere in the node or does it query the master for each function call? Can I poll it? Or should I cache it my self and then only poll each 1 or 2 seconds?

2021-07-24 07:48:06 -0500 received badge  Nice Answer (source)
2021-07-23 09:01:04 -0500 received badge  Good Answer (source)
2021-06-25 00:26:44 -0500 received badge  Nice Answer (source)
2021-06-16 06:40:09 -0500 received badge  Great Answer (source)
2021-06-16 06:40:09 -0500 received badge  Guru (source)
2021-05-17 09:04:28 -0500 received badge  Famous Question (source)
2021-04-26 04:01:49 -0500 received badge  Good Answer (source)
2021-03-18 10:18:12 -0500 received badge  Good Question (source)
2021-02-03 11:28:47 -0500 received badge  Nice Answer (source)
2021-01-06 03:26:04 -0500 received badge  Notable Question (source)
2021-01-01 07:20:43 -0500 received badge  Great Answer (source)
2021-01-01 07:20:43 -0500 received badge  Guru (source)
2020-12-31 17:38:30 -0500 received badge  Nice Answer (source)
2020-12-28 00:32:32 -0500 received badge  Popular Question (source)
2020-12-27 07:01:08 -0500 asked a question share params between nodes ROS2

share params between nodes ROS2 In ROS1 there you can read params from node namespace (prefixing param name with "~") an

2020-12-03 00:01:43 -0500 received badge  Nice Question (source)
2020-11-19 00:28:09 -0500 received badge  Nice Answer (source)
2020-11-18 06:45:18 -0500 answered a question launching remote machine

I think you missed the "machine" attribute in the node tag. Your may look like (Note machine="ubuntu" was added): <

2020-11-18 06:45:18 -0500 received badge  Rapid Responder (source)
2020-10-28 04:09:52 -0500 received badge  Great Answer (source)
2020-10-28 04:09:52 -0500 received badge  Guru (source)
2020-10-15 02:52:10 -0500 received badge  Good Answer (source)
2020-09-08 22:16:34 -0500 marked best answer what makes rosbag to start playing fast?

When you start robag play with huge bag files or a lot of bag files for the first call usually is takes some time until rosbag actually starts publishing. For repeative calls then it starts publishing quite fast, until something I don't know (reboot?, unmount bag storage device? timeout?) happens. I guess rosbag caches an index file somewhere to make repeative plays faster. What causes it to discard this index file? Is there a way to store this index file and point rosbag play to it in other for speeding up play e. g. first time after system boot?

2020-07-26 17:25:33 -0500 received badge  Good Answer (source)
2020-07-26 16:16:39 -0500 received badge  Great Answer (source)
2020-07-26 16:16:39 -0500 received badge  Guru (source)
2020-04-10 21:55:13 -0500 received badge  Guru (source)
2020-04-10 21:55:13 -0500 received badge  Great Answer (source)
2020-02-07 14:03:22 -0500 marked best answer weird logs when using tab completion on rosrun

Recently, I get some weird log messages when i try to complete the package name (or exec name) for rosrun using the tab key:

rosrun ro[OPTION]...: command not found
PATTERN: command not found
by: command not found
-i: command not found
The program 'and' is currently not installed. You can install it by typing:
sudo apt-get install and
PATTERN: command not found
PATTERN: command not found
PATTERN: command not found
PATTERN: command not found
No command 'use' found, did you mean:
 Command 'nse' from package 'ns2' (universe)
 Command 'ase' from package 'python-ase' (universe)
 Command 'fuse' from package 'fuse-emulator-sdl' (universe)
 Command 'fuse' from package 'fuse-emulator-gtk' (universe)
 Command 'muse' from package 'muse' (universe)
use: command not found
obtain: command not found
ignore: command not found
No command 'force' found, did you mean:
 Command 'forge' from package 'snap' (universe)
 Command 'zforce' from package 'gzip' (main)
force: command not found
No command 'force' found, did you mean:
 Command 'zforce' from package 'gzip' (main)
 Command 'forge' from package 'snap' (universe)
force: command not found
a: command not found
suppress: command not found
bash: syntax error near unexpected token `newline'

If I enter a fully qualified name rosrun is still working! Also auto completion is still working for roslaunch. Any ideas what could cause this??

Under Ubuntu 14.04.2 ROS indigo....

2020-02-07 14:03:22 -0500 received badge  Self-Learner (source)
2020-02-07 14:02:56 -0500 received badge  Necromancer (source)
2020-02-03 08:40:26 -0500 marked best answer Binary data representation in messages

Is there a documentation on how the information transferred in ros messages is stored in the message's binary data (given that I have the describing msg file) ?

E. g. if I would want to create my own serializer and deserializer for an arbitrary programming language / system, where to find the information on how to do this?