Tartalomjegyzék:
- 1. lépés: Első lépések a piros csomóponttal
- 2. lépés: Az adatok felosztása piros csomópontban
- 3. lépés: Adatbázis Wampserverrel
- 4. lépés: Adatbázis
- 5. lépés: Vörös csomópont a Wampserverhez
- 6. lépés: Az adatok használata a Wampserver-től a Node-vörösig
- 7. lépés: Véglegesítés
Videó: UCL-IIOT-Riasztórendszer adatbázissal és piros csomóponttal: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
Ennek az összeállításnak az a célja, hogy megtanítsa az Arduino és a Node-red és egy adatbázis összekapcsolását, így naplózhatja az adatokat, és összegyűjtheti azokat későbbi használatra.
Ehhez a felépítéshez egy egyszerű arduino riasztórendszert használok, amely 5 adatszámot ad ki, mindegyiket vesszővel elválasztva.
Nem szükséges, hogy pontosan ennyi adat legyen, és a program bármi lehet.
A fontos rész az, hogy az adatok vesszővel vannak elválasztva, amint ez a képernyőképen látható.
A kimenet például így nézhet ki: "324, 0, 0, 1, 1"
(a kész programozás és az arduino létrehozására vonatkozó utasítások az oktatóanyag alján találhatók)
1. lépés: Első lépések a piros csomóponttal
Ebben az oktatóanyagban feltételezzük, hogy már telepítette a Node-red csomópontot, de vannak további paletták, amelyeket ehhez a projekthez használunk, amelyekre szükségünk van a működéshez
Keresse meg a "Paletta kezelése" gombot, és telepítse a következő palettákat.
- csomópont-piros-műszerfal
- node-red-node-mysql
- node-red-node-arduino
- node-red-node-serialport
Néhány új palettát kell megjelenítenie a csomópont-piros gomb menüjében.
2. lépés: Az adatok felosztása piros csomópontban
Most, hogy a Node-red készen áll az indulásra, el kell kezdenünk, hogy adatainkat külön darabokra osztjuk.
Ezért gondoskodtunk arról, hogy vesszővel válasszuk el őket az Arduino kódon belül.
Először is kezdjük a bal oldali panelen található Arduino bemeneti csomópont lerakásával.
Győződjön meg arról, hogy a megfelelő soros (az enyém COM4 -et használ) port és a Baud sebesség (a programomban 9600 baud sebességet használok)
Ha helyesen van beállítva, akkor azt kell jelezni, hogy csatlakoztatva van.
Ezután létrehozunk egy Javascript függvényblokkot, és az Arduino bemeneti csomópont után csatlakoztatjuk. Ez a blokk lehetővé teszi a Javascript programozását, és itt írunk egy kódot, amely minden vesszőre fel tudja osztani az adatainkat.
Ebben a funkcióblokkban felosztottam az 5 adatomat a következő kód használatával:
var m1 = {topic: "light1", hasznos teher: msg.payload.split (",") [0]}; var m2 = {topic: "light2", hasznos teher: msg.payload.split (",") [1]}; var m3 = {topic: "light3", hasznos teher: msg.payload.split (",") [2]}; var m4 = {topic: "millis", hasznos teher: msg.payload.split (",") [3]}; var m5 = {topic: "onoff", hasznos teher: msg.payload.split (",") [4]}; visszatérés [m1, m2, m3, m4, m5];
(szükség szerint módosítsa a kódot)
Győződjön meg arról, hogy a csomópont 5 kimenetre van állítva (vagy ezzel egyenértékű)
Amint az a képernyőképen is látható, most 5 kimenetünk van, amelyeket mindegyik linkelünk egy hibakeresési csomóponthoz és egy szöveges irányítópult -csomóponthoz. Ez akkor lesz hasznos, ha látni kell a felhasználói felületen.
3. lépés: Adatbázis Wampserverrel
Ahhoz, hogy adatbázisunk működjön, telepítenie kell a Wampservert. Miután telepítette és zöld ikonként jelenik meg (miután elindította az összes szolgáltatást), nyissa meg a "phpMyAdmin" -t, amely a bejelentkezési képernyőre juttatja. korábban megváltoztatta, egyszerűen írja be a "root" szót a felhasználónévbe és a bejelentkezésbe.
Nyomja meg a phpmyadmin gombot az eszközök alatt a bal oldali sávban, és meg kell nyitnia az adatbázis menüt, amely úgy néz ki, mint a fenti képen.
Hozzon létre egy új adatbázist, és nevezzen el valamit a projektjéhez kapcsolódóan, az enyém "riasztórendszer" (ezek a nevek megkülönböztetik a kis- és nagybetűket)
Ebben az adatbázisban hozzon létre egy új táblázatot, és nevezze el, az enyém "alarmdata"
megkérdezi, hogy a "latin1_swedish_ci" -t akarja -e használni, és mi csak így tartjuk.
Most 6 táblázatot hoz létre (1 -gyel több, mint a rendelkezésünkre álló adatok)
Az első táblázatnak a "longtext" adattípust kell használnia
és az adathalmaz többi része "közepes szöveget" használ
Feltétlenül nevezze el őket. (az első adathalmaz neve "time"
4. lépés: Adatbázis
A Wampserver adatkészletnek valahogy így kell kinéznie.
(de a tényleges adatok nélkül, mivel ehhez még nem jutottunk el)
5. lépés: Vörös csomópont a Wampserverhez
Most azt akarjuk, hogy az arduino -ból kiadott adatok a Wampserverünkre kerüljenek.
Kezdje egy másik Javascript funkcióblokk létrehozásával, és csatlakoztassa azt az arduino bemeneti csomópontunkhoz.
Ebben a szkriptblokkban ismét felosztjuk adatainkat, de beillesztjük azokat az adatbázisunkba is.
var data = msg.payload.split (","); var Green1 = adatok [0]; var Green2 = adatok [1]; var Alarm = adatok [2]; var Millis = adatok [3]; var IsActive = adatok [4]; var out = "INSERT INTO alarmsystem.alarmdata (Time, Green1, Green2, Alarm, Millis, IsActive) VALUES ('"+new Date (). toISOString (). szelet (0, 19).replace (' T ',' ')+"', '"+Zöld1+"', '"+Zöld2+"', '"+Riasztás+"', '"+Millis+"', '"+IsActive+"')"; msg.topic = ki; vissza üzenet;
Figyelmeztetés: "INSERT INTO alarmsystem.alarmdata", ezt a nevet adtuk adatbázisunknak és táblázatunknak, ügyeljen arra, hogy pontosan azt a nevet írja be, amelyet az adatbázisnak adott.
Most csatlakoztassa a Javascript blokkot egy hibakeresési csomóponthoz, valamint egy "mysql" csomóponthoz, amely a bal oldali tárolópaletta alatt található.
a mysql blokk alatt ugyanazt nevezi el, mint az adatbázis "riasztórendszer"
felhasználó megváltoztatása "root" -ra (a szerverünkre való bejelentkezéshez használt név)
a gazdagépet, portot és adatbázist már ki kell tölteni:
Gazdagép: 127.0.0.1
Port: 3306
Adatbázis: riasztórendszer
Ha minden rendben van, akkor a módosítások telepítése után össze kell kapcsolni.
Azt is látnia kell, hogy az adatbázis most közvetlenül az Arduino -ból naplózza az adatait.
6. lépés: Az adatok használata a Wampserver-től a Node-vörösig
Az utolsó szakaszban szeretnénk megnézni, hogy tudjuk-e átvenni a mentett adatokat, és visszahelyezni a csomó-vörösbe, és remélhetőleg megjeleníteni.
Kezdje egy „befecskendező” csomópont elhelyezésével
Ebben a csomópontban a téma alá a következő kódot írjuk: SELECT*FROM alarmsystem.alarmdata
Ez megnyomva megtalálja az adatbázisunkat.
Csatlakoztassa a befecskendezési csomópontot egy új "mysql" csomóponthoz, amely pontosan olyan, mint az előző lépésben.
Csatlakoztassa a mysql csomópontot egy hibakeresési csomóponthoz és egy sabloncsomóponthoz az irányítópult alatt.
A sabloncsomópont lesz a táblázatunk, amelyet frissíthetünk, hogy megjelenítse az adatbázisból származó adatokat, amint azok elkészülnek.
Írja be a fenti képernyőképen látható kódot (szükség szerint módosítsa), és most adattáblázatot kell megjelenítenie a csomópont-vörös felhasználói felületünkön.
Hozzáadhatunk egy irányítópult gombot is, hogy frissítsük a táblázatot a kezelőfelületről.
Kezdje egy gombcsomópont létrehozásával.
csatlakoztassa a gomb csomópontot egy Javascript funkcióblokkhoz.
a funkcióblokkba a következő kódot illesztjük be.
msg.topic = "SELECT * FROM alarmdata ORDER BY Green1 DESC LIMIT 20"; return msg;
(A zöld1 az első adatváltozó a táblázatban)
ezt a funkcióblokkot akkor össze kell kötni a mysql csomópontunk bemenetével, amelyet korábban ebben a lépésben készítettünk.
7. lépés: Véglegesítés
Most a felhasználói felületünknek tartalmaznia kell adataink élő frissítését és egy táblázatot, amely magáról a szerverünkről származó adatokat tartalmazza.
Ez azt jelenti, hogy létrehoztunk egy kapcsolatot az Arduino, egy felhasználói felületen alapuló program és egy adatbázis között.
Ha érdekli az Arduino riasztórendszer működése, hozzáadtam egy dokumentumot, amely elmagyarázza, hogyan kell programozni és beállítani.
Valamint a csomópont-vörös programozás teljes exportálása.
Ajánlott:
Plug & Play CO2 -érzékelő kijelző csomóponttal MCU/ESP8266 iskoláknak, óvodáknak vagy otthonának: 7 lépés
Plug & Play CO2 -érzékelő kijelző NodeMCU/ESP8266 -mal iskoláknak, óvodáknak vagy otthonának: Megmutatom, hogyan lehet gyorsan kiépíteni a dugót & játssza le a CO2 -érzékelőt, ahol a projekt minden eleme DuPont vezetékekkel lesz csatlakoztatva. Csak 5 pontot kell forrasztani, mert egyáltalán nem forrasztottam a projekt előtt
ESP32 Lora Thingspeak Gateway érzékelő csomóponttal: 9 lépés
ESP32 Lora Thingspeak Gateway érzékelő csomóponttal: ebben az IoT projektben ESP32 LoRa átjárót terveztem & ESP32 LoRa érzékelőcsomópont is, amely néhány kilométeres távolságból vezeték nélkül figyeli az érzékelő leolvasását. A küldő a DHT11 érzékelő segítségével leolvassa a páratartalom és a hőmérséklet adatait. Aztán továbbítja
IOT kezdőknek-csomóponttal Mcu: 7 lépés
IOT kezdőknek-csomóponttal Mcu: Szia, Sam Sam, ebben az oktatóanyagban megtanítom, hogyan hozhat létre saját IOT-projekteket a NODE MCU wifi modul és a Blynk alkalmazás segítségével
IOT nagy hatótávolságú vezeték nélküli hőmérséklet- és páratartalom-érzékelő piros csomóponttal: 27 lépés
IOT nagy hatótávolságú vezeték nélküli hőmérséklet- és páratartalom-érzékelő csomóponttal-piros: Bemutatjuk az NCD nagy hatótávolságú vezeték nélküli hőmérséklet-páratartalom-érzékelőjét, amely akár 28 mérföldes hatótávolsággal büszkélkedhet vezeték nélküli hálózattal. A Honeywell HIH9130 hőmérséklet-páratartalom érzékelő rendkívül pontos hőmérsékletet és
UCL - Piros csomópont csatlakoztatása a Siemens PLC -hez a KEPserver használatával: 7 lépés
UCL-A vörös csomópont csatlakoztatása a Siemens PLC-hez KEP-kiszolgáló használatával: Követelmények Csomópont-vörös: https://nodered.org/docs/getting-started/installationKEPserver: https://www.kepware.com/en-us/kepserverex-6 -6 kiadás