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

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)