Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
TIP: Before executing this command, you have to specify the model name of TurtleBot3. The ${TB3_MODEL}
is the name of the model you are using in burger
, waffle
, waffle_pi
.
- Launch
turtlebot3_teleop_key
node from Remote PC for the teleoperation using a keyboard. Replace the${TB3_MODEL}
parameter with your model name such asburger
,waffle
,waffle_pi
.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
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
Read more about How to predefine the TURTLEBOT3_MODEL
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.
$ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default.
$ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
RC100
The settings for ROBOTIS RC-100B controller is included in the OpenCR firmware for TurtleBot3 Burger, Waffle and Waffle Pi. This controller can be used with the Bluetooth module BT410. The TurtleBot3 Waffle Pi includes the RC-100 controller and Bluetooth modules. When using RC-100, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect the PS3 Joystick to the remote PC via Bluetooth or a USB cable.
- Install packages for teleoperation using PS3 joystick.
$ sudo apt-get install ros-kinetic-joy ros-kinetic-joystick-drivers ros-kinetic-teleop-twist-joy
- Launch the teleoperation node.
$ roslaunch teleop_twist_joy teleop.launch
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
- Install packages for teleoperation using XBOX 360 joystick.
$ sudo apt-get install xboxdrv ros-kinetic-joy ros-kinetic-joystick-drivers ros-kinetic-teleop-twist-joy
- Launch teleoperation packages for XBOX 360 joystick.
$ sudo xboxdrv --silent $ roslaunch teleop_twist_joy teleop.launch
Wii Remote
-
Connect Wii remote to the remote PC via Bluetooth.
- Install packages for teleoperation using Wii remote.
$ sudo apt-get install ros-kinetic-wiimote libbluetooth-dev libcwiid-dev $ cd ~/catkin_ws/src $ git clone https://github.com/ros-drivers/joystick_drivers.git $ cd ~/catkin_ws && catkin_make
- Run teleoperation packages for Wii remote.
$ rosrun wiimote wiimote_node $ rosrun wiimote teleop_wiimote
Topic Monitor
Read more about Topic Monitor
In order to check the topics of TurtleBot3, we will use rqt provided by ROS. The rqt is a Qt-based framework for GUI development for ROS. The rqt is a tool that allows users to easily see the topic status by displaying all the topics in the topic list. There are topic names, types, bandwidth, Hz, value in GUI.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/diagnostics
indicates a message the status of the components connected to the TurtleBot3, such as a MPU9250, DYNAMIXEL-X, a HLS-LFCD-LDS, a battery and a OpenCR.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
TIP: Before executing this command, you have to specify the model name of TurtleBot3. The ${TB3_MODEL}
is the name of the model you are using in burger
, waffle
, waffle_pi
.
- Launch
turtlebot3_teleop_key
node from Remote PC for the teleoperation using a keyboard. Replace the${TB3_MODEL}
parameter with your model name such asburger
,waffle
,waffle_pi
.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
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
Read more about How to predefine the TURTLEBOT3_MODEL
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.
$ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default.
$ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
RC100
The settings for ROBOTIS RC-100B controller is included in the OpenCR firmware for TurtleBot3 Burger, Waffle and Waffle Pi. This controller can be used with the Bluetooth module BT410. The TurtleBot3 Waffle Pi includes the RC-100 controller and Bluetooth modules. When using RC-100, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect the PS3 Joystick to the remote PC via Bluetooth or a USB cable.
- Install packages for teleoperation using PS3 joystick.
$ sudo apt-get install ros-melodic-joy ros-melodic-joystick-drivers ros-melodic-teleop-twist-joy
- Launch the teleoperation node.
$ roslaunch teleop_twist_joy teleop.launch
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
- Install packages for teleoperation using XBOX 360 joystick.
$ sudo apt-get install xboxdrv ros-melodic-joy ros-melodic-joystick-drivers ros-melodic-teleop-twist-joy
- Launch teleoperation packages for XBOX 360 joystick.
$ sudo xboxdrv --silent $ roslaunch teleop_twist_joy teleop.launch
Wii Remote
-
Connect Wii remote to the remote PC via Bluetooth.
- Install packages for teleoperation using Wii remote.
$ sudo apt-get install ros-melodic-wiimote libbluetooth-dev libcwiid-dev $ cd ~/catkin_ws/src $ git clone https://github.com/ros-drivers/joystick_drivers.git $ cd ~/catkin_ws && catkin_make
- Run teleoperation packages for Wii remote.
$ rosrun wiimote wiimote_node $ rosrun wiimote teleop_wiimote
Topic Monitor
Read more about Topic Monitor
In order to check the topics of TurtleBot3, we will use rqt provided by ROS. The rqt is a Qt-based framework for GUI development for ROS. The rqt is a tool that allows users to easily see the topic status by displaying all the topics in the topic list. There are topic names, types, bandwidth, Hz, value in GUI.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/diagnostics
indicates a message the status of the components connected to the TurtleBot3, such as a MPU9250, DYNAMIXEL-X, a HLS-LFCD-LDS, a battery and a OpenCR.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
TIP: Before executing this command, you have to specify the model name of TurtleBot3. The ${TB3_MODEL}
is the name of the model you are using in burger
, waffle
, waffle_pi
.
- Launch
turtlebot3_teleop_key
node from Remote PC for the teleoperation using a keyboard. Replace the${TB3_MODEL}
parameter with your model name such asburger
,waffle
,waffle_pi
.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
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
Read more about How to predefine the TURTLEBOT3_MODEL
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.
$ echo 'export TURTLEBOT3_MODEL=burger' >> ~/.bashrc $ source ~/.bashrc
- Example of defining TurtlBot3 Waffle Pi as a default.
$ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc $ source ~/.bashrc
RC100
The settings for ROBOTIS RC-100B controller is included in the OpenCR firmware for TurtleBot3 Burger, Waffle and Waffle Pi. This controller can be used with the Bluetooth module BT410. The TurtleBot3 Waffle Pi includes the RC-100 controller and Bluetooth modules. When using RC-100, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect the PS3 Joystick to the remote PC via Bluetooth or a USB cable.
- Install packages for teleoperation using PS3 joystick.
$ sudo apt install ros-noetic-joy ros-noetic-joystick-drivers ros-noetic-teleop-twist-joy
- Launch the teleoperation node.
$ roslaunch teleop_twist_joy teleop.launch
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
- Install packages for teleoperation using XBOX 360 joystick.
$ sudo apt install xboxdrv ros-noetic-joy ros-noetic-joystick-drivers ros-noetic-teleop-twist-joy
- Launch teleoperation packages for XBOX 360 joystick.
$ sudo xboxdrv --silent $ roslaunch teleop_twist_joy teleop.launch
Wii Remote
-
Connect Wii remote to the remote PC via Bluetooth.
- Install packages for teleoperation using Wii remote.
$ sudo apt install ros-noetic-wiimote libbluetooth-dev libcwiid-dev $ cd ~/catkin_ws/src $ git clone https://github.com/ros-drivers/joystick_drivers.git $ cd ~/catkin_ws && catkin_make
- Run teleoperation packages for Wii remote.
$ rosrun wiimote wiimote_node $ rosrun wiimote teleop_wiimote
Topic Monitor
Read more about Topic Monitor
In order to check the topics of TurtleBot3, we will use rqt provided by ROS. The rqt is a Qt-based framework for GUI development for ROS. The rqt is a tool that allows users to easily see the topic status by displaying all the topics in the topic list. There are topic names, types, bandwidth, Hz, value in GUI.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/diagnostics
indicates a message the status of the components connected to the TurtleBot3, such as a MPU9250, DYNAMIXEL-X, a HLS-LFCD-LDS, a battery and a OpenCR.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
- Open a terminal on Remote PC.
- Run teleoperation node. Replace the
${TB3_MODEL}
withburger
orwaffle
orwaffle_pi
, if TURTLEBOT3_MODEL parameter is not predefined.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ ros2 run turtlebot3_teleop teleop_keyboard
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
Control Your Turtlebot3 Moving around w a s d x w/x : increase/decrease linear velocity (Burger : ~ 0.22, Waffle and Waffle Pi : ~ 0.26) a/d : increase/decrease angular velocity (Burger : ~ 2.84, Waffle and Waffle Pi : ~ 1.82) space key, s : force stop CTRL-C to quit
RC-100
The settings for ROBOTIS RC-100B is included in an OpenCR firmware for TurtleBot3. It can be used with the Bluetooth module BT410. TurtleBot3 Waffle Pi includes this controller and Bluetooth modules. When using RC-100B, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect PS3 Joystick to Remote PC via Bluetooth or a USB cable.
- Install
ds4drv
packages by using pip.$ sudo pip install ds4drv
- Launch the joystick node.
$ sudo ds4drv $ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
-
Open a terminal on Remote PC.
- Launch the joystick node.
$ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
Topic Monitor
Read more about Topic Monitor
In order to check topics of TurtleBot3, Use rqt provided by ROS, which is a Qt-based framework for GUI development for ROS. It is a tool displaying all topics of TurtleBot3 with a topic name, type, bandwidth, Hz, and value.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
- Open a terminal on Remote PC.
- Run teleoperation node. Replace the
${TB3_MODEL}
withburger
orwaffle
orwaffle_pi
, if TURTLEBOT3_MODEL parameter is not predefined.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ ros2 run turtlebot3_teleop teleop_keyboard
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
Control Your Turtlebot3 Moving around w a s d x w/x : increase/decrease linear velocity (Burger : ~ 0.22, Waffle and Waffle Pi : ~ 0.26) a/d : increase/decrease angular velocity (Burger : ~ 2.84, Waffle and Waffle Pi : ~ 1.82) space key, s : force stop CTRL-C to quit
RC-100
The settings for ROBOTIS RC-100B is included in an OpenCR firmware for TurtleBot3. It can be used with the Bluetooth module BT410. TurtleBot3 Waffle Pi includes this controller and Bluetooth modules. When using RC-100B, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect PS3 Joystick to Remote PC via Bluetooth or a USB cable.
- Install
ds4drv
packages by using pip.$ sudo pip install ds4drv
- Launch the joystick node.
$ sudo ds4drv $ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
-
Open a terminal on Remote PC.
- Launch the joystick node.
$ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
Topic Monitor
Read more about Topic Monitor
In order to check topics of TurtleBot3, Use rqt provided by ROS, which is a Qt-based framework for GUI development for ROS. It is a tool displaying all topics of TurtleBot3 with a topic name, type, bandwidth, Hz, and value.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
- Open a terminal on Remote PC.
- Run teleoperation node. Replace the
${TB3_MODEL}
withburger
orwaffle
orwaffle_pi
, if TURTLEBOT3_MODEL parameter is not predefined.$ export TURTLEBOT3_MODEL=${TB3_MODEL} $ ros2 run turtlebot3_teleop teleop_keyboard
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
Control Your Turtlebot3 Moving around w a s d x w/x : increase/decrease linear velocity (Burger : ~ 0.22, Waffle and Waffle Pi : ~ 0.26) a/d : increase/decrease angular velocity (Burger : ~ 2.84, Waffle and Waffle Pi : ~ 1.82) space key, s : force stop CTRL-C to quit
RC-100
The settings for ROBOTIS RC-100B is included in an OpenCR firmware for TurtleBot3. It can be used with the Bluetooth module BT410. TurtleBot3 Waffle Pi includes this controller and Bluetooth modules. When using RC-100B, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpeCR.
-
Connect BT-410 to any of OpenCR UART ports.
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
PS3 Joystick
-
Connect PS3 Joystick to Remote PC via Bluetooth or a USB cable.
- Install
ds4drv
packages by using pip.$ sudo pip install ds4drv
- Launch the joystick node.
$ sudo ds4drv $ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
XBOX 360 Joystick
-
Connect XBOX 360 Joystick to the remote PC with Wireless Adapter or USB cable.
-
Open a terminal on Remote PC.
- Launch the joystick node.
$ ros2 run joy joy_node
- Open a new terminal and launch the teleoperation node.
$ ros2 run teleop_twist_joy teleop_node
Topic Monitor
Read more about Topic Monitor
In order to check topics of TurtleBot3, Use rqt provided by ROS, which is a Qt-based framework for GUI development for ROS. It is a tool displaying all topics of TurtleBot3 with a topic name, type, bandwidth, Hz, and value.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.$ rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.
Basic Operation
Teleoperation
WARNING: Make sure to run the Bringup from the TurtleBot3 SBC before teleoperation. Teleoperate the robot, and be careful when testing the robot on the table as the robot might fall.
The TurtleBot3 can be teleoperated by various remote controllers. Make sure that the necessary ROS packages are supported for your SBC and ROS version.
Keyboard
TIP: Before executing this command, you have to specify the model name of TurtleBot3. The ${TB3_MODEL}
is the name of the model you are using in burger
, waffle
, waffle_pi
.
- Launch
turtlebot3_teleop_key
node from Remote PC for the teleoperation using a keyboard.
Please use the proper keyword amongburger
,waffle
,waffle_pi
for theTURTLEBOT3_MODEL
parameter.> set TURTLEBOT3_MODEL=waffle > roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
- If the node is successfully launched, the following instruction will be appeared to the terminal window.
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
RC100
The settings for ROBOTIS RC-100B controller is included in the OpenCR firmware for TurtleBot3 Burger, Waffle and Waffle Pi. This controller can be used with the Bluetooth module BT410. The TurtleBot3 Waffle Pi includes the RC-100 controller and Bluetooth modules. When using RC-100, it is not necessary to execute a specific node because turtlebot_core
node creates a /cmd_vel
topic in the firmware directly connected to OpenCR.
-
Connect BT-410 to OpenCR UART1 port (as described here).
-
Control TurtleBot3 with RC-100.
- Up / Down : Increase or decrease linear velocity
- Left / Right : Increase or decrease angular velocity
Joysticks
The Windows implementation of the Joystick control uses the Open Source Simple DirectMedia Layer, which supports many tethered and wireless joysticks. The Joystick driver is currently (As of January 2020) deployed as a source package, which you need to clone into your catkin workspace.
> git clone -b init_windows https://github.com/ms-iot/joystick_drivers
Topic Monitor
Read more about Topic Monitor
In order to check the topics of TurtleBot3, we will use rqt provided by ROS. The rqt is a Qt-based framework for GUI development for ROS. The rqt is a tool that allows users to easily see the topic status by displaying all the topics in the topic list. There are topic names, types, bandwidth, Hz, value in GUI.
- Run the rqt from PC with the command below. If the topic monitor window is not displayed, select the
plugin
->Topics
->Topic Monitor
.> rqt
-
When the topic monitor loaded, the topic values are not monitored. Click the checkbox next to each topic to monitor the topic.
- To see more detailed topic message, click the
▶
icon next to the checkbox.
-
/battery_state
indicates a message relating to the battery condition, such as the current battery voltage and remaining capacity.
-
/diagnostics
indicates a message the status of the components connected to the TurtleBot3, such as a MPU9250, DYNAMIXEL-X, a HLS-LFCD-LDS, a battery and a OpenCR.
-
/odom
indicates a message the odometry of the TurtleBot3. This topic has orientation and position by the encoder data.
-
/sensor_state
indicates a message the encoder values, battery and torque.
-
/scan
indicates a message all of the LDS data, such as angle_max and min, range_max and min, indicates, ranges.