Maandag 21 april zijn we gesloten i.v.m. 2e paasdag. Bestellingen die na vrijdag 18 april 16:00 zijn geplaatst worden dinsdag 22 april verstuurd.

webwinkelkeur logo

4.7 gem.

5137+ beoordelingen
webwinkelkeur logoBekijk alles

5137+ beoordelingen

5137+ beoordelingen

Bestel voor 16:00 voor dezelfde dag verzending

14 dagen retour

NL

Particulier

Zakelijk

Arduino Project: Touch lamp

Beginner
15 Min
57,89

Dit is het 17e project uit de Starter kit voor Arduino.
 

Je leert hoe je 3 LED lampjes kunt aansturen met een Arduino Uno en een Touch sensor.
Dit is een gemakkelijk project die je in ongeveer 15 minuten af kunt hebben. Maar dit is ook een uitstekend project om zelf aanpassingen te maken is de code zodat de met een ander patroon aan en uit gaan.

Bouwen en Bedraden

Nu gaan we het project in elkaar zetten.
We beginnen bij het bedraden en het plaatsen van de componenten op het breadboard doe dit volgens bovenstaande foto. Plaats de touch sensor zo dat je deze goed kunt bereiken.

Als je de touch sensor omdraait moet je ook de volgorde van de draden omdraaien.

De 3 LEDs hebben allemaal een 220k weerstand nodig omdat de spanning over de LEDs te hoog wordt en deze kapot maakt.
Als je dit doet moet de weerstand op de + pin van de LEDs worden aangesloten. Je herkent de +pin doordat deze langer is dan de -pin.

Zodra je alle componenten volgens het schema hebt aangesloten op het breadboard kun je alles aansluiten op de Arduino.

Het is belangrijk dat je alles op de juiste plek aansluit als dit niet gebeurt werkt de code niet.

GND TS                ->         GND
VCC TS.               ->         5V
SIG TS                  ->        pin 2
B LED+                 ->        pin 3
R LED +                ->        pin 5
G LED +               ->        pin 6

Programmeren

/*
* Author: Elecrow Engle
* Date:7/21/2017
* IDE V1.8.2
* Email:engle@elecrow.com
* Function:
*/
const int touch = 2;
const int Bled = 3;
const int Rled = 5;
const int Gled = 6;
//int lastime=0;
//int val=0;
int count=0;

void setup()
{
analogWrite(Bled,0);
analogWrite(Rled,0);
analogWrite(Gled,0);
attachInterrupt(0, swRGB, RISING);
}

void loop()
{
switch(count)
{
case 1:
analogWrite(Bled,255);
analogWrite(Rled,0);
analogWrite(Gled,0);
delay(500);
break;
case 2:
analogWrite(Bled,0);
analogWrite(Rled,255);
analogWrite(Gled,0);
delay(500);
break;
case 3:
analogWrite(Bled,0);
analogWrite(Rled,0);
analogWrite(Gled,255);
delay(500);
break;
case 4:
RGBflash();
break;
case 5:
analogWrite(Bled,0);
analogWrite(Rled,0);
analogWrite(Gled,0);
delay(500);
break;
}
}

void swRGB()
{
count++;
if(count>5)
count=0;
}

void RGBflash()
{
for (int c=0,b=255,a=0; c<=255,b>0,a<=255;c++,b–,a++){
analogWrite(Bled,c);
analogWrite(Rled,b);
analogWrite(Gled,a);
delay(5);
}
for (int a=255,b=0,c=255; a>0,b<=255,c>0;a–,b++,c–){
analogWrite(Bled,c);
analogWrite(Rled,b);
analogWrite(Gled,a);
delay(5);
}
}