Sisukord:
- Samm: komponendid ja materjalid
- Samm: riistvara kokku panemine
- 3. samm: andmebaasimudel (mySQL)
- Samm: ühendus Raspberry Pi -ga
- Samm: tarkvara Raspberry Pi -l
- Samm: veebiserveri seadistamine Raspberry Pi -le
- Samm 7: Tarkvara: Python
- 8. samm: tarkvara: veebisait
- 9. samm: korpuse ehitamine
- 10. samm: kasutaja Manuel
Video: Nutikas äratuskell: nutikas äratuskell, mis on valmistatud Raspberry Pi -ga: 10 sammu (koos piltidega)
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Kas olete kunagi tahtnud nutikat kella? Kui jah, siis see on teie jaoks lahendus!
Ma tegin nutika äratuskella, see on kell, mille abil saate äratusaega vastavalt veebisaidile muuta. Kui äratus hakkab tööle, kostab heli (sumin) ja süttib 2 tuld (2 LED -i). LED -id süttivad ainult pimedas (valgussensor). LED -id tagavad ruumi heleduse, et saaksite loomulikult püsti tõusta. Äratuse keelamiseks vajutage nuppu. Kui soovite kasutada edasilükkamisfunktsiooni (+5 min), peate hoidma kätt ultraheli anduri ees. Kui tuvastatakse liikumine (ultraheliandur), muutub vedelkristallekraani olek.
LCD olek:
- Veebisaidi IP-aadress
- Kell / kuupäev
- Järgmine äratus
- Temperatuur ja niiskus
See on minu esimene projekt minu erialal: Multimeedia ja kommunikatsioonitehnoloogia (MCT) Howestis (Kortrijk belgia).
Samm: komponendid ja materjalid
Oma projekti jaoks kasutasin mitut osa, mida ma allpool loetlen, lisan ka Exceli faili koos kõigi komponentide vastavate hindadega, samuti veebisaitidelt, kust need tellisin.
Komponendid
- Raspberry Pi 3 mudel B+
- Raspberry Pi toiteallikas
- LCD ekraan
- Sumin
- LDR
- 2 LED -i
- DHT-11
- HC-SR04 Ultraheli kaugusandur
- Nupp
- Trimmer
Materjalid:
- Puit 7 mm
- Puit 2 cm
- Klammerduv kile
Tööriistad:
- Jootmine
- Super liim
- Saag
- Kruvikeerajad
- Puurida
Allolevas PDF -failis näete täielikku hinnakirja.
Samm: riistvara kokku panemine
Olen oma vooluringi üles ehitanud, järgides oma tehtud Fritzingi skeemi, laadisin alla alloleva skeemi. Ahelal on mitu andurit ja ajam, mis töötavad koos. Loetlen, millised erinevad ahelad on olemas, kuidas neid ühendada, leiate skeemist.
- Seal on ultraheli kaugusandur, mis tuvastab liikumise 15 cm kaugusel (isekodeeritud vahemaa) ja muudab LCD olekut, kuid kui alarm on sisse lülitatud, lükkab see häire edasi 5 minutiks.
- Seal on LCD-ekraan, mis kuvab 4 olekut (ip-aadress, kuupäev/kellaaeg, järgmine alarm, temp/hum)
- Dht11, mis mõõdab õhu temperatuuri ja niiskust
- Nupp häire väljalülitamiseks või kui vajutate kauem kui 3 sekundit, lülitub rpi välja
- Helisignaal, mis annab märku, kui määratud äratusaeg vastab praegusele ajale
- LDR -andur ruumi valguse mõõtmiseks
- 2 Led valgustab ruumi, kui on pime -> LDR
3. samm: andmebaasimudel (mySQL)
Näete minu ERD diagrammi ülal, linkin ka dump faili, et saaksite andmebaasi ise importida.
Selle andmebaasi abil saate näidata mitmeid asju, näiteks:
- Temperatuur
- Niiskus
- Valgusväärtus
- Seadistatud/keelatud/äratuse aeg edasi lükatud
- Kui helisignaal töötab
- Kui tuled põlevad
Kui soovite selle andmebaasi uuesti luua, peate looma uue kasutaja, et saaksite oma Raspberry Pi -ga ühenduse luua.
Samm: ühendus Raspberry Pi -ga
Kõigepealt peate alla laadima Putty, nende veebisaidil on saadaval tasuta versioon. Teil on vaja ka Raspbiani, mille saate alla laadida siit.
Kui avate Putty, peate klõpsama nuppu "seanss". Kui olete seda teinud, peate jaotises „Remote Host” täitma Pi IP -aadressi. Seejärel saate sisestada kasutajanime, mille saate valida. seejärel klõpsake "OK".
Tavaliselt käivitab see pärast kõiki neid samme automaatselt ühenduse. Seejärel peate sisestama oma parooli ja olete ühendatud.
Samm: tarkvara Raspberry Pi -l
Minu koodi toimimiseks (mille ma allpool linkin) peate installima mõned paketid ja teegid. Esimene asi, mida vajate, on see, et värskendate oma Pi -d.
Esmalt värskendage oma süsteemi pakettide loendit, sisestades järgmise käsu: sudo apt-get update Järgmisena uuendage kõik installitud paketid uusimatele versioonidele järgmise käsuga: sudo apt-get dist-upgrade Pärast pakettide installimist peate installima mõned teegid:
- Flaskflask_cors
- RPI. GPIO
- kuupäev Kellaaeg
- keermestamine
- aega
- alamprotsess
- mysq
- lSocketIO
Samm: veebiserveri seadistamine Raspberry Pi -le
Minge oma Putty konsooli.
installime Apache veebiserveri. Seda tehes saate veebisaidi avada mis tahes teie võrku ühendatud seadmes. Sisestage järgmine käsk ja vajutage sisestusklahvi: sudo apt-get install apache2
Nüüd minge kausta:/var/www/html/Siin saate paigutada kõik oma veebisaidil olevad failid ja indeks.html leht avatakse iga kord, kui sirvite oma Pi IP -d. olge ettevaatlik ja ärge tippige index.html -sse suurtähte I, vastasel juhul ei avane see indeksilehte automaatselt.
Samm 7: Tarkvara: Python
Tegin mitu pythoni skripti, linkin oma githubhere'i, et saaksite koodi ise vaadata. Aga ma selgitan seda juba natuke.
Kodeerisin mõned klassid ultraheli andurile, tuledele, LDR -ile ja LCD -le. Kasutasin DHT11-anduri jaoks raamatukogusid. (import Adafruit_DHT) Lõpuks kasutan kogu projekti toimimiseks ainult ühte faili, selle nimi on app.py. Ka selles failis kodeerisin mõned marsruudid, et saaksin oma andmebaasist andmeid lugeda ja saata json -objektile, mida seejärel oma javascripti failides kasutasin.
8. samm: tarkvara: veebisait
Kuna tegin võimaluse, et saate veebisaidil äratuse seada. Nii et ma tegin selle tegemiseks veebisaidi. Veebisaidi kaudu saate vaadata ka niiskust, temperatuuri ja ajalugu.
Pi käivitamise ajal hakkab see käivitama minu pythoni skripti. See hoolitseb selle eest, et andmed veebisaidile kuvataks ja võimaldaks häiret seada. Sait on ka tundlik, nii et seda saab avada mobiiltelefonis funktsioone kaotamata või muul viisil.
Minu koodi leiate githubist siit.
9. samm: korpuse ehitamine
Minu jaoks ehitan kella jäljendamiseks kasti.
Panen ka pilte, kus saab näha korpuse ehitamise protsessi. Mõõtmiste jaoks laadisin alla ka faili, kus näete minu skeemi selle kohta, kuidas seda uuesti luua.
10. samm: kasutaja Manuel
Siit leiate projekti toimimise kiirjuhendi. Loodetavasti on teie päev parem, kui teete selle õpetuse lõpus nutika äratuskella!
Tänan teid lugemise eest.