Taula de continguts:
- Pas 1: Especificació de maquinari i programari
- Pas 2: Configuració del sensor sense fil i del receptor Zigmo mitjançant XCTU
- Pas 3: Anàlisi de valors de temperatura i vibració sense fils mitjançant la utilitat Labview
- Pas 4: Configuració de la configuració de DHCP / IP estàtica mitjançant Captive Portal
- Pas 5: desar la configuració de WiFi mitjançant Captive Portal
- Pas 6: Publicació de lectures de sensors a UbiDots
- Pas 7: visualització de les dades
Vídeo: Introducció als sensors de vibració i temperatura sense fils de llarg abast: 7 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
De vegades, la vibració és la causa de problemes greus en moltes aplicacions. Des dels eixos i coixinets de la màquina fins al rendiment del disc dur, la vibració provoca danys a la màquina, substitució precoç, baix rendiment i influeix en un gran èxit en la precisió. El control i l’anàlisi puntual de les vibracions a la màquina poden resoldre el problema dels danys primerencs i el desgast de la peça de la màquina.
En aquest instructiu, treballarem en els sensors sense fils de vibració i temperatura IoT de llarg abast. Es tracta de sensors de grau industrial amb moltes aplicacions generalitzades com.
- Metall
- Generació d'energia
- Mineria
- Aliments i begudes
Per tant, en aquest instructiu passarem pel següent:
- Configuració de sensors sense fils mitjançant XCTU i Labview UI.
- Obtenir els valors de vibració del sensor.
- Comprensió del funcionament del dispositiu xbee i del protocol xbee.
- Configuració de les credencials WiFi i la configuració d’IP mitjançant el portal captiu
Pas 1: Especificació de maquinari i programari
Especificació de maquinari
- Sensors de vibració i temperatura sense fils
- Receptor Zigmo
- Dispositiu ESP32 BLE / WiFi
Especificació de programari
- IDE Arduino
- Utilitat LabView
Pas 2: Configuració del sensor sense fil i del receptor Zigmo mitjançant XCTU
Cada dispositiu IoT necessita un protocol de comunicació per posar el dispositiu sobre el núvol i configurar una interfície sense fils entre diferents dispositius.
Aquí, els sensors sense fils i el receptor Zigmo utilitzen la solució XBee de baix consum i de llarg abast. XBee utilitza un protocol ZigBee que especifica el funcionament en bandes ISM de 902 a 928 MHz.
Xbee es pot configurar mitjançant el programari XCTU
- Cerqueu el dispositiu Xbee o afegiu un dispositiu Xbee nou fent clic a la icona superior esquerra.
- El dispositiu apareixerà al tauler esquerre.
- feu doble clic al dispositiu per veure la configuració.
- Ara feu clic a la icona de la consola a l'extrem superior dret
- Podeu veure el valor que ve a la sortida de la consola
- Aquí obtenim el fotograma de 54 bytes de longitud
- aquests bytes serien manipulats encara més per obtenir els valors reals. el procediment per obtenir els valors reals de temperatura i vibració s’esmenta en els propers passos.
Pas 3: Anàlisi de valors de temperatura i vibració sense fils mitjançant la utilitat Labview
El sensor funciona en dos modes
- Mode de configuració: configureu l'identificador de panoràmica, el retard, el nombre de reintents, etc. Més informació sobre això està fora de l'abast d'aquesta instrucció i s'explicarà a la següent instrucció.
- Mode d'execució: estem executant el dispositiu en mode d'execució. I per analitzar aquest valor estem utilitzant la utilitat Labview
Aquesta interfície d’usuari de Labview mostra els valors en gràfics agradables. Mostra els valors actuals i passats. Podeu anar a aquest enllaç per descarregar la interfície d’usuari de Labview.
feu clic a la icona Executa al menú de la pàgina de destinació per anar al mode d'execució.
Pas 4: Configuració de la configuració de DHCP / IP estàtica mitjançant Captive Portal
Estem utilitzant el portal captiu per desar les credencials de WiFi i passar el cursor a través de la configuració d’IP. Per obtenir una introducció detallada al portal captiu, podeu consultar les instruccions següents.
El portal captiu ens ofereix l'opció de triar entre la configuració estàtica i DHCP. Només cal que introduïu les credencials com ara IP estàtica, màscara de subxarxa, passarel·la i la passarel·la del sensor sense fils es configurarà en aquesta IP.
Pas 5: desar la configuració de WiFi mitjançant Captive Portal
S’està allotjant una pàgina web on hi ha una llista que mostra les xarxes WiFi disponibles i allà el RSSI. Seleccioneu la xarxa WiFi i la contrasenya i introduïu enviar. Les credencials es desaran a EEPROM i la configuració IP es desarà a SPIFFS. Podeu trobar més informació sobre això en aquest instructiu.
Pas 6: Publicació de lectures de sensors a UbiDots
Aquí fem servir sensors de vibració i temperatura sense fils amb el receptor de passarel·la ESP 32 per obtenir les dades de temperatura i humitat. Enviem les dades a UbiDots mitjançant el protocol MQTT. MQTT segueix un mecanisme de publicació i subscripció més que la sol·licitud i la resposta. És més ràpid i fiable que HTTP. Això funciona de la següent manera.
Lectura de les dades del sensor sense fils
Obtenim un marc de 29 bytes dels sensors de temperatura i vibració sense fils. Aquest marc es manipula per obtenir les dades de temperatura i vibracions reals
if (Serial2.available ()) {data [0] = Serial2.read (); retard (k); if (dades [0] == 0x7E) {Serial.println ("Got Packet"); while (! Serial2.available ()); for (i = 1; i <55; i ++) {data = Serial2.read (); retard (1); } if (dades [15] == 0x7F) /////// per comprovar si les dades de recepció són correctes {if (dades [22] == 0x08) //////// assegureu-vos que el tipus de sensor és correcte {rms_x = ((uint16_t) (((dades [24]) << 16) + ((dades [25]) << 8) + (dades [26])) / 100); rms_y = ((uint16_t) (((dades [27]) << 16) + ((dades [28]) << 8) + (dades [29])) / 100); rms_z = ((uint16_t) (((dades [30]) << 16) + ((dades [31]) << 8) + (dades [32])) / 100); max_x = ((uint16_t) (((dades [33]) << 16) + ((dades [34]) << 8) + (dades [35])) / 100); max_y = ((uint16_t) (((dades [36]) << 16) + ((dades [37]) << 8) + (dades [38])) / 100); max_z = ((uint16_t) (((dades [39]) << 16) + ((dades [40]) << 8) + (dades [41])) / 100);
min_x = ((uint16_t) (((dades [42]) << 16) + ((dades [43]) << 8) + (dades [44])) / 100); min_y = ((uint16_t) (((dades [45]) << 16) + ((dades [46]) << 8) + (dades [47])) / 100); min_z = ((uint16_t) (((dades [48]) << 16) + ((dades [49]) << 8) + (dades [50])) / 100);
cTemp = (((((dades [51]) * 256) + dades [52])); bateria flotant = ((dades [18] * 256) + dades [19]); tensió flotant = 0,00322 * bateria; Serial.print ("Número del sensor"); Serial.println (dades [16]); Serial.print ("Tipus de sensor"); Serial.println (dades [22]); Serial.print ("Versió del firmware"); Serial.println (dades [17]); Serial.print ("Temperatura en centígrads"); Serial.print (cTemp); Serial.println ("C"); Serial.print ("Vibració RMS a l'eix X:"); Serial.print (rms_x); Serial.println ("mg"); Serial.print ("Vibració RMS a l'eix Y:"); Serial.print (rms_y); Serial.println ("mg"); Serial.print ("Vibració RMS a l'eix Z:"); Serial.print (rms_z); Serial.println ("mg");
Serial.print ("Vibració mínima a l'eix X:");
Serial.print (min_x); Serial.println ("mg"); Serial.print ("Vibració mínima a l'eix Y:"); Serial.print (min_y); Serial.println ("mg"); Serial.print ("Vibració mínima a l'eix Z:"); Serial.print (min_z); Serial.println ("mg");
Serial.print ("valor ADC:");
Serial.println (bateria); Serial.print ("Voltatge de la bateria"); Serial.print (voltatge); Serial.println ("\ n"); if (tensió <1) {Serial.println ("Temps per substituir la bateria"); }}} else {for (i = 0; i <54; i ++) {Serial.print (dades ); Serial.print (","); retard (1); }}}}
Connexió a l'API UbiDots MQTT
Incloeu el fitxer de capçalera per al procés MQTT
#include "PubSubClient.h"
definiu altres variables per a MQTT com el nom del client, l'adreça del corredor, l'identificador del testimoni (estem recuperant l'identificador del testimoni a EEPROM)
#define MQTT_CLIENT_NAME "ClientVBShightime123" char mqttBroker = "things.ubidots.com"; càrrega útil char [100]; tema char [150]; // crear una variable per emmagatzemar l'identificador de testimoni String tokenId;
Creeu variables per emmagatzemar diferents dades del sensor i creeu una variable de caràcter per emmagatzemar el tema
#define VARIABLE_LABEL_TEMPF "tempF" // Assignació de l'etiqueta de variable # define VARIABLE_LABEL_TEMPC "tempC" // Assignació de l'etiqueta de variable #define VARIABLE_LABEL_BAT "bat" #define VARIABLE_LABEL_HUMID "humid" // Assignació de l'etiqueta de variable
char topic1 [100];
char topic2 [100]; char topic3 [100];
publiqueu les dades al tema MQTT esmentat, la càrrega útil tindrà l'aspecte de {"tempc": {value: "tempData"}}
sprintf (tema1, "% s", ""); sprintf (tema1, "% s% s", "/v1.6/devices/", DEVICE_LABEL); sprintf (càrrega útil, "% s", "");
// Neteja la càrrega útil sprintf (càrrega útil, "{"% s / ":", VARIABLE_LABEL_TEMPC);
// Afegeix el valor sprintf (càrrega útil, "% s {" valor / ":% s}", càrrega útil, str_cTemp);
// Afegeix el valor sprintf (càrrega útil, "% s}", càrrega útil);
// Tanca els claudàtors del diccionari Serial.println (càrrega útil);
Serial.println (client.publish (tema1, càrrega útil)? "Published": "no publicat");
// Feu el mateix amb altres temes
client.publish () publica les dades a UbiDots
Pas 7: visualització de les dades
- Aneu a Ubidots i inicieu la sessió al vostre compte.
- Aneu al tauler de control des de la pestanya Dades que apareix a la part superior.
- Ara feu clic a la icona "+" per afegir els ginys nous.
- Seleccioneu un widget de la llista i afegiu una variable i dispositius.
- Les dades del sensor es poden visualitzar al tauler de control mitjançant diferents widgets.
Codi general
El codi Over per a HTML i ESP32 es pot trobar en aquest dipòsit de GitHub.
- tauler de ruptura ESP32 ncd.
- Sensors de temperatura i humitat sense fils ncd.
- pubsubclient
- UbiDots
Recomanat:
IoT- Ubidots- ESP32 + Sensor de vibració i temperatura sense fils de llarg abast: 7 passos
IoT- Ubidots- ESP32 + Sensor de vibració i temperatura sense fils de llarg abast: la vibració és realment un moviment o oscil·lació d’anada i tornada de màquines i components en aparells motoritzats. La vibració en el sistema industrial pot ser un símptoma o motiu d’una molèstia o es pot associar a un funcionament quotidià. Per exemple, osci
IoT - ThingSpeak - ESP32-Vibració i temperatura sense fils de llarg abast: 6 passos
IoT - ThingSpeak - ESP32-Long-Range-Wireless-Vibration-And-Temp: En aquest projecte, mesurarem la vibració i la temperatura mitjançant sensors de vibració i temperatura NCD, Esp32, ThingSpeak. La vibració és realment un moviment d’anada i volta - de màquines i components en aparells motoritzats. Vibracions al i
ThingSpeak, ESP32 i temperatura i humitat sense fils de llarg abast: 5 passos
ThingSpeak, ESP32 i temperatura i humitat sense fils de llarg abast: en aquest tutorial, mesurarem diferents dades de temperatura i humitat mitjançant el sensor de temperatura i humitat. També aprendreu a enviar aquestes dades a ThingSpeak. De manera que pugueu analitzar-lo des de qualsevol lloc per a diferents aplicacions
Enviament de dades del sensor de temperatura i humitat sense fils de llarg abast de l'IoT al full de Google: 39 passos
Enviament de dades del sensor de temperatura i humitat sense fils de llarg abast de l'IoT al full de Google: aquí estem utilitzant el sensor de temperatura i humitat de NCD, però els passos són iguals per a qualsevol dels productes ncd, de manera que si teniu altres sensors sense fils ncd, no dubteu a observar-ho al costat a més. Mitjançant l’aturada d’aquest text, heu de
Indicador de nivell d'aigua sense fils de llarg abast amb alarma - Abast fins a 1 km - Set nivells: 7 passos
Indicador de nivell d'aigua sense fils de llarg abast amb alarma | Abast fins a 1 km | Set nivells: mireu-lo a Youtube: https://youtu.be/vdq5BanVS0Y És possible que hàgiu vist molts indicadors de nivell d’aigua per cable i sense fils que proporcionarien un abast de fins a 100 a 200 metres. Però en aquest instructiu, veureu un indicador de nivell d'aigua sense fils de llarg abast