SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Arduino en technologie
Mohamed Ali Daymi
Arduino, c’est quoi ?
• Une carte d’interface programmable capable de piloter des capteurs et des
actionneurs afin de simuler ou créer des systèmes automatisés.
• Un logiciel de programmation qui permet de programmer la carte en
fonction du comportement désiré.
• Le tout, logiciel comme matériel, est sous licence libre. Une grande
communauté d’amateurs et de passionnés contribuent à développer des
applications et à les partager.
Présentation de la carte
Port USB, permet de
communiquer avec la carte et
de l’alimenter en 5V.
Connecteur jack, permet de
rendre autonome la carte en y
connectant une pile ou une
batterie.
Entrées / sorties
numériques et PWM
Entrées analogiques
Sorties
d’alimention
Microcontrôleur : stocke et
exécute le programme
Partie alimentation de la
carte.
Gère la communication avec
l’ordinateur
Où connecter les modules ?
D12 Led 2
D11 Led 3
D10 Led 4
D9 Servomoteur
D7 Bouton poussoir 2
D6 Bouton poussoir 3
D5 Bouton poussoir 4
D4 Moteur 2a
D3 Buzzer
D2 Moteur 2b
D1 Moteur 1a
D0 Moteur 1b
D8 bouton poussoir 1
Gnd (0V)
Photorésistance A0
Suiveur de ligne 1 A1
Capteur de température A2
Barrière infra rouge A3
5V
Gnd (0V)
Gnd (0V)
Capteur de frappe A4
D13 Led 1
Suiveur de ligne 2 A5
Programmer avecArduino
Un programme utilisateurArduino est une suite d’instructions élémentaires sous forme textuelle,ligne par ligne.
lecture et son exécution des instructions
successives. Et ainsi de suite.
Cette boucle se déroule des milliers de fois par
seconde et anime la carte.
Commentaires
La carte lit puis effectue les instructions les unes après les autres,dans l’ordre défini par les lignes de code.
Structure d'un programme
Il y a trois phases consécutives:
Commentaires multilignes pour se souvenir du patch ==>
1/La définition des constantes et des variables
2/La configuration des entrées et sorties
void setup()
3/La programmation des interactions et
comportements
void loop()
Une fois la dernière ligne exécutée,la carte revient
au début de la troisième phase et recommence sa
Programmer avec le logiciel arduino
Le programme s’écrit à l’aide des fonctions décrites dans les pages suivantes.
Chaque module électronique utilisé est connecté à la carte.
Le programme est envoyé dans la carte qui gérera les modules comme cela a
été programmé.
Les fonctions s’écrivent entre les deux accolades de void loop() du programme
de base.
void loop()
{
lirecapteur(ir);
if(barriere<900)
{allumer(led1);}
else
{eteindre(led1);}
}
On programme ici
Charger un programme dans la carte
• Etape 1 : lancer le logiciel.
• Etape 2 : ouvrir et modifier le programme.
• Etape 3 : vérifier le programme.
• Etape 4 : connecter la carte à l’ordinateur avec le cordon USB.
• Etape 5 : transférer le programme vers la carte.
Si un message d’erreur apparaît : faire Outil/Port série/Com … et choisir le bon port USB.
• Etape 6 : vérifier le fonctionnement.
Module LED ou DEL
La LED ou DEL est un actionneur.
Lorsqu’elle est parcourue par un courant
électrique, elle émet de la lumière.
Nom à utiliser dans le
programme
Connecté à la broche
led1 D13
led2 D12
ledvar1 D11
ledvar2 D10
Fonctions Commentaires
allumer(nom); Allume les LED led1 ou led2
eteindre(nom); Eteint les LED led1 ou led2
varier(nom); Fait varier la luminosité des LED
connectées à ledvar1 et ledvar2.
pendant(durée); durée est une valeur en
millisecondes. 1s = 1000 ms
Exemple : faire clignoter une LED connectée à D13
void loop()
{
allumer(led1);
pendant(1000);
eteindre(led1);
pendant(1000);
}
Servomoteur
Un servomoteur est un moteur dont on
peut commander la position angulaire, de
0° à 180° avec précision.
Le fil jaune ou blanc se connecte à D9.
Fils Connecté à la broche
Fil noir Gnd
Fil rouge 5V
Fil jaune ou blanc D9
Fonctions Commentaires
angleservo(angle); angle est compris entre 0 et
180. Il correspond à l’angle
auquel le servomoteur se
déplacera.
Exemple : faire tourner le servomoteur de 0° à 45° par
pas de 5°
void loop()
{
angleservo(0);
for(int i=0; i<=45; i+=5)
{
angleservo(i);
pendant(500) ;
}
}
D9
Bouton poussoir, interrupteur et micro rupteur
Le bouton poussoir est un interrupteur
qui ferme le circuit lorsqu’on appuie
dessus et l’ouvre lorsqu’on relâche.
Le micro rupteur est un bouton poussoir
auquel est ajouté une languette pour
détecter un contact.
Nom à utiliser dans le
programme
Connecté à la broche
bp1 D8
bp2 D7
bp3 D6
bp4 D5
Fonctions Commentaires
lire(nom); Permet de lire la valeur d’un
bouton poussoir.
If(etatnom==HIGH)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si le
bouton poussoir est appuyé.
Sinon, déclenche une autre
action désirée.
HIGH : il est appuyé
LOW : il est relâché
Exemple : fait tourner le moteur dans un sens si on
appuie sur le bouton poussoir connecté à D8
void loop()
{
lire(bp1);
if (etatbp1==HIGH)
{ avancer(); }
else
{ arret(); }
}
Bouton poussoir Micro rupteur
Moteur à courant continu
Broches des moteurs Connecté à la broche
Moteur 1 a D1
Moteur 1 b D0
Moteur 2 a D4
Moteur 2 b D2
Le module de commande de moteurs à
courant continue est une interface de
puissance qui permet de piloter deux
moteurs. On peut les faire tourner dans
les deux sens et les arrêter.
Exemple : si le bouton poussoir est appuyé, les
moteurs
void loop()
{
lire(bp1);
if (etatbp1==HIGH)
{
reculer(); pendant(2000);
arret();
}
else
{
avancer(); pendant(2000);
arret();
}
}
Fonctions Commentaires
avancer();
Fait tourner les moteurs
dans un sens
reculer();
Fait tourner les moteurs
dans l’autre sens
arret(); Arrête les moteurs
pendant(durée);
durée est une valeur en
millisecondes. 1s = 1000 ms
Buzzer
Le buzzer vibre en émettant un son à la
fréquence du signal électrique qui le
parcours.
Fils Connecté à la broche
Fil noir Gnd
Fil rouge D3
Fil jaune ou blanc D9
Fonctions Commentaires
melodie(); Joue une mélodie
préprogrammée.
Exemple : jouer une mélodie préprogrammée et
attendre 5 secondes.
void loop()
{
melodie();
pendant(5000);
}
D3 D3
Photorésistance (LDR)
La photorésistance est une résistance
qui varie en fonction de la luminosité.
La carte renvoie un nombre compris
entre 0 (absence de lumière) et 1023
(luminosité maximum).
Nom à utiliser dans le
programme
Connecté à la broche
ldr A0
lumiere -
Fonctions Commentaires
lirecapteur(ldr); Permet de lire une valeur de
luminosité.
If(lumiere>=seuil)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si la
luminosité est supérieure ou
inférieure au seuil. Sinon,
déclenche une autre action
désirée.
seuil :
nombre entre 0 (luminosité
min.) et 1023 (luminosité max.)
Comparaisons possibles :
> ou < ou >= ou <=
Exemple : allume la LED si la quantité de lumière
captée est inférieure au seuil.
void loop()
{
lirecapteur(ldr) ;
if(lumiere<=500)
{allumer(led1)}
else
{eteindre(led1)}
}
Barrière infrarouge
Le module barrière infrarouge connecté à l’entrée analogique A3 permet
de détecter le passage d’un objet entre la LED infrarouge émettrice et le
phototransistor infrarouge récepteur.
Le nombre récupéré par l’interface arduino est compris entre 0 et 1023.
1023 est le nombre renvoyé si le faisceau infrarouge est coupé.
Nom à utiliser dans le
programme
Connecté à la broche
ir A3
barriere -
Fonctions Commentaires
lirecapteur(irr); Permet de lire une valeur de
luminosité.
If(barriere>=seuil)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si la si
le faisceau lumineux est
coupé. Sinon, déclenche une
autre action désirée.
seuil :
nombre entre 0 (luminosité
min.) et 1023 (luminosité max.)
Comparaisons possibles :
> ou < ou >= ou <=
Exemple : allume la LED si la quantité de lumière
captée est inférieure au seuil.
void loop()
{
lirecapteur(ir) ;
if(barriere<=900)
{allumer(led1)}
else
{eteindre(led1)}
}
Suiveur de ligne
Le suiveur de ligne fonctionne sur le principe
de la barrière infrarouge. La lumière renvoyée
par le blanc est supérieure à celle renvoyée par
le noir.
0 -> noir
1 -> blanc
Nom à utiliser dans le
programme
Connecté à la broche
ligne1 A1
ligne2 A5
couleur1 Stocke le chiffre de la couleur1
couleur2 Stocke le chiffre de la couleur2
Fonctions Commentaires
lirecapteur(nom); Permet de lire une valeur de
quantité de lumière réfléchie.
If(couleur1==0)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si la en
fonction des couleurs
détectées.
Couleur blanche : 0
Couleur noire : 1
Exemple : allume la LED si la quantité de lumière
captée est inférieure au seuil.
void loop()
{
lirecapteur(ligne1) ;
lirecapteur(ligne2) ;
if(couleur1==0 && couleur2==0)
{avancer();pendant(1000)}
elseif(couleur1==1 && couleur2==0)
{gauche();pendant(1000);}
elseif(couleur1==0 && couleur2==1)
{droite(); pendant(1000);}
elseif(couleur1==1 && couleur2==1)
{arret();}
}
A1 A2
Gnd
5V
couleur1 couleur2
Capteur de température
Le capteur de température permet à la
carte de calculer la température à
proximité de ce dernier.
Nom à utiliser dans le
programme
Connecté à la broche
- A2
temperature -
Fonctions Commentaires
liretemp(); Permet de lire une valeur de
luminosité.
if(temperature>=seuil)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si la
température est supérieure
ou inférieure au seuil. Sinon,
déclenche une autre action
désirée.
seuil :
nombre entre 0 et 50 en
degré Celius.
Comparaisons possibles :
> ou < ou >= ou <=
Exemple : allume la LED si la quantité de lumière
captée est inférieure au seuil.
void loop()
{
liretemp() ;
if(temperature<=28)
{sens1() ;}
else
{arret() ;}
}
Capteur de frappe
Le module capteur de frappe connecté à l’entrée
analogique A4 permet de détecter une frappe
sur le buzzer ou sur son support.
Le nombre récupéré par l’interface arduino est
compris entre 0 et 1023.
Un seuil de détection de 100 suffit à détecter
une petite frappe.
Nom à utiliser dans le
programme
Connecté à la broche
frappe A4
intensite -
Fonctions Commentaires
lirecapteur(frappe); Permet de lire une valeur de
luminosité.
If(intensite>=seuil)
{
ACTION DESIREE
}
else
{
ATION DESIREE
}
Déclenche une action si la
frappe est supérieure ou
inférieure au seuil. Sinon,
déclenche une autre action
désirée.
seuil :
nombre entre 0 (rien) et
1023 (frappe max.)
Comparaisons possibles :
> ou < ou >= ou <=
Exemple : allume la LED si la frappe captée est
supérieure au seuil.
void loop()
{
lirecapteur(frappe) ;
if(intensite>=100)
{allumer(led1)}
else
{eteindre(led1)}
}
Les tests dans le programme
Test Dans le programme
Si … if(condition)
{instructions}
Si … Sinon if(condition)
{instructions}
else
{instructions}
Si … Sinon Si … if(condition)
{instructions}
elseif(condition)
{instructions}
Faire … Tant que… do
{instructions}
while(condition) ;
Tan que … while(condition)
{instructions}
Compteur for(variable ; condition ; comptage)
{instructions}
Exemples : exécute les instructions 5 fois.
for(variable=0 ; variable == 4 ; variable+=1)
{instruction}
for(int i=0 ; i==4)
{i++
instructions}
Les conditions
Condition Dans le programme
Egale à ==
Supérieur >
Inférieur <
Supérieur ou égal >=
Inférieur ou égal <=
Non égal !=
Opérateurs logiques
Opérateur logique
Dans le
programme
Exemple
ET logique
Vraie si les deux
conditions sont
remplies
&& if(condition 1 && conditions 2)
OU logique
Vrai si l’une ou l’autre des
conditions est remplie
!! if(condition 1 !! conditions 2)
NON logique
Vrai si la condition est
fausse
! if( ! condition)
Exemple de câblage
Arduino France : http://arduino.cc/fr/
Fournisseurs :
http://shop.snootlab.com
www.lextronic.fr
Blog sur arduino de M. Russeil :
http://blog.crdp-versailles.fr/technogalois/index.php/

Contenu connexe

Similaire à Arduino_en_technologie.ppt

Formation Langage c.pptx
Formation Langage c.pptxFormation Langage c.pptx
Formation Langage c.pptxValdy Ngouabira
 
4 programmer-avec-m block
4 programmer-avec-m block4 programmer-avec-m block
4 programmer-avec-m blockelbellili
 
3239937.ppt
3239937.ppt3239937.ppt
3239937.pptfatiha17
 
Installation et utilisation de l'extension ts mblock
Installation et utilisation de l'extension ts mblockInstallation et utilisation de l'extension ts mblock
Installation et utilisation de l'extension ts mblockخالد المشكوري
 
Programmation des cartes Arduino - Se familiariser avec la programmation Simple
Programmation des cartes Arduino - Se familiariser avec la programmation SimpleProgrammation des cartes Arduino - Se familiariser avec la programmation Simple
Programmation des cartes Arduino - Se familiariser avec la programmation SimpleAyoub Rouzi
 
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017Romaric Saounde Tsopnang
 
Tp circuits electriques( avec logiciel "CADENCE PSD")
Tp circuits electriques( avec logiciel "CADENCE PSD") Tp circuits electriques( avec logiciel "CADENCE PSD")
Tp circuits electriques( avec logiciel "CADENCE PSD") YassineLamgammah
 
