Indholdsfortegnelse:

Smart vækkeur: 13 trin
Smart vækkeur: 13 trin

Video: Smart vækkeur: 13 trin

Video: Smart vækkeur: 13 trin
Video: Lenovo Thinkplus TS13 Bluetooth Speaker with Alarm Clock 2024, Juli
Anonim
Smart vækkeur
Smart vækkeur

Hej, jeg hedder Alexandra Christiaens og studerer medie- og kommunikationsteknologi på Howest i Kortrijk, Belgien.

Som en skoleopgave skulle vi lave en IoT -enhed. Vi blev opmuntret til at gøre noget, der ville gøre en forskel i enten vores eget liv eller i livet for mennesker, vi kender. Jeg fandt det temmelig svært at finde et projekt, og da jeg forsøgte at søge efter et passende projekt, tænkte jeg ofte: "Jeg er for træt til dette." Så til sidst indså jeg, at dette kunne være mit projekt: Jeg ville lave et smart vækkeur, der både ville hjælpe mig med at stå op om morgenen og hjælpe mig med at komme i seng i tide om aftenen. Da kravene til denne opgave dikterede, at vi skulle bruge en Raspberry Pi til at køre alt på, besluttede jeg at kalde min enhed "Sleepi" som et ordspil.

Hvis du gerne vil lave denne enhed selv og få en anstændig soverutine som mig, så tjek denne praktiske guide, jeg skrev nedenfor. Hvis du vil vide mere om mig og andre projekter, jeg har lavet eller vil lave, så tjek min portefølje.

Trin 1: Trin1: Indsamling af komponenterne

Trin 1: Indsamling af komponenterne
Trin 1: Indsamling af komponenterne
Trin 1: Indsamling af komponenterne
Trin 1: Indsamling af komponenterne
Trin 1: Indsamling af komponenterne
Trin 1: Indsamling af komponenterne

Så først og fremmest, lad os sikre os, at vi har alt, hvad vi har brug for, før vi begynder at bygge. Jeg lavede en liste over de vigtigste komponenter. Nedenunder kan du finde en pdf med mere detaljeret information om komponenterne.

- 1 x Raspberry Pi 3 model B

- 1 x (tomt) microSD -kort og adapter (jeg har et 16 GB kort, men 8 GB er nok)

- 1 x 5V strømforsyning til Raspberry Pi

- 1 x ethernet -kabel

- 2 x 9V batterier

- 2 x 9V batteriklemmer

- 1 x GPIO 40 -pin udvidelseskort og regnbuekabel

- 2 x BB830 Loddefri plug-in brød

- 1 x Arduino Uno

- 1 x 0,56 tommer 4*7 segment display

- 1x DS18B20 temperatursensor

- 1 x TSL2561 lysstyrkesensor

- 1 x 1602A LCD-skærm

- 1 x niveauomformer

- 1 x SN74HC595N skifteregister

- 1 x roterende encoder

- 1 x potentiometer

- 1 x Power RGB LED

- 1 x højttaler

- 4 x 337B transistorer

- 1 x diode

- 1 x knap

- 3 x xl4005 31 LED -driver

- 7 x modstande (2 x 10k Ohm, 4 x 1k Ohm, 1 x 470 Ohm)

- Forskellige jumper wire kabler (han til han og han til hun)

Valgfri:

- 1 x multiplex træpanel (jeg brugte et med følgende målinger, som var mere end nok: 860 mm x 860 mm x 5 mm)

- Forskellige værktøjer til træbearbejdning

- Akrylmaling i en farve du kan lide

Trin 2: Trin 2: Skemaer

Trin 2: Skemaer
Trin 2: Skemaer

Efter at have samlet alle komponenterne, kunne jeg begynde at forbinde alt. Først lavede jeg en Fritzing -skema for at sikre, at jeg ikke ville stege nogen komponenter ved at forbinde dem forkert. Efter nogle tilbagemeldinger fra mine lærere lavede jeg nogle rettelser, som resulterede i følgende skematiske diagram og ledningsdiagram:

De fleste af GPIO -benene er udskiftelige, så du kan skifte et par af dem, hvis du vil. Glem ikke at ændre pinkoderne i koden i overensstemmelse hermed.

Nogle elementer skal dog tilsluttes visse stifter. Sørg for, at lysstyrkesensoren er tilsluttet henholdsvis GPIO 23 (SDA) og GPIO 24 (SCL). Jeg forklarer, hvorfor dette er vigtigt i trin 5.

Trin 3: Trin 3: Opsætning af Raspberry Pi

Nu er det tid til at konfigurere vores Pi:

1. Sæt dit microSD -kort inde i adapteren, og tilslut det til din pc.

Hvis dit microSD -kort ikke er tomt, skal du først formatere det via din foretrukne metode.

2. Installer Raspbian OS -softwaren fra Raspberry pi -webstedet.

