Sadržaj:

EasyTalk: Laka komunikacija i kalendar pored vas: 6 koraka
EasyTalk: Laka komunikacija i kalendar pored vas: 6 koraka

Video: EasyTalk: Laka komunikacija i kalendar pored vas: 6 koraka

Video: EasyTalk: Laka komunikacija i kalendar pored vas: 6 koraka
Video: М.М. Назаров. Массовая коммуникация и общество. Лекция 3 2024, Studeni
Anonim
EasyTalk: Laka komunikacija i kalendar pored vas
EasyTalk: Laka komunikacija i kalendar pored vas
EasyTalk: Laka komunikacija i kalendar pored vas
EasyTalk: Laka komunikacija i kalendar pored vas

Moje ime je Kobe Marchal, studiram na Howestu u Belgiji i student sam Multimedijalne i komunikacijske tehnologije (MCT). Za posljednji zadatak u prvoj godini morala sam izraditi IoT-uređaj.

Kod kuće imamo ovaj problem što se moj brat uvijek igra i kad mu majka treba nešto reći odozdo, mora vikati jer nosi slušalice i ne čuje ništa. Htio sam joj riješiti ovaj problem pa sam izgradio uređaj na koji možete slati poruke s web stranice. Također se koristi kao kalendar u koji možete pohraniti vlastite događaje ili uvesti vanjski kalendar putem URL -a. Ovaj uređaj također pohranjuje vrijednosti temperature i kvalitete zraka tako da možete vidjeti koliko je zdrav dok se igrate ili radite jer često to ne primjećujete.

Ovaj uređaj se naziva EasyTalk i rješava ovaj problem. To je mali uređaj koji koristi OLED zaslon tako da trenutno možete vidjeti svoje događaje, vrijeme ili temperaturu i kvalitetu zraka. Kada se poruka pošalje, primijetit će vas zvukom obavijesti i prikazati poruku na zaslonu na koju možete odgovoriti s da ili ne.

Ako želite izgraditi ovu stvar ili želite vidjeti kako je izrađena, toplo vam predlažem da pročitate dalje. Ako želite znati više o meni, možete posjetiti moj portfelj.

Korak 1: Materijali

Materijali
Materijali
Materijali
Materijali
Materijali
Materijali

Prvi korak je prikupiti sve materijale za korištenje u ovom projektu. Bit ću iskren s tobom. Ovo nije jeftin uređaj, ukupni trošak je 271 €. Ispod je njihov popis i neke fotografije za pojašnjenje.

  • Raspberry Pi 4 Model B - 4 GB
  • Pibow Coupé 4 - Ninja
  • 12 x Premium opruga za spajanje - 40 štapića - M/M - 20 cm
  • 6 x Premium opruga za spajanje - 40 štapića - M/Ž - 20 cm
  • 2 x 36-pinsko zaglavlje za slaganje
  • 40-pinsko muško zaglavlje kutije
  • 40 pinova Regenboog GPIO kabel
  • Jednobojni 2.42 "128x64 OLED komplet modula grafičkog zaslona
  • Kleine Metalen zvučnik s Draadjesom - 8 ohma 0,5W
  • Adafruit Mono 2.5W Class D Audio Versterker
  • 3,5 mm Aux Jack kabel
  • Trenutačni gumb s navojem od 7 mm
  • Tuimelschakelaar
  • PIR Bewegingssensor
  • DS18B20 Digitalni senzor temperature
  • Grove - Lucht kwaliteit senzor v1.3
  • Grove - I2C ADC
  • Raspberry Pi 4 USB-C Voeding
  • Flexibel mini-statief
  • Otpornici 470 Ohma
  • 4, 7K ohmski otpornik
  • Termoskupljajuće cijevi
  • 6 x vijci M2 x 6 mm
  • 6 x vijci M2 x 8 mm
  • 3 x vijci M2 x 16 mm
  • Aluminijski okvir 3 mm

Napravio sam i Bill of Materials (BOM) tako da možete vidjeti koliko sam platio sve materijale i gdje sam ih nabavio.

Korak 2: Raspberry Pi

Za ovaj projekt koristimo Raspberry Pi jer se lako postavlja i može se koristiti za mnoge stvari. Savršeno je za ono što želimo učiniti.

Preuzmite Raspberry Pi Desktop OS i instalirajte ga na svoj Raspberry Pi. Morate omogućiti SPI, I2C i One Wire u raspi-config. Predlažem da onemogućite neke stvari u opcijama podizanja sustava kako bi se pokrenulo brže. Osim toga, ja koristim neke knjižnice koje morate instalirati s pipom da bi ovo funkcioniralo.

pip3 instalacija:

  • adafruit-circuitpython-ssd1305
  • ics
  • Boca
  • Flask-Cors
  • Flask-JWT-Extended
  • mysql-konektor-python

Za postavljanje web stranice potreban vam je i apache2, ovdje koristimo apt:

sudo apt install apache2 -y

Morate postaviti bežičnu vezu jer ne možete dobiti UTP kabel u Raspberry Pi kad je u kućištu.

Morat ćete postaviti i MariaDB kako biste mogli pristupiti bazi podataka.

Korak 3: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje

Sljedeći korak je povezivanje svega zajedno i ispitivanje rade li sve komponente. Napravio sam PCB za uklanjanje matične ploče i smanjenje ožičenja kako bi uređaj mogao biti manji. To je potrebno jer će stajati pored vašeg monitora i ne može zauzeti puno prostora pa vas ne ometa u poslu.

Korak 4: Baza podataka

Baza podataka
Baza podataka

