16
février 2022
GPS rescue sur Betaflight, bien le configurer ?
Rédigé par Lorent Aucun commentaire Mis à jour le 16/02/2022
Le GPS rescue c’est quoi ?
Tout d’abord les fondamentaux à propos du GPS rescue. Si vous ne connaissez pas, c’est un mode qui permet de faire un semblant de RTH, comme sur les quads de prise de vue tels que les Mavics par exemple. Il est utilisé pour permettre de récupérer votre quad en cas de failsafe, ou lors d’une perte de la vidéo.
Attention, le but premier du GPS rescue, c’est vraiment de ramener le quad à portée de contrôle, il n’atterrira pas à vos pieds comme le ferait un Mavic, mais le quad va se crasher de manière « douce » dès qu’il s’approchera de vous.- Le GPS rescue est une fonctionnalité expérimentale
- C’est une fonctionnalité à utiliser avec précaution
- La
configuration va changer avec l’évolution des versions, et est celle
pour la dernière release stable de Betaflight, donc la 4.0.
J’essaierai de la mettre à jour pour les prochaines versions. - Si vous voulez utiliser le GPS rescue comme un failsafe, il faut ABSOLUMENT activer les Sanity checks!
Avant de configurer et tester le GPS rescue, il faut calibrer
l’accéléromètre, et s’assurer que le mode angle marche bien. On vérifie
ça en activant le mode angle, et en vérifiant que le quad se stabilise
de lui-même en vol, et qu’il se comporte normalement.
Si le quad ne se comporte pas normalement, il faut calibrer de nouveau l’accéléromètre et tester de nouveau le mode angle.
Paramètres du GPS rescue
Je vais vous énumérer et expliquer les différents paramètres qui composent le GPS rescue :
initial_alt=[number] (Par défaut 50)
C’est le paramètre le plus important. Quand le rescue est activé, le quad va se tourner vers son point de départ, et monter vers une altitude dite « safe », ou le quad ne risquera pas de rencontrer un obstacle.
Cette altitude est exprimée de 2 manières :
-Si
votre quad ne va pas plus haut que l’altitude définie durant le vol,
alors le quad va monter à cette altitude définie lors du rescue
-Si
votre quad dépasse l’altitude définie, alors il va monter jusqu’à
l’altitude maximum enregistrée durant le vol, à laquelle s’ajouteront 15
mètres supplémentaires (Exemple : initial_alt =50m, altitude maximum du
vol = 87m, donc altitude du rescue = 87+15=102m)
Avec ce paramètre, on est sur de ne pas rencontrer un obstacle lors de la phase de rescue.
gps_rescue_ground_speed=[number] (Par défaut 2000)
Cela correspond à la vitesse à laquelle votre quad va revenir vers vous. Elle est exprimée en cm/s. La valeur par défaut est de 2000cm/s, soit 72km/h
Vous pouvez et il est même recommandé d’ajuster ce paramètre selon la manière dont vous volez et ou vous volez.
gps_rescue_angle=[number] (Par défaut 32)
Ce
paramètre correspond à la valeur maximale de tilt autorisée lors du
rescue. Ce paramètre évite d’atteindre une vitesse trop élevée lors du
rescue.
Notez que plus l’angle est haut, plus il va être difficile pour la FC de maintenir une altitude stable lors du rescue.
gps_rescue_descent_dist =[number] (Par défaut 200)
C’est la distance à partir de laquelle votre quad va commencer à descendre vers le point de décollage.
set gps_rescue_ascend_rate = [number] (default is 500)
C’est la vitesse verticale à laquelle votre quad va atteindre l’altitude initiale. Elle est exprimée en cm/s, et par défaut est de 500cm/s, soit 5m/s
gps_rescue_descend_rate = [number] (Par défaut 150) (ajouté dans betaflight 4.1)
C’est la vitesse verticale à laquelle votre quad va descendre une fois qu’il sera assez proche de vous. Elle est exprimée en cm/s, et par défaut est de 150cm/s, soit 1.5m/s
gps_rescue_throttle_min and gps_rescue_throttle_max (ajouté dans betaflight 4.1)
D’après le github : only limit the escursion of the the new pid controller, et sur la page dédiée, on lit que ça correspond à « Gps rescue pid controller based on vertical velocity », d’après ce que j’en comprend, ça correspondrait à la modification des paramètres PID en fonction de la vitesse verticale, donc la vitesse d’ascension et de descente.
Attention, c’est au conditionnel, parce que je ne sais pas concrètement à quoi ça sert, et je ne l’utilise pas, malgré que mon rescue fonctionne parfaitement.
gps_rescue_alt_mode = [MAX_ALT, FIXED_ALT, CURRENT_ALT] (ajouté dans betaflight 4.1)
On peut choisir quel mode sera utilisé pour définir l’altitude du quad lors du rescue. Les modes disponibles sont les suivants :
–MAX_ALT paramètre par défaut, l’altitude va être gps_rescue_initial_alt, ou l’altitude maximum enregistrée durant le vol, +15m
–FIXED_ALT le quad va toujours atteindre l’altitude paramétrée avec gps_rescue_initial_alt, et ne pas tenir compte de l’altitude maximale durant le vol
–CURRENT_ALT
le quad va rentrer avec la même altitude que celle à laquelle il était
au moment de l’activation du rescue. Ce mode n’est cependant pas à
privilégier
gps_rescue_sanity_checks = [RESCUE_SANITY_ON, RESCUE_SANITY_OFF, RESCUE_SANITY_FS_ONLY]
Ce paramètre sert à définir les vérifications qui seront faites pour assurer le bon fonctionnement du rescue. Il va vérifier que :
-Le GPS est toujours connecté à la FC
-Le GPS envoie un fix valide à la FC
-Le quad n’a pas subi un gros choc (qui peut-être du à un crash)
-Le nombre de satellites est égal ou au dessus de gps_min_sats
-Le quad revient bien vers vous une fois l’altitude de rescue atteinte
Si
une de ces conditions n’est pas valide, le rescue ne se déclenchera pas
à l’activation (failsafe ou switch), et le quad va tomber.
Mais heureusement, il y’a quelques secondes de tolérance pour les deux dernières conditions, avant que le quad ne tombe si elles ne sont pas valides. Si par contre au bout des quelques secondes, tout n’est pas valide, le quad tombera inévitablement.
On peut éventuellement choisir d’activer les sanity checks, soit en permanence, soit jamais, ou simplement si le GPS rescue se déclenche via le Failsafe. Il est par contre recommandé de toujours laisser les sanity checks activés pour éviter tout danger.
gps_rescue_min_sats = [number] (Par défaut 8)
Le quad ne va pas armer si il y’a moins de 8 satellites captés par le GPS. La valeur par défaut est de 8, il est recommandé de ne pas baisser cette valeur pour avoir un fix fiable.
gps_min_sats = [number] (Par défaut 8)
Ça correspond à la valeur minimale de satellites pour les sanity checks. Je vous recommande de ne pas changer cette valeur, si vous avez moins de 8 satellites, ne décollez pas et attendez un bon fix.
gps_rescue_allow_arming_without_fix = [ON, OFF]
Par défaut, vous ne pouvez par armer sans avoir un ifx GPS avec le rescue configuré sur un switch ou même en failsafe. Ça évite de partir sans pouvoir avoir de rescue fonctionnel, et donc de perdre le quad en cas de failsafe.
Mais si vous voulez vraiment décoller, parce que vous êtes pressé, ou que vous ne captez pas du tout de GPS, vous pouvez mettre cette commande en ON, et vous pourrez décoller sans avoir de fix GPS. Mais attention, si vous décollez sans fix, vous n’aurez pas de rescue, et vous aurez un message « RESCUE OFF » dans votre OSD.
Si vous avez assez de satellites pendant le vol, il vous faudra vous poser et redécoller pour avoir un rescue fonctionnel.
Configuration par défaut
Premier test avec valeurs stock
Maintenant qu’on a vu tous les paramètres, et leur rôle, on va tester le GPS rescue avec les paramètres par défaut. Affectez le GPS rescue à un switch.
Attendez d’avoir un bon fix GPS, et commencez à voler
tout droit jusqu’à une distance de 100m + votre distance de descente
(gps_rescue_descent_dist).
Vous devriez voir la flèche « home »
pointer vers vous. Faites bien attention, si la flèche NE POINTE PAS
vers vous, N’ACTIVEZ PAS LE RESCUE, le quad ira dans la direction
pointée par la flèche. Si vous avez un message « Rescue non available »,
continuez à lire l’article, j’en parle à la fin.
Par contre, si tout est bon, activez le GPS rescue.
IMPORTANT : soyez prêt à désactiver le GPS rescue et à reprendre le contrôle si votre quad ne pointe pas vers vous, ou si il part dans une autre direction.
Si tout se passe bien, vous devriez voir votre quad revenir vers vous et commencer à descendre. Par contre, ne le laissez pas trop s’approcher du sol ou de vous, ou le quad va tomber. Reprenez le contrôle avant.
Testez ensuite dans d’autres directions, et à des distances plus grandes, afin de prendre confiance avec cette fonctionnalité.
J’ai un message « RESCUE N/A », ça veut dire quoi ?
Dans certains cas, en plein vol, vous aurez un message « RESCUE NON AVAILABLE » qui s’affichera sur votre OSD. Ça veut dire quoi concrètement ?
Si le rescue est mappé en tant que Failsafe ou sur un switch, il y’a un minimum de conditions qui seront en permanence vérifiées pour assurer le bon fonctionnement du rescue. Ces paramètres sont la vérification d’une connexion avec le GPS, d’un fix valide, et du nombre de satellites via la fonction « gps_min_sats » . Si une de ces conditions n’est pas valide, le message « RESCUE NON AVAILABLE » s’affichera sur votre OSD.
Cette fonctionnalité n’est qu’un avertissement, et se fait indépendamment des sanity checks. En effet, si le rescue est activé, pendant que le « RESCUE NON AVAILABLE » s’affiche sur votre OSD, il y’aura une courte période avant que les sanity checks ne se fassent. Ça vous laissera une chance de récupérer toutes les conditions pour que le rescue s’effectue sans problèmes.
Paramétrer en failsafe
Si vous êtes arrivé jusque là, c’est que tout marche bien, et que vous pensez le GPS rescue assez fiable pour l’utiliser en guise de failsafe.
Vous pouvez donc paramétrer le GPS rescue en mode failsafe. Pour cela, tapez dans le CLI : set failsafe_procedure = GPS-RESCUE , puis save. Dès que vous perdrez le lien radio, le rescue s’activera. Vous pouvez aussi sélectionner cette option directement dans l’onglet failsafe.
(Depuis la 4.0)
Une fois le lien radio récupéré, le rescue
stoppera, et il faudra que vous repreniez le contrôle, donc soyez prêt,
parce que la transition pourrait être brutale.
Sinon, autre option,
pendant la période de failsafe, il est recommandé d’activer le switch de
rescue pour que la transition ne soit pas trop brutale.
(Depuis la 4.1)
Après
que le lien radio soit restauré, il faut un mouvement des sticks (peu
importe lequel, yaw, roll, pitch) d’un certain pourcentage au dessus de
la valeur failsafe_stick_threshold (Par défaut 30) avant de sortir du
mode failsafe. Concrètement, cela veut dire que pourrez reprendre le
contrôle du quad seulement une fois que vous aurez effectué un mouvement
d’un des sticks d’au moins de 30% de sa position d’origine. La valeur
d’origine peut-être réduite si vous voulez une transition moins brutale
lors de la reprise du contrôle.
Erreurs courantes / soucis possibles
- Assurez vous que vous volez plus loin que la distance minimale pour le rescue (gps_rescue_descent_dist (Par défaut 100m)) avant de déclencher le rescue. Si vous volez moins loin que cette distance, le quad tombera. On en a déjà parlé, mais c’est un rappel.
- Dans certains cas, l’accéléromètre peut peut fonctionner bizarrement, et peut empêcher le bon fonctionnement du rescue. Il vous faut vérifier le bon fonctionnement de l’accéléromètre en volant longtemps et en activant le mode angle. Si le quad ne se stabilise pas proprement, il ne faudra pas utiliser le GPS rescue avec ce quad.
- Certains GPS ont besoin d’une configuration avec U-Center pour fonctionner. Vous avez un tuto ici
- Le GPS rescue est une fonctionnalité en développement. Donc si vous n’utilisez pas la dernière version stable de Betaflight, vous pourrez avoir des soucis. Soyez surs d’utiliser la dernière version stable de Betaflight (4.2 actuellement)
- Le GPS rescue n’est pas et ne sera jamais entièrement fiable, donc il ne soit jamais être utilisé comme la seule mesure pour récupérer un quad perdu. D’autres techniques existent et sont à utiliser en complément pour retrouver un quad perdu, comme afficher les coordonnées GPS sur votre OSD, (avec un DVR fonctionnel bien sur), utiliser un log de télémétrie sur votre radio, utiliser un GPS autonome.
Petits tips
Selon le type d’accus embarqués (Lipo / Liion), adaptez les valeurs de vitesse max et de montée, afin de ne pas demander plus à votre accu que ce qu’il pourrait fournir (un full throttle pour monter à 5m/s, les Liions apprécieraient pas).
Pour le montage du GPS,
faites bien attention à 2 choses, que l’antenne soit orientée vers le
ciel, et qu’elle ne soit pas masquée par d’autres pièces du quad
(antennes, protections 3D,….)
Il faut également éloigner le plus possible le GPS des antennes du quad pour assurer la meilleure réception possible.
Je vous recommande également de désactiver le GPS rescue lorsque vous volez en intérieur en bandos, ou lors de vols dans des endroits avec des obstacles au dessus de vous, comme du vol en forêt. Vous risqueriez de casser votre quad qui remonterait directement dans un obstacle au dessus de vous.