Programmation En Langage Pl7 2
Programmation En Langage Pl7 2Programmation En Langage Pl7 2
Programmation En Langage Pl7 2youri59490
 
Utilisation ardublock-v2 (1)
Utilisation ardublock-v2 (1)Utilisation ardublock-v2 (1)
Utilisation ardublock-v2 (1)Gerard Labernia
 
121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheadscgodefroy
 
Systeme embarque td1
Systeme embarque td1Systeme embarque td1
Systeme embarque td1SinGuy
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 
Généralités sur les microcontrôleurs et PicBasic
Généralités sur les microcontrôleurs et PicBasicGénéralités sur les microcontrôleurs et PicBasic
Généralités sur les microcontrôleurs et PicBasicmorin moli
 

Similaire à Arduino_en_technologie.ppt (20)

Formation Langage c.pptx
Formation Langage c.pptxFormation Langage c.pptx
Formation Langage c.pptx
 
2-Algo.ppt
2-Algo.ppt2-Algo.ppt
2-Algo.ppt
 
T ps dsp
T ps dspT ps dsp
T ps dsp
 
4 programmer-avec-m block
4 programmer-avec-m block4 programmer-avec-m block
4 programmer-avec-m block
 
3239937.ppt
3239937.ppt3239937.ppt
3239937.ppt
 
