Autor Tema: Temporizador por monedas  (Leído 6487 veces)

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

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #120 en: 13 de Mayo de 2018, 10:17:38 »
Si introducimos 3 monedas una tras otra la suma del tiempo es perfecta y los leds se van apagando según el tiempo consumido, pero si introducimos una moneda y a los 3 minutos introducimos otra, es verdad que también suma el tiempo perfectamente, pero el segundo led se apaga antes de lo previsto; y me pregunto ¿se puede hacer que los leds se apaguen del primero al ultimo y no del ultimo al primero? o sea, echamos una moneda y nos da 6.5 min, cuando van consumidos 3 min echamos una segunda moneda la cual nos da otros 6.5 min, pues bien se debería apagar primero el primer led y dejar encendido el segundo hasta llegar a consumir esos 6.5 min.

Esto es debido a que en el programa de Santiago, que es el que estas utilizando, la suma se realiza sobre las fichas y suma tiempos en función de cada ficha añadida, ya que estas tienen un valor unitario en función del tiempo. Para corregir lo normal seria colocar la activacion del TMR en la ruina de control de tiempo, pero hay que cambiar el programa con mucho cuidado y logica para que el tiempo no esté siempre funcionando.

Respecto a la otra consulta de que los leds se apaguen al reves si seria posible, pero ya te complicará el circuito pues necesitas en todo momento conocer el valor de la ficha, el tiempo y el led encendido. Particularmente no lo veo sentido que se vayan apagando al reves. Imaginate que solo introduces una moneda, ¿como se encenderia el led, ya que estás en la ultima fase del tiempo?
Yo lo dejaria como está.

Desconectado lucegiar2005

  • PIC18
  • ****
  • Mensajes: 409
Re:Temporizador por monedas
« Respuesta #121 en: 13 de Mayo de 2018, 21:41:04 »
Hola gente, un abrazo. Tal como dice Fermín mi programa suma fichas y con ellas tiempo, pero es correcto. Tomemos como ejemplo que transcurra la mitad del tiempo de una ficha e introdusca una ficha, con lo que se mostrará el segundo led, pero por la mitad del tiempo que sumó, ello es porque cada x tiempo resta una ficha, sea la que sea que este indicando se apagará porque el tiempo de una ha transcurrido. Te dejo un .hex para que lo pruebes, es del 7, en el Flow cumple lo programado, fijate en placa si la armaste. Surte y saludos.


*Monedero.zip
(0.94 kB - descargado 29 veces)


Nota: Agregá un led, si gustas, a A1 que sirve como testigo del ingreso al programa de visualización. Lo puse porque tenía un error no encontrado.
« Última modificación: 13 de Mayo de 2018, 21:55:22 por lucegiar2005 »
- Santiago -

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #122 en: 18 de Mayo de 2018, 13:09:51 »
Buenas tardes, hola Santiago, el ultimo archivo que subiste "a mi" no funciona, el problema no se cual es. Te puedo decir que ya me es imposible saber en donde reside el error, como le comentaba a Fer_TACA, ya no se que hacer. Hice una pequeña placa, he probado todo lo que habéis subido, y no hay manera de que funcione, si bien es cierto que tu software lo pasé a Flow V5 y sí que va.



Os doy muchas felicitaciones y un fuerte abrazo.

Desconectado lucegiar2005

  • PIC18
  • ****
  • Mensajes: 409
Re:Temporizador por monedas
« Respuesta #123 en: 23 de Mayo de 2018, 08:52:07 »
Ok, lamento que así ocurra. No quiero prometer nada pues poco estoy en el tema, pero apenas pueda busco una placa para probar y los trato de hacer funcionar, o al menos fracasaré con todo exito. Ciertamente funcionan en el debuger de Flowcode, pero algunos ni en Proteus lo hacen. Perdí las versiones 6 y 7 y no creo recuperarlas, por lo que me quedó la 5 como unica posibilidad. Recordá que en los casos en que el oscilador sea interno el masterreset no debe declararse on. En fin, si logro algo te comento. Un abrazo a ambos.
- Santiago -

Desconectado Robert76

  • PIC12
  • **
  • Mensajes: 83
Re:Temporizador por monedas
« Respuesta #124 en: 23 de Mayo de 2018, 09:19:57 »
Hola Amigo gg.tecnico, yo he realizado exactamente el proyecto que pretendes. En mi caso, cuando el tiempo ya está corriendo y luego se inserta otra moneda, lo que hago es acumular en un contador la cantidad de monedas insertadas.
Por otro lado cuando transcurre el tiempo seteado, es decir llega a 0, lo que hace es decrementar una cuenta al acumulador de monedas y el tiempo se reestablece otra vez.
Ahora si el acumulador de monedas llega a 0, el proceso se interrumpe apagando la máquina que da servicio.
« Última modificación: 23 de Mayo de 2018, 09:22:04 por Robert76 »

Desconectado lucegiar2005

  • PIC18
  • ****
  • Mensajes: 409
Re:Temporizador por monedas
« Respuesta #125 en: 23 de Mayo de 2018, 12:06:54 »
Hola Robert76, como estás? Es exactamente lo que hacen los ultimos que subí, el tema es si a vos te funcionó en placa o no, pues en Flowcode va, pero no en placa. Un abrazo.
- Santiago -

Desconectado Robert76

  • PIC12
  • **
  • Mensajes: 83
Re:Temporizador por monedas
« Respuesta #126 en: 23 de Mayo de 2018, 12:14:47 »
Que tal lucegiar2005, el proyecto quedó instalado y funcionando. Y se encuentra replicado en varios clientes. Por el momento no tengo fotos, ya que ésto data de hace varios años.
Tengo dos versiones, uno con LCD y otro con display a LEDs, éste último es más robusto ante la humedad que el LCD.
Básicamente cuenta con un pequeño menú que permite modificar, cantidad de monedas para iniciar, el tiempo minutos, tiempo de segundos(fraccionado de 5" en 5"), por último al ingresar a un párametro Z, muestra la cantidad de monedas acumuladas(guardadas en EEPROM) para hacer la gestión administrativa.
Además cuando quedan 55" antes de finalizar el tiempo, da un aviso acústico, para advertir al cliente de insertar otra moneda o apurar el trámite :D
 Abrazo.-
« Última modificación: 23 de Mayo de 2018, 12:20:06 por Robert76 »

Desconectado lucegiar2005

  • PIC18
  • ****
  • Mensajes: 409
Re:Temporizador por monedas
« Respuesta #127 en: 23 de Mayo de 2018, 13:24:54 »
Ok, gracias por comentarlo, es que no he tenido mucha experiencia en Flow y no todas han sido de exito, todo bien en el debug pero en placa fallan mucho o no funcionan. Si tienes algún aporte al respecto se que muchos lo apreciarán enormemente. Un abrazo grande.
- Santiago -

Desconectado Robert76

  • PIC12
  • **
  • Mensajes: 83
Re:Temporizador por monedas
« Respuesta #128 en: 23 de Mayo de 2018, 15:47:03 »
Bueno, el principal problema que puede haber al montar todo en placa sin buen resultado, para empezar el microcontrolador debe contar con condensador de 100nF, lo más próximo posible a sus dos pines de alimentación, eso por un lado.
Por otro lado, si una señal que ingresa al PIC, proviene del exterior, lo más seguro es optoacoplarla, por el tema interferencias, además de la seguridad galvánica.
En algunos casos he recurrido, a pasar todo el grupo de cables que ingresan/egresan del módulo por un núcleo toroide de ferrite.
Con 5 vueltas, me quite de encima de dolores de cabeza que interferían con el funcionamiento del PIC.
El diseño del PCB, también es determinante, usar planos de GND en la mayor área posible.
Espero te sirva.
                                   Saludos.-
« Última modificación: 23 de Mayo de 2018, 15:51:52 por Robert76 »

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #129 en: 23 de Mayo de 2018, 16:50:46 »
Bueno, el principal problema que puede haber al montar todo en placa sin buen resultado, para empezar el microcontrolador debe contar con condensador de 100nF, lo más próximo posible a sus dos pines de alimentación, eso por un lado.
Por otro lado, si una señal que ingresa al PIC, proviene del exterior, lo más seguro es optoacoplarla, por el tema interferencias, además de la seguridad galvánica.
En algunos casos he recurrido, a pasar todo el grupo de cables que ingresan/egresan del módulo por un núcleo toroide de ferrite.
Con 5 vueltas, me quite de encima de dolores de cabeza que interferían con el funcionamiento del PIC.
El diseño del PCB, también es determinante, usar planos de GND en la mayor área posible.
Espero te sirva.
                                   Saludos.-

Gracias Roberto,
muchas de estas cosas que indicas ya se las indique al otro usuario que había que comprobar y tener muy en claro.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #130 en: 24 de Mayo de 2018, 16:13:50 »
Hola a todos, muchas gracias por todas vuestras opiniones y respuestas, pero hay algo raro ya que como comenté hace unos días el programa de Santiago lo copié en Flowcode V5 generé el código hex lo volqué en el Pic y ahí si que funciona. Lo único que modifiqué fue declarar las variables al inicio del programa.

Si funciona habiéndolo generado en Fowcode V5, me pregunto que no existen problemas de filtrado, u otro que pudiera interferir en el Pic.

Saludos.


 

anything