teleop_keyboard
This file is ai generated. Do not edit this file directly. Instead, edit the node source code and run the generate-node-docs command to update this file.
Description
Keyboard teleoperation node for controlling the TurtleBot3 using keyboard inputs. This node allows users to control the robot’s linear and angular velocities using intuitive keyboard keys. The velocity commands are smoothly ramped to provide better control.
Publishers
cmd_vel(geometry_msgs/Twist or geometry_msgs/TwistStamped)Velocity commands for the robot
Uses Twist for ROS 2 Humble, TwistStamped for later distributions
Parameters
The node uses environment variables instead of ROS parameters:
TURTLEBOT3_MODEL(environment variable)Must be set to either “burger”, “waffle”, or “waffle_pi”
Determines the maximum velocity limits:
Burger: max linear 0.22 m/s, max angular 2.84 rad/s
Waffle/Waffle Pi: max linear 0.26 m/s, max angular 1.82 rad/s
Keyboard Controls
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
Example Usage
Set the TurtleBot3 model and launch the keyboard teleoperation:
export TURTLEBOT3_MODEL=burger
ros2 run turtlebot3_teleop teleop_keyboard
For Waffle model:
export TURTLEBOT3_MODEL=waffle
ros2 run turtlebot3_teleop teleop_keyboard
Notes
The node requires terminal focus to receive keyboard input
Velocity changes are applied incrementally with step sizes:
Linear velocity step: 0.01 m/s
Angular velocity step: 0.1 rad/s
The node publishes commands at approximately 10 Hz
On exit, the node sends a stop command (all velocities set to zero)