Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Napravio sam sinkronizirana svjetla na velike udaljenosti poznate kao svjetiljke "Najbolji prijatelj". To samo znači da se usklađuju s trenutnom bojom druge svjetiljke. Dakle, ako promijenite jednu svjetiljku u zelenu boju, nedugo nakon što bi druga svjetiljka postala zelena. Ovo je vrlo jednostavan projekt maline pi u koji svatko može uskočiti i koristi puno zaista osnovnih koncepata na kojima je izvrsno graditi.
Ovo bi bio izvrstan projekt koji bi se mogao izvoditi tijekom karantene jer ne možete cijelo vrijeme biti zajedno, a može se koristiti u istoj kući za označavanje ako ste na sastanku ili nekom drugom važnom događaju.
Pribor:
- ws2811 LED žarulje -
- Raspberry pi zero koji sam koristio (mogu koristiti bilo koji pi, ne zaboravite nabaviti sd karticu) -
- Akrilni lim -
- Pritisnite gumb
- Drvo trešnje, drvo crvenog hrasta - lokalni distributer drva
Korak 1: Izgradite bazu
Za početak trebat će vam kutija u koju ćete staviti elektroničke komponente i provesti svjetlo. Ostalo mi je nešto drva trešnje i drva crvenog hrasta koje sam koristio za izradu kutije. Za vrh sam upotrijebio jedan četvrtasti komad trešnje, koji je na kraju bio oko 4,5 inča x 4,5 inča i debljine 1,25 inča. Zatim sam upotrijebio izrezane komade drva crvenog hrasta da dodam odjeljak u kojem će se nalaziti elektroničke komponente. Ti su komadi bili dugi oko 4,5 inča, debeli 1 inč i široki 2 inča. Kad bih ovo ponovio, zasigurno bih učinio crveni hrast tanjim kako bi elektroničke komponente imale više mjesta za uklapanje. Nakon što sam izrezao komade, brusio sam ih i izbušio rupu za ws2811 vodilicu pomoću svrdla od 1/2 inča. Zatim sam ih završio s uljem od Mahoneyjevog oraha.
Korak 2: Napravite difuzijski blok
Nakon što je baza napravljena, počeo sam izrađivati difuzijski blok koji će se koristiti za širenje svjetla s LED -a ws2811. Da bih to učinio, izrezao sam pravokutne komade iz akrila, a zatim sam brusio akril kako bi bio stvarno zamućen. To će omogućiti da se svjetlo s LED -a raširi i više osvijetli. Zatim sam upotrijebio vruće ljepilo za učvršćivanje strukture
Korak 3: Spajajte krug i pokrenite kôd
Ovo je vrijeme za lemljenje kruga. Svako svjetlo ima malinu pi zero, LED diodu ws2811, gumb za pritiskanje i otpornik. Jedan krug se koristi za kontrolu LED -a ws2811, dok se drugi koristi za provjeru unosa korisnika. LED krug ws2811 je jednostavan koji koristi uzemljenje, 5v i pwm pinove maline pi za upravljanje LED diodama. Ulazni krug korisnika ima otpornik za ograničavanje struje i tipku koja se koristi za uključivanje i isključivanje napona s malinovog pi ulaznog pina.
Svaki pi izvodi isti program. Ovaj program provjerava kada se pritisne gumb i ako je tako, mijenja boju. Zatim šalje poruku web -poslužitelju koji prati trenutnu boju. Svakih 5 sekundi ovaj program također provjerava trenutnu boju s web poslužitelja i ako se ta boja razlikuje od trenutne boje žarulje, mijenja se u tu boju. Na taj način se usklađuju. Dakle, ako promijenite boju u crvenu na jednoj svjetiljci, ta žarulja će web poslužitelju reći da je trenutna boja crvena, druga žarulja će provjeriti web poslužitelj za 5 sekundi i vidjeti je li trenutna boja crvena, a zatim će se promijeniti u tu boja. Web poslužitelj koji sam koristio bio je hostiran na jednom od pisača jer sam ga koristio u istoj mreži, ali ovaj poslužitelj možete jednostavno pokrenuti na bilo kojem javnom poslužitelju i lampe će raditi na svim kontinentima.
S obzirom na ovaj dizajn, ovo biste lako mogli povećati na više od 2 svjetiljke.
Ispod su dva repo -a koja će vam trebati za pokretanje projekta. Ako imate problema s instaliranjem BiblioPixela, možete pogledati moj video o izradi oglasne ploče. Detaljno se bavi instaliranjem BiblioPixela.
Najbolji program svjetla prijatelja koji se izvodi na svakom pi:
github.com/tmckay1/best_friend_light
Web poslužitelj koji prati trenutnu boju:
github.com/tmckay1/raspberrypi_gateway
Korak 4: Pokrenite program na svakom Pi, pokrenite poslužitelj i pogledajte ga na djelu
Sada možete pokrenuti program u naredbenom retku provjerom readme -a u prethodnim repo -ovima, pokrenuti poslužitelj slijedeći readme i vidjeti ga na djelu!