Skip to content

niyassaleem/ROS-Keyboard-Teleoperation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Here’s the README for Project 2: Keyboard Teleoperation Node.


ROS Keyboard Teleoperation Node

This project is a ROS-based teleoperation node for controlling a robot or simulation interactively using keyboard inputs. It publishes velocity commands (geometry_msgs/Twist) to a ROS topic, allowing users to move the robot in real time.


Features

  • Interactive teleoperation via keyboard inputs.
  • Publishes linear and angular velocity commands to ROS for robot control.
  • Configurable linear and angular speed.
  • Simple and intuitive interface for controlling robot movements.

How It Works

  • Listens for keyboard inputs and maps them to velocity commands:
    • Forward (w): Increases linear.x.
    • Backward (s): Decreases linear.x.
    • Left (a): Increases angular.z.
    • Right (d): Decreases angular.z.
    • Quit (Ctrl+C): Stops the node.
  • Publishes these commands to the /turtle1/cmd_vel topic in real time.

Keyboard Commands

-------------------------------------------------------
			   ^
	spin L: Q	   W	        spin R: E
			forward

       < Left A 			Right D >

			 back
			  S
		  
	Raise : Z	  		Lower : X 
	Hover : F			Quit : CTRL+C
--------------------------------------------------------
		     NIYAS SALIM
--------------------------------------------------------

Setup Instructions

Prerequisites

  1. ROS Installed: Ensure you have ROS installed and set up on your system.
  2. Python Environment: Ensure the required Python libraries (rospy, geometry_msgs) are installed.

Running the Node

  1. Start ROS Core:

    roscore
  2. Run the Teleoperation Node:

    python keyboard_teleop.py
  3. Use the keyboard to interactively control the robot.


Project Structure

keyboard_teleoperation/
├── keyboard_teleop.py         # Teleoperation Python script
└── README.md                  # Project documentation

Future Improvements

  • Add support for additional commands, such as speed adjustment.
  • Integrate sensor data for obstacle avoidance.
  • Implement GUI-based teleoperation.

Acknowledgements

Special thanks to the ROS community for providing resources and tools for robot development.


License

This project is licensed under the MIT License. See the LICENSE file for details.


ROS-keyboard

control turtle with custom key

chmod -x rosrun /.py

About

control turtle with custom key

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages