arduino y sensores de presion

que tal , me encuentro con una duda, no se como conectar 7 sensores MPX10D a una arduino MEGA 2560, pues la idea es que me leer cada sensor por cada entrada analoga con analogread pero el sensor tiene 4 pines, y pues temo que si los conecto mal se me puedan llegar a quemar, el voltaje de operación de cada sensor es de 3V.


este es el diagrama del sensor

gracias espero me puedan ayudar, saludos desde Colombia

si no me equivoco es un medidor de presión diferencial.

puedes poner -Vout a GND y +Vout a la entrada analógica. varía 3,5 milivoltios por kpa

yo te aconsejo que utilices un amplificador operacional x10 y ademas para adaptar las impedancias.

según el datasheet lo puedes alimentar hasta 6 voltios.

un saludo

gracias por responder, no entiendo lo del amplificador operacional x10 ... podrías explicármelo mejor, sera que depronto me sirve un LM317T.... gracias

LM741 es el que se utiliza generalmente, pero hay otros muchos.

x10 es la amplificación que debe tener, si tienes 3,5 milivoltios por kpa, y mides de 0 a 10 kpa diferenciales solo tendrás un máximo de 35 milivoltios.

Si esta tensión la multiplicas por 10 o por 100, (antes hice mal la cuenta) por 10 mejor, pues le metes a arduino de 0 a 3,5 voltios con lo que ganas en precisión, no es lo mismo un fondo de escala de 3,5 milivoltios que sea un Kpa a que la misma variación consigas leer centésimas de kpa.

tienes que utilizar el AO en forma NO inversora, lo puedes encontrar como sumador no inversor, y la amplificacion dependerá de las resistencias que le pongas R1 y R2.


su fórmula
V_{out}=V_{in}(1+{R_2}/{R_1})

Amplificador operacional - Wikipedia, la enciclopedia libre.

Aunque lo suyo es que utilices un amplificador de instrumentación

lo que dices de usar el A0 de forma no inversora ... es conectar los sensores al amplificador operacional sumador no inversor y que esta salida la conecte al pin A0 del arduino ?

SrDonGato:
Motorola MPX10GS datasheet pdf

puedes poner -Vout a GND y +Vout a la entrada analógica. varía 3,5 milivoltios por kpa

¿Seguro que puede ponerse -Vout a GND? En el datasheet yo no veo nada que lo ponga aunque claro, tampoco veo que ponga que no se puede. Pero no sé por qué me da a mí que no hay que conectarlo así y lo que hay que conectar es un AO con etapa restadora o un AO de instrumentación tal como has sugerido también.

lo que mide arduino es una tension diferencial, lo que da el sensor ( entiendo ) es una tension diferencial de las presiones a cada lado del sensor. si V-out = -0,06 voltios y V+out = a 0,06 voltios, si ponemos un polímetro entre estos puntos mediremos 0.12 voltios que es lo que se pretende medir con el arduino.

es lo suyo si se quiere tener precisión en la medida, con un ampli de instrumentacion. el factor de amplificacion se configura cun una sola resistencia y se adaptan las impedancias entre el sensor y el arduino.

Lo más recomendable es el AO de instrumentación

un saludo

Sí, pero para que Arduino vea esa tensión como diferencial el sensor tendría que tener una alimentación independiente de la del Arduino con las masas de las dos alimentaciones (la del sensor y la de Arduino) independientes.

yo pienso que lo que dice srdongato esta bien puesto que en el diagrama del sensor se tiene: +Vs que seria la tension positiva, dos salidas +Vout y -Vout, y por supuesto la tierra GND, si fuera una tensión negativa tendría que ser -Vs y no lo hay...

Diferencial significa que el valor que quieres es la resta de Vout-(-Vout) y ambas tensiones son positivas

En absoluto, no funciona así. El sensor ni siquiera se puede alimentar con una tensión negativa. Ten por seguro que tienes que poner una etapa diferencial o si quisieras referenciar a masa la salida -Vout tendrías que poner alimentaciones independientes para el sensor y Arduino y por supuesto no unir las masas de ambos sistemas. Pero vamos, te recomiendo altamente poner una etapa amplificadora diferencial.

Nota: mi respuesta es para el mensaje de mrjtwo, estoy de acuerdo con lo dicho por chiva.

Estoy leyendo lo que estáis proponiendo y no creo que estéis llegando a un acuerdo,
propongo que cada uno relea los principios de amplificación mediante amplificadores
diferenciales, para llegar a un acuerdo y luego propongáis una solución.

Cualquier otra discusión, sólo servirá para despistar (sacar de pista) al que tenga poco
conocimiento del tema y digo del tema, por que, es recurrente este tipo de discusiones
en los foros de habla hispana, aunque hay honrosas excepciones.

Todos tienen derecho a discrepar. Por supuesto, pero hay una máxima que dice:

"Si lo que vas a decir no da luz al debate, mejor quédate callado".

Saludos y disculpad la intervención.

No sé si es por alguien en concreto lo de "Si lo que vas a decir no da luz al debate, mejor quédate callado" pero creo que la intención de todos los que hemos intervenido era dar luz, nuestro punto de vista u otra visión con la que entre todos a veces se llega a mejores soluciones.

Si no ha quedado claro del todo creo que es porque hay veces que se necesita unos mínimos conocimientos de electrónica para entender las varias soluciones.

Si se quiere tener una buena medida del sensor hay que poner una etapa amplificadora diferencial. Esta etapa puede hacerse con operacionales de instrumentación (en google se pueden encontrar diferentes configuraciones desde sencillos a elaborados) o comprar un integrado con la etapa diferencial. En este caso las alimentaciones del sensor y resto de la electrónica pueden ser la misma.

Otra solución rápida y menos precisa es poner dos alimentaciones totalmente separadas (no unir las GND), una para el sensor y otra para el resto de la electrónica e implementar con un operacional en etapa no inversora (la que ha puesto SrDonGato). La entrada a esta etapa será +Vout. Y -Vout se lleva a la GND de la electrónica (nunca a la del propio sensor).

Conectalos a dos ADC MCP3424 mediante I2C, hay mucha info de la comunidad.

Hola a todos:

Ya se publico un trabajo de un montaje de este sensor y Arduino, pero cuando e intentado poner en este mensaje el Link me sale que lo han borrado, por lo cual pongo lo que guarde en pdf, espero que esto se pueda hacer en el foro.

Saludos

Arduino y MPX2010. Medir el nivel de un deposito de agua.pdf (251 KB)

Efectivamente, lo que propone Dukatus, es exactamente una aplicación genuina de cómo
conectar la sonda a un OpAm. Se utilizan ambas salidas +Vuot y -Vout (a grandes rasgos)una
a cada amplificador y sus salidas se suman en un tercer amplificador. Todo con una única
alimentación, sin tener mayores problemas.

Muchas veces buscamos las cuatro patas y no paramos a ver que sólo hay 3.

No lo he probado, pero seguramente, el montaje que indica Dukatus, puede servir en la mayoría
de los sensores de, presión, gas, magnéticos, etc. siempre que se basen en un puente Wheatstone.

Mrjtwo, te sugiero que pruebas a usar el LM324 (que no es muy caro) y ya nos dirás que resultado
te da. Seguro que obtendrás el resultado que esperas.

Ah!, Por cierto, no se ofenda el personal, pero algunas veces nos pasamos con puntos de vista que
no van al caso y sí, hay que tener un mínimo de conocimientos de electrónica (sin embargo, al
participar se hace piña, dirá alguno).
Pero no todo vale, debemos pensar lo que decimos y si con esto me equivoco, sólo me queda pedir disculpas. Es mi opinión.

Saludos.

Saludos amigos he conectado un sensor de presion diferencial e intento sacar las medidas de este en pantalla mediante un display de 16 por 2 pero cuando verifico me sale este error( expected ';' before 'return')

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

float presion()
{
float dato;
float p;
dato=analogRead(A0);
p= (dato * 9,80665)/4.41
return (p);
}

void setup()
{
lcd.begin(16,2);
lcd.print("hola")
lcd.setCursor(0,1);
}

void loop()
{
float pre = presion();
lcd.setCursor(2,0)
lcd.print(pre);
delay(200);
}

ahi esta el codigo porfa si me pudieran ayudar

Cierro el hilo porque evidentemente no has visto la ADVERTENCIA que te decía que este post no se ha movido en mas de 4 meses y ya que desde el 2011 ha pasado eso, te invito a que crees un nuevo hilo en Hardware.

Esta es una sección que no debe usarse para postear preguntas.
Tu código esta mal posteado y por todo esto te invito a que leas las normas del foro.