How to give the correct name of general parameters and parameters of frames such as the laser


I couldn’t reply there and ask this because that post was closed. I would like to know how we knew that the general parameter map_update_interval is in the slam_gmapping package . We probably need to know that in order to pass the correct name! In that case it makes sense because that parameter has clearly a lot to do with the node that is going to create the map (slam_gmapping node) and give as an output the occupancy grid map. But in other cases how would I determine the correct name?
In the next excercice 2.12 I couldn’t know it , I couldn’t pass the correct name for the maxUrange parameter of the laser. That has to be one of packages of the laser. But which one?
I would love to have clue how to determine every parameter name: (general case)
Thank you !

Hi @mouidsakka01 ,

This is clearly mentioned in the course notes. It gives a link to the weblink that lists all the parameters.
Here: http://wiki.ros.org/gmapping

The answer for all these questions: again same as above. Clearly referenced in the course notes with the web link.

I just don’t understand how you seem to miss those. I would like to know how you learn.
Do you just execute the provided commands and purposefully not read the study material?
I seriously want to know how you study here!

Look ! It is right there in the notes!

Regards,
Girish

Hi @mouidsakka01 ,

There are actually four different ways (that I know of) to set the parameters:

  1. Using the param line directly in the launch file outside the node:

    <include file="$(find ros_package_name)/path/to/launch_file.launch"/>
    <param name="/topic/paramter_name" type="data_type" value="value">
    

    This is only in the case where the launch file is loaded as an “include” in the current launch file where you want to change/set the parameter.

  2. Using the param line within the node line in the launch file:

    <node pkg="package_name" type="file_to_run" name="node_name">
        <param name="parameter_name" type="data_type" value="value">
    </node>
    

    This is when you have the node launched in the same launch file as the one you want to set the parameter in.

  3. Using a yaml file:

    <node pkg="package_name" type="file_name" name="node_name">
        <rosparam file="$(find ros_package_name)/path/to/yaml_config.yaml" command="load"/>
    </node>
    

    yaml_config.yaml file contents:

    topic:
        parameter_name: value
        parameter_name: value
        parameter_name: value
    

    This is, again, in the launch file that you are launching the node.

  4. Using dynamic reconfigure method:

    rosrun rqt_reconfigure rqt_reconfigure
    

    You can use this method only when the nodes are started and running, that is, during run-time, and not before starting the nodes. This is a “post-launch” method.The above 3 methods are “pre-launch” methods.

Hope this helps you understand better!

Regards,
Girish

1 Like