/RIA-ROS-Basics-with-Python-in-5-days

These are my answers to the ROS Basics course by Robot Ignite Academy.

Primary LanguageCMakeGNU General Public License v3.0GPL-3.0

Robot-Ignite-Academy-ROS-Basics-with-Python-in-5-days:clap:

These are my answers to the ROS Basics course by Robot Ignite Academy.

The Courses covers ROS basics like NODES,TOPICS,SERVICES and ACTIONS. It has 3 quizes which are to be completed.

Code style

This Project used standard Code Style

js-standard-style

Brief Summary

ROS In 5 Days is the ideal course if you are new to ROS.The objective of this course is to give you the basic tools and knowledge to be able to understand and create any basic ROS related project. You will be able to move robots, read their sensor data, make the robots perform intelligent tasks, see visual representations of complex data such as Point Clouds and debug errors in the programs.

What you will learn

This course covers following topics:

1. ROS Basic Structure
2. ROS Topics
3. ROS Services
4. ROS Actions
5. ROS Debugging Tools

Unit 0: Course Preview

  • Interacting with a simulated robot and What you will need to learn to program a robot with ROS

Unit 1: Guide for ROS in a Single Week

  • It is possible to learn ROS fast if you have the proper method
  • Robots we are going to use along the course
  • Main Objective of this course
  • Learning ROS: attack in two ways
  • Apply what you learnt to a Robot Project
  • How to proceed with the whole course

Unit 2: ROS Basics

  • Basic Concepts
  • Move a Robot with ROS
  • What's a ROS Package
  • What is a launch file
  • Create a ROS Package
  • Your first ROS program
  • ROS Nodes
  • Compiling a ROS Package
  • Parameter Server
  • ROS Core
  • Environment Variables

Unit 3: ROS Topics - part 1

  • Topic Publisher
  • ROS Messages
  • Exercises

Unit 4: ROS Topics - part 2

  • Topic Subscriber
  • Custom Topic Message Compilation
  • ROS Topics Mini Project

Unit 5: ROS Services - part 1

  • Topics - Services - Actions
  • Services Introduction
  • How to call a ROS Service
  • Exercises

Unit 6: ROS Services - part 2

  • How to give a Service
  • How to create your own service message
  • Custom Service Compilation

Unit 7: Python Classes

  • Introduction to Python Classes and Object Oriented Programming.
  • How to use Python Classes in ROS

Unit 8: ROS Actions - part 1

  • Playing with the Quadrotor simulation
  • What are ROS Actions
  • Calling an Action Server
  • Performing other tasks while the Action is in progress
  • The axclient

Unit 9: ROS Actions - part 2

  • Writing an Action Server
  • Creating your own Action Server Message
  • Custom Action Messages compilation

Unit 10: Debugging Tools

  • ROS What The F*ck
  • ROS Debugging Messages and RQT-Console
  • Plot topic data and RQT Plot
  • Node Connections and RQT graph
  • Record experimental data and ROSBags
  • Visualize Complex data and RViz

Unit 12: Course Project

  • Win the Sphero Race
  • What Sphero provides to program It
  • Ideas to start working on
  • Steps you should cover

Unit 13: Turtlebot Project

  • Win the TurtleBot Race!
  • What Turtlebot provides to program It
  • Ideas to start working on
  • Steps you should cover

Unit 14: Appendix 1: Local ROS installation

  • How to install ROS in your local computer

Unit 15: Appendix 2. Manage ROS workspaces

  • How to create and manage new ROS workspaces

Unit 16: What to do after the Course?

  • Keep Learning