Suppression de PWM sur Ardrone Parrot 2.0

8

J'ai des problèmes avec l' ARDrone Parrot 2.0 et j'espère que quelqu'un d'autre rencontrera la même chose.

En vol stationnaire, le drone perd (apparemment) de l'altitude au hasard puis récupère. Il le fait sans recevoir aucune commande de vitesse et doit tenir l'altitude.

Nous utilisons les pilotes de l' ardrone_autonomy (branche dev_unstable) sur github . Nous sommes en mesure de regarder les sorties PWM envoyées au moteur et elles tombent de la commande de vol stationnaire faire une petite valeur avant de revenir exponentiellement à la valeur de vol stationnaire lorsque cette baisse se produit.

Le problème pourrait être une communication entre l'IMU et le contrôleur embarqué ou sur l'implémentation de notre contrôle logiciel.

Quelqu'un a-t-il vu un problème similaire ou des suggestions pour tester / dépanner ce qui se passe?

Daman
la source
Utilisez-vous l'ARDrone à l'intérieur ou à l'extérieur? Déduit de la question précédente sur quel terrain essayez-vous de survoler? Certains terrains peuvent provoquer des problèmes de vol stationnaire. Avez-vous testé dans différents environnements? Quelle stratégie de contrôle utilisez-vous dans la mise en œuvre de votre contrôle logiciel? PID? Tenez-vous la hauteur à l'aide du capteur à ultrasons intégré?
Tom Bamber

Réponses:

1

Je n'ai pas utilisé l'ARDrone mais j'ai de l'expérience avec le maintien de la hauteur sur un autre pilote automatique.

Sans plus d'informations, une recherche rapide sur Google a trouvé un problème de micrologiciel possible avec ARDrone dans ce fil .

Si vous utilisez le capteur à ultrasons intégré, comme je l'ai mentionné dans mon article sur Comment puis-je détecter le bord d'une table? . Les capteurs à ultrasons peuvent sauter à zéro de façon sporadique pendant une partie de la seconde, ce qui pourrait faire en sorte que l'ARDrone change d'altitude, puis revient à la valeur réelle.

Tom Bamber
la source
Tom, nous utilisons actuellement le drone à l'intérieur. Nous sommes dans notre laboratoire qui est un sol de moquette et utilisant des carreaux colorés à contraste élevé pour que le système de vision se verrouille. Nous n'avons pas pu tester beaucoup dans d'autres environnements en raison de la configuration actuelle de notre laboratoire à l'université.
Daman
Comme pour une stratégie de contrôle, nous utilisons un contrôleur xbox pour voler en utilisant un nœud ROS pour lire les entrées. Les fichiers ROS que nous obtenons proviennent du github ARdrone_autonomy. La commande est envoyée au contrôle embarqué du drone qui semble être un PID. Nous avons mieux réduit notre problème depuis mon premier post. Le ROS a un sujet des données de navigation internes qui donne des informations sur le moteur. Il montre les valeurs PWM qui sont envoyées au moteur ainsi qu'un terme intégral interne pour le contrôleur PID d'altitude. Nous constatons que la valeur est réinitialisée de 60 à 0 lorsque le quad tombe
Daman
Pour confirmer que les signaux PWM envoyés au moteur sont réinitialisés de 60 à zéro lorsque le quadruple tombe? Si tel est le cas, il faudrait remonter et déterminer d'où vient l'erreur mathématique. Je pense que le problème vient de la façon dont vos données de capteur sont utilisées dans la cale de hauteur, vous ne pouvez pas régler votre PID avec ce genre d'erreur.
Tom Bamber