Ignorer la navigation

T7 Programmation de chacun des fonctionnement élémentaires du portail connecté

Consulter le planning pour savoir qui doit réaliser cette tâche.
Objectif : réaliser le programme de la carte de prototypage rapide Arduino UNO qui doit réaliser la fonction "TRAITER l'information" pour le prototype du portail connecté de la famille Dupont.

Le fonctionnement du portail peut être décomposé en plusieurs fonctionnements élémentaires :

Afin de ne pas se perdre dans le programme, les essais, les débogages (corrections des dysfonctionnements et erreurs)... il est recommandé de ne pas réaliser le programme complet d'un seul coup, mais de procéder fonctionnement élémentaire par fonctionnement élémentaire. On ajoute le fonctionnement élémentaire suivant au programme, uniquement, quand le fonctionnement élémentaire précédent est opérationnel.

En îlot : demi-groupe

Réaliser progressivement le travail des onglets ci-dessous en appliquant, pour chacun des fonctionnements, la démarche de mise au point d'un programme ci-contre :

Fonctionnement 1

Fonctionnement élémentaire 1 : fonctionnement du moteur dans les deux sens de rotation, sens horaire pour ouvrir le portail et sens anti-horaire pour fermer le portail.

1- Lancer le service en ligne Blockly@rduino (coin élève du site technopc) et le configurer (voir rappel ci-dessous) :

2- A partir de la bibliothèque de Blockly@rduino, construire le script de l'algorithme ci-dessous :

Répéter indéfiniment

Répéter tant que l'état logique sur la broche 13 est égal à l'état haut (1)

mettre la broche 6 à l'état logique haut (1)

mettre la broche 7 à l'état logique bas (0)

mettre la broche 5 à l'état logique haut (1)

Fin Répéter tant que

Répéter tant que l'état logique sur la broche 12 est égal à l'état haut (1)

mettre la broche 6 à l'état logique bas (0)

mettre la broche 7 à l'état logique haut (1)

mettre la broche 5 à l'état logique haut (1)

Fin Répéter tant que

mettre la broche 5 à l'état logique bas (0)

Fin répéter indéfiniment

3- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

4- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

5- Ouvrir le service en ligne TINKERCAD (coin élève du site technopc) et accéder à votre compte d'îlot (bouton en haut à droite "Sign In") avec les identifiants et mots de passe de votre îlot (à demander au professeur).

6- Sélectionner le simulateur de circuits électroniques avec le bouton .

7- Ouvrir le circuit "4eme activité 1-5 tâche 7".

8- Coller le code du programme Arduino dans la fenêtre Code (bouton  + sélection du mode Texte ), puis lancer la simulation avec le bouton .

9- Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous (prendre connaissance en premier lieu de la description de la simulation, des conditions initiales et visionner la vidéo) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Au collège, visionner la vidéo depuis T/travail/TechnologiePC/4eme/Activité 1-5/simulfct1.mp4

Description de la simulation

Conditions initiales (positions de départ)

Diagramme de séquence

- switch1=0 et switch2=0 (aucun ordre donné).

10- A partir du fonctionnement observé et de l'algorithme, compléter le tableau en donnant les états logiques (0 ou 1) des broches 5, 6 et 7 de la carte Arduino UNO qui provoquent la rotation du moteur en sens horaire et en sens anti-horaire (sens trigonométrique).

11- En croisant les réponses de la question précédente avec la lecture de l'algorithme, donner les numéros :

- des deux broches qui permettent de sélectionner le sens de rotation du moteur,

- de la broche qui permet de commander la marche ou l'arrêt du moteur.

Fonctionnement 2

Ajout du fonctionnement élémentaire 2 : l'ordre utilisateur "ouvrir" déclenche le cycle automatique "ouverture du portail (fonctionnement du moteur sens horaire) > Arrêt (attente) > fermeture du portail (fonctionnement du moteur en sens anti-horaire)".

12- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : lorsque la broche 13 reçoit un état logique 1 (l'utilisateur donne l'ordre ouvrir), le moteur tourne dans le sens horaire pendant 3 secondes, s'arrête 3 secondes, tourne dans le sens anti-horaire pendant 3 secondes puis s'arrête.

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la broche 6 à l'état logique ..........

mettre la broche 7 à l'état logique .........

