Plan manager node start crashes because can't open map.ymal
I'm trying to modify a simulation based main launch file to work with the real turtlebot3 (Sim to real). I'm trying to compare it with the ROBOTIS turtlebot3_navigation.launch, because theirs works (turtlebot emanual).
Now, this is the (so far updated) launch file I'm working with and it's from this repository:
<launch>
<param name="use_sim_time" value="true"/>
<arg name="train_mode" default="false"/>
<param name="train_mode" value="$(arg train_mode)" />
<arg name="local_planner" default="teb"/>
<arg name="rviz_file" default="nav_LP"/>
<arg name="disable_scenario" default="true"/>
<arg name="scenario_file" default="empty_map.json"/>
<arg name="reset" default="true"/>
<arg name="model" default="$(env TURTLEBOT3_MODEL)" doc="model type [burger, waffle, waffle_pi]"/>
<!-- To make the training more efficient make sure this step_size*laser_update_rate == 1 -->
<arg name="step_size" default="0.01"/>
<arg name="update_rate" default="250"/>
<arg name="show_viz" default="true"/>
<arg name="viz_pub_rate" default="30" />
<arg name="use_rviz" default="true"/>
<param name="update_rate" value="$(arg update_rate)" />
<param name="step_size" value="$(arg step_size)" />
<param name="show_viz" value="$(arg show_viz)"/>
<param name="viz_pub_rate" value="$(arg viz_pub_rate)"/>
<param name="use_rviz" value="$(arg use_rviz)"/>
<param name="single_env" value="true"/>
<!-- the folder name under the path simulator_setup/maps -->
<arg name="map_file" default="Wohnzimmer1"/>
<!-- <arg name="map_folder_name" default="map_empty" /> -->
<arg name="map_path" default="$user/vis2020/Wohnzimmer1/map.yaml" />
<param name="world_path" value="$user/vis2020/Wohnzimmer1/map.world.yaml" />
<!-- the velocity of randomly genelized obstacles -->
<arg name="obs_vel" default="0.3" />
<param name="obs_vel" value="$(arg obs_vel)" />
<!-- PARAMS DON'T CHANGE THEM -->
<param name="robot_action_rate" value="10"/>
<param name="laser_update_rate" value="10"/>
<!-- DRL action frequency -->
<arg name="action_frequency" default="10"/>
<param name="action_frequency" value="$(arg action_frequency)"/>
<!-- Map parameters -->
<arg name="global_frame_id" value="map"/>
<arg name="odom_frame_id" value="odom"/>
<arg name="base_frame_id" value="base_footprint"/>
<arg name="odom_ground_truth" default="/odometry/ground_truth"/>
<!-- Turtlebot3 -->
<include file="$(find turtlebot3_bringup)/launch/turtlebot3_remote.launch">
<arg name="model" value="$(arg model)" />
</include>
<!-- map server-->
<node name="map_server" pkg="map_server" type="map_server" args="$(arg map_path)">
<param name="frame_id" value="$(arg global_frame_id)"/>
</node>
<!-- use amcl localization-->
<include file="$(find arena_bringup)/launch/sublaunch_testing/amcl.launch">
<remap from="scan" to="/scan"/>
<param name="odom_frame_id" value="odom"/>
</include>
<!-- rviz -->
<group if="$(arg use_rviz)">
<node pkg="rviz" type="rviz" name="rviz" required="true"
args="-d $(find arena_bringup)/rviz/$(arg rviz_file)"/>
</group>
<!-- start task_generator node -->
<arg name="timeout" default="3.0"/>
<include file="$(find arena_bringup)/launch/sublaunch_testing/task_generator.launch" unless="$(eval arg('disable_scenario') or arg('train_mode'))">
<arg name="scenarios_json_path" value="$(find simulator_setup)/scenarios/$(arg scenario_file)"/>
<arg name="auto_reset" value="$(arg reset)"/>
<arg name="timeout" value="$(arg timeout)"/>
</include>
<include file="$(find arena_bringup)/launch/sublaunch_testing/sensor_sim.launch" unless="$(eval arg('disable_scenario') or arg('train_mode'))">
</include>
<!-- move_base plan manager: which provide basic global planner and cost map -->
<include file="$(find arena_bringup)/launch/sublaunch_testing/move_base/move_base_$(arg local_planner).launch">
</include>
<!-- start time space plan fsm-->
<include file="$(find arena_bringup)/launch/sublaunch_testing/timed_space_planner_fsm.launch">
</include>
<!-- makes sure that drl actions will be published according to sim time in eval mode-->
<group if="$(eval arg('train_mode') == false)">
<node name="action_publisher" pkg="arena_local_planner_drl" type="action_publisher.py"/>
</group>
</launch>
And this is the error I'm getting:
NODES
/
amcl (amcl/amcl)
map_server (map_server/map_server)
move_base (move_base/move_base)
robot_state_publisher (robot_state_publisher/robot_state_publisher)
rviz (rviz/rviz)
time_space (arena_timespace_planner/time_space_planner_node)
ROS_MASTER_URI=http://localhost:11311
process[robot_state_publisher-1]: started with pid [13476]
process[map_server-2]: started with pid [13477]
process[amcl-3]: started with pid [13481]
process[rviz-4]: started with pid [13492]
process[move_base-5]: started with pid [13501]
process[time_space-6]: started with pid [13513]
Plan manager node start
[ERROR] [1622654163.194926072]: Map_server could not open $user/vis2020/Wohnzimmer1/map.yaml.
[map_server-2] process has died [pid 13477, exit code 255, cmd /opt/ros/melodic/lib/map_server/map_server $user/vis2020/Wohnzimmer1/map.yaml __name:=map_server __log:=/home/vis2020/.ros/log/a30e4466-c3c5-11eb-bb1e-48b02d2b81aa/map_server-2.log].
log file: /home/vis2020/.ros/log/a30e4466-c3c5-11eb-bb1e-48b02d2b81aa/map_server-2*.log
[ INFO] [1622654163.428699169]: waitForService: Service [/static_map] has not been advertised, waiting...
[ WARN] [1622654163.667419627]: Request for map failed; trying again...
I'm rather new in the ROS domain, so perhaps I'm just missing something, but any help is appreciated :).
Asked by sudo-Boris on 2021-06-02 14:20:45 UTC
Comments