Tartalomjegyzék:
- 1. lépés: Anyagok
- 2. lépés: Raspberry Pi
- 3. lépés: huzalozás
- 4. lépés: Adatbázis
- 5. lépés: Kód
- 6. lépés: Ügy
Videó: EasyTalk: Egyszerű kommunikáció és naptár melletted: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
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
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
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
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
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 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:
DIY LED adventi naptár: 3 lépés
DIY LED adventi naptár: Leírom, hogyan készítettük ezt az analóg órát, amely kettős adventi naptárként működik. 24 ws2811 led van éjjel -nappal körben, és mindegyik zölden világít a karácsony előtti napokig. Karácsony napján minden fény kialszik
A hét napja, naptár, idő, páratartalom/hőmérséklet akkumulátor -kímélővel: 10 lépés (képekkel)
A hét napja, naptár, idő, páratartalom/hőmérséklet akkumulátor -kímélővel: Az energiatakarékos mód az, ami megkülönbözteti ezt az Instructable -t a többi példától, amelyek a hét napját, a hónapot, a hónap napját, az időt, a páratartalmat és a hőmérsékletet mutatják. Ez a képesség teszi lehetővé a projekt akkumulátorról történő futtatását anélkül, hogy
A Google Naptár eseményei az ESP8266 szerint: 10 lépés
Google Naptár -események az ESP8266 -hoz: Ebben az oktatóanyagban elmagyarázom, hogyan lehet importálni a Google Naptár eseményadatait az Arduino IDE -ben az ESP8266 táblához. A képzés befejezési és kezdési idejét importálom a Google Naptárból, és kinyomtatom az Arduino IDE soros monitoron
Testreszabott naptár szervomotorral: 4 lépés
Testreszabott naptár szervomotorral: Az emberek néha unatkoztak az asztalnál ülve. Ha van valami dekoratív az asztalon, akkor biztosan szórakoztató lenne. Ehhez a projekthez személyre szabott naptárat készítek. A naptáron kívül más elemeket is hozzáadhat, amelyek
Arduino naptár: 6 lépés
Arduino naptár: Ez a termék lehetővé teszi, hogy megtegye, amit a nap folyamán tennie kell. Amikor a kötélen játszik, megnyomhatja az alján található gombot, és a lámpa vörösről zöldre vált. Ehhez a termékhez szüksége lesz: 1. Karton2. Jegyzetpapír3. Használati kés 4. Penci