Tartalomjegyzék:

EasyTalk: Egyszerű kommunikáció és naptár melletted: 6 lépés
EasyTalk: Egyszerű kommunikáció és naptár melletted: 6 lépés

Videó: EasyTalk: Egyszerű kommunikáció és naptár melletted: 6 lépés

Videó: EasyTalk: Egyszerű kommunikáció és naptár melletted: 6 lépés
Videó: Life is easy. Why do we make it so hard? | Jon Jandai | TEDxDoiSuthep 2024, November
Anonim
EasyTalk: Egyszerű kommunikáció és naptár melletted
EasyTalk: Egyszerű kommunikáció és naptár melletted
EasyTalk: Egyszerű kommunikáció és naptár melletted
EasyTalk: Egyszerű kommunikáció és naptár melletted

A nevem Kobe Marchal, a belgiumi Howesten tanulok, és multimédia és kommunikációs technológia (MCT) hallgató vagyok. Az első év utolsó feladatához IoT-eszközt kellett készítenem.

Otthon van ez a probléma, hogy a bátyám mindig játszik, és amikor anyámnak el kell mondania neki valamit lentről, akkor kiabálnia kell, mert fejhallgatót visel, és nem hall semmit. Meg akartam oldani ezt a problémát, ezért építek egy eszközt, amelyre üzeneteket küldhet egy webhelyről. Naptárként is használható, ahol saját eseményeit tárolhatja, vagy külső naptárat importálhat egy URL -re. Ez az eszköz a hőmérséklet és a levegő minőségi értékeit is tárolja, így láthatja, hogy mennyire egészséges, amikor játszik vagy dolgozik, mert gyakran nem veszi észre.

Ezt az eszközt EasyTalk -nak hívják, és megoldja ezt a problémát. Ez egy kicsi eszköz, amely OLED képernyőt használ, így láthatja eseményeit, az időt vagy a hőmérsékletet és a levegő minőségét. Amikor üzenetet küld, értesítési hanggal veszi észre, és megjeleníti az üzenetet a képernyőn, ahol igennel vagy nemmel válaszolhat.

Ha fel akarja építeni ezt a dolgot, vagy szeretné látni, hogyan készül, határozottan javaslom, hogy olvasson tovább. Ha többet szeretne tudni rólam, keresse fel a tárcámat.

1. lépés: Anyagok

Anyagok
Anyagok
Anyagok
Anyagok
Anyagok
Anyagok

Az első lépés az összes anyag összegyűjtése, amelyet ebben a projektben használni kell. Őszinte leszek veled. Ez nem olcsó készülék, a teljes költség 271 euró. Az alábbiakban felsoroljuk őket, és néhány fényképet tisztázunk.

  • Raspberry Pi 4 B modell - 4 GB
  • Pibow Coupé 4 - Ninja
  • 12 x prémium jumperhuzal op csík - 40 csonk - M/M - 20cm
  • 6 x prémium jumperhuzal op csík - 40 csavar - M/F - 20cm
  • 2 x 36-pin Stacking fej
  • 40 tűs dugófej
  • 40 tűs Regenboog GPIO kábel
  • Fekete -fehér 2,42 "128x64 OLED grafikus kijelző modul
  • Kleine Metalen hangszóró és Draadjes - 8 ohm 0,5W
  • Adafruit Mono 2.5W D osztályú audio verzió
  • 3,5 mm -es Aux Jack kábel
  • 7 mm -es menetes pillanatnyi nyomógomb
  • Tuimelschakelaar
  • PIR Bewegingssensor
  • DS18B20 Digitale hőmérséklet érzékelő
  • Grove - Lucht kwaliteit sensor v1.3
  • Grove - I2C ADC
  • Raspberry Pi 4 USB-C Voeding
  • Flexibel mini statief
  • 470 ohmos ellenállások
  • 4, 7K ohmos ellenállás
  • Hőre zsugorodó cső
  • 6 db M2 x 6mm csavar
  • 6 db M2 x 8mm csavar
  • 3 x M2 x 16 mm csavar
  • Alumínium 3 mm

