U bevindt zich hier: prak EE Arduino-toestanden ledstripdriver  
 ARDUINO-TOESTANDEN
fotoweerstand, motor oefening
servo-oefening
motorshieldoefening
Arduino gecontroleerde robot
pachube-cliënt
toerentalmonitor platendraaier
radiobestuurd wagentje
een aquaponic-systeem
geluidsgenerator
geluidsvervormer
lichtzoeker
ledstripdriver
7 segment display - oefening
99 teller
 PRAK EE
'droogte'-detector
spelen met een ouwe GSM
parallelle poortproefjes
ad-omvormertje
Lappie-detector
regenwatersysteem
dossier simpele leugendetectors
variabel voedinkje
renovatie platendraaiertje
detectorschakeling
renovatie versterker
vintage audio
'vintage'-teller
upgrade klokradio
LFR
lichtdetectie
deurbel
kristalradio
En-schakelingetje
zonnepaneeloefening
flatscreen
Arduino-toestanden
99 teller

LEDSTRIPDRIVER
 

Ik heb een 2,6 meter lint RGB leds. RGB leds hebben een spanning nodig van 3,3V en een stroom van 60mA.
RGB-leds zitten telkens per 3 in serie, dus een voedingsppanning van minimum 9,9VDC. We nemen 12VDC.
Van deze serie-units heb ik er zo 58 in parallel zitten, dus een totale maximum stroom van ongeveer 3,5A.

De arduino-uitgang kan stromen van deze grootte-orde niet leveren. Daarom moeten we gebruik maken van
enkele transistoren.
Om alle kleurtjes te kunnen aanbieden zullen we de RGB-leds aansturen met 3 transistoren die zekerlijk
3,5 / 3 = 1,2 A aankunnen. Tevens sturen we die transitoren in PWM-mode aan.

De Arduino biedt deze PWM-mogelijkheid aan op digitale uitgangen 9, 10 en 11.

Na even te rommelen in m'n transistordoos heb ik volgende kandidaten gevonden, een TIP122 en 2 STP16NF06L. Deze bipolaire - en 2 nmosfet darlingtons kunnen met het grootste gemak de 1,2A aan.




 

schemaatje 




 

// witte kleur laten aan- en uitfloepen.

int blauw = 9;
int rood = 10;
int groen = 11;

void setup() {
pinMode(blauw, OUTPUT);
pinMode(rood, OUTPUT);
pinMode(groen, OUTPUT);
}

void loop() {


delay(20);
analogWrite(groen, 0);
analogWrite(rood,0);
analogWrite(blauw,0);

delay(500);
analogWrite(groen, 100);
analogWrite(rood, 100);
analogWrite(blauw, 100);

}