/ROS-Drone-Basic-Course-for-Beginners

Course package after final completion

Primary LanguagePython

ROS Drone Basic Course for Beginners

Table of Contents
  1. About This Repository
  2. Using this Repository
  3. Course Workflow
  4. Features
  5. Pre-Course Requirments
  6. Link to the Course
  7. Notes
  8. Instructors
  9. License

About this Repository

Hector Drone and its sensors is what we are going to interface our python Nodes with and write algorithms to avoid obstacles and secure diamonds in simulation of Gaebzo .OpenCV library for python is going to be used for the Last project and you will learn how to perform computer vision algorithms with ROS .


Using this Repository

  • Ubuntu 20.04 and ROS1-Noetic should be installed
  • Move into your workspace/src folder
cd path/to/ros1_ws/src/
##e.g cd ~/catkin_ws/src/
  • Clone the repository in your workspace
git clone https://github.com/noshluk2/ROS-Drone-Basic-Course-for-Beginners
git clone https://github.com/RAFALAMAO/hector_quadrotor_noetic
  • Perform make and build through catkin
cd /path/to/workspace_root/
##e.g ~/catkin_ws/
catkin_make
  • Source your Workspace in any terminal you open to Run files from this workspace ( which is a basic thing of ROS )
source /path/to/catkin_ws/devel/setup.bash
  • (Optional for Power USERs only) Add source to this workspace into bash file
echo "source /path/to/catkin_ws/devel/setup.bash" >> ~/.bashrc

NOTE: This upper command is going to add the source file path into your ~/.bashrc file ( Only perform it once and you know what you are doing).This will save your time when running things from the Workspace


Course Workflow

This course is going to utilize Hector drone package containing a drone with multiple sensors. We will start with creating custom launch files which will bring all required files into our custom package. Sensors integration to robot model with xacro files .We will then perform multiple tasks to learn how ROS can help in learning drone robotics

Custom World Files will be created to represent projects , and complete workflow of our projects will be explained .

OpenCV library for python is going to be used for the Last project and you will learn how to perform computer vision algorithms with ROS


Features

  • Flying through Sensor data manipulation
    • alt text
  • Making Obstacle Avoiding Drone
    • alt text
  • Diamond Securing Drone Surveillance
    • alt text

Pre-Course Requirments

Software Based

  • Ubuntu 20.04 (LTS)
  • ROS1 - Noetic

Link to the Course


Notes

  • We have uploaded all the notes made during the lectures of the course so you can get more out of this repository with the instructors Notes. A seperate folder named as Notes contain a single PDF carrying all the notes in the root of this repository

Instructors

Muhammad Luqman (ROS Simulation and Control Systems) - Profile Link


License

Distributed under the GNU-GPL License. See LICENSE for more information.