Innholdsfortegnelse:
- Trinn 1: Komponenter og materialer
- Trinn 2: Sette maskinvaren sammen
- Trinn 3: Databasemodell (mySQL)
- Trinn 4: Tilkobling med Raspberry Pi
- Trinn 5: Programvare på Raspberry Pi
- Trinn 6: Sette opp en webserver på Raspberry Pi
- Trinn 7: Programvare: Python
- Trinn 8: Programvare: Nettsted
- Trinn 9: Bygg saken
- Trinn 10: Brukermanual
Video: Smart vekkerklokke: en smart vekkerklokke laget med bringebær Pi: 10 trinn (med bilder)
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Har du noen gang ønsket deg en smart klokke? I så fall er dette løsningen for deg!
Jeg lagde Smart vekkerklokke, dette er en klokke som du kan endre alarmtiden i henhold til nettstedet. Når alarmen går, kommer det en lyd (summer) og 2 lys lyser (2 lysdioder). Lysdiodene lyser bare når det er mørkt (lyssensor). Lysdiodene sørger for at rommet lyser opp slik at du kan stå naturlig opp. Trykk på knappen for å deaktivere alarmen. Når du vil bruke slumrefunksjonen (+5min), må du holde hånden foran ultralydssensoren. Hvis det oppdages bevegelse (ultralydsensor), endres statusen til LCD -skjermen.
Status for LCD:
- IP-adresse til nettstedet
- Klokke / dato
- Neste alarmtid
- Temperatur og fuktighet
Dette er mitt første prosjekt innen mitt fagområde: Multimedia and Communication Technology (MCT) at Howest (Kortrijk belgium).
Trinn 1: Komponenter og materialer
For prosjektet mitt brukte jeg flere deler som jeg vil vise nedenfor, jeg vil også legge til excel -filen med alle de tilsvarende prisene på komponentene som også nettstedene jeg bestilte dem fra.
Komponenter
- Raspberry Pi 3 modell B+
- Raspberry Pi strømforsyning
- LCD-skjerm
- Summer
- LDR
- 2 LED -er
- DHT-11
- HC-SR04 Ultralydavstandssensor
- Knapp
- Trimmer
Materialer:
- Tre 7mm
- Tre 2 cm
- Plastfolie
Verktøy:
- Lodding
- superlim
- Sag
- Skrutrekkere
- Bore
I PDF -filen nedenfor kan du se hele prislisten.
Trinn 2: Sette maskinvaren sammen
Jeg har bygd kretsen min ved å følge Fritzing -opplegget jeg laget, jeg lastet opp opplegget nedenfor. Kretsen har flere sensorer og en aktuator som fungerer sammen som en. Jeg vil liste hvilke forskjellige kretser det er, hvordan du må koble til disse du kan finne i opplegget.
- Det er en ultralydavstandssensor som oppdager bevegelse i en avstand på 15 cm (egenkodet avstand), og den endrer statusen til LCD -skjermen, men hvis alarmen er på, slumrer den alarmen i 5 minutter.
- Det er en LCD-skjerm som viser 4 statuser (ip-adresse, dato/klokkeslett, neste alarm, temp/brum)
- En dht11 som måler luftens temperatur og fuktighet
- En knapp for å deaktivere alarmen, eller hvis u trykker lenger enn 3 sekunder, vil rpi slå seg av
- En summer for å lage lyd hvis innstilt alarmtid samsvarer med gjeldende tid
- En LDR -sensor for å måle lyset i rommet
- 2 LED -er for å lyse opp rommet hvis det er mørkt -> LDR
Trinn 3: Databasemodell (mySQL)
Du kan se ERD -diagrammet mitt ovenfor. Jeg vil også koble en dumpfil slik at du kan importere databasen for deg selv.
Med denne databasen vil du kunne vise flere ting som:
- Temperaturen
- Luftfuktighet
- Lys verdi
- Innstilt/deaktivert/utsatt alarmtid
- Hvis summer virker
- Hvis lysene er på
Hvis du vil gjenskape denne databasen, må du opprette en ny bruker, slik at du kan koble deg til din Raspberry Pi.
Trinn 4: Tilkobling med Raspberry Pi
Først av alt må du laste ned Putty, det er en gratis versjon tilgjengelig på deres nettsted. Du trenger også Raspbian som du kan laste ned her.
Når du åpner Putty må du klikke på 'økt'. Når du har gjort det, må du fylle ut IP -adressen til Pi under 'Remote Host'. Deretter kan du skrive inn et brukernavn som du kan velge. klikk deretter på 'OK'.
Normalt vil alle tilkoblinger automatisk starte etter alle disse trinnene. Deretter må du skrive inn passordet ditt, og du er tilkoblet.
Trinn 5: Programvare på Raspberry Pi
For at koden min skal fungere (som jeg vil koble til nedenfor) må du installere noen pakker og biblioteker. Det første du trenger er å oppdatere din Pi.
Oppdater først systemets pakkeliste ved å skrive inn følgende kommando: sudo apt-get update Deretter oppgraderer du alle de installerte pakkene til de nyeste versjonene med følgende kommando: sudo apt-get dist-upgrade Etter at du har installert pakkene, trenger å installere noen biblioteker:
- Flaskflask_cors
- RPI. GPIO
- dato tid
- gjenging
- tid
- delprosess
- mysq
- lSocketIO
Trinn 6: Sette opp en webserver på Raspberry Pi
Gå til Putty -konsollen.
Vi skal installere Apache webserver. Ved å gjøre dette vil du kunne åpne nettstedet på alle enheter som er koblet til nettverket ditt. Skriv inn følgende kommando og trykk enter: sudo apt-get install apache2
Gå nå til mappen:/var/www/html/Her kan du plassere alle filene fra nettstedet ditt, og index.html -siden åpnes når du blar til IP -en til Pi -en din. vær forsiktig så du ikke skriver et stort I i index.html, ellers åpnes ikke indekssiden automatisk.
Trinn 7: Programvare: Python
Jeg lagde flere python -skript, jeg vil koble til githubhere slik at du kan se koden selv. Men jeg skal forklare det litt allerede.
Jeg kodet noen klasser for ultralydssensoren, lys, LDR og LCD. Jeg brukte biblioteker for DHT11-sensoren. (import Adafruit_DHT) Etter hvert bruker jeg bare en fil for å få hele prosjektet til å fungere, dette heter app.py. Også i denne filen kodet jeg noen ruter slik at jeg kunne lese data fra databasen min og sendt inn til et json -objekt som jeg deretter brukte i mine javascript -filer.
Trinn 8: Programvare: Nettsted
Fordi jeg laget en mulighet som du kan sette en alarm på nettstedet. Så jeg laget et nettsted for å la meg gjøre dette. Gjennom nettstedet kan du også se fuktighet, temperatur og historie.
Mens Pi starter opp, begynner den å kjøre python -skriptet mitt. Dette vil ta vare på å få dataene til å vises på nettstedet og gjøre det mulig å sette en alarm. Nettstedet er også responsivt, så det kan åpnes på mobil uten å miste funksjoner eller annet.
Koden min finner du på github her.
Trinn 9: Bygg saken
For min sak bygger jeg en boks for å etterligne en klokke.
Jeg la også inn bilder der du kan se prosessen med å bygge saken. For målingene vil jeg også laste opp en fil nedenfor der du kan se skjematisk oversikt over hvordan du kan gjenskape den.
Trinn 10: Brukermanual
Her kan du finne en rask manual for hvordan prosjektet fungerer. Forhåpentligvis blir dagen din bedre hvis du lagde denne smarte vekkerklokken på slutten av denne opplæringen!
Takk for at du leser.