Installation et utilisation de l'extension ts mblock
Installation et utilisation de l'extension ts mblockInstallation et utilisation de l'extension ts mblock
Installation et utilisation de l'extension ts mblock
 
Programmation des cartes Arduino - Se familiariser avec la programmation Simple
Programmation des cartes Arduino - Se familiariser avec la programmation SimpleProgrammation des cartes Arduino - Se familiariser avec la programmation Simple
Programmation des cartes Arduino - Se familiariser avec la programmation Simple
 
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017
The iTronics - Arduino + Raspberry Pi Workshop 20-04-2017
 
Tp circuits electriques( avec logiciel "CADENCE PSD")
Tp circuits electriques( avec logiciel "CADENCE PSD") Tp circuits electriques( avec logiciel "CADENCE PSD")
Tp circuits electriques( avec logiciel "CADENCE PSD")
 
Programmation En Langage Pl7 2
Programmation En Langage Pl7 2Programmation En Langage Pl7 2
Programmation En Langage Pl7 2
 
Utilisation ardublock-v2 (1)
Utilisation ardublock-v2 (1)Utilisation ardublock-v2 (1)
Utilisation ardublock-v2 (1)
 
121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads121115 Présentation Arduino Cocoaheads
121115 Présentation Arduino Cocoaheads
 
