Ignorer la navigation

Robot suiveur

Orgnaisation

Le mini-projet "Robot suiveur" sera réalisé par 3 élèves

Objectifs

Il va s'agir de gérer un véhicule à chenille qui , tout en suivant une ligne au sol, doit réaliser des mesures grâce à des capteurs embarqués et transmettre les informations mesurées

Les élèves devront être capables de :

  • de répondre au cahier des charges.
  • de produire un rapport par groupe : avec une partie commune en tête du rapport (explications générales, planning, …),  ensuite les parties individuelles (6 à 10 pages par élève) et enfin les annexes
  • de présenter à l'oral (individuellement) leur travail

Pièces jointes

 

  • TOUTES les ressources (documentations techniques, …) sont disponibles ici ou auprès du professeur

Toutes les documentations ou les informations nécessaires sont fournies. Il n'y a donc pas de recherche à faire sur internet.

Il est donc important de commencer par prendre connaissance de tous les documents fournis.

Il y a aussi plein d'infos utiles dans la partie "fiches d'aides"

Le seul site autorisé (et utile) est le site Arduino.

    Situation par rapport au projet de terminale :

    Le mini-projet de cette année correspond globalement à la partie « conception détaillée » du projet de terminale. Comme vous pouvez le voir sur l'image ci-dessous, le projet de terminale comporte 6 parties. La partie "avant-projet" a permis de choisir les solutions techniques (matériels, logiciels, …). Vous allez mettre en œuvre ces solutions techniques.


     
    Notation / évaluation:

    Le rapport final donnera lieu à une note ainsi que l’oral de présentation (10' en français et 2' en anglais). Cette note comptera dans votre moyenne d'ETS.



    Durée / organisation / planning:

    Le projet portera sur 8 à 10 séances soit à peu près 30 heures (sans compter le travail à la maison)

    Séance N°1 :

    • TP : La conduite de projet sous gantt  (2H) – découverte du logiciel
    • Découverte de votre projet et élaboration de votre planning sous gantt (2h)

    Autres séances (+ travail à la maison) :

    • Élaboration du projet : étude, calculs, mise en œuvre, simulation, essais et rédaction d’un dossier par groupe.

    Dernière séance :

    • oral de présentation individuel en français (10 min) puis un résumé en anglais (2 à 3 min).




    Principe (cahier des charges succinct):

    Vous allez gérer le déplacement d'un robot suiveur de ligne et les capteurs qu'il contient.


    Votre étude portera sur :

    • les essais des matériels proposés
    • la mise en œuvre du programme Arduino.
    • La visualisation (affichage) des résultats

    Le robot suiveur:

     

            


    Architecture technique du mini-projet :

      

    Tableau du câblage des entrées/sorties de la carte Arduino (celle sur le robot):

    élément Pin Arduino
    entrée analogiques
    flamme 8
    lumière 12
    suiveur gauche 13
    suiveur centre 14
    suiveur droit 15
    entrées ou sorties "digital" (TOR)
    DHT 22 29
    infrarouge (télécommande) 6
    trig (HC-SR04) 44
    echo (HC-SR04) 46
    SCL (écran LCD) 21
    SDA (écran LCD) 20
    module com 14
    Led (rouge) 33
    Led (vert) 35
    Led (blue) 37



    La répartition du travail :


    Élève N°1 : gestion du déplacement du robot

    Le matériel disponible :

    • le robot et sa carte de commande
    • une carte Arduino Mega
    • Un capteur à ultrason HC-SR04
    • 3 capteurs "suiveurs de ligne" (infrarouges)


    Cahier des charges du travail à faire :

    Pour gérer le véhicule correctement, on a besoin de connaître la précision et la fiabilité des capteurs. Pour cela nous allons mettre en œuvre une petite procédure d'essai :

    • Étudiez la documentation des capteurs HC-SR04 (ultrasons)
    • Analysez le programme de test du capteur fourni puis essayez-le avec un capteur.
    • faites une série d'essais (au moins 10 mesures) du capteur en relevant la valeur du capteur et celle fournie par un mètre
    • A partir des notions d'erreur absolue et d'erreur relative (document explicatif fourni) :expliquez le principe de fonctionnement du capteur
      • calculez l'erreur absolue pour chaque mesure.
      • calculez l'erreur relative (en pourcentage) pour chaque mesure.
      • Vous mettrez les résultats (capteur, mesure réelle, erreurs) dans un tableau.
      • Concluez sur la qualité de ce capteur
    • expliquez le programme Arduino
    • faire les test et essais des 3 capteurs "suiveur de ligne"
    • faire le programme permettant au robot de suivre une ligne (il faut reprendre le programme que vous avez fait sur le véhicule à chenille (série 2). Attention la carte Mega ne fonctionnant pas de la même manière que la carte UNO on a modifié le câblage et le PWMB se trouve maintenant sur le pin 4

               Modification de câblage pour l'adaptation sur la carte Arduino Mega (fil blanc):

                             



    Élève N°2: gestion des capteurs de mesures et affichage des données sur le robot

    Le matériel disponible :

      • un écran LCD (grove LCD RGB)
      • un capteur de température et d'humidité DTH22
      • un capteurs de flamme (flame sensor) : DFR0076
      • un capteur de luminosité (photorésistance)
      • une Led RGB (avec 3 résistances)
      • une carte Arduino Mega
      • un télécommande et son module récepteur infrarouge

    Remarque: le support des capteurs est amovible. Pour faire les essais, enlevez-le afin de laisser le robot-suiveur à votre camarade.

      

    Cahier des charges du travail à faire :

    1. test et essai des capteurs.

    • Pour le capteur de température (DTH22):
      • faites une série d'essais (au moins 4 mesures) en relevant la valeur du capteur et la température réelle (celle-ci peut être mesurée avec un appareil de mesure fiable et sera alors considérée comme la valeur réelle, par exemple un thermomètre)
      • A partir des notions de d'erreur absolue et d'erreur relative (document explicatif fourni) :
        • calculez l'erreur absolue pour chaque mesure.
        • calculez l'erreur relative (en pourcentage) pour chaque mesure.
        • Vous mettrez les résultats (capteur, mesure réelle, erreurs) dans 2 tableaux.
        • conclure sur la précision du capteur
      • expliquez, si possible, le principe de fonctionnement du capteur
      • récupérer aussi la valeur de l'humidité

    • Pour le capteur de luminosité :
      • faites une série d'essais (au moins 6 mesures) en relevant la valeur du capteur et la lumière réelle (celle-ci peut être mesurée avec un luxmètre dont la mesure sera alors considérée comme la valeur réelle)
      • à partir des mesures et si celles-ci sont linéaires, trouver le moyen de calculer la valeur en lux fournie par le capteur
      • A partir des notions de d'erreur absolue et d'erreur relative (document explicatif fourni) :expliquez, si possible, le principe de fonctionnement du capteur
        • calculez l'erreur absolue pour chaque mesure.
        • calculez l'erreur relative (en pourcentage) pour chaque mesure.
        • Vous mettrez les résultats (capteur, mesure réelle, erreurs) dans 2 tableaux.
        • conclure sur la précision du capteur
    • essayer le capteur de flamme

      

    2. Affichage sur l'écran LCD:

    L'écran LCD va afficher les données suivantes :

      • la température mesurée
      • la valeur de luminosité (si possible en lux)
      • le valeur du capteur de flamme (normale ou anormale)

      

    3. Gestion de la led RGB

    Si tout est normal, la led est verte. Si une des mesures est anormale la led est orange et si 2 mesures sont anormales la led est rouge. Il vous faudra déterminer, pour chaque capteur, les mesures considérées comme anormales.

     

    4. Mettre en oeuvre la télécommande

    • Essayer la télécommande
    • Principe du programme à faire: nous avons une variable "marche" (de type INT). A chaque appui sur play (touche verte) la variable marche passe à la valeur suivante (0 -> 1 -> 2 -> 0)
      • marche = 0 (robot à l'arrêt, capteurs non lus)
      • marche=1 (robot à l'arrêt, capteurs en fonctionnement)
      • marche=2: robot en marche et capteurs en fonctionnement)

         

           

        


    Élève N°3 : gestion de la communication avec le robot suiveur et affichage des mesures

    Le matériel disponible :

    • 2 cartes Arduino Mega ou une Mega (émetteur) et une Uno (récepteur)
    • un écran LCD (liaison par bus I2C)
    • un shield Ethernet
    • 2 modules de communication 733Mhz (un émetteur et un récepteur)

      

    Cahier des charges du travail à faire :

    1. Module de communication 733Mhz

    • Etudiez les documentations fournies
    • Mettre en oeuvre les modules en essayant les programmes de test fournis. Testez la distance max de communication.
    • Adaptez le programme de test afin de transmettre les valeurs issues des 4 capteurs (température, humidité, lumière et le capteur de flamme) . Vous vous mettrez d'accord avec l'élève N°2 pour le choix du nom des variables.

    2.Ecran LCD

    • Testez l'écran LCD
    • Affichez sur l'écran LCD la température, l'humidité, la lumière et le résultat du capteur de flamme (si valeur > 150 on affiche "Danger" sinon "OK")

     

    3. Gestion de la page web (le site n'aura qu'une seule page): il faut afficher la même chose que sur l'écran LCD. La carte Arduino sera utilisée en mode "serveur" (c'est elle qui va générer la page web).



     

    Pour vous aider, voici une proposition d'organisation du travail en différentes étapes:

    Quelques remarques préliminaires:

    • la rédaction du rapport se fait au fur et à mesure de l'avancement du mini-projet ( il se fait en parallèle donc et essentiellement à la maison). Une fois qu'une question a été résolue, qu'un élément technique a été essayé et approuvé, il faut l'intégrer au rapport.
    • les professeurs vérifieront l'avancée du projet et la rédaction du rapport au fur et à mesure.
    • la présentation d'un programme informatique (par exemple sur Arduino) sera présenté sous forme d'algorigramme dans le rapport et à l'oral seul de courts extraits "pertinents" peuvent apparaître dans le rapport. Le programme réel sera mis dans les annexes du rapport.
    • les ressources (documentations techniques, …) sont disponibles en haut de la page ou auprès du professeur
    • pour tout problème concernant la programmation Arduino ou le contenu d'une bibliothèque Arduino le seul site de référence fiable est le site Arduino : https://www.arduino.cc/ (par exemple : menu "Learning" puis "Reference" pour les instructions Arduino)




    Étape N°1: planning sous gantt        - travail individuel -

    • Faites le TP : "La conduite de projet sous gantt"  (durée : 2H) – découverte du logiciel



    Étape N°2: planning du projet       - travail collectif -

    • Lisez bien votre projet et rédiger votre planning de projet sous gantt.




    Étape N°3: choix des variables communes (et de leur type)       - travail collectif -

    Choisissez ensemble le nom et le type des variables que vous allez utiliser et partager avec les autres. Par exemple la variable issue de la mesure de courant va être mise à jour par l'élève chargé de gérer le capteur, mais cette variable va aussi être utilisée par celui qui s'occupe de l'affichage. Vous allez donc définir toutes les variables communes (celles issues de mesures ou celles issues du programme Arduino pour signaler un test, quelle ampoule est en test , …)

    Pensez à vous concerter pour l'attribution des entrées/sorties de la carte Arduino. Cela peut se faire au fur et à mesure de l'avancement de votre travail personnel (partie suivante).



    Étape N°4 : travail personnel

    • Chacun fait son travail personnel.
    Les fonctions delay et delayMicroseconds sont à éviter afin de ne pas bloquer le programme à un endroit.



    Étape N°5 : mise en commun       - travail collectif -

    • Maintenant on regroupe les différents programmes Arduino sur un seul programme et on essaie pour voir si tout fonctionne.



    Étape N°6 : rapport et oral      - travail collectif et individuel -

    • Finalisation du rapport et préparation de l'oral (diaporama).



    Étape finale : oral     - travail individuel -