Skip to content

Repository for ROS2 Python nodes for absolute beginners learning via TT102: Intro to Python for Robotics taught by Dr. Kshitij Tiwari

License

Notifications You must be signed in to change notification settings

ktiwari9/example_ws

Repository files navigation

ROS 2 Workspace with Worked examples in Python

Instructor: Dr. Kshitij Tiwari

This repository contains a ROS 2 workspace named example_ws that runs inside a Docker container. It is configured with Ubuntu 20.04.6 LTS and ROS 2 Foxy. This workspace includes relevant packages in Python that were utilized in the course material by the instructor to allow the learners to replicate the results.

Prerequisites

Before you start, make sure you have Docker installed on your system.

For this, you can go through the video lecture on setting up Docker & VS Code.

Getting Started

Building the Docker Image

docker build -t example_ws .

Cloning this Git Repository

git clone https://github.com/yourusername/example_ws.git

Installing package dependencies

./pkg_install.bash

Launching the relevant packages and Sims

./launch_gz.bash

ROS 2 Python Packages Included:

This repository comes with the following ROS 2 Python packages included in the src/ folder.

Package Name Node Name Node Description
robot_spawn_pkg spawn_bot.py Python ROS2 node to spawn a custom 4 wheeled robot with camera and lidar at a preset initial pose
robot_mover_pkg Python ROS2 node to move the robot currently spawned in Gazebo

ROS 2 Package Dependencies/Utilities:

In order to test, debug and deploy you may want to additionally install the following ROS2 dependencies/utilities inside your *_ws/src

Package Name Install Command Description
ros_network_viz git clone https://github.com/ros2/ros_network_viz.git ROS2 utility to graphically show all nodes, topics and services and actions

RQT Network Visualizer Utility for ROS2

Additional resources:

Resource Name Description
basic_bocbot A Github repository with the office world and robot utilized in this lecture series
Introduction to ROS A Lecture introducing ROS and ROS 2 to absolute beginners with intuitive examples
RQT Network A GUI-based ROS2 utility to visualize all nodes, topics, services and actions in ROS2

License

This project is licensed under the MIT License.

Contributions

Feel free to contribute to this project by submitting issues or pull requests.

About

Repository for ROS2 Python nodes for absolute beginners learning via TT102: Intro to Python for Robotics taught by Dr. Kshitij Tiwari

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published