<?xml version = "1.0"?>
<launch>
  <!-- Argument -->
  <arg name="scan_topic"     default="scan_filtered"/>

<!--******* Initial pose mean, used to initialize filter with Gaussian distribution ********** -->
<!-- For cps world  -->
 <arg name="initial_pose_x" default="0.0"/>
  <arg name="initial_pose_y" default="0.0"/>
  <arg name="initial_pose_a" default="0.0"/> 

  <!-- ********** AMCL algorithm *********** -->
  <node pkg="amcl" type="amcl" name="amcl">
    <param name="min_particles"             value="500"/> 
    <param name="max_particles"             value="3000"/> 
    <param name="kld_err"                   value="0.02"/> 
    <param name="update_min_d"              value="0.20"/> 
    <param name="update_min_a"              value="0.20"/> 
    <param name="resample_interval"         value="1"/>   
    <param name="transform_tolerance"       value="0.5"/> 
    <param name="recovery_alpha_slow"       value="0.00"/> 
    <param name="recovery_alpha_fast"       value="0.00"/>
    <param name="initial_pose_x"            value="$(arg initial_pose_x)"/>
    <param name="initial_pose_y"            value="$(arg initial_pose_y)"/>
    <param name="initial_pose_a"            value="$(arg initial_pose_a)"/>
    <param name="gui_publish_rate"          value="50.0"/>

    <remap from="scan"                      to="$(arg scan_topic)"/>
    <param name="laser_max_range"           value="16.0"/>  
    <param name="laser_max_beams"           value="180"/> 
    <param name="laser_z_hit"               value="0.5"/>  
    <param name="laser_z_short"             value="0.05"/> 
    <param name="laser_z_max"               value="0.05"/> 
    <param name="laser_z_rand"              value="0.5"/> 
    <param name="laser_sigma_hit"           value="0.2"/>  
    <param name="laser_lambda_short"        value="0.1"/>  
    <param name="laser_likelihood_max_dist" value="2.0"/> 
    <param name="laser_model_type"          value="likelihood_field"/>

    <param name="odom_model_type"           value="diff"/>  
    <param name="odom_alpha1"               value="0.1"/>  
    <param name="odom_alpha2"               value="0.1"/>  
    <param name="odom_alpha3"               value="0.1"/>  
    <param name="odom_alpha4"               value="0.1"/>  
    <param name="odom_frame_id"             value="odom"/> 
    <param name="base_frame_id"             value="base_link"/> 
   <!--    
    <param name="global_frame_id" value="map"/>
    <param name="tf_broadcast" value="true" />  -->

    <!-- scan topic -->
    <!-- <remap from="scan" to="scan_filtered"/> -->
    <!-- remap cmd_vel -->
    <remap from="cmd_vel" to="nav_vel"/>
    <!-- remap odom -->
    <remap from="odom" to="/robot_pose_ekf/odom_combined"/>

  </node>
</launch>