
Orodha ya maudhui:
2025 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2025-01-23 15:11




Nilihitaji saa kusaidia mapacha wangu wa miaka 4 kujifunza kulala kwa muda mrefu kidogo (nimekuwa na kutosha ya kuamka saa 5:30 asubuhi Jumamosi), lakini hawawezi kusoma wakati bado. Baada ya kuvinjari vitu kadhaa kwenye wavuti maarufu sana ya ununuzi, nilifikiri, "Je! Itakuwa ngumu sana kutengeneza moja tu ?!"
Kwa hivyo hapa ndio nilifikiri nilitaka katika mradi huu. Ingetumia RGB ya LED (haswa kwa sababu nina karibu hamsini kati yao kutoka mradi mwingine) kuonyesha rangi tatu tofauti. Nyekundu inamaanisha kurudi kulala, ni mapema sana kuamka. Njano inamaanisha kuwa wanaweza kuamka na kucheza kimya kimya kwenye chumba chao. Kijani, kwa kweli inamaanisha unaweza kuamka. Nilitaka pia kuweza kurekebisha wakati, kwa sababu ningependa kulala kwa muda mrefu kwa siku kadhaa (Wikiendi / Likizo vs Siku za Wiki na zingine).
Vifaa
Raspberry Pi Zero W
RGB mbili za LED
Vipinga sita vya 220 Ohm
Faili (.stl, chatu, html) zimepatikana hapa
Screws anuwai, waya, na sehemu ndogo kama inahitajika.
Hatua ya 1: Uchapishaji wa 3D



Binti yangu anapenda nyati sana, kwa hivyo kwa mradi huu nilichanganya Riven02's Unicorn Nightlight, ambayo ni remix ya Nyara ya Nyati ya Apachcreation, ambayo inaweza kupatikana kwenye Thingiverse.com na kutumika chini ya leseni ya Creative Commons isiyo ya Biashara. Nilibadilisha msingi wa nyati kutoshea kamba ya umeme kwa sifuri ya rasipberry pi. Nilitokea kuwa na AMZ3D Red PLA iliyolala karibu, kwa hivyo msingi wa nyati na kichwa vitakuwa nyekundu. Nilitumia PLA ya wazi / ya translucent kwa pembe. Faili za.stl na mipangilio niliyotumia ni:
Nyati.stl
- Urefu wa Tabaka: 0.02
- Unene wa Ukuta:.8
- Hesabu ya Mstari wa Ukuta: 2
- Kujaza: 15%
- Mfano wa Kujaza: Gridi
UnicornBase.stl
- Urefu wa Tabaka: 0.02
- Unene wa Ukuta:.8
- Hesabu ya Mstari wa Ukuta: 2
- Kujaza: 15%
- Mfano wa Kujaza: Gridi
Pembe.stl
- Urefu wa Tabaka: 0.02
- Unene wa Ukuta: 0.8
- Hesabu ya Mstari wa Ukuta: 3
- Kujaza: 0
Hatua ya 2: Mzunguko