mettre la broche 5 à l'état logique .........

faire une temporisation de 3 s

mettre la broche ......... à l'état logique .........

faire une temporisation de 3 s

mettre la broche 6 à l'état logique .........

mettre la broche 7 à l'état logique .........

mettre la broche 5 à l'état logique .........

faire une temporisation de 3 s

mettre la broche ......... à l'état logique .........

Fin Si

Fin répéter indéfiniment

13- Sur le service en ligne Blockly@rduino , modifier le script du fonctionnement élémentaire 1 réalisé précédemment conformément à l'algorithme ci-dessus.

14- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

15- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

16- Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné).

Fonctionnement 3

Ajout du fonctionnement élémentaire 3 : arrêt du moteur si le détecteur Fin de course Portail Ouvert est atteint.

17- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : lorsque la broche 13 reçoit un état logique 1, le moteur tourne dans le sens horaire jusqu'à ce que le niveau logique de la broche 10 soit égal à l'état logique 1 (capteur Fin de Course Portail Ouvert atteint), puis s'arrête 3 secondes et ensuite tourne dans le sens anti-horaire pendant 3 secondes avant de s'arrêter (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

Répéter jusqu'à ce que l'état logique sur la broche ........ soit égal à 1

Fin répéter jusqu'à

mettre la broche ..inchangé.. à l'état logique ..inchangé..

faire une temporisation de 3 s

mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

faire une temporisation de 3 s

mettre la broche ..inchangé.. à l'état logique ..inchangé..

Fin Si

Fin répéter indéfiniment

18- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 2 réalisé précédemment.

19- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

20- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

21-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert).

Fonctionnement 4

Ajout du fonctionnement élémentaire 4 : arrêt du moteur si le détecteur optique Portail Fermé est atteint.

22- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : lorsque la broche 13 reçoit un état logique 1, le moteur tourne dans le sens horaire jusqu'à ce que le niveau logique de la broche 10 soit égale à l'état logique 1 (capteur Fin de Course Portail Ouvert atteint), puis s'arrête 3 secondes, puis tourne dans le sens anti-horaire jusqu'à ce que le niveau logique de la broche 9 soit égal à l'état logique 0 (détecteur optique Portail Fermé atteint) pour en fin s'arrêter (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

Répéter jusqu'à ce que l'état logique sur la broche ..inchangé.. soit égal à 1

Fin répéter jusqu'à

mettre la broche ..inchangé.. à l'état logique ..inchangé..

faire une temporisation de 3 s

mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

...................................................................................................

...................................................................................................

mettre la broche ..inchangé.. à l'état logique ..inchangé..

Fin Si

Fin répéter indéfiniment

23- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 3 réalisé précédemment.

24- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

25- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

26-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé).

Fonctionnement 5

Ajout du fonctionnement élémentaire 5 : arrêt du moteur si le Détecteur optique Obstacle détecte un obstacle pendant la fermeture du portail.

27- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : lorsque la broche 13 reçoit un état logique 1, le moteur tourne dans le sens horaire jusqu'à ce que le niveau logique de la broche 10 soit égale à l'état logique 1 (capteur Fin de Course Portail Ouvert atteint), puis s'arrête 3 secondes, puis tourne dans le sens anti-horaire jusqu'à ce que le niveau logique de la broche 9 soit égal à l'état logique 0 (détecteur optique Portail Fermé atteint) ou jusqu'à ce que le niveau logique de la broche 8 soit égal à l'état logique 1 (faisceau lumineux du détecteur optique Obstacle coupé par un obstacle) pour en fin s'arrêter (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

Répéter jusqu'à ce que l'état logique sur la broche ..inchangé.. soit égal à 1

Fin répéter jusqu'à

mettre la broche ..inchangé.. à l'état logique ..inchangé..

faire une temporisation de 3 s

mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

...................................................................................................

....................................inchangé.....................................................

mettre la broche ..inchangé.. à l'état logique ..inchangé..

Fin Si

Fin répéter indéfiniment

28- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 4 réalisé précédemment.

29- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

30- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

31-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

 

- switch1=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé),

