An introduction to robotics. The target is to get into robotics and ros with an easy (exponential) learning curve.
This is a tutorial on robotics. The provided software can be used with for example an RC-Car with a PI attached like alice- and bob-hardware or with a full sized robot using ros.
If you do not have a robot yet look at the alice- or bob-hardware repositories to build your own robot.
- Alice-Bot (scratch build, indoor, differential drive)
- Bob-Bot [WIP] (modified rc car, outdoor, ackerman steering)
- Eve-Bot (like alice just smaller)
If you want to adopt your ros robot to be compliant with this tutorial, look at our implementation of the betelgeuse robot (ros). If you do not understand it, write us an email.
Assignment Name - What you learn. (key skill name)
- Installing (section Setup) - Learn to setup a development environment. (mandatory setup)
- LEDs - Learn the basics of python and the framework.
- Buttons and LEDs - Learn the basics of event driven programming. (can be skipped, since simulator and most hardware do not support buttons)
- Steering a Robot - Learn how to drive a robot in a rectangle. (Steering)
- Collision Avoidance - Learn how to react to sensor values. (Perception Basics)
- Controll by Compass - Learn to control the robots direction despite external factors. (Control)
- Drive to GPS Position - Learn how to reach a gps destination. (Simple Planning)
- Advanced Navigation - Learn how to put all pieces together to reach a gps target without colliding. (Planning)
- Porting to Betelgeuse - (kamaro only) Port your code to a bigger robot. (can be skipped)
- ROS Programming - Learn the fundamentals of ROS, a widely spread robotics framework. (ROS, the framework)
BONUS/Advanced Stuff
- Localization and Mapping - Learn how a robot can localize itself.
- Reinforcement Learning - Learn how to teach a robot by reward and punishment.
- Supervised Learning [TODO] - Learn how robot perception works with deep neural networks.
-
Install the simulator. When developing algorithms for a robot the first step is usually testing it in a simulator. There is a simulator for alice which can be found here.
-
Get yourself a compatible robot, if your instructor has not done so for you already.
a) Build your own alice, bob or eve robot.
b) Adopt a ros robot (like we did with betelgeuse).
c) Use the alice simulator (it has all sensors except camera).
-
Install git and python on your system (see install dependencies instrucitons below)
-
Open a commandline in the folder where you want to work with your project.
-
Clone this repository
git clone https://github.com/penguinmenac3/robotics-introduction.git
- If you did all steps correctly, you can start with the first assignment.
Update and upgrade your system.
sudo apt-get update
sudo apt-get upgrade
Install git, python, pip and python-dev.
sudo apt-get install git python python-pip python-dev
Download and install the most recent version of anaconda python for windows. (Python2.7 and Python3.x should both be fine)
https://www.continuum.io/downloads#windows
Download and install git.