Formation algorithme
Formation algorithmeFormation algorithme
Formation algorithme
 
Mini projet 3t2i se
Mini projet 3t2i seMini projet 3t2i se
Mini projet 3t2i se
 
iTronics - Demo Time - Genuino Day 2016
iTronics - Demo Time - Genuino Day 2016iTronics - Demo Time - Genuino Day 2016
iTronics - Demo Time - Genuino Day 2016
 
TAD (1).pptx
TAD (1).pptxTAD (1).pptx
TAD (1).pptx
 
Systeme embarque td1
Systeme embarque td1Systeme embarque td1
Systeme embarque td1
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 
Ladder
LadderLadder
Ladder
 
Généralités sur les microcontrôleurs et PicBasic
Généralités sur les microcontrôleurs et PicBasicGénéralités sur les microcontrôleurs et PicBasic
Généralités sur les microcontrôleurs et PicBasic
 

Plus de Mohamed Ali Daymi

Plus de Mohamed Ali Daymi (6)

voyage.pptx
voyage.pptxvoyage.pptx
voyage.pptx
 
Arduino_Board_and_Shield.ppt
Arduino_Board_and_Shield.pptArduino_Board_and_Shield.ppt
Arduino_Board_and_Shield.ppt
 
Grafcet exercice-corrigé-04
Grafcet exercice-corrigé-04Grafcet exercice-corrigé-04
Grafcet exercice-corrigé-04
 
Corr les-automates-programmables-indestriel
Corr les-automates-programmables-indestrielCorr les-automates-programmables-indestriel
Corr les-automates-programmables-indestriel
 
228451 p03
228451 p03228451 p03
228451 p03
 
Muf141231
Muf141231Muf141231
Muf141231
 

