SLAM - TurtleBot3 - ROBOTIS E-Manual
Có thể bạn quan tâm
- DYNAMIXEL
- Y Series
- YM070-210-M001-RH
- YM070-210-R051-RH
- YM070-210-R099-RH
- YM080-230-M001-RH
- YM080-230-R051-RH
- YM080-230-R099-RH
- P Series
- PH54-200-S500-R (H54P)
- PH54-100-S500-R (H54P)
- PH42-020-S300-R (H42P)
- PM54-060-S250-R (M54P)
- PM54-040-S250-R (M54P)
- PM42-010-S260-R (M42P)
- DYNAMIXEL DRIVE (DYD)
- DYD-11
- DYD-14
- DYD-17
- X Series
- XW Series
- XW540-T140
- XW540-T260
- XW430-T200
- XW430-T333
- XD Series
- XD540-T150
- XD540-T270
- XD430-T210
- XD430-T350
- XH Series
- XH540-W150
- XH540-W270
- XH540-V150
- XH540-V270
- XH430-W210
- XH430-W350
- XH430-V210
- XH430-V350
- XM Series
- XM540-W150
- XM540-W270
- XM430-W210
- XM430-W350
- XC Series
- 2XC430-W250
- XC430-W150
- XC430-W240
- XC430-T150BB
- XC430-T240BB
- XC330-T288
- XC330-T181
- XC330-M181
- XC330-M288
- XL Series
- 2XL430-W250
- XL430-W250
- XL330-M077
- XL330-M288
- XL-320
- MX Series
- MX-106T/R(2.0)
- MX-64T/R/AT/AR(2.0)
- MX-28T/R/AT/AR(2.0)
- MX-106T/R
- MX-64T/R/AT/AR
- MX-28T/R/AT/AR
- MX-12W
- AX Series
- AX-18F/18A
- AX-12/12+/12A
- AX-12W
- DYNAMIXEL Protocol 1.0
- DYNAMIXEL Protocol 2.0
- EX Series
- EX-106+
- DX Series
- DX-113
- DX-116
- DX-117
- RX Series
- RX-10
- RX-24F
- RX-28
- RX-64
- PRO Series
- H54-200-S500-R(A)
- H54-100-S500-R(A)
- H42-20-S300-R(A)
- M54-60-S250-R(A)
- M54-40-S250-R(A)
- M42-10-S260-R(A)
- H54-200-S500-R
- H54-100-S500-R
- H42-20-S300-R
- M54-60-S250-R
- M54-40-S250-R
- M42-10-S260-R
- L54-50-S500-R
- L54-50-S290-R
- L54-30-S500-R
- L54-30-S400-R
- L42-10-S300-R
- Y Series
- DYNAMIXEL SYSTEM
- TurtleBot3
- OpenMANIPULATOR
- OpenMANIPULATOR-P
- OpenMANIPULATOR-X
- Manipulator-H
- Robot Hands
- RH-P12-RN(A)
- RH-P12-RN-UR
- ROBOTIS OP
- ROBOTIS OP
- ROBOTIS OP2
- OBOTIS OP3
- *THORMANG3
- EDUCATIONAL KITS
- PLAY
- PLAY 300
- PLAY 600
- PLAY 700
- ROBOTIS DREAM II
- LEVEL 1
- LEVEL 2
- LEVEL 3
- LEVEL 4
- LEVEL 5
- School Set
- ROBOTIS BIOLOID
- ROBOTIS STEM
- ROBOTIS PREMIUM
- ROBOTIS GP
- Beginner Level
- Comprehensive Level
- ROBOTIS ENGINEER
- Kit 1
- Kit 2
- OLLO
- BUG KIT
- EXPLORER
- INVENTOR
- DREAM
- LEVEL 2
- LEVEL 3
- LEVEL 4
- SET A
- SET B
- *ROBOTIS MINI
- PLAY
- SOFTWARE
- DYNAMIXEL
- DYNAMIXEL SDK
- DYNAMIXEL Workbench
- DYNAMIXEL Wizard 2.0
- R+ 1.0
- R+ Task
- R+ Manager
- R+ Motion
- Dynamixel Wizard
- R+ 2.0
- R+ Task 2.0
- R+ Manager 2.0
- R+ Motion 2.0
- R+ Design 2.0
- R+ Scratch
- R+ Task 3.0
- R+ Mobile
- R+ m.Task 2.0
- R+ m.Motion 2.0
- R+ m.Design
- EMBEDDED SDK
- Embedded C(CM-510/700)
- Embedded C(CM-530)
- ZIGBEE SDK
- Arduino IDE
- ROBOTIS Framework Packages
- ROBOTIS Manipulator library
- *OpenCM IDE
- Mobile Apps
- ROBOTIS MINI
- R+ Block
- DYNAMIXEL
- PARTS
- Controller
- RB-86
- RB-88
- CM-50
- CM-151
- CM-200
- CM-530
- CM-550
- OpenRB-150
- OpenCM9.04
- OpenCM 485 EXP
- OpenCR1.0
- CM-100A
- CM-5
- CM-150
- CM-510
- CM-700
- CM-900
- Communication
- RC-100A/100B
- RC-200
- RC-300
- BT-210
- BT-410
- BT-430 Dongle
- ZIG-100/110A
- BT-100/110A
- ZIG2Serial
- BT-410 Dongle
- Motors
- Geared Motor
- Servo Motor
- High Speed Geared Motor
- Low Speed Geared Motor
- Interface
- DYNAMIXEL Communication Bridge
- LN-101
- U2D2
- U2D2 Power Hub
- DYNAMIXEL Shield
- DYNAMIXEL Shield MKR
- USB2DYNAMIXEL
- Sensors
- IR Sensor
- Distance Sensor
- Touch Sensor
- Gyro Sensor
- IR Array Sensor
- Color Sensor
- Magnetic Sensor
- Temperature Sensor
- Motion Sensor
- Integrated Sensor
- Display
- LED Module
- Controller
- FAQ
- DYNAMIXEL Selection Guide
- DYNAMIXEL Quick Start Guide
- DYNAMIXEL
- DYNAMIXEL SYSTEM
- EDUCATION KITS
- SOFTWARE
- PARTS
- GENERAL
- TurtleBot3
- 1. Overview
- 1. 1. Notices
- 1. 2. Events
- - Online Competition on RDS
- - Offline Competition
- - AutoRace RBIZ Challenge
- 2. Features
- 2. 1. Specifications
- 2. 2. Components
- 3. Quick Start Guide
- 3. 1. PC Setup
- 3. 2. SBC Setup
- 3. 3. OpenCR Setup
- 3. 4. Hardware Assembly
- 3. 5. Bringup
- 3. 6. Basic Operation
- - Teleoperation
- - Topic Monitor
- 4. SLAM
- 4. 1. Run SLAM Node
- 4. 2. Run Teleoperation Node
- 4. 3. Tuning Guide
- 4. 4. Save Map
- 4. 5. Map
- 5. Navigation
- 5. 1. Run Navigation Nodes
- 5. 2. Estimate Initial Pose
- 5. 3. Set Navigation Goal
- 5. 4. Tuning Guide
- 6. Simulation
- 6. 1. Gazebo Simulation
- 6. 2. SLAM Simulation
- 6. 3. Navigation Simulation
- 6. 4. Fake Node Simulation
- 6. 5. Standalone Gazebo Simulation
- 7. Manipulation
- 7. 1. TB3 & OpenMANIPULATOR-X
- 7. 2. Software Setup
- 7. 3. Hardware Assembly
- 7. 4. OpenCR Setup
- 7. 5. Bringup
- 7. 6. Simulation
- 7. 7. Operate the Actual OpenMANIPULATOR
- 7. 8. SLAM
- 7. 9. Navigation
- 7. 10. Home Service Challenge
- - Getting Started
- - Camera Calibration
- - SLAM
- - Missions
- - Simulation
- 8. Autonomous Driving
- 8. 1. Getting Started
- 8. 2. Camera Calibration
- - Camera Imaging Calibration
- - Intrinsic Camera Calibration
- - Extrinsic Camera Calibration
- - Check Calibration Result
- 8. 3. Lane Detection
- 8. 4. Traffic Sign Detection
- 8. 5. Missions
- - Traffic Lights
- - Intersection
- - Construction
- - Parking
- - Level Crossing
- - Tunnel
- 8. 6. TurtleBot3 AutoRace 2019
- 9. Machine Learning
- 9. 1. Software Setup
- 9. 2. Set parameters
- 9. 3. Run Machine Learning
- 10. Examples
- 10. 1. Interactive Markers
- 10. 2. Obstacle Detection
- 10. 3. Position Control
- 10. 4. Point Operation
- 10. 5. Patrol
- 10. 6. TurtleBot Follower Demo
- 10. 7. TurtleBot Panorama Demo
- 10. 8. Automatic Parking
- 10. 9. Automatic Parking Vision
- 10. 10. Load Multiple TurtleBot3s
- 11. Friends(Locomotion)
- 11. 1. TurtleBot3 Friends: Car
- 11. 2. TurtleBot3 Friends: OpenMANIPULATOR
- 11. 3. TurtleBot3 Friends: Segway
- 11. 4. TurtleBot3 Friends: Conveyor
- 11. 5. TurtleBot3 Friends: Monster
- 11. 6. TurtleBot3 Friends: Tank
- 11. 7. TurtleBot3 Friends: Omni
- 11. 8. TurtleBot3 Friends: Mecanum
- 11. 9. TurtleBot3 Friends: Bike
- 11. 10. TurtleBot3 Friends: Road Train
- 11. 11. TurtleBot3 Friends: Real TurtleBot
- 11. 12. TurtleBot3 Friends: Carrier
- 12. Learn
- 12. 1. AWS RoboMaker with TurtleBot3
- 12. 2. Data Collection via Matlab
- 12. 3. TurtleBot3 Blockly
- 12. 4. TurtleBot3 Simulation on ROS Indigo
- 12. 5. Youtube Course
- 12. 6. Books
- 12. 7. Videos
- - Open Source Team
- - ROBOTIS Channel
- - Projects
- 13. More Info
- 13. 1. Appendixes
- - DYNAMIXEL
- - OpenCR1.0
- - LDS-01
- - LDS-02
- - RealSense™
- - Raspberry Pi Camera
- 13. 2. Compatible Devices
- 13. 3. Additional Sensors
- 13. 4. OpenSource and Licenses
- - OpenSource Software
- - OpenSource Hardware
- - Software License
- - Hardware License
- - Documents License
- 13. 5. Contact US
- - About Open Robotics
- - About ROBOTIS
- - About OST (Open Source Team)
- 13. 6. Other ROS Versions
- 13. 1. Appendixes
- 14. FAQ
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
NOTE
- Please run the SLAM on Remote PC.
- Make sure to launch the Bringup from TurtleBot3 before executing any operation.
The SLAM (Simultaneous Localization and Mapping) is a technique to draw a map by estimating current location in an arbitrary space. The SLAM is a well-known feature of TurtleBot from its predecessors. The video here shows you how accurately TurtleBot3 can draw a map with its compact and affordable platform.
Run SLAM Node
- Run roscore from Remote PC. $ roscore
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is turtlebot. $ ssh pi@{IP_ADDRESS_OF_RASPBERRY_PI} $ roslaunch turtlebot3_bringup turtlebot3_robot.launch
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Gmapping is used as a default SLAM method. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_slam turtlebot3_slam.launch
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
Read more about other SLAM methods
- Gmapping (ROS WIKI, Github)
- Install dependent packages on PC. Packages related to Gmapping have already been installed on PC Setup section.
- Launch the Gmapping SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
- Cartographer (ROS WIKI, Github)
- Download and build packages on PC. The Cartographer package developed by Google supports ROS1 Kinetic with 0.2.0 version. So if you need to use Cartogrpher on Kinetic, you should download and build the source code as follows instead of installing with the binary packages. Please refer to official wiki page for more detailed installation instructions. $ sudo apt-get install ninja-build libceres-dev libprotobuf-dev protobuf-compiler libprotoc-dev $ cd ~/catkin_ws/src $ git clone https://github.com/googlecartographer/cartographer.git $ git clone https://github.com/googlecartographer/cartographer_ros.git $ cd ~/catkin_ws $ src/cartographer/scripts/install_proto3.sh $ rm -rf protobuf/ $ rosdep install --from-paths src --ignore-src -r -y --os=ubuntu:xenial $ catkin_make_isolated --install --use-ninja
- Launch the Cartographer SLAM node. $ source ~/catkin_ws/install_isolated/setup.bash $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer
- Hector (ROS WIKI, Github)
- Install dependent packages on PC. $ sudo apt-get install ros-kinetic-hector-mapping
- Launch the Hector SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=hector
- Karto (ROS WIKI, Github)
- Install dependent packages on PC. $ sudo apt-get install ros-kinetic-slam-karto
- Launch the Karto SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=karto
- Frontier Exploration (ROS WIKI, Github) Frontier Exploration uses gmapping, and the following packages should be installed.
- Install dependent packages on PC. $ sudo apt-get install ros-kinetic-frontier-exploration ros-kinetic-navigation-stage
- Launch the Frontier Exploration SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=frontier_exploration
- Run roscore from Remote PC. $ roscore
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is turtlebot. $ ssh pi@{IP_ADDRESS_OF_RASPBERRY_PI} $ roslaunch turtlebot3_bringup turtlebot3_robot.launch
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Gmapping is used as a default SLAM method. $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_slam turtlebot3_slam.launch
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
Read more about other SLAM methods
- Gmapping (ROS WIKI, Github)
- Install dependent packages on PC. Packages related to Gmapping have already been installed on PC Setup section.
- Launch the Gmapping SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
- Cartographer (ROS WIKI, Github)
- Download and build packages on PC. Please refer to official wiki page for more detailed installation instructions. $ sudo apt-get update $ sudo apt-get install -y python-wstool python-rosdep ninja-build stow $ mkdir ~/catkin_ws && cd ~/catkin_ws $ wstool init src $ wstool merge -t src https://raw.githubusercontent.com/cartographer-project/cartographer_ros/master/cartographer_ros.rosinstall $ wstool update -t src $ sudo rosdep init $ rosdep update $ rosdep install --from-paths src --ignore-src --rosdistro=melodic -y $ src/cartographer/scripts/install_abseil.sh $ catkin_make_isolated --install --use-ninja
- Launch the Cartographer SLAM node. $ source ~/catkin_ws/install_isolated/setup.bash $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer
- Hector (ROS WIKI, Github)
- Install dependent packages on PC. $ sudo apt-get install ros-melodic-hector-mapping
- Launch the Hector SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=hector
- Karto (ROS WIKI, Github)
- Install dependent packages on PC. $ sudo apt-get install ros-melodic-slam-karto
- Launch the Karto SLAM node. $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=karto
- Run roscore from Remote PC. [Remote PC] $ roscore
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is turtlebot. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. [Remote PC] $ ssh pi@{IP_ADDRESS_OF_RASPBERRY_PI} $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_bringup turtlebot3_robot.launch
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Gmapping is used as a default SLAM method. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. [Remote PC] $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_slam turtlebot3_slam.launch
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. [Remote PC] $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. [Remote PC] $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
Read more about other SLAM methods
- Gmapping (ROS WIKI, Github)
- Install dependent packages on PC. Packages related to Gmapping have already been installed on PC Setup section.
- Launch the Gmapping SLAM node. [Remote PC] $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
- Cartographer (ROS WIKI, Github)
- Download and build packages on PC. The Cartographer currently does not provide the binary installation method for ROS1 Noetic. Please download and build the source code as follows. Please refer to official wiki page for more details.
[Remote PC]
$ sudo apt update $ sudo apt install -y python3-wstool python3-rosdep ninja-build stow $ cd ~/catkin_ws/src $ wstool init src $ wstool merge -t src https://raw.githubusercontent.com/cartographer-project/cartographer_ros/master/cartographer_ros.rosinstall $ wstool update -t src $ sudo rosdep init $ rosdep update $ rosdep install --from-paths src --ignore-src --rosdistro=noetic -y $ src/cartographer/scripts/install_abseil.sh $ sudo apt remove ros-noetic-abseil-cpp $ catkin_make_isolated --install --use-ninja- Launch the Cartographer SLAM node. [Remote PC] $ source ~/catkin_ws/install_isolated/setup.bash $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer
- Karto (ROS WIKI, Github)
- Install dependent packages on PC. [Remote PC] $ sudo apt install ros-noetic-slam-karto
- Launch the Karto SLAM node. [Remote PC] $ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=karto
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup first. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is ubuntu. $ ssh ubuntu@{IP_ADDRESS_OF_RASPBERRY_PI} $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ ros2 launch turtlebot3_bringup robot.launch.py
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Cartographer is used as a default SLAM method. $ export TURTLEBOT3_MODEL=${TB3_MODEL} $ ros2 launch turtlebot3_cartographer cartographer.launch.py
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup first. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is ubuntu. $ ssh ubuntu@{IP_ADDRESS_OF_RASPBERRY_PI}
Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter.
$ export TURTLEBOT3_MODEL=burger $ ros2 launch turtlebot3_bringup robot.launch.py
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is ubuntu. $ ssh ubuntu@{IP_ADDRESS_OF_RASPBERRY_PI}
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Cartographer is used as a default SLAM method. $ export TURTLEBOT3_MODEL=burger $ ros2 launch turtlebot3_cartographer cartographer.launch.py
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
- If the Bringup is not running on the TurtleBot3 SBC, launch the Bringup first. Skip this step if you have launched bringup previously.
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is ubuntu. $ ssh ubuntu@{IP_ADDRESS_OF_RASPBERRY_PI}
Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. [TurtleBot3 SBC]
$ export TURTLEBOT3_MODEL=burger $ ros2 launch turtlebot3_bringup robot.launch.py
- Open a new terminal from Remote PC with Ctrl + Alt + T and connect to Raspberry Pi with its IP address. The default password is ubuntu. $ ssh ubuntu@{IP_ADDRESS_OF_RASPBERRY_PI}
- Open a new terminal from Remote PC with Ctrl + Alt + T and launch the SLAM node. The Cartographer is used as a default SLAM method. [Remote PC] $ export TURTLEBOT3_MODEL=burger $ ros2 launch turtlebot3_cartographer cartographer.launch.py
How to save the TURTLEBOT3_MODEL parameter?
The $ export TURTLEBOT3_MODEL=${TB3_MODEL} command can be omitted if the TURTLEBOT3_MODEL parameter is predefined in the .bashrc file. The .bashrc file is automatically loaded when a terminal window is created.
- Example of defining TurtlBot3 Burger as a default model. [Remote PC] $ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default model. [Remote PC] $ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
- If the Bringup is not running on the TurtleBot3, launch the Bringup. Skip this step if you have launched bringup previously. > roslaunch turtlebot3_bringup turtlebot3_robot.launch
- Open a new terminal from Remote PC and launch the SLAM node. The Gmapping is used as a default SLAM method. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. > set TURTLEBOT3_MODEL=waffle > roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
Read more about other SLAM methods
- Cartographer (ROS WIKI, Github)
- Install dependent packages on PC using choco. > choco upgrade ros-melodic-cartographer_ros -y
- Launch the Cartographer SLAM node. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. > c:\ws\turtlebot3\devel\setup.bat > set TURTLEBOT3_MODEL=waffle > roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=cartographer
Run Teleoperation Node
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. [Remote PC] $ export TURTLEBOT3_MODEL=burger $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. $ export TURTLEBOT3_MODEL=burger $ ros2 run turtlebot3_teleop teleop_keyboard Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. $ export TURTLEBOT3_MODEL=burger $ ros2 run turtlebot3_teleop teleop_keyboard Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the Remote PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. [Remote PC] $ export TURTLEBOT3_MODEL=burger $ ros2 run turtlebot3_teleop teleop_keyboard Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Once SLAM node is successfully up and running, TurtleBot3 will be exploring unknown area of the map using teleoperation. It is important to avoid vigorous movements such as changing the linear and angular speed too quickly. When building a map using the TurtleBot3, it is a good practice to scan every corner of the map.
- Open a new terminal and run the teleoperation node from the PC. Please use the proper keyword among burger, waffle, waffle_pi for the TURTLEBOT3_MODEL parameter. > set TURTLEBOT3_MODEL=waffle > roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch Control Your TurtleBot3! --------------------------- Moving around: w a s d x w/x : increase/decrease linear velocity a/d : increase/decrease angular velocity space key, s : force stop CTRL-C to quit
- Start exploring and drawing the map.
Tuning Guide
Gmapping has many parameters to change performances for different environments. You can get an information about whole parameters in ROS WiKi or refer to the Chapter 11 of ROS Robot Programming. This tuning guide provides tips when configuring gmapping parameters. If you want to optimize SLAM performances for your environments, this section might be helpful.
Below parameters are defined in turtlebot3_slam/config/gmapping_params.yaml file.
maxUrange
This parameter is set the maximum usable range of the lidar sensor.
map_update_interval
This parameter defines time between updating the map. The smaller the value, the more frequent the map is updated. However, setting this too small will be require more processing power for the map calculation. Set this parameter depending on the map environment.
minimumScore
This parameter sets the minimum score value that determines the success or failure of the sensor’s scan data matching test. This can reduce errors in the expected position of the robot in a large area. If the parameter is set properly, you will see information similar to one shown below.
Average Scan Matching Score=278.965 neff= 100 Registering Scans:Done update frame 6 update ld=2.95935e-05 ad=0.000302522 Laser Pose= -0.0320253 -5.36882e-06 -3.14142If set too high, you might see below warnings.
Scan Matching Failed, using odometry. Likelihood=0 lp:-0.0306155 5.75314e-06 -3.14151 op:-0.0306156 5.90277e-06 -3.14151linearUpdate
When the robot translates longer distance than this value, it will run the scan process.
angularUpdate
When the robot rotates more than this value, it will run the scan process. It is recommended to set this value less than linearUpdate.
Gmapping has many parameters to change performances for different environments. You can get an information about whole parameters in ROS WiKi or refer to the Chapter 11 of ROS Robot Programming. This tuning guide provides tips when configuring gmapping parameters. If you want to optimize SLAM performances for your environments, this section might be helpful.
Below parameters are defined in turtlebot3_slam/config/gmapping_params.yaml file.
maxUrange
This parameter is set the maximum usable range of the lidar sensor.
map_update_interval
This parameter defines time between updating the map. The smaller the value, the more frequent the map is updated. However, setting this too small will be require more processing power for the map calculation. Set this parameter depending on the map environment.
minimumScore
This parameter sets the minimum score value that determines the success or failure of the sensor’s scan data matching test. This can reduce errors in the expected position of the robot in a large area. If the parameter is set properly, you will see information similar to one shown below.
Average Scan Matching Score=278.965 neff= 100 Registering Scans:Done update frame 6 update ld=2.95935e-05 ad=0.000302522 Laser Pose= -0.0320253 -5.36882e-06 -3.14142If set too high, you might see below warnings.
Scan Matching Failed, using odometry. Likelihood=0 lp:-0.0306155 5.75314e-06 -3.14151 op:-0.0306156 5.90277e-06 -3.14151linearUpdate
When the robot translates longer distance than this value, it will run the scan process.
angularUpdate
When the robot rotates more than this value, it will run the scan process. It is recommended to set this value less than linearUpdate.
Gmapping has many parameters to change performances for different environments. You can get an information about whole parameters in ROS WiKi or refer to the Chapter 11 of ROS Robot Programming. This tuning guide provides tips when configuring gmapping parameters. If you want to optimize SLAM performances for your environments, this section might be helpful.
Below parameters are defined in turtlebot3_slam/config/gmapping_params.yaml file.
maxUrange
This parameter is set the maximum usable range of the lidar sensor.
map_update_interval
This parameter defines time between updating the map. The smaller the value, the more frequent the map is updated. However, setting this too small will be require more processing power for the map calculation. Set this parameter depending on the map environment.
minimumScore
This parameter sets the minimum score value that determines the success or failure of the sensor’s scan data matching test. This can reduce errors in the expected position of the robot in a large area. If the parameter is set properly, you will see information similar to one shown below.
Average Scan Matching Score=278.965 neff= 100 Registering Scans:Done update frame 6 update ld=2.95935e-05 ad=0.000302522 Laser Pose= -0.0320253 -5.36882e-06 -3.14142If set too high, you might see below warnings.
Scan Matching Failed, using odometry. Likelihood=0 lp:-0.0306155 5.75314e-06 -3.14151 op:-0.0306156 5.90277e-06 -3.14151linearUpdate
When the robot translates longer distance than this value, it will run the scan process.
angularUpdate
When the robot rotates more than this value, it will run the scan process. It is recommended to set this value less than linearUpdate.
The SLAM in ROS2 uses Cartographer ROS which provides configuration options via Lua file.
Below options are defined in turtlebot3_cartographer/config/turtlebot3_lds_2d.lua file. For more details about each options, please refer to the Cartographer ROS official documentation.
MAP_BUILDER.use_trajectory_builder_2d
This option sets the type of SLAM.
TRAJECTORY_BUILDER_2D.min_range
This option sets the minimum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.max_range
This option sets the maximum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.missing_data_ray_length
In 2D, Cartographer replaces ranges further than max_range with TRAJECTORY_BUILDER_2D.missing_data_ray_length.
TRAJECTORY_BUILDER_2D.use_imu_data
If you use 2D SLAM, range data can be handled in real-time without an additional source of information so you can choose whether you’d like Cartographer to use an IMU or not.
TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching
Local SLAM : The RealTimeCorrelativeScanMatcher can be toggled depending on the reliability of the sensor.
TRAJECTORY_BUILDER_2D.motion_filter.max_angle_radians
Local SLAM : To avoid inserting too many scans per submaps, A scan is dropped if the motion does not exceed a certain angle.
POSE_GRAPH.optimize_every_n_nodes
Global SLAM : Setting POSE_GRAPH.optimize_every_n_nodes to 0 is a handy way to disable global SLAM and concentrate on the behavior of local SLAM.
POSE_GRAPH.constraint_builder.min_score
Global SLAM : Threshold for the scan match score below which a match is not considered. Low scores indicate that the scan and map do not look similar.
POSE_GRAPH.constraint_builder.global_localization_min_score
Global SLAM : Threshold below which global localizations are not trusted.
NOTE: Constraints can be visualized in RViz, it is very handy to tune global SLAM. One can also toggle POSE_GRAPH.constraint_builder.log_matches to get regular reports of the constraints builder formatted as histograms.
The SLAM in ROS2 uses Cartographer ROS which provides configuration options via Lua file.
Below options are defined in turtlebot3_cartographer/config/turtlebot3_lds_2d.lua file. For more details about each options, please refer to the Cartographer ROS official documentation.
MAP_BUILDER.use_trajectory_builder_2d
This option sets the type of SLAM.
TRAJECTORY_BUILDER_2D.min_range
This option sets the minimum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.max_range
This option sets the maximum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.missing_data_ray_length
In 2D, Cartographer replaces ranges further than max_range with TRAJECTORY_BUILDER_2D.missing_data_ray_length.
TRAJECTORY_BUILDER_2D.use_imu_data
If you use 2D SLAM, range data can be handled in real-time without an additional source of information so you can choose whether you’d like Cartographer to use an IMU or not.
TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching
Local SLAM : The RealTimeCorrelativeScanMatcher can be toggled depending on the reliability of the sensor.
TRAJECTORY_BUILDER_2D.motion_filter.max_angle_radians
Local SLAM : To avoid inserting too many scans per submaps, A scan is dropped if the motion does not exceed a certain angle.
POSE_GRAPH.optimize_every_n_nodes
Global SLAM : Setting POSE_GRAPH.optimize_every_n_nodes to 0 is a handy way to disable global SLAM and concentrate on the behavior of local SLAM.
POSE_GRAPH.constraint_builder.min_score
Global SLAM : Threshold for the scan match score below which a match is not considered. Low scores indicate that the scan and map do not look similar.
POSE_GRAPH.constraint_builder.global_localization_min_score
Global SLAM : Threshold below which global localizations are not trusted.
NOTE: Constraints can be visualized in RViz, it is very handy to tune global SLAM. One can also toggle POSE_GRAPH.constraint_builder.log_matches to get regular reports of the constraints builder formatted as histograms.
The SLAM in ROS2 uses Cartographer ROS which provides configuration options via Lua file.
Below options are defined in turtlebot3_cartographer/config/turtlebot3_lds_2d.lua file. For more details about each options, please refer to the Cartographer ROS official documentation.
MAP_BUILDER.use_trajectory_builder_2d
This option sets the type of SLAM.
TRAJECTORY_BUILDER_2D.min_range
This option sets the minimum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.max_range
This option sets the maximum usable range of the lidar sensor.
TRAJECTORY_BUILDER_2D.missing_data_ray_length
In 2D, Cartographer replaces ranges further than max_range with TRAJECTORY_BUILDER_2D.missing_data_ray_length.
TRAJECTORY_BUILDER_2D.use_imu_data
If you use 2D SLAM, range data can be handled in real-time without an additional source of information so you can choose whether you’d like Cartographer to use an IMU or not.
TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching
Local SLAM : The RealTimeCorrelativeScanMatcher can be toggled depending on the reliability of the sensor.
TRAJECTORY_BUILDER_2D.motion_filter.max_angle_radians
Local SLAM : To avoid inserting too many scans per submaps, A scan is dropped if the motion does not exceed a certain angle.
POSE_GRAPH.optimize_every_n_nodes
Global SLAM : Setting POSE_GRAPH.optimize_every_n_nodes to 0 is a handy way to disable global SLAM and concentrate on the behavior of local SLAM.
POSE_GRAPH.constraint_builder.min_score
Global SLAM : Threshold for the scan match score below which a match is not considered. Low scores indicate that the scan and map do not look similar.
POSE_GRAPH.constraint_builder.global_localization_min_score
Global SLAM : Threshold below which global localizations are not trusted.
NOTE: Constraints can be visualized in RViz, it is very handy to tune global SLAM. One can also toggle POSE_GRAPH.constraint_builder.log_matches to get regular reports of the constraints builder formatted as histograms.
Gmapping has many parameters to change performances for different environments. You can get an information about whole parameters in ROS WiKi or refer to the Chapter 11 of ROS Robot Programming. This tuning guide provides tips when configuring gmapping parameters. If you want to optimize SLAM performances for your environments, this section might be helpful.
Below parameters are defined in turtlebot3_slam/config/gmapping_params.yaml file.
maxUrange
This parameter is set the maximum usable range of the lidar sensor.
map_update_interval
This parameter defines time between updating the map. The smaller the value, the more frequent the map is updated. However, setting this too small will be require more processing power for the map calculation. Set this parameter depending on the map environment.
minimumScore
This parameter sets the minimum score value that determines the success or failure of the sensor’s scan data matching test. This can reduce errors in the expected position of the robot in a large area. If the parameter is set properly, you will see information similar to one shown below.
Average Scan Matching Score=278.965 neff= 100 Registering Scans:Done update frame 6 update ld=2.95935e-05 ad=0.000302522 Laser Pose= -0.0320253 -5.36882e-06 -3.14142If set too high, you might see below warnings.
Scan Matching Failed, using odometry. Likelihood=0 lp:-0.0306155 5.75314e-06 -3.14151 op:-0.0306156 5.90277e-06 -3.14151linearUpdate
When the robot translates longer distance than this value, it will run the scan process.
angularUpdate
When the robot rotates more than this value, it will run the scan process. It is recommended to set this value less than linearUpdate.
Save Map
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver node in the map_server package to create map files. The map file is saved in the directory where the map_saver node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. $ rosrun map_server map_saver -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver node in the map_server package to create map files. The map file is saved in the directory where the map_saver node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. $ rosrun map_server map_saver -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver node in the map_server package to create map files. The map file is saved in the directory where the map_saver node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. [Remote PC] $ rosrun map_server map_saver -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver node in the nav2_map_server package to create map files. The map file is saved in the directory where the map_saver node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. $ ros2 run nav2_map_server map_saver -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver_cli node in the nav2_map_server package to create map files. The map file is saved in the directory where the map_saver_cli node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. $ ros2 run nav2_map_server map_saver_cli -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver_cli node in the nav2_map_server package to create map files. The map file is saved in the directory where the map_saver_cli node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. [Remote PC] $ ros2 run nav2_map_server map_saver_cli -f ~/map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the home folder ~/(/home/${username}).
The map is drawn based on the robot’s odometry, tf and scan information. These map data is drawn in the RViz window as the TurtleBot3 was traveling. After creating a complete map of desired area, save the map data to the local drive for the later use.
- Launch the map_saver node in the map_server package to create map files. The map file is saved in the directory where the map_saver node is launched at. Unless a specific file name is provided, map will be used as a default file name and create map.pgm and map.yaml. > rosrun map_server map_saver -f %USERPROFILE%\map
The -f option specifies a folder location and a file name where files to be saved. With the above command, map.pgm and map.yaml will be saved in the user directory. The user directory is stored in an environment variable %USERPROFILE%
Map
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
The map uses two-dimensional Occupancy Grid Map (OGM), which is commonly used in ROS. The saved map will look like the figure below, where white area is collision free area while black area is occupied and inaccessible area, and gray area represents the unknown area. This map is used for the Navigation.
The figure below shows the result of creating a large map using TurtleBot3. It took about an hour to create a map with a travel distance of about 350 meters.
Previous Page Next PageTừ khóa » Bản đồ Ros
-
ROS Stock Price And Chart — HOSE:ROS - TradingView
-
CTCP Xây Dựng FLC Faros (HOSE: ROS) - VietstockFinance
-
Rtabmap_ros - ROS Wiki
-
Nghiên Cứu Phát Triển Robot Xây Dựng Bản đồ Và định Vị đồng Thời ...
-
[PDF] Nghiên Cứu, Thiết Kế Hệ Thống định Vị Cho Robot Di động Trên ... - ArXiv
-
Giá Cổ Phiếu Ros
-
Xây Dựng Hệ Thống điều Hướng Dựa Trên Bản đồ Hóa ... - 123doc
-
Xây Dựng Bản đồ Sử Dụng Camera Rgbd Kết Hợp Imu Trên Nền Tảng Ros
-
Hệ điều Hành Robot - Robot Operating System - Wikipedia
-
Results On The Sim_short Simulation Dataset. - ResearchGate
-
NGHIÊN CỨU ĐIỀU KHIỂN ROBOT TỰ HÀNH ỨNG DỤNG CHO ...
-
Kinect V1 RGBD Độ Sâu Camera ROS Robot Xây Dựng Bản Đồ ...
-
Xây Dựng Hệ Thống điều Hướng Dựa Trên Bản đồ Hóa ... - TaiLieu.VN