Comment automatiser le pont afin de gérer les flux de circulation ?
TD : Comment automatiser le pont afin de gérer les flux de circulation ?. Recherche parmi 300 000+ dissertationsPar matteo1584 • 3 Mai 2021 • TD • 1 972 Mots (8 Pages) • 348 Vues
[pic 1] | Séquence D « Comment automatiser le pont afin de gérer les flux de circulation ? » | IT+I2D |
Algorithmique | ||
Activité | 03/02/2021 |
Compétences
C03 | Etre capable d'identifier les fonctions des différents constituants de la chaîne d'information. |
C03 | Etre capable d'identifier les entrées/sorties du système physique dans la perspective de l'écriture de l'algorithme. |
C03 | Etre capable d'interpréter/comprendre une partie du programme et les E/S. |
C04 | Etre capable d'identifier la structure d'un programme. |
Matériels et ressources
- Logiciel Arduino
- Carte Arduino + platine Grove
- Capteurs et actionneurs Grove :
- 3 modules « LED » (rouge, vert, bleu)
- 1 module « buzzer »
- 2 modules « button »
- Document technique (DT-Arduino et DT-Algorigramme)
- Document réponse (DR-Algorithmique)
Problématique
- Comment peut-on programmer un système ?
- Quels composants permettent d’interagir avec la carte de programmation ?
Organisation
- Travail en binôme.
Rendu attendu
- Le document réponse « DR-Algoritmique » complété.
Travail demandé
Objectif :
L’objectif de l’étude est de mettre au point la gestion des pupitres des joueurs en simulant leur fonctionnement grâce au logiciel et au matériel Arduino associés à une platine Grove.
Description du système
[pic 2]
La chaîne de télévision TV7 réalise un jeu appelé « Question pour un rapide » où un animateur pose des questions à 2 joueurs. Le joueur qui souhaite répondre appuie sur le bouton situé sur son pupitre (BP1 ou BP2). Ceci a pour conséquence d'allumer le voyant placé devant lui (LED_VERTE ou LED_BLEUE) et d’actionné le buzzer 0,5 seconde. L'animateur interroge alors le joueur dont le voyant est allumé. Au bout de 6 secondes le voyant du présentateur LED_ROUGE clignote pendant 2 secondes indiquant la fin du temps de réponse. A la fin du clignotement le buzzer sonne 1 seconde et le voyant de l’autre joueur qui s’allume. Il a lui aussi 6+2 secondes pour répondre avant le buzzer. À tout moment le présentateur peut appuyer sur son bouton pour réinitialiser le système.
Cahier des charges :
- Pendant la question les 3 LED s’allument en alternance rapide
- Le voyant du joueur qui appui le premier s’allume pendant 6 secondes.
- Le voyant de l’autre joueur ne peut plus s’allumer.
- A la fin du premier cycle de réponse la main passe au second joueur seulement si le présentateur n’a pas actionner son bouton.
- La carte ARDUINO est composé d’un microcontrôleur. Ce composant est « au centre » du système. A l’aide d’une recherche Internet, indiquer sur le DR-Algorithmique :
- Qu’est ce qu’un microcontrôleur ?
- De quoi est-il composé ?
- Quelle est la différence avec un microprocesseur ?
- Citer quelques systèmes équipés d’un microcontroleur ?
- Le fonctionnement du système peut être décrit a l’aide du language SysML. Réaliser sur le DR-Algorithmique les diagramme suivant :
- Diagramme des cas d’utilisation
- Diagramme de séquence
Programmation d’entrées / sorties logiques
Les entrées et sorties logiques fournissent des tensions qui valent soit 0V soit 5V.
Présentation de la carte Arduino, du module Grove et du logiciel Arduino
- Lire le document ressource "DT-Arduino.docx"
Structure d'un programme Arduino
- Voir le document ressource "DT-Arduino.docx", chapitre 5
Avant de se lancer : https://www.youtube.com/watch?v=xQBlEoci_Ws
Programme 1 "allumer led"
Cahier des charges : Allumer un voyant d’un des joueurs.
- Dessiner l’algorigramme et écrire l’algorithme dans le DR-Algorithmique à l’aide du DT-Algorigramme.
- Connecter en D3 le module « led verte ».
- Ouvrir le logiciel Arduino [pic 3] et créer un nouveau programme. Enregistrer le sous votre espace de travail sous le nom "vosNom_led".
- Modifier le programme ci-dessous (parties en pointillé). A compléter dans le DR-Algorithmique.
Pour cela, compléter les parties Void setup() et Void loop() pour obtenir le fonctionnemennt désiré :
- Void setup() : En vous aidant de la référence (Dans le logiciel, Aide, Référence ou taper référence arduino dans un moteur de recherche) "pinMode()", déclarer en sortie la variable "led_rouge"(broche 3).
- Void loop() : En vous aidant de la référence (Aide, Référence) " digitalWrite()", mettre la variable "led_rouge"(broche 3) à l'état haut.
Remarque : // Signifie que le texte est le commentaire du programme
int led_verte = 3; //La broche 3 de la carte s'appelle led_verte. (Déclaration des variables)
void setup() //fonction d'initialisation de la carte
{
……………………………. //Déclare les broches en entrée ou en sortie.
...