Indholdsfortegnelse:

EasyTalk: Nem kommunikation og en kalender ved siden af dig: 6 trin
EasyTalk: Nem kommunikation og en kalender ved siden af dig: 6 trin

Video: EasyTalk: Nem kommunikation og en kalender ved siden af dig: 6 trin

Video: EasyTalk: Nem kommunikation og en kalender ved siden af dig: 6 trin
Video: Tennistrainer werden - Mit diesen 10 Tipps wirst Du Erfolgscoach 2024, November
Anonim
EasyTalk: Nem kommunikation og en kalender ved siden af dig
EasyTalk: Nem kommunikation og en kalender ved siden af dig
EasyTalk: Nem kommunikation og en kalender ved siden af dig
EasyTalk: Nem kommunikation og en kalender ved siden af dig

Mit navn er Kobe Marchal, jeg studerer i Howest, Belgien, og jeg er studerende Multimedia and Communication Technology (MCT). Til min sidste opgave på mit første år måtte jeg lave en IoT-enhed.

Herhjemme har vi dette problem, at min bror altid spiller, og når min mor skal fortælle ham noget nedenunder, skal hun råbe, fordi han bærer hovedtelefoner og ikke kan høre noget. Jeg ville løse dette problem for hende, så jeg bygger en enhed, hvor du kan sende beskeder til fra et websted. Det bruges også som en kalender, hvor du kan gemme dine egne begivenheder i eller importere en ekstern kalender over en webadresse. Denne enhed gemmer også temperatur- og luftkvalitetsværdier, så du kan se, hvor sundt det er, når du spiller eller arbejder, fordi du ofte ikke lægger mærke til det.

Denne enhed kaldes EasyTalk og løser dette problem. Det er en lille enhed, der bruger en OLED -skærm, så du kan se dine begivenheder, tidspunktet eller temperaturen og luftkvaliteten lige nu. Når en besked sendes, bemærker den dig med en meddelelseslyd og viser beskeden på skærmen, hvor du kan svare med ja eller nej.

Hvis du vil bygge denne ting, eller du vil se, hvordan den er lavet, foreslår jeg stærkt at læse videre. Hvis du vil vide mere om mig, kan du gå til min portefølje.

Trin 1: Materialer

Materialer
Materialer
Materialer
Materialer
Materialer
Materialer

Det første trin er at samle alt det materiale, der skal bruges i dette projekt. Jeg vil være ærlig over for dig. Dette er ikke en billig enhed, den samlede pris er € 271. Nedenfor er en liste over dem og nogle fotos for at præcisere.

  • Raspberry Pi 4 Model B - 4 GB
  • Pibow Coupé 4 - Ninja
  • 12 x Premium Jumperwires op strip - 40 stuks - M/M - 20cm
  • 6 x Premium Jumperwires op strip - 40 stuks - M/F - 20cm
  • 2 x 36-pins stabelhoved
  • 40-benet hanhoved
  • 40 ben Regenboog GPIO kabel
  • Monokrom 2,42 "128x64 OLED grafisk display modul kit
  • Kleine Metalen Højttaler med Draadjes - 8 ohm 0,5W
  • Adafruit Mono 2.5W klasse D Audio Versterker
  • 3,5 mm Aux Jack kabel
  • 7 mm tråd momentan trykknap
  • Tuimelschakelaar
  • PIR Bewegingssensor
  • DS18B20 Digital temperatur sensor
  • Grove - Luftkvalitetssensor v1.3
  • Grove - I2C ADC
  • Raspberry Pi 4 USB-C Voeding
  • Fleksibel mini-statief
  • 470 Ohm modstande
  • 4, 7K Ohm modstand
  • Krympeslange
  • 6 x skruer M2 x 6 mm
  • 6 x skruer M2 x 8 mm
  • 3 x skruer M2 x 16 mm
  • Aluminiumbuis 3 mm

Jeg lavede også en Bill Of Materials (BOM), så du kan se, hvor meget jeg betalte for alle materialer, og hvor jeg fik dem.

Trin 2: Hindbær Pi

Til dette projekt bruger vi en Raspberry Pi, fordi den er let at konfigurere, og den kan bruges til mange ting. Det er perfekt til det, vi gerne vil gøre.

Download Raspberry Pi Desktop OS og installer det på din Raspberry Pi. Du skal aktivere SPI, I2C og One Wire i raspi-config. Jeg foreslår også at deaktivere nogle ting i Boot Options for at få det til at starte hurtigere. Bortset fra det bruger jeg nogle biblioteker, som du skal installere med pip for at få dette til at fungere.

pip3 installation:

  • adafruit-circuitpython-ssd1305
  • ics
  • Kolbe
  • Kolbe-Cors
  • Kolbe-JWT-udvidet
  • mysql-connector-python

Du har også brug for apache2 for at oprette et websted, her bruger vi apt:

sudo apt installere apache2 -y

Du skal oprette en trådløs forbindelse, fordi du ikke kan få et UTP -kabel i Raspberry Pi, når det er i etuiet.

Du skal også konfigurere MariaDB, så du kan få adgang til databasen.

Trin 3: Ledningsføring

Ledninger
Ledninger
Ledninger
Ledninger

Det næste trin er at koble alt sammen og teste, om alle komponenter fungerer. Jeg lavede et printkort til at fjerne brødbrættet og gøre ledningerne mindre, så enheden kan være mindre. Dette er nødvendigt, fordi det vil stå ved siden af din skærm og ikke kan tage meget plads, så det ikke distraherer dig fra dit arbejde.

