![Bērnu miega treniņu pulkstenis: 6 soļi (ar attēliem) Bērnu miega treniņu pulkstenis: 6 soļi (ar attēliem)](https://i.howwhatproduce.com/images/010/image-27817-j.webp)
Satura rādītājs:
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-23 14:59
![Bērnu miega treniņu pulkstenis Bērnu miega treniņu pulkstenis](https://i.howwhatproduce.com/images/010/image-27817-1-j.webp)
![Bērnu miega treniņu pulkstenis Bērnu miega treniņu pulkstenis](https://i.howwhatproduce.com/images/010/image-27817-2-j.webp)
![Bērnu miega treniņu pulkstenis Bērnu miega treniņu pulkstenis](https://i.howwhatproduce.com/images/010/image-27817-3-j.webp)
![Bērnu miega treniņu pulkstenis Bērnu miega treniņu pulkstenis](https://i.howwhatproduce.com/images/010/image-27817-4-j.webp)
Man vajadzēja pulksteni, lai palīdzētu maniem 4 gadus vecajiem dvīņiem iemācīties gulēt nedaudz ilgāk (man jau ir pieticis ar to, ka sestdienās jāceļas 5:30 no rīta), bet viņi vēl nevar lasīt laiku. Pārlūkojot dažas preces ļoti populārā iepirkšanās vietnē, es nodomāju: "Cik grūti būtu to vienkārši izgatavot ?!"
Lūk, ko es sapratu, ka vēlos šajā projektā. Tas izmantotu dažas RGB gaismas diodes (galvenokārt tāpēc, ka man ir apmēram piecdesmit no cita projekta), lai parādītu trīs dažādas krāsas. Sarkans nozīmētu atgriezties gulēt, ir pāragri pamosties. Dzeltens nozīmētu, ka viņi var piecelties un mierīgi spēlēt savā istabā. Zaļš, protams, nozīmē, ka jūs varat piecelties. Es arī gribēju, lai varētu pielāgot laiku, jo dažās dienās (nedēļas nogalēs/brīvdienās vs darba dienās un tamlīdzīgi) gribētos gulēt ilgāk.
Piegādes
Raspberry Pi Zero W
Divas RGB gaismas diodes
Seši 220 omi rezistori
Faili (.stl, python, html) atrodami šeit
Dažādas mazas skrūves, vadi un mazas detaļas pēc nepieciešamības.
1. darbība: 3D drukāšana
![3D druka 3D druka](https://i.howwhatproduce.com/images/010/image-27817-5-j.webp)
![3D druka 3D druka](https://i.howwhatproduce.com/images/010/image-27817-6-j.webp)
![3D druka 3D druka](https://i.howwhatproduce.com/images/010/image-27817-7-j.webp)
Manai meitai ļoti patīk vienradži, tāpēc šim projektam es remiksēju Riven02's Unicorn Nightlight, kas ir remikss no Apachcreation's Unicorn Trophy, ko var atrast vietnē Thingiverse.com un izmantot saskaņā ar Creative Commons nekomerciālo licenci. Es pārveidoju vienradza pamatni, lai tas atbilstu strāvas vadam aveņu pi zero. Man gadījās uzlikt kādu AMZ3D Red PLA, tāpēc vienradza pamatne un galva būs sarkana. Ragam es izmantoju caurspīdīgu/caurspīdīgu PLA. Izmantotie.stl faili un iestatījumi ir:
Vienradzis.stl
- Slāņa augstums: 0,02
- Sienas biezums:.8
- Sienu līniju skaits: 2
- Piepildījums: 15%
- Piepildījuma modelis: režģis
UnicornBase.stl
- Slāņa augstums: 0,02
- Sienas biezums:.8
- Sienu līniju skaits: 2
- Piepildījums: 15%
- Piepildījuma modelis: režģis
Rags.stl
- Slāņa augstums: 0,02
- Sienas biezums: 0,8
- Sienu līniju skaits: 3
- Uzpilde: 0
2. solis: ķēde
![Ķēde Ķēde](https://i.howwhatproduce.com/images/010/image-27817-8-j.webp)
![Ķēde Ķēde](https://i.howwhatproduce.com/images/010/image-27817-9-j.webp)
![Ķēde Ķēde](https://i.howwhatproduce.com/images/010/image-27817-10-j.webp)
Ķēde ir diezgan vienkārša. Es izvēlējos sešas dažādas GPIO tapas, lai kontrolētu dažādu RGB krāsu ieslēgšanu/izslēgšanu. Šīs tapas un atbilstošās LED krāsas ir:
- Piespraude 11 līdz RGB 1 RED
- Piespraude 13 līdz RGB 1 GREEN
- Piespraust 15 līdz RGB 1 BLUE
- Piespraude 16 līdz RGB 2 RED
- Piespraude 18 līdz RGB 2 GREEN
- Piespraust 36 līdz RGB 2 BLUE
- Piespraudiet 39 pie zemes
Katra tapa ir savienota ar rezistoru caur 220 omu strāvas ierobežošanas rezistoru (protams, izņemot zemi.) Es pielodēju rezistoru rindā un pārklāju to ar termiski saraušanās cauruli.
3. darbība: Raspberry Pi sagatavošana
Es gribēju, lai varētu iestatīt miega trenera pulksteņa laiku, izmantojot tīmekļa saskarni. Tāpēc man bija jāiestata Apache un PHP serveris Raspberry Pi. Pirmā lieta, kas jums vienmēr jādara, instalējot jaunu programmatūru Raspberry Pi, ir pārliecināties, vai tā ir atjaunināta, ierakstot:
sudo apt-get update
Pēc tam mēs patiešām varam ķerties pie lietas. Mēs to darīsim, instalējot Apache2:
sudo apt -get install apache2 -y
tam vajadzētu instalēt Apache tīmekļa serveri. To var pārbaudīt, izmantojot Raspberry pi pārlūkprogrammu un dodoties uz:
localhost/
vai pārejot no cita datora pārlūkprogrammas uz jūsu Raspberry Pi ip adresi. Lai atrastu savu IP adreses veidu:
saimniekdatora nosaukums -es
To darot, tiks atvērta noklusējuma Apache tīmekļa servera lapa. To var mainīt, aizstājot index.html, kas atrodas direktorijā/var/www/html/. To var aizstāt ar manu index.html failu.
Tālāk mēs iestatīsim Apache tīmekļa serveri, lai varētu palaist PHP failus. Sāciet, ierakstot:
sudo apt-get install php libapache2-mod-php -y
tagad jums vajadzētu būt iespējai ievietot failu sleepset.php mapē/var/www/html kopā ar failu index.html.
Lai pārietu uz šo lapu savā tīklā, jums ir jāiestata Raspberry Pi ar statisku IP adresi (vai arī varat vienkārši mēģināt izdomāt jauno IP adresi, kad jūsu tīkls šad un tad to atjauno). Lai tas darbotos, jums ir jārediģē pāris faili. Jums būs jārediģē /etc/dhcpcd.conf fails, veicot tālāk norādītās darbības.
interfeiss wlan0
static ip_address = 192.168.1. statiskie maršrutētāji = 192.168.1.1 statiskais domēna_vārda_serveris = 192.168.1.1
Aizstājiet ar tīkla informāciju. Vienīgais, kas jums tagad jādara, ir pārstartēt.
sudo atsāknēšana
Failu izvietojumam no Google diska saites jābūt šādam:
- index.html un sleepset.php jāievieto direktorijā/var/www/html
- sleepset.txt un sleeptrainer1_1.py jāievieto direktorijā/home/pi/pythoncode (mājiens: jums būs jāizveido šis direktorijs)
Pēc šo failu ievietošanas pareizajā direktorijā rc.local fails ir jāmaina, lai startēšanas laikā palaistu programmu sleeptrainer1_1.py. Lai mainītu rc.local failu, jums būs nepieciešama saknes līmeņa piekļuve, tāpēc ierakstiet:
sudo nano /etc/rc.local
Redaktorā ritiniet uz leju un tieši pirms izejas 0 rindas pievienojiet:
python /home/pi/pythoncode/sleeptrainer1_1.py &
Šeit jāatceras divas lietas:
- Izmantojiet absolūto failu ceļu, lai LINUX nedomātu, ka fails sleeptraner1_1.py atrodas tajā pašā direktorijā kā rc.local.
- Beigās neaizmirstiet zīmi (&). tas ļaus LINUX palaist šo failu fonā un turpināt sāknēšanu.
Tagad saglabājiet failu, ierakstot ctrl-x un pēc tam y, kad tiek prasīts saglabāt, un pēc tam ievadiet.
Pēc tam ierakstiet sudo reboot.
Kaut kur šeit jāpiemin, ka (vismaz) jums vajadzētu nomainīt Raspberry Pi paroli, izmantojot komandu passwd. Ja vēl neesat to izdarījis, tagad būtu labs laiks.
4. solis: kods
Tālāk ir norādīts kods no faila sleeptrainer1_1.py. Es izmantoju datuma un laika objektu, lai salīdzinātu laiku ar failā sleepset.txt lasīto laiku. Teksta failā ir tikai divas rindas - pirmā stundai, otrā - minūtei. sleeptrainer1_1.py guļ vienu minūti starp cilpas atkārtojumiem, lai nesaistītu procesoru. Zaļā gaisma sākotnēji izgaismojās pārāk spilgti, tāpēc es izmantoju impulsa platuma modulāciju, lai to aptumšotu, kad to izmantoju ar sarkanu, lai padarītu dzeltenu.
Python kods:
importēt RPi. GPIO kā GPIO
no datuma importēšanas datuma laika kā dt importēšanas laiks GPIO.setmode (GPIO. BOARD) GPIO.setwarnings (False) red1 = 11 red2 = 16 green1 = 13 green2 = 18 blue1 = 15 blue2 = 36 GPIO.setup (red1, GPIO. OUT) GPIO.setup (red2, GPIO. OUT) GPIO.setup (zaļš1, GPIO. OUT) GPIO.setup (zaļš2, GPIO. OUT) GPIO.setup (zils1, GPIO. OUT) GPIO.setup (zils2, GPIO. OUT) p1 = GPIO. PWM (zaļš1, 100) p2 = GPIO. PWM (zaļš2, 100) def lasītājs (): setfile = open ("/home/pi/pythoncode/sleepset.txt", 'r') a = setfile. readline () b = setfile.readline () a = int (a) b = int (b) atgriezt a, b def ledlight (krāsa): ja (color == "red"): GPIO.output (red1, GPIO). HIGH) GPIO.output (red2, GPIO. HIGH) p1.stop () p2.stop () GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (krāsa == "zila")): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) p1.stop () p2.stop () GPIO.output (blue1, GPIO. HIGH) GPIO.output (blue2, GPIO). HIGH) elif (krāsa == "zaļa"): GPIO.output (red1, GPIO. LOW) GPIO.output (red2, GPIO. LOW) p1.start (100) p2.start (100) GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (krāsa == "dzeltena"): p1.start (60) p2.start (60) GPIO.output (red1, GPIO. HIGH) GPIO.output (red2, GPIO. HIGH) GPIO.output (blue1, GPIO. LOW) GPIO.output (blue2, GPIO. LOW) elif (krāsa == "izslēgts"): GPIO.output (red1, GPIO. LOW) GPIO.output (sarkans2, GPIO. LOW) GPIO.izvade (zils1, GPIO. LOW) GPIO.izvade (zils2, GPIO. LOW) p1.stop () p2.stop (), savukārt True: settime = readset () stunda, minūte = iestatīšanas laiks ja minūte == 0: ja dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda-2) <dt.now () <dt (dt.now ()).gads, dt.now (). mēnesis, dt.now (). diena, stunda-1, minūte+30): ledlight ("sarkans") elif dt (dt.now (). gads, dt.now ().month, dt.now (). day, hour-1, minute+30) <dt.now () <dt (dt.now (). year, dt.now (). month, dt.now ().diena, stunda, minūte): ledlight ("dzeltens") elif dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda, minūte) <dt.now () <dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda+1, minūte): ledlight ("zaļa") else: ledlight ("off") elif dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, ho ur-2) <dt.now () <dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda, minūte-30): ledlight ("sarkans") elif dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda, minūte-30) <dt.now () <dt (dt.now (). gads, dt.now (). mēnesis, dt.now (). diena, stunda, minūte): ledlight ("dzeltens") elif dt (dt.now (). gads, dt.now (). mēnesis, dt.now (), diena, stunda, minūte) "zaļš") cits: LED gaismas ("izslēgts") laiks. miega režīms (60)
Fails index.html ir HTML veidota pamata veidlapa. Tas paņem divu tekstlodziņu saturu un nodod tos failam sleepset.php veidlapu apstrādei. PHP fails vienkārši pārraksta failu sleepset.txt ar atjauninātiem datiem.
5. solis: salieciet to visu kopā
![Visu saliekot kopā Visu saliekot kopā](https://i.howwhatproduce.com/images/010/image-27817-11-j.webp)
![Visu saliekot kopā Visu saliekot kopā](https://i.howwhatproduce.com/images/010/image-27817-12-j.webp)
![Visu saliekot kopā Visu saliekot kopā](https://i.howwhatproduce.com/images/010/image-27817-13-j.webp)
Kad kodēšana ir pabeigta un visas detaļas ir izdrukātas, ir pienācis laiks montāžai. Lai to visu apvienotu, es sekoju šīm darbībām:
- Izurbiet divus mazus caurumus pēc RGB gaismas diodēm raga apakšā un ievietojiet gaismas diodes šajos caurumos.
- Ievietojiet ragu vienradza galvas atverē un velciet to cauri, līdz tas ir cieši. Lai nostiprinātu ragu, izmantojiet līmi no iekšpuses.
- Piestipriniet Raspberry Pi Zero W vienradza galvas iekšpusē. (Varbūt izmantojot karstās līmes pistoli)
- Pievienojiet vienradza galvu vienradza pamatnei.
- Pievienojiet strāvas vadu un piestipriniet visu bloku pie sienas.
- Pievienojiet pulksteni.
Šajā brīdī man ir funkcionējošs bērnu miega trenera pulkstenis.
6. darbība: vienu gadu vēlāk…
![Pēc viena gada … Pēc viena gada …](https://i.howwhatproduce.com/images/010/image-27817-14-j.webp)
Pēc viena gada:
Manas meitenes guļ mazliet ilgāk. Mēs esam pieraduši pamosties, ka mūsu istabā mazi bērni saka: "Tēti, gaisma ir zaļa." un tas ir lieliski. Īsi sakot, mēs pamodamies tikai pulksten 5:30 sestdienā, kad to vairs plānojam.
Lietas, kuras plānoju uzlabot nākotnē:
- Varbūt pievienojiet dažus sensorus vai citus priekšmetus, piemēram, mikrofonu un skaļruņus.
- Varbūt rediģējiet kodu, lai strādātu ar skaļruni, ko izmantot kā modinātāju, jo mani bērni drīz sāks skolas gaitas.
Ieteicams:
Fitnesa treniņu mašīna: 4 soļi
![Fitnesa treniņu mašīna: 4 soļi Fitnesa treniņu mašīna: 4 soļi](https://i.howwhatproduce.com/images/008/image-21898-j.webp)
Fitnesa treniņu mašīna: Es izveidoju šo mašīnu cilvēkiem, kuriem nav laba fiziskā sagatavotība, piemēram, gurkstēšana, sēdēšana, tāllēkšana un skriešana. Tas var palīdzēt viņiem izdarīt labu stāju katru reizi, kad viņi to dara. Tāpēc viņi var zināt, cik reizes viņi to dara. Daudzi cilvēki nemāk nodarboties ar fitnesu
Muguras treniņu stiprinājums: 18 soļi
![Muguras treniņu stiprinājums: 18 soļi Muguras treniņu stiprinājums: 18 soļi](https://i.howwhatproduce.com/images/008/image-22510-j.webp)
Ieguvu muguras treniņu: Vai jums kādreiz liekas, ka, trenējoties, vienkārši nevarat pārtraukt sāpēt muguru? Vai jūs vienmēr stumjat sevi pārāk tālu un ciešat no tā? Ja tā, tad " Saņēmu muguru " Apmācības breketes ir domātas jums! Kā vidusskolas un koledžas sportisti
Beisbola treniņu mašīna: 4 soļi
![Beisbola treniņu mašīna: 4 soļi Beisbola treniņu mašīna: 4 soļi](https://i.howwhatproduce.com/images/008/image-23001-j.webp)
Beisbola treniņu mašīna: Šī ir mašīna, kas apmācīs jūsu beisbola prasmes, ļaujot jums praktizēt trāpīšanu mērķī. Atsauce: https://www.tutorialspoint.com/arduino/arduino_blinking_led.htm
Glābiet manu bērnu: viedais sēdeklis, kas sūta īsziņas, ja aizmirstat bērnu automašīnā: 8 soļi
![Glābiet manu bērnu: viedais sēdeklis, kas sūta īsziņas, ja aizmirstat bērnu automašīnā: 8 soļi Glābiet manu bērnu: viedais sēdeklis, kas sūta īsziņas, ja aizmirstat bērnu automašīnā: 8 soļi](https://i.howwhatproduce.com/images/008/image-23938-j.webp)
Glābiet manu bērnu: viedais sēdeklis, kas sūta īsziņas, ja aizmirstat bērnu automašīnā: tas ir uzstādīts automašīnās, un, pateicoties detektoram, kas novietots uz bērnu sēdeklīša, tas mūs brīdina - izmantojot SMS vai tālruņa zvanu - prom, neatvedot bērnu līdzi
Šķidro kristālu brilles ambliopijai (mainīgas oklūzijas treniņu brilles) [ATtiny13]: 10 soļi (ar attēliem)
![Šķidro kristālu brilles ambliopijai (mainīgas oklūzijas treniņu brilles) [ATtiny13]: 10 soļi (ar attēliem) Šķidro kristālu brilles ambliopijai (mainīgas oklūzijas treniņu brilles) [ATtiny13]: 10 soļi (ar attēliem)](https://i.howwhatproduce.com/images/002/image-4775-39-j.webp)
Šķidro kristālu brilles ambliopijai (mainīgas oklūzijas treniņbrilles) [ATtiny13]: Ambliopija (slinka acs), redzes traucējumi, kas skar aptuveni 3% iedzīvotāju, parasti ārstējot ar vienkāršiem acu plāksteriem vai atropīna pilieniem. Diemžēl šīs ārstēšanas metodes ilgstoši, nepārtraukti nepārtrauc spēcīgāku aci, nē