Raspberry Pi-entusiaster vil hævde, at julens sande betydning er at tilslutte dit yndlingslys vise, skabe noget nyt med din Raspberry Pi Pico og bygge noget, der får dig til at knække en smil.
Der er en uvurderlig følelse af stolthed, når du samler hardware sammen med software og skaber et mesterværk. Ligegyldigt hvor længe du roder med teknologi, ser den følelse aldrig ud til at forsvinde.
Lad os dykke ned i den rene glæde, du får ved at lære det grundlæggende i julelysautomatisering ved hjælp af din Raspberry Pi Pico, MicroPython-kode og et par relæer.
Hvad du skal bruge
Sørg for, at du har et par komponenter, før du går i gang:
- Raspberry Pi Pico
- Kodemaskine (Raspberry Pi eller pc)
- 5V relæer (relæmodulkort er fantastisk for enkelhedens skyld)
- Ledninger (elektriske ledninger, og breadboard jumper wire)
- julelys
- Stikkontakter
- Skrot træ
Samling af hardware
Lad os først fokusere på forbindelserne mellem relæmodulkortet og Raspberry Pi Pico:
- GND (relæ) forbinder til GND (Raspberry Pi Pico)
- IN1 (relæ) forbinder til GP5 (Raspberry Pi Pico)
- IN2 (relæ) forbinder til GP6 (Raspberry Pi Pico)
- IN3 (relæ) forbinder til GP14 (Raspberry Pi Pico)
- VCC (relæ) tilsluttes til 3V3 OUT (Raspberry Pi Pico)
Hvis du ikke har noget elektrisk viden, anbefales det at få hjælp fra en ven. Du vil gerne tilslutte 5V-relæerne svarende til dem, der er vist på billedet ovenfor. Den første (venstre) terminal bliver ikke brugt på 5V-relæerne. Da der ikke er en fjerde julelysstreng i denne vejledning, er det sidste relæ og stikkontakt ikke forbundet sammen.
Hvert relæ vil kunne forhindre elektriciteten i at flyde til hvert stik, hvor hver lysstreng er tilsluttet. Raspberry Pi Pico vil via MicroPython-koden instruere relæerne, hvornår de skal tænde og slukke.
For at dykke lidt dybere ned i elektrisk automation, tjek vores relæguide for detaljer.
Oprettelse af koden
Glid først over til vores GitHub-lager til download koden. Du kan enten downloade lights.py fil eller kopier og indsæt koden fra GitHub-vinduet direkte i din Thonny IDE. Hvis du lige har hentet en frisklavet Raspberry Pi Pico, kan du gennemgå trin-for-trin guiden for at hjælpe dig opsætte din nye mikrocontroller med Thonny.
Lad os gennemgå et par vigtige kodestykker for at forstå, hvad der foregår. At have mulighed for at importere tilfældig, maskine, og tid/søvn funktionalitet gør dette kodningsprojekt virkelig enkelt. Derefter er alt, hvad du skal gøre, at kortlægge hvert relæ, som pinden bruges til:
relæ1 = Pin(6, Pin. UD) #GP6
Gentagelse af denne kortlægning skal fortsætte for hvert relæ, du tildeler til Pin. Ud funktion (svarende til GPIO-stiften på din Raspberry Pi Pico) til.
Oprettelse af en liste over relæer vil give dig mulighed for tilfældigt at vælge, hvilken lysstreng der skal tændes og slukkes:
lysliste = [relæ1, relæ2, relæ3]
En løkke kan tjene som julelys randomizer. Du kan vælge en rækkevidde på 50 (som i eksempelkoden), eller du er velkommen til at øge antallet. Dette vil instruere din Raspberry Pi Pico om at køre gennem denne proces i det antal gange, der er defineret i det indstillede område.
I denne løkke skal du bruge tilfældigt.valg, sammen med listefunktionerne for at få systemet til at vælge et relæ til at tænde og slukke efter behag.
Eksempelkoden udskriver output af (lys); dette er dog ikke påkrævet. På den anden side vil du måske beholde det i koden, indtil du er færdig med fejlfindingen.
lys.værdi vil have et suffiks af (1) eller (0) afhængig af om relæet skal indstilles til åben (tændt) eller lukket (slukket). Den åbne og lukkede tilstand kan også afhænge af, hvordan du har valgt at tilslutte udtagene og relæerne.
GPI0.cleanup() vil rydde Raspberry Pi GPIO, så dine julelys ikke forbliver i "tændt", når Python-koden er færdig. Til testformål blev denne funktion kommenteret ud i eksempelkoden. Når det er sagt, er der generelt mere end én måde at udføre en opgave på. Gennemgå vores sammenligning mellem RPi. GPIO versus GPIO Zero for detaljer.
Nu det endelige resultat. Hvis din lydstyrke er lidt højere, vil du bemærke det hørbare klik fra relæerne, der tænder og slukker for udgangene, mens løkken løber gennem randomiseringsfunktionen.
Hvad er dit næste automationseventyr?
I den klassiske julefilm, Christmas Vacation, bruger Clark Griswold et skræmmende antal forlængerakkorder til at elektrificere sit hus fuld af julelys. Selvom dette virker som noget, der kun passer til Hollywood, er der mange automatiseringsprojekter, der spænder fra enkle til utrolige. Med det rigtige open source-udstyr og -software kan du endda bruge en Raspberry Pi til også at synkronisere dine lys til julemusik!
Er du klar til at automatisere dit hus fyldt med julelys til dine yndlings rock and roll klassikere? Nu hvor du forstår det grundlæggende i automatisering ved hjælp af Raspberry Pi Pico og relæer, er du nu indstillet til at sende "send os cookies"-signaler hele vejen til Nordpolen.