# Awesome Robotics

This is a list of various books, courses and other resources for robotics. It’s an attempt to gather useful material in one place for everybody who wants to learn more about the field.

### Courses

- Artificial Intelligence for Robotics Udacity
- Robotics Nanodegree Udacity :dollar:
- Autonomous Mobile Robots edX
- Underactuated Robotics MIT CSAIL
- Autonomous Mobile Robots edX
- Robot Mechanics and Control, Part I edX
- Robot Mechanics and Control, Part II edX
- Autonomous Navigation for Flying Robots edX
- Robotics Specialization by GRASP Lab Coursera :dollar:
- Control of Mobile Robots Coursera
- QUT Robot Academy QUT
- Robotic vision QUT
- Introduction to robotics MIT
- Robotics: Vision Intelligence and Machine Learning edX
- Applied robot design Stanford University
- Introduction to Robotics Stanford University
- Introduction to Mobile Robotics University of Freiburg
- Robotics edx :dollar:
- Columbia Robotics edx
- Modern Robotics: Mechanics, Planning, and Control Coursera
- Hello (Real) World with ROS – Robot Operating System edx
- Advanced Robotics UCBerkeley
- Building Arduino robots and devices Coursera
- Introduction to The Robot Operating System (ROS2) Coursera
- Modern Robotics: Mechanics, Planning, and Control Specialization Coursera
- Become a Robotics Software Enginee Udacity
- Advanced Robotics UC Berkeley

### Books

- Probabilistic Robotics (Intelligent Robotics and Autonomous Agents series) :dollar:
- Introduction to Autonomous Mobile Robots (Intelligent Robotics and Autonomous Agents series) :dollar:
- Springer Handbook of Robotics :dollar:
- Planning Algorithms
- A gentle introduction to ROS
- A Mathematical Introduction to Robotic Manipulation
- Learning Computing With Robots
- Robotics, Vision and Control: Fundamental Algorithms in MATLAB (Springer Tracts in Advanced Robotics) :dollar:
- INTECH Books
- Introduction to Autonomous Robots
- Principles of Robot Motion: Theory, Algorithms, and Implementations:dollar:
- Introduction to Modern Robotics: Mechanics, Planning, and Control [pdf]
- Programming Robots with ROS: A Practical Introduction to the Robot Operating System :dollar:
- Learning ROS for Robotics Programming :dollar:
- Mastering ROS for Robotics Programming :dollar:
- Behavior Trees in Robotics and AI: An Introduction [pdf]
- Automated Planning and Acting [pdf]
- Robotics for Software Engineers :dollar:

### Software and Libraries

Gazebo Robot Simulator

ROS The Robot Operating System (ROS) is a flexible framework for writing robot software. It is a collection of tools, libraries, and conventions that aim to simplify the task of creating complex and robust robot behavior across a wide variety of robotic platforms.

ROS2 ROS2 is a new version of ROS with radical design changes and improvement over older ROS version.

RobWork RobWork is a collection of C++ libraries for simulation and control of robot systems. RobWork is used for research and education as well as for practical robot applications.

MRPT Mobile Robot Programming Toolkit provides developers with portable and well-tested applications and libraries covering data structures and algorithms employed in common robotics research areas.

Robotics Library The Robotics Library (RL) is a self-contained C++ library for robot kinematics, motion planning and control. It covers mathematics, kinematics and dynamics, hardware abstraction, motion planning, collision detection, and visualization.

Simbad 2D/3D simulator in Java and Jython.

Morse General purpose indoor/outdoor 3D simulator.

Carmen CARMEN is an open-source collection of software for mobile robot control. CARMEN is modular software designed to provide basic navigation primitives including: base and sensor control, logging, obstacle avoidance, localization, path planning, and mapping.

Peekabot Peekabot is a real-time, networked 3D visualization tool for robotics, written in C++. Its purpose is to simplify the visualization needs faced by a roboticist daily.

YARP Yet Another Robot Platform.

V-REP Robot simulator, 3D, source available, Lua scripting, APIs for C/C++, Python, Java, Matlab, URBI, 2 physics engines, full kinematic solver.

Webots Webots is a development environment used to model, program and simulate mobile robots.

Drake A planning, control and analysis toolbox for nonlinear dynamical systems.

Neurorobotics Platform (NRP) An Internet-accessible simulation system that allows the simulation of robots controlled by spiking neural networks.

The Player Project Free Software tools for robot and sensor applications

Open AI’s Roboschool Open-source software for robot simulation, integrated with OpenAI Gym.

ViSP Open-source visual servoing platform library, is able to compute control laws that can be applied to robotic systems.

ROS Behavior Trees Open-source library to create robot’s behaviors in form of Behavior Trees running in ROS (Robot Operating System).

g2core Open-source motion control software for CNC and Robotics, designed to run on Arduino Due class microcontrollers.

ur5controller Open-source OpenRAVE controller for UR5 robot integrated with ROS.

RBDL Open-source (zlib) C++ libray for both forward and inverse dynamics and kinematics. Also supports contacts and loops.

Unity Robotics Hub Central repository for open-source Unity packages, tutorials, and other resources demonstrating how to use Unity for robotics simulations. Includes new support for ROS integration.

### Papers

- Optimization Based Controller Design and Implementation for the Atlas Robot in the DARPA Robotics Challenge Finals

### Conferences

- ACM/IEEE International Conference on Human Robot Interaction (HRI)
- CISM IFToMM Symposium on Robot Design, Dynamics and Control (RoManSy)
- IEEE Conference on Decision and Controls (CDC)
- IEEE International Conference on Rehabilitation Robotics (ICORR)
- IEEE International Conference on Robotics and Automation (ICRA)
- IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)
- IEEE-RAS International Conference on Humanoid Robots (Humanoids)
- International Symposium of Robotic Research (ISRR)
- International Symposium of Experimental Robotics (ISER)
- Robotica
- Robotics: Science and Systems Conference (RSS)
- The International Workshop on the Algorithmic Foundations of Robotics (WAFR)

### Journals

- Autonomous Robots
- Bioinspiration & Biomimetics
- Frontiers in Robotics and AI
- IEEE Robotics & Automation Magazine
- IEEE Transactions on Haptics
- IEEE Transactions on Robotics
- IEEE/ASME Transactions on Mechatronics
- International Journal of Social Robotics
- Journal of Field Robotics
- Journal of Intelligent & Robotic Systems
- Mechatronics
- Robotics and Computer-Integrated Manufacturing
- Robotics and Autonomous Systems
- The International Journal of Robotics Research

### Competitions

- ICRA Robot Challenges
- RobotChallenge
- DARPA Robotics Challenge
- European Robotics Challenges
- First Robotics Competition
- VEX Robotics Competition
- RoboCup
- RoboCupJunior
- Eurobot International Students Robotics Contest
- RoboMasters
- RoboSoft, Grand Challenge
- Intelligent Ground Vehicle Competition
- Robotex The biggest robotics festival in Europe
- First Lego League

### Companies

- Boston Dynamics robotics R&D company, creator of the state of the art Atlas and Spot robots
- iRobot manufacturer of the famous Roomba robotic vacuum cleaner
- PAL Robotics
- Aldebaran Robotics creator of the NAO robot
- ABB Robotics the largest manufacturer of industrial robots
- KUKA Robotics major manufacturer of industrial robots targeted at factory automation
- FANUC industrial robots manufacturer with the biggest install base
- Rethink Robotics creator of the collaborative robot Baxter
- DJI industry leader in drones for both commerical and industrial needs.
- The construct sim A cloud based tool for building modern, future-proof robot simulations.
- Fetch Robotics A robotics startup in San Jose, CA building the future of e-commerce fulfillment and R&D robots.
- Festo Robotics Festo is known for making moving robots that move like animals such as the sea gull like SmartBird, jellyfish, butterflies and kangaroos.
- Neobotix manufacturer of industrial, research and as well as custom mobile robots.

### Misc

- IEEE Spectrum Robotics robotics section of the IEEE Spectrum magazine
- MIT Technology Review Robotics robotics section of the MIT Technology Review magazine
- reddit robotics subreddit
- RosCON conference (video talks included)
- Carnegie Mellon Robotics Academy
- Let’s Make Robots
- How do I learn Robotics?
- Free NXT Lego MindStorms NXT-G code tutorials
- StackExachange Robotics community
- 47 Programmable robotic kits
- Linorobot A suite of DIY ROS compatible robots
- Hexapod Robot Simulator - Solve and visualize hexapod robot inverse kinematics and gaits in the web
- PythonRobotics - Implementations of various robotics algorithms in python

### Related awesome lists

- Awesome Artificial Intelligence
- Awesome Computer Vision
- Awesome Machine Learning
- Awesome Deep Learning
- Awesome Deep Vision
- Awesome Gazebo
- Awesome Reinforcement Learning
- Awesome Robotics
- Awesome Robotics Libraries
- Awesome ROS2
- Awesome RoboCupJunior Soccer