Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
To je projekt, ki sem ga naredil za pametno svetilko, ki jo nadzira Bluetooth z aplikacijo za Android, razvito v Android Studiu.
Glavni cilj Pixela je prikazati čudovite luči. To je na primer svetlobni način kamina, poglejmo, kako bi lahko izgledal kamin z eno slikovno piko. Tudi mavrični način prikazuje, kako veliko naklonov "naravno" tvorijo svetleče diode.
Elektrika Pixel je Arduino Nano in 10 naslovljivih LED ws2813. Ima tudi zaslon, ki prikazuje čas, in zvočni signal, tako da lahko nastavite alarm.
Telo je izdelano iz MDF (lasersko rezano) in akrila.
Github za datoteke.apk, arduino, datoteke aplikacij.
github.com/danielwilberger/PixelSmartLamp
EDIT: naložil rezalne liste za del MDF
Zaloge
- Arduino nano;
- Bluetooth modul HC-05
- Modul ure v realnem času;
- 4-mestni LED zaslon;
- 10 x naslovljive LED lučke ws2812b
- Potenciometer;
- 4 x gumbi;
- Zvočni signal;
- Pisava 5V-2amp.
1. korak: Nastavitev elektronike
Moj prvi korak, potem ko so mi dostavili elektroniko, je bilo sestavljanje vsega na protoboard.
Na ta način bi ga lahko preizkusil in začel programirati Arduino.
Moral sem:
- Spajkajte LED diode;
- Sestavite vse naprave na protoboard -u;
- Sestavite 10 naslovljivih LED (dva za vsako stran kocke, minus dno);
- Začnite s programiranjem.
Preden sem dobil akrilno kocko za končni prikaz, sem jo preizkusil na maminini plastični posodi.
2. korak: Programiranje
Moj naslednji korak je bilo programiranje. Najprej arduino z vsemi funkcijami, ki sem si jih zamislil za Pixel:
- Prikaz trenutnega časa na uri;
- Nastavite alarm za prebujanje (ali časovnik);
- Prikažite več svetlobnih načinov, od preproste bele svetilke do mavrične predstave ali kamina. V tem delu je bilo v veliko pomoč nekaj primerov v knjižnici FastLED za Arduino.
Po zaključku sem imel popolnoma nadzorovano svetilko z analognimi gumbi in potenciometrom. Naslednji korak je bil vzpostavitev povezave bluetooth z aplikacijo, ki sem jo naredil samo za Pixel. Ta del je trajal najdlje. Pred tem projektom nisem imel znanja o programiranju za Android in sploh nisem poznal jezika Java. Toda že sem poznal objektno usmerjeno programiranje, zato sem začel tečaj programiranja za Android na Udemyju.
Vse, kar želite, lahko preverite na mojem Githubu. Povezava je zgoraj na začetku tega članka.
3. korak: Oblikovanje Pixela
V tem trenutku sem si predstavljal, kako bo videti Pixel, vendar je bil čas, da ga postavim na papir. Pravzaprav v računalniku. Ker bi Pixel gradil na MDF lesu in akrilu, sem vedel, da moram narisati zelo natančen projekt. Zato sem izbral programsko opremo CAD in začel risati Pixel.
Morda bi to zgledalo precej, vendar sem že vedel, kako risba CAD -ja poteka s podiplomskega tečaja o Inženiringu. In bilo je v veliko pomoč pri pridobivanju 2D risb za lasersko rezanje MDF.
4. korak: Sestavljanje MDF
Ko sem risal Pixel na CAD -u, sem stopil v stik z lokalnim podjetjem, ki je izdelovalo akrilne predmete, na primer zaslone, trofeje itd. Na teh mestih so običajno stroji za lasersko rezanje, zato sem vprašal, ali bi lahko zgradili mojo akrilno kocko in razrezali MDF.
Tako sem dobil 6 mm MDF ploščo in jim poslal rezalne risbe.
Prejel sem jih kot na zgornji sliki in vse skupaj sestavil s cianoakrilatnim lepilom.
5. korak: Spajkanje komponent
To je bil eden najtežjih trenutkov. Nisem imel izkušenj s spajkanjem elektronike, zato sem si ogledal nekaj video posnetkov in poskusil.
Korak 6: Dokončanje lesa
V tem trenutku je Pixel deloval tako, kot sem načrtoval. Potrebne so bile nekatere prilagoditve, na primer nastavitev svetlosti LED.
Toda zaključek MDF ni bil takšen, kot sem pričakoval. Tako sem dobil leseno pločevino, ki je zelo tanek kos lesa. Pokril sem vso površino MDF z, če sem, potem ko sem se prepričal, da lahko prikaz ure oddaja svetlobo skozinjo.
7. korak: Uživajte v luči
Po vsem tem delu sem imel svetilko, ki je bila veliko svetlejša in lepšega videza, kot sem si sprva predstavljal.
V videoposnetku lahko preverite vse načine osvetlitve Pixel.
Če dvomite o svojem projektu, me kontaktirajte. Z veseljem bom pomagal:)