Raspberry Pi-enthousiastelingen zullen beweren dat de ware betekenis van Kerstmis het aansluiten van je favoriete licht is weergeven, iets nieuws maken met je Raspberry Pi Pico, en iets bouwen dat ervoor zorgt dat je een glimlach.
Er is een onbetaalbaar gevoel van trots als je hardware samen met software samenstelt om een meesterwerk te creëren. Hoe lang je ook aan het sleutelen bent aan technologie, dat gevoel lijkt nooit weg te gaan.
Laten we eens kijken naar het pure plezier dat je zult beleven aan het leren van de basisprincipes van kerstlichtautomatisering met behulp van je Raspberry Pi Pico, MicroPython-code en een paar relais.
Wat je nodig hebt
Zorg ervoor dat u over een aantal onderdelen beschikt voordat u aan de slag gaat:
- Framboos Pi Pico
- Codeermachine (Raspberry Pi of pc)
- 5V-relais (relaismodulekaart is geweldig omwille van de eenvoud)
- Draden (elektrische draad en jumperdraad voor breadboard)
- kerstlichten
- Stopcontacten
- Sloophout
Montage van de hardware
Laten we ons eerst concentreren op de verbindingen tussen de Relay Module Board en de Raspberry Pi Pico:
- GND (relais) maakt verbinding met GND (Raspberry Pi Pico)
- IN1 (relais) maakt verbinding met GP5 (Raspberry Pi Pico)
- IN2 (relais) maakt verbinding met GP6 (Raspberry Pi Pico)
- IN3 (relais) maakt verbinding met GP14 (Raspberry Pi Pico)
- VCC (relais) maakt verbinding met 3V3 OUT (Raspberry Pi Pico)
Als je geen elektrische kennis hebt, is het aan te raden om hulp te krijgen van een vriend. U wilt de 5V-relais aansluiten op dezelfde manier als die in de bovenstaande afbeelding. De eerste (linker) aansluiting wordt niet gebruikt op de 5V-relais. Aangezien er in deze tutorial geen vierde kerstlichtsnoer is, zijn het laatste relais en de stekker niet met elkaar verbonden.
Elk relais kan voorkomen dat de elektriciteit naar elke stopcontactstekker stroomt waarop elke lichtstreng is aangesloten. De Raspberry Pi Pico zal via de MicroPython-code de relais instrueren wanneer ze moeten in- en uitschakelen.
Om wat dieper in elektrische automatisering te duiken, bekijk onze relaisgids voor details.
De code maken
Schuif eerst naar onze GitHub-repository om de code downloaden. U kunt ofwel de lichten.py bestand of kopieer en plak de code uit het GitHub-venster rechtstreeks in uw Thonny IDE. Als je net een vers gemaakte Raspberry Pi Pico hebt gekocht, bekijk dan de stapsgewijze handleiding om je te helpen stel uw nieuwe microcontroller in met Thonny.
Laten we een paar belangrijke codefragmenten bekijken om te begrijpen wat er aan de hand is. De mogelijkheid hebben om te importeren willekeurig, machine, En tijd/slaap functionaliteit maakt dit codeerproject heel eenvoudig. Vervolgens hoeft u alleen maar elk relais toe te wijzen aan welke pin wordt gebruikt:
relais1 = Pin(6, speld. UIT) #GP6
Het herhalen van deze toewijzing moet worden voortgezet voor elk relais dat u toewijst aan de Pin. Uit functie (overeenkomend met de GPIO-pin op uw Raspberry Pi Pico).
Als u een lijst met relais maakt, kunt u willekeurig kiezen welke lichtstreng u wilt in- en uitschakelen:
lichtlijst = [relais1, relais2, relais3]
Een lus kan dienen als randomizer voor kerstverlichting. U kunt kiezen voor een bereik van 50 (zoals in de voorbeeldcode), of voel je vrij om het aantal te verhogen. Dit zal je Raspberry Pi Pico instrueren om dit proces te doorlopen gedurende het aantal keren dat is gedefinieerd in het ingestelde bereik.
In deze lus gebruik je willekeurige.keuze, samen met de lijstfuncties om het systeem een relais te laten kiezen en kiezen om naar believen in en uit te schakelen.
De voorbeeldcode drukt de uitvoer af van (lichten); dit is echter niet vereist. Aan de andere kant wilt u het misschien in de code houden totdat u klaar bent met het oplossen van problemen.
lichten.waarde zal een achtervoegsel hebben van (1) of (0) afhankelijk van of het relais moet worden ingesteld op open (aan) of gesloten (uit). De open en gesloten toestand kan ook afhangen van hoe u de stopcontacten en relais hebt aangesloten.
GPI0.opschonen() zal de GPIO van de Raspberry Pi wissen zodat je kerstverlichting niet in de "aan"-positie blijft staan wanneer de Python-code is voltooid. Voor testdoeleinden is deze functie in de voorbeeldcode becommentarieerd. Dat gezegd hebbende, er is over het algemeen meer dan één manier om een taak uit te voeren. Bekijk onze vergelijking tussen RPi. GPIO versus GPIO Nul voor details.
Nu het eindresultaat. Als je volume een beetje hoger staat, hoor je de hoorbare klik van de relais die de stopcontacten in- en uitschakelen terwijl de lus door de randomisatiefunctie loopt.
Wat is je volgende automatiseringsavontuur?
In de kerstklassieker Christmas Vacation gebruikt Clark Griswold een eng aantal verlengakkoorden om zijn huis vol kerstverlichting te elektrificeren. Hoewel dit iets lijkt dat alleen geschikt is voor Hollywood, zijn er veel automatiseringsprojecten die variëren van eenvoudig tot ongelooflijk. Met de juiste open source-apparatuur en -software kun je zelfs een Raspberry Pi gebruiken om je lichten te synchroniseren met kerstmuziek!
Ben je klaar om je huis vol kerstverlichting te automatiseren tot je favoriete rock-'n-roll-klassiekers? Nu je de basisprincipes van automatisering begrijpt met behulp van de Raspberry Pi Pico en relais, ben je nu klaar om "stuur ons cookies" -signalen helemaal naar de Noordpool te sturen.