Etape 4: Contrôle LED NEON FLEX avec capteur de présence et de l’Arduino.
L’interactive de la pièce a été réalisée en utilisant Arduino, un détecteur de présence Max Botix (1 x télémètre à ultrasons – Maxbotix LV-EZ0) et LED NEON FLEX
1. contrôle LED NEON FLEX 12v avec Arduino : le LED NEON FLEX peut être contrôlé en utilisant n’importe quel puissance NPN ou MOSFET à canal N, assurez-vous que le transistor est évalué pour pouvoir passer autant de courant que vous avez besoin. Par exemple, étant donné que nous attirons sur 0.2Amps par canal par mètre, si vous avez une bande de 5 mètres, vous devrez passer jusqu'à 1 ampère par transistor. Téléchargez les paquets de « TO-220 » costauds, pas les petits gars dinky. Veillez à ce qu’ils ressemblent à ceci : pour l’utilisation basique, faible coût, nous vous suggérons d’utiliser des MOSFET canal N tels que le STP16NF06 - ils sont très populaires et peu coûteux. Si vous ne pouvez pas obtenir ces, TIP120 sont aussi bonnes mais il n’y a plus perte de tension dans un transistor que dans un MOSFET c’est pourquoi nous vous suggérons ces premiers (moins les pertes thermiques et plus léger!). Dans ce projet, j’ai utilisé 1 TIP120 pour chaque couleur. Le projet a eu 6 couleurs. Alors, j’ai utilisé 6 TIP120 dans un circuit.
2. le capteur de présence étaient connectés au code pin 8.
Suivez le code :
#include « Maxbotix.h »
int mené = 13 ;
led1 int = 11 ;
led2 int = 10 ;
led3 int = 9 ;
led4 int = 5 ;
DEL5 int = 3 ;
int ledPins [] = {}
13, 11, 10, 9, 5, 3} ;
int pinCount = 5 ;
int timer = 60 ;
Maxbotix rangeSensorPW (8, Maxbotix::PW, Maxbotix::LV) ;
flotter la distancia = 40 ;
void setup() {}
Serial.Begin(9600) ;
pinMode (led, sortie) ;
pinMode (led1, sortie) ;
pinMode (led2, sortie) ;
pinMode (DEL3, sortie) ;
pinMode (led4, sortie) ;
pinMode (DEL5, sortie) ;
}
la routine de la boucle s’exécute maintes et maintes fois pour toujours :
void loop() {}
Distancia=rangeSensorPW.getRange() ;
Serial.Print ("cm -") ;
Serial.println(distancia) ;
Si (distancia < 80) {}
/ * pour (int i = 0; i < pinCount; i ++) {}
digitalWrite (ledPins [i], HIGH) ;
Delay(Timer) ;
digitalWrite (ledPins [i], faible) ; */
digitalWrite (conduit, en haut) ;
digitalWrite (led1, HIGH) ;
digitalWrite (led2, HIGH) ;
digitalWrite (DEL3, HIGH) ;
digitalWrite (led4, HIGH) ;
digitalWrite (DEL5, HIGH) ;
Delay(50) ;
digitalWrite (led, faible) ;
digitalWrite (led1, faible) ;
digitalWrite (led2, faible) ;
digitalWrite (DEL3, faible) ;
digitalWrite (led4, faible) ;
digitalWrite (DEL5, faible) ;
Delay(30) ;
digitalWrite (conduit, en haut) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (led, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
digitalWrite (led1, HIGH) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (led1, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
digitalWrite (led2, HIGH) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (led2, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
digitalWrite (conduit, en haut) ;
digitalWrite (led1, HIGH) ;
digitalWrite (led2, HIGH) ;
digitalWrite (DEL3, HIGH) ;
digitalWrite (led4, HIGH) ;
digitalWrite (DEL5, HIGH) ;
Delay(50) ;
digitalWrite (led, faible) ;
digitalWrite (led1, faible) ;
digitalWrite (led2, faible) ;
digitalWrite (DEL3, faible) ;
digitalWrite (led4, faible) ;
digitalWrite (DEL5, faible) ;
Delay(30) ;
digitalWrite (DEL5, HIGH) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (DEL5, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
digitalWrite (DEL3, HIGH) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (DEL3, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
digitalWrite (led4, HIGH) ; allumer la LED (HIGH est le niveau de tension)
Delay(50) ; Attendez une seconde
digitalWrite (led4, faible) ; éteindre la LED en rendant la tension basse
Delay(30) ; Attendez une seconde
Serial.println("encendido") ;
Delay(1000) ;
digitalWrite(MotorControl,LOW); / / NO3 et COM3 déconnecté ;
Delay(100) ;
}
d’autre
{
digitalWrite (led, faible) ;
digitalWrite (led1, faible) ;
digitalWrite (led2, faible) ;
digitalWrite (DEL3, faible) ;
digitalWrite (led4, faible) ;
digitalWrite (DEL5, faible) ;
Serial.println("apagado") ;
Delay(100) ;
}
}