switch6=0 (pas d'obstacle présent).

Fonctionnement 6

Ajout du fonctionnement élémentaire 6 : le moteur repart en sens horaire (réouverture du portail) si le Détecteur optique Obstacle détecte un obstacle pendant la fermeture du portail.

32- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : lorsque la broche 13 reçoit un état logique 1, le moteur tourne dans le sens horaire jusqu'à ce que le niveau logique de la broche 10 soit égale à l'état logique 1 (capteur Fin de Course Portail Ouvert atteint), puis s'arrête 3 secondes, puis tourne dans le sens anti-horaire jusqu'à ce que le niveau logique de la broche 9 soit égal à l'état logique 0 (détecteur optique Portail Fermé atteint) ou jusqu'à ce que le niveau logique de la broche 8 soit égal à l'état logique 1 (faisceau lumineux du détecteur optique Obstacle coupé par un obstacle), puis arrêt du moteur. Si cet arrêt à lieu avant que le cycle soit terminé, c'est à dire avant que le portail soit complètement refermé (l'arrêt est dû à la présence d'un obstacle dans ce cas), réouverture automatique du portail jusqu'à ce que le niveau logique de la broche 10 soit égale à l'état logique 1 (capteur Fin de Course Portail Ouvert atteint). Le portail ne se refermera, pour finir le cycle, que si l'obstacle a disparu (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Pour réaliser ce fonctionnement, une variable nommée fin cycle est utilisée afin de mémoriser si le cycle (ouverture > attente > fermeture) est ou non totalement terminé (fin cycle = faux si le cycle n'est pas terminé / fin cycle = vrai si le cycle est terminé).

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la variable fin cycle à faux

Répéter tant que la variable fin cycle est égale à ............

Si l'état logique sur la broche 10 est égal à l'état bas (0)

Alors   mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

Répéter jusqu'à ce que l'état logique sur la broche ..inchangé.. soit égal à 1

Fin répéter jusqu'à

mettre la broche ..inchangé... à l'état logique ..inchangé..

faire une temporisation de 3 s

Fin Si

Si l'état logique sur la broche 8 est égal à l'état bas (0)

Alors  mettre la broche 6 à l'état logique ..inchangé..

mettre la broche 7 à l'état logique ..inchangé..

mettre la broche 5 à l'état logique ..inchangé..

..........................inchangé.............................................

..........................inchangé.............................................

mettre la broche ..inchangé.. à l'état logique ..inchangé..

Si l'état logique sur la broche 9 est égal à l'état bas (0)

Alors mettre la variable fin cycle à .............

Fin Si

Fin Si

Fin Répéter tant que

Fin Si

Fin répéter indéfiniment

33- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 5 réalisé précédemment.

34- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

35- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

36-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé),

switch6=0 (pas d'obstacle présent).

Fonctionnement 7

Ajout du fonctionnement élémentaire 7 : clignotement du feu de signalisation pendant l'ouverture et la fermeture du portail (rotation du moteur).

37- Insérer dans l'algorithme du fonctionnement précédent (à copier-coller) la partie d'algorithme ci-dessous pour obtenir le fonctionnement suivant : clignotement du feu de signalisation raccordé sur la broche 2 lorsque le portail est en mouvement (fonctionnement du moteur en sens horaire ou en sens anti-horaire).

mettre la broche 2 à l'état logique haut (1)

faire une temporisation de 0,3 s

mettre la broche 2 à l'état logique bas (0)

faire une temporisation de 0,3 s

38- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 6 réalisé précédemment.

39- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

40- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

41-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé),

switch6=0 (pas d'obstacle présent).

Fonctionnement 8

Ajout du fonctionnement élémentaire 8 : déclenchement d'un cycle de fonctionnement du portail pour l'ordre utilisateur "Départ" (scénario départ).

42- Compléter l'algorithme du fonctionnement précédent à partir des modifications données ci-dessous qui permettent d'obtenir le fonctionnement suivant : la réception d'un niveau logique 1 sur la broche 12 (ordre scénario "Départ" provenant de l'utilisateur) déclenche également le fonctionnement d'un cycle automatique du portail (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors  mettre la variable fin cycle à faux

Sinon Si l'état logique sur la broche ......... est égal à ........

Alors  mettre la variable fin cycle à ...........

Fin Si

Fin Si

Répéter tant que la variable fin cycle est égale à faux

.

.

  inchangé

.

.

Fin Répéter tant que

Fin répéter indéfiniment

43- Sur le service en ligne Blockly@rduino , modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 7 réalisé précédemment.

44- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

45- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

46-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch2=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé),

switch6=0 (pas d'obstacle présent).

Fonctionnement 9

Ajout du fonctionnement élémentaire 9 : extinction de l'éclairage des zones jour et nuit de la maison et verrouillage des portes de la maison pour l'ordre utilisateur "Départ" (scénario départ).

47- Compléter l'algorithme ci-dessous (pointillés) pour obtenir le fonctionnement suivant : la réception d'un niveau logique 1 sur la broche 12 (ordre scénario "Départ" provenant de l'utilisateur) déclenche également l'extinction de l'éclairage des zones jour (broche 3 = 0) et nuit (broche 4 = 0) de la maison ainsi que le verrouillage des portes de la maison (rotation de 90° du servomoteur) (les parties inchangées doivent être reprises sur le fonctionnement précédent).

Pour réaliser ce fonctionnement, une variable nommée depart est utilisée afin de mémoriser si le scénario départ est demandé par l'utilisateur (broche 12 = 1).

Une partie initialisation est ici nécessaire pour :

- fixer une valeur de départ aux variables fin cycle et depart,

- déclarer la présence d'un servomoteur sur la broche 11 et pour initialiser sa position (0°),

- pour allumer les éclairages des zones jour et nuit afin de tester leur extinction automatique par le scénario "départ".

nitialisation

mettre la variable fin cycle à vrai

mettre la variable depart à faux

attacher un servomoteur avec pour identifiant SERVO sur la broche 11

orienter le servomoteur SERVO d'un angle de 0°

mettre la broche 3 à l'état logique 1

mettre la broche 4 à l'état logique 1

Répéter indéfiniment

Si l'état logique sur la broche 13 est égal à l'état haut (1)

Alors   mettre la variable fin cycle à faux

mettre la variable depart à faux

Sinon Si l'état logique sur la broche ..inchangé.. est égal à ..inchangé..

Alors   mettre la variable fin cycle à ..inchangé..

mettre la variable depart à vrai

Fin Si

Fin Si

Répéter tant que la variable fin cycle est égale à faux

Si la variable depart est égale à .........

Alors   mettre la broche 3 à l'état logique ............

mettre la broche 4 à l'état logique .............

orienter le servomoteur SERVO d'un angle de ...........

Fin Si

Si l'état logique sur la broche 10 est égal à l'état bas (0)

.

.

  inchangé

.

.

Fin Répéter tant que

Fin répéter indéfiniment

48- Sur le service en ligne Blockly@rduino , rajouter la bibliothèque de blocs "servo-moteur

49- Modifier, conformément à l'algorithme ci-dessus, le script du fonctionnement élémentaire 8 réalisé précédemment.

50- Afficher le langage de programmation de la carte Arduino correspondant à ce script avec le bouton  , puis éditer le code avec le bouton  afin de copier tout ce code et de le coller dans votre document élève.

51- Télécharger le programme dans U:(perso) .

- Si vous utilisez le navigateur Chrome, le fichier est téléchargé dans le dossier Téléchargement de l'ordinateur, il faudra le déplacer dans U:(perso) pour ne pas le perdre (petite flèche > afficher dans le dossier > glisser-déposer dans U:(perso)).

- Si vous utilisez Firefox, le fichier est directement téléchargé dans U:(perso).

52-  Simuler le fonctionnement en suivant le diagramme de séquence ci-dessous sur le circuit "4eme activité 1-5 tâche 7" du service en ligne TINKERCAD (prendre connaissance en premier lieu de la description de la simulation et des conditions initiales) et faire valider par le professeur. En cas de dysfonctionnement, modifier votre programme Blockly@rduino.

Description de la simulation

Conditions initiales (positions de départ)
Diagramme de séquence

- switch1=0 (aucun ordre donné),

- switch2=0 (aucun ordre donné),

- switch4=0 (portail fermé, donc non ouvert),

switch5=0 (portail fermé),

switch6=0 (pas d'obstacle présent).

53- Compléter le planning du document élève en inscrivant "xxxx" dans le rectangle de cette tâche pour signaler qu'elle est terminée.

Bonus rapidité

Le Rapporteur de votre îlot doit prévenir le professeur que vous avez terminé l'étape 9.