De opdracht
Ontwerp en realiseer een LED-dimmer waarbij met de ene
drukknop de LED in stapjes feller gaat branden en met een andere drukknop
zachter gaat branden. Zorg voor een gebruikersvriendelijke bediening.
Wat staat ons te doen?
Als eerst hebben we een structuur opgezet, vervolgens zijn
we te werk gegaan met een elektrisch schema. Die beide dingen worden later in
het verslag getoond. Aan de hand van die twee onderdelen hebben we een software
in elkaar gezet door middel van Arduino. De bedoeling was om met twee verschillende
schakelaren een led te kunnen laten dimmen en feller later worden.
Elektrisch schema
Zoals al eerder vernoemd hebben we eerst een elektrisch
schema opgesteld, dit is als het ware een makkelijke handleiding om later de
gehele arduino te installeren en om vervolgens de software op te stellen. Het
schema is hieronder weergeven;
Void loop diagram (hardware)
Na het opgestelde elektriciteits schema konden we een
structuur opstellen of te wel een void loop diagram, dit gaat aan de hand van
drie verschillende structuren. Het diagram is hieronder weergeven;
software
Het elektrisch schema hebben we zodanig nagebouwd op de
Arduino Uno dat de led plus schakelaars het moeten doen. Nu moest het alleen
nog gestuurd worden door de software, de software hebben we ontworpen aan de hand
van voorbeelden hoe alleen en led zonder schakelaars gedimd kon worden. We zijn
er uiteindelijk uitgekomen en de software is hieronder weergeven.
int led = 10;
int brightnes = 100 ;
int pushbuttenlow = 11 ;
int pushbuttenhigh = 12 ;
int fadeamount = 0 ;
int buttenstate1= 0 ;
int buttenstate2= 0 ;
void setup() {
pinMode(led,OUTPUT);
pinMode(pushbuttenlow,INPUT);
pinMode(pushbuttenhigh,INPUT);
Serial.begin(9600);
}
void loop() {
analogWrite(led,brightnes);
digitalRead(pushbuttenhigh);
buttenstate1=digitalRead(pushbuttenhigh);
if(buttenstate1==HIGH){
Serial.print("high");
if (brightnes
<255)
{
fadeamount=
fadeamount+10;
}
delay(300);
}
else
{
digitalRead(pushbuttenlow);
buttenstate2=digitalRead(pushbuttenlow);
if(buttenstate2==HIGH)
{
Serial.print("low");
if(brightnes>10)
{
fadeamount= fadeamount-10;
}
delay(300);
}
brightnes =
brightnes + fadeamount;
}}
Uiteindelijk hebben we de opstelling ook moeten testen en
gelukkig was het in orde, hieronder zit u een afbeelding van de geprogrammeerde
Arduino Uno;
Toelichting
Ook stond in de opdracht om het gebruik makkelijk te houden,
dit hebben we gedaan door de drukschakelaars ver genoeg uit elkaar te plaatsten
zodat er genoeg ruimte is om de schakelaar te gebruiken, ook staat de LED
centraal zodat die goed opvalt.
Conclusie
In het begin leek het moeilijker dan dat het was, maar door
de stappen die we van te voren hadden uitgevoerd was het een stuk makkelijker.
Het heeft ons beide weer nieuwe kennis vergaard over het gebruik van Arduino.
Hopelijk zal dit ook weer van pas komen in ons ontwerpproject.
Geen opmerkingen:
Een reactie posten