Ovaj uređaj koristi normaliziranu MySQL bazu podataka za spremanje svih svojih podataka i prikaz na web stranici i samom uređaju. Napravio sam ga u MySQL Workbench -u.

U ovoj bazi podataka postoji 5 tablica.

Tablica Activiteiten (= aktivnosti, događaji) koristi se za spremanje svih događaja u kalendaru. To također uključuje sve događaje uvezene iz drugog kalendara.

Tablični aparat (= uređaji) koristi se za spremanje različitih vrsta uređaja koji se koriste u tablici Historiek (= povijest). U ovom projektu koriste se dva senzora, senzor temperature i senzor kvalitete zraka, ali imam i treći "uređaj", samu web stranicu za spremanje poruka poslanih s web stranice na uređaj.

Tablica Gebruikers (= korisnici) pohranjuje korisnike. Mogu se prijaviti sa svojom lozinkom i odrediti nadimak koji će se pojaviti s porukom prilikom slanja na uređaj.

Tablica Historiek (= povijest) koristi se za spremanje vrijednosti senzora i poruka poslanih na uređaj.

I na kraju, veze tablice (= URL -ovi) spremaju sve vanjske URL -ove kalendara.

Korak 5: Kodirajte

Kodirati
Kodirati
Kodirati
Kodirati
Kodirati
Kodirati

Preporučujem da napravite novog korisnika jer je to najbolja praksa, ali nije potrebno, možete koristiti i zadanog korisnika pi.

Kôd sučelja stavlja se u zadanu html mapu iz apache2. Ovu mapu možete pronaći u/var/www/html.

Za pozadinu morate napraviti mapu u svojoj matičnoj mapi i tamo staviti sav kôd.

Moramo promijeniti i neke vrijednosti u ovom kodu. Prvo idite na app.py. U retku 23 postavite naziv jednožičnog osjetnika temperature. Ovo će za vas vjerojatno biti nešto drugačije. Da biste pronašli pravi naziv, otvorite terminal i upišite:

ls/sys/bus/w1/devices

i potražite niz koji se sastoji od više različitih brojeva i zamijenite onaj u retku 23.

Druga stvar koju moramo promijeniti je u datoteci config.py, promijenite lozinku baze podataka.

Ako želite da se ovo pokreće pri pokretanju, morate promijeniti i datoteku EasyTalk.service. Samo promijenite WorkingDirectory i User. Morate kopirati ovu datoteku sljedećom naredbom:

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

Zatim ga pokrenite:

sudo systemctl pokrenite EasyTalk.service

A zatim ga omogućite pa će se pokrenuti pri pokretanju

sudo systemctl omogućiti EasyTalk.service

Korak 6: Slučaj

Slučaj
Slučaj
Slučaj
Slučaj
Slučaj
Slučaj
Slučaj
Slučaj

Odlučio sam 3D ispisati kućište kako bi moglo biti što je moguće manje. Otisak se sastoji od 3 dijela, same kutije, poklopca i držača zvučnika jer nema rupe za uvrtanje vijaka.

Trebat će vam i neke podebljanosti kako biste sve sjebali.

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

Bit ću ipak pošten. Trebalo mi je 4-5 sati da napravim ovu stvar. Budući da je tako mali, sve jednostavno pristaje i ponekad je teško uvrnuti podebljano, ali funkcionira ako to radite pažljivo.

Također sam dizajnirao PCB za zamjenu matične ploče, prvo morate lemiti zaglavlja i 5 otpornika (4 x 470 Ohm, 1 x 4,7K Ohm).

Kad imate PCB, predlažem da počnete s lemljenjem kabela na sve što se treba spojiti na PCB.

Kad to učinite, pričvrstit ćete OLED zaslon na mjesto i spojiti PCB na njega. Zaslon drži PCB. Za to koristite vijke od 6 mm.

Zatim zašrafite senzor kvalitete zraka kamo bi trebao ići, ali to je malo zeznuto jer se ADC povezuje s njim. Da biste to učinili ispravno kako se dvije komponente ne bi dodirivale, koristite 16 mm vijke s aluminijskim cijevima 3 x 5 mm koje morate piliti. Učinio sam to s dva vijka jer nisam mogao doći do trećeg. Spojite 4 žice tamo gdje bi trebale ići na PCB.

Zatim spojite audio pojačalo na PCB i postavite zvučnik na mjesto s 3D ispisanim držačem.

Nakon ovih koraka, najteži dijelovi su gotovi, a sve ostalo možete spojiti na PCB i pričvrstiti na mjesto. Imajte na umu da na fotografijama koje vidite koristim drugačiji temperaturni senzor, za konačni proizvod sam koristio temperaturni osjetnik s dugim kabelom koji izlazi iz kutije jer je mjerio toplinu iz kutije.

Kad su svi ovi na svom mjestu, morate pričvrstiti Raspberry Pi. Za to koristim kućište jer ne vjerujem toplini koju proizvodi, ovaj kovčeg je tu radi zaštite kako se 3D ispis ne bi rastopio. Prije nego što ga pričvrstite na mjesto, morate spojiti kabel za napajanje i pomoćni kabel (koji morate otvoriti i lemiti jednu žicu na, a zatim spojiti s Raspberry Pi -a na PCB) jer nakon toga ne možete doći do njega.

Zatim samo spojite kabel zaglavlja GPIO -a s PCB -a na Raspberry Pi i provjerite radi li sve prije zatvaranja poklopca.

Na dnu se nalazi rupa u koju možete spojiti stativ, ali to nije obavezno.

To je to! Nadam se da ste uživali čitajući ovaj članak! -Kobe

Preporučeni: