You are on page 1of 3

THE CONSTRUCT

1. Mapping & Create a map from zero


Saver map.yaml khi đó ta có các thông số như sau và ý nghĩa
image: map01.pgm
resolution: 0.050000
origin: [-51.224998, -51.224998, 0.000000]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
- Image: tên của map
- Resolution: độ phân giải
- Origin: tọa độ phía dưới bên trái pixel trong bản đồ. Tọa độ này là được
cho trong 2D(x,y). Giá trị thứ 3 cho biết vòng quay. Nếu không có xoay,
giá trị là 0.
Kiểm tra:
- Rostopic echo /map_metadata
Khi tạo Map, quan tâm:
- Static map: bản đồ chính, không thể thay đổi
- 2D map: là bản đồ có thể hiện các chướng ngại vật.
Để xây dựng Map, cần 2 yêu cầu:
- Laser data
- Odometry data
1.1. Transforms
Để slam_gmapping node làm việc được, ta cần cung cấp:
- The frame attached to laserbase_link
- Base_link  odom : thường được cung cấp bởi Odometry system.
Quan tâm đến 4 vấn đề cần phải làm:
- Base_frame (default: “base_link”):
- Map_frame (default: “map”)
- Odom_frame (default: “odom”)
- Map_update_interval (default: 5.0)
<launch>

<master auto="start"/>

<param name ="use_sim_time" value="false"/>

<!--- Start laser scan -->

<node pkg="rplidar_ros" type="rplidarNode" name="rplidarNode" output="screen">

<param name="serial_port" type="string" value="/dev/ttyUSB0"/>

</node>

<!--- Start arduino serial interface -->

<node pkg="rosserial_arduino" type="serial_node.py" name="rosserial" respawn="true" args="_port:=/dev/ttyACM0"/>

<!--- Setup tramformation -->

<node pkg="tf" type="static_transform_publisher" name="base_2_laser" args="0.08 0 0.09 3.14 0 0 base_link laser_frame 100"
/>

<!--- Run odometry setup node -->

<node pkg="odometry_setup" type="odom" name="odometryNode" output="screen"/>

<!--- Run the map server -->

<node pkg="map_server" type="map_server" name="map_server" args="/home/ubuntu/map/map01.yaml"/>

<!--- Run AMCL -->

<include file="$(find amcl)/examples/amcl_diff.launch"/>


<!--- Run move base -->

<node pkg="move_base" type="move_base" name="move_base" respawn="true" output="screen">

<rosparam file="src/costmap_common_params.yaml" command="load" ns="global_costmap" />

<rosparam file="src/costmap_common_params.yaml" command="load" ns="local_costmap" />

<rosparam file="src/local_costmap_params.yaml" command="load" />

<rosparam file="src/global_costmap_params.yaml" command="load" />

<rosparam file="src/move_base_params.yaml" command="load" />

<rosparam file="src/teb_local_planner_params.yaml" command="load" />

</node>

</launch>

You might also like