Florian Vanhecke, Pierre-Antoine Delbecque, Thibault Henry et Léo Nollet présentent … Le robot suiveur de ligne PPE 2009-2010

Download Report

Transcript Florian Vanhecke, Pierre-Antoine Delbecque, Thibault Henry et Léo Nollet présentent … Le robot suiveur de ligne PPE 2009-2010

Florian Vanhecke, Pierre-Antoine Delbecque, Thibault Henry et Léo Nollet présentent …

Le robot suiveur de ligne PPE 2009-2010

• • • • • •

Sommaire

Présentation - Présentation du projet - Cahier des charges Etude du besoin - Diagramme Pieuvre - Diagramme FAST - Chaîne d’analyse fonctionnelle Capteurs & Moteurs - Capteurs CNY70 - Câblage - Servomoteurs Châssis - Modélisation Solidworks, amélioration et réalisation.

Programmation Carte électronique

Présentation du projet Objectif:

Construire un robot capable de suivre le tracé d’une ligne.

Problématique:

Comment parvenir à ce que notre robot se déplace tout en suivant un circuit ?

Solution trouvée par le groupe:

Notre robot se déplacera sur deux roues motrices et une roue libre, détectera les sorties de la ligne grâce à des capteurs optiques et pourra, grâce à un microcontrôleur, se remettre sur le circuit.

Cahier des charges

Etude du besoin

Diagramme « pieuvre » Ligne FP1 FC4 FC3 Robot suiveur de lignes FC2 Energie Déplacement FC1 Encombrement

• Diagramme « FAST »

6V

Chaîne fonctionnelle

Capteur CNY70

Caractéristiques - une DEL - phototransistor Fonctionnement La DEL émet une lumière infrarouge sur la table. Si la couleur de la plaque est claire (blanche) la lumière se reflète et vient sur le phototransistor qui devient bloqué .

Avec l’aide du programme le robot pourra se diriger en fonction des capteurs.

Câblage avec le capteur

• U= 5V • I= 20mA • U(DEL)=Vf= 1.25V

• U(transistor)=Usat= 4v • R1 et R2: résistance reliée à la DEL ( 270 ohms) • R3 et R4: résistance reliée au transistor (47kohms)

Moteurs

On utilise des servomoteurs PS 348.

Servomoteur : - Un moteur - Un potentiomètre - Un réducteur

Représentation d’un servomoteur.

Dans notre cas il a fallu débrider ces moteurs, c’est à dire mettre le potentiomètre à 0 degrés pour que le moteur soit à l’arrêt lorsqu’on l’alimente et enlever une bague qui empêchait la rotation complète de la roue.

Caractéristiques : K=1/243 Cmot=24.525N.cm Nmot=1636,32 tours/min U=4,8V

Modélisation

- Réalisation du châssis sous solidworks (en dimensions réelles) Problème rencontré :  Aucune partie du châssis ne permet l’adaptation de capteur lumineux assez proche du sol pour être efficace.

Adaptation du châssis

Objectif :

 Concevoir une pièce fixable sur le châssis permettant de placer les capteurs optiques à une distance optimale du sol (~3mm).

Plan :

- Calcul des dimensions de la pièce ajoutée.

- Conception sous Solidworks.

- Choix du matériaux - Conception réelle - Fixation sur le châssis

Calcul et conception sous Solidworks

• Contraintes : • - Épaisseur de la ligne à prendre en perçages de la pièce.

- Permettre aux capteurs de se situer à une distance réglable du sol.

- Prendre en compte l'inclinaison.

• Solution choisie : • Concevoir une pièce PVC en escalier (via thermo pliage) fixée sur le devant du robot (via deux vis), et qui permet la fixation de la plaque des capteurs à une

• • •

Boîtier Piles

La création d'un boîtier pile s'est avéré nécessaire afin de maintenir la batterie en place sur le robot Ce dernier se révélant simple à créer, se concrétisant en un patron de « demi-cube » avec deux trous à l'avant pour les câbles La batterie sera fixée sur le boîtier à l'aide d'un scratch.

Châssis final

• On obtient donc un châssis remplissant toutes les fonctions nécessaires : • - Permettre l’installation des moteurs • - Permettre l’installation de la carte programmable • - Permettre l’installation de la roue filante • - Permettre l’installation des capteurs optiques à une distance optimale du sol • - Permettre l’installation casi immobile de la batterie de piles.

Programmation

Fonctionnement des moteurs La programmation de notre robot, est en partie basé sur un signal MLI ( Modulateur largeur impulsions ) . Il faut fournir au servomoteur une impulsion à 1 (suivie d'un retour à 0). Et le servomoteur va prendre en compte la largeur temporelle de cette impulsion, qu'il va convertir proportionnellement (ou presque) en un angle.

Composition du programme

Notre programme sera constitué principalement de deux macros ( ou sous programme ) .

• • La première, se nomme « rouedroite » et va donc nous permettre de faire tourner la roue droite La deuxième, « rouegauche » va faire tourner la roue gauche .

•  En combinant ces deux sous programmes, nous pouvons donc tout effectué avec le robot : En effet, si nous souhaitons allez tout droit, nous appelons « rouegauche » et « rouedroite » en même temps . Si nous souhaitons tourner a droite, nous appelons roue gauche, qui fera pivoter le robot à droite .

Programme Final sous Flowcode

 Nous faisons donc appel à nos macros, en fonction de ce que renvois les capteurs .

 Chaque condition ( Losange ), test la valeur des capteurs et fait appel au sous-programme voulu .

Carte électronique capteurs

Notre robot est composé de deux cartes électroniques .

La première, de dimensions 70 x 25, est composée de deux capteurs, permettant de détecter la ligne .

Ces cartes comportent également deux résistances pour polariser l’émetteur des capteurs, ainsi que deux autres pour saturer le transistor .

Deux connecteurs sont également présents, un pour l’alimentation de la carte et la masse, l’autre pour envoyer les informations au microcontrôleur.

Carte électronique principale

• La deuxième carte est la carte qui gère le signal renvoyé par les capteurs, et qui s’occupe de faire tourner les roues en fonction de ce signal .

Composants principaux : - PIC 16F88 avec un quartz de 20Hz - Quatre connecteurs reliés au micro : Deux pour les moteurs, deux pour les capteurs.

- Une fiche RJ12, afin d’insérer notre programme dans le microcontrôleur ( permettant également un éventuel changement de ce dernier ).

- Une DEL, nous permettant de savoir si le circuit est alimenté.

Schéma électrique de la carte principale

Résultat final