Mzunguko ni rahisi sana. Nilichagua pini sita tofauti za GPIO kudhibiti kuwasha / kuzima kwa rangi tofauti za RGB. Pini hizo na Rangi zinazofanana za LED ni:
- Bandika 11 hadi RGB 1 RED
- Bandika 13 hadi RGB 1 KIJANI
- Bandika 15 hadi RGB 1 BLUE
- Bandika 16 hadi RGB 2 RED
- Bandika 18 hadi RGB 2 KIJANI
- Bandika 36 hadi RGB 2 BLUE
- Piga 39 hadi chini
Kila pini imeunganishwa hadi kwa kontena kupitia kontena ya sasa ya komo ya 220 ohm (isipokuwa uwanja wa ardhi. Kwa kweli, niliuza kontena kwa laini na kuifunika kwa neli ya kupungua kwa joto.
Hatua ya 3: Maandalizi ya Pi Raspberry
Nilitaka kuwa na uwezo wa kuweka nyakati za saa ya mkufunzi wa usingizi kwa kutumia kiolesura cha wavuti. Kwa hivyo nilihitaji kuanzisha seva ya Apache na PHP kwenye Raspberry Pi. Jambo la kwanza ambalo unapaswa kufanya kila wakati unapoweka programu mpya kwenye Raspberry Pi ni kuhakikisha kuwa imesasishwa kwa kuandika:
Sudo apt-pata sasisho
Baada ya hapo, tunaweza kupata biashara. Tutafanya hivyo kwa kusanikisha Apache2:
Sudo apt-get kufunga apache2 -y
hii inapaswa kufunga seva ya wavuti ya Apache. Unaweza kujaribu hii kwa kutumia kivinjari kwenye Raspberry pi na kuelekea kwa:
localhost /
au kwa kuvinjari kutoka kivinjari kingine cha kompyuta kwenda kwa anwani yako ya Raspberry Pi. Kupata aina yako ya anwani ya ip:
jina la mwenyeji -I
Kufanya hivi kutasababisha ukurasa wa msingi wa Apache Web Server. Hii inaweza kubadilishwa kwa kubadilisha index.html iliyoko kwenye saraka ya / var / www / html /. Inaweza kubadilishwa na faili yangu mwenyewe ya index.html.
Ifuatayo tutaanzisha seva ya wavuti ya Apache ili kuweza kuendesha faili za PHP. Anza kwa kuandika:
Sudo apt-get kufunga php libapache2-mod-php -y
sasa unapaswa kuweza kuweka faili ya sleepset.php kwenye / var / www / html na faili ya index.html.
Ili kuvinjari kwa ukurasa huu katika mtandao wako mwenyewe, utahitaji kusanidi Pi yako ya Raspberry na anwani ya static ip (au unaweza kujaribu tu kujua anwani mpya ya IP wakati mtandao wako utaifanya upya mara kwa mara). Utahitaji kuhariri faili kadhaa ili hii ifanye kazi. Utahitaji kuhariri faili ya /etc/dhcpcd.conf na yafuatayo:
kiolesura wlan0
tuli ip_address = 192.168.1. ruta tuli = 192.168.1.1 tuli uwanja_name_servers = 192.168.1.1
Badilisha na habari ya mtandao wako. Kitu pekee ambacho utahitaji kufanya sasa ni kuwasha tena.
Sudo reboot
Uwekaji wa faili kutoka kwa kiunganisho cha gari la Google inapaswa kuwa kama ifuatavyo:
- index.html na sleepset.php inapaswa kuwekwa kwenye saraka ya / var / www / html
- sleepset.txt na sleeptrainer1_1.py inapaswa kuwekwa kwenye saraka ya / home / pi / pythoncode (dokezo: itabidi uunda saraka hii)
Baada ya kuweka faili hizi kwenye saraka sahihi, faili ya rc.local inahitaji kurekebishwa ili kuendesha mpango wa sleeptrainer1_1.py wakati wa kuanza. Utahitaji ufikiaji wa kiwango cha mizizi kurekebisha faili ya rc.local, kwa hivyo andika:
Sudo nano /etc/rc.local
Katika mhariri, nenda chini, na kabla tu ya mstari wa kutoka 0, ongeza:
chatu / nyumba/pi/pythoncode/sleeptrainer1_1.py &
Kuna mambo mawili ya kukumbuka hapa:
- Tumia njia ya faili kabisa ili LINUX isifikirie kuwa faili ya sleeptraner1_1.py iko kwenye saraka sawa na rc.local.
- Usisahau ampersand (&) mwishoni. hii itaruhusu LINUX kuendesha faili hii nyuma na kuendelea kuwasha.
Sasa, weka faili kwa kuandika ctrl-x na kisha y unapohitajika kuhifadhi na kisha Ingiza.
Kisha andika Sudo reboot.
Inapaswa kutajwa mahali hapa kwamba (kwa kiwango cha chini) unapaswa kubadilisha nywila ya Raspberry Pi ukitumia amri ya kupitisha. Ikiwa haujafanya haya bado, sasa itakuwa wakati mzuri.
Hatua ya 4: Kanuni
Ifuatayo ni nambari kutoka kwa faili ya sleeptrainer1_1.py. Nilitumia kitu cha wakati mmoja kulinganisha nyakati na zile zilizosomwa kwenye faili ya sleepset.txt. Faili ya maandishi ni laini mbili tu, ya kwanza kwa saa, ya pili kwa dakika. sleeptrainer1_1.py hulala kwa dakika moja kati ya utaftaji wa kitanzi ili usifunge processor. Taa ya kijani asili ilikuwa ikitoka kwa njia angavu sana, kwa hivyo nilitumia mwendo wa upana wa kunde kuipunguza wakati unatumiwa na nyekundu kufanya manjano.
Nambari ya chatu:
kuagiza RPi. GPIO kama GPIO
kutoka kwa wakati wa kuingiza wakati kama wakati wa kuingiza dt GPIO.setmode (GPIO. BOARD) Kuanzisha GPIO (red2, GPIO. OUT) GPIO.setup (green1, GPIO. OUT) GPIO.setup (green2, GPIO. OUT) GPIO.setup (blue1, GPIO. OUT) p1 = GPIO. PWM (kijani1, 100) p2 = GPIO. PWM (kijani2, 100) defset set (): setfile = kufungua ("/ home / pi / pythoncode / sleepset.txt", 'r') a = setfile. mstari wa kusoma () b = setfile.readline () a = int (a) b = int (b) kurudi a, b def ledlight (rangi): ikiwa (color == "red"): GPIO.output (red1, GPIO. JUU) matokeo ya GPIO (red2, GPIO. HIGH) p1.stop () p2.stop () GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (color == "blue" Pato la GPIO (red1, GPIO. LOW) JUU) elif (rangi == "kijani"): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) p1.start (100) p2.start (100), GPIO. LOW) GPIO.pato (bluu2, GPIO. LOW) elif (rangi == "manjano"): p1. Anza (60) p2. Anza (60) GPIO.pato (red1, GPIO. HIGH) (nyekundu2, GPIO. HIGH) Pato la GPIO (bluu1, GPIO. LOW) GPIO.pato (bluu2, GPIO. LOW) elif (rangi == "imezimwa"): (red2, GPIO. LOW) Pato la GPIO (bluu1, GPIO. LOW) GPIO.pato (bluu2, GPIO. LOW) p1.stop () p2.stop () wakati kweli: saa ya kuweka = saa ya kusoma () saa, dakika = muda wa kuweka ikiwa dakika == 0: ikiwa dt (dt.now (). mwaka, dt.now (). mwezi, dt.now (). siku, saa-2) <dt.now () <dt (dt.now (mwaka, dt.now (). mwezi, dt.now (). siku, saa-1, dakika + 30): mwangaza wa taa ("nyekundu") elif dt (dt.now (). mwaka, dt.now (). mwezi, dt.now (). siku, saa-1, dakika + 30) <dt.now () <dt (dt.now (). mwaka, dt.now (). mwezi, dt.now (). siku, saa, dakika): mwangaza wa taa ("manjano") elif dt (dt.now (). mwaka, dt.now (). mwezi, dt.now (). siku, saa, dakika) <dt.now (<dt (dt.now (). mwaka, dt.now (). mwezi, dt.now (). siku, saa + 1, dakika): mwangaza wa taa ("kijani") mwingine: mwangaza wa taa ("off") elif dt (dt. sasa (). mwaka, dt.now (). mwezi, dt.now (). siku, ho ur-2) <dt.now () <dt (dt.now (). mwaka, dt.now (). mwezi, dt.now () siku, saa, dakika-30): mwangaza wa taa ("nyekundu") elif dt (dt.now (). mwaka, dt.now (). mwezi, dt.now () siku, saa, dakika-30) <dt.now () <dt (dt.now (). year, dt.now (). mwezi, dt.now (). siku, saa, dakika): mwangaza wa taa ("manjano") elif dt (dt.now (). mwaka, dt.now (). mwezi, dt.now () siku, saa, dakika) "kijani") kingine: taa ya mwangaza ("mbali") wakati. kulala (60)
Faili index.html ni fomu ya kimsingi iliyoundwa katika HTML. Inachukua yaliyomo kwenye sanduku mbili za maandishi na kuipitisha kwa faili ya sleepset.php kwa utunzaji wa fomu. Faili ya PHP inaandika tu faili ya sleepset.txt na data iliyosasishwa.
Hatua ya 5: Kuiweka Pamoja



Kukamilisha usimbuaji na sehemu zote kuchapishwa, ni wakati wa kukusanyika. Nilifuata hatua hizi kwa kuziweka pamoja:
- Piga mashimo mawili madogo yenye ukubwa wa RGB ya LED chini ya pembe na uweke LEDS kwenye mashimo haya.
- Weka pembe ndani ya shimo kwenye kichwa cha nyati na uvute mpaka iwe ngumu. Tumia gundi kutoka ndani ili kupata pembe.
- Ambatisha Raspberry Pi Zero W ndani ya kichwa cha nyati. (Kutumia Bunduki ya Moto Gundi Labda)
- Ambatisha kichwa cha nyati kwenye msingi wa nyati.
- Ambatisha kamba ya umeme, na ambatanisha mkutano mzima ukutani.
- Chomeka saa.
Wakati huu nina Saa ya Mkufunzi wa Watoto wa Kulala inayofanya kazi.
Hatua ya 6: Mwaka mmoja Baadaye…

Mwaka mmoja baadae:
Wasichana wangu wamelala kwa muda mrefu kidogo. Tumezoea kuamka kwa watoto wadogo kwenye chumba chetu tukisema, "Baba, taa ni kijani." na hiyo ni nzuri. Hadithi ndefu, tunaamka tu saa 5:30 asubuhi Jumamosi wakati tunaipanga tena.
Vitu ninavyopanga kuboresha siku za usoni:
- Labda kuongeza sensorer au vitu vingine kama maikrofoni na spika.
- Labda hariri nambari ili ufanye kazi na spika ili kutumia kama saa ya kengele kwani watoto wangu wataanza shule hivi karibuni.
Ilipendekeza:
Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Hatua 14 (na Picha)

Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Halo wote! Huu ni maoni yangu kwa Mashindano ya Mwandishi wa Mara ya Kwanza ya 2020! Ikiwa unapenda mradi huu, ningethamini sana kura yako :) Asante! Hii inayoweza kufundishwa itakuongoza kupitia mchakato wa kujenga saa iliyotengenezwa na saa! Nimeita kwa ujanja
Kutengeneza Saa na M5stick C Kutumia Arduino IDE - RTC Saa Saa Saa Na M5stack M5stick-C: Hatua 4

