Cuprins:
- Pasul 1: Specificații hardware și software
- Pasul 2: Configurarea senzorului wireless și a receptorului Zigmo utilizând XCTU
- Pasul 3: Analiza wireless a temperaturii și a vibrațiilor folosind utilitarul Labview
- Pasul 4: Configurarea setărilor DHCP / IP statice utilizând Captive Portal
- Pasul 5: Salvarea setărilor WiFi utilizând Captive Portal
- Pasul 6: Publicarea citirilor senzorului pe UbiDots
- Pasul 7: Vizualizarea datelor
Video: Noțiuni introductive despre senzorii de temperatură și vibrații fără fir cu rază lungă de acțiune: 7 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Uneori vibrațiile sunt cauza problemelor grave în multe aplicații. De la arborii și rulmenții mașinii până la performanța hard disk-ului, vibrațiile cauzează deteriorarea mașinii, înlocuirea timpurie, performanța scăzută și provoacă un impact major asupra preciziei. Monitorizarea și analiza periodică a vibrațiilor din mașină pot rezolva problema deteriorării timpurii și a uzurii piesei mașinii.
În acest instructable, vom lucra la senzorii de vibrații și temperatură fără fir IoT pe termen lung. Aceștia sunt senzori industriali cu multe aplicații pe scară largă, cum ar fi.
- Prelucrarea metalelor
- Generarea de energie electrică
- Minerit
- Mancare si bautura
Deci, în acest instructabil vom trece prin următoarele:
- Configurarea senzorilor wireless utilizând XCTU și Labview UI.
- Obținerea valorilor vibrațiilor de la senzor.
- Înțelegerea funcționării dispozitivului xbee și a protocolului xbee.
- Configurarea acreditării WiFi și a configurației IP utilizând portalul captiv
Pasul 1: Specificații hardware și software
Specificații hardware
- Senzori de vibrație și temperatură fără fir
- Receptor Zigmo
- Dispozitiv ESP32 BLE / WiFi
Specificații software
- IDE Arduino
- Utilitarul LabView
Pasul 2: Configurarea senzorului wireless și a receptorului Zigmo utilizând XCTU
Fiecare dispozitiv IoT are nevoie de un protocol de comunicare pentru a pune dispozitivul peste cloud și pentru a configura o interfață wireless între diferite dispozitive.
Aici senzorii fără fir și receptorul Zigmo utilizează soluția XBee cu putere redusă și cu rază lungă de acțiune. XBee folosește un protocol ZigBee care specifică funcționarea în benzile ISM de la 902 la 928 MHz.
Xbee poate fi configurat utilizând software-ul XCTU
- Căutați dispozitivul Xbee sau adăugați un nou dispozitiv Xbee făcând clic pe pictograma din stânga sus.
- Dispozitivul va fi listat pe panoul lateral din stânga.
- faceți dublu clic pe dispozitiv pentru a vedea setările.
- Acum faceți clic pe pictograma consolei din colțul din dreapta sus
- Puteți vedea valoarea care vine pe ieșirea consolei
- Aici obținem cadrul de 54 de octeți
- acești octeți ar fi manipulați în continuare pentru a obține valorile reale. procedura pentru a obține valorile reale ale temperaturii și vibrațiilor sunt menționate în pașii următori.
Pasul 3: Analiza wireless a temperaturii și a vibrațiilor folosind utilitarul Labview
Senzorul rulează în două moduri
- Mod de configurare: configurați ID-ul Pan, întârzierea, numărul de reîncercări etc. Mai multe despre acest lucru depășesc sfera acestui instructable și vor fi explicate în următoarea instructable.
- Run Mode: rulăm dispozitivul în modul Run. Și pentru a analiza aceste valori, folosim utilitarul Labview
Această interfață Labview arată valorile în grafice frumoase. Afișează valorile actuale și trecute. Puteți accesa acest link pentru a descărca interfața de utilizare Labview.
faceți clic pe pictograma Executare din meniul paginii de destinație pentru a accesa modul de rulare.
Pasul 4: Configurarea setărilor DHCP / IP statice utilizând Captive Portal
Folosim portalul captiv pentru a salva datele de conectare WiFi și pentru a naviga prin setările IP. Pentru introducerea detaliată pe portalul captiv, puteți parcurge următoarele instrucțiuni.
Portalul captiv ne oferă opțiunea de a alege între setările Static și DHCP. Introduceți doar acreditările precum IP static, mască de subrețea, gateway și gateway-ul senzorului wireless va fi configurat pe acel IP.
Pasul 5: Salvarea setărilor WiFi utilizând Captive Portal
O pagină web este găzduită în care apare o listă care prezintă rețelele WiFi disponibile și acolo RSSI. Selectați rețeaua WiFi și parola și introduceți trimitere. Acreditările vor fi salvate în EEPROM și setarea IP va fi salvată în SPIFFS. Mai multe despre acest lucru pot fi găsite în acest instructable.
Pasul 6: Publicarea citirilor senzorului pe UbiDots
Aici folosim senzori de temperatură și vibrații fără fir cu receptorul gateway ESP 32 pentru a obține datele de temperatură și umiditate. Trimitem datele către UbiDots folosind protocolul MQTT. MQTT urmărește mai degrabă un mecanism de publicare și abonare care solicită și răspunde. Este mai rapid și mai fiabil decât HTTP. Acest lucru funcționează după cum urmează.
Citirea datelor senzorului wireless
Obținem un cadru de 29 de octeți de la senzorii de temperatură și vibrații fără fir. Acest cadru este manipulat pentru a obține temperatura reală și datele despre vibrații
if (Serial2.available ()) {data [0] = Serial2.read (); întârziere (k); if (date [0] == 0x7E) {Serial.println ("Got Packet"); while (! Serial2.available ()); for (i = 1; i <55; i ++) {data = Serial2.read (); întârziere (1); } if (data [15] == 0x7F) /////// pentru a verifica dacă datele de recepție sunt corecte {if (data [22] == 0x08) //////// asigurați-vă că tipul senzorului este corect {rms_x = ((uint16_t) (((date [24]) << 16) + ((date [25]) << 8) + (data [26])) / 100); rms_y = ((uint16_t) (((date [27]) << 16) + ((date [28]) << 8) + (data [29])) / 100); rms_z = ((uint16_t) (((date [30]) << 16) + ((date [31]) << 8) + (date [32])) / 100); max_x = ((uint16_t) (((date [33]) << 16) + ((date [34]) << 8) + (date [35])) / 100); max_y = ((uint16_t) (((date [36]) << 16) + ((date [37]) << 8) + (data [38])) / 100); max_z = ((uint16_t) (((date [39]) << 16) + ((date [40]) << 8) + (date [41])) / 100);
min_x = ((uint16_t) (((date [42]) << 16) + ((date [43]) << 8) + (data [44])) / 100); min_y = ((uint16_t) (((date [45]) << 16) + ((date [46]) << 8) + (date [47])) / 100); min_z = ((uint16_t) (((date [48]) << 16) + ((date [49]) << 8) + (date [50])) / 100);
cTemp = ((((date [51]) * 256) + date [52])); baterie plutitoare = ((date [18] * 256) + date [19]); tensiune plutitoare = 0,00322 * baterie; Serial.print („Număr senzor”); Serial.println (date [16]); Serial.print („Tip senzor”); Serial.println (date [22]); Serial.print („Versiunea firmware”); Serial.println (date [17]); Serial.print ("Temperatura în grade Celsius:"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Vibrația RMS în axa X:"); Serial.print (rms_x); Serial.println ("mg"); Serial.print ("Vibrația RMS în axa Y:"); Serial.print (rms_y); Serial.println ("mg"); Serial.print ("Vibrația RMS în axa Z:"); Serial.print (rms_z); Serial.println ("mg");
Serial.print ("Vibrație minimă pe axa X:");
Serial.print (min_x); Serial.println ("mg"); Serial.print ("Vibrație minimă pe axa Y:"); Serial.print (min_y); Serial.println ("mg"); Serial.print ("Vibrație minimă pe axa Z:"); Serial.print (min_z); Serial.println ("mg");
Serial.print ("valoare ADC:");
Serial.println (baterie); Serial.print ("Tensiunea bateriei:"); Serial.print (tensiune); Serial.println ("\ n"); if (tensiune <1) {Serial.println ("Timpul de înlocuire a bateriei"); }}} else {for (i = 0; i <54; i ++) {Serial.print (data ); Serial.print (","); întârziere (1); }}}}
Conectarea la API-ul UbiDots MQTT
Includeți fișierul antet pentru procesul MQTT
#include „PubSubClient.h”
definiți alte variabile pentru MQTT, cum ar fi numele clientului, adresa brokerului, ID-ul simbolului (preluăm ID-ul simbolului din EEPROM)
#define MQTT_CLIENT_NAME "ClientVBShightime123" char mqttBroker = "things.ubidots.com"; sarcină utilă char [100]; subiect char [150]; // creați o variabilă pentru a stoca ID-ul simbolului String tokenId;
Creați variabile pentru a stoca diferite date ale senzorilor și creați o variabilă char pentru a stoca subiectul
char topic1 [100];
char topic2 [100]; char topic3 [100];
publicați datele pe subiectul MQTT menționat, sarcina utilă va arăta ca {"tempc": {value: "tempData"}}
sprintf (topic1, "% s", ""); sprintf (topic1, "% s% s", "/v1.6/devices/", DEVICE_LABEL); sprintf (sarcină utilă, "% s", "");
// Curăță sarcina utilă sprintf (sarcină utilă, "{"% s / ":", VARIABLE_LABEL_TEMPC);
// Adaugă valoarea sprintf (sarcină utilă, "% s {" valoare / ":% s}", sarcină utilă, str_cTemp);
// Adaugă valoarea sprintf (sarcină utilă, "% s}", sarcină utilă);
// Închide parantezele dicționarului Serial.println (sarcină utilă);
Serial.println (client.publish (topic1, payload)? "Published": "nepublicat");
// Faceți același lucru și pentru alte subiecte
client.publish () publică datele în UbiDots
Pasul 7: Vizualizarea datelor
- Accesați Ubidots și conectați-vă la contul dvs.
- Navigați la Tabloul de bord din fila Date listată în partea de sus.
- Acum faceți clic pe pictograma „+” pentru a adăuga noile widgeturi.
- Selectați un widget din listă și adăugați o variabilă și dispozitive.
- Datele senzorului pot fi vizualizate pe tabloul de bord folosind diferite widget-uri.
Cod general
Codul Over pentru HTML și ESP32 poate fi găsit în acest depozit GitHub.
- ncd ESP32 board breakout.
- Senzori de temperatură și umiditate fără fir ncd.
- pubsubclient
- UbiDots
Recomandat:
IoT- Ubidots- ESP32 + Senzor de vibrații și temperatură fără fir cu rază lungă de acțiune: 7 pași
IoT- Ubidots- ESP32 + Senzor de vibrație și temperatură fără fir cu rază lungă de viață: vibrația este cu adevărat o mișcare înainte sau înapoi - sau oscilație - a mașinilor și componentelor din gadgeturile motorizate. Vibrația din sistemul industrial poate fi un simptom sau motiv al unei bătăi de cap sau poate fi asociată cu funcționarea zilnică. De exemplu, osci
ThingSpeak, ESP32 și temperatură și umiditate fără fir cu rază lungă de acțiune: 5 pași
ThingSpeak, ESP32 și temperatură și umiditate fără fir cu rază lungă de acțiune: În acest tutorial, vom măsura diferite date de temperatură și umiditate folosind senzorul de temperatură și umiditate. De asemenea, veți afla cum să trimiteți aceste date către ThingSpeak. Astfel încât să îl puteți analiza de oriunde pentru diferite aplicații
Senzor de temperatură și umiditate fără fir IOT cu rază lungă de acțiune cu roșu nod: 27 de pași
Senzor de temperatură și umiditate fără fir cu rază lungă de acțiune IOT cu roșu nod: Introducerea senzorului de temperatură și umiditate fără fir cu rază lungă de acțiune al NCD, oferind o gamă de până la 28 de mile utilizând o arhitectură de rețea fără fir cu plasă. Incorporarea senzorului de temperatură-umiditate Honeywell HIH9130 transmite o temperatură foarte precisă și
Noțiuni introductive despre AWS IoT cu senzor de temperatură fără fir folosind MQTT: 8 pași
Noțiuni introductive despre AWS IoT cu senzor de temperatură wireless Folosind MQTT: în Instructables anterioare, am trecut prin diferite platforme cloud, cum ar fi Azure, Ubidots, ThingSpeak, Losant etc. Am folosit protocolul MQTT pentru a trimite datele senzorului în cloud în aproape toată platforma cloud. Pentru mai multe informații
Indicator de nivel al apei fără fir cu rază lungă de acțiune - Autonomie Până la 1 Km - Șapte niveluri: 7 pași
Indicator de nivel al apei fără fir cu rază lungă de acțiune | Autonomie Până la 1 Km | Șapte niveluri: Urmăriți-l pe Youtube: https://youtu.be/vdq5BanVS0Y Este posibil să fi văzut mulți indicatori de nivel de apă cu fir și fără fir care ar oferi o autonomie de până la 100 până la 200 de metri. Dar, în această instrucțiune, veți vedea o indicație a nivelului de apă fără fir pe distanță lungă