Planificación y Proyectos de Ingeniería Electrónica -- Soluciones de TI
  Proyecto Contador de Monedas con PIC
 

Contador digital con PIC 16F873A y modem GSM MOD9001C


La solución se ve en forma gráfica así:

 



Se cuenta la cantidad de monedas que entran y salen de una maquina de juegos, luego se guarda en memoria EEPROM y cada viernes, una vez a la semana, el operador del casino, aprieta un botón y así envía un mensaje SMS  a un Servidor que colecta los datos de los contadores de esa maquina y de varios más, para llevar la contabilidad del negocio.

A continuación breve explicación general del diseño de la interfase:

Se tuvo que hacer una conexión con la plaqueta procesadora de la maquina de juegos en el punto donde salen los voltajes que van hacia los contadores analógicos de la maquina para acoplarlos a la interfase en cuestión.

La interfase electrónica esta compuesto  primero de un 4093  el cual posee características de disparador schmitt, además al punto donde entran y salen las monedas ponemos un divisor de tensión ya que el voltaje que maneja el dispositivo colector de monedas es de 12 volts.

Utilizamos los  registros TMR0 (contador de 8 bits) y TMR1 (contador de 16 bits) del PIC 16F873A para contar tanto las monedas que entran como las que salen, es decir que configuramos  estos registros en modo contador de eventos. El prescaler de ambos registros se configura a uno, o sea, una moneda que entra o sale equivale a un incremento del registro.
Se tocan los bits T1CKPS0 = 0 y T1CKPS1 = 0 del registro T1CON para configurar TMR1 y los bits TOCS = 1 y PSA = 1 del registro OPTION para configurar TMR0.

Otra parte interesante del proyecto es la utilización de la propia EEPROM del PIC para almacenar los valores de dichos registros, cada vez que se presiona los pulsadores que corresponden a sus eventos y así producir una interrupción para guardar los datos.

Utilizamos interrupción por cambio de estado en  las patitas del puerto B para esta parte del programa. Interrupción por RB7 para guardar las monedas que entran e interrupción por RB6 para guardar las monedas que salen.

Para el envío de los datos de los contadores utilizamos interrupción por cambio de estado en el pin RB0, este pin también va conectado a una salida del disparador scmitt.

En la parte de firmware, luego de configurar todos los registros, el programa se queda en un loop esperando por alguna de las interrupciones que pueda ocurrir, en tanto que la cuenta de monedas que entran como de las que salen es independiente de la secuencia del programa, estas se van sumando en los registros en modo contador hasta que ocurra una interrupción para guardar esos datos.
link: PROYECTO AUTOMATIZACION DE MAQUINAS DE JUEGO.doc

Obs.: en las interrupciones se ejecutan las rutinas de interrupción - ISR - 1 lee el registro TMR0  y guarda en memoria EEPROM,  2 lee el registro TMR1 y guarda en memoria EEPROM y 3 lee ambos contadores y hace la comunicación RS-232 con el modulo GPRS.

***** PARTE DE HARDWARE-- INTERFASE ****


***** PARTE DE SOFTWARE -- LADO SERVIDOR  

Aqui les dejo la rutina de inicialización de los registros del PIC !!

Link para mirar la placa PCB toda montada con los componentes, vea la foto: SMS_PCB_picture

Por ultimo, el link al diagrama del circuito en mapa de imagen: SMS Comodin.bmp

 
   
 
=> ¿Desea una página web gratis? Pues, haz clic aquí! <=
Presupuestos sin compromiso