Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Jeg har nylig konvertert akvariumlysene mine fra fluorescerende belysning til LED -belysning, og jeg har bestemt meg for å prøve å simulere et naturlig miljø der lys gradvis øker fra daggry til middag og deretter reduseres til skumring. Om natten er det lite lys som vanligvis blir gitt av månen.
I utgangspunktet drives LED-belysningen fra en 12V strømforsyning og arduino styrer lysets intensitet ved å modulere spenningen ved hjelp av en n-kanal MOSFET (jeg har brukt en IRFS630). Arduinoen kan drives av samme strømforsyning, men jeg har brukt en separat 5V USB PS for arduino og drevet den via USB ikke gjennom Vin.
Lysintensiteten er kanskje ikke den mest nøyaktige, men det er det beste jeg kunne tenke meg. Mønsteret kan endres gjennom koden.
Trinn 1: Nødvendige deler
Først må du først samle alle delene som trengs for prosjektet. Jeg antar at du allerede har en LED -belysning du vil leke med, kanskje et akvariumbelysning, kanskje noe annet, kanskje ikke engang lysdioder, men noe som støtter dimming.
Så her er listen over delene jeg brukte:
1. Arduino nano - 1 stk
2. LCD 1602 -skjerm - 1 stk
3. IIC/I2C adapter for LCD 1602 - 1 stk
4. DS1302 RTC - 1 stk (med CR2032 batteri)
5. trykknapp med deksel - 1 stk
6. n -kanal MOSFET (jeg brukte en IRFS630) - 1 stk
7. 10K ohm motstand - 1 stk
8. Valgfritt - noen sier at du må bruke en motstand mellom arduino pwm pin og porten til MOSFET for å beskytte aruinoen, andre sier at du ikke gjør det, i hvert fall ikke for applikasjoner med lav effekt, jeg har ikke brukt noen og det fungerer helt fint, langt under 20mA hentet fra arduinos pin, men hvis du vil kan du bruke en 100 ohm motstand.
OPPDATERING: Etter 2 måneders testing har jeg kommet til at 100 ohm er et must! arduinoen fortsatte å blokkere uten den, tilfeldig. Nå fungerer det perfekt
Du trenger også loddeverktøy for lodding av I2C -adapteren til LCD -skjermen, og hvis du vil gjøre det som jeg gjorde på et prototypekort eller på en PCB. Jeg brukte headerpinner for å koble arduinoen fordi dette gir meg frihet til å trekke ut arduinoen, programmere den og sette den på igjen (og det er lettere å bytte den ut).
9. Valgfritt - prototypekort / kretskort
10. Valgfritt - toppnål - med 15 pinner eller mer hver - 2 stk (nødvendig for å koble arduino nano til brettet)
Det er omtrent det, nå skal vi begynne å jobbe!
Trinn 2: Å sette ting sammen
Først må du lodde IIC/I2C -adapteren med LCD 1602 (fungerer også med andre LCD -skjermer som 2004). Bruk skjemaet som følger med for å gjøre det.
Hvis du vil bruke et brødbrett, følger du bare skjemaet og sørger for at bare jording er vanlig for LED -strømforsyningen og arduino -strømforsyningen hvis du bruker en 5V PS for arduino (på USB -kabel), ellers kan du koble til samme PS gjennom Vin -pin på arduinoen.
Hvis du vil bruke et kretskort eller et prototypekort, er det bare å følge skjemaet for å koble komponenter, designen er det opp til deg. Sørg for å dobbeltsjekke koblingene til slutt.
På I2C -adapteren, overfor strøm- og datapinnene, er det en jumper. Denne jumperen leverer strøm til LCD -bakgrunnslyset, mens den lyser på LCD -lyset. Koble til trykknappen her for å bare belyse den når det er nødvendig. Du kan bruke andre typer knapper eller brytere hvis du vil.
Jeg har også inkludert fritzingskjemaet.
_
PS = Strømforsyning (hvis noen lurte på)
PCB = kretskort
Trinn 3: Sett inn noen kode i MCU
Jeg har lagt ved.ino -filen og de to bibliotekene jeg har brukt, så det blir ingen inkompatibilitet. Koden er forklart inne i.ino -filen.
Også for I2C-skjermens adresse kan du bruke vedlagte i2c-scanner.ino for å finne den ut.
Eventuelle kommentarer eller forslag mottas med takk. Ha det gøy!