Tartalomjegyzék:

Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel: 7 lépés
Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel: 7 lépés

Videó: Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel: 7 lépés

Videó: Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel: 7 lépés
Videó: EnergoTeam színes kijelzős vezeték nélküli halradar 2024, November
Anonim
Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel
Első lépések a nagy hatótávolságú vezeték nélküli hőmérséklet- és rezgésérzékelőkkel

Néha a vibráció komoly problémák okozója sok alkalmazásban. A géptengelyektől és csapágyaktól a merevlemez teljesítményéig a rezgés a gép károsodását, korai cseréjét, gyenge teljesítményét okozza, és nagy hatást gyakorol a pontosságra. A gép vibrációinak megfigyelése és időnkénti elemzése megoldhatja a gépalkatrészek korai károsodásának és elhasználódásának problémáját.

Ebben az utasításban az IoT nagy hatótávolságú vezeték nélküli rezgés- és hőmérséklet-érzékelőin fogunk dolgozni. Ezek ipari minőségű érzékelők, amelyek széles körben elterjedtek.

  • Fémmegmunkálás
  • Áramtermelés
  • Bányászati
  • Étel és ital

Tehát ebben az utasításban a következőkön megyünk keresztül:

  • Vezeték nélküli érzékelők konfigurálása XCTU és Labview felhasználói felület használatával.
  • A rezgés értékeinek leolvasása az érzékelőből.
  • Az xbee eszköz és az xbee protokoll működésének megértése.
  • A WiFi hitelesítő adatok és az IP -konfiguráció konfigurálása a rögzített portál használatával

1. lépés: Hardver és szoftver specifikáció

Hardver és szoftver specifikáció
Hardver és szoftver specifikáció
Hardver és szoftver specifikáció
Hardver és szoftver specifikáció
Hardver és szoftver specifikáció
Hardver és szoftver specifikáció

Hardver specifikáció

  • Vezeték nélküli rezgés- és hőmérséklet -érzékelők
  • Zigmo vevő
  • ESP32 BLE/ WiFi eszköz

Szoftver specifikáció

  • Arduino IDE
  • LabView segédprogram

2. lépés: A vezeték nélküli érzékelő és a Zigmo vevő konfigurálása az XCTU használatával

A vezeték nélküli érzékelő és a Zigmo vevő konfigurálása az XCTU használatával
A vezeték nélküli érzékelő és a Zigmo vevő konfigurálása az XCTU használatával
A vezeték nélküli érzékelő és a Zigmo vevő konfigurálása az XCTU használatával
A vezeték nélküli érzékelő és a Zigmo vevő konfigurálása az XCTU használatával

Minden IoT -eszköznek szüksége van egy kommunikációs protokollra, hogy az eszközt felhőre helyezze, és vezeték nélküli interfészt állítson be a különböző eszközök között.

Itt a vezeték nélküli érzékelők és a Zigmo vevőegység alacsony fogyasztású és nagy hatótávolságú XBee megoldást használ. Az XBee ZigBee protokollt használ, amely a műveletet 902–928 MHz -es ISM -sávokban határozza meg.

Az Xbee az XCTU szoftverrel konfigurálható

  1. Keresse meg az Xbee eszközt, vagy adjon hozzá új Xbee eszközt a bal felső sarokban található ikonra kattintva.
  2. Az eszköz megjelenik a bal oldali panelen.
  3. kattintson duplán a készülékre a beállítások megtekintéséhez.
  4. Most kattintson a konzol ikonra a jobb felső sarokban
  5. Láthatja az értéket a konzol kimenetén
  6. Itt kapjuk meg az 54 bájtos keretet
  7. ezeket a bájtokat tovább manipulálják, hogy megkapják a valódi értékeket. az eljárást a valós hőmérséklet- és rezgésértékek lekérésére a következő lépések tartalmazzák.

3. lépés: Vezeték nélküli hőmérséklet- és rezgésértékek elemzése a Labview Utility segítségével

Vezeték nélküli hőmérséklet- és rezgésértékek elemzése a Labview Utility segítségével
Vezeték nélküli hőmérséklet- és rezgésértékek elemzése a Labview Utility segítségével
Vezeték nélküli hőmérséklet- és rezgésértékek elemzése a Labview Utility segítségével
Vezeték nélküli hőmérséklet- és rezgésértékek elemzése a Labview Utility segítségével