Arduino_en_technologie.ppt

  • 2. Arduino, c’est quoi ? • Une carte d’interface programmable capable de piloter des capteurs et des actionneurs afin de simuler ou créer des systèmes automatisés. • Un logiciel de programmation qui permet de programmer la carte en fonction du comportement désiré. • Le tout, logiciel comme matériel, est sous licence libre. Une grande communauté d’amateurs et de passionnés contribuent à développer des applications et à les partager.
  • 3. Présentation de la carte Port USB, permet de communiquer avec la carte et de l’alimenter en 5V. Connecteur jack, permet de rendre autonome la carte en y connectant une pile ou une batterie. Entrées / sorties numériques et PWM Entrées analogiques Sorties d’alimention Microcontrôleur : stocke et exécute le programme Partie alimentation de la carte. Gère la communication avec l’ordinateur
  • 4. Où connecter les modules ? D12 Led 2 D11 Led 3 D10 Led 4 D9 Servomoteur D7 Bouton poussoir 2 D6 Bouton poussoir 3 D5 Bouton poussoir 4 D4 Moteur 2a D3 Buzzer D2 Moteur 2b D1 Moteur 1a D0 Moteur 1b D8 bouton poussoir 1 Gnd (0V) Photorésistance A0 Suiveur de ligne 1 A1 Capteur de température A2 Barrière infra rouge A3 5V Gnd (0V) Gnd (0V) Capteur de frappe A4 D13 Led 1 Suiveur de ligne 2 A5
  • 5. Programmer avecArduino Un programme utilisateurArduino est une suite d’instructions élémentaires sous forme textuelle,ligne par ligne. lecture et son exécution des instructions successives. Et ainsi de suite. Cette boucle se déroule des milliers de fois par seconde et anime la carte. Commentaires La carte lit puis effectue les instructions les unes après les autres,dans l’ordre défini par les lignes de code. Structure d'un programme Il y a trois phases consécutives: Commentaires multilignes pour se souvenir du patch ==> 1/La définition des constantes et des variables 2/La configuration des entrées et sorties void setup() 3/La programmation des interactions et comportements void loop() Une fois la dernière ligne exécutée,la carte revient au début de la troisième phase et recommence sa
  • 6. Programmer avec le logiciel arduino Le programme s’écrit à l’aide des fonctions décrites dans les pages suivantes. Chaque module électronique utilisé est connecté à la carte. Le programme est envoyé dans la carte qui gérera les modules comme cela a été programmé. Les fonctions s’écrivent entre les deux accolades de void loop() du programme de base. void loop() { lirecapteur(ir); if(barriere<900) {allumer(led1);} else {eteindre(led1);} } On programme ici
  • 7. Charger un programme dans la carte • Etape 1 : lancer le logiciel. • Etape 2 : ouvrir et modifier le programme. • Etape 3 : vérifier le programme. • Etape 4 : connecter la carte à l’ordinateur avec le cordon USB. • Etape 5 : transférer le programme vers la carte. Si un message d’erreur apparaît : faire Outil/Port série/Com … et choisir le bon port USB. • Etape 6 : vérifier le fonctionnement.
  • 8. Module LED ou DEL La LED ou DEL est un actionneur. Lorsqu’elle est parcourue par un courant électrique, elle émet de la lumière. Nom à utiliser dans le programme Connecté à la broche led1 D13 led2 D12 ledvar1 D11 ledvar2 D10 Fonctions Commentaires allumer(nom); Allume les LED led1 ou led2 eteindre(nom); Eteint les LED led1 ou led2 varier(nom); Fait varier la luminosité des LED connectées à ledvar1 et ledvar2. pendant(durée); durée est une valeur en millisecondes. 1s = 1000 ms Exemple : faire clignoter une LED connectée à D13 void loop() { allumer(led1); pendant(1000); eteindre(led1); pendant(1000); }
  • 9. Servomoteur Un servomoteur est un moteur dont on peut commander la position angulaire, de 0° à 180° avec précision. Le fil jaune ou blanc se connecte à D9. Fils Connecté à la broche Fil noir Gnd Fil rouge 5V Fil jaune ou blanc D9 Fonctions Commentaires angleservo(angle); angle est compris entre 0 et 180. Il correspond à l’angle auquel le servomoteur se déplacera. Exemple : faire tourner le servomoteur de 0° à 45° par pas de 5° void loop() { angleservo(0); for(int i=0; i<=45; i+=5) { angleservo(i); pendant(500) ; } } D9
  • 10. Bouton poussoir, interrupteur et micro rupteur Le bouton poussoir est un interrupteur qui ferme le circuit lorsqu’on appuie dessus et l’ouvre lorsqu’on relâche. Le micro rupteur est un bouton poussoir auquel est ajouté une languette pour détecter un contact. Nom à utiliser dans le programme Connecté à la broche bp1 D8 bp2 D7 bp3 D6 bp4 D5 Fonctions Commentaires lire(nom); Permet de lire la valeur d’un bouton poussoir. If(etatnom==HIGH) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si le bouton poussoir est appuyé. Sinon, déclenche une autre action désirée. HIGH : il est appuyé LOW : il est relâché Exemple : fait tourner le moteur dans un sens si on appuie sur le bouton poussoir connecté à D8 void loop() { lire(bp1); if (etatbp1==HIGH) { avancer(); } else { arret(); } } Bouton poussoir Micro rupteur
  • 11. Moteur à courant continu Broches des moteurs Connecté à la broche Moteur 1 a D1 Moteur 1 b D0 Moteur 2 a D4 Moteur 2 b D2 Le module de commande de moteurs à courant continue est une interface de puissance qui permet de piloter deux moteurs. On peut les faire tourner dans les deux sens et les arrêter. Exemple : si le bouton poussoir est appuyé, les moteurs void loop() { lire(bp1); if (etatbp1==HIGH) { reculer(); pendant(2000); arret(); } else { avancer(); pendant(2000); arret(); } } Fonctions Commentaires avancer(); Fait tourner les moteurs dans un sens reculer(); Fait tourner les moteurs dans l’autre sens arret(); Arrête les moteurs pendant(durée); durée est une valeur en millisecondes. 1s = 1000 ms
  • 12. Buzzer Le buzzer vibre en émettant un son à la fréquence du signal électrique qui le parcours. Fils Connecté à la broche Fil noir Gnd Fil rouge D3 Fil jaune ou blanc D9 Fonctions Commentaires melodie(); Joue une mélodie préprogrammée. Exemple : jouer une mélodie préprogrammée et attendre 5 secondes. void loop() { melodie(); pendant(5000); } D3 D3
  • 13. Photorésistance (LDR) La photorésistance est une résistance qui varie en fonction de la luminosité. La carte renvoie un nombre compris entre 0 (absence de lumière) et 1023 (luminosité maximum). Nom à utiliser dans le programme Connecté à la broche ldr A0 lumiere - Fonctions Commentaires lirecapteur(ldr); Permet de lire une valeur de luminosité. If(lumiere>=seuil) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si la luminosité est supérieure ou inférieure au seuil. Sinon, déclenche une autre action désirée. seuil : nombre entre 0 (luminosité min.) et 1023 (luminosité max.) Comparaisons possibles : > ou < ou >= ou <= Exemple : allume la LED si la quantité de lumière captée est inférieure au seuil. void loop() { lirecapteur(ldr) ; if(lumiere<=500) {allumer(led1)} else {eteindre(led1)} }
  • 14. Barrière infrarouge Le module barrière infrarouge connecté à l’entrée analogique A3 permet de détecter le passage d’un objet entre la LED infrarouge émettrice et le phototransistor infrarouge récepteur. Le nombre récupéré par l’interface arduino est compris entre 0 et 1023. 1023 est le nombre renvoyé si le faisceau infrarouge est coupé. Nom à utiliser dans le programme Connecté à la broche ir A3 barriere - Fonctions Commentaires lirecapteur(irr); Permet de lire une valeur de luminosité. If(barriere>=seuil) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si la si le faisceau lumineux est coupé. Sinon, déclenche une autre action désirée. seuil : nombre entre 0 (luminosité min.) et 1023 (luminosité max.) Comparaisons possibles : > ou < ou >= ou <= Exemple : allume la LED si la quantité de lumière captée est inférieure au seuil. void loop() { lirecapteur(ir) ; if(barriere<=900) {allumer(led1)} else {eteindre(led1)} }
  • 15. Suiveur de ligne Le suiveur de ligne fonctionne sur le principe de la barrière infrarouge. La lumière renvoyée par le blanc est supérieure à celle renvoyée par le noir. 0 -> noir 1 -> blanc Nom à utiliser dans le programme Connecté à la broche ligne1 A1 ligne2 A5 couleur1 Stocke le chiffre de la couleur1 couleur2 Stocke le chiffre de la couleur2 Fonctions Commentaires lirecapteur(nom); Permet de lire une valeur de quantité de lumière réfléchie. If(couleur1==0) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si la en fonction des couleurs détectées. Couleur blanche : 0 Couleur noire : 1 Exemple : allume la LED si la quantité de lumière captée est inférieure au seuil. void loop() { lirecapteur(ligne1) ; lirecapteur(ligne2) ; if(couleur1==0 && couleur2==0) {avancer();pendant(1000)} elseif(couleur1==1 && couleur2==0) {gauche();pendant(1000);} elseif(couleur1==0 && couleur2==1) {droite(); pendant(1000);} elseif(couleur1==1 && couleur2==1) {arret();} } A1 A2 Gnd 5V couleur1 couleur2
  • 16. Capteur de température Le capteur de température permet à la carte de calculer la température à proximité de ce dernier. Nom à utiliser dans le programme Connecté à la broche - A2 temperature - Fonctions Commentaires liretemp(); Permet de lire une valeur de luminosité. if(temperature>=seuil) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si la température est supérieure ou inférieure au seuil. Sinon, déclenche une autre action désirée. seuil : nombre entre 0 et 50 en degré Celius. Comparaisons possibles : > ou < ou >= ou <= Exemple : allume la LED si la quantité de lumière captée est inférieure au seuil. void loop() { liretemp() ; if(temperature<=28) {sens1() ;} else {arret() ;} }
  • 17. Capteur de frappe Le module capteur de frappe connecté à l’entrée analogique A4 permet de détecter une frappe sur le buzzer ou sur son support. Le nombre récupéré par l’interface arduino est compris entre 0 et 1023. Un seuil de détection de 100 suffit à détecter une petite frappe. Nom à utiliser dans le programme Connecté à la broche frappe A4 intensite - Fonctions Commentaires lirecapteur(frappe); Permet de lire une valeur de luminosité. If(intensite>=seuil) { ACTION DESIREE } else { ATION DESIREE } Déclenche une action si la frappe est supérieure ou inférieure au seuil. Sinon, déclenche une autre action désirée. seuil : nombre entre 0 (rien) et 1023 (frappe max.) Comparaisons possibles : > ou < ou >= ou <= Exemple : allume la LED si la frappe captée est supérieure au seuil. void loop() { lirecapteur(frappe) ; if(intensite>=100) {allumer(led1)} else {eteindre(led1)} }
  • 18. Les tests dans le programme Test Dans le programme Si … if(condition) {instructions} Si … Sinon if(condition) {instructions} else {instructions} Si … Sinon Si … if(condition) {instructions} elseif(condition) {instructions} Faire … Tant que… do {instructions} while(condition) ; Tan que … while(condition) {instructions} Compteur for(variable ; condition ; comptage) {instructions} Exemples : exécute les instructions 5 fois. for(variable=0 ; variable == 4 ; variable+=1) {instruction} for(int i=0 ; i==4) {i++ instructions}
  • 19. Les conditions Condition Dans le programme Egale à == Supérieur > Inférieur < Supérieur ou égal >= Inférieur ou égal <= Non égal !=
  • 20. Opérateurs logiques Opérateur logique Dans le programme Exemple ET logique Vraie si les deux conditions sont remplies && if(condition 1 && conditions 2) OU logique Vrai si l’une ou l’autre des conditions est remplie !! if(condition 1 !! conditions 2) NON logique Vrai si la condition est fausse ! if( ! condition)
  • 22. Arduino France : http://arduino.cc/fr/ Fournisseurs : http://shop.snootlab.com www.lextronic.fr Blog sur arduino de M. Russeil : http://blog.crdp-versailles.fr/technogalois/index.php/