MATEP   > Shield > Afficheur LCD > Afficheur LCD graphique de Byvac


Ouvrir | Auteur : David Souder -

TPS : https://docs.google.com/document/d/1IFyDUzbZQYUzR2nS3J_qZoT9a1upIqpzBp_F6M2SDas/pub

-- TP SERVOS --

Situation : comment surveiller un magasin sur 360° ?

Vous allez écrire un premier programme en langage Arduino pour piloter une tourelle de caméra de surveillance.

 A. Rappel du montage


Une caméra dôme fixée au plafond d’une grande surface

Il s’agit d’une caméra classique qui à l’avantage de pouvoir être pilotée :

Le montage modélisant le fonctionnement de cette caméra

Le mouvement est assuré par 2 servomoteurs (voir plus bas) :

 B. Vérifier le matériel


Pour ce petit tutoriel, vous avez besoin d’un minimum de matériel. Vérifiez-le avant toute tentative d’expérimentation. Il vous faut :

1. Carte Arduino Uno

 2. Deux servomoteurs

 

3. Fils de câblage

4. Boutons poussoirs

5. Résistances

6. Une palque d’essais (pour brancher les fils)

 B. Configuration (alimentation...)


B.1. Vous allez vérifier le branchement de la carte Arduino

Vérifiez que la carte Arduino est bien branchée à votre ordinateur par son câble USB (si ce n’est pas encore fait, faites-le).

B.2. Vous allez lancer le logiciel Arduino

B.1.1. Recherchez l’icône “Arduino” sur le bureau de votre ordinateur

Si vous ne trouvez pas de dossier Arduino ou d’icône Arduino, c’est peut-être que vous ne l’avez jamais installé sur votre ordinateur. Vous pouvez alors le faire à cette adresse : http://arduino.cc/fr/Main/DebuterInstallation

B.1.2. Cliquez 2 fois sur l’icône Arduino

Ceci à pour effet de lancer le logiciel Arduino qui est l’espace où l’on écrit le code source.

B.1.3. Cliquez sur “Exécuter”

Arduino est un logiciel portable (il ne s’installe pas). C’est pourquoi, Windows peut vous demande une autorisation pour une question de sécurité. Lavantage, c’est que ce logiciel peut fonctionner sur une clé USB !

B.1.4. Soyez patient...

Arduino utilisant Java, le logiciel n’est pas compilé (construit). Si c’est un peu long, c’est que le logiciel se compile pour Windows sous vos yeux. Cela permet une utilisation sur MAC, Linux...

Enfin votre logiciel Arduino

B.3. Vous allez lancer le plugin ArduBlock

B.3.1. A partir du menu du logiciel Arduino, faire :

Une nouvelle fenêtre doit s’ouvrir : c’est le plugin Ardublock

POUR INFORMATION :

Si vous ne connaissez pas Ardublock ou si ne l’avez pas encore une page d’aide complète est disponible à cette adresse :

docs.google.com/document/pub?id=1G7Y95eN7eg28rg5R3RxNsv2Z_diNijaFuK0emh7OJ28

 

 C. Premier programme avec Ardublock


C.1. Vous aller brancher un seul servomoteur (dans un premier temps)

C.1.1. Rappel

Un servomoteur ressemble à cela :

Tout élément fixé sur l’axe peut tourner suivant un angle très précis.

Il est même possible de fixer un autre servomoteur sur cette axe. C’est ce que nous feront plus tard.

C.1.2. Vous allez d’abord brancher la carte Arduino à la plaque d’essais.

Cela permet de faciliter les branchements futurs.

C.1.2.1. Prenez la plaque d’essais

 

C.1.2.2. Poser la carte Arduino à coté de la plaque d’essais

C.1.2.3. Vous aller alimenter la plaque d’essais avec la carte Arduino

C.1.2.4. Vous allez maintenant alimenter le servomoteur par la plaque d’essais.

Ajoutez 2 fils et branchez-les comme sur l’exemple.

C.1.2.5. Vous allez brancher un fil de commande

Pour que l’Arduino puisse donner des ordres, il faut brancher un fil de commande.

POUR INFORMATION :

Seules les broches repérées avec un tilde (~) peuvent piloter des servomoteurs.

C.2. Vous aller réaliser un premier programme avec Ardublock

C.2.1. Vérifiez que vous avez la fenêtre Ardublock et Arduino

Si vous avez bien suivi les étapes, vous devez avoir à l’écran ceci :

C.2.2. Vous allez travailler dans un premier temps uniquement dans la fenêtre Ardublock.

Agrandissez la fenêtre Ardublock : vous allez avoir besoin de place

C.2.3. Vous allez placer une boucle générale.

Pour que le programme ne s’arrête jamais, il faut le faire tourner en boucle. Pour cela, placez une boucle générale en :

  1. cliquant sur “Contrôles”
  2. puis en faisant glisser le bloc vers la droite.

La boucle générale doit apparaître à droite dans l’espace de travail d’Ardubloc.

C.2.4. Vous allez placer un bloc “Servomoteur”

C.2.4.1. Cela, cliquez sur “Blocs Tinkerkit”.

C.2.4.2. Utilisez la barre de défilement pour faire apparaître le bloc “Servomoteur”

C.2.4.3. Faire glisser le bloc “Servo” à droite et le placer à l'intérieur de la boucle principale.

 

C.2.4.4. Vous allez configurer le Servo

Retenez que les 2 nombres rouges représentent :

C.2.4.5. Modifiez ces 2 valeurs en cliquant une fois sur celui-ci

Astuce : appuyez sur “entrée” pour sortir de la zone de saisie du nombre.

C.2.5. Vous allez générer le code source

Le code source à été écrit à votre place par Ardublock.

CONSTATEZ QUE :

Tous les éléments saisis dans Ardublock se retrouvent dans Arduino :

C.2.6. Vous allez téléverser le code source dans la puce de la carte Arduino

Pour cela, cliquez sur la petite flèche à gauche

Patientez : le code binaire se construit

C’est à ce moment précis que le programme est transformé en 0 et 1 (seul langage que les puces peuvent comprendre). Cette étape ne pose généralement pas de problème car c’est Ardublock qui a écrit le code source du programme.

Patientez : le téléversement est en cours

Si vous avez un message d’erreur. C’est que ce n’est effectivement pas le bon port.

Si c’est votre cas, essayez de sélectionner un autre port avec :

Gardez sélectionné le port qui ne produit pas d’erreur

Si aucun port ne fonctionne ou s’ils n’apparaissent pas, le plus simple est de rallumer l’ordinateur.

C.2.7. Vérifiez la bon fonctionnement du programme

Vous avez certainement constaté que votre servomoteur à bougé. Il s’est calé sur 90°. Si rien à bougé, vérifiez vos branchements.

Nous allons modifier notre programme pour rendre le tout plus visible.

RAPPEL DES BRANCHEMENTS :

 D. Deuxième programme avec Ardublock


Notre Camera doit maintenant effectuer un balayage automatique sur 90°toutes les 10 secondes afin d’avoir un champ d’observation plus grand.

D.1. Assemblez les bloc pour former cet assemblage

D.2. Cliquez sur “Generate” pour générer le code dans Arduino

        

Voici le résultat

D.3. Cliquez sur “Generate” pour générer le code dans Arduino

D.4. Vérifiez que le programme à bien été transmis.

Vous devriez obtenir ceci :

D.5. Vérifiez le bon fonctionnement du programme

Vous devriez constater que le Servo se positionne différemment toutes les 10 secondes.

 E. Troisième programme avec Ardublock


Notre Caméra doit maintenant effectuer un balayage automatique horizontal sur 90° toutes les 10 secondes. Mais elle doit aussi effectuer un balayage sur 20 degrés de haut en bas toutes les 5 secondes de sorte que face à la scène ci-dessous, on obtient les 4 clichés représentés.

E.1. Vous allez brancher le servo vertical (pour monter et descendre la caméra)

Ajoutez les :

Vous devez obtenir cela :

E.2. Vérifiez que vous avez bien ceci

E.3. Complétez votre assemblage comme indiquez ci-dessous, générez le programme et téléversez-le dans la puce.

Voici  ce que vous devez obtenir

POUR INFORMATION :

Voici le programme correspondant