[ros-users] private roslaunch parameters

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/html)
Delete this message
Reply to this message
Author: Mike Purvis
Date:  
To: ros-users
Subject: [ros-users] private roslaunch parameters
Hi everyone,

My current launch file structure is like so:

<launch>
  <env name="PYTHONPATH" value="$(env PYTHONPATH)" />
  <group ns="clearpath/robots/$(optenv ID default)" clear_params="true">
    <param name="port" value="$(optenv CPR_SERIAL_PORT /dev/ttyUSB0)" />
    <param name="turn_radius" value="0.4" />


    ...


    <node pkg="clearpath_horizon" type="horizon.py" name="$(anon horizon)"
output="screen" />
    <node pkg="clearpath_2dnav" type="simple.py" name="$(anon nav)"
output="screen" />
    ....
  </group>
</launch>


And then inside of horizon.py, I am able to access the parameter
with rospy.get_param('port'). However, that parameter is really not relevant
to any node except horizon.py. From my reading of the documentation, I
should be able to make it private by putting the <param> tag inside the
relevant node tag, and then calling it with rospy.get_param('~port').
However, this doesn't seem to work---I consistently just get the default
parameter.

What am I doing wrong?

Thanks.