Modifications

Sauter à la navigation Sauter à la recherche
Ligne 60 : Ligne 60 :     
== Faire encore mieux ==
 
== Faire encore mieux ==
 +
 +
 +
=== Seuil d'allumage (threshold) ===
 +
Vous voulez parfois activer une sortie lorsqu'une valeur a atteint un certain seuil. Pour faire cela avec un potentiomètre, changez le code de {{fname|loop()}} comme suit :
 +
 +
<nowiki>void loop() {
 +
  int threshold = 512; // seuil = 512
 +
  if(analogRead(sensorPin) > threshold){
 +
      digitalWrite(ledPin, HIGH);
 +
  }
 +
  else{
 +
      digitalWrite(ledPin, LOW);
 +
  }
 +
}</nowiki>
 +
 +
Cela allumera la LED lorsque la valeur sera supérieure à 512 (mi-course), vous pouvez adapter la sensibilité en modifiant la valeur du seuil (la variable {{fname|threshold}} ).
 +
 +
=== Faire un Dimmer (fading) ===
 +
Contrôlons maintenant la luminosité de la LED directement à partir du potentiomètre.
 +
 +
Pour y arriver, nous devons d'abord changer la broche sur laquelle la LED est connectée.
 +
 +
Déplacez le fil de la pin 13 à la pin 9 et changez la ligne de code:
 +
 +
<nowiki>int ledPin = 13;</nowiki>
 +
 +
vers
 +
 +
<nowiki>int ledPin = 9;</nowiki>
 +
 +
Modifiez ensuite le code de {{fname|loop()}} comme suit :
 +
 +
<nowiki>void loop() {
 +
  int value = analogRead(potPin) / 4;
 +
  analogWrite(ledPin, value);
 +
}</nowiki>
 +
 +
Chargez le code et regardez la luminosité de la LED varier en fonction de la position du potentiomètre. (Note: la raison pour laquelle nous avons divisé la valeur par 4 est que la fonction analogRead() retourne une valeur entre 0 et 1024 (10 bits), et que analogWrite() accepte une valeur entre 0 et 255 (8 bits).
 +
 +
=== Contrôler un servo ===
 +
C'est vraiment un bel exemple qui regroupe ensemble une série de montages ensembles.
 +
 +
Raccordez le Servo moteur comme nous l'avons fait au CIRC-04, ouvrez le programme d'exemple nommé Knob (Fichier > Exemples > Servo > Knob ), changez ensuite une ligne de code.
 +
 +
<nowiki>int potpin = 0;</nowiki>
 +
 +
vers
 +
 +
<nowiki>int potpin = 2;</nowiki>
 +
 +
Chargez sur votre Arduino et regardez l'axe du Servo tourner lorsque vous tournez le potentiomètre.
 +
 
=== Parasites, lecture multiple et moyenne ===
 
=== Parasites, lecture multiple et moyenne ===
 
Il est également possible de réaliser des lectures en rafale et de les stocker dans un tableau.
 
Il est également possible de réaliser des lectures en rafale et de les stocker dans un tableau.
Ligne 119 : Ligne 171 :  
# calcul de la moyenne
 
# calcul de la moyenne
 
print( 'Moyenne: %s' % (sum(buf)/len(buf)) )</nowiki>
 
print( 'Moyenne: %s' % (sum(buf)/len(buf)) )</nowiki>
  −
  −
=== Seuil d'allumage (threshold) ===
  −
Vous voulez parfois activer une sortie lorsqu'une valeur a atteint un certain seuil. Pour faire cela avec un potentiomètre, changez le code de {{fname|loop()}} comme suit :
  −
  −
<nowiki>void loop() {
  −
  int threshold = 512; // seuil = 512
  −
  if(analogRead(sensorPin) > threshold){
  −
      digitalWrite(ledPin, HIGH);
  −
  }
  −
  else{
  −
      digitalWrite(ledPin, LOW);
  −
  }
  −
}</nowiki>
  −
  −
Cela allumera la LED lorsque la valeur sera supérieure à 512 (mi-course), vous pouvez adapter la sensibilité en modifiant la valeur du seuil (la variable {{fname|threshold}} ).
  −
  −
=== Faire un Dimmer (fading) ===
  −
Contrôlons maintenant la luminosité de la LED directement à partir du potentiomètre.
  −
  −
Pour y arriver, nous devons d'abord changer la broche sur laquelle la LED est connectée.
  −
  −
Déplacez le fil de la pin 13 à la pin 9 et changez la ligne de code:
  −
  −
<nowiki>int ledPin = 13;</nowiki>
  −
  −
vers
  −
  −
<nowiki>int ledPin = 9;</nowiki>
  −
  −
Modifiez ensuite le code de {{fname|loop()}} comme suit :
  −
  −
<nowiki>void loop() {
  −
  int value = analogRead(potPin) / 4;
  −
  analogWrite(ledPin, value);
  −
}</nowiki>
  −
  −
Chargez le code et regardez la luminosité de la LED varier en fonction de la position du potentiomètre. (Note: la raison pour laquelle nous avons divisé la valeur par 4 est que la fonction analogRead() retourne une valeur entre 0 et 1024 (10 bits), et que analogWrite() accepte une valeur entre 0 et 255 (8 bits).
  −
  −
=== Contrôler un servo ===
  −
C'est vraiment un bel exemple qui regroupe ensemble une série de montages ensembles.
  −
  −
Raccordez le Servo moteur comme nous l'avons fait au CIRC-04, ouvrez le programme d'exemple nommé Knob (Fichier > Exemples > Servo > Knob ), changez ensuite une ligne de code.
  −
  −
<nowiki>int potpin = 0;</nowiki>
  −
  −
vers
  −
  −
<nowiki>int potpin = 2;</nowiki>
  −
  −
Chargez sur votre Arduino et regardez l'axe du Servo tourner lorsque vous tournez le potentiomètre.
      
== Internet ==  
 
== Internet ==  
29 884

modifications

Menu de navigation