Autor Tema: Lectura de nivel de líquido en tanque con sensor de electrodos.  (Leído 1158 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Lectura de nivel de líquido en tanque con sensor de electrodos.
« en: 23 de Noviembre de 2017, 16:47:44 »
Buenas,

estoy en un proyecto en el que tengo que leer el nivel de agua en un tanque con un sensor de 4 electrodos. Para ver como funcionan he estado haciendo ingeniería inversa con una centralita que ya lo tiene implementado. Lo que he visto por ahora es que el electrodo más largo va a masa y en los 3 siguientes (a más corto mayor nivel de agua cuando conducen) el micro manda un tren de pulsos a través de una resistencia con un periodo de 1hz y un duty del 25%. Veo que cuando cada electrodo conduce el PWM se convierte en una señal muy atenuada e irregular (unos 200mV de los 5V originales). Me surgen algunas dudas con las que espero que me podais ayudar:

1. ¿La resistencia limitadora es sencillamente para no poner en corto el PWM de salida?.
2. ¿El PWM en vez de señal fija a '1' es para bajar el consumo?. No se me ocurre otra cosa pero no le encuentro mucho sentido.
3. ¿Es tan sencillo como sacar una señal y si el valor de salida no coincide con el valor real del pin (LAT y PORT en PIC, p.e.) es que el electrodo conduce?. ¿No es necesario un circuito de adaptación?. Se me hace raro que sea tan sencillo.

Gracias de antemano!
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado EdoNork

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 613
    • ElektroQuark
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #1 en: 24 de Noviembre de 2017, 02:52:51 »
Es para evitar en lo posible la electrolisis y que se estropeen los electrodos.
Suele utilizarse corriente alterna, o PWM de baja intensidad, además de electrodos de acero inoxidable.
Mi blog sobre electrónica y cosillas afines: www.elektroquark.com
EQVideo en Youtube
El foro de KiCad en castellano.
Mi librería para KiCad ¡AQUÍ!

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #2 en: 24 de Noviembre de 2017, 05:47:36 »
Ahhh ok ahora lo entiendo. Pero entonces es sencillamente mandar un tren de pulsos y leer en el mismo pin de salida si la señal se ha caido¿?

Saludos.
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 7856
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #3 en: 24 de Noviembre de 2017, 07:31:29 »
Apenas pueda te paso un circuito que usan aca algunos tambos para la deteccion de agua, y usan un transformador 12+12, en el cual una de las bobinas de 12V alimenta el circuito y la otra va directamente a la espada/electrodo. La deteccion es simplemente un divisor resistivo con un preset ( para ajustar la "sensibilidad" ) luego rectificado y que cargue un capacitor, eso alimenta a un darlington y la salida varia con la corriente que pase..

Luego activa un rele y hace un cambio en la corriente de base, ya que es como para un vaciado al detectar liquido. Pero el circuito es bastante sencilo.


* dsadas.jpg
(75.17 kB, 691x287 - visto 200 veces)


Los componentes obviamente los mas comunes posibles, diodos 1N4007, las resistencias no recuerdo exactamente los valores, el capacitor si no me equivoco es de 100uF/16 o 25V. El darlington un MPSA13 y es todo, un pull-up a VCC y de alli un comparador como para pasar a un valor 0/1 logicos los valores de cuando se detecta el agua.

En este circuito cuando el ajuste de "sensibilidad" lo permite fluira suficiente corriente como para activar un rele. La parte que me falta del circuito es el rele el cual al activarse conecta un capacitor + resistencia (divisor resistivo+diodo) a la base del transistor, y de esa forma la descarga del capacitor le da el tiempo, poco a poco el capacitor se queda sin corriente hasta que baja la tension sobre el rele y abre. Volviendo a repetirse el ciclo cuando llegue a tocar el agua nuevamente. Pero te pase ese esquema de lo que recuerdo de memoria que es la parte de sensado de la misma.

Desconectado EdoNork

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 613
    • ElektroQuark
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #4 en: 24 de Noviembre de 2017, 13:49:34 »
Como idea, te diré que en los equipos PRO de mi laboratorio (depósitos de agua de unos 100 litros) el nivel se controla con una barra vertical sumergida con interruptores Reed.
Un flotador en forma de toroide con imanes, atravesado por la barra, los va cerrando a la altura correspondiente. Cada uno cierra el circuito con una resistencia asociada, el valor de la tensión se controla con un ADC y se exstrapola el nivel.
Mi blog sobre electrónica y cosillas afines: www.elektroquark.com
EQVideo en Youtube
El foro de KiCad en castellano.
Mi librería para KiCad ¡AQUÍ!

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #5 en: 24 de Noviembre de 2017, 14:45:44 »
Hola manwenwe, tal como ya comenta KILLERJC, la alterna es para evitar la electrólisis y por ende que los electrodos se corroan lo menos posible. La señal a enviar por tal motivo debe de ser alterna y con periodo exactamente igual en ambos sentidos. Por lo anterior no puede ser un PWM donde el periodo de trabajo es solo en un sentido (continua pulsante) si no el electrodo se terminaría estropeando de igual manera.

Pero si no necesitas hacer un sensado de manera continua, como por ejemplo si puedes sensar el estado de llenado cada 15 o 20 segundos, puedes usar un simple circuito que solo envía señal en el caso de estar sensando, y el resto del tiempo no aplica tensión, es el siguiente:


* Sensor.png
(1.03 kB, 207x305 - visto 177 veces)


Cuando vas a sensar aplicas tensión a la resistencia de base y luego miras el estado del divisor resistivo, terminado el proceso colocas a cero la resistencia de base. Con este sistema, al no aplicar de manera continua tensión al sensor, la corrosión del mismo es despreciable. Y como verás el circuito es muy sencillo.

Espero te sea de ayuda.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #6 en: 24 de Noviembre de 2017, 16:52:34 »
Gracias a los dos.

Creo que lo que he estado probando se parece más a lo que comenta Carlos. Realmente no necesito sensar de forma continua, con hacerlo cada cierto tiempo es suficiente: no hay nada realmente urgente "que hacer" si el tanque está a un nivel en concreto.

El caso es que estoy probando con dos circuitos: uno es una especie de controlador y el otro un distribuidor. Yo tengo que diseñar el controlador y usar el distribuidor actual. Por el distribuidor entran por un conector 4 cables de los 4 electrodos (uno va a masa) y salen 3 cables (los que no son de masa) al controlador. Por lo que no tengo claro si hay señal de sensado como la que indica Carlos en el controlador (es difícil seguir todas las señales en la PCB): yo creo que no hay ya que la señales de que van en los cables del controlador al distribuidor y de ahí a los electrodos son PWM de 5V que se atenuan casi por completo cuando los electrodos conducen, lo cual me hace pensar que es probable que los mismos pines del microcontrolador que se usan para generar el pwm o tren de pulsos se utilizan también para sensar; como comenté anteriormente esto sería fácil leyendo el valor real en el pin de salida (registro PORT en PIC).

Parece mucho más elegante disparar con un transistor como comenta Carlos (sólo cambiaría los valores R2 y R3 para no dañar el micro que irá a 3.3V) pero me cabe la duda de si haciéndolo con una salida de tren de pulsos 3.3V limitada en corriente desde el micro y leyendo el valor real del pin de salida (o usando otro de entrada) me funcionaría igual; la razón es simple: ahorrar 3 BJT y 6 resistencias.

Saludos!
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #7 en: 26 de Noviembre de 2017, 12:37:49 »
Hola manwenwe, pues yo te recomendaría no ahorrar nada, tampoco es que evitas un gran gasto. Y te explico por que lo digo:

La resistencia de base y el NPN están conectados en configuración emisor común, por lo que no importa que tensión posean la alimentación de los sensores, el micro no correrá peligro, ya que la tensión máxima que puede llegar al pin de entrada del micro viene definida por la tensión máxima que dejará pasar el BJT y esta nunca será mayor a la tensión de salida de pin que activa al BJT.
O sea, si tu le envías 3.3V a la resistencia de base de 100K (recomiendo reducir su valor para trabajar en 3.3V, diseño original de 5V), al trabajar en modo emisor común, en el emisor de dicho transistor, la tensión máxima posible sería de 3.3V - 0.7V = 2.6V, caso contrario el BJT dejaría de conducir entrando en corte y por lo tanto en el pin de entrada del micro nunca sobrepasaría los "teóricos" 2.6V, y digo teóricos ya que este valor puede variar levemente.

Por lo que dicho circuito no solo sensa el contacto correspondiente, si no que también cumple la función de proteger el micro, este circuito esta aplicado en un sistema que posee la facultad de trabajar tanto en 12V así como en 24V o sea que la tensión aplicada a los sensores puede ser de 12 o 24, siendo que el micro usado funciona con 5V y es por eso que posee la configuración actual, y te comento que aparte de existir en el mercado sud americano miles de estos circuitos funcionando, lo hacen de manera realmente bien.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #8 en: 26 de Noviembre de 2017, 12:46:53 »
Hola manwenwe, la otra opción que se me acaba de ocurrir, es usar presostatos como los usados en lavarropas familiares, necesitarás 2 o 3 de estos para conseguir los 3 niveles que deseas, ya que vienen presostatos de 1 nivel y de 2 niveles dentro del mismo.

Luego de conectados al depósito (por el fondo del mismo) deberás de regular la presión de accionamiento de los distintos niveles para que estos accionen cuando es debido. Los presostatos funcionan "sensando" la presión del agua en el fondo del depósito, como es sabido, a mayor nivel de agua mayor presión en el fondo de la misma. Y lo que hacen, es sencillamente actuar sobre un interruptor, que alcanzada la presión seteada (por medio de un tornillo) los contactos se cierran. La contra, el depósito no puede tener una profundidad mayor a un metro, no se si alcanzarán para metro y medio.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #9 en: 27 de Noviembre de 2017, 09:55:14 »
Hola manwenwe, pues yo te recomendaría no ahorrar nada, tampoco es que evitas un gran gasto. Y te explico por que lo digo:

La resistencia de base y el NPN están conectados en configuración emisor común, por lo que no importa que tensión posean la alimentación de los sensores, el micro no correrá peligro, ya que la tensión máxima que puede llegar al pin de entrada del micro viene definida por la tensión máxima que dejará pasar el BJT y esta nunca será mayor a la tensión de salida de pin que activa al BJT.
O sea, si tu le envías 3.3V a la resistencia de base de 100K (recomiendo reducir su valor para trabajar en 3.3V, diseño original de 5V), al trabajar en modo emisor común, en el emisor de dicho transistor, la tensión máxima posible sería de 3.3V - 0.7V = 2.6V, caso contrario el BJT dejaría de conducir entrando en corte y por lo tanto en el pin de entrada del micro nunca sobrepasaría los "teóricos" 2.6V, y digo teóricos ya que este valor puede variar levemente.

Por lo que dicho circuito no solo sensa el contacto correspondiente, si no que también cumple la función de proteger el micro, este circuito esta aplicado en un sistema que posee la facultad de trabajar tanto en 12V así como en 24V o sea que la tensión aplicada a los sensores puede ser de 12 o 24, siendo que el micro usado funciona con 5V y es por eso que posee la configuración actual, y te comento que aparte de existir en el mercado sud americano miles de estos circuitos funcionando, lo hacen de manera realmente bien.

Un saludo.

Atte. CARLOS.

Ok Carlos ya te comprendo. Por ahora he hecho pruebas con la salida del PIC directamente. Creo que ya entiendo lo que sucede. Si sacas un tren de pulsos por una salida del micro no puedes sensar directamente ese pin como yo creía ya que la conductividad de electrodos + agua no es lo suficientemente alta como para que el voltaje del pin "se caiga"; cuando el pulso está en alto el consumo máximo del pin de salida es de unos 15mA con los dos electrolodos más largos (el de GND y el de nivel bajo de agua) cubiertos completamente por agua... y no es suficiente para que el voltaje del pin "se caiga":



En cambio en cuanto pones en serie una resistencia "un poco fuerte" (10K o mayor por ejemplo), casi todo el voltaje del pin de salida cae en la resistencia (en este caso 47K, donde rojo es señal de salida y azul sensado del electrodo):



Con lo que estaba equivocado y se necesitan dos pines sí o sí.

Carlos: ¿viendo como salen las gráficas le añadirías igualmente el disparo por BJT?; lo siento pero es que se me sigue escapando porqué es necesario ya que con el pin y la resistencia en serie el consumo no llega a 1mA.

Saludos!

Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #10 en: 27 de Noviembre de 2017, 09:57:13 »
Hola manwenwe, la otra opción que se me acaba de ocurrir, es usar presostatos como los usados en lavarropas familiares, necesitarás 2 o 3 de estos para conseguir los 3 niveles que deseas, ya que vienen presostatos de 1 nivel y de 2 niveles dentro del mismo.

Luego de conectados al depósito (por el fondo del mismo) deberás de regular la presión de accionamiento de los distintos niveles para que estos accionen cuando es debido. Los presostatos funcionan "sensando" la presión del agua en el fondo del depósito, como es sabido, a mayor nivel de agua mayor presión en el fondo de la misma. Y lo que hacen, es sencillamente actuar sobre un interruptor, que alcanzada la presión seteada (por medio de un tornillo) los contactos se cierran. La contra, el depósito no puede tener una profundidad mayor a un metro, no se si alcanzarán para metro y medio.

Un saludo.

Atte. CARLOS.

Gracias Chaly, el problema es que no se trata de un producto final que incluya el tanque: es sólo la electrónica y además tengo que usar unos electrodos en concreto y hacer que la electrónica nueva sea compatible con la antigua para que el usuario decida en cada momento cual de las dos quiere usar.

Saludos.
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #11 en: 27 de Noviembre de 2017, 11:03:42 »
Hola manwenwe, no es estrictamente necesario el uso del BJT, pero bajo ciertas condiciones es recomendable. Por ejemplo, cuando la resistividad del líquido no es una constante.

Si con el líquido a usar y los pines del micro conectados de manera directa funciona, pues no hay más de que hablar, eso si, te recomendaría que usaras protecciones tanto para el pin de entrada como para el de salida. Un par de diodos en inversa entre entrada/salida con respecto a GND y Vcc creo serían conveniente. Recuerda que un tanque con líquido en movimiento puede cargarse con un muy buen nivel de estática, muy dañina para un micro.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2161
Re:Lectura de nivel de líquido en tanque con sensor de electrodos.
« Respuesta #12 en: 27 de Noviembre de 2017, 16:18:19 »
Hola manwenwe, no es estrictamente necesario el uso del BJT, pero bajo ciertas condiciones es recomendable. Por ejemplo, cuando la resistividad del líquido no es una constante.

Si con el líquido a usar y los pines del micro conectados de manera directa funciona, pues no hay más de que hablar, eso si, te recomendaría que usaras protecciones tanto para el pin de entrada como para el de salida. Un par de diodos en inversa entre entrada/salida con respecto a GND y Vcc creo serían conveniente. Recuerda que un tanque con líquido en movimiento puede cargarse con un muy buen nivel de estática, muy dañina para un micro.

Un saludo.

Atte. CARLOS.

Gracias Carlos. El liquido es agua potable y sí, sí existe la posibilidad de que el líquido se mueva (estará dentro de un vehículo). Entonces lo dejo con los pines tal cual está y le pongo TVSs.

Saludos!
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -