Cititorii ca tine ajută la sprijinirea MUO. Când efectuați o achiziție folosind link-uri de pe site-ul nostru, este posibil să câștigăm un comision de afiliat. Citeşte mai mult.

Pasionații Raspberry Pi vor argumenta că adevăratul sens al Crăciunului este conectarea la lumina ta preferată afișaj, creând ceva nou cu Raspberry Pi Pico și construind ceva care vă face să spargeți a zâmbet.

Există un sentiment neprețuit de mândrie atunci când asamblați hardware, împreună cu software, creând o capodopera. Indiferent de cât timp ai lucrat cu tehnologia, acel sentiment nu pare să dispară niciodată.

Să ne aruncăm în bucuria pe care o veți dobândi învățând elementele de bază ale automatizării luminii de Crăciun folosind Raspberry Pi Pico, codul MicroPython și câteva relee.

Ce vei avea nevoie

Asigurați-vă că aveți câteva componente înainte de a începe:

  • Raspberry Pi Pico
  • Mașină de codare (Raspberry Pi sau PC)
  • Relee de 5 V (Placa pentru modulul de releu este excelentă de dragul simplității)
  • Cabluri (sârmă electrică și fir jumper pentru placa de breadboard)
  • instagram viewer
  • Lumini de Craciun
  • Prize electrice
  • Deșeuri de lemn

Asamblarea hardware-ului

Mai întâi, să ne concentrăm pe conexiunile dintre placa modulului releu și Raspberry Pi Pico:

  • GND (releu) se conectează la GND (Raspberry Pi Pico)
  • IN1 (releu) se conectează la GP5 (Raspberry Pi Pico)
  • IN2 (releu) se conectează la GP6 (Raspberry Pi Pico)
  • IN3 (releu) se conectează la GP14 (Raspberry Pi Pico)
  • VCC (releu) se conectează la 3V3 OUT (Raspberry Pi Pico)

Dacă nu aveți cunoștințe electrice, este recomandat să solicitați ajutor de la un prieten. Veți dori să conectați releele de 5V similare cu cele prezentate în imaginea de mai sus. Primul terminal (stânga) nu se folosește la releele de 5V. De asemenea, deoarece nu există un al patrulea șir de lumini de Crăciun în acest tutorial, ultimul releu și ștecherul de priză nu sunt conectate împreună.

Fiecare releu va putea împiedica curentul electric să curgă către fiecare priză la care este conectat fiecare fir de lumină. Raspberry Pi Pico, prin codul MicroPython, va instrui releele când să pornească și să oprească.

Pentru a aprofunda puțin în automatizarea electrică, consultați ghidul nostru pentru relee pentru detalii.

Crearea Codului

Mai întâi, glisați către depozitul nostru GitHub pentru descărcați codul. Puteți fie să descărcați lumini.py fișier sau copiați și inserați codul din fereastra GitHub în IDE-ul dvs. Thonny direct. Dacă tocmai ați luat un Raspberry Pi Pico proaspăt făcut, consultați ghidul pas cu pas pentru a vă ajuta configurați-vă noul microcontroler cu Thonny.

Să examinăm câteva fragmente de cod importante pentru a înțelege ce se întâmplă. Având capacitatea de a importa Aleatoriu, mașinărie, și timp/dormi funcționalitatea face acest proiect de codare foarte simplu. Apoi, tot ce trebuie să faceți este să mapați fiecare releu la care pin este utilizat:

releu1 = Pin(6, Pin. OUT) #GP6

Repetarea acestei mapări va trebui să continue pentru fiecare releu pe care îl alocați Pin. Afară funcția (corespunzătoare pinului GPIO de pe Raspberry Pi Pico) la.

Crearea unei liste de relee vă va oferi posibilitatea de a alege aleatoriu ce fir de lumină să porniți și să opriți:

lista_lumini = [releu1, releu2, releu3]

O buclă poate servi drept distribuitor aleatoriu de lumini de Crăciun. Puteți alege o interval de 50 (ca în exemplul de cod) sau nu ezitați să măriți numărul. Acest lucru va instrui Raspberry Pi Pico să parcurgă acest proces pentru numărul de ori definit în intervalul setat.

În această buclă, veți folosi aleatorie.alegere, împreună cu funcțiile din listă, pentru ca sistemul să aleagă și să aleagă un releu pe care să îl pornească și să se oprească după bunul plac.

Exemplul de cod tipărește rezultatul (lumini); cu toate acestea, acest lucru nu este necesar. Pe de altă parte, poate doriți să-l păstrați în cod până când terminați depanarea.

lumini.valoare va avea un sufix de (1) sau (0) în funcție de dacă releul trebuie setat să fie deschis (pornit) sau închis (oprit). Starea deschis și închis poate depinde și de modul în care ați ales să conectați prizele și releele.

GPI0.cleanup() va șterge Raspberry Pi GPIO, astfel încât luminile de Crăciun să nu rămână în poziția „aprinsă” când codul Python este terminat. În scopuri de testare, această funcție a fost comentată în exemplul de cod. Acestea fiind spuse, există, în general, mai multe modalități de a efectua o sarcină. Revizuiți comparația noastră între RPi. GPIO versus GPIO Zero pentru detalii.

Acum, rezultatul final. Dacă volumul crește puțin, veți observa clicul sonor al releelor ​​care pornesc și opresc prizele pe măsură ce bucla trece prin funcția de randomizare.

Care este următoarea ta aventură de automatizare?

În filmul clasic de Crăciun, Vacanța de Crăciun, Clark Griswold folosește un număr înfricoșător de extensii pentru a-și electriza casa plină de lumini de Crăciun. Deși, acest lucru pare a fi ceva potrivit doar pentru Hollywood, există multe proiecte de automatizare care variază de la simplu la incredibil. Cu echipamentul și software-ul open source potrivite, puteți chiar să utilizați un Raspberry Pi pentru a vă sincroniza și luminile cu muzica de Crăciun!

Ești gata să-ți automatizezi casa plină de lumini de Crăciun la clasicele tale rock and roll preferate? Acum că înțelegeți elementele de bază ale automatizării folosind Raspberry Pi Pico și relee, sunteți setat să trimiteți semnale „trimite-ne cookie-uri” până la Polul Nord.