Automate PyDrone : locuste.drone.automata
LOCUSTE : Automate Pyrhon connectée aux drones ANAFI / PARROT par le biais de la SDK OLYMPE Python (Raspberry PI) Requiert une version installée de PARROT OLYMPE avec les commandes suivantes : source PATH/parrot-groundsdk/products/olympe/linux/env/shell export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1 (Si ARM)
Le project Locuste se divise en 4 grandes sections :
- Automate (Drone Automata) PYTHON (https://github.com/DaemonToolz/locuste.drone.automata)
- Unité de contrôle (Brain) GOLANG (https://github.com/DaemonToolz/locuste.service.brain)
- Unité de planification de vol / Ordonanceur (Scheduler) GOLANG (https://github.com/DaemonToolz/locuste.service.osm)
- Interface graphique (UI) ANGULAR (https://github.com/DaemonToolz/locuste.dashboard.ui)
Tout le système est embarqué sur une carte Raspberry PI 4B+, Raspbian BUSTER.
- Golang 1.11.2
- Angular 9
- Python 3.7
- Dépendance forte avec la SDK OLYMPE PARROT : (https://developer.parrot.com/docs/olympe/, https://github.com/Parrot-Developers/olympe)
Détail des choix techniques pour la partie Automate :
- [Python] - Imposé par la SDK OLYMPE PARROT
- [SocketIO] - Elément facile intégré avec Angular, Node et Python
- [ZMQ] - Système de messaging simple et rapide (communications via Sockets en C)
Evolutions à venir :
- Refactoring global
- Correctifs de sécurité
- Scission totale de la section COMMON
- Ajout de nouveaux événements pour la gestion GPS / WIFI (étude plus poussée d'AR.SDK)
- Changement dans la gestion du DRONE (et chemins d'accès vers les logs) - implémenter des procédures et processus en cas d'interférences ou perte de signal