Tartalomjegyzék:
- Kellékek
- 1. lépés: A HC-SR04 csatlakoztatása
- 2. lépés: Mosquitto és Paho MQTT
- 3. lépés: Python program ultrahangos érzékelőhöz
- 4. lépés: Node-RED
- 5. lépés: Adatok naplózása
- 6. lépés: Elrendezés
- 7. lépés: Következtetés
Videó: Szemétrendszer: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Úgy döntöttünk, hogy megpróbálunk módot találni arra, hogy nyomon kövessük vagy a környék közösségi hulladéktöltését, vagy egy érzékelőt a környéken lévő minden szemétben, hogy hatékonyabbá tegyük a szemétlerakást. Arra gondoltunk, hogy ha kéthetente jön egy teherautó egy gyűjtésre, mi van akkor, ha én vagy a szomszédom végül csak egy keveset dobunk ki. Nem lenne hatékony, ha olyan teherautót küldenénk oda, ahol a környék fele nem küldte el a teljes szemetet? Nagyon jó lenne, ha látnánk, hogy szomszédunk szemetet megtölthet, majd felhasználhatja a szemetet, ha az enyém tele van, és az övék üres, és fordítva. Úgy döntöttünk, hogy az ultrahangos érzékelőt, a HC-SR04-et és a málna pi-t használjuk, hogy megpróbáljuk megoldani ezt a projektet.
Kellékek
Ultrahangos érzékelő (HC-SR04)
Raspberry Pi (a Pi 4 B modellt használtuk)
Kenyeretábla
Jumper kábelek
Pár ellenállás (3 x 1 k ohm)
1. lépés: A HC-SR04 csatlakoztatása
Mivel a Raspberry Pi -t használjuk, feszültségmegosztót kell használnunk a Pi GPIO csapjaiba érkező feszültség szabályozására, mivel ezek csak 3,3 V -ot engednek. A HC-SR04 5V-ot használ, de le kell csökkenteni 3,3 V-ra, amikor a Pi-hez csatlakoztatja. Csatlakoztassa az 5 V -os és a földelt csapokat, és programja szerint csatlakoztassa a visszhang- és a kioldócsapokat a tiszteletreméltó csapokhoz. Programunkban a 23 -as és a 24 -es tüskét használtuk a visszhanghoz és a triggerhez.
2. lépés: Mosquitto és Paho MQTT
Mielőtt elkezdenénk programozni a Pythonon, hogy az ultrahangos érzékelő működjön a Pi-vel, telepítenünk kell ezeket az alkalmazásokat, hogy az ultrahangos érzékelő kommunikálni tudjon a Node-RED programozó szoftverünkkel. A Mosquitto egy MQTT -bróker, amelyet a Pi -n használhat, míg a Paho MQTT az a könyvtár, amely lehetővé teszi a Python -ban történő kódolást, hogy az érzékelő kommunikáljon az MQTT -brókerrel. Mindkettő telepítéséhez írja be ezeket a parancsokat a Pi terminálon
sudo apt frissítés
sudo apt install -y mosquitto mosquitto -customers
sudo apt-get install python3-pip
sudo pip3 telepítse a paho-mqtt-t
3. lépés: Python program ultrahangos érzékelőhöz
Ez az a program, amellyel kiolvastam a beérkező adatokat az érzékelőből, és közzétettem az MQTT brókernek.
4. lépés: Node-RED
Néhány csomópont nincs előre telepítve a programba, ezért előfordulhat, hogy telepítenie kell a palettáról. A telepítendők a node-red-dashboard és a node-red-node-sqlite.
Itt kezdjük el használni a programozó szoftverünket és az érzékelőt. Az első csomópont az MQTT-in csomópont, amely lehetővé teszi számunkra, hogy a programot felülről futtató érzékelőnk segítségével adatokat küldjünk erre a szoftverre. Az általunk használt tartománycsomópont elfordítja a rendelkezésünkre álló értékeket (azaz 5 cm tele van a programtól, így 100%-ra fordítjuk). A tartománycsomópont után 2 funkciócsomópontunk van, az egyik megjeleníti az üzenetet a műszerfalunkon, a másik pedig vizuálisan mutatja, hogy a szemét megtelt. A függvénycsomópontok programja csatolva van.
Ha lehetséges, ez az áramlás több ultrahangos érzékelőhöz is használható. A projektünkhöz azonban szimulációs adatokat kellett készítenünk, mivel nem tudtunk több érzékelőt kézbe venni. Ennek módja nagyon hasonló, de vannak gombjaink, amelyekre kattintva a felhasználó véletlenszerűen hozzáadhatja a szemét 1-10 százalékát minden egyes szemétbe. 2 gombot használtunk, az egyiket a szemét hozzáadásához, a másikat a törléshez. A mérőeszköz, az üzenetek és a jelző továbbra is pontosan ugyanaz, mint a kód, amelyet a szeméttel kell számolni és tartani.
5. lépés: Adatok naplózása
Úgy döntöttünk, hogy jó lenne naplózni, hogy mennyire tele vannak a szemetek, amikor a teherautó kiüríti a szemetet. Az sqlite csomópont segítségével képesek vagyunk adatokat olvasni és írni, ami a Pi -be is menti. Telepítenie kell ezt a csomópontot, ahogy korábban mondtam.
Az adatok létrehozásának és naplózásának lépései a következők:
1. Hozza létre az adatbázist
2. Naplózza az adatokat
3. Húzza ki az adatokat, hogy megjelenjenek a műszerfalunkon
4. Törölje és törölje az adatokat
Az SQL működésének módja az, hogy létre kell hoznia a CREATE TABLE, INSERT INTO, SELECT FROM és DELETE FROM témákat. Az időbélyegző csomópontok használatával futtathatunk témákat az sqlite csomóponthoz, amely elvégzi ezeket a funkciókat (létrehozás, beillesztés, kijelölés és törlés). Csak egyszer kell létrehoznunk az adatbázist, és miután elkészült, adatokat naplózhatunk hozzá. Az adatbázis létrehozása után naplózhatjuk az adatokat, és a felhasználói bevitelt használva ismét bejelentkeztünk, amikor a teherautó megérkezett. Elkészítettük, így nem tud naplózni adatokat, amíg a teherautó nem mehet, ami 5 szemét 80% -os kapacitással (tekintve tele). Ismét a tartománycsomópontot használtuk az 500 visszaállítására 0-100%-ra. Ezt követően lehetőségünk van az összes adat törlésére az adatbázisból, ha szeretnénk. Az UI tábla csomópont egy csomópont, amely lehetővé teszi számunkra, hogy a táblázatot szépen formázott módon lássuk a műszerfalunkon.
6. lépés: Elrendezés
Miután mindez befejeződött, a Node-RED segítségével létrehozhatja a kívánt elrendezést. Az oldalsó lapon tetszés szerint elhelyezheti őket, és még sok más testreszabási lehetőség áll rendelkezésre. Az egész programom folyamát is csatolom.
7. lépés: Következtetés
A projekt befejezése után vannak olyan területek, ahol a program tovább bővíthető. Soha nem találtam módot arra, hogy a naplózást automatikusan végezzük, mivel az egyetlen módja, hogy időközönként naplózzon, és nincs szükségünk ismétlődő számokra, ha egyszer eljön a kukásautó. Azt hiszem, ez részben annak tudható be, hogy úgy döntöttünk, hogy nagymértékben függünk a függvénycsomópontoktól és a programozástól, mivel kényelmesebbek vagyunk ezzel a programozással. Miután befejeztük a feltárást, egyértelmű volt, hogy mindenhez vannak csomópontok, és sokkal könnyebbé tehetné az életet, ha korábban megtaláltuk a kapcsoló és az rbe csomópontok funkcióját. Volt egy csomópont is ultrahangos érzékelők számára, amelyeket nem tudtunk működni. Ez megkönnyítette volna a dolgokat, mivel nincs szükség MQTT -re vagy a Python programra, mivel ez csak egy csomópont a triggerrel és a visszhang csapokkal. Úgy döntöttünk, hogy körüljárjuk a Python program elkészítésével, ahogy fent láttuk. Hatalmas tipp mindenkinek, aki be akar merülni a Node-RED-be, az az, hogy sok hibakeresési csomópontot kell használnia annak megállapítására, hogy minden folyamat működik-e, és azt adja ki, amit szeretne/amire szüksége van.
Ajánlott:
DC - DC feszültség Lépés lekapcsoló mód Buck feszültségátalakító (LM2576/LM2596): 4 lépés
DC-DC feszültség Lépés lekapcsoló üzemmód Buck feszültségátalakító (LM2576/LM2596): A rendkívül hatékony bakkonverter készítése nehéz feladat, és még a tapasztalt mérnököknek is többféle kivitelre van szükségük, hogy a megfelelőt hozzák létre. egy DC-DC áramátalakító, amely csökkenti a feszültséget (miközben növeli
Akusztikus levitáció az Arduino Uno-val Lépésről lépésre (8 lépés): 8 lépés
Akusztikus lebegés az Arduino Uno-val Lépésről lépésre (8 lépés): ultrahangos hangátvivők L298N Dc női adapter tápegység egy egyenáramú tűvel Arduino UNOBreadboard és analóg portok a kód konvertálásához (C ++)
Élő 4G/5G HD videó streamelés DJI drónról alacsony késleltetéssel [3 lépés]: 3 lépés
Élő 4G/5G HD videó streaming a DJI Drone-tól alacsony késleltetéssel [3 lépés]: Az alábbi útmutató segít abban, hogy szinte bármilyen DJI drónról élő HD minőségű videó streameket kapjon. A FlytOS mobilalkalmazás és a FlytNow webes alkalmazás segítségével elindíthatja a videó streamingjét a drónról
Bolt - DIY vezeték nélküli töltő éjszakai óra (6 lépés): 6 lépés (képekkel)
Bolt - DIY vezeték nélküli töltés éjszakai óra (6 lépés): Az induktív töltés (más néven vezeték nélküli töltés vagy vezeték nélküli töltés) a vezeték nélküli áramátvitel egyik típusa. Elektromágneses indukciót használ a hordozható eszközök áramellátásához. A leggyakoribb alkalmazás a Qi vezeték nélküli töltő
4 lépés az akkumulátor belső ellenállásának méréséhez: 4 lépés
4 lépés az akkumulátor belső ellenállásának mérésére: Íme a 4 egyszerű lépés, amelyek segítenek mérni az akkumulátor belső ellenállását