Professional Documents
Culture Documents
COLLGE
Documentlibrementdiffusablewww.duinoedu.com1/55
SOMMAIRE
Ouvrir comme un document
INFOS00
TAPE01
TAPE02
TAPE03
EXEMPLE01
EXEMPLE02
EXEMPLE03
EXEMPLE04
EXEMPLE05
EXEMPLE06
03
04
06
10
13
15
18
22
27
32
36
42
46
Documentlibrementdiffusablewww.duinoedu.com2/55
INFOS00
StaterKit N2
Merci d'avoir choisi notre tout premier StaterKit OpenSource pour collge.
Vous trouverez dans ce petit dossier tout ce dont vous avez besoin pour dmarrer avec Arduino en
collge. Mais ce n'est pas tout ! Les exemples proposs sont directement lis une problmatique
classique en technologie collge plutt adapte au niveau 4me (mme si rien ne vous empche de
travailler sur ce thme en 3me). Vous devriez arriver rapidement au rsultat attendu sans avoir passer
des heures rechercher des solutions. Vous pourrez ensuite passer des solutions plus volues et plus
puissantes si vous en avez envie sans devoir tout changer : toutes nos solutions sont volutives et
libres.
La plate-forme Arduino est trs large et peut trs facilement s'adapter vos besoins futurs. De plus,
tous les logiciels utiliss sont libres et parfaitement adapts au milieu scolaire. Comme il n'est pas prvu
que les lves aient saisir du code, nous vous proposons de construire vos programmes par
assemblage d'lments graphiques. Rien ne vous empche cependant d'essayer de comprendre le
langage qui se cache derrire.
Si malgr nos efforts vous avez des problmes pour installer, manipuler ou dvelopper sur Arduino, nous
sommes votre disposition pour vous aider. N'hsitez pas nous contacter sur notre messagerie.
http://duinoedu.com/store1/starter-kits-college/215-starterkitn2.html
Besoin d'aide ?
>> http://duinoedu.com/contacterduinoedu.html
Arduino n'est pas simplement un produit mais aussi une communaut. N'hsitez pas partager vos
connaissances et votre exprience.
Nous vous souhaitons bonne lecture et bonnes exprimentations dans le monde fabuleux d'Arduino !
Documentlibrementdiffusablewww.duinoedu.com3/55
TAPE 01
StaterKit N2
Commenons par vrifier notre matriel et voyons quoi servent les diffrents
lments.
Ce kit (dans sa version complte) contient tout ce dont vous avez besoin pour raliser 2 serrures codes
(code de votre kit N2) utilisables directement avec vos lves sans modification.
Votre kit doit contenir les lments suivants :
NOM
Carte Arduino UNO
(X1)
Sauf si vous avez choisi le kit sans carte Arduino
PHOTO
UTILIT / REMARQUES
- Doit contenir votre
programme
- Doit excuter votre
programme
- Dispose d'entres / sorties
- Se branche sur l'ordinateur
- Contient un microcontrleur
- Permet de brancher la carte
Arduino l'ordinateur
- Peut tre remplac par un
cble d'imprimante ou autre...
- Permet de connecter
facilement les modules
- Se monte sur la carte Arduino
UNO
- N'a pas d'intelligence
Arduino augment =
Le logiciel Arduino +
Les librairies dj installes +
Ardublock augment +
Des exemples
Cbles Grove
(X2)
1 pour la LED
1 pour l'afficheur LCD
Documentlibrementdiffusablewww.duinoedu.com4/55
NOM (suite)
PHOTO (suite)
- Permettent de brancher le
clavier matriciel au shield de
connexions Grove
- Nous adapterons 1 peu ces
cbles plus tard
Lecteur RFID
ATTENTION FRAGILE !
(X1)
Lot de 5 tags
(X1)
2 cartes blanches
1 badge rouge
1 badge bleu
1 badge jaune
- Permet de disposer de 5
codes RFID uniques.
- Le code unique est inscrit sur
la carte ou le badge et ne peut
pas tre chang.
- Seuls les 8 derniers caractres
sont utiles
(nous y reviendront plus tard)
Afficheur LCD
(X1)
Documentlibrementdiffusablewww.duinoedu.com5/55
Switch
(X1)
TAPE 02
StaterKit N2
Documentlibrementdiffusablewww.duinoedu.com6/55
Documentlibrementdiffusablewww.duinoedu.com7/55
REMARQUES
- C'est ici que doit tre plac le fameux code.
-Mais nous n'crirons rien car c'est Ardublock
augment - notre plug'in graphique - qui le fera
pour nous.
-Nous l'avons dj mis en franais pour vous mais
normalement, c'est l'anglais la langue par dfaut.
-Plus tard, c'est ici que vous pourrez vous essayer
la rdaction de votre programme en langage
EDU ou Arduino (voire d'autres langages).
02.B.4 - Dans le logiciel Arduino puis Outils puis Port srie, vrifiez la prsence de COMxx :
Documentlibrementdiffusablewww.duinoedu.com8/55
A ce stade, les pilotes de votre carte Arduino doivent tre installs. Il est inutile de continuer si votre
carte n'est pas installe. Cette tape est la plus dlicate et peut ncessiter un redmarrage de votre
ordinateur dans quelques rares situations.
Documentlibrementdiffusablewww.duinoedu.com9/55
Dcouverte de la
programmation graphique
StaterKit thme Serrure code
TAPE 03
StaterKit N2
Documentlibrementdiffusablewww.duinoedu.com10/55
03.B - Nous allons tester le fonctionnement de toute la chane (Ardublock, Arduino, pilotes)
03.B.1 - Veillez noter que :
Documentlibrementdiffusablewww.duinoedu.com11/55
Documentlibrementdiffusablewww.duinoedu.com12/55
Si vous avez suivi la lettre ce tutoriel, cela devrait tre le cas. Sinon, retenez ceci :
Pour supprimer un bloc :
faites-le glisser vers le menu de gauche (il retournera d'o il vient)
pour placer un bloc "Boucle" allez dans Contrles"
C'est fait ? Vous n'avez plus qu'un bloc "Boucle" ? Passez alors la suite !
Documentlibrementdiffusablewww.duinoedu.com13/55
EXPLICATIONS
Broche : permet de choisir le n de la prise
concerne.
Allum : la LED doit se trouver dans l'tat
Allum
DEL : le nom du bloc pour piloter les LED
Boucle : le programme principal (oui ! il
peut aussi y avoir des sous-programmes)
Documentlibrementdiffusablewww.duinoedu.com14/55
Ce petit programme ne fait pas grand chose. Mais notez que la LED s'est allume par programme !
Passons un exemple un peu plus complet.
Documentlibrementdiffusablewww.duinoedu.com15/55
C'est trs bien, mais que doit-on mettre dans la mchoire "test" ? Cherchez un peu...Oui, c'est
effectivement le commutateur ! C'est assez logique. C'est lui qui d'une certaine faon "fait la pluie ou le
beau temps".
Plus prcisment, c'est le commutateur qu'Arduino devra tester pour savoir s'il faut :
allumer la LED (ou)
teindre la LED.
C'est donc bien lui qu'il nous faut.
Attention, certains modules occupent 2 prises en mme temps.
Seeed Grove a choisi de brancher tous ses modules avec un seul cble. C'est trs pratique
mais impose d'tre un peu vigilant. Si vous regardez les connecteurs de prs, vous verrez
qu'ils ont 4 pointes. Deux sont utilises pour alimenter le module. Une correspond la
prise en question (D2,D3). Mais quoi sert la 4me ? C'est l que rside l'astuce. Quand
vous branchez une prise sur D2, le module peut utiliser la quatrime pointe pour avoir
aussi accs la prise D3 sans que cela vous oblige brancher un autre cble.
Rassurez-vous, nous y reviendrons. Mais retenez dj cela.
Nous voyons au premier coup d'oeil que le programme allumera la LED, mais ne l'teindra jamais.
Documentlibrementdiffusablewww.duinoedu.com17/55
Documentlibrementdiffusablewww.duinoedu.com18/55
SERVOMOTEUR ASSEMBLE
BRANCHEMENT
SERVOMOTEUR DUPONT
Documentlibrementdiffusablewww.duinoedu.com19/55
Documentlibrementdiffusablewww.duinoedu.com20/55
Documentlibrementdiffusablewww.duinoedu.com21/55
Nous allons maintenant passer des exemples plus complets. Vous avez dj une ide du
fonctionnement global des blocs dans Ardublock et des modules Grove.
EXPLICATIONS
Broche : permet de choisir le n de la prise
concerne.
Allum : la LED doit se trouver dans l'tat
Allum
DEL : le nom du bloc pour piloter les LED
Boucle : le programme principal (oui ! il
peut aussi y avoir des sous-programmes)
Documentlibrementdiffusablewww.duinoedu.com22/55
EXEMPLE
01
StaterKit N2
Dans cet exemple, vous allez utiliser un module lecteur RFID Grove. Celui-ci sera
utilis pour tester la validit d'un code dj pralablement enregistr.
Il est important de comprendre que les tags (Badges, Cartes) ont un code RFID unique inscrit en dur. Il
existe des tags RFID enregistrables mais qui ne seront pas traits dans ce dossier car ils ne prsentent
pas d'intrt pour ce que nous voulons faire.
Ce premier exemple reste simple mais va vous permettre d'utiliser votre premier module volu. Il s'agit
d'un module srie 2 fils. Cela signifie qu'il occupe 2 connecteurs.
Nous esprons que vous n'avez rien dbranch car nous allons nous contenter de complter le montage
prcdent. Si vous avez tout dbranch, replacez vos modules comme prcdemment.
Documentlibrementdiffusablewww.duinoedu.com23/55
BRANCHEMENT
X1
- Type : RFID
- Frquence : 125 kHz
- Identifiant : unique
- Type : RFID
- Frquence : 125 kHz
- Identifiant : unique
Documentlibrementdiffusablewww.duinoedu.com24/55
UTILIT
Permet d'initialiser le lecteur RFID
-Broche# : si vous branchez ce module sur :
D8, alors vous devez choisir :
Broche# 8
Broche# 9
Rappelez-vous, ce module occupe 2 prises !
-Code : permet d'enregistrer des codes.
(sparez les codes par un espace s'il y en a
plusieurs)
Permet de tester un code RFID
-Code : le code comparer aux codes
enregistrs
Documentlibrementdiffusablewww.duinoedu.com25/55
Documentlibrementdiffusablewww.duinoedu.com26/55
C'est ce qui se passe dans la ralit avec les digicodes. Un code bon n'ouvre la porte que
pendant un certain temps. Nous avons choisi de faire ainsi dans un souci de simplicit
d'utilisation.
EX01.5 - Testez votre montage
Procdez comme ceci :
1. Placez la carte ou le badge dont le code est correct quelques centimtres de la bobine
a. le lecteur doit lire ce code et le comparer celui que vous avez saisi dans Ardublock
b. la porte s'ouvre et la LED s'allume
c. la porte doit s'ouvrir
2. Cette situation doit rester en l'tat pendant 4 secondes environ
3. Aprs 4 secondes (temporisation)
a. le code lu devient prim
b. la LED s'teint et la porte se ferme
c. la porte se ferme et la LED s'teint
4. Placez un tag non autoris, la LED doit rester teinte.
Nous allons maintenant compliquer un peu les choses avec l'exemple 02. Nous allons ajouter un afficheur
LCD.
Documentlibrementdiffusablewww.duinoedu.com27/55
EXEMPLE
02
StaterKit N2
Documentlibrementdiffusablewww.duinoedu.com28/55
MATRIEL NOUVEAU
BRANCHEMENT
- Communication : I2C
- Se branche avec : 1 cble Grove sur I2C
X1
EX02.3 - Nous allons maintenant ajouter les blocs LCD dans Ardublock
Encore une fois, plusieurs blocs sont associs cet afficheur LCD. En plus, ce dernier est quip d'une
fonctionnalit originale puisqu'il est possible de changer la couleur de fond - d'o le nom de LCD RGB
Background. Mais nous verrons cela un peu plus tard.
Dcouvrons les fonctions des blocs RFID
Prenez un instant pour comprendre quoi servent les diffrents blocs.
BLOCS RFID
UTILIT
Permet d'crire du texte
-Imprimer : le texte crire
-n de ligne :
0 = la premire ligne
1 = la deuxime ligne
Permet d'ajuster la couleur du fond
-Rouge : 0 1000 (1000=maximum de rouge)
-Vert : 0 1000 (1000=maximum de vert)
-Bleu : 0 1000 (1000=maximum de bleu)
Notez aussi que le pilotage de cet cran se fait ligne par ligne. Vous pouvez par exemple modifier la 2me
ligne sans toucher la premire. Le prsent exemple va justement illustrer ceci.
Documentlibrementdiffusablewww.duinoedu.com29/55
Documentlibrementdiffusablewww.duinoedu.com30/55
Documentlibrementdiffusablewww.duinoedu.com31/55
ACCESIMMEUBLE
PRESENTERBADGE
2. Placez la carte ou le badge dont le code est correct quelques centimtres de la bobine
a. le lecteur doit lire ce code et le comparer celui que vous avez saisi dans Ardublock
b. la porte s'ouvre et la LED s'allume
c. l'afficheur doit indiquer :
ACCESIMMEUBLE
CODEBON!
d. la porte doit s'ouvrir
3. Cette situation doit rester en l'tat pendant 4 secondes environ
4. Aprs 4 secondes (temporisation)
a. le code lu devient prim
b. la LED s'teint et la porte se ferme
c. l'afficheur doit indiquer :
ACCESIMMEUBLE
PRESENTERBADGE
5. Placez un tag non autoris
a. la LED doit rester teinte
b. l'afficheur doit indiquer nouveau
ACCESIMMEUBLE
PRESENTERBADGE
Nous allons maintenant ajouter 2 options :
une liste de codes
le rtro-clairage rouge / vert
Passons l'exemple suivant.
Documentlibrementdiffusablewww.duinoedu.com32/55
EXEMPLE
03
StaterKit N2
UTILIT
Permet d'ajuster la couleur du fond
-Rouge : 0 1000 (1000=maximum de rouge)
-Vert : 0 1000 (1000=maximum de vert)
-Bleu : 0 1000 (1000=maximum de bleu)
Documentlibrementdiffusablewww.duinoedu.com33/55
Documentlibrementdiffusablewww.duinoedu.com34/55
ACCESIMMEUBLE
PRESENTERBADGE
7. Placez la carte ou le badge dont le code est correct quelques centimtres de la bobine
a. le lecteur doit lire ce code et le comparer celui que vous avez saisi dans Ardublock
b. la porte s'ouvre et la LED s'allume
c. l'afficheur doit indiquer :
ACCESIMMEUBLE
CODEBON!
d. la porte doit s'ouvrir
8. Cette situation doit rester en l'tat pendant 4 secondes environ
9. Aprs 4 secondes (temporisation)
a. le code lu devient prim
b. la LED s'teint et la porte se ferme
c. l'afficheur doit indiquer :
ACCESIMMEUBLE
PRESENTERBADGE
10. Placez un tag non autoris,
a. la LED doit rester teinte
b. l'afficheur doit indiquer nouveau
ACCESIMMEUBLE
PRESENTERBADGE
Nous allons maintenant ajouter 2 options :
une liste de codes
le rtro-clairage rouge / vert
Passons l'exemple suivant.
Avant de passer l'exemple suivant, nous allons apprendre crer une liste de codes RFID autoriss.
En ralit, c'est assez simple dans Ardublock. Il suffit d'ajouter les codes les uns aprs les autres spars
par un espace. C'est tout !
Ajoutons maintenant 3 autres codes la liste
Dans Ardublock, ajoutez les codes RFID des 3 autres tags qui vous sont fournis. Il s'agit toujours des 8
derniers caractres directement lisibles sur les cartes ou badges.
Documentlibrementdiffusablewww.duinoedu.com35/55
Peut-tre vous demandez-vous s'il est possible d'enregistrer ces badges la vole ? La rponse est oui.
Non seulement vous pouvez le faire la main comme vu prcdemment, mais vous pouvez aussi les
enregistrer en mmoire RAM. Nous dvelopperons un peu plus tard un enregistrement en ROM
(EEPROM) si des demandes sont exprimes. Pour faire une demande de modification, cliquez ici.
Pour l'instant, les codes sont perdus la coupure de l'alimentation. C'est, semble-t-il, le plus pratique
dans une dmarche exprimentale en collge.
C'est l'objet de l'exemple suivant. Attention, il est un peu plus compliqu.
Documentlibrementdiffusablewww.duinoedu.com36/55
EXEMPLE
04
StaterKit N2
UTILIT
MENU Contrles
MENU Contrles
Documentlibrementdiffusablewww.duinoedu.com38/55
Documentlibrementdiffusablewww.duinoedu.com39/55
Si vous n'avez pas dbranch votre commutateur (switch), il devrait dj se trouver sur la bonne prise.
Sinon, vous savez quoi faire
EX04.4 - Nous allons crer le sous-programme Enregistrement
Reproduisez le sous-programme ci-dessous
La seule subtilit ici est que l'on embote un bloc de lecture RFID directement dans la mchoire "Code"
du bloc "Sauvegarde code". Ainsi, le code lu est directement enregistr dans la liste des codes autoriss.
Documentlibrementdiffusablewww.duinoedu.com40/55
Nous arrivons au terme des exemples lis la gestion des tags RFID. Vous pouvez diversifier vos tags en
y ajoutant des pices RFID. Une pice RFID peut tre colle sur diffrents supports pour crer une
collection d'objets RFID pour des projets originaux.
Nous allons maintenant passer la gestion d'un clavier type Keypad passif. C'est un module assez difficile
grer car il est totalement passif et c'est avec pas moins de 8 fils qu'il faut le connecter. Il en existe
bien sr des actifs mais ils sont beaucoup plus chers et la gestion d'un tel module est l'occasion
d'aborder de nouveaux aspects d'Arduino qu'il est bon de connatre.
Documentlibrementdiffusablewww.duinoedu.com42/55
EXEMPLE
05
StaterKit N2
Dans cet exemple, vous allez utiliser un keypad 16 touches pour saisir un code.
Le keypad que nous allons utiliser est un keypad passif. En d'autres termes, il n'a pas d'lectronique et
peut tre compar un ensemble de poussoirs placs les uns ct des autres et connects en lignes
et colonnes. Ce keypad n'est pas un produit Grove mais vous allez voir qu'il est possible de l'utiliser sans
problme condition de comprendre comment sont organiss les connecteurs Grove.
Si vous avez dj regard votre keypad, vous avez certainement constat qu'il faut 8 fils pour le
connecter. C'est beaucoup ! Mais l o il est imbattable, c'est sur son cot. Il est un bon exemple de
module purement passif.
EX05 - PROGRAMME EXEMPLE 05
EX05.1 - Le rsultat attendu est le suivant :
Objectif du programme EXEMPLE05
10. tat initial de notre serrure :
a. un mot de passe de 4 chiffres est pr-enregistr : "1234"
b. l'afficheur indique qu'il faut saisir un mot de passe
c. le voyant (LED) est teint
11. l'utilisateur saisit un mot de passe faux :
a. rien ne change
12. l'utilisateur saisit le bon mot de passe :
a. la LED s'allume pendant 4 secondes
b. on revient l'tat initial
BRANCHEMENT
Keypad 16 touches
X4
Documentlibrementdiffusablewww.duinoedu.com43/55
Documentlibrementdiffusablewww.duinoedu.com44/55
Documentlibrementdiffusablewww.duinoedu.com45/55
UTILIT
Permet de saisir des codes
-StartPin : premire prise utilise
-EndPin : dernire prise utilise
-Affichage port srie : affichage d'infos de
debuggage sur le port srie (permet de suivre
les saisies clavier)
Permet de lire la touche saisie
-Il est ainsi possible d'enregistrer des touches
dans une variable
Permet de tester un mot de passe la
vole
-Pwd : mot de passe (doit contenir
seulement les caractres disponible sur le
keypad)
Documentlibrementdiffusablewww.duinoedu.com46/55
Documentlibrementdiffusablewww.duinoedu.com47/55
EXEMPLE
06
StaterKit N2
Dans cet exemple, nous allons simplement complter le programme prcdent afin
qu'il soit complet.
Si vous avez test le programme prcdent, vous avez certainement remarqu que le code reste valide
tans qu'une nouvelle touche n'est pas appuye. Ce n'est pas le fonctionnement habituel d'un accs
d'immeuble mais il est possible de faire mieux. Dans un premier temps, nous allons simplement ajouter
un afficheur LCD. Ensuite nous verrons une astuce pour grer une temporisation.
EX06 - PROGRAMME EXEMPLE 06
EX06.1 - Le rsultat attendu est le suivant :
Objectif du programme EXEMPLE06
13. tat initial de notre serrure :
a. un mot de passe de 4 chiffres est pr-enregistr : "1234"
b. l'afficheur indique qu'il faut saisir un mot de passe
c. le voyant (LED) est teint
14. l'utilisateur saisit un mot de passe faux :
a. rien ne change
15. l'utilisateur saisit le bon mot de passe :
a. la LED s'allume pendant 4 secondes
b. l'afficheur indique : ENTRER
c. cet tat reste pendant 4 secondes
16. on revient l'tat initial
Documentlibrementdiffusablewww.duinoedu.com48/55
Documentlibrementdiffusablewww.duinoedu.com49/55
Vous devriez tre en mesure d'en comprendre le principe gnral. Il s'appuie sur l'utilisation d'une variable
nomme "acces" dont la valeur doit tre "BAS" pour justement permettre l'accs. Comme cette variable
est mise dans un tat "HAUT" lors d'une saisie correcte, le programme sort tout seul de la boucle et ne
reste plus bloqu dans la partie "Alors excute..." comme c'tait le cas prcdemment.
Documentlibrementdiffusablewww.duinoedu.com50/55
Le bloc "Delays MILLIS" est une temporisation pour laisser le temps l'utilisateur de passer la porte.
Un autre bloc utile est le bloc "ET". Il permet d'obliger les 2 tests tre vrais en mme temps.
Voici en rsum l'utilit des nouveaux blocs :
BLOCS RFID
UTILIT
Permet de dfinir une variable
-Ici, son nom est acces
-Sa valeur est HAUT
Permet de faire appel une variable
-La variable doit avoir t dfinie
Permet de tester si une variable la
bonne valeur
== (gale)
!= (diffrent)
Permet de tester simultanment 2
conditions
Exemple de test simultan
-Il faut que le mot de passe soit correct ET
que la variable acces soit gale BAS pour
excuter la partie haute du bloc
Fait une pause
-4000 = 4 secondes
Nous arrivons la fin de ce petit tutoriel. Nous esprons qu'il vous aura permis de vous faire ide
concrte de ce que permet Ardublock. N'oubliez pas de consulter le code Arduino. Ardublock n'est qu'un
gnrateur de code, peut-tre un jour passerez-vous l'criture du code Arduino. Dans ce cas prcis, le
passage se fera en douceur
EX06.4 - Vous avez un problme ?
N'hsitez-pas nous contacter en cas de problme. Vos remarques permettront aussi d'apporter des
amliorations ce document et Ardublock.
N'hsitez-pas aussi partager vos dcouvertes et vos crations. La force de l'OpenSource est le partage.
Demander une amlioration dans ce document
http://duinoedu.com/mail_modif_document.html
Demander de l'aide
http://duinoedu.com/contacterduinoedu.html
Bon Arduino Vous !
Documentlibrementdiffusablewww.duinoedu.com51/55