Sadržaj:
- Korak 1: Dijelovi
- Korak 2: Postavljanje Raspberry Pi
- Korak 3: Ugradnja LED trake
- Korak 4: Upravljanje LED trakom
- Korak 5: Postavljanje brojača sata
- Korak 6: Napajanje Pi -a
- Korak 7: Dovršite krug i pakiranje
- Korak 8: Otpremite kôd + Završi
Video: Unaprijeđeno budilica Pametno svjetlo: 8 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
U ovom projektu obnavljam potpuno pokvareni budilnik. Brojčanik sata zamjenjuje 12 LED dioda, osvijetljenih LED trakom oko ruba sata. 12 LED dioda govori o vremenu, a LED traka je programirana da djeluje kao alarm, pojačavajući punu svjetlinu u zadano vrijeme. Sve kontrolira Raspberry Pi Zero, omogućavajući bezbroj mogućnosti integracije i proširenja, poput automatske sinkronizacije svjetlosnog alarma sa alarmom telefona ili treptanja LED dioda kada primite e -poštu.
Projekt koristi relativno jeftine ili ponovno korištene komponente - jedino što sam na kraju kupio je regulator napona. Sve ostalo što sam slučajno ležao, poput izrezane LED trake. Ovaj Instructable će vas provesti kroz to kako sam svom novom pokvarenom satu dao novi život i nadamo se da bi vas mogao inspirirati da unaprijedite nešto svoje.
Korak 1: Dijelovi
Da bismo kontrolirali sve što ćemo koristiti, koristit ćemo Raspberry Pi Zero jer je mali, košta vrlo malo i može se povezati na WiFi, što znači da nam ne trebaju sat u stvarnom vremenu i stoga lako možemo ažurirati kôd daljinski s prijenosnog računala. Osim ako nemate Pi Zero W, povezat ćemo se na WiFi mrežu pomoću USB WiFi ključa.
Ovdje je popis dijelova koje sam koristio, ali većina stvari može se zamijeniti za odgovarajuće alternative. Na primjer, umjesto Raspberry Pi -a, za kontrolu projekta mogli biste koristiti Arduino sa satom u stvarnom vremenu.
Korišćeni delovi
- Stari budilnik
- 30 cm toplo bijele LED trake
- 1x Raspberry Pi Zero + mikro SD kartica
- 1x USB WiFi ključ + mikro USB u USB pretvarač
- 12x LED dioda
- 12x 330ohm otpornici (koristite veće ako želite prigušene LED diode)
- 1x TIP31a (ili drugi npn tranzistor za napajanje ili MOSFET)
- 1x 1k otpornik
- 1x LM2596 DC-DC podesivi pretvarač dolara (smanjuje 12V za 5V za Raspberry Pi)
- 1x 12v napajanje (+ način uključivanja u vaš projekat)
- 10 cm x 10 cm drveta za ploču sata (treba biti prikladno tanko za ugradnju LED dioda)
- Razni komadi žice različite boje
Korisne stvari koje treba imati
- Lemilica + lemljenje
- Vruće ljepilo
- Multimetar
- Breadboard
- Ženske igle zaglavlja
- Čitač ili pretvarač mikro SD kartica
- Kompjuter
- Mini HDMI adapter + HDMI ekran ako želite koristiti Pi -ovo radno okruženje
Korak 2: Postavljanje Raspberry Pi
Operativni sistem
Budući da Raspberry Pi neće biti povezan s ekranom, odlučio sam koristiti Raspbian Buster Lite koji ne dolazi s radnim okruženjem. Ako ste noviji u Raspberry Pi -u, možda ćete se htjeti držati standardnog Raspbian Bustera koji dolazi sa radnom površinom. Ako niste sigurni kako instalirati operativni sistem, ovo je sjajan izvor. Oba operativna sistema mogu se preuzeti sa web stranice Raspberry Pi.
Trenutno napajajte Pi preko Micro USB ulaza za napajanje. Povežite i USB WiFi ključ.
Razgovaram sa Raspberry Pi
Nakon što se sve upakuje, prilično je teško pristupiti Pi ako želite promijeniti kôd itd. Korištenje SSH -a omogućuje vam povezivanje s Pi -om i upravljanje njime s drugog računara. Ovo nije zadano uključeno, ali to možemo učiniti jednostavnim stvaranjem mape pod nazivom ssh na particiji za pokretanje vaše SD kartice. Ako ste se već prijavili na svoj Pi, to možete učiniti i tako da upišete sudo raspi-config u terminal i prijeđete na Interfacing Options> SSH i odaberete Yes da biste ga omogućili.
Sada se možete povezati na svoj Pi na drugom računaru. Na Mac -u ili Linuxu možete koristiti svoju terminalnu aplikaciju, ali na većini verzija sustava Windows morat ćete instalirati SSH klijenta, poput PuTTY -a. Povežite se sa Pi upisivanjem ssh pi@ gdje je ime hosta zamijenjeno imenom hosta IP adrese vašeg Pi. Zadano ime hosta je raspberrypi.local. Od vas će se tražiti lozinka koja je, ako je još niste promijenili, malina.
Instaliranje potrebnih stvari
Prvo provjerite je li sve ažurirano pokretanjem sudo apt update, a zatim sudo apt potpunom nadogradnjom.
Da bismo bili sigurni šta nam je potrebno za kontrolu GPIO pinova na Pi tipu sudo apt-get install python-rpi.gpio i sudo apt-get install python3-rpi.gpio. Oni bi već trebali biti instalirani na punoj verziji Raspbiana.
Kod
Evo koda za preuzimanje kako bi sve funkcioniralo. Ako koristite okruženje radne površine, zalijepite ih u mapu Dokumenti.
Ako koristite komandnu liniju SSH -a, idite do matične fascikle upisivanjem cd ~/Documents i pritiskom na enter. Napravite novu datoteku pod nazivom test1.py sa nano test1.py. Ovo će otvoriti uređivač nano teksta gdje možete zalijepiti kôd preuzete datoteke test1.py. CTRL-O i pritisnite enter za spremanje datoteke, a CTRL-X za napuštanje uređivača. Ponovite postupak za preostale datoteke.
Korak 3: Ugradnja LED trake
Prvo umetnite LED traku u sat da vidite koliko vam je potrebno, označite ovu dužinu i odrežite traku na sljedećoj točki rezanja kao što je prikazano. Mnogo je lakše lemiti žice na traku prije nego što se traka zaglavi na mjestu. Ovo je prilično dobar vodič kako to učiniti, ali ako niste sigurni, samo bih vježbao na lemljenju spoja na komadu s kojeg ste upravo izrezali traku. Lemite jednu žicu na pozitivnu tačku lemljenja i jednu žicu na negativnu. Pobrinite se da testirate da li LED traka radi prije nego je zalijepite u sat.
Budući da je LED traka koju sam koristio bila korištena prije nego što je izgubila samoljepljivu podlogu, morao sam koristiti vruće ljepilo da pričvrstim traku oko ruba ruba sata. Ako imate višak duljine, pokrijte mjesto na kojem su žice pričvršćene. Možda ćete kasnije htjeti instalirati traku, ali bilo mi je lakše da je sklonim u sat.
Korak 4: Upravljanje LED trakom
Priključivanje LED trake
LED traka radi na 12V pa se ne može napajati direktno iz Pi -ja. Da bismo ih kontrolirali, koristit ćemo tranzistor za napajanje (npr. TIP31a) spojen na Pi kao što je prikazano gore. Preporučio bih da prvo provjerite radi li sve na ploči.
- Spojite GPIO 19 na bazu preko 1k otpornika
- Odašiljač bi trebao biti spojen na GND
- Spojite kolektor na negativni terminal LED trake
- Priključite pozitivni terminal LED trake na +12V
Testiranje
U komandnoj liniji pređite u fasciklu sa dokumentima (cd ~/Documents) i otkucajte python test1.py i unesite. Trebali biste vidjeti kako se LED traka povećava i smanjuje svjetlina. Da biste izašli iz programa, pritisnite CTRL-C. Možete urediti datoteku (nano test1.py) da biste promijenili brzinu i svjetlinu u programu.
uvoz RPi. GPIO kao GPIOimport vreme GPIO.setmode (GPIO. BCM) # Koristite BCIO pinout GPIO.setwarnings (False) # Zanemarite upozorenja o pinovima koji se koriste za druge stvari ledStripPin = 19 # LED traka se pokreće sa ovog pina GPIO.setup (ledStripPin, GPIO. dutyCycle u rasponu (0, 101, 1): # Smanjivanje pwm. ChangeDutyCycle (dutyCycle) time.sleep (0.05) za dc u rasponu (95, -1, -1): # Smanjivanje pwm. ChangeDutyCycle (dc) vrijeme.sleep (0.05) osim KeyboardInterrupt: # Pritisnite CTRL-C za izlaz, a zatim: pwm.stop () # Zaustavite pwm GPIO.cleanup () # Očistite GPIO pinove
Korak 5: Postavljanje brojača sata
Odrežite komad drveta za sat licem prema dolje tako da stane u vaš sat. Ja sam svoj napravio da miruje na otprilike 3 cm od prednje strane. Izbušite 12 rupa prečnika vaših LED dioda (obično 3 mm ili 5 mm) razmaknutih 30 stepeni jedna od druge. Brusite prednju stranu prema dolje i nanesite završnu obradu po vašem izboru. Sa stražnje strane postavite LED diode tako da pokazuju prema naprijed. Koristio sam vruće ljepilo kako bih LED diode držao na mjestu s pozitivnim priključkom (dulja žica) prema unutra. Veličina mog sata znači da mogu spajati sve negativne terminale zajedno (vidi gore) pa je potrebna samo jedna žica za spajanje svih 12 LED dioda na GND. Zatim lemite žicu na svaku LED diodu.
Ako želite ovo testirati na ploči, sjetite se da upotrijebite otpornik (330 ohma je prilično standardan) u nizu sa svakom LED -om prije nego što ga spojite na jedan od Pi GPIO pinova. Poigrajte se vrijednošću otpornika koju koristite da biste postigli nivo svjetline s kojim ste zadovoljni. T-cobbler je zaista koristan za razbijanje Pi-ovih igala na ploču, iako ćete za to morati lemiti igle zaglavlja. Koristite test2.py (pokrenite ga pomoću python test2.py), ali prvo uredite program i unesite Pi -ove GPIO pinove koje ste koristili za svaku LED diodu.
uvezite RPi. GPIO kao GPIO
vrijeme uvoza GPIO.setmode (GPIO. BCM) # Koristite BCIO pinout GPIO.setwarnings (False) # Zanemarite upozorenja o pinovima koji se koriste za druge stvari # Zamijenite jedan, dva,… odgovarajućim brojem pinova hourPin = [jedan, dva, tri, četiri, pet, šest, sedam, osam, devet, deset, jedanaest, dvanaest] # Igle na koje su LED diode spojene od 1-12 za i u rasponu (0, 12): GPIO.setup (hourPin , GPIO. OUT) # Postavite sve hourPinove kao izlaze GPIO.output (hourPin , 0) # Uverite se da su sve LED diode isključene try: while True: za i u opsegu (0, 12) GPIO.output (hourPin , 1): time.sleep (0.05) za i u rasponu (0, 12) GPIO.output (hourPin , 0): time.sleep (0.05) osim KeyboardInterrupt: # Pritisnite CTRL-C za izlaz, i zatim: GPIO.cleanup () # Očistite GPIO pinove
Korak 6: Napajanje Pi -a
Potreban nam je jednostavan način da 5V dovedemo do Pi Zero kako bismo se riješili mikro USB kabela koji smo do sada koristili za napajanje. Postoje brojna rješenja koja smanjuju 12V na 5V, poput linearnog regulatora napona LM7805, ali ona nisu baš učinkovita, pa sam se umjesto toga odlučila za korištenje učinkovitijeg podesivog pretvarača u vrijednosti pomoću čipa LM2596. Napomena: s ovim ćete morati okretati potenciometar dok se izlazni napon ne smanji na 5V prema potrebi pa će vam trebati neki način mjerenja napona.
Korištenje LM2596 je jednostavno: spojite +12V na IN +, uzemljite na IN-. Pi se može spojiti direktno na 5V spajanjem OUT+ na jedan od Pi -ovih 5V pinova, ali provjerite jeste li promijenili izlazni napon na 5V prije nego što to učinite ili ćete pržiti svoj Pi!
Korak 7: Dovršite krug i pakiranje
Sada smo pokrili sva tri elementa kola koja su prikazana zajedno u cjelokupnom krugu iznad. Da biste uštedjeli prostor i učinili krug urednijim, stavite svoje kolo na trakastu ploču ili prototipnu ploču. Prvo lemite najmanje komponente, otpornike, zatim tranzistor za napajanje, sve konektore i na kraju žice. Isplanirajte svoj krug prije lemljenja kako biste bili sigurni da imate prostora za sve.
Sve sam povezao na prototipsku PCB i koristio sam ženske pinove zaglavlja tako da se Pi mogao montirati direktno na PCB. LED diode na brojčaniku sata povezane su otpornicima s jedne strane ploče, a s druge strane ploče ostavio sam prostor za tranzistor za napajanje i slobodan za bilo koja druga kola koja bih kasnije htio dodati.
Spojite sat sa satom i provjerite da li mu elektronika odgovara. Sve mi je sasvim odgovaralo pa ćete možda morati malo preurediti. Priključite napajanje i pokrenite test1.py i test2.py sa SSH -a da provjerite radi li sve prije postavljanja stražnje strane.
Korak 8: Otpremite kôd + Završi
Kod
Na kraju, ako već niste, prenesite kôd i prilagodite ga kako želite (koristeći nano filename.py). Prednost povezivanja na Pi preko SSH -a je to što možete ažurirati kôd bez otvaranja sata.
Ovi python programi iz 2. koraka rade sljedeće:
- light_clock_simple.py jednostavno prikazuje sat na LED -ovima i blijedi gore -dolje LED traku u određeno vrijeme
- light_clock_pwm.py je isti kao gore, ali također dozvoljava smanjenje svjetline LED dioda i prikazuje minute s drugačijom svjetlinom u odnosu na sate. Morat ćete se poigrati s razinama osvjetljenja kako biste vidjeli kontrast između njih
Ovo bi trebalo pružiti solidnu osnovu za dodavanje koda, na primjer možda biste htjeli dodati dugme za odgodu svjetlosnog alarma.
Da bismo pokrenuli program kada se Pi pokrene, moramo dodati '@reboot nohup python light_clock_pwm.py &' na kraj datoteke crontab koja se može otvoriti s terminala pomoću crontab -e. Ponovo pokrenite svoj Raspberry Pi da provjerite radi li sada sa sudo shutdown -r.
Potencijalni dodaci
Evo nekoliko ideja dodatne funkcionalnosti koje se mogu dodati
- Dodavanje dugmeta za odgodu
- Dodavanje režima lampe
- Povezivanje s IFTTT -om (npr. Svjetlo bi se moglo upaliti kada se alarm telefona isključi/bljeska kada primite e -poštu)
- Dodatni kapacitet dodira, tj. Pretvorite sat u lampu na dodir
Možda ćete primijetiti pri korištenju PWM -a da LED dioda ponekad, posebno pri nižoj svjetlini, malo treperi. To je zato što Pi koristi softverski PWM pa procesi procesora mogu utjecati na radni ciklus. Imajući manje pokrenutih procesa u tome mi pomaže, pa sam koristio smanjeni operativni sistem Raspbian Lite. Hardverski PWM dostupan je i na nekoliko pinova pa ako treperenje dokazuje problem, ovo bi moglo biti nešto za razmotriti.
Nadam se da ste pronašli ovo uputstvo poučno i da ćete se ili nadahnuti da obnovite stari budilnik ili upotrijebite elemente koda za svoj projekt.
Druga nagrada u izazovu brzine LED traka
Preporučuje se:
LED pametno svjetlo u oblaku: 11 koraka (sa slikama)
LED Smart Cloud Light: Ovo je LED pametni oblak koji se može sastaviti uz minimalne alate. Pomoću kontrolera možete raditi sve vrste uzoraka i opcija boja. Budući da se LED diode mogu pojedinačno adresirati (svaka LED može biti različite boje i/ili svjetline) zatvaranje
DIY WiFi pametno sigurnosno svjetlo sa školjkom 1: 6 koraka (sa slikama)
DIY WiFi Smart Security Light with Shelly 1: Ovo uputstvo će se osvrnuti na stvaranje DIY pametnog sigurnosnog svjetla pomoću Shelly 1 pametnog releja. Ako sigurnosno svjetlo učinite pametnim, omogućit ćete vam mnogo veću kontrolu nad time kada se aktivira i koliko dugo ostaje uključeno. Može biti aktivan
Lako buđenje: pametno svjetlo za buđenje napravljeno od Raspberry Pi: 6 koraka
Lako buđenje: Pametno svjetlo za buđenje napravljeno s Raspberry Pi: Uvod Za projektni plan kurikuluma1 morao sam nešto napraviti. Uvijek sam bio fasciniran kako bi vam svjetlo za buđenje koristilo za buđenje poput onih iz Philips-a. Pa sam odlučio napraviti svjetlo za buđenje. Napravio sam svjetlo za buđenje pomoću Raspberra
Uradi sam pametno svjetlo s Raspberry Pi Zero: 4 koraka (sa slikama)
Uradi sam pametno svjetlo s Raspberry Pi Zero: Pametno svjetlo postaje sve popularnije. Takva svjetla su obično LED svjetla koja se mogu kontrolirati putem WiFi -a ili Bluetooth -a. Boje, zasićenost i svjetlina mogu se mijenjati pomoću pametnog telefona. Jedna stvar koju sam shvatio je da je često pametan li
Pametno ulično svjetlo pomoću Ir senzora s Arduinom: 4 koraka (sa slikama)
Pametno ulično svjetlo pomoću Ir senzora s Arduinom: Pretplatite se na moj kanal za više projekata. Ovaj projekt se odnosi na pametno ulično svjetlo, ulično će se svjetlo uključiti dok vozilo prolazi kroz njega. Ovdje koristimo 4 infracrvena senzora koji osjećaju položaj vozilo, svaki IR senzor kontrolira