Készítettem egy Bill of Material -t (BOM) is, így láthatod, mennyit fizettem az összes anyagért, és hol szereztem be őket.

2. lépés: Raspberry Pi

Ehhez a projekthez Raspberry Pi -t használunk, mert könnyen beállítható, és sok mindenre használható. Tökéletes arra, amit tenni akarunk.

Töltse le a Raspberry Pi Desktop OS -t, és telepítse a Raspberry Pi -re. Engedélyeznie kell az SPI-t, az I2C-t és a One Wire-t a raspi-configban. Azt javaslom, hogy tiltson le néhány dolgot a rendszerindítási beállításokban is, hogy gyorsabban induljon. Ettől eltekintve használok néhány könyvtárat, amelyeket a pip segítségével kell telepítenie, hogy ez működjön.

pip3 telepítése:

  • adafruit-circuitpython-ssd1305
  • ics
  • Lombik
  • Lombik-Cors
  • Flask-JWT-Extended
  • mysql-connector-python

A weboldal beállításához apache2 is szükséges, itt az apt -t használjuk:

sudo apt install apache2 -y

Be kell állítania a vezeték nélküli kapcsolatot, mert nem kaphat UTP -kábelt a Raspberry Pi -ben, ha az tokban van.

Be kell állítania a MariaDB -t is, hogy hozzáférjen az adatbázishoz.

3. lépés: huzalozás

Vezeték
Vezeték
Vezeték
Vezeték

A következő lépés mindent összekötni, és tesztelni, hogy minden alkatrész működik -e. Létrehoztam egy NYÁK -ot, hogy eltávolítsam a kenyértáblát, és kisebb legyen a huzalozás, hogy az eszköz kisebb legyen. Erre azért van szükség, mert a monitor mellett fog állni, és nem foglalhat sok helyet, így nem vonja el a figyelmét a munkájáról.

4. lépés: Adatbázis

Adatbázis
Adatbázis

Ez az eszköz egy normalizált MySQL adatbázist használ az összes információ tárolására és megjelenítésére a webhelyen és az eszközön. A MySQL Workbench -ben hoztam létre.

Ebben az adatbázisban 5 táblázat található.

Az Activiteiten táblázat (= tevékenységek, események) a naptár összes eseményének tárolására szolgál. Ez magában foglalja a másik naptárból importált összes eseményt is.

A Table Appparaten (= eszközök) a Historiek (= előzmények) táblázatban használt különböző típusú eszközök tárolására szolgál. Ebben a projektben két érzékelőt használnak, egy hőmérséklet -érzékelőt és egy levegőminőség -érzékelőt, de van egy harmadik „eszköz” is, maga a webhely, amely tárolja a webhelyről az eszközre küldött üzeneteket.

A Gebruikers (= felhasználók) táblázat tárolja a felhasználókat. Bejelentkezhetnek jelszavukkal, és megadhatnak egy becenevet, amely üzenetben jelenik meg, amikor elküldi a készülékre.

A Table Historiek (= előzmények) tárolja az érzékelő értékeit és az eszközre küldött üzeneteket.

És végül a táblázat hivatkozások (= URL -ek) tárolják az összes külső naptári URL -t.

5. lépés: Kód

Kód
Kód
Kód
Kód
Kód
Kód

Azt javaslom, hogy hozzon létre új felhasználót, mivel ez a legjobb gyakorlat, de nem szükséges, használhatja az alapértelmezett pi felhasználót is.

A frontend kód az apache2 alapértelmezett html mappájába kerül. Ezt a mappát a/var/www/html fájlban találja.

A háttérrendszerhez létre kell hoznia egy mappát az otthoni mappában, és be kell helyeznie az összes kódot.

Ezen a kódon is módosítanunk kell néhány értéket. Először menjen az app.py oldalra. A 23. sorban állítsa be az egyvezetékes hőmérséklet -érzékelő nevét. Ez valószínűleg más lesz számodra. A megfelelő név megtalálásához nyisson meg egy terminált, és írja be:

ls/sys/bus/w1/eszközök

és keressen egy karakterláncot, amely több különböző számból áll, és cserélje ki a 23. sorban lévőt.

