electronika

Test du module boussole CMP03

 boussole_electronique.jpg

Et oui une bonne boussole pour aider votre robot à retrouver son chemin ne serait pas du luxe, je suis sûr que vous aimerez ajouter ce module à votre robot  ou tout simplement à votre montage qui  utilise probablement déja des composants i2c.

Opération de calibrage

Cette opération n’est pas forcement nécessaire pour obtenir des résultats mais il vaux mieux l’effectuer quant même.

A l’oscilloscope

Vous pourrez constater sans aucun programme le bon fonctionnement du module boussole grâce a la sortie pwm dont le rapport cyclique change en fonction du pointage de votre boussole. Vous constaterez une fréquence de l’ordre de 10 hertz.

En i2C

Ce module dispose d’une adresse de base qui est c0, celle ci est modifiable par soft.

Il existe la aussi 2 type de données utilisable. Dans un premier cas un registre ayant une valeur de 0 à 255 représentant 0 à 360degrés. Dans ce cas la précision n’est pas très importante. (360/255= 1.4°)

Sinon, il est possible de lire 2 registres afin d’obtenir une meilleur précision, dans ce cas en ajoutant ces 2 registres de 8 bits on obtient une valeur sur 16 bits qui représentera 0 à 360,0 dégrées.

Le code

Morceau de code est réalisé pour le compilateur css. Ici on lit le registre 01 sur 8 bits (moins précis)

temp = 0;

i2c_start();
i2c_write(0xc0); //adresse du module par défaut
i2c_write(1); // registre sur 8 bits de 0 à 255 représentant 0 à 360 degrés
i2c_start();
i2c_write(0xc1);// adresse du module boussole en mode lecture (bit read/write à 1)
temp = i2c_read(0) ; // valeur récupéré dans temp - 0 pour NO acknowledge

La documentation

http://www.lextronic.fr/~lextronic_doc/Applications_A.pdf

http://ancrobot.free.fr/Old_version/fichtech/electronique/Boussole/index.htm

Le prix

le module CMP03 est disponible chez lextronic au prix de 45,50 euros TTC.

juin 5th, 2009 Posted by admin | Electronique | no comments