[![Contributors][contributors-shield]][contributors-url] [![Forks][forks-shield]][forks-url] [![Stargazers][stars-shield]][stars-url] [![Issues][issues-shield]][issues-url] [![BSD-3 License][license-shield]][license-url]
GAAS is an open-source program designed for fully autonomous VTOL(a.k.a flying cars) and drones. GAAS stands for Generalized Autonomy Aviation System. We hope to accelerate human use of the sky through the full autonomy of flying vehicles. This project started in 2016 as a hobby for two students. 2019 we open-source the project and hope to develop GAAS full time in the long term.
GAAS provides a fully autonomous flight platform based on lidar, HD-map relocalization, path planning, and other modules for aircraft. In contrast to the autopilot technology previously available only for consumer-grade drones, GAAS aims for robust fully autonomous flight for human-carrying, and can be easily combined with national air traffic control. At GAAS you can see many of the automotive-grade(AG) technologies that were previously only available in self-driving cars. And there is a wealth of extensibility to help you customize your development to your goals.
A video has been uploaded to show the whole pipeline. You may need to download this video.
1.About GAAS
2.Differences between GAAS deprecated and new GAAS
3.Build with
4.Getting Started
5.License
- Features and roadmap
We use lidars, as main sensor, rather than vision algorithms.
GAAS deprecated is based on computer vision(CV), but fully vision-algorithms-based framework is not robust enough for autonomous flying.
For flying cars and large cargo drones, vision-based algorithms suffer from:
-
Lack of robustness, especially at night or over-exposed conditions. When air vehicles are flying at high speed, the localization is not stable enough which may cause severe accidents(vital to large air vehicles).
-
Computer vision is computationally expensive and does not easily run in real-time on mobile devices.
-
The neural network-based approach is accident-prone in extreme scenarios, and the failures are not easily reproducible.
These problems are not allowed to occur in manned flight scenarios.
Therefore, the introduction of LIDAR seems to be necessary at present. That's why we make new GAAS from scratch, and refactored all modules in cpp.
#step<1> Check your network status ping github.com
#step<2> tools sudo apt install vim bwm-ng htop tmux git net-tools cmake-gui
#step<3> docker(for simulation only)
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo usermod -aG docker gi
docker pull gaas/mavros-gazebo7-px4
#step<4> ros_melodic ./install_ros_melodic.sh
#step<5> opencv 3.4.5 #download cmake-gui make sudo make install
#step<6> glog
#https://github.com/google/glog.git git checkout -b v0.4.0 #cmake make make install
#step<7> pcl 1.8 build from source
#step<8>(for icp cuda only) update your cmake to 3.14.7 and install cuda 10.2
OS: Ubuntu 18.04
PX4(simulation only) 1.8.0
To build the project, setup all dependencies and run:
./build_all.sh
To run GAAS_contrib algorithms:
cd algorithms ./run_gaas_contrib_algorithms.sh
And checkout your L5 flying car demo in simulation environment!
GAAS is under BSD 3-Clause License.
Please Checkout by this link