Az érzékelő két üzemmódban működik

  • Konfigurációs mód: Konfigurálja a Pan azonosítót, késleltetést, az újbóli próbálkozások számát stb. Erről bővebben az utasítás nem terjed ki, és ezt a következő utasításban ismertetjük.
  • Futtatás mód: Futtatás üzemmódban futtatjuk az eszközt. Ezen értékek elemzéséhez pedig a Labview segédprogramot használjuk

Ez a Labview felhasználói felület szép grafikonokon mutatja az értékeket. Mutatja a jelenlegi és a korábbi értékeket. Erre a linkre kattintva letöltheti a Labview felhasználói felületét.

kattintson a Futtatás ikonra a céloldal menüjében, hogy futási módba lépjen.

4. lépés: A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával

A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával
A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával
A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával
A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával
A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával
A DHCP/statikus IP -beállítások konfigurálása a Captive Portal használatával

A rögzített portált használjuk a WiFi hitelesítő adatok mentésére és az IP -beállítások lebegésére. A Capture Portal részletes bevezetéséhez az alábbi utasításokat olvashatja.

A rögzített portál lehetőséget kínál a statikus és a DHCP beállítások közötti választásra. Csak adja meg a hitelesítő adatokat, például a statikus IP -t, az alhálózati maszkot, az átjárót és a vezeték nélküli érzékelő átjárót az adott IP -címen.

5. lépés: A WiFi beállítások mentése a Captive Portal használatával

A WiFi beállítások mentése a Captive Portal használatával
A WiFi beállítások mentése a Captive Portal használatával

Egy weboldal található, ahol az elérhető WiFi hálózatok és az RSSI listája látható. Válassza ki a WiFi hálózatot és a jelszót, majd írja be a Küldés gombot. A hitelesítő adatok az EEPROM -ba kerülnek mentésre, az IP -beállítás pedig a SPIFFS -be. Erről bővebben ebben az oktatóanyagban olvashat.

6. lépés: Az érzékelői leolvasások közzététele az UbiDots rendszerben

Itt vezeték nélküli hőmérséklet- és rezgésérzékelőket használunk az ESP 32 gateway vevővel a hőmérséklet- és páratartalom -adatok lekéréséhez. Az adatokat az UbiDots -nak küldjük az MQTT protokoll használatával. Az MQTT egy közzétételi és feliratkozási mechanizmust követ, nem pedig ezt a kérést és választ. Gyorsabb és megbízhatóbb, mint a HTTP. Ez a következőképpen működik.

A vezeték nélküli érzékelő adatainak beolvasása

29 bájtos keretet kapunk a vezeték nélküli hőmérséklet- és rezgésérzékelőktől. Ezt a keretet manipulálják, hogy megkapják a tényleges hőmérséklet- és rezgésadatokat

