Sensor de presión inestable después de apagar/encender Arduino

Estoy usando mi Arduino Uno para leer los valores de los sensores analógicos de este sensor de presión . Tengo el Arduino alimentado con una fuente de alimentación de 12V de la pared. Estoy usando los 5V del arduino para la pantalla LCD y también una placa de relé de 8 canales.

El sensor solo está conectado a 5V, GND y la señal va a la entrada analógica 3. Ya calibré el sensor 4 veces, porque me sigue dando valores inestables después de desconectar la fuente de alimentación:Gráficos de calibración con ecuación, altura del agua en cm frente al valor medido del sensor

El sensor se fija en la parte inferior del tanque de agua y está protegido del agua con silicona. Por lo tanto, la carga de presión ya es constante. (por ejemplo, 25 cm h2o). Con el procedimiento de calibración quise decir que aumenté paso a paso la altura del agua, medí la señal de salida y luego dejé que Excel hiciera un ajuste lineal con una ecuación, que implementé en el software.

Como puede ver, la respuesta del sensor es bastante lineal cada vez, pero para mí parece una especie de problema de compensación. Cuando usé una fuente de alimentación externa y medí el voltaje del sensor con un DMM, parecía estable, con el mismo voltaje cada vez.

¿Alguien tiene una idea de lo que va mal, o lo que tengo que añadir o algo así? (Ya leí algo sobre agregar un capacitor, pero no creo que sea un intervalo de tiempo corto).

Soy nuevo en este sitio y acabo de empezar a programar con Arduino. (Estoy tratando de hacer que mi acuario refresque el agua automáticamente).

-EDIT: Gracias a todos por las sugerencias. No solucioné el problema con el sensor de presión, pero estoy bastante seguro de que era el problema de que el diferencial p2 estaba bloqueado y, por lo tanto, la presión de referencia no era correcta. Como de hecho quiero medir continuamente durante mucho tiempo, la manguera como en un lavado no es una solución para mí. Decidí hacerlo con un sensor ultrasónico (hc-sr04). ¡Esto funciona bien! Problema resuelto:)

(1) Proporcione algunos detalles sobre cómo calibra. (2) Con presión fija, mida el voltaje en la salida y repita, tirando del enchufe cada vez, para ver si el problema es con el sensor o con el Arduino.
¿El clima fue el mismo cada vez?
¡Respondí a tus preguntas en la pregunta principal! la temperatura del agua era constante, así que eso también responde a la pregunta sobre el clima, supongo.
¿Has medido la potencia del dispositivo? ¿Se mantiene constante?
¿Has tapado sin querer el orificio de respiración que transmite la presión atmosférica?
Ahora lo tengo, ¿sumergiste el sensor? No necesita pasar el agua en él, el sensor mide la presión con la manguera adjunta, el aire en la manguera transmite presión al sensor. Es posible que el sensor en sí no entre en contacto con el agua.

Respuestas (3)

Creo que @Marko ha identificado correctamente el problema. El transductor de presión es diferencial: mide la diferencia de presión entre P1 y P2, como se muestra en la Figura 3 de la hoja de datos.

Sensor de presión diferencial

Figura 3 de la hoja de datos .

La figura 3 ilustra la configuración del indicador en el portador de chip básico (caja 98ASB17756C). Un gel de fluorosilicona aísla la superficie de la matriz y las uniones del cable del entorno, al mismo tiempo que permite que la señal de presión se transmita al diafragma de silicona.

Las características de funcionamiento del sensor de la serie MPxx5004 se basan en el uso de aire seco como medio de presión. Los medios que no sean aire seco pueden tener efectos adversos en el rendimiento del sensor y en la confiabilidad a largo plazo. Las pruebas internas de confiabilidad y calificación para aire seco y otros medios están disponibles de fábrica. Comuníquese con la fábrica para obtener información sobre la tolerancia de los medios en su aplicación.

Debe ventilar P2 a la atmósfera y monitorear la presión en P1 sin mojarlo.

R Sí, tú y Marko tienen razón, bastante estúpido de mi parte: p Pensé que mientras p2 esté en la silicona obtendrá una referencia estable, pero eso obviamente no funcionó. ¡Gracias por su tiempo y atención! ¡Le dejaré saber cómo resolví el problema!

El sensor tiene dos agujeros. En la primera grande, tienes el accesorio de la manguera. El segundo está debajo de su sensor, es un orificio de respiración que transmite la presión atmosférica. Dado que ha vertido el sensor con silicona y lo ha sumergido en el agua, claramente no es una solución. Retire la silicona y conecte una manguera, y use el sensor como en el manual de instrucciones. Sospecho que desea medir el nivel de agua continuamente, en ese caso, la manguera perderá presión a largo plazo y será inútil. Este tipo de sensor se usa en máquinas de maquinado, donde el agua se va y luego se vuelve a llenar, se puede despreciar la fuga de aire a través de la manguera. Como ya inundó el sensor, instale una manguera y perfore la pared en la parte inferior, coloque el sensor en posición invertida, externamente, no sumergido obviamente.

¡Está bien! Creo que ese es el problema:/ También lo intenté al principio, con la manguera. Pero eso no funcionó después de un tiempo debido a una fuga de aire, supongo, como sugieres. Voy a pensar en perforar el agujero, o simplemente usar otro tipo de sensor (sensor de distancia por ultrasonido). ¡Pero muchas gracias por investigar mi problema!
@smart-beets Sí, no estoy seguro de si hay fugas de aire a través de una manguera, es solo mi pensamiento. Las tuberías de suministro de aire no suelen tener fugas, así que...

Las razones sugeridas anteriormente son físicamente incorrectas: el bloqueo de la salida de referencia no debería cambiar el valor calibrado. Sin embargo, podría hacer que su curva de calibración no sea lineal, lo que no es el caso en la pregunta original (ya que el gas en la cámara bloqueada no está en equilibrio con un depósito infinito de 1 ATM, sino más bien finito. En pocas palabras, el volumen tomado por la membrana ' inflar' no es insignificante, y se puede acumular una presión superior a 1 ATM en la cámara bloqueada). En otras palabras, repetir el experimento debería producir resultados similares. De lo contrario, el sensor o la electrónica hacen ruido. Sospecho que el voltaje de Arduino no es estable entre reinicios, incluso más cuando se alimenta desde USB.