Robot mobile 2013 : Différence entre versions
(→Présentation) |
|||
Ligne 1 : | Ligne 1 : | ||
− | === '''Préparation du projet''' === | + | <include nopre noesc src="/home/pedago/pimasc/include/video-MobileRobots2012-iframe.html" /> |
+ | __TOC__ | ||
+ | <br style="clear: both;">=== '''Préparation du projet''' === | ||
== Présentation == | == Présentation == | ||
− | |||
− | |||
− | |||
1. Le but est de concevoir un robot capable de se déplacer dans un environnement ayant des obstacles. | 1. Le but est de concevoir un robot capable de se déplacer dans un environnement ayant des obstacles. |
Version du 23 mai 2013 à 09:56
Sommaire
=== Préparation du projet ===
Présentation
1. Le but est de concevoir un robot capable de se déplacer dans un environnement ayant des obstacles. Contrôlé par utilisateur 2. Le robot doit pouvoir être contrôlé à distance par une interface page web, surlaquelle l'environnement est visualisé grâce à une webcam.
Déplacement automatique
Le robot doit éviter des obstacles grâce à un capteur d'obstacle, il peut aussi bouger suivant une ligne grâce à son capteur de couleur.
Préparation du projet
Matériel requis Un premier châssis motorisé: Moteurs contrôlés par la carte Arduino ; Capteur d'obstacle (sonar) et capteur de couleur; Un webcam Foxboard Batterie de 5 V Un second châssis motorisé: Moteurs contrôlés par Phidgets ; Capteurs contrôlés par une carte Altium ; Un webcam Foxboard Batterie de 5 V
Tâches du projet à réaliser
- Châssis 1
- La vérification du montage et de la structure du châssis. Le premier châssis comporte des LEDs bleues pour des raisons esthétiques. Sonar est sur un servomoteur fixé à l'avant du châssis
- Installer et gérer le capteur de couleurs du premier châssis.
- Fixation de la foxboard à l'arrière du châssis
- Système Débian installé sur la foxboard
- Alimentation de la foxboard par des batteries
- Configuration de l'accès au réseau par wifi
- Gestion du robot par liaison série à l'aide de la foxboard
- Interface web pour la gestion du robot (configuration, contrôle...)
- Commande du robot via l'interface web
- Châssis 2 (Phidgets)
- La vérification du montage du capteur Ultrason , du servoMoteur et du servoControleur sur le robot et de la structure du châssis.
- Test des fonctions exemples récupérées sur Phidgets
- Développement du programme de gestion du robot
- Montage de la foxboard sur le robot
- Installation de la bibliothèque des phidgets
- Copie des fonctions de gestion du robot sur la foxboard
- Développement du programme de commande du robot par une page web
- Commande web
- Test du capteur de couleur Avago avec l'Arduino
- Développement du programme de lecture des données du capteur de couleur par l'arduino et envoi par liaison série à la foxboard
- Développement du programme de suivi de ligne du robot
- Configuration de l'accès au réseau par wifi
Test de la webcam sur la foxboard
1-2e séance
- Prise tous les matériaux
- Analyse du sujet et la recherche des documentations
- Methode de cablage sur l'arduino: http://www.robot-electronics.co.uk/htm/arduino_examples.htm#SRF05%20Ultrasonic%20Ranger
- AdresseInternet sur Arduino
- Problème à régler : les erreurs sur le montage
3-4e séance
- Objectif
- Réparation du montage
- Programme de test pour Arduino
- Travail réalisé
- Implantation du programme pour les moteurs
- Modifier la connexion pour animer la lumière pour la capteur de couleur
5-7e séance
- Objectif
- Tester le sonar pour Arduino
- Configuration de réseau pour la foxboard
- Travail réalisé
- Configuration de Minicom pour la foxboard sous SU
- Test le fonctionnement du capteur d'obstacle
- Avancement et arrêt grâce au capteur d'obstacle
- Problèmes
- Mauvaise configuration sur la foxboard, la carte interne cassée
- Gestion des valeurs du capteur pour le déplacement du châssis
8-9e séance
- Objectif
- Prise en main du second châssis
- Prise en main du protocole de communication
- Commande du servomoteur par la carte Arduino par la détection d'obstacles sur le premier châssis
- Travail réalisé
-Premier chassis
- Commande du servomoteur
- Détection d'obstacles par le châssis
- Commencement du programme la commande de la communication entre l'interface pages web et le châssis en mode serveur et mode client
-Second chassis
- Prise en main du second chassis à l'aide d'exemples recuperés sur le site phidgets.com
- Installation des librairies et de Phidget Control Panel pour Phidgets
- Recherche d'un logiciel de programmation
- Problèmes
- Echec de l'installation à cause de la mémoire sur disque C, mais l'essai de l'installation de Dev C++ sous windows, échec de compilation à cause des librairies statiques .a
- Incapacité d'éviter les obstacles pour le premier châssis
10-11e séance
- Objectif :
- Finition de la commande qui correspond à la rubrique contrôle sur la page web
- Essai de Phidget sous Linux
- Réglage de le problème d'éviter un obstacle pour éviter un obstacle
- Test le capteur de couleur pour le premier châssis
- Commander le robot en mettant en place un programme pour gerer le capteur de distance et la motricité du deuxième chassis.
- Programme Arduino pour la contrôle de la page web ('1' avancer, '2' reculer ', '3' tourner à gauche, '4'tourner à droit , '0' Stop)
- Travail réalisé
- Finalisation du code pour la détection d'obstables
- L'essaie en mode serveur et en mode client pour la communication de l'interface page web(le premier châssis contrôlé par la page web)
- Test HelloWorld.c pour la vérification de la détection de Phidget via USB
- Test du programme interface-kit.c(pour capteurs) et Moteur-simple.c(pour la vitesse et l'accélération)
- Problèmes
- Les messages reçus et émis ne sont pas pareils(Write : un caractère, Read : un octet)
12-13e séance
- Objectif
- Programme du déplacement automatique pour le premier châssis
- Finition de modifier le programme de ordonne.php pour bien passer le message à la foxboard
- Test du capteur de couleur
- Travail réalisé
- Correction du bug sur le contournement d'obstacles
- Programme du déplacement du premier châssis suivant une ligne en couleur
- Programme du avancement simple pour le deuxième châssis grâce à le sonar
- Programme du webcam
- Problèmes
- Valeurs de capteur de couleur dépendent beaucoup de l'environnement
- Échec de charger la batterie du deuxième châssis, chaque foi le rechargeur fait l'alarme
14-15e séance
- Objectif
- Finition des trois genres de fonctionnement du châssis Arduino
(contrôlé par l'interface page web, automatique, suivant d'une ligne)
- Travail réalisé
- Modification des caractères communiqués entre l'interface page web et le châssis
- Lancement de webcam
- Imperfections
- Les trois genres fonctionnements font séparément
- Un peu d'instabilité de suivre une ligne
Travail supplémentaire
- Relier les trois modes en ensemble, tous peuvent être contrôlees par l'interface(sur la rubrique Controle , -> rouge mode wifi, <-bleu mode automatique, ->bleu mode suivante d'une ligne )
- Ajouter et tester par ajouter le quatrième paramètre (luminosité) pour compenser l'influence de l'environnement(à la partie "capteur couleur")
Résultats
- Le robot basé sur un micro contrôleur Arduino est opérationnel et prêt à répondre à vos ordres via son interface Web. La mode peut être choisie par l'interface aussi:
-Mode wifi
- Sur la rubrique Contrôle, les flèches représentent les sens. Stop sert à arrêter le châssis
-Mode automatique
- Déplacement du châssis bien évitant un ou plusieurs obstacles devants, à droite ou à gauche
Mode suivant une ligne
- Déplacement exactement sur la ligne collée par terre.