if (Serial2.available ()) {data [0] = Serial2.read (); késleltetés (k); if (adatok [0] == 0x7E) {Serial.println ("Megvan a csomag"); while (! Serial2.available ()); for (i = 1; i <55; i ++) {data = Sorozat2.olvasás (); késleltetés (1); } if (data [15] == 0x7F) /////// annak ellenőrzésére, hogy a recive adatok helyesek -e {if (data [22] == 0x08) //////// győződjön meg arról, hogy az érzékelő típusa helyes {rms_x = ((uint16_t) (((

min_x = ((uint16_t) (((adatok [42]) << 16) + ((adatok [43]) << 8) + (adatok [44]))/100); min_y = ((uint16_t) (((adatok [45]) << 16) + ((adatok [46]) << 8) + (adatok [47]))/100); min_z = ((uint16_t) (((adatok [48]) << 16) + ((adatok [49]) << 8) + (adatok [50]))/100);

cTemp = (((([adatok] [51]) * 256) + adatok [52])); úszó akkumulátor = ((adatok [18] * 256) + adatok [19]); úszó feszültség = 0,00322 * akkumulátor; Serial.print ("Érzékelő száma"); Serial.println (adatok [16]); Serial.print ("Érzékelő típusa"); Serial.println (adatok [22]); Serial.print ("Firmware verzió"); Serial.println (adatok [17]); Serial.print ("Hőmérséklet Celsius -ban:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("RMS rezgés X-tengelyen:"); Soros.nyomtatás (rms_x); Soros.println ("mg"); Serial.print ("RMS rezgés Y tengelyen:"); Soros.nyomat (rms_y); Soros.println ("mg"); Serial.print ("RMS rezgés Z-tengelyen:"); Soros.nyomtatás (rms_z); Soros.println ("mg");

Serial.print ("Min. Rezgés az X tengelyen:");

Soros.nyomtatás (min_x); Soros.println ("mg"); Serial.print ("Min. Rezgés az Y tengelyen:"); Soros.nyomtatás (min_y); Soros.println ("mg"); Serial.print ("Min. Rezgés Z-tengelyen:"); Soros.nyomtatás (min_z); Soros.println ("mg");

Serial.print ("ADC érték:");

Soros.println (akkumulátor); Serial.print ("Akkumulátor feszültsége:"); Soros.nyomat (feszültség); Serial.println ("\ n"); if (feszültség <1) {Serial.println ("Az akkumulátor cseréjének ideje"); }}} else {for (i = 0; i <54; i ++) {Serial.print (data ); Serial.print (","); késleltetés (1); }}}}

Csatlakozás az UbiDots MQTT API -hoz

Tartalmazza a fejlécfájlt az MQTT folyamathoz

#include "PubSubClient.h"

definiáljon más változókat az MQTT számára, mint például az ügyfél neve, a bróker címe, a token azonosítója (A token azonosítót az EEPROM -ból kérjük le)

#define MQTT_CLIENT_NAME "ClientVBShightime123" char mqttBroker = "things.ubidots.com"; szén hasznos terhelés [100]; char téma [150]; // változó létrehozása a token azonosító tárolásához String tokenId;

Hozzon létre változókat a különböző érzékelőadatok tárolásához, és hozzon létre egy char változót a téma tárolásához

#define VARIABLE_LABEL_TEMPF "tempF" // A változó címke hozzárendelése #define VARIABLE_LABEL_TEMPC "tempC" // A változócímke hozzárendelése #define VARIABLE_LABEL_BAT "bat" #define VARIABLE_LABEL_HUMID "nedves címke" // Assing

char topic1 [100];

char topic2 [100]; char topic3 [100];

tegye közzé az adatokat az említett MQTT témában, a hasznos terhelés {{tempc”: {value:" tempData "}}

sprintf (topic1, "%s", ""); sprintf (topic1, "%s%s", "/v1.6/devices/", DEVICE_LABEL); sprintf (hasznos teher, "%s", "");

// Megtisztítja a hasznos terhelést sprintf (hasznos terhelés, "{"%s / ":", VARIABLE_LABEL_TEMPC);

// hozzáadja a sprintf értéket (hasznos terhelés, "%s {" érték / ":%s}", hasznos terhelés, str_cTemp);

// hozzáadja a sprintf értéket (hasznos terhelés, "%s}", hasznos terhelés);

// Bezárja a szótár zárójeleit Serial.println (hasznos terhelés);

Serial.println (kliens.publish (topic1, hasznos terhelés)? "Published": "notpublished");

// Ugyanezt tegye más témában is

A client.publish () közzéteszi az adatokat az UbiDots rendszerben

7. lépés: Az adatok megjelenítése

Az adatok vizualizálása
Az adatok vizualizálása
  • Lépjen az Ubidots oldalra, és jelentkezzen be fiókjába.
  • Navigáljon az Irányítópulthoz az adatlap tetején.
  • Most kattintson a "+" ikonra az új modulok hozzáadásához.
  • Válasszon ki egy widgetet a listából, és adjon hozzá egy változót és eszközöket.
  • Az érzékelőadatok a vezérlőpulton különböző widgetek segítségével jeleníthetők meg.

Általános kód

A HTML és az ESP32 Over kódja megtalálható ebben a GitHub adattárban.

  1. ncd ESP32 kitörő tábla.
  2. ncd Vezeték nélküli hőmérséklet- és páratartalom -érzékelők.
  3. pubsubclient
  4. UbiDots

Ajánlott: