Tabla de contenido:
- Paso 1: Recursos utilizados
- Paso 2: demostración
- Paso 3: Celdas de carga
- Paso 4: Celdas de carga y galgas extensiométricas
- Paso 5: Puente de Wheatstone
- Paso 6: amplificación
- Paso 7: Amplificación (esquema)
- Paso 8: recopilación de datos para la calibración
- Paso 9: Obtención de la relación de funciones entre la masa medida y el valor del ADC obtenido
- Paso 10: código fuente
- Paso 11: Iniciar y medir
- Paso 12: Archivos
Video: Báscula digital con ESP32: 12 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
¿Alguna vez pensó en montar una báscula digital usando un ESP32 y un sensor (conocido como celda de carga)? Hoy te mostraré cómo hacer esto a través de un proceso que también permite otras pruebas de laboratorio, como identificar la fuerza que realiza un motor en un punto, entre otros ejemplos.
Luego demostraré algunos conceptos relacionados con el uso de celdas de carga, capturaré datos de celdas para construir una báscula de ejemplo y señalaré otras posibles aplicaciones de las celdas de carga.
Paso 1: Recursos utilizados
• Heltec Lora 32 WiFi ESP
• Celda de carga (0 a 50 newtons, usando una báscula)
• 1 potenciómetro de 100k (mejor si usa un potenciómetro multivoltio para un ajuste fino)
• 1 amperio Op LM358
• 2 resistencias de 1M5
• 2 resistencias de 10k
• 1 resistencia de 4k7
• Alambres
• Un protoboard
• Un cable USB para ESP
• Una báscula, recipiente con volumen graduado o cualquier otro método de calibración.
Paso 2: demostración
Paso 3: Celdas de carga
• Son transductores de fuerza.
• Pueden usar varios métodos para traducir la fuerza aplicada en una magnitud proporcional que se puede usar como medida. Entre los más habituales se encuentran los que utilizan extensómetros de chapa, EL efecto piezoeléctrico, hidráulicos, cuerdas vibrantes, etc…
• También se pueden clasificar por la forma de medición (tensión o compresión)
Paso 4: Celdas de carga y galgas extensiométricas
• Los extensómetros de láminas son películas (generalmente de plástico) con un alambre impreso que tienen una resistencia que puede variar con su cambio de tamaño.
• Su construcción tiene como objetivo principal convertir una deformación mecánica en una variación de magnitud eléctrica (resistencia). Esto ocurre preferiblemente en una sola dirección, de modo que se pueda realizar la evaluación de componentes. Para ello es habitual la combinación de varios extensómetros
• Cuando se fija correctamente a un cuerpo, su deformación es igual a la del cuerpo. Así, su resistencia varía con la deformación del cuerpo, que a su vez está relacionada con la fuerza deformante.
• También se conocen como galgas extensométricas.
• Cuando se estira mediante una fuerza de tracción, las hebras se alargan y estrechan, aumentando la resistencia.
• Cuando se comprime por una fuerza de compresión, los cables se acortan y ensanchan, reduciendo la resistencia.
Paso 5: Puente de Wheatstone
• Para una medición más precisa y para permitir una detección más eficiente de la variación de resistencia en una celda de carga, la galga extensométrica se ensambla en un puente de Wheatstone.
• En esta configuración, podemos determinar la variación de la resistencia a través del desequilibrio del puente.
• Si R1 = Rx y R2 = R3, los divisores de voltaje serán iguales y los voltajes Vc y Vb también serán iguales, con el puente en equilibrio. Es decir, Vbc = 0V;
• Si Rx es diferente a R1, el puente estará desequilibrado y el voltaje Vbc será distinto de cero.
• Es posible mostrar cómo debe ocurrir esta variación, pero aquí realizaremos una calibración directa, relacionando el valor leído en el ADC con una masa aplicada a la celda de carga.
Paso 6: amplificación
• Incluso usando el puente de Wheatstone para hacer la lectura más eficiente, las microdeformaciones en el metal de la celda de carga producen pequeñas variaciones de voltaje entre Vbc.
• Para solucionar esta situación, utilizaremos dos etapas de amplificación. Uno para determinar la diferencia y otro para igualar el valor obtenido con el ADC del ESP.
Paso 7: Amplificación (esquema)
• La ganancia del paso de resta viene dada por R6 / R5 y es la misma que R7 / R8.
• La ganancia del paso final no inversor viene dada por Pot / R10
Paso 8: recopilación de datos para la calibración
• Una vez ensamblado, establecemos la ganancia final de modo que el valor de la mayor masa medida esté cerca del valor máximo del ADC. En este caso, por 2 kg aplicados en la celda, el voltaje de salida fue de alrededor de 3V3.
• A continuación, variamos la masa aplicada (conocida a través de una balanza y para cada valor), y asociamos un LEITUR del ADC, obteniendo la siguiente tabla.
Paso 9: Obtención de la relación de funciones entre la masa medida y el valor del ADC obtenido
Usamos el software PolySolve para obtener un polinomio que representa la relación entre la masa y el valor del ADC.
Paso 10: código fuente
Código fuente - #Incluye
Ahora que sabemos cómo obtener las medidas y conocemos la relación entre el ADC y la masa aplicada, podemos pasar a escribir el software.
// Bibliotecas para utilização do display oLED # include // Necesario apenas para o Arduino 1.6.5 e anterior #include "SSD1306.h" // o mesmo que #include "SSD1306Wire.h"
Código fuente - #Defines
// Os pinos do OLED están conectados ao ESP32 pelos seguintes GPIO's: // OLED_SDA - GPIO4 // OLED_SCL - GPIO15 // OLED_RST - GPIO16 #define SDA 4 #define SCL 15 #define RST 16 // RST deve ser por software
Fuente: variables y constantes globales
Pantalla SSD1306 (0x3c, SDA, SCL, RST); // Instanciando y ajustando los pinos del objeto "display" const int amostras = 10000; // número de amostras coletadas para a média const int pin = 13; // pino de leitura
Código fuente - Configuración ()
configuración vacía () {pinMode (pin, ENTRADA); // pino de leitura analógica Serial.begin (115200); // iniciando una serie // Inicia o display display.init (); display.flipScreenVertically (); // Vira a tela verticalmente}
Código fuente - Bucle ()
void loop () {float medidas = 0.0; // variável para manipular as medidas float massa = 0.0; // variável para armazenar o valor da massa // inicia a coleta de amostras do ADC for (int i = 0; i
Código fuente - Función calculaMassa ()
// função para cálculo da massa obtida pela regressão // usando oPolySolve float calculaMassa (float medida) {return -6.798357840659e + 01 + 3.885671618930e-01 * medida + 3.684944764970e-04 * medida * medida + -3.748108838320e-07 * medida * medida * medida + 1.796252359323e-10 * medida * medida * medida * medida + -3.995722708150e-14 * medida * medida * medida * medida * medida + 3.284692453344e-18 * medida * medida * medida * medida * medida * medida; }
Paso 11: Iniciar y medir
Paso 12: Archivos
Descarga los archivos
INO
Recomendado:
Báscula de baño Arduino con celdas de carga de 50 kg y amplificador HX711: 5 pasos (con imágenes)
Báscula de baño Arduino con celdas de carga de 50 kg y amplificador HX711: este Instructable describe cómo hacer una báscula usando partes disponibles en el mercado Materiales necesarios: Arduino - (este diseño usa un Arduino Uno estándar, otras versiones de Arduino o clones deberían funcionar también) HX711 en boa de ruptura
Báscula Arduino con celda de carga de 5 kg y amplificador HX711: 4 pasos (con imágenes)
Báscula Arduino con celda de carga de 5 kg y amplificador HX711: este Instructable describe cómo hacer una pequeña báscula utilizando piezas disponibles en el mercado. Materiales necesarios: 1. Arduino: este diseño utiliza un Arduino Uno estándar, otras versiones o clones de Arduino también deberían funcionar 2. HX711 en caso de ruptura
Báscula inteligente de bricolaje con reloj despertador (con Wi-Fi, ESP8266, Arduino IDE y Adafruit.io): 10 pasos (con imágenes)
Báscula inteligente de bricolaje con reloj despertador (con Wi-Fi, ESP8266, Arduino IDE y Adafruit.io): En mi proyecto anterior, desarrollé una báscula de baño inteligente con Wi-Fi. Puede medir el peso del usuario, mostrarlo localmente y enviarlo a la nube. Puede obtener más detalles sobre esto en el siguiente enlace: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Báscula con pantalla táctil (Arduino): 7 pasos (con imágenes)
Báscula de pesaje con pantalla táctil (Arduino): ¿Alguna vez quisiste construir una báscula con pantalla táctil? ¿Nunca pensaste en eso? Bueno, sigue leyendo e intenta construir una … ¿Sabes qué son una pantalla táctil TFT y una celda de carga?
Convierta una báscula de baño electrónica en una báscula de envío por <$ 1: 8 pasos (con imágenes)
Convierta una báscula de baño electrónica en una báscula de envío por <$ 1 :, En mi pequeña empresa, necesitaba pesar artículos y cajas medianos a grandes en una báscula de piso para el envío. En lugar de pagar demasiado por un modelo industrial, utilicé una báscula de baño digital. Lo encontré lo suficientemente cerca para la precisión aproximada que estoy