Autor Tema: Control de nivel de líquidos - Consulta de implementación  (Leído 1823 veces)

0 Usuarios y 5 Visitantes están viendo este tema.

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #15 en: 22 de Junio de 2023, 18:25:22 »
Datos obtenidos luego de las pruebas y mediciones.

Sin-t-tulo" border="0

Ahora queda hacer unas pruebas de código y ver que pasa.

El circuito final que estoy usando es este.

2" border="0
« Última modificación: 22 de Junio de 2023, 18:28:02 por jonathanPIC888 »

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #16 en: 22 de Junio de 2023, 18:39:46 »
Datos obtenidos luego de las pruebas y mediciones.

Sin-t-tulo" border="0

Ahora queda hacer unas pruebas de código y ver que pasa.

El circuito final que estoy usando es este.

2" border="0

no creo que sea necesario que conviertas a float el valor del ADC, es decir podrías trabajar en valor entero, pero independiente del formato usado, no deberías hacer un pseudocódigo así aproximadamente:

Código: C
  1. switch (analogRead(A0));
  2. {
  3.     case 1.24V: accion1(); break;
  4.     case 2.47V: accuin2(); break;
  5.     etc.
  6. }

Ya que es un circuito analógico, y las resistencias y fuentes de voltaje no son exactas, el pseudocódigo sería así:

Código: C
  1. if (analogRead(A0) > (1.24 - 10%) && analogRead(A0) < (1.24 -10%)) {accion1();}
  2. else if (analogRead(A0) > (2.47 - 10%) && analogRead(A0) < (2.47 -10%)) {accion1();}
  3. etc.

El porcentaje que puse (10%) fue un ejemplo, deberías determinar que valor es el adecuado, sin que te pases al valor anterior o superior.


Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado Robert76

  • PIC24F
  • *****
  • Mensajes: 571
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #17 en: 22 de Junio de 2023, 18:50:17 »
Pues creo que deberías usar otro diseño, ya que si la salida 1 y 2 están activas (izquierda), el voltaje es 0.441V, mientras que si las salidas 3 y 4 están activas, el voltaje es 2.647.

Y según lo que mencionaste, al estar activas dos de las 4 salidas (cualquiera), el voltaje debería ser el mismo.25% (O eso entendí)


Al tratarse de un nivel de varillas, sólo pueden darse las condiciones 1, 1-2, 1-2-3 y 1-2-3-4, si consideramos que el nivel mínimo arranca por el 1.
Por lo tanto, la condición 3 y 4 solamente, jamás pordrían darse.

Desconectado Robert76

  • PIC24F
  • *****
  • Mensajes: 571
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #18 en: 22 de Junio de 2023, 18:53:43 »
Datos obtenidos luego de las pruebas y mediciones.

Sin-t-tulo" border="0

Ahora queda hacer unas pruebas de código y ver que pasa.

El circuito final que estoy usando es este.

2" border="0
En tu tabla, hay condiciones que jamás podrían darse, ya que estamos hablando de niveles por varilla.
Tendrás en el caso mínimo, ningún sensor actuado, y en máximo estarán todos actuados, por lo tanto las condiciones serán empezando por mínimo:   0001, 0011, 0111 y 1111, tendrás sólo cuatro estados posibles, o al menos eso comprendí de tu sistema de detección.

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #19 en: 22 de Junio de 2023, 19:11:47 »
Pues creo que deberías usar otro diseño, ya que si la salida 1 y 2 están activas (izquierda), el voltaje es 0.441V, mientras que si las salidas 3 y 4 están activas, el voltaje es 2.647.

Y según lo que mencionaste, al estar activas dos de las 4 salidas (cualquiera), el voltaje debería ser el mismo.25% (O eso entendí)


Al tratarse de un nivel de varillas, sólo pueden darse las condiciones 1, 1-2, 1-2-3 y 1-2-3-4, si consideramos que el nivel mínimo arranca por el 1.
Por lo tanto, la condición 3 y 4 solamente, jamás pordrían darse.

Ojalá sea así, ya que según entendí (tal vez mal) al OP , si existe dicha posibilidad.
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #20 en: 22 de Junio de 2023, 19:18:17 »
Datos obtenidos luego de las pruebas y mediciones.

Sin-t-tulo" border="0

Ahora queda hacer unas pruebas de código y ver que pasa.

El circuito final que estoy usando es este.

2" border="0
En tu tabla, hay condiciones que jamás podrían darse, ya que estamos hablando de niveles por varilla.
Tendrás en el caso mínimo, ningún sensor actuado, y en máximo estarán todos actuados, por lo tanto las condiciones serán empezando por mínimo:   0001, 0011, 0111 y 1111, tendrás sólo cuatro estados posibles, o al menos eso comprendí de tu sistema de detección.

Esta parte no me expliqué del todo bien. El problema es que el transmisor a veces lo conectan mal. Donde va la varilla 1 de medición (25%) conectan la varilla 2 (50%) o la varilla 3 donde va la 4. Entonces es necesario contemplar ese posible error de manera electrónica

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #21 en: 22 de Junio de 2023, 19:51:15 »
Les dejo el código que usé y funciona ok en todos los casos que plantee al principio.

Código: [Seleccionar]
void setup() {
Serial.begin(9600);
}


void loop() {

  // Lee el nivel de agua.
  int nVoltageRaw = analogRead(A0);
  float fVoltage = (float)nVoltageRaw/1023*5.0;
  Serial.println(fVoltage);
  delay(500);

  if (fVoltage <=0) {Serial.println("0%");}
  if (fVoltage > 1.116 && fVoltage < 1.5) {Serial.println("25%");}
   else if (fVoltage > 2.21 && fVoltage < 2.7) {Serial.println("50%");}
   else if (fVoltage > 3.33 && fVoltage < 4.07) {Serial.println("75%");}
   else if (fVoltage > 4.44 && fVoltage < 5.43) {Serial.println("100%");}
}

El código sale del ejemplo que me dió DominusDRR

Muchas gracias a todos por su ayuda !

Desconectado Robert76

  • PIC24F
  • *****
  • Mensajes: 571
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #22 en: 22 de Junio de 2023, 21:15:18 »
Dudo que el sistema pueda detectar, si una varilla está mal conectada. Creo y me parece coherente que debe conectarse como corresponde, ya que no hay nada redundante que detecte un error de manipulación. Tienes que asegurarte de manera mecánica, que las varillas se conectan correctamente, por ejem. utilizando algún conector que evite ser insertado al revés, o bien utilizar varillas de diferente diámetro para evitar ser conectadas en un terminal que no coincide.
« Última modificación: 22 de Junio de 2023, 21:17:43 por Robert76 »

Desconectado jonathanPIC888

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 320
Re:Control de nivel de líquidos - Consulta de implementación
« Respuesta #23 en: 22 de Junio de 2023, 21:42:07 »
Citar
Dudo que el sistema pueda detectar, si una varilla está mal conectada. Creo y me parece coherente que debe conectarse como corresponde, ya que no hay nada redundante que detecte un error de manipulación. Tienes que asegurarte de manera mecánica, que las varillas se conectan correctamente, por ejem. utilizando algún conector que evite ser insertado al revés, o bien utilizar varillas de diferente diámetro para evitar ser conectadas en un terminal que no coincide.

Acá la idea no es detectar si la varilla está bien puesta, porque está fija en la tapa, no hay manera de cambiarla de posición. Lo que conectan mal es el cableado del transmisor, pero con las pruebas que hice hoy ya pude sacarlo funcionando. Ahora hay que ver como funciona en campo nomás.


 

anything