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

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

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #30 en: 21 de Abril de 2018, 08:54:04 »
Hasta el lunes no lo podré probar. En cuanto tenga resultados te comento.

Saludos.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #31 en: 25 de Abril de 2018, 05:50:57 »
Hola Fer_TACA, hasta ahora no he podido hacer pruebas referente al temporizador por monedas, pero de cualquier manera no funciona. He pasado el pulsador de trabajar con nivel alto a hacerlo con nivel bajo, cambiando por supuesto la resistencia de polarización de 10k, he revisado que utiliza el oscilador interno, he revisado que el Master Clear también lo tienes programado como interno.
Ya no se me ocurre nada mas que comprobar, pero no funciona.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #32 en: 25 de Abril de 2018, 07:38:04 »
Hola gg.técnico
Mira acabo de simularlo directamente el programa con otro micro y en una placa de desarrollo  y funciona bien.
Tienes que poner el oscilador como interno, colocar una resistencia de unos 4,7 K a positivo y al MCLR que es el pi RA3 en tu pic y configurarlo como Externo.

Va bien tanto simulado como en el físico.
¿puedes adjuntar el esquema de las conexiones que has realizado?
Te adjunto de nuevo, con mejoras el flowcode.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #33 en: 25 de Abril de 2018, 10:30:58 »
Ahora si, si funciona, en estos momentos estoy comprobando que los tiempos estén correctos. El único problema que existe es que al dar sobre el pulsador a veces se encienden todos los leds. Imagino que por software se podrá solucionar. Pero no lo tengo muy claro de como hacerlo.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #34 en: 25 de Abril de 2018, 11:10:28 »
A veces al actuar sobre el pulsador luce el primer led, pero no llega a apagarse.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #35 en: 25 de Abril de 2018, 14:39:36 »
Ahora si, si funciona, en estos momentos estoy comprobando que los tiempos estén correctos. El único problema que existe es que al dar sobre el pulsador a veces se encienden todos los leds. Imagino que por software se podrá solucionar. Pero no lo tengo muy claro de como hacerlo.

Para evitar los rebotes, dentro de la rutina "Incremento tiempo" puedes añadir un delay de no más de 30msg para probar que por ese efecto no  de tiempo a detectar varias acciones del pulsador.

A veces al actuar sobre el pulsador luce el primer led, pero no llega a apagarse.

No entiendo porque no se apaga porque cuando la cuenta llegue a 0 se está poniendo a =0 todo el puerto C que es el de las salidas.
No obstante te adjunto un fichero con una ligera modificación para forzar el apagado.


Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #36 en: 25 de Abril de 2018, 14:48:04 »
Gracias Fer_TACA, mañana lo pruebo y te comento.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #37 en: 25 de Abril de 2018, 14:49:41 »
Otra cosa,
en la prueba que hiciste de los tiempos ¿Cómo fueron?

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #38 en: 25 de Abril de 2018, 15:35:21 »
No pude comprobarlo, ya que cuando conseguía que solo se encendiera el primer led este no se apagaba.

Algo que he comprobado en el simulador es que al introducir una nueva moneda no descuenta lo que lleve consumido de la primera, ejemplo;
pulsamos una vez y nos da en esta ocasión 8 seg., pues si cuando van consumido 6 seg, volvemos a pulsar no nos da 10 seg. vuelve a darnos 16 seg., no se si es que no se puede ver bien en el simulador, pero de no ser así no descuenta lo que va consumido.

De todas formas mañana probaré este ultimo archivo que has publicado y ya te comento.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #39 en: 26 de Abril de 2018, 04:50:06 »
Buenos días Fer_TACA, he utilizado el ultimo archivo que subiste y he colocado un delay de 30 seg. tal y como me indicaste, con esto he corregido el anti rebote del pulsador, pero lamento decirte que en el primer pulso se enciende perfectamente el primer led y lo he dejado para controlar el tiempo de encendido y no llega a apagar nunca. Lo he tenido mas de 3 horas y no se a apagado.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #40 en: 26 de Abril de 2018, 10:17:21 »
Perdon el delay es de 30 milisegundos......

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #41 en: 26 de Abril de 2018, 14:08:25 »
Eso de 3 hora no puede ser:
si el timer TMR0 esta configurado como "internal clock" y con un preescaler de 1:32 con una frecuencia de reloj de 4Mhz sale una interrupcion cada 112,070Hz esto traducido a segundos da que la interrupcion se produce cada 8,192milisegundos.
Como el contador esta puesto en 122 sale un tiempo de 999,424 milisegundos. Prácticamente un segundo.
Es decir que el tiempo de la moneda se descontará cada 1segundo aproximadamente y si me dijiste que lo querías en 6.5minutos=390segunddos. eso es lo que hay puesto por lo que no puede ser.
Te adjunto 2 capturas de imagen de como debes tener la interrupción del TMR0 (si lo tienes como transición en TCKIN es evidente que no te va a funcionar) y también el proyecto con el delay que has puesto de 30 milisegundos. Quizás sea muy grande y deberías después de intentar bajarlo a lo máximo que puedas.

No pude comprobarlo, ya que cuando conseguía que solo se encendiera el primer led este no se apagaba.
Algo que he comprobado en el simulador es que al introducir una nueva moneda no descuenta lo que lleve consumido de la primera, ejemplo;
pulsamos una vez y nos da en esta ocasión 8 seg., pues si cuando van consumido 6 seg, volvemos a pulsar no nos da 10 seg. vuelve a darnos 16 seg., no se si es que no se puede ver bien en el simulador, pero de no ser así no descuenta lo que va consumido.
De todas formas mañana probaré este ultimo archivo que has publicado y ya te comento.

esto depende de la velocidad con que lo hayas simulado, si es lenta la suma evidentemente no la hace correctamente pues no da tiempo a decrementarse el contador de los 6 minutos. Si la simulacion es rapida la suma la realiza correctamente. ¡Es un simulador!

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #42 en: 26 de Abril de 2018, 14:30:22 »
Fer_TACA, "no es en el simulador" donde no llega a apagarse el led, "es hecho en físico", no obstante mañana volveré a revisar y probar lo que has subido.

Muchas gracias.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3231
Re:Temporizador por monedas
« Respuesta #43 en: 26 de Abril de 2018, 16:36:33 »
Lo de no apagarse Esta problems de la configuracion del TMR0. Lo de suma de tiempos que indicas si es  por el simulador.

Desconectado gg.tecnico

  • PIC12
  • **
  • Mensajes: 64
Re:Temporizador por monedas
« Respuesta #44 en: 27 de Abril de 2018, 06:53:34 »
Hola Fer_TACA, con este ultimo archivo que subiste he hecho una prueba en físico y funciona, solo tiene un problema que no entiendo porque lo hace, cuando finaliza el tiempo de una o varias monedas en lugar de apagarse los les lo que hace es que se encienden todos.