A másik, amit meg kell változtatnunk, a config.py fájlban van, változtassa meg az adatbázis jelszavát.

Ha azt szeretné, hogy ez rendszerindításkor fusson, akkor az EasyTalk.service fájlt is módosítania kell. Csak módosítsa a WorkingDirectory -t és a User -t. Ezt a fájlt a következő paranccsal kell másolnia:

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

Ezután futtassa:

sudo systemctl indítsa el az EasyTalk.service szolgáltatást

Ezután engedélyezze, hogy elinduljon a rendszerindításkor

sudo systemctl engedélyezi az EasyTalk.service szolgáltatást

6. lépés: Ügy

Ügy
Ügy
Ügy
Ügy
Ügy
Ügy
Ügy
Ügy

Úgy döntöttem, hogy kinyomtatom a tokot, hogy a lehető legkisebb legyen. A nyomat 3 részből áll, a dobozból, a fedélből és a hangszórótartóból, mert nincsenek benne csavarok.

Szüksége lesz néhány vastag betűre is, hogy mindent összecsavarjon.

  • 6 db M2 x 6mm csavar
  • 6 db M2 x 8mm csavar
  • 3 x M2 x 16 mm csavar

Mégis őszinte leszek. 4-5 órába telt, mire felépítettem ezt a dolgot. Mivel olyan kicsi, minden belefér, és néha nehéz behúzni a vastag betűket, de ez óvatosan történik.

A kenyértábla cseréjéhez egy NYÁK -t is terveztem, először forrasztani kell a fejléceket és 5 ellenállást (4 x 470 Ohm, 1 x 4,7 K Ohm).

Ha megvan a NYÁK, azt javaslom, hogy forrasztó kábelekkel kezdje mindazt, amit a PCB -hez kell csatlakoztatni.

Ha ez megtörtént, akkor csavarja be az OLED kijelzőt a helyére, és csatlakoztassa hozzá a NYÁK -t. A kijelző a PCB -t tartalmazza. Ehhez 6 mm -es csavarokat használ.

Ezután csavarja be a levegőminőség -érzékelőt oda, ahová mennie kell, de ez egy kicsit trükkös, mert az ADC csatlakozik hozzá. Ahhoz, hogy ezt megfelelően tegye, hogy a két alkatrész ne érjen egymáshoz, 16 mm -es csavarokat használ 3 x 5 mm -es alumíniumcsövekkel, amelyeket fűrészelnie kell. Ezt két csavarral tettem, mert a harmadikat nem tudtam elérni. Csatlakoztassa a 4 vezetéket oda, ahol a PCB -nek kell lennie.

Ezután csatlakoztassa az audioerősítőt a NYÁK -hoz, és helyezze a hangszórót a helyére a 3D nyomtatott tartóval.

Ezen lépések után a legnehezebb részek véget értek, és minden mást csatlakoztathat a NYÁK -hoz, és a helyére csavarhatja. Ne feledje, hogy a fényképeken más hőmérséklet -érzékelőt használok, a végtermékhez a hőmérséklet -érzékelőt használtam, hosszú kábellel, amely a dobozból kifolyik, mert a dobozon belülről mért hőt.

Amikor mindezek a helyükön vannak, be kell csavarni a Raspberry Pi -t. Erre használom a tokot, mert nem bízom az általa termelt hőben, ez a tok védelmet nyújt, így a 3D nyomtatás nem olvad meg. Mielőtt a helyére csavarja, csatlakoztatnia kell a tápkábelt és az aux kábelt (hogy ki kell nyitnia és forrasztania kell az egyik vezetéket, majd a Raspberry Pi -ről a PCB -re kell csatlakoztatni), mert utána nem tudja elérni.

Ezután csak csatlakoztassa a GPIO fejkábelt a NYÁK -ból a Raspberry Pi -hez, és ellenőrizze, hogy minden működik -e, mielőtt lezárja a fedelet.

Az alján van egy lyuk, ahová az állványt csatlakoztathatja, de ez opcionális.

Ez az! Remélem tetszett olvasni ezt a cikket! -Kobe

Ajánlott: