9 Degree Of Freedom – Razor IMU AHRS

La centrale inertielle Razor IMU est une centrale intégrant Gyro, Accéléro et Magnétomètres suivant les trois axes . Elle comporte un microcontrôleur Atmega328 (compatible Arduino). Des programmes ont d’ailleurs été développés pour la transformer en AHRS (Attitude and Heading Reference System).

Elle constitue une solution a bas coût (95 euros chez Sparkfun) et de faibles dimensions. Et c’est open-source.

Voila mes manipulations, pas-à-pas, pour prendre en main cette centrale sous Linux (ubuntu). Les étapes sous Windows sont sensiblement les mêmes.

ETAPE 1 : test du bon fonctionnement de la centrale

A l’achat, la centrale comporte un programme de test qui permet de récupérer les données brutes des capteurs. Pour cela, il nous faut un convertisseur USB-UART. Au hasard, je conseille celui-là qui est trop bien et open-source et tout et tout :).

On connecte le module USB-UART à la centrale (Rx1 sur Tx2, Tx1 sur Rx2, 3.3V et GND). On place l’interrupteur du convertisseur sur la position 3.3V et on le branche sur un port USB.

Ouvrez ensuite une console et tapez les commandes suivantes :

sudo apt-get install ckermit (Installation du logiciel ckermit)
kermit -l /dev/ttyUSB0
(Lancement du logiciel sur le port série /dev/ttyUSB0)
set flow-control none
(Paramétrage de la communication série)
set carrier-watch off (Bis)
set speed 38400
(Spécification du Baudrate)
connect
(Connection au port série)

Appuyez sur la touche Reset de la centrale, et, magie, un menu devrait apparaître dans votre console.

ETAPE 2 : Programmation de la centrale avec Arduino

Ok, notre centrale fonctionne correctement, maintenant on voudrait changer le programme du microcontrôleur. Téléchargez tout d’abord le logiciel Arduino et installez le.

J’ai remarqué que le bootloader nécessaire à l’utilisation d’Arduino n’est pas programmé lorsque l’on reçoit la carte. C’est donc la première chose à faire.

Pour cela, installons tout d’abord quelques outils pour la programmation :

sudo apt-get install gcc-avr avr-libc avrdude

Ensuite, il va nous falloir un programmateur. J’ai pour ma part utilisé un « Bus Pirate ».

Connectez le programmateur sur le connecteur ICSP (les 6 pins sur le coté). Pour connaitre le brochage du programmateur, voir par ici.

Allez dans le dossier « arduino/hardware/arduino/bootloaders/atmega », ouvrez une console à cet endroit et tapez la ligne suivante pour programmer le bootloader :

avrdude -c buspirate -P /dev/ttyUSB0 -p ATMEGA328P -U flash:w:ATmegaBOOT_168_atmega328_pro_8MHz.hex

Attendre que ca se passe, et c’est bon ! On peut maintenant utiliser le logiciel Arduino pour programmer la centrale.

ETAPE 3 : Test du code AHRS

Téléchargez les sources sur le SVN, en tapant la ligne suivante dans une console :

svn checkout http://sf9domahrs.googlecode.com/svn/trunk/ sf9domahrs-read-only

Copiez les sources dans le « Sketch folder » de Arduino, ouvrez le projet et programmez la carte.

Installez Python pour pouvoir lancer le script de démo :

sudo apt-get install python python-visual

Téléchargez le script .py de http://code.google.com/p/sf9domahrs, éditez le et modifiez le port (/dev/ttyUSB0 par exemple) et le baudrate (38400).

Branchez la centrale au PC au moyen du convertisseur USB-UART, et entrez python IMU_Razor9DOF.py dans une console pour lancer le script.

Tags: , , ,

  1. stitpingtali.science’s avatar

    An example of a simple open chain is a serial robot manipulator. These robotic systems are constructed from a series of links connected by six one degree-of-freedom revolute or prismatic joints, so the system has six degrees of freedom.

      (Citer)

    Répondre

Reply to stitpingtali.science Annuler la réponse.

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>