Ebauche du protocol de communication entre le drone et le PC

Vendredi 3 Décembre

Baromètre : Variation de tension par mètre

Données

  • "La pression atmosphérique diminue avec l'altitude : elle diminue, exponentiellement, d'un facteur 10 chaque fois que l'on s'élève de 16 km"
  • "À faible altitude, la pression atmosphérique baisse de 1 mbar chaque fois que l'on s'élève de 8 mètres"
  • Sensibilité du capteur : 45 mV/kPa (4,5 mV/mbar)
Sources :

Calculs

Evolution de la pression par mètre : 1/8 = 0,125 mbar/m
Evolution de la tension par mètre : 0,125 * 4,5 = 0,5625 mV/m

Conclusion

Ce capteur a une sensibilité de 0,5625 mV pour un mètre d'altitude. Cela correspond au changement d'un bit dans le registre associé.

Ce capteur n'a pas une sensibilité suffisante. Il a été remplacé par un nouveau (voir plus bas).

Vendredi 10 Décembre

Réception du module wifi

Le module wifi Lantronix MatchPort b/g est arrivé. La documentation est disponible sur la forge.

Changement de baromètre

Suite aux résultats insuffisants du capteur pécédemment séléctionné, nous avons choisi un nouveau capteur de pression, le SenSym SX01DN, qui possède une meilleure sensibilité. Voici donc les nouvelles caractéristique de ce capteur :

Données

  • Cf. données plus haut
  • Sensibilité du SenSym SX01DN : 4 mV/V/psi

Calculs

Conversion des valeurs
Le capteur sera alimenté en 5 V, et le signal sera amplifié (x100) par un INA126. La sensibilité du capteur devient donc 2 V/psi.
1 bar = 1000 mbar = 14,5 psi

Par conversion en millibars, la sensibilité du capteur devient 29 V/bar, soit 29 mV/mbar.

Evolution de la tension par mètre
Rappel : Evolution de la pression par mètre : 1/8 = 0,125 mbar/m
29 * 0,125 = 3,625 mV/m

Conclusion

Ce capteur, après amplification, a une sensibilité de 3,625 mV pour un mètre d'altitude. La résolution étant de 13 bits (0,6 mV/bit), nous obtenons un changement de 6 bits par mètre.

Vendredi 17 Décembre

Réception du module wifi

La centrale à inertie Sparkfun 6DOF est arrivée. La documentation est disponible sur la forge. Elle doit être alimentée en 3.3 V. Nous utiliserons donc également le régulateur de tension LM317.

Recherche de documentation

Nous débutons donc les recherches concernant les formules mathématiques à utiliser pour obtenir des données exploitables à partir de la centrale à inertie. Nous recherchons notamment des informations concernant l'espace euclidien et les angles d'Euler.

Mardi 18 Janvier

Etude du module GPS

Le module GPS UV40 permet une transmission des données sur le port série en utilisant soit le protocole public NMEA, soit le protocole Sony. La sélection se fait selon la position d'un interrupteur sur la platine de test (bit actif ou non).

Un test en utilisant HyperTerminal nous a permis de déterminer la position de l'interrupteur permettant la réception en NMEA : (la broche rouche désigne une broche de l'interrupteur non connectée sur la platine de test)

La connexion a été établie à 4800bps. La documentation à ce sujet était contradictoire : Il est indiqué 4800bps en NMEA à la page 4, et 9600bbs à la page 29.

Un fichier montrant un exemple de trame reçu par cette connexion est attaché à cette page (gps_nmea_reception.txt).

Jeudi 20 Janvier

Tests de fiabilité du sonar

Le sonar étant le capteur le plus précis à notre disposition pour mesurer la distance par rapport au sol à faible altitude, il faut s'assurer de son bon fonctionnement.
Ce sonar va envoyer un train de 8 ondes après le déclenchement d'une mesure. On mesure ensuite le temps écoulé entre la fin de l'envoi des ondes et le premier echo recu, c'est à dire la première onde qui est revenue sur le capteur. On en déduit la distance parcourue par cette onde en admettant que la vitesse des ondes est de 340.29 m/s.

Fonctionnement

Pour effectuer une mesure de distance, il faut plusieurs étapes:
*Envoyer un signal de 10us au moins pour lancer le train d'ondes
*Attendre que les ondes soient envoyées pour démarrer la mesure
*Mesurer le temps mis par l'echo pour revenir (de 100us à 18ms) ou non (36ms)
*Attendre 10ms pour s'assurer de ne pas capter des echos de la précédente mesure

Le fait que ce capteur envoie un train d'ondes pour mesurer une distance implique qu'il balaye une large zone devant lui (de l'ordre de 55°). Ainsi, si un objet est placé sur un bord de ce cône de détéction, le sonar va capter son echo en premier et non la distance de l'objet en face de lui. En interieur cela peut être un problème du fait de nombreux objets présents dans l'espace de vol, mais en exterieur, cela ne posera pas de soucis particulier car les zones de mesure seront dégagées.

Précision des mesures

La distance maximale est de l'ordre de 3m environ, mais après plusieurs tests, il semble que 2m70 soit plus proche.

Effectuer une mesure complète prend énormément de temps (plus de 46ms dans le pire des cas) ce qui empèche de faire un grand nombre de mesures pour préfiltrer en gardant tout de même une valeur correct.
On ne peut pas prendre trop de temps à faire des mesures car en peut de temps, le drone peut avoir des mouvements importants qui rendent les valeurs mesurées obsolètes.

En appliquant donc simplement un filtre de Kalman à chaque mesure directement, avec un sonar totalement immobile, on obtient une précision au millimètre.
En faisant des test en tenant le sonar à la main (donc avec une légère instabilité), la précision est de 5mm environ.

gps_nmea.png (1,715 ko) Kevin Subileau, 18/01/2011 14:54

gps_nmea_reception.txt Magnifier (7,393 ko) Kevin Subileau, 18/01/2011 15:16