Commander le tracker à l'aide du clavier

Attendues de fin de cycle et les compétences travaillées

Exprimer sa pensée à l'aide d'outils de description adaptés

Exprimer sa pensée à l'aide d'outils de description adaptés : croquis, schémas, graphes, diagrammes, tableaux.

x

Écrire, mettre au point et exécuter un programme

Analyser le comportement attendu d'un système réel et décomposer le problème posé en sous-problèmes afin de structurer un programme de commande.

x

Écrire, mettre au point (tester, corriger) et exécuter un programme commandant un système réel et vérifier le comportement attendu.

x

Écrire un programme dans lequel des actions sont déclenchées par des événements extérieurs.

x

1 - Matériel et Organisation de l'îlot.

Matériel :

Objectif :

1 Tracker solaire

Servomoteur rotation : Branché en D6

Servomoteur inclinaison : Branché en D5

Piloter le tracker à l'aide des touches du clavier.

Informatique :

Situation déclenchante :

-  : Logiciel mblock

Comment incliner le tracker ?

Organisation du groupe :

reformulation

Reformulation :

 : Coopératif

PARTIE 1 - Piloter un servomoteur à l'aide du clavier

FondamentalLe cahier des charges

Nous voulons créer un programme qui doit permettre au robot de :

positionner son servomoteur à 90° ;

  • pivoter de 5° vers la droite lorsque je clique sur la touche "flèche droite" ;

  • pivoter de 5° vers la gauche lorsque je clique sur la touche "flèche gauche" ;

AttentionTravail à Faire - Diagramme d'activité

1

Ouvrir le fichier : algorigramme.pdf [pdf]

Notion de variable

2

Consulter la vidéo qui explique le principe de la variable informatique

2

Ouvrir le logiciel mBlock

3

Recopier le programme ci-dessous :

attention "Score" est une variable que vous devez créer à l'aide du bloc puis

Observer la couleur des blocs pour connaître la catégorie où vous allez les trouver.

programme_variable.sb2 [sb2]

4

  • Cliquer sur le drapeau vert

  • Cliquer sur la touche Espace

5

Compléter la partie 1 de la fiche d'activité - Qu'est ce qu'une variable ?

Diagramme d'activité

6

Compléter le diagramme d'activité[1] que décrit l'algorithme ci-dessous : [pdf]

Nous voulons créer un programme qui doit permettre au robot de :

positionner son servomoteur à 90° ;

  • pivoter de 5° vers la droite lorsque je clique sur la touche "flèche droite" ;

  • pivoter de 5° vers la gauche lorsque je clique sur la touche "flèche gauche" ;

7

[2] Enregistrer votre travail dans "perso"

8

[3]Imprimer votre travail sur l'imprimante MPC 300 Techno

Piloter le système avec mBlock

AttentionTravail à Faire - Programmation mBlock

1

Ouvrir le logiciel mblock

2

Câbler le système en respectant le numéro des broches indiqué dans la partie matériel.

3

Connecter la carte Arduino à l'ordinateur

4

  • Choisir la carte Arduino Uno

  • Sélectionner le port de communication :

  • Téléverser le microprogramme

5

EVENEMENTS : Votre programme doit commencer par :

Vous n'oublierez pas de cliquer dessus pour activer le programme.

6

Regarder la vidéo sur les instructions conditionnelles

CONTROLE : On répète indéfiniment (en boucle) le bloc

CONTROLE : Si la condition est vraie, alors on exécute la commande

CAPTEUR : Touche............. est cliquée

7

Créer une variable appelée rotation :

  • Initialiser cette variable à une valeur de 90 ° au début du programme

  • Si la touche "flèche Droite" est appuyée alors on ajoute à "rotation"  5.

  • Si la touche "flèche Gauche" est appuyée alors on ajoute à "rotation" -5.

 :  ;

8

Piloter le servomoteur  ;

Le servo-moteur à commander se trouve sur la broche D6

Ce bloc de programme se trouve dans :

  1. Pilotage

  2. Uno et Grove

6

Tester votre programme en cliquant sur le drapeau vert

7

[4] Enregistrer votre travail dans perso

PARTIE 2 - Limiter l'angle de rotation

Problème

Vous avez sans doute constaté que lorsque la variable "rotation" dépasse certaines valeurs, le servomoteur fait un tour sur lui même.

En réalité la valeur de la variable "rotation" doit être comprise entre 0 et 255.

Limiter la valeur de rotation entre 0 et 255

AttentionTRAVAIL A FAIRE

8

Modifier le programme précédent de manière à ce que la valeur de la variable rotation soit toujours comprise entre 0 et 255.

Autrement dit :

  • Je ne peux plus ajouter 5 à rotation lors d'un clique sur la flèche droite si sa valeur est supérieure à 250

  • Je ne peux plus retirer 5 à rotation lors d'un clique sur la flèche gauche si sa valeur est inférieure à 5

    Pensez à utiliser les commandes :

PARTIE 3 - Piloter l'inclinaison du tracker

AttentionTRAVAIL A FAIRE

9

Le servomoteur générant l'inclinaison du tracker est connecté sur la broche D5.

La valeur de l'inclinaison doit être comprise entre 0 et 170 degrés.

Inspirer vous de ce qui a été fait dans les parties 1 et 2 pour piloter la rotation et l'inclinaison du tracker.

Créer une variable inclinaison

  • Si j'appuie sur la flèche haut j'augmente "inclinaison" de 5°

  • Si j'appuie sur la flèche bas j'augmente "inclinaison" de -5°

PARTIE 4 - Piloter à l'aide du Joystick

FondamentalMatériel

Le Joystick est connecté sur la broche A0 du shield Grove

AttentionTravail à Faire

1

Ouvrir le fichier mBlock joystick.sb2 [sb2]

2

Brancher un joystick sur la prise A0 de la carte Arduino.

3

Ce programme permet uniquement de piloter la rotation du tracker.

Compléter le afin de piloter l'inclinaison.

Utiliser les variables :

  • axey

  • inclinaison

Le servomoteur d'inclinaison est branché en D5

ComplémentExplication du centrage d'un joystick