LEÇON 9: Circuit Arduino pour varier la luminosité de la LED à partir du Potentiomètre

Dans la leçon 6, vous avez appris à écrire des tensions analogues sur l’Arduiono et à la leçon 8, vous avez appris à lire les tensions analogues de l’arduino. Dans cette leçon, nous allons combiner ce que vous avez fait dans les leçons 6, 7 et 8 pour créer une LED avec une luminosité réglable. La luminosité sera réglée en fonction de la position du potentiomètre. Pour ce faire, nous devons régler le potentiomètre en tant que diviseur de tension, et nous devons piloter la LED depuis l’un des ports analogues. Pour cet exemple, j’utilise le port 9. Le schéma de circuit que j’utilise est illustré ci-dessous.

En plaçant la LED dans le circuit, rappelez-vous que vous devez toujours placer le pied le plus long vers la tension positive. Dans le cas ci-dessus, le pied le plus long doit être connecté à la résistance et le pied le plus court connecté à la terre. Rappelez-vous également que nous utilisons une résistance de 330 ohms dans le circuit pour limiter le courant à travers la LED.

L’objectif est maintenant d’utiliser ce que vous avez appris dans les trois dernières leçons. Vous voudrez lire une valeur du potentiomètre, puis écrire une tension sur la LED en fonction de la lecture du potentiomètre. Rappelez-vous que lorsque vous lisez une tension analogue entre 0 et 5 volts, l’arduino signalera un nombre compris entre 0 et 1023, avec 0 représentant 0 volt et 1023 représentant 5 volts.

De même, lorsque vous écrivez une tension analogue entre 0 et 5 volts, vous devez écrire un nombre compris entre 0 et 255. Si vous écrivez une valeur «0», cela correspond à 0 volt. Si vous écrivez une valeur de 255, cela produira 5 volts. Vous devez donc adapter vos valeurs d’écriture entre 0 et 255 pour obtenir des tensions comprises entre 0 et 5 volts.

La chose la plus délicate à présent est que nous voulons assombrir la LED en fonction de la valeur que nous lisons sur le potentiomètre. Si nous lisons une valeur 0 du potentiomètre, nous voulons écrire une valeur de 0, ce qui correspond à une tension de 0. Si nous lisons une valeur de 1023 à partir du potentiomètre, nous voudrons écrire notre tension maximale de 5 volts. , ce qui signifie que nous devons écrire une valeur de 255. Fondamentalement, nous devons mettre à l’échelle nos valeurs de lecture, qui seront comprises entre 0 et 1023 avec les valeurs d’écriture appropriées, qui doivent être comprises entre 0 et 255.

Comme dans les leçons précédentes, il s’agit d’une relation linéaire simple et nous permet d’utiliser les compétences que nous avons apprises en cours de mathématiques. Cette fiche explique les maths (les details et explications sur ce fichier ainsi que le programme sont en anglais):

Donc, du point de vue mathématique ci-dessus, nous pouvons voir que la valeur d’écriture que nous devrons écrire dans la LED doit être la valeur que nous lisons depuis le potentiomètre X (255/1023).

Avec les maths hors de portée, nous pouvons écrire le programme. Ce code est conçu pour le schéma ci-dessus où le port central du potentiomètre est lu avec la port A0 et la LED est écrite à partir de la port 9.


int potPin= A0;                  //Declare potPin to be analog pin A0
int LEDPin= 9;                   // Declare LEDPin to be arduino pin 9
int readValue;                   // Use this variable to read Potentiometer
int writeValue;                  // Use this variable for writing to LED

void setup() 
{
  pinMode(potPin, INPUT);          //set potPin to be an input
  pinMode(LEDPin, OUTPUT);         //set LEDPin to be an OUTPUT
  Serial.begin(9600);              // turn on Serial Port
}

void loop() 
{
  readValue = analogRead(potPin);                //Read the voltage on the Potentiometer
  writeValue = (255./1023.) * readValue;         //Calculate Write Value for LED
  analogWrite(LEDPin, writeValue);               //Write to the LED
  Serial.print("You are writing a value of ");   //for debugging print your values
  Serial.println(writeValue);
}

Avec ce code, vous devriez pouvoir régler la luminosité à partir du potentiomètre. Vous lisez la tension du potentiomètre, puis vous mettez à l’échelle la valeur que vous écrivez sur la LED en fonction de la valeur du potentiomètre.

Leave a Reply

Your email address will not be published. Required fields are marked *