Trin 4: Database

Database
Database

Denne enhed anvender en normaliseret MySQL -database til at gemme alle dens oplysninger i og vise dette på webstedet og selve enheden. Jeg oprettede det i MySQL Workbench.

Der er 5 tabeller i denne database.

Table Activiteiten (= aktiviteter, begivenheder) bruges til at gemme alle begivenheder i kalenderen. Dette inkluderer også alle de begivenheder, der er importeret fra en anden kalender.

Table Apparaten (= enheder) bruges til at gemme de forskellige typer enheder, der bruges i tabel Historiek (= historik). Der er to sensorer, der bruges i dette projekt, en temperatursensor og en luftkvalitetssensor, men jeg har også en tredje "enhed", selve webstedet til at gemme de meddelelser, der sendes fra webstedet til enheden.

Table Gebruikers (= brugere) gemmer brugerne. De kan logge ind med deres adgangskode og angive et kaldenavn, der vises med en besked, når de sendes til enheden.

Table Historiek (= historik) bruges til at gemme sensorværdier og meddelelser, der sendes til enheden.

Og til sidst gemmer tabellinks (= URL’er) alle de eksterne kalender -URL’er.

Trin 5: Kode

Kode
Kode
Kode
Kode
Kode
Kode

Jeg anbefaler at oprette en ny bruger, da det er bedste praksis, men det er ikke nødvendigt, du kan også bruge standard pi -brugeren.

Frontend -koden sættes i standard html -mappen fra apache2. Du kan finde denne mappe i/var/www/html.

Til backend skal du oprette en mappe i din hjemmemappe og lægge al koden der.

Vi skal også ændre nogle værdier i denne kode. Gå først til app.py. På linje 23 skal du indstille navnet på entråds temperatursensoren. Dette vil sandsynligvis være noget andet for dig. For at finde det rigtige navn skal du åbne en terminal og indtaste:

ls/sys/bus/w1/enheder

og kig efter en streng, der består af flere forskellige tal, og erstat den på linje 23.

Den anden ting, vi skal ændre, er i filen config.py, skift adgangskoden til databasen.

Hvis du vil have dette til at køre ved opstart, skal du også ændre filen EasyTalk.service. Du skal bare ændre arbejdsmappen og brugeren. Du skal kopiere denne fil med den næste kommando:

sudo cp EasyTalk.service/etc/systemd/system/EasyTalk.service

Kør det derefter:

sudo systemctl start EasyTalk.service

Og aktiver derefter det, så det starter ved opstart

sudo systemctl aktiver EasyTalk.service

Trin 6: Case

Sag
Sag
Sag
Sag
Sag
Sag
Sag
Sag

Jeg besluttede at 3D -udskrive sagen, så den kan være så lille som muligt. Trykket består af 3 dele, selve kassen, et låg og en højttalerholder, fordi dette ikke har huller til at skrue bolte i.

Du skal også bruge nogle fed til at skrue alt sammen.

  • 6 x skruer M2 x 6 mm
  • 6 x skruer M2 x 8 mm
  • 3 x skruer M2 x 16 mm

Jeg vil dog være ærlig. Det tog mig 4-5 timer at bygge denne ting. Fordi det er så lille, passer alt bare, og det er svært at skrue fedt ind nogle gange, men det virker, hvis du gør det omhyggeligt.

Jeg har også designet et printkort til at udskifte brødbrættet, du skal først lodde overskrifterne og 5 modstande (4 x 470 Ohm, 1 x 4,7K Ohm).

Når du har printkortet, foreslår jeg at starte med loddekabler til alt, hvad der skal tilsluttes printkortet.

Når dette er gjort, skal du skrue OLED -displayet på plads og slutte printkortet til det. Displayet indeholder printkortet. Du bruger 6 mm skruer til dette.

Derefter skruer du luftkvalitetssensoren ned, hvor den skal gå, men det er lidt svært, fordi ADC'en opretter forbindelse til den. For at gøre dette ordentligt, så de to komponenter ikke rører hinanden, bruger du 16 mm skruer med 3 x 5 mm aluminiumsrør, som du skal save. Jeg gjorde dette med to skruer, fordi jeg ikke kunne nå den tredje. Du forbinder de 4 ledninger, hvor de skal gå på printkortet.

Derefter slutter du lydforstærkeren til printkortet og sætter højttaleren på plads med 3D -printet holder.

Efter disse trin er de sværeste dele forbi, og du kan slutte alt andet til printet og skrue det på plads. Bemærk, at på de fotos, du ser, bruger jeg en anden temperatursensor, til det endelige produkt brugte jeg temperatursensoren med et langt kabel, der løber ud af kassen, fordi den målte varmen inde i boksen.

Når alle disse er på plads, skal du skrue Raspberry Pi i. Jeg bruger sagen til dette, fordi jeg ikke stoler på den varme, den producerer, denne sag er der til beskyttelse, så 3D -printet ikke smelter. Inden du skruer den på plads, skal du tilslutte strømkablet og aux -kablet (som du skal åbne op og lodde en ledning til og derefter tilslutte fra Raspberry Pi til PCB), fordi du ikke kan nå det efter.

Tilslut derefter bare GPIO -headerkablet fra printkortet til Raspberry Pi og test, om alt virker, før låget lukkes.

I bunden er der et hul, hvor du kan tilslutte et stativ, men dette er valgfrit.

Det er det! Jeg håber du nød at læse denne artikel! -Kobe

Anbefalede: