Stap 9: Beheersing van de oogbol lichten met de Arduino-code
Dit was in eerste instantie getest met een standaard LED uit het circuit te werken.
Dit was never gonna worden helder genoeg, maar gunstig kwam met de Arduino-pack voor testen.
De volledige lamp schets voor de Arduino is in stap 1.
Hier is de originele code van de schets van de Arduino in blauw. Dit heeft de oorspronkelijke commentaar bij de code en hebben toegevoegd extra opmerkingen hier in normale vette tekst hier:
/*
DEFINIËREN VAN LAMPEN
Lamp pin-codes instellen
Dit is het definiëren van die analoge PIN zal lezen de spanning aan de lamp van de input-potmeter
Const int lampPin = 5; verklaart het pin-nummer van ANALOG INPUT voor signaal - IN
En dit bepaalt waar de uitvoer die de helderheid van de lamp regelt
Const int ledPinEyes = 3; het nummer van de pin van de OUTPUT van de LED voor de oogbol LEDs - OUT
Dit is te verklaren, een variabele in de Arduino gebruikt te vlotage in vlotage uit en initialiseren het op nul zetten
int valLamp = 0; variabele te lezen van de analoge ingang van switch tot verrekening van lichten
Dit is te verklaren dat de PIN-code een uitgang is
pinMode (ledPinEyes, OUTPUT); / / Dit is de output die de lampen in- of uitschakelen verandert
Binnen van de Arduino loop functie, de lampCheck() functie herhaaldelijk aangeroepen om te controleren voor de potmeter input en converteert deze naar de helderheid van de lamp door het te leveren met een puls breedte gemoduleerde uitgang
ongeldig lampCheck() {}
De volgende regel is het lezen van de spanning in op analoge PIN 5
valLamp=analogRead();
De volgende regel is het converteren van de waarde van de invoer- en betalingscondities aan de variabele valLamp. Arduino wordt dit ingesteld als een getal tussen 0 en 1023, waarbij 0 = 0V in en 1023 = 5V in. Het schalen dan de waarde van valLamp binnen het toegestane bereik van uitgangen die kunnen worden verzonden naar de digitale uitgang PIN. Dit is tussen 0 en 255. De waarde wordt gebruikt om de toepassing van puls breedte modulatie op een 5V output signaal, waardoor een blokgolf van verschillende lengtes van in- en uitschakelen. Dit geeft effectief een variabele uitgangsspanning. 0 0V zal geven van de spanning out zal stijgen tot 255 geeft 5V uit.
//
valLamp = kaart (valLamp, 20, 1023, 0, 255);
Deze regel wordt beperkt het naar binnen de toegestane limiet
valLamp = beperken (valLamp, 0,255);
En ten slotte schrijft de waarde naar de uitgang-pins
analogWrite (ledPinEyes, valLamp);
}
Gebouw van de oogbollen
Het kleine gat is voor de controle-staaf. Een rubber gromett was uitgerust om het te houden.
Normaal LEDs waren niet goed, dus ik moest twee powerleds van 3w kopen.
Deze zijn gemakkelijk te vinden op de websites van de elektronische componenten verkopers.
De lenzen werden genomen uit een uitgeschakelde fakkel.
Aan de rechterkant zijn de twee klaar oogbollen.