Kutengeneza Saa na M5stick C Kutumia Arduino IDE | RTC Saa Saa Saa Na M5stack M5stick-C: Halo jamani katika mafundisho haya tutajifunza jinsi ya kutengeneza saa na bodi ya maendeleo ya m5stick-C ya m5stack kutumia Arduino IDE.So m5stick itaonyesha tarehe, saa & wiki ya mwezi kwenye maonyesho
Muziki wa Kulala Muziki wa Kulala: Hatua 5

Muziki wa Kulala Mask: Huu ni mradi wacha ulale vizuri usiku, tegemea toleo la polepole wimbo wa Krismasi kwenye kinyago cha macho
Kuzungumza kwa Kuonyesha Baymax kwa Ofisi ya Daktari wa watoto: Hatua 10 (na Picha)

Kuzungumza kwa Uonyesho wa Baymax kwa Ofisi ya Daktari wa Watoto: “Halo. Mimi ni Baymax, rafiki yako wa kibinafsi wa afya.” - Katika ofisi ya daktari wa watoto wa eneo langu, wamechukua mkakati wa kupendeza katika jaribio la kufanya mazingira ya matibabu yasifadhaike na kufurahisha zaidi watoto. Wamejaza e
Mwongozo wa Kulala Arduino Yako Kulala: Hatua 5

Mwongozo wa Kulala Arduino Yako Kulala: Wakati mwingine tuko katika hali ambayo inahitaji sisi kuweka Arduino mahali ambapo kuziba kwenye gridi ya umeme sio chaguo. Hii hufanyika mara nyingi tunapojaribu kuweka habari kwenye wavuti ya mbali, au tunahitaji tu Arduino yako iweze kufanya kazi kwenye