Teleguide2013-1

De Wiki de bureau d'études PeiP
Révision datée du 27 janvier 2014 à 17:38 par Troj (discussion | contributions) (La construction du robot)

La construction du robot

Pour la construction du robot, nous sommes partis sur un châssis rectangulaire, afin de disposer de la plus grande surface au dessus de celui-ci.

Constr1.jpg

Nous avions décidés, au début de la construction, de le porter par des roues. Mais, remarquant que nous disposions que de 2 servo-moteurs, nous n'arriverions pas à faire tourner les 2 roues de derrière. Nous avons donc choisis de mettre des chenilles.

Constr2.jpg

Enfin, quand la construction fut finie, nous avons implantés un programme dans le NXT 2.0 afin de tester l'avance du robot, et la fluidité des mouvements.

Constr3.jpg

Mais un problème s'est posé, les moteurs ne faisaient pas assez tourner les roues arrière de notre robot. Même à pleine puissance. Dans la configuration de notre robot, nous avons donc optés pour mettre des roues normales et des axes tournants aux roues arrière, ce qui fait de notre robot un 2 roues motrices. Après avoir implanté notre programme de test qui le fait avancer, légèrement tourner à droite, puis a gauche, voici une petite vidéo montrant les premiers début de notre robot.

FinaleSansFB.jpg
FinaleSansFB2.jpg
FinaleFB.jpg

Téléguidage part I : Le Bluetooth

Dans un premier temps, pour le téléguidage du robot, nous avons optés pour un téléguidage via le réseau Bluetooth

Le réseau Bluetooth

220px-Bluetooth logo.png Le réseau Bluetooth est une technique de communication sans fil. Elle utilise les ondes radio courte distance. Il a été inventé pour simplifier les connexions entre appareils électroniques (enlever la tonne de câbles qui nous embête ...)

Spécificités du Bluetooth - Avantages et inconvénients

Malgré sa grande ingéniosité, le Bluetooth est d'une très faible portée. Sur le marché, la plupart des appareils équipés de Bluetooth ont une portée de 10 à 20 mètres, ce qui rend son utilisation très limitée. De plus, le débit pour ce genre de transmission est très faible. Cependant, il est avantageux de l'utiliser pour des communications courte distance car il est très peu couteux en énergie. En effet, le NXT 2.0 disposant d'un Bluetooth de classe 2, il consomme que 2,5 mW ! Le fait d'utiliser directement le Bluetooth pour communiquer avec le NXT ne rendra pas le robot téléguidable au sens propre du terme, au vue de la très courte portée des transmissions. Mais nous allons quand même expliquer comment nous nous y sommes pris pour réaliser un téléguidage de ce genre.

Processus de téléguidage Bluetooth

Tout d'abord, nous avons commencés par "associer" les 2 périphériques, c'est-à-dire que nous faisons en sorte de chaque appareil reconnaisse l'autre. Ensuite, dans un premier temps, pour tester la connexion, nous nous sommes servis de la télécommance du logiciel "Lego MindStorm" pour le commander a distance. Mais, le télécommander via un PC n'est pas notre but principal, notre but étant de le téléguider avec une télécommande portable ! Nous avons donc pris un système embarqué de type "FoxBoard" pour réaliser l'embarquement du système.

La FoxBoard : Description et utilisation

La FoxBoard est un mini ordinateur embarqué. Il est muni du système d'exploitation UNIX et dispose de 2 ports USB, 1 port Ethernet et 2 ports série. Nous nous servons de la FoxBoard comme relais pour la transmission des commandes.

Pour utiliser la FoxBoard, nous ne nous servons pas de son serveur web, mais d'un logiciel d'émulation de terminal PuTTY. PuTTY est un logiciel d'émulation de terminal et est aussi un client.

PuTTY : Utilisation et contrôle

Configuration de PuTTY

Pour configurer PuTTY, nous avons connectée la FoxBoard à l'ordinateur. Elle est connecté sur le port COM5, et la vitesse de transmission est de 115200 Bit/s.

Utilisation de PuTTY

Après validation des paramètres de la configuration, un terminal s'ouvre. C'est le terminal de commande de la FoxBoard. Pour contrôler le NXT 2.0, nous avons besoin d'un programme de contrôle (control.c) qui permet d'envoyer les ordres par Bluetooth. Tout d'abord, il faut associer les 2 appareils. Pour cela, la commande bluetooth-agent code permet de connecter les 2 appareils. Ensuite, la commande controle -s device address permet d'associer complètement les 2 appareils en envoyant l'adresse MAC de la NXT. Pour envoyer un ordre, la commande est la suivante : La syntaxe de cette commande est : controle -c mailbox number integer Le mailbox number est le numéro de la boîte aux lettres qui va reçevoir le message transmis. le integer est le numéro que l'on va envoyer. Nous avons le choix entre 4 possibilités :
1 : Le robot avance
2 : Le robot tourne à gauche
3 : Le robot tourne à droite
4 : le robot recule

Programme de commande du robot pour la brique intelligente

Pour commander les moteurs, il faut implémenter un programme pour la NXT 2.0 pour gérer les messages Bluetooth entrant.
L'algorithme est le suivant :
LOOP
SI message Bluetooth reçu ALORS
METTRE le message dans la variable NOMBRE1
COMPARER la valeur de NOMBRE1 A
1 : Avance du robot
2 : Rotation du robot vers la gauche
3 : Rotation du robot vers la droite
4 : Le robot recule
GOTO LOOP

CapEcrComBth.jpg