0% ont trouvé ce document utile (0 vote)
180 vues13 pages

Programmer Avec Arduino

Transféré par

khadija dija diedhiou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
180 vues13 pages

Programmer Avec Arduino

Transféré par

khadija dija diedhiou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 13

PROGRAMMER AVEC ARDUINO

EXEMPLE1 MODULE LED

Retour à la liste  

But : Allumer ou éteindre une LED selon le schéma électrique suivant : 

Pour réaliser ce montage, nous aurons besoin de : 

• Un Arduino 
• Une plaque d’essai 
• Une résistance de 170Ω
• Une LED de votre couleur préférée connecté à la pin D13 de l’Arduino
• Quelques fils de prototypage 

La LED est  connectée à D13
Remarque : Les montages ont été réalisé avec Fritzing 

Code source

int pinLed=13; //variable pour le numéro du pin utilisé


void setup()
{
    pinMode(pinLed,OUTPUT); //le pin 13 en mode sortie de
courant
}
void loop()
{
    digitalWrite(pinLed,HIGH); // on passe le pin à +5V
    delay (1000);   // attendre 1 seconde
    digitalWrite(pinLed,LOW); // on passe le pin à 0V
    delay(1000);
}

EXEMPLE 2 : FEU DE CAREFOUR

Retour à la liste 

         But : Maintenant, , on va ajouter deux autres Leds.


         Pour cela, on utilise les résistances suivantes :

            LedR >>R = ( 5 - 1,6 ) / 0,02 = 170 Ohms 


            LedG >>R = ( 5 –2,1 ) / 0,02 = 145 Ohms 
            LedO >>R = ( 5 –2,1 ) / 0,02 = 145 Ohms

On va essayer de réaliser un chenillard avec ces trois leds 


Code source
int ledR = 3;
int ledG = 4;
int ledO = 5;
 
void setup()
 {
  // initialize the digital pin as an output.
  pinMode(ledR, OUTPUT);
  pinMode(ledG, OUTPUT);
  pinMode(ledO, OUTPUT);
}
 
void loop()
{
  digitalWrite(ledR, HIGH);   // allumer la led rouge
  delay(1000); // attendre 1 seconde
  digitalWrite(ledR, LOW);    // eteindre la led rouge
  delay(1000); // attendre 1 seconde
 
  digitalWrite(ledG, HIGH);   // allumer la led verte
  delay(1000); // attendre 1 seconde
  digitalWrite(ledG, LOW);    // eteindre la led verte
  delay(1000); // attendre 1 seconde
 
  digitalWrite(ledO, HIGH);   // allumer la led orange
  delay(1000); // attendre 1 seconde
  digitalWrite(ledO, LOW);    // eteindre la led orange
  delay(1000); // attendre 1 seconde
}
Retour à la liste

Exemple3 : Bouton poussoir

Retour à la liste 

          But : Allumer ou éteindre deux LEDs selon l’appui d’un bouton poussoir.


     

           Le bouton poussoir est connecté a la pin 2 suivant ce circuit :

       

Retour à la liste 

nn      But : Lecture de la valeur d’un potentiomètre.


          Le potentiomètre est connecté au pin A0 suivant ce circuit : 

          On pourra récupérer la valeur du potentiomètre et  s'en servir comme temps
d'attente pour l'allumage et l'extinction d’une Led.
Code source
int pinPot=0; //variable pour le CAN utilisé
int valPot=0; //variable qui va stocker la tension lue. On l'initialise
à 0.
int pinLED=8; // pin de connexion de la LED
void setup()
{
  pinMode(pinLED,OUTPUT); //Mode OUTPUT pour le pin de LED
  digitalWrite(pinLED,HIGH);//On allume la LED
}
void loop()
{
  valPot=analogRead(A0); //lit la valeur de tension, la transforme
et la stocke dans la variable
  int attente=valPot; //le délai d'attente est la valeur du
potentiomètre
  digitalWrite(pinLED,HIGH); //on allume la LED
  delay(attente); //on attend en fonction de la variable attente
  digitalWrite(pinLED,LOW); //on éteint la LED
  delay(attente); //on attend
}

EXEMPLE 4 LECTURE D’UNE ENTREE ANALOGIQUE VIA UN BOUTON POUSSOIR

Retour à la liste
   Code source
/*
le bouton poussoir est connecté au pin 2 avec une résistance pull-
down de 10KΩ
les LED sont connectées au pins 4 et 6 avec des résistances de
220Ω
*/
//déclaration des variables
int pinBouton;
int pinLed1, pinLed2;
void setup()
{
//initialisation des variables
pinBouton = 2;
pinLed1 = 4;
pinLed2 = 6;
//définition des modes
pinMode(pinBouton, INPUT); //mode lecture pour le bouton
pinMode(pinLed1, OUTPUT); //mode écriture pour led1
pinMode(pinLed2, OUTPUT); //mode écriture pour led2
}
void loop()
{
//lecture de l'état du bouton et stockage dans etatBouton
boolean etatBouton = digitalRead(pinBouton);
//test des conditions
if (etatBouton==HIGH)//test si bouton appuyé
{
digitalWrite(pinLed1,LOW); //led1 éteinte
digitalWrite(pinLed2,HIGH); //led2 allumée
}
if (etatBouton==LOW)//test si bouton levé
{
digitalWrite(pinLed1,HIGH); //Led1 allumée
digitalWrite(pinLed2,LOW); //led2 éteinte
}
delay(100); //petite attente
}
 
Retour à la liste

Exemple5 : Commande d'un servomoteur

Retour à la liste 

         But: On va maintenant utiliser la carte Arduino pour piloter la rotation d’un


servomoteur  Un servomoteur est un moteur dont on peut commander la
position angulaire, de 0° à 180° avec précision. 
          Schéma électrique du montage :
                     

Code source
#include <Servo.h> //on importe la bibliothèque Servo
 
Servo myservo;  // on définit un objet Servo nommé myServo
 
int pos = 0;    // variable pour stocker la position du servo
 
void setup()
 {
myservo.attach(8);  // on relie l'objet au pin de commande
}
 
void loop()
 {
for (pos = 0; pos<= 180; pos += 1) { // //on fait varier l'angle de 0 à
180° par tranche de 1°
myservo.write(pos);              // on dit à l'objet de mettre
le servo à 'pos'
delay(15);                       // attendre 15ms pour laisser le temps
au servo d'aller à sa position
  }
}
Retour à la liste

Exemple6 : Photorésistance LDR


Retour à la liste 

       But: On va maintenant utiliser la carte Arduino pour affficher la valeur d’une


LDR en pourcentage. 
        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). Le principe est assez simple : plus il y a de lumière, plus la
résistance est basse. L'obscurité provoque une résistance importante. 

          Schéma électrique du montage :


                     

Code source

int pinPR=A0; //pin de connexion pour la photorésistance


int valMin=1024; // on initialise la valeur minimale au plus haut
int valMax=0; // et la valeur maximale au plus bas

void setup()
 {
  Serial.begin(9600);
}
void loop()
 {
  int valeur=analogRead(pinPR); // on lit la valeur transmise par
la photorésistance
  if (valeur>valMax) //on compare avec valMax
    valMax=valeur;  // on modifie valMax
  if (valeur<valMin) // on compare avec valMin
    valMin=valeur;  // on modifie valMin
  int pourcentage=map(valeur,valMin,valMax,0,100);
//pourcentage entre les bornes
  //Séquence d'affichage
  Serial.print("Valeur : ");
  Serial.print(valMin);
  Serial.print(" < ");
  Serial.print(valeur);
  Serial.print(" < ");
  Serial.print(valMax);
  Serial.print("  soit : ");
  Serial.print(pourcentage);
  Serial.println(" %");
}

Retour à la liste

Vous aimerez peut-être aussi