Skip to content

3D Printed robot arm powered by ROS and Arduino and controlled via MoveIt! and Amazon Alexa. It is developed and programmed in the online course named "Robotics and ROS - Learn by Doing! Manipulators"

Notifications You must be signed in to change notification settings

AntoBrandi/Robotics-and-ROS-Learn-by-Doing-Manipulators

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Robotics and ROS - Learn by Doing! Manipulators

LinkedIn Udemy


Cover

Table of Contents

About the Course

This repository contains the material used in the course Robotics and ROS - Learn by Doing! Manipulators that is currently available on the following platforms:

In this course, I'll guide you through the creation of a real robotic arm that you can control with your voice using the Amazon Alexa voice assistant. Some of the concepts that are covered in this course are

  • Gazebo Simulation
  • Robot Kinematics
  • ROS Basics
  • MoveIt!
  • Using Arduino with ROS
  • Interface Alexa with ROS

Furthermore, all the laboratory classes in which we are going to develop the actual Software of our mobile robot are available both in Pyhton and in C++ to let you the freedom of choosing the programming language you like the most or become proficient in both!

Other Courses

If you find this course interesting and you are passionate about robotics in general (not limited to manipulators), then you definitely have to take a look at my other courses!

Robotics and ROS 2 - Learn by Doing! Manipulators

If you find this course interesting and you are passionate about robotics in general (not limited to autonomous mobile robots), then you definitely have to take a look at my outher courses!

Cover Manipulators 2

In this course I'll guide you through the creation of a real robotic arm that you can control with your voice using the Amazon Alexa voice assistant. Some of the concepts that are covered in this course are

  • Gazebo Simulation
  • Robot Kinematics
  • ROS 2 Basics
  • MoveIt 2
  • Using Arduino with ROS 2
  • Interface Alexa with ROS 2

Looks funny? Check it out on the following platforms:

Self-Driving and ROS 2 - Learn by Doing! Odometry & Control


Cover Self-Driving 2

Ready to boost your career as Robotics Software Developer and be knowledgeable about the latest technologies in robotics? Do you want to put yourself at the forefront of the demand for **ROS 2** developers? Many companies and universities are already switching to the new, amazing version of ROS. Build your own robot, fully powered by ROS 2!

Excited? Check it out:

Self Driving and ROS 2 - Learn by Doing! Map & Localization

Have you ever developed a mapping and a localization algorithm for your robot? Do you want to know more about SLAM (Simultaneous Localization and Mapping) and how to use it to enable your robot to create a nice and accurate map of the environment using a 2D LiDAR sensor?

Then this course will teach you exaclty that, with many more topics:

  • Robot Localization
  • Map Representations
  • Mapping
  • SLAM
  • Obstacle Avoidance
  • Speed and Separation monitoring
  • Using LiDAR Sensors

enroll on the following platforms:

Cover Map & Localization

ROS 1 Nostalgic?

Do you want to master Self-Driving or Manipulation using ROS, the first version of the Robot Operating System?

Despite many companies already started switching to ROS 2, knowing both ROS 1 and ROS 2 will position you at the forefront of this demand, making you an attractive candidate for a wide range of roles.

Here you can access the same courses, where will be created the same robots, implementing the same functionalities in ROS 1

Getting Started

You can decide whether to build the real robot or just have fun with the simulated one. The course can be followed either way, most of the lessons and most of the code will work the same in the simulation as in the real robot

Prerequisites

You don't need any prior knowledge of ROS or of Robotics, I'll explain all the concepts as they came out and as they are needed to implement new functionalities to our robot. A basic knowledge of programming, either using C++ or Python is required as this is not a Programming course and so I'll not dwell too much on basic Programming concepts.

To prepare your PC you need:

  • Install Ubuntu 20.04 on PC or in Virtual Machine Download the ISO Ubuntu 20.04 for your PC
  • Install ROS Noetic on your Ubuntu 20.04
  • Install ROS missing libraries. Some libraries that are used in this project are not in the standard ROS package. Install them with:
sudo apt-get update && sudo apt-get install -y \
     ros-noetic-rosserial \
     ros-noetic-gazebo-ros-control \
     ros-noetic-joint-state-publisher-gui \
     ros-noetic-rosserial-arduino \
     ros-noetic-moveit \
     ros-noetic-actionlib-tools
  • Install VS Code and Arduino IDE on your PC in order to build and load the Arduino code on the device

Installation

  1. Clone the repo
git clone https://github.com/AntoBrandi/Robotics-and-ROS-Learn-by-Doing-Manipulators.git
  1. Build the ROS workspace
cd ~/Robotics-and-ROS-Learn-by-Doing-Manipulators/Section9-Build_the_Real_Robot/arduinobot_ws
catkin_make
  1. Source the project
source devel/setup.bash

Usage

To launch the ROS Simulated robot

roslaunch arduinobot_bringup sim_complete.launch

To launch the Real robot, connect the Arduino to the PC and upload the code in the folder on the Arduino controller. Then launch the real robot

roslaunch arduinobot_bringup complete.launch

To launch the interface with Alexa download ngrok and create an account then setup ngrok with your key

./ngrok authtoken <YOUR-KEY>

Then start the ngrok web server with

./ngrok http 5000

Copy the link that provides ngrok and paste it in the section Endpoint of your Alexa Developer account

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the Apache 2.0 License. See LICENSE for more information.

Contact

Antonio Brandi - LinkedIn - antonio.brandi@outlook.it

My Projects: https://github.com/AntoBrandi

Acknowledgements

About

3D Printed robot arm powered by ROS and Arduino and controlled via MoveIt! and Amazon Alexa. It is developed and programmed in the online course named "Robotics and ROS - Learn by Doing! Manipulators"

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published