Download ZIP -filen, og udpak den til en ønsket placering.

3. Download Win32 -diskhåndteringen.

Klik på mappeikonet for at vælge billedet Vælg din microSD ved "Enhed" Klik på "Skriv"

Når billedet er skrevet på dit MicroSD -kort, kan du åbne det i Windows Stifinder.

Åbn filen "cmdline.txt" I slutningen af filen skal du tilføje følgende tekstlinje: ip = 169.254.10.1 Sørg for, at alt er på den samme linje. Gem filen.

Skub nu MicroSD -kortet ud af din computer. Sørg for, at strømmen til din Pi er slukket, og isæt kortet i din Raspberry Pi.

Tilslut et ethernet -kabel til din Pi og din computer.

Tilfør strøm til din Pi med en 5, 2V strømadapter.

Trin 4: Trin 4: Tilslutning af Raspberry Pi

Trin 4: Tilslutning af Raspberry Pi
Trin 4: Tilslutning af Raspberry Pi

At forbinde

Pi med vores computer, bruger vi Putty.

1. Installer Putty, og åbn den.

2. Udfyld IP -adressen og porten som vist på billedet, og klik på 'åben'.

3. Log ind med følgende standardindstillinger:

en. Brugernavn: pi

b. Adgangskode: hindbær

4. Sådan konfigureres WiFi:

en. Sudo nano /etc/wpa_supllicant/wpa_supllicant.conf

b. I bunden af filen skal du tilføje disse linjer:

jeg. Netværk = {

ii. ssid =”Udfyld navnet på dit trådløse netværk”

iii. psk =”Udfyld adgangskoden til dit trådløse netværk”

iv. }

c. Luk filen, og gem den

5. Indtast følgende kommando for at finde ud af din Pi's IP -adresse: ifconfig wlan0

6. Du kan nu bruge denne IP -adresse i Putty til at oprette en trådløs forbindelse (se ovenfor).

Trin 5: Trin 5: Skift indstillinger med Raspi-config

Nu skal vi sikre, at Pi kan kommunikere med alle vores komponenter.

Vi ændrer nogle indstillinger i raspi-config

Åbn raspi-config med kommandoen:

sudo raspi-config

2. Vælg 4 lokaliseringsindstillinger.

3. Vælg I2 Skift tidszone.

4. Skift tidszone til din lokale tidszone, og afslut for at gå tilbage til raspi-config.

5. Vælg 5 grænsefladeindstillinger.

6. Vælg P5 I2C.

7. Aktiver I2C -kommunikation.

8. Vælg 5 grænsefladeindstillinger

9. Vælg P6 Serial

10. Deaktiver login -shell.

11. Aktiver seriel kommunikation

Trin 6: Trin 6: Skift indstillinger i /boot/config.txt

Nu skal vi omkonfigurere nogle ting i filen /boot/config.txt

1. Få adgang til filen:

sudo nano /boot/config.txt

2. I bunden skal du se:

enable_uart = 1

Dette er fordi vi aktiverede den serielle port tidligere.

3. Tilføj følgende to linjer:

dtoverlay = pi3-miniuart-bt

dtoverlay = i2c-gpio, bus = 3

Raspberry Pi 3 har 2 serielle porte: en hardware seriel port og en software seriel port. Med den første kommando tildeler vi softwarens serielle port til Bluetooth -funktionen og tildeler hardware seriel port til Rx- og Tx -benene, som vi vil bruge til at kommunikere med Arduino.

Den anden linje aktiverer en software I²C -bus på Pi. Dette skyldes, at hardware I²C -bussen nogle gange giver fejl, når sensoren, der er tilsluttet denne I²C -bus, bruger urstrækning. Software I²C -bussen vil automatisk være aktiv på GPIO 23 (SDA) og GPIO 4 (SCL), hvorfor det var så vigtigt at tilslutte lysstyrkesensoren korrekt, der bruger I²C til at sende data.

Trin 7: Trin 7: Føj brugeren til de rigtige grupper

Tilføj endelig brugeren til nogle grupper:

1. Kontroller, hvilke grupper din nuværende bruger tilhører:

grupperer dit_brugernavn

2. For at alle funktioner skal fungere, skal brugeren tilhøre følgende grupper:

adm dialout sudo input netdev gpio i2c spi ·

Tilføj om nødvendigt brugeren til de relevante grupper:

sudo adduser dit_brugernavn gruppenavn

Trin 8: Trin 8: Database

Trin 8: Database
Trin 8: Database
Trin 8: Database
Trin 8: Database
Trin 8: Database
Trin 8: Database

For at kunne gemme de forskellige alarmtider, der er angivet af brugeren og sensorernes forskellige værdier, måtte jeg lave en database. Du kan se databaseskematikken ovenfor.

For at tilføje databasen til Raspberry Pi skal du gøre følgende:

1. Opret forbindelse via Putty

2. Opdater MySQL

sudo apt-get opdatering

sudo apt-get install mysql-server --fix-missing -y

sudo genstart

3. Sikre MariaDB

sudo mysql_secore_installation

4. Log ind på MariaDB

sudo mysql -u root

5. Databasen har i øjeblikket ingen brugere. Vi bruger denne kode til at oprette en bruger, du skal bare udfylde brugeren og adgangskoden:

TILDEL ALLE PRIVILEGER TIL *. * TIL ‘fill_in_your_chosen_username’@’%’

IDENTIFICERET VED 'fill_in_your_chosen_password' MED GRANT MULIGHED;

FLUSH -PRIVILEGER; AFSLUT;

6. Download databasen fra Github.

7. Installer arbejdsbord.

8. Lav en forbindelse i arbejdsbordet med din pi og eksekver filen.

Trin 9: Trin 9: Python -kode

1. Download og gem Pythonfiles fra Github.

2. Download og åbn Pycharm.

3. Lav en tolk og implementeringskonfiguration, der passer til din Raspberry Pi.

4. Rediger filen mainCode1.py i Pycharm, og rediger pinnumbers og databases indstillinger til dine personlige indstillinger fra de foregående trin.

Trin 10: Trin 10: Kør Python -koden automatisk

Trin 10: Kør Python -koden automatisk
Trin 10: Kør Python -koden automatisk

1. Opret en Putty -forbindelse med din Pi.

2. Åbn filen /etc/rc.local:

sudo nano /etc/rc.local

3. Inden afslutning tilføjes følgende linjer:

sove 60

python3 /path_from_root_to_your_pythonfile/name_of_your_pythonfile.py

Trin 11: Trin 11: Arduino -kode

1. Download og gem.ino -filen fra Github.

2. Tilslut din Arduino med din bærbare computer via USB.

3. Afbryd Rx- og Tx -kablerne, der forbinder Arduino med Raspberry Pi.

4. Åbn filen, og upload den til Arduino.

5. Afbryd Arduino fra din bærbare computer, og tilslut Rx- og Tx -kablerne igen korrekt.

6. Giv magt til Arduino. Displayet med 4*7 segmenter skal nu vise 12:34

Trin 12: Trin 12: Webserver

Trin 12: Webserver
Trin 12: Webserver

1. Installer apache:

sudo apt installere apache2 -y

2. Bliv ejer fra/var/www/html -biblioteket:

sudo chown pi/var/www/html

3. Gå til biblioteket:

cd/var/www/html

4. Kontroller, om du er ejeren i stedet for root:

ls -al

5. Download og åbn Filezilla

6. Opret forbindelse til din pi som vist på billedet. (brug enten 169.254.10.1 og et ethernet-kabel eller tilslut via wi-fi)

en. Gå til biblioteket/var/www/html

b. Slet standardindeksen.html -side

c. Flyt alle frontend -filer til dette bibliotek

Trin 13: Trin 13: Opbygning af ydersiden

Trin 13: Opbygning af ydersiden
Trin 13: Opbygning af ydersiden
Trin 13: Opbygning af ydersiden
Trin 13: Opbygning af ydersiden
Trin 13: Opbygning af ydersiden
Trin 13: Opbygning af ydersiden

Du kan lave ydersiden af vækkeuret, som du vil! Jeg lavede en kasse til mit vækkeur med et multiplex træpanel med en bredde på 5 mm. Jeg vil gerne lave noget lignende, disse er trinene for den nævnte boks:

1. Tegn følgende former på multiplexpanelet:

Sider: 2 x firkantet (180 mm x 180 mm)

Top og bund: 2 x rektangel (180 mm x 300 mm)

For og bag: 2 x rektangel (170 mm x 300 mm)

2. Sav og slib hver form firkant og rektangel

3. Få noget ekstra træ og lav små planker på 20 mm høje og 20 mm brede.

4. Skru de små planker ind på indersiden (bunden, forsiden og bagsiden) af multiplexen som vist på billederne.

5. Beslut, hvor du vil lave de passende huller til LCD-skærmen, 4*7 segment display, højttaler, lysstyringssensor, RGB LED, roterende encoder og knap.

6. Mål hver komponent, du vil vise på ydersiden, og tegn figurer i passende størrelse på multiplexen.

7. Skær de nødvendige stykker ud.

8. Fastgør nogle hængsler på ydersiden af kassen, der forbinder toppen og bagsiden.

9. Fastgør en magnet på indersiden af fronten og en lille metalplade på indersiden af oversiden.

10. Skru eller lim alt, hvor du vil have det.

11. Saml kassen ved at skrue alle ydersiderne sammen (undtagen toppen).

Du kan springe 3 og 4 over, hvis du bruger mindre skruer (jeg brugte 12 mm skruer). Brug af mindre skruer reducerer dog en smule kassen.

Anbefalede: