The field of robotics needs wide areas of technologies such as mechanical engineering,
electrical engineering, computer science, and artificial intelligence (AI).
This project, PythonRobotics, only focus on computer science and artificial intelligence.
Autonomous Navigation
Autonomous navigation is a capability that can move to a goal over long
periods of time without any external control by an operator.
To achieve autonomous navigation, the robot needs to have the following technologies:
- It needs to know where it is (localization)
- Where it is safe (mapping)
- Where is is safe and where the robot is in the map (Simultaneous Localization and Mapping (SLAM))
- Where and how to move (path planning)
- How to control its motion (path following).
The autonomous system would not work correctly if any of these technologies is missing.
In recent years, autonomous navigation technologies have received huge
attention in many fields.
For example, self-driving cars, drones, and autonomous mobile robots in indoor and outdoor environments.
In this project, we provide many algorithms, sample codes,
and documentations for autonomous navigation.
Localization
Mapping
SLAM
Path Planning
Path Tracking