Autor Tema: Nivel para líquidos.  (Leído 33901 veces)

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

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #90 en: 29 de Enero de 2019, 07:44:32 »
Hola,
adjunto el fichero modificado.
Ahora debe de funcionar la escritura y la lectura de EEPROM.
El problema radicaba en que después de la lectura de la EEPROM no se actualizaban los valores a los que debía de actuar cada uno de los leds.

Ya me dices como fue.

F.
Todos los días se aprende algo nuevo.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #91 en: 29 de Enero de 2019, 07:48:04 »
Hola estimados amigos. Meto un bocadillo y digo: si declaramos 2 entradas analógicas, que lean 2 preset, nos ahorramos el problema de la re calibración con esperas de tiempo de llenado y escritura de eeprom, y creo que es mucho más fácil de recalibrar si tenemos graduado los presets. Así directamente leemos los valores de ellos al iniciar y, de ser necesario en funcionamiento, corregimos el que deseamos modificar y un reset pone el nuevo valor en la ecuación. La certeza de este método está en calidad de los presets y capacidad  para actuar sobre ellos.
Apenas pueda subo algo al respecto.

Santiago, siempre es bien recibida cualquier aportación. La cuestión radica en que solo se dispone de un solo sensor tanto para el valor máximo como para el valor mínimo. Además la situación del mismo dentro de los distintos tanques donde puede ir montado pueden variar tanto en altura como el diámetro de los mimos. Por tanto las presiones medidas nunca van a ser iguale, parecidas si pero nunca iguales. Con esto no se pueden establecer unos valores de preset concretos.

Si se supieran esos valores, evidentemente el desarrollo de la calibración sería muy distinta y mucho mas simple.
Todos los días se aprende algo nuevo.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #92 en: 29 de Enero de 2019, 08:12:05 »
Hola de nuevo,

Y este tiene mayor precisión a la hora de la lectura y decisión para cada paso de nivel.

F.
Todos los días se aprende algo nuevo.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #93 en: 29 de Enero de 2019, 08:26:18 »
Fer_TACA, algo pasa, no funcionan en físico ninguno de los 2 archivos últimos que has adjuntado, sin embargo cargo el código de cualquiera de los anteriores y si funcionan.


Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #94 en: 29 de Enero de 2019, 08:37:25 »
Raro, solo he añadido/modificado el bloque de escritura en la EEPROM.
¿En concreto que les pasa?
Ahora a cabo de salir de casa. Regreso como en una hora- hora y media. Lo reviso y comento.
Todos los días se aprende algo nuevo.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #95 en: 29 de Enero de 2019, 08:43:29 »
Pues que no hace nada, es como si no tuviera tensión, sin embargo con códigos anteriores si que va. Me acabo de dar cuenta que has colocado el Master Clear y el oscilador externo, y que tambien está activa el Watchdog Timer, lo cambio y te vuelvo a comentar
« Última modificación: 29 de Enero de 2019, 09:06:36 por manuel gómez »

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #96 en: 29 de Enero de 2019, 08:49:36 »
He colocado el oscilador y el master clear interno y he deshabilitado el Watchdog Timer, pero haciendo esos cambios tampoco va.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #97 en: 29 de Enero de 2019, 10:02:12 »
Pues que no hace nada, es como si no tuviera tensión, sin embargo con códigos anteriores si que va. Me acabo de dar cuenta que has colocado el Master Clear y el oscilador externo, y que tambien está activa el Watchdog Timer, lo cambio y te vuelvo a comentar

No he cambiado nada en la configuración solo añadí un par de bloques detrás de la lectura de la EEPROM dentro del main.
No me has explicado el efecto que pasa cuando no funciona.
Te adjunto de nuevo los ficheros y dime mas o menos que le pasa.
También como tengo un monton de ficheros, mándame uno (el ultimo que te mande que funciona), y si estos no van ya hago la misma corrección en el a ver si pasa lo mismo. No tenia que haber cambio, ya que la modificación afecta solo a la parte del reinicio cunado hay un reset o se va la tensión para que se lea bien la eeprom y se realicen bien los cálculos de nivel.
La configuracion la he dejado con oscilador interno y el reset tambien.
Todos los días se aprende algo nuevo.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #98 en: 29 de Enero de 2019, 10:15:29 »
Antes de probar esto que nuevamente adjuntas te comento:
cuando digo que no hace nada, es totalmente literal, osea, no hace nada, cuando activas el interruptor de calibracion y posteriormente pulsas sobre la tecla de minimo no hay nada que encienda, ningun led funciona, es como si no estuviera alimentado con los +5V, sin embargo vuelvo a cargar cualquier código de los generado de los anteriores archivos y si que vuelven a lucir los leds, por supuesto sin guardar memoria.

Ahora en un rato vuelvo a probar y te mando lo que si me funciona.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #99 en: 29 de Enero de 2019, 10:51:20 »
Te comento Fer_TACA, con estos ultimos archivos que has subido vuelve a funcionar, osea, puedo calibrar el mínimo y el máximo, los leds suben y bajan cuando manipulo el sensor, pero sigue sin guardar memoria.

Al al calibrar el minimo y el maximo espero unos 10 segundos antes de quitar la alimentacion, cuando vuelvo a conectar los +5V (con el interruptor de calibracion desactivado) no aparece ningun led encendido.

Tengo que decirte que los archivos estan con el oscilador externo, pero yo lo he cambiado a interno ya que es el que uso.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #100 en: 29 de Enero de 2019, 11:25:05 »
Pues no se porque habrá sido porque lo único que he visto es que se han cambiado los fuses  :shock: :shock: :shock: :shock:

El problema radicaba en que estaba habilitada la programación en bajo nivel: "Low Voltage Program".

Respecto a que no se guarda o lee el valor de la eeprom voy a seguir investigando ya que ahora parece estar todo correctamente.

F.
Todos los días se aprende algo nuevo.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #101 en: 29 de Enero de 2019, 11:42:07 »
Gracias Fer_TACA, la verdad que una vez que consigas que se guarden los datos quedará un indicador de nivel bastante perfecto, ya que la calibración mínimo/máximo lo hace estupendamente.

Espero a que me adjuntes novedades.

Saludos.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4032
Re:Nivel para líquidos.
« Respuesta #102 en: 29 de Enero de 2019, 11:45:55 »
 Mira te adjunto un nuevo fichero solo para comprobar.
He estado mirando los ejemplos que trae Flowcode de como leer y grabar la eeprom y son exactamente iguales. No se que puede pasar.
 :oops: :oops: :oops: :oops: :oops: :oops: :oops:

He añadido una secuencia de encendido de unos leds para ver que después de calibrar y quitar la tensión, al volver a darla se debe de producir la siguiente secuencia:
C0->C2->C3-> A2-> A3 con un tiempo aproximado de retardo de medio segundo entre unos y otros.

Si puedes colocar un led, aunque sea de forma provisional en A3 mejor y si no no pasa nada, no se encenderia el ultimo A3 de la secuencia.

Te repito que es solo de prueba ya que no puedo comprobarlo de forma fisica.

F.
« Última modificación: 29 de Enero de 2019, 11:50:23 por Fer_TACA »
Todos los días se aprende algo nuevo.

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #103 en: 29 de Enero de 2019, 12:20:11 »
En A3 es donde está el pulsador de minimo, por lo que creo no debería de colocarse un led, de todas forma sin este led te digo... cuando caliblars el minimo lo hace bien, pero cuando calibro el maximo los leds C2 y C3 se ponen a parpadear y tambien los ultimos leds de visualizacion, y cuando apago espero un poco y vuelvo a encender no lucen ningun led.

He eliminado A3 como salida del programa y vuelto a compilar y ahora el minimo/maximo lucen bien los leds, pero esa secuencia despues de haber calibrado no la hace.
« Última modificación: 29 de Enero de 2019, 12:53:31 por manuel gómez »

Desconectado manuel gómez

  • PIC16
  • ***
  • Mensajes: 109
Re:Nivel para líquidos.
« Respuesta #104 en: 29 de Enero de 2019, 12:58:00 »
Fer_TACA tienes algún pic con el que pudieras probar en físico?



 

anything