ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The way I do it:
from launch import LaunchDescription
from launch.substitutions import EnvironmentVariable
import os
import launch_ros.actions
import pathlib
parameters_file_name = 'default.yaml'
def generate_launch_description():
parameters_file_path = str(pathlib.Path(__file__).parents[1]) # get current path and go one level up
parameters_file_path += '/config/' + parameters_file_name
print(parameters_file_path)
return LaunchDescription([
launch_ros.actions.Node(
package='example_pkg',
node_executable='example_node',
output='screen',
parameters=[
parameters_file_path
],
),
])
config file in the /config folder:
example_node:
ros__parameters:
some_int: 41
log_severity: 1 #0-debug, 1-info, 2-Warn, 3-Error, 4-Fatal
a_string: "Hello world"
some_lists:
some_integers: [1, 2, 3, 4]
some_doubles : [3.14, 2.718]
in the cpp file:
ExampleNode::get_parameter_or("log_severity", severity_level , 0);