Tartalomjegyzék:
- 1. lépés: Alkatrészek
- 2. lépés: A Raspberry Pi beállítása
- 3. lépés: A LED csík felszerelése
- 4. lépés: A LED szalag vezérlése
- 5. lépés: Az óralap előkészítése
- 6. lépés: A Pi áramellátása
- 7. lépés: Végezze el az áramkört és a csomagolást
- 8. lépés: Töltse fel a kódot + Befejezés
Videó: Újrahasznosított ébresztőóra intelligens fény: 8 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Ebben a projektben újrahasznosítok egy teljesen elromlott ébresztőórát. Az óralapot 12 LED váltja fel, amelyeket az óra peremén lévő LED -szalag világít meg. A 12 LED jelzi az időt, a LED szalag pedig úgy van programozva, hogy riasztásként működjön, és a beállított időpontban teljes fényerőt érjen el. Mindent a Raspberry Pi Zero vezérel, amely számtalan integrációs és bővítési lehetőséget kínál, mint például a fényriasztó automatikus szinkronizálása a telefon riasztásával vagy a LED -ek villogása, amikor e -mailt kap.
A projekt viszonylag olcsó vagy újrafelhasznált alkatrészeket használ - az egyetlen dolog, amit végül megvettem, a feszültségszabályozó volt. Minden más, amiben véletlenül feküdtem, például egy levágott LED szalag. Ez az oktatható útmutató végigvezeti Önt azon, hogyan adtam új életet a törött órámnak, és remélhetőleg inspirálhat benneteket arra, hogy újrahasznosítsatok valamit.
1. lépés: Alkatrészek
Annak érdekében, hogy mindent ellenőrizni tudjunk, a Raspberry Pi Zero -t használjuk, mivel kicsi, nagyon olcsó, és csatlakoztatható a WiFi -hez, ami azt jelenti, hogy nincs szükségünk valós idejű órára, és így könnyen frissíthetjük a kódot távolról egy laptopról. Hacsak nem rendelkezik Pi Zero W -vel, akkor egy WiFi hálózathoz csatlakozunk egy USB WiFi hardverkulcs segítségével.
Itt található az általam használt alkatrészek listája, de a legtöbb dolog kicserélhető megfelelő alternatívákra. Például a Raspberry Pi helyett egy valós idejű órával rendelkező Arduino -t használhat a projekt irányításához.
Használt alkatrészek
- Régi ébresztőóra
- 30 cm meleg fehér LED csík
- 1x Raspberry Pi Zero + micro SD kártya
- 1x USB WiFi hardverkulcs + mikro USB -USB átalakító
- 12x LED
- 12x 330ohm ellenállás (használjon magasabbat, ha halványabb LED -eket szeretne)
- 1x TIP31a (vagy más npn teljesítménytranzisztor vagy MOSFET)
- 1x 1k ellenállás
- 1x LM2596 DC-DC állítható bak konverter (a Raspberry Pi esetében lekapcsol 12V-ról 5V-ra)
- 1x 12V -os tápegység (+ a projektbe való bejutás módja)
- 10 cm x 10 cm fa az óralaphoz (megfelelően vékonynak kell lennie a LED -ek rögzítéséhez)
- Különböző színű drótdarabok
Hasznos dolgok
- Forrasztópáka + forrasztópáka
- Forró ragasztó
- Multiméter
- Kenyeretábla
- Női fejléc csapok
- Micro SD kártyaolvasó vagy átalakító
- Egy számítógép
- Mini HDMI adapter + HDMI képernyő, ha használni szeretné a Pi asztali környezetét
2. lépés: A Raspberry Pi beállítása
Operációs rendszer
Mivel a Raspberry Pi nem kapcsolódik képernyőhöz, a Raspbian Buster Lite használatát választottam, amely nem tartozik asztali környezethez. Ha új a Raspberry Pi -n, érdemes ragaszkodnia az asztali asztali Raspbian Buster szabványhoz. Ha nem biztos benne, hogyan telepítse az operációs rendszert, akkor ez egy nagyszerű forrás. Mindkét operációs rendszer letölthető a Raspberry Pi webhelyről.
Pillanatnyilag táplálja a Pi -t a Micro USB tápbemenetén keresztül. Csatlakoztassa az USB WiFi hardverkulcsot is.
Beszélgetés a Raspberry Pi -vel
Ha minden össze van csomagolva, elég nehéz elérni a Pi -t, ha meg akarja változtatni a kódot, stb. Ez alapértelmezés szerint nincs bekapcsolva, de megtehetjük úgy, hogy egyszerűen létrehozunk egy ssh nevű mappát az SD -kártya rendszerindító partíciójában. Ha már bejelentkezett a Pi-be, ezt megteheti úgy is, hogy beírja a sudo raspi-config parancsot a terminálba, navigál az Interfészbeállítások> SSH menüponthoz, és engedélyezi az Igen lehetőséget.
Most csatlakozhat a Pi -hez egy másik számítógépen. Mac vagy Linux rendszeren használhatja terminál alkalmazását, de a Windows legtöbb verziójában telepítenie kell egy SSH klienst, például a PuTTY -t. Csatlakozzon a Pi -hez az ssh pi@ beírásával, ahol a gazdagépnév helyébe a Pi IP -címe állomásneve kerül. Az alapértelmezett gazdagépnév a raspberrypi.local. Kérni fog egy jelszót, amely, ha még nem változtatta meg, málna.
Szükséges anyagok telepítése
Először győződjön meg arról, hogy minden naprakész a sudo apt update, majd a sudo apt full-upgrade futtatásával.
Annak érdekében, hogy megbizonyosodjunk arról, hogy mire van szükségünk a GP típusú pin-k vezérléséhez a Pi típusban sudo apt-get install python-rpi.gpio és sudo apt-get install python3-rpi.gpio. Ezeket már telepíteni kell a Raspbian teljes verziójára.
A kód
Itt van a letöltendő kód, hogy minden működjön. Ha asztali környezetet használ, illessze be ezeket a Dokumentumok mappába.
Ha az SSH parancssorát használja, navigáljon a saját mappájához a cd ~/Documents gombbal, és nyomja le az enter billentyűt. Hozzon létre egy új fájlt test1.py néven a nano test1.py segítségével. Ezzel megnyílik a nano szövegszerkesztő, ahová beillesztheti a letöltött test1.py fájl kódját. CTRL-O és nyomja meg az Enter billentyűt a fájl mentéséhez, és a CTRL-X billentyűt a kilépéshez. Ismételje meg a folyamatot a többi fájl esetében.
3. lépés: A LED csík felszerelése
Először pattintsa be az óra LED -szalagját, hogy megtudja, mennyi kell, jelölje meg ezt a hosszúságot, és vágja le a csíkot a következő vágási ponton, az ábrán látható módon. Sokkal könnyebb a huzalokat a csíkhoz forrasztani, mielőtt a csík a helyére ragad. Ez egy nagyon jó útmutató, hogyan kell ezt megtenni, de ha nem biztos benne, én csak gyakorolnám a forrasztási kötést azon a darabban, amelyből most levágta a csíkját. Forrasztjon egy vezetéket a pozitív forrasztási ponthoz és egy vezetéket a negatívhoz. Győződjön meg róla, hogy teszteli a LED szalag működését, mielőtt az órájába helyezi.
Mivel az általam használt LED szalagot még azelőtt használták, hogy elveszítette öntapadó hátlapját, ezért forró ragasztóval kellett rögzítenem a csíkot az óra pereme körül. Ha túl hosszú, fedje le a vezetékek rögzítési pontját. Lehet, hogy később szeretné telepíteni a csíkot, de könnyebbnek találtam, ha elrejtette az órában.
4. lépés: A LED szalag vezérlése
A LED szalag csatlakoztatása
A LED szalag 12V -ról működik, így nem lehet közvetlenül a Pi -ről táplálni. Ezek vezérléséhez egy teljesítménytranzisztor (pl. TIP31a) segítségével fogunk csatlakozni a Pi -hez, a fentiek szerint. Azt javaslom, először ellenőrizze, hogy működik -e a kenyérsütőn.
- Csatlakoztassa a GPIO 19 -et a bázishoz 1k ellenálláson keresztül
- Az emittert a GND -hez kell csatlakoztatni
- Csatlakoztassa a kollektorot a LED szalag negatív pólusához
- Csatlakoztassa a pozitív LED szalagcsatlakozót +12V -ra
Tesztelés
A parancssorban nyissa meg a dokumentumok mappát (cd ~/Documents), írja be a python test1.py parancsot, és írja be. Látnia kell a LED szalag fényerejének növekedését és csökkenését. A programból való kilépéshez nyomja meg a CTRL-C billentyűt. A fájl szerkesztésével (nano test1.py) módosíthatja a program sebességét és fényerejét.
importálja az RPi. GPIO -t GPIO -ként importálja az időt GPIO.setmode (GPIO. BCM) # A BCM pinout használata (ledStripPin, GPIO. OUT) # A ledStripPin kimenet beállítása dutyCycle tartományban (0, 101, 1): # Fw up up pwm. ChangeDutyCycle (dutyCycle) time.sleep (0,05) dc tartományban (95, -1, -1): # Fw down down pwm. ChangeDutyCycle (dc) time.sleep (0.05), kivéve a KeyboardInterrupt: # A kilépéshez nyomja meg a CTRL-C billentyűt, majd: pwm.stop () # A pwm GPIO leállítása. cleanup () # A GPIO csapok tisztítása
5. lépés: Az óralap előkészítése
Vágja le az órához tartozó fadarabot arccal lefelé méretre, hogy illeszkedjen az órájához. Az enyémet elölről kb 3 cm -re pihentettem. Fúrjon 12 lyukat a LED -ek átmérőjétől (általában 3 mm vagy 5 mm), egymástól 30 fokban. Csiszolja az elülső oldallal lefelé, és vigye fel a kívánt felületet. A hátsó oldalról helyezze el a LED -eket, hogy azok előre nézzenek. Forró ragasztót használtam, hogy a LED -eket a helyükön tartsam, a pozitív kivezetéssel (hosszabb huzal) befelé. Az óralapom mérete azt jelentette, hogy az összes negatív kivezetést össze tudtam forrasztani (lásd fent), így csak egy vezetékre volt szükség mind a 12 LED GND -hez való csatlakoztatásához. Ezután forrasztjon vezetéket az egyes LED -ekhez.
Ha ezt kenyérsütő táblán szeretné tesztelni, akkor ne felejtse el használni az ellenállást (330ohm az alapfelszereltség) minden LED -el, mielőtt csatlakoztatná a Pi GPIO tűkhöz. Játsszon az ellenállás értékével, amellyel olyan fényerősséget kap, amellyel elégedett. A t-cobbler nagyon hasznos a Pi csapjainak kenyérsütő táblához való töréséhez, bár ehhez fel kell forrasztania a fejléceket. Használja a test2.py -t (futtassa a python test2.py használatával), de győződjön meg róla, hogy először szerkeszti a programot, és megadja a Pi GPIO -csapjait, amelyeket minden egyes LED -hez használt.
importálja az RPi. GPIO -t GPIO -ként
importálási idő GPIO.setmode (GPIO. BCM) # Használja a BCM pinout GPIO.setwarnings (hamis) # Figyelmen kívül hagyja az egyéb dolgokra használt csapok figyelmeztetéseit # Cserélje le az egyiket, kettőt,… a megfelelő PIN -számra, négy, öt, hat, hét, nyolc, kilenc, tíz, tizenegy, tizenkettő] # A LED-ekhez tartozó tűk 1-12-ig (0, 12): i GPIO.setup (hourPin , GPIO. OUT) # Állítsa be az összes órát a kimenetre GPIO.output (hourPin , 0) # Győződjön meg arról, hogy az összes LED nem világít.], 1): time.sleep (0,05) i (0, 12) tartományban majd: GPIO.cleanup () # Tisztítsa meg a GPIO csapokat
6. lépés: A Pi áramellátása
Szükségünk van egy egyszerű módra, hogy az 5 V -ot eljuttassuk a Pi Zero -hoz, hogy megszabaduljunk az eddig tápellátásához használt mikro -USB -kábeltől. Számos megoldás létezik, amelyek 12 V -ról 5 V -ra lépnek le, például egy LM7805 lineáris feszültségszabályozó, de ezek nem túl hatékonyak, ezért inkább a hatékonyabb állítható buck konvertert választottam az LM2596 chip használatával. Megjegyzés: ezzel addig kell csavarni a potenciométert, amíg a kimeneti feszültség 5 V -ra nem csökken, így valamilyen módon meg kell mérni a feszültséget.
Az LM2596 használata egyszerű: csatlakoztassa a +12V-ot az IN +-hoz, földelje az IN-. A Pi közvetlenül az 5V -hoz csatlakoztatható, ha az OUT+ -ot a Pi 5V -os csatlakozójának egyikéhez csatlakoztatja, de mielőtt ezt megtenné, győződjön meg arról, hogy a kimeneti feszültséget 5V -ra változtatta -e.
7. lépés: Végezze el az áramkört és a csomagolást
Most áttekintettük az áramkör mindhárom elemét, amelyek együtt láthatók a fenti általános áramkörben. A helytakarékosság és az áramkör tisztábbá tétele érdekében tegye az áramkört szalaglapra vagy prototípuslapra. Először forrasztja be a legkisebb alkatrészeket, az ellenállásokat, majd a teljesítménytranzisztorokat, a csatlakozókat és végül a vezetékeket. A forrasztás előtt tervezze meg az áramkört, hogy megbizonyosodjon arról, hogy mindenre van hely.
Mindent egy prototípus -NYÁK -ra kapcsoltam, és női fejléceket használtam, hogy a Pi közvetlenül a NYÁK -ra szerelhető legyen. Az óralapon lévő LED -ek a tábla egyik oldalán lévő ellenállásokon keresztül vannak összekötve, és a tábla másik oldalán helyet hagytam a teljesítménytranzisztor számára, és nincs szabad más áramkörök számára, amelyeket később szeretnék hozzáadni.
Csatlakoztassa az óralapot az órához, és győződjön meg arról, hogy az elektronika mindenben illeszkedik. Számomra minden nagyon szorosan illeszkedett, ezért előfordulhat, hogy némi átrendezésre van szükség. Csatlakoztassa a tápegységet, és futtassa a test1.py és test2.py fájlokat az SSH -ból, hogy ellenőrizze, minden működik -e a hátlap rögzítése előtt.
8. lépés: Töltse fel a kódot + Befejezés
A kód
Végül, ha még nem tette meg, töltse fel a kódot, és alakítsa át tetszés szerint (a nano fájlnév.py használatával). Az SSH -n keresztül a Pi -hez való csatlakozás előnye, hogy az óra megnyitása nélkül is frissítheti a kódot.
Ezek a python programok a 2. lépésből a következőket teszik:
- A light_clock_simple.py egyszerűen megjeleníti az órát a LED -eken, és bizonyos időpontokban fel -le halványul
- A light_clock_pwm.py ugyanaz, mint fent, de lehetővé teszi a LED -ek fényerejének csökkentését, és a perceket az óráktól eltérő fényerővel jeleníti meg. Játszania kell mindkettő fényerejével, így észrevehető a kettő közötti kontraszt
Ezeknek szilárd alapot kell biztosítaniuk a kódhoz való hozzáadáshoz, például érdemes hozzáadni egy gombot a fényjelzés elhalasztásához.
A program elindításához, amikor a Pi elindul, hozzá kell adnunk a „@reboot nohup python light_clock_pwm.py &” szót a crontab fájl végéhez, amely a terminálról a crontab -e segítségével nyitható meg. Indítsa újra a Raspberry Pi -t, és ellenőrizze, hogy működik -e a sudo shutdown -r most.
Lehetséges kiegészítések
Íme néhány ötlet a kiegészítő funkciókhoz, amelyeket hozzá lehet adni
- Szundi gomb hozzáadása
- Lámpa mód hozzáadása
- Csatlakozás az IFTTT -hez (pl. A lámpa kigyulladhat, amikor a telefon riasztása megszólal/villog, amikor e -mailt fogad)
- Kapacitásérzékelő képesség növelése, azaz az óra érintő lámpává tétele
A PWM használatakor észreveheti, hogy időnként, különösen alacsonyabb fényerő mellett, a LED kissé villog. Ennek oka az, hogy a Pi szoftver PWM szoftvert használ, így a CPU -folyamatok befolyásolhatják a működési ciklust. Mivel kevesebb folyamat fut, ez segít, így a lecsökkentett Raspbian Lite operációs rendszert használtam. A hardveres PWM néhány tűn is rendelkezésre áll, így ha a villódzás bizonyítja a problémát, akkor ezt meg kell vizsgálni.
Remélem, megtalálta ezt az oktatható tájékoztatót, és vagy inspirációt érez egy régi ébresztőóra újrahasznosításához, vagy saját kódjához használja a kód elemeit.
Második díj a LED Strip Speed Challenge versenyen
Ajánlott:
Újrahasznosított LED éjszakai fény (projekt kezdőknek): 5 lépés
Újrahasznosított LED éjszakai lámpa (Projekt kezdőknek): Ebben az utasításban a kezdők különböző alapvető, de szórakoztató projekten keresztül tanulhatják meg, hogyan működik a LED, az áramkörök és a vezetékek. A végeredmény nagyon félelmetes és ragyogó éjszakai fény lesz. Ezt a projektet könnyedén elvégezhetik a 7 éves gyerekek, de
Intelligens ébresztőóra: Raspberry Pi -vel készült intelligens ébresztőóra: 10 lépés (képekkel)
Intelligens ébresztőóra: Raspberry Pi -vel készült intelligens ébresztőóra: Szeretett volna valaha okos órát? Ha igen, akkor ez a megoldás az Ön számára! Készítettem intelligens ébresztőórát, ez egy óra, amellyel megváltoztathatja az ébresztési időt a webhely szerint. Amikor a riasztó megszólal, hangjelzés (csipogó) és 2 lámpa hallatszik
Fényre irányított robotfej. Újrahasznosított és újrahasznosított anyagokból: 11 lépés
Fényre irányított robotfej. Újrahasznosított és újrafelhasznált anyagokból: Ha valaki kíváncsi arra, hogy a robotika üres zsebbel érkezhet -e, akkor talán ez az oktatható válasz adhat választ. Újrahasznosított léptetőmotorok egy régi nyomtatóból, pingpong labdák, gyertyák, használt balsa, drót egy régi fogasból, zománcozott huzal
GOOB - intelligens ébresztőóra: 15 lépés (képekkel)
GOOB - intelligens ébresztőóra: A GOOB a "Get Out Of Bed" rövidítése, amely jól illeszkedik a projektemhez. Olyan eszközt akartam létrehozni, amely segíthet a reggeli ébredésben, mivel nem ez a legegyszerűbb feladat. A fő gondolat az, hogy az ébresztőóra nem állítja le az ébresztőt
Egyszerű szekrény led fény újrahasznosított hálózati adapterrel: 6 lépés
Egyszerű szekrény ledfény újrahasznosított tápegységgel: Mindenkinek vannak tápegységei, amelyeknek nincs többé hasznuk. Régi laptopoktól, hordozható telefonoktól és mindenféle hordozható gépektől. Ne dobd el őket !!!!!!!!!!!!!!!!!!!!!!!!! Keresse meg a 12 és 9 voltos adaptereket. Ezeket hálózati adapterként is használhatjuk