Preparar um sdcard com o rospibot6

webid#sdcard0703

Download da imagem em:

https://downloads.ubiquityrobotics.com/pi.html

Gravar num sdcard

Fazer o login (password: ubuntu), ssh ubuntu@10.42.0.1

Trocar a password

locale-gen pt_PT.UTF-8

locale-gen en_US.UTF-8

sudo apt update (optional: sudo apt upgrade)

sudo systemctl disable magni-base (o serviço roscore continua a funcionar)

trocar o hostname, https://www.cyberciti.biz/faq/ubuntu-change-hostname-command/

pifi add sid password

reboot

Bibliotecas Instaladas

INSTALL I2Cdevlib:

sudo mkdir -p /usr/share/arduino/libraries cd /usr/share/arduino/libraries
sudo git clone https://github.com/chrisspen/i2cdevlib.git

 

INSTALL Bcm2835:

cd /tmp
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.50.tar.gz 
tar zxvf bcm2835-1.50.tar.gz 
cd bcm2835-1.50 
./configure 
make 
sudo make check 
sudo make install

 

Pacotes ros instalados

sudo apt-get install ros-kinetic-xv-11-laser-driver

sudo apt-get install ros-kinetic-gmapping

sudo apt-get install ros-kinetic-amcl

sudo apt-get install ros-kinetic-dwa-local-planner

sudo apt install ros-kinetic-robot-pose-ekf

 

Instalar o pacote do rospibot6

catkin_make (compilar)

 

sudo bash -c “source /opt/ros/kinetic/setup.bash; source /home/ubuntu/catkin_ws/devel/setup.bash; roslaunch rospibot6 robot6.launch”

rostopic pub –once cmd std_msgs/Int16 “data: 3”

roslaunch rospibot6 teleop.launch

 

ros robot rover m1p1 – explorar a configuração antiga – entrada #m1p1t001

 

Comando de carregamento do software de controlo:

sudo bash -c “source /opt/ros/kinetic/setup.bash; source /home/ubuntu/catkin_ws/devel/setup.bash; roslaunch rospibot6 robot6.launch”

rospibot6 robot6.launch

Do log na consola destacam-se as seguintes mensagens:

Loading from pre-hydro parameter style

Laser is mounted upwards.

 

[ INFO] [1614954351.703713600]: Loading from pre-hydro parameter style
[ INFO] [1614954352.083740469]: Using plugin “static_layer”
[ INFO] [1614954352.229455264]: Requesting the map…
[ INFO] [1614985753.616958789]: send mcu cmd
[ INFO] [1614985755.049768675]: Laser is mounted upwards.
-maxUrange 4.99 -maxUrange 4.99 -sigma 0.05 -kernelSize 1 -lstep 0.05 -lobsGain 3 -astep 0.05
-srr 0.01 -srt 0.02 -str 0.01 -stt 0.02
-linearUpdate 0 -angularUpdate 0 -resampleThreshold 0.5
-xmin -20 -xmax 20 -ymin -20 -ymax 20 -delta 0.05 -particles 30
[ INFO] [1614985755.072079669]: Initialization complete
update frame 0
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 0
Registering First Scan
[ INFO] [1614985755.273691631]: Resizing costmap to 800 X 800 at 0.050000 m/pix
update frame 1
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 1
[ INFO] [1614985755.365691798]: Received a 800 X 800 map at 0.050000 m/pix
[ INFO] [1614985755.412055813]: Using plugin “obstacle_layer”
[ INFO] [1614985755.445002460]: Subscribed to Topics: scan
[ INFO] [1614985755.889149682]: Using plugin “inflation_layer”
[ INFO] [1614985756.562596619]: Loading from pre-hydro parameter style
[ INFO] [1614985757.029805666]: Using plugin “obstacle_layer”
[ INFO] [1614985757.060416381]: Subscribed to Topics: scan
Average Scan Matching Score=359.372
neff= 30
Registering Scans:Done
update frame 2
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 2
[ INFO] [1614985757.478907825]: Using plugin “inflation_layer”
[ INFO] [1614985758.071038374]: Created local_planner dwa_local_planner/DWAPlannerROS
[ INFO] [1614985758.111201517]: Sim period is set to 0.20
Average Scan Matching Score=359.367
neff= 30
Registering Scans:Done
update frame 3
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 3
Scan Matching Failed, using odometry. Likelihood=2.2233e-322
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Scan Matching Failed, using odometry. Likelihood=-1653.33
lp:0 0 -3.14159
op:0 0 -3.14159
Average Scan Matching Score=0
neff= 30
Registering Scans:Done
update frame 4
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 4
[ INFO] [1614985759.561529386]: Recovery behavior will clear layer obstacles
[ INFO] [1614985759.642187963]: Recovery behavior will clear layer obstacles
[ INFO] [1614985760.161254711]: odom received!
Average Scan Matching Score=248.398

 

Registering Scans:Done
update frame 336
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 336
[ INFO] [1614986217.014895384]: Got new plan
[ERROR] [1614986217.017267358]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986217.017687045]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986217.017925117]: Rotation cmd in collision
[ INFO] [1614986217.018889750]: Error when rotating.
[ INFO] [1614986217.214809329]: Got new plan
[ERROR] [1614986217.216441513]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986217.216707658]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986217.216893856]: Rotation cmd in collision
[ INFO] [1614986217.217095626]: Error when rotating.
[ INFO] [1614986217.415345356]: Got new plan
[ERROR] [1614986217.419742273]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986217.420922427]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986217.421750811]: Rotation cmd in collision
[ INFO] [1614986217.422566330]: Error when rotating.
[ INFO] [1614986217.614805187]: Got new plan
[ERROR] [1614986217.618715595]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986217.619072678]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986217.619268146]: Rotation cmd in collision
[ INFO] [1614986217.619450438]: Error when rotating.
Average Scan Matching Score=250.341
neff= 30
Registering Scans:Done
update frame 337
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 337
[ INFO] [1614986217.814768819]: Got new plan
[ERROR] [1614986217.815757776]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986217.816106265]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986217.816304702]: Rotation cmd in collision
[ INFO] [1614986217.816479441]: Error when rotating.
[ INFO] [1614986218.014802087]: Got new plan
[ERROR] [1614986218.015737866]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986218.016088855]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986218.016293438]: Rotation cmd in collision
[ INFO] [1614986218.016460052]: Error when rotating.
[ INFO] [1614986218.214981917]: Got new plan
[ERROR] [1614986218.216534466]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986218.216803996]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986218.216994465]: Rotation cmd in collision
[ INFO] [1614986218.217177798]: Error when rotating.
[ INFO] [1614986218.414858987]: Got new plan
[ERROR] [1614986218.416642316]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986218.416961274]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986218.417168305]: Rotation cmd in collision
[ INFO] [1614986218.417360752]: Error when rotating.
[ INFO] [1614986218.614830588]: Got new plan
[ERROR] [1614986218.616526001]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986218.616868761]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986218.617084125]: Rotation cmd in collision
[ INFO] [1614986218.617276468]: Error when rotating.
[ INFO] [1614986218.814832554]: Got new plan
[ERROR] [1614986218.816473227]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986218.816788018]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986218.816984372]: Rotation cmd in collision
[ INFO] [1614986218.817176142]: Error when rotating.
Average Scan Matching Score=251.385
neff= 30
Registering Scans:Done
[ INFO] [1614986219.014821967]: Got new plan
[ERROR] [1614986219.016056027]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986219.016495349]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986219.016715192]: Rotation cmd in collision
[ INFO] [1614986219.016911390]: Error when rotating.
[ INFO] [1614986219.214814297]: Got new plan
[ERROR] [1614986219.215764556]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986219.216048253]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986219.216215909]: Rotation cmd in collision
[ INFO] [1614986219.216369763]: Error when rotating.
[ INFO] [1614986219.414845586]: Got new plan
[ERROR] [1614986219.417001675]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986219.417336205]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986219.417555111]: Rotation cmd in collision
[ INFO] [1614986219.417732298]: Error when rotating.
[ INFO] [1614986219.617684004]: Got new plan
[ERROR] [1614986219.618530825]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986219.618792491]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986219.619027074]: Rotation cmd in collision
[ INFO] [1614986219.619233896]: Error when rotating.
[ INFO] [1614986219.814775038]: Got new plan
[ERROR] [1614986219.815719255]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986219.816048577]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986219.816252483]: Rotation cmd in collision
[ INFO] [1614986219.816419253]: Error when rotating.
[ WARN] [1614986220.014955649]: Clearing costmap to unstuck robot (3.000000m).
update frame 338
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 338
[ INFO] [1614986220.414804997]: Got new plan
[ERROR] [1614986220.415814005]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986220.416157703]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986220.416378327]: Rotation cmd in collision
[ INFO] [1614986220.416570566]: Error when rotating.
[ WARN] [1614986220.614916754]: Rotate recovery behavior started.
Average Scan Matching Score=248.312
neff= 30
Registering Scans:Done
update frame 339
update ld=0 ad=0
Laser Pose= 0 0 -3.14159
m_count 339
Average Scan Matching Score=245.378
neff= 30
Registering Scans:Done
update frame 340
update ld=6.04643e-06 ad=0.14672
Laser Pose= 1.13254e-07 -6.04537e-06 -2.99487
m_count 340
Average Scan Matching Score=252.347
neff= 30
Registering Scans:Done
update frame 341
update ld=0.000324289 ad=0.789049
Laser Pose= 0.000284651 0.000149524 -2.20582
m_count 341
Average Scan Matching Score=252.413
neff= 29.9054
Registering Scans:Done
update frame 342
update ld=0.00107552 ad=1.48459
Laser Pose= 0.000725708 -0.000831402 -0.72123
m_count 342
Average Scan Matching Score=243.093
neff= 29.9077
Registering Scans:Done
update frame 343
update ld=0.000697519 ad=1.24494
Laser Pose= 0.00140152 -0.00100407 0.523707
m_count 343
Average Scan Matching Score=246.577
neff= 29.9097
Registering Scans:Done
update frame 344
update ld=0.00032221 ad=0.737525
Laser Pose= 0.00161183 -0.000759963 1.26123
m_count 344
Average Scan Matching Score=254.526
neff= 29.9097
Registering Scans:Done
update frame 345
update ld=0.000509904 ad=1.12984
Laser Pose= 0.00181084 -0.00122942 2.39107
m_count 345
[ INFO] [1614986242.270013348]: Got new plan
[ INFO] [1614986242.470127084]: Got new plan
[ERROR] [1614986242.471078644]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986242.471501456]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986242.471912445]: Rotation cmd in collision
[ INFO] [1614986242.474185461]: Error when rotating.
[ WARN] [1614986242.670144102]: Clearing costmap to unstuck robot (1.840000m).
[ INFO] [1614986243.070122720]: Got new plan
[ERROR] [1614986243.071122874]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986243.071572978]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986243.072027925]: Rotation cmd in collision
[ INFO] [1614986243.072382143]: Error when rotating.
[ WARN] [1614986243.270217082]: Rotate recovery behavior started.
Average Scan Matching Score=241.443
neff= 29.9089
Registering Scans:Done
update frame 346
update ld=4.96068e-05 ad=0.584426
Laser Pose= 0.00176124 -0.00122878 2.9755
m_count 346
Average Scan Matching Score=258.135
neff= 29.8831
Registering Scans:Done
update frame 347
update ld=0.000353024 ad=1.06917
Laser Pose= 0.00199026 -0.00096012 -2.23851
m_count 347
Average Scan Matching Score=249.924
neff= 29.8827
Registering Scans:Done
update frame 348
update ld=0.000405898 ad=0.731359
Laser Pose= 0.00217308 -0.000597729 -1.50715
m_count 348
Average Scan Matching Score=247.097
neff= 29.8147
Registering Scans:Done
update frame 349
update ld=0.000351784 ad=1.06689
Laser Pose= 0.00196824 -0.000311737 -0.440266
m_count 349
Average Scan Matching Score=244.053
neff= 29.8141
Registering Scans:Done
update frame 350
update ld=0.00025601 ad=0.774083
Laser Pose= 0.00171582 -0.000269016 0.333816
m_count 350
Average Scan Matching Score=253.291
neff= 29.8143
Registering Scans:Done
update frame 351
update ld=0.000186742 ad=1.08347
Laser Pose= 0.00177727 -0.000445359 1.41729
m_count 351
Average Scan Matching Score=255.424
neff= 29.8064
Registering Scans:Done
update frame 352
update ld=0.000254807 ad=0.872823
Laser Pose= 0.00179861 -0.000699271 2.29011
m_count 352
[ INFO] [1614986263.875368486]: Got new plan
[ INFO] [1614986264.075149931]: Got new plan
[ERROR] [1614986264.076186648]: Footprint spec is empty, maybe missing call to setFootprint?
[ WARN] [1614986264.076505553]: Invalid Trajectory 0.000000, 0.000000, 0.400000, cost: -9.000000
[ WARN] [1614986264.076705501]: Rotation cmd in collision
[ INFO] [1614986264.076893886]: Error when rotating.
[ERROR] [1614986264.275270334]: Aborting because a valid control could not be found. Even after executing all recovery behaviors

 

 

 

rospibot6 robot6.launch

rospibot6 robot6.launch

<launch>

<arg name="use_map_topic" default="false"/>
<arg name="scan_topic" default="scan"/>
<arg name="initial_pose_x" default="0.0"/>
<arg name="initial_pose_y" default="0.0"/>
<arg name="initial_pose_a" default="0.0"/>

<rosparam param="base_width">0.1928</rosparam>
<rosparam param="ticks_meter">21140</rosparam>

<node name="diff_tf" pkg="rospibot6" type="diff_tf.py" output="screen">

<rosparam param="ticks_meter">21140</rosparam>
<rosparam param="base_width">0.1928</rosparam>
<rosparam param="base_frame_id">base_link</rosparam>
<rosparam param="odom_frame_id">odom</rosparam>
<rosparam param="rate">50</rosparam>
</node>

<node pkg="tf" type="static_transform_publisher" name="neato_laser_tf" args="0.0 0 0.10 0 0 0 /base_link /neato_laser 50" />

<node name="xv11" pkg="xv_11_laser_driver" type="neato_laser_publisher" respawn="true" output="screen">
<param name="port" value="/dev/ttyAMA0"/>
<!--<param name="firmware_version" value="2"/>-->
</node>

<node name="gmap" pkg="gmapping" type="slam_gmapping" respawn="true" respawn_delay="30" output="screen">
<param name="linearUpdate" type="double" value="0.0" />
<param name="angularUpdate" type="double" value="0.0" />
<param name="map_update_interval" type="double" value="5.0" />
<param name="throttle_scans" type="int" value="1" />

<!-- map size & resolution-->
<param name="xmin" type="double" value="-20.0" />
<param name="ymin" type="double" value="-20.0" />
<param name="xmax" type="double" value="20.0" />
<param name="ymax" type="double" value="20.0" />
<param name="delta" type="double" value="0.05" />

<!-- odometry error -->
<param name="srr" type="double" value="0.01" />
<param name="srt" type="double" value="0.02" />
<param name="str" type="double" value="0.01" />
<param name="stt" type="double" value="0.02" />
</node>

<node name="move_base" pkg="move_base" type="move_base" respawn="false" output="screen">
<rosparam file="$(find rospibot6)/param/costmap_common_params.yaml" command="load" ns="global_costmap" />
<rosparam file="$(find rospibot6)/param/costmap_common_params.yaml" command="load" ns="local_costmap" />
<rosparam file="$(find rospibot6)/param/local_costmap_params.yaml" command="load" />
<rosparam file="$(find rospibot6)/param/global_costmap_params.yaml" command="load" />
<rosparam file="$(find rospibot6)/param/base_local_planner_params.yaml" command="load" />
<rosparam file="$(find rospibot6)/param/dwa_local_planner_params.yaml" command="load" />
<rosparam file="$(find rospibot6)/param/move_base_params.yaml" command="load" />
</node>

<!--
<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
<param name="output_frame" value="odom"/>
<param name="freq" value="30.0"/>
<param name="sensor_timeout" value="1.0"/>
<param name="odom_used" value="true"/>
<param name="imu_used" value="true"/>
<param name="vo_used" value="false"/>
<param name="debug" value="true"/>
<param name="self_diagnose" value="true"/>
</node>
-->

<node pkg="amcl" type="amcl" name="amcl">
<param name="use_map_topic" value="$(arg use_map_topic)"/>
<!-- Publish scans from best pose at a max of 10 Hz -->
<param name="odom_model_type" value="diff"/>
<param name="odom_alpha5" value="0.1"/>
<param name="gui_publish_rate" value="10.0"/>
<param name="laser_max_beams" value="60"/>
<param name="laser_max_range" value="12.0"/>
<param name="min_particles" value="500"/>
<param name="max_particles" value="2000"/>
<param name="kld_err" value="0.05"/>
<param name="kld_z" value="0.99"/>
<param name="odom_alpha1" value="0.2"/>
<param name="odom_alpha2" value="0.2"/>
<!-- translation std dev, m -->
<param name="odom_alpha3" value="0.2"/>
<param name="odom_alpha4" value="0.2"/>
<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_model_type" value="likelihood_field"/>
<!-- <param name="laser_model_type" value="beam"/> -->
<param name="laser_likelihood_max_dist" value="2.0"/>
<param name="update_min_d" value="0.25"/>
<param name="update_min_a" value="0.2"/>
<param name="odom_frame_id" value="odom"/>
<param name="base_frame_id" value="base_footprint"/>
<param name="resample_interval" value="1"/>
<!-- Increase tolerance because the computer can get quite busy -->
<param name="transform_tolerance" value="1.0"/>
<param name="recovery_alpha_slow" value="0.0"/>
<param name="recovery_alpha_fast" value="0.0"/>
<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)"/>
<remap from="scan" to="$(arg scan_topic)"/>
</node>

<node name="base_node" pkg="rospibot6" type="base5" respawn="true" respawn_delay="30" output="screen">
<!--<rosparam file="$(find mypackage)/config/example.yaml" command="load" />-->
<remap from="wheel_left" to="lwheel"/>
<remap from="wheel_right" to="rwheel"/>
<param name="sample_rate" type="int" value="100" />
<param name="pid_enabled" type="bool" value="0" />
<param name="odom_enabled" type="bool" value="0" />
<param name="cmdvel_enabled" type="bool" value="1" />
<param name="cmdvel_k" type="double" value="0.3" />
<!-- BASE -->
<param name="wheel_rad" type="double" value="0.03385" />
<param name="wheel_sep" type="double" value="0.1928" />
<param name="wheel_encoder_pulses" type="double" value="4496.0" />
<!-- PID -->
<param name="pid_out_trh" type="double" value="0.0" />
<param name="pid_out_min" type="double" value="0.0" />
<param name="pid_out_max" type="double" value="64.0" />
<param name="pid_out_k" type="double" value="500.0" />
<param name="pid_sample_time" type="double" value="0.050" />
<param name="pid_setpoint_max" type="double" value="150000.0" />
<param name="pid_left_kp" type="double" value="0.7" />
<param name="pid_left_ki" type="double" value="0.01" />
<param name="pid_left_kd" type="double" value="0.0" />
<param name="pid_right_kp" type="double" value="0.7" />
<param name="pid_right_ki" type="double" value="0.01" />
<param name="pid_right_kd" type="double" value="0.0" />
<!-- IMU -->
<param name="frame_id" type="str" value="base_imu" />
<param name="ax" type="int" value="0" />
<param name="ay" type="int" value="0" />
<param name="az" type="int" value="0" />
<param name="gx" type="int" value="0" />
<param name="gy" type="int" value="0" />
<param name="gz" type="int" value="0" />
<param name="ado" type="bool" value="false" />
<param name="debug" type="bool" value="false" />
</node>

</launch>