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

error loading <rosparam> file does not exist

asked 2021-09-28 15:01:32 -0500

Kareem Magdy gravatar image

I am facing a problem with loading a yaml file to robot_localization node. I am pretty sure of the path and the name of the file as there are multiple other parameters file and they all loaded just fine. I don't have a clue where this error comes from if anyone can help please do not hesitate. This the error when I launch:

RLException: error loading <rosparam> tag: 
file does not exist [/home/moo/catkin_ws/src/mobile_robot_autonomous_navigation/param/ekff.yaml)]
XML is <rosparam command="load" file="$(find mobile_robot_autonomous_navigation)/param/ekff.yaml)"/>
The traceback for the exception was written to the log file

launch file:

<?xml version="1.0"?>
<launch>

  <arg name="map_file" default="$(find mobile_robot_autonomous_navigation)/maps/alexa_map.yaml"/>
  <arg name="model" default="$(find kandb)/urdf/new_urdf.urdf.xacro"/>

  <rosparam file="$(find mobile_robot_autonomous_navigation)/param/controllers.yaml" command="load"/>
  <rosparam file="$(find mobile_robot_autonomous_navigation)/param/joint_limits.yaml" command="load"/>

  <param name="robot_description" command="$(find xacro)/xacro $(arg model)" />

  <node name="robot_hardware_interface" pkg="mobile_robot_autonomous_navigation" type="mobile_robot_hardware_interface" output="screen">
    <remap from="/mobile_robot/mobile_base_controller/cmd_vel" to="/cmd_vel"/>
   </node>

  <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" >
  </node>

  <node pkg="tf" type="static_transform_publisher" name="map_to_base_footprint" 
  args="0.0 0.0 0.0 0.0 0.0 0.0 /base_footprint /base_link 10" />

  <node name="rviz" pkg="rviz" type="rviz" args="-d $(find mobile_robot_autonomous_navigation)/param/nav_config.rviz"/>

  <node name="controller_spawner" pkg="controller_manager" type="spawner" respawn="false" output="screen"
        args="
            /mobile_robot/joints_update
            /mobile_robot/mobile_base_controller" >
  </node>

  <node name="imu_node" pkg="mpu_6050_driver" type="imu_node.py" >
  </node>

  <node name="imu_filter_node_for_orientation" pkg="imu_complementary_filter" type="complementary_filter_node" >
  </node>

  <node pkg="robot_localization" type="ekf_localization_node" name="ekf_se">
    <rosparam command="load" file="$(find mobile_robot_autonomous_navigation)/param/ekff.yaml)"/>
    <remap from="odometry/filtered" to="odom"/>
  </node>

  <node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file)" >
  </node>

  <include file="$(find ydlidar_ros)/launch/X4.launch" />
  <include file="$(find mobile_robot_autonomous_navigation)/launch/amcl.launch" />
  <include file="$(find mobile_robot_autonomous_navigation)/launch/move_base.launch" /> 
 <!--<include file="$(find rf2o_laser_odometry)/launch/rf2o_laser_odometry.launch" /> -->

</launch>
edit retag flag offensive close merge delete

Comments

Are you sure ekff.yaml is located where you think it is? In a terminal, could you navigate to where the file is, run pwd and compare it to the path listed in your error? The syntax for your node and rosparam look correct, but there may be some minor name differences causing the error. For instance, I have my yaml files located in a config/ folder vs your param/.

chives_onion gravatar image chives_onion  ( 2021-09-28 15:33:06 -0500 )edit

I already navigated to the file path through the terminal and it is already the same path. The param file was named config but i deleted it and created a new file and i named it differently. This approach worked out with someone who had the same error but it did not workout for me.

Kareem Magdy gravatar image Kareem Magdy  ( 2021-09-28 16:25:42 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
2

answered 2021-09-28 17:11:00 -0500

Mike Scheutzow gravatar image

updated 2021-09-28 17:12:58 -0500

You have an extra close parenthesis ) on that line in the launch file.

edit flag offensive delete link more

Comments

You're right, the ) is superfluous. If change ekff.yaml) to ekff.yaml, it may work.

<rosparam command="load" file="$(find mobile_robot_autonomous_navigation)/param/ekff.yaml)"/>
miura gravatar image miura  ( 2021-09-28 18:41:47 -0500 )edit

Thank you it worked

Kareem Magdy gravatar image Kareem Magdy  ( 2021-09-29 09:44:44 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2021-09-28 15:01:32 -0500

Seen: 1,944 times

Last updated: Sep 28 '21