How to explore the environment autonomously for a mobile robot in noetic?

asked 2021-12-15 13:20:29 -0500

sincoy gravatar image

updated 2021-12-16 02:55:36 -0500

Hello everybody,

in the beginning I worked for the implementation of my mobile robot with ROS melodic and now I changed to ROS noetic. My problem is that the RRT exploration is not working anymore (link to package). Do you have any suggestions for me?

I already installed certain packages and realized that something is wrong with the assigner.py script in the package. I could not get the green markers in rviz.

This is my launch file to start the autonomous mapping of the environment:

<launch>

  <!-- SLAM Node -->
  <include file="$(find robot_autonomous_slam)/launch/robot_autonomous_slam.launch">
  </include>

  <!-- move_base -->
  <include file="$(find robot_navigation)/launch/move_base.launch">
  </include>

<!-- Autonomous Explorer Node -->
  <include file="$(find robot_autonomous_slam)/launch/RRT.launch">
  </include>

</launch>

the RRT.launch is like the following:

<!-- Launch file for the rrt-detector and the assigner -->

<launch>
<arg name="eta" value="1.0"/>
<arg name="Geta" value="15.0"/>
<param name="namespace_init_count" value="1"/>


  <node pkg="robot_autonomous_slam" type="global_rrt_detector" name="global_detector" output="screen">
  <param name="eta" value="$(arg Geta)"/>
  <param name="map_topic" value="/map"/>
  </node>

  <node pkg="robot_autonomous_slam" type="local_rrt_detector" name="local_detector" output="screen">
  <param name="eta" value="$(arg eta)"/>
  <param name="map_topic" value="/map"/>
  <param name="robot_frame" value="/base_link"/>
  </node>


  <node pkg="robot_autonomous_slam" type="filter.py" name="filter" output="screen">
  <param name="map_topic" value="/map"/>
  <param name="info_radius" value="1"/> 
  <param name="costmap_clearing_threshold" value="70"/> 
  <param name="goals_topic" value="/detected_points"/>
  <param name="namespace" value=""/> 
  <param name="n_robots" value="1"/>
  <param name="rate" value="100"/>
  </node>

  <node pkg="robot_autonomous_slam" type="assigner.py" name="assigner" output="screen">
  <param name="map_topic" value="/map"/>
  <param name="global_frame" value="/map"/>
  <param name="info_radius" value="1"/> 
  <param name="info_multiplier" value="3.0"/> 
  <param name="hysteresis_radius" value="3.0"/> 
  <param name="hysteresis_gain" value="2.0"/> 
  <param name="frontiers_topic" value="/filtered_points"/> 
  <param name="n_robots" value="1"/>
  <param name="namespace" value=""/>
  <param name="delay_after_assignement" value="0.5"/>
  <param name="rate" value="100"/>
  </node>

</launch>

Finally if I am setting the publishing points in rviz the robot is not moving autonomously. I checked my rqt_graph and I determined that the assigner node is not connected to my mobile robot. I don't know why but the assigner node is connected directly to rosout.

Thank you very much! I appreciate your help!

edit retag flag offensive close merge delete

Comments

1

RRT exploration is not working anymore

Could you explain what is not working? Maybe errors you are receiving?

Akhil Kurup gravatar image Akhil Kurup  ( 2021-12-15 13:39:35 -0500 )edit

Thank you for your reply! I am going to edit my contribution for better understanding.

sincoy gravatar image sincoy  ( 2021-12-15 15:07:00 -0500 )edit

The main issue I guess would be ros melodic was working with python(2) while noetic is meant to be working with python3. So there might be several changes to make in the package.

aarsh_t gravatar image aarsh_t  ( 2021-12-16 11:08:23 -0500 )edit