Overblog Suivre ce blog
Editer l'article Administration Créer mon blog

Pour améliorer l'animation autour du ruban à LED , j'ai mis un Arduino Uno pour allumer et éteindre les Leds de façon progressive.

Le ruban à LED pour une longueur de 90 cms consomme 0.25A  . Une sortie d'Arduino n'est pas prévue pour des intensités de ce type. (Lintensité max par broche est 40mA tout en sachant que l'Arduino est limitée à 200mA toutes broches Entrées et Sorties confondues.

Du coup j'ai interfacé le pilotage du ruban par un transistor 2N2222A.

Sur le schéma suivant j'ai symbolisé le ruban par 3 leds et la résistance R2 (Non nécessaire avec un ruban à Led) . Le montage est alimenté 12V .

 

 

Eclairage Module N (Arduino et électronique)

Le seul point délicat pour ce montage c'est le calcul de la résistance R1 (Rb)

Dans un 1er temps , on calcule le courant dans la base du transistor

 

Ib=Ic/Hfe

2n2222a :Hfe : 75  courant max IC 0.8A

Ib =0.25 / 75 = 0.0033A ->3.3mA

 

Ensuite on calcule la valeur de la résistance Rb

Rb=Vcc-0.65 / Ib

Rb=5-0.65 / 0.0033 = 1318 Ω -> 1.2 K

pour une bonne saturation on divise par 2 ou 3 la valeur de Rb

Maintenant le programme : 

// Gestion eclairage module N
// By Olivier PETIT
// Nov 2016

int S1 = 2; // Bouton poussoir S1 Allumage
int S2= 4;  // Bouton poussoir S2 Arret
int led =13;
int ruban_led = 9;
int compteur = 0;
bool E_S1,E_S2;

 

void setup() {
  pinMode(S1,INPUT_PULLUP);
  pinMode(S2,INPUT_PULLUP);
  pinMode(led,OUTPUT);
  pinMode(ruban_led,OUTPUT);
}

void loop() {
  
  E_S1 = digitalRead(S1);  
  E_S2 = digitalRead(S2); 
  
  if (E_S1 == LOW) {
   
    while(compteur!=250)
    {
      compteur=compteur+5;
      delay(200);
      analogWrite(ruban_led,compteur);
    }
    analogWrite(ruban_led,255);
    compteur = 0; 
    digitalWrite(led, HIGH); 
  }
  
  if (E_S2 ==LOW) {    
    compteur =250;
    while(compteur!=0)
    {
      compteur=compteur-5;
      delay(200);
      analogWrite(ruban_led,compteur);
    }
    digitalWrite(led, LOW);  
  }
}

 

Et voilà un petit exemple simple , mettant en oeuvre un ruban à LED et un Arduino Uno

 

 

Tag(s) : #Arduino