Autor Tema: Temporizador variable  (Leído 4763 veces)

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

Desconectado maximusgames

  • PIC10
  • *
  • Mensajes: 5
Temporizador variable
« en: 18 de Agosto de 2005, 17:36:00 »
Hola, soy nuevo en esto de los PICS, apenas he estado leyendo acerca de programacion, asm, niple, mtlab, etc etc

Mi objetivo es desarrollar un circuito temporizador simple el cual tiene los siguientes requerimientos.

a) Que haya un pulso de entrada, con cada pulso el tiempo total del temporizador se debe incrementar en un intervalo de longitud i, donde ese intervalo debe ser configurable con un dip switch entre 5, 10, 15, 30 minutos.

b) Con el pulso de entrada debe empezar a correr el temporizador durante el tiempo definido (si durante ese tiempo presionan de nuevo el pulso se incrementara el tiempo total en intervalos de i)

c) Mientras el temporizador no este corriendo un salida del PIC debe estar en low lo cual me permitira deshabilitar otro circuito

d) Mientras el temporizador este corriendo esa misma salida debe estar en high lo cual me permitira habilitar ese otro circuito mientras no se acabe el tiempo del temporizador

e) Al cumplirse el tiempo, la señal de salida debe volver a low para volver a desactivar el circuito.

f) REQUERIMIENTO OPCIONAL PERO DESEABLE
Que se pueda tener un indicador visual del tiempo restante en minutos para que se cumpla el tiempo, es decir con un par de displays (2 digitos) puesto que el tiempo nunca llegara a mas de 99 mins, o bien si es mucho mas facil simplemente un led que parpadee cuando falte 1 minuto para que se termine el tiempo.

Estoy pensando en el PIC 16F84A que es el que tengo a la venta por aca, pero es algo caro (9 dolares), si alguien puede recomendar otro PIC mas barato (puesto que la funcionalidad no es muy compleja) adelante.

Estoy buscando un diseño de un PCB completo, no solo el programa hex del pic, pero tampoco soy atenido je je, lo que pasa es que se de programacion pero de electronica no conozco mucho asi que si de perdido me pueden dar algun tip con el software niple estara bien.

El circuito lo quiero para poder controlar el tiempo que mis clientes juegan con una maquina de videojuegos (yo las rento por tiempo, minutos, medias hora, etc), tengo varias maquinas y un "pulsador" industrial me cuesta aprox 180 dolares para cada una y trae mucha funcionalidad que no necesito.

Saludos

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Temporizador variable
« Respuesta #1 en: 19 de Agosto de 2005, 02:27:00 »
Pues bienvenido al foro, y verás como te ahorras muchos $ si lo haces tú mismo.

Para empezar, puedes echar un vistazo a un proyecto que publiqué en este hilo del foro:
http://miarroba.com/foros/ver.php?foroid=382972&temaid=2201898

Se trata de una insoladora microcontrolada, con display de tiempos. La única diferencia entre esta aplicación y la tuya es que en vez de tubos fluorescentes, tú vas a usar máquinas de videojuegos, porque lo único que hace el PIC es contar tiempo y activar un relé.

Bueno, échale un vistazo y nos vas contando tus avances, ¿vale?

Desconectado maximusgames

  • PIC10
  • *
  • Mensajes: 5
RE: Temporizador variable
« Respuesta #2 en: 20 de Agosto de 2005, 11:34:00 »
Muchas gracias nocturno,  voy a estudiar ese proyecto y mucho de mi trabajo estara basado en el.

En estos 3 dias que se me metio la idea de hacer eso he leido muchas paginas y documentos acerca de Microcontroladores, que si PIC, Intel, PICAXE, programadores, softwares, etc.

En este momento con tanta teoria en mi cabeza me puedo dar cuenta que mi requerimiento es realmente muy simple, de hecho con ayuda del Niple y del MPLAB ya cree un prototipo muy primitivo basado en el PIC16F84A y lo simule en el mismo MPLAB SIM y funciono perfecto, ahora estoy simulandolo en el PROTEUS (que maravillosa herramienta !!!)

Yo siempre he manejando lenguages de programacion de alto nivel, PHP, Visual Basic aunque siempre me ha gustado el lenguage C (en el cual me considero intermedio) y el ensamblador (aunque la ultima vez que lo practique fue en la facultad).  

Me puedo extender horas escribiendo pero ninguna palabra o frase puede describir el asombro que siento al descubrir todo el universo de posibilidades que se pueden hacer con estas maravillas de la electronica !!!  estoy fascinado.

En fin les ire narrando mis andanzas con este proyecto, tal vez ocasionalmente tenga alguna duda acerca de algun valor de resistencia, capacitor, etc ya que como les dije de electronica estoy en cero.  

Gracias por el apoyo a nocturno y a todo aquel que ocasionalmente visite este post para resolver alguna que otra duda que ire preguntando.

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Temporizador variable
« Respuesta #3 en: 20 de Agosto de 2005, 13:08:00 »
Como me recuerda mis comienzos jeje Flash (esque fue ayer xD como quien dice), un temporizador tb fue mi eleccion como primer proyecto con el 16F84A, que ahora controla mi modesta insoladora.

Yo lo hice con 3 displays de 7 segmentos, y para escojer el tiempo me ayudo de ellos, en la pantalla se visualiza el tiempo a contar y se va "seteando" con un teclado de 3 botones (+/-/ok), acabo de configurar al pulsar otra vez el boton "ok" empieza la cuenta activando un relé, y al llegar a 0 corta el relé.

Aunque es fácil relativamente, por aquellos entonces programaba en ASM, y trabajar con las interrupciones era un poco engorroso porque eras tu el que se preocupaba de guardar los parametros del pic como el STATUS, PC (Program Counter, que sabe por donde iba corriendo el programa), etc ... Pero en C, lo tienes mucho mas fácil amigo, aunque si te decantas por los displays tb tendrás que trabajar con el timer y su interrupción, puesto que el programa principal del PIC debe estar ocupandose de los displays multiplexandolos.

Espero haberte dado alguna idea, suerte con ese proyecto Sonrisa Gigante
Si juegas contra el mejor, pierdes como los demás.

Desconectado maximusgames

  • PIC10
  • *
  • Mensajes: 5
RE: Temporizador variable
« Respuesta #4 en: 22 de Agosto de 2005, 16:33:00 »
Actualizacion:
Empeze a prototipar mi proyecto sobre un diseño en PIC16F84A pero me he dado cuenta que debido a lo simple de mi diseño con un un PIC12C508A (el cual es mucho mas barato y ademas tiene un oscilador interno) es mas que suficiente.

Desafortunadamente he tenido que decir adios al niple y entrarle de lleno al assembler en fin que realizar el port no ha sido muy dificl y en estos momentos estoy con un nuevo prototipo en el proteus basado en ese chip.

Solo una duda para quien haya manejado el 12C508A , este chip tiene un oscilador interno (y es el que pienso usar) pero alguien sabe de los registros de calibracion que trae este chip?

Tengo el PDF de especificaciones tecnicas de ese microcontrolador pero no da muchos tips acerca de como configurarlo.  En fin que si no encuentro nada mejor no le voy a mover a eso y dejare sus defaults.

Saludos

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
RE: Temporizador variable
« Respuesta #5 en: 23 de Agosto de 2005, 02:15:00 »
No puedo responder a tu pregunta porque no sé, pero me gustaría advertirte algo por si no lo sabes: ese micro sólo lo podrás grabar una vez y ya está. Una vez grabado, no podrás borrarlo, corregir y grabar de nuevo.

Desconectado maximusgames

  • PIC10
  • *
  • Mensajes: 5
RE: Temporizador variable
« Respuesta #6 en: 24 de Agosto de 2005, 11:15:00 »
Gracias Nocturno por el tip, de hecho aun no he pasado a la etapa fisica del proyecto aun sigo simulando en proteus, hasta ahora todo bien, ya realiza lo que necesito.

Ahora viene lo interesante para los que les pedire algun consejo.  ya logre que el 12C508A saque una salida (pin gp0) en high durante el tiempo que esta activado, y cuando se acaba el tiempo la pone en low. ahora bien, con esa señal necesito "cortar" el acceso de los 4 puertos de los controles (son 4 puertos usb).  Cual es la mejor manera de lograr eso. es decir, tengo ahorita 2 opciones en mente:

a) Con 4 relevadores
b) Con 4 optoaisladores

En las 2 opciones tengo la misma pregunta, se puede con una sola salida del PIC mandar la señal para gobernar los 4 puertos ya sea con optoaislador o con relevadores?   ahora bien, cual opcion es mejor ya que de entrada me estoy llendo por la de los optoaisladores



Saludos

Desconectado Fer_TACA

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4069
RE: Temporizador variable
« Respuesta #7 en: 24 de Agosto de 2005, 11:30:00 »
Hola amigo:
Si mal no recuerdo la carga máxima que puede entregar un pin es del orden de los 20miliamperios.
Por tanto lcreo que os cuatro reles consumirán más de esa corriente y me parece que no los podras emplear.
Los optoacopladores, dependiendo del tipo,  te consumiran del orden de los 5miliamperios máximo. Así que 4X5=20 ¡Yo lo haria las conexiones directas!
Lo mejor que puedes realizar es comandar los reles y/o optoacopladores con un transistor o colocando un driver entre el pin del micro y las cargas.
Camelo
Todos los días se aprende algo nuevo.

Desconectado RaDoN

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1498
RE: Temporizador variable
« Respuesta #8 en: 24 de Agosto de 2005, 12:45:00 »
Exacto, conmutar el rele con un transistor, y si son muchos los que debes conmutar puedes usar un integrado de la serie ULN28xx, que son arrays de 7 u 8.

El pic puede entregar 20 mA en modo fuente, y 25 o 30 en modo sumidero creo recordar Rebotado
Si juegas contra el mejor, pierdes como los demás.

Desconectado maximusgames

  • PIC10
  • *
  • Mensajes: 5
RE: Temporizador variable
« Respuesta #9 en: 30 de Agosto de 2005, 15:14:00 »
ACTUALIZACION:
Ya termine mi prototipo fisico, lo realize con un PIC12C508A, estoy manejando un reelevador mediante un transistor aunque estoy buscando la forma de eliminarme la necesidad del relay.  (No se porque tengo el afan de simplificarlo mas y mas)

Ahorita ya funciona aunque para fines de pruebas no lo he puesto a contar minutos, sino segundos.  

Todavia me faltan los ajustes de tiempo (ya que me imagino que al cabo de varios minutos perdera algunos segundos que habra que ajustar, etc).  Y me faltan las pruebas de estres.

Muchas gracias a todos por sus tips y por este foro que me ha servido de mucho, en cuanto tenga la version final posteare aqui mi proyecto.

Desconectado minchomania

  • PIC10
  • *
  • Mensajes: 8
RE: Temporizador variable
« Respuesta #10 en: 02 de Febrero de 2006, 04:02:00 »
me gustaria saber si terminaste tu proyecto y si lo graste todas las funciones???