reporte final
TRANSCRIPT
-
Proyectos de Investigacin y Desarrollo Tecnolgico
Informe Tcnico de Avance
INSTITUTO TECNOLOGICO DE TAPACHULA AUTORES:
Dr. Hctor Peralta Corts.
Responsable
MGTI. Gustavo Reyes Hernndez.
Co-Responsable (Tecnologas de informacin)
M.enC. Anamim Villarreal Wong.
Sara Elizabeth Lpez Vzquez
Colaborador 1
Eugenia Duran Robles.
Colaborador 2
Jos de Jess lvarez Snchez
Colaborador 3
Proyecto Autorizado por la Direccin General de Educacin Superior
Tecnolgica.
Oficio:513.2.2/3339/2011 Clave de Registro: TAP-ISC-2011-106
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
2
Tabla de Contenido
1. Resumen del Avance del Proyecto ................................................................ 3
2. Avance que se reporta. ................................................................................. 4
3. Estado de Avance. ........................................................................................ 4
4. Metodologa. .................................................................................................... 5
5. Circuito Electrnico. ....................................................................................... 9
6. Diagrama de flujo del proceso de comunicacin del monedero electrnico
circuito. ............................................................................................................... 10
7. Programa para la comunicacin del monedero electrnico interfaz. ........ 11
8. Diseo realizado en Proteus........................................................................ 18
9. Diseo de placa en pcb wizard. .................................................................. 19
Anexos. ....................................................................................................... 21
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
3
1. Resumen del Avance del Proyecto
Se est desarrollando la segunda fase del Proyecto Desarrollo e Implementacin
de una Interfaz utilizando el protocolo MDB/ICP de Maquinas Vendig para el
Proyecto Red de Distribucin de Tortillas por expendedoras automatizadas.
En esta segunda fase se realizo el diseo de una interfaz para la comunicacin
que consta de una mquina tipo vending en la cual el cliente depositar monedas,
si se requiere de cambio esta se lo proporcionara, en ese momento obtendr un
comprobante con la cantidad depositada el cual entregar a la empleada, y le
proporcionara el producto sin tener contacto alguno con el dinero obteniendo as
un producto higinico en la cual el diseo de la interfaz se le implementara al
prototipo de mquina de cobro de tortilla por medio de tickets y se pondr en
marcha para poder evaluar los impactos.
Nota: Toda la informacin aqu presentada es confidencial, debido al acuerdo
firmado por el C. LAE. Carlos Humberto Cosso Escobar, representante de
industrias Cosso Escobar.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
4
2. Avance que se reporta.
De acuerdo a las actividades realizadas hasta el momento se reporta un avance
acumulado del proyecto de un 85%.
3. Estado de Avance.
El avance realizado en la primera etapa del proyecto como se menciono
anteriormente es del 85% en el proceso de investigacin y desarrollo de la interfaz
se ha realizado la identificacin del problema, los antecedentes y avances
cientficos, los objetivos se han planteado y la metodologa se ha definido
satisfactoriamente, cada informacin de la interfaz.
Se llevo a cabo el anlisis del protocolo MDB/ICP para maquinas vending, con
este protocolo se llevo al desarrollo para la comunicacin del monedero
electrnico y la interfaz del mismo, descifrando as cada una de las partes para
poder establecer la comunicacin y la forma de cmo trabaja internamente cada
componente del cash flow 7000.
Tambin se realizo una revisin de forma minuciosa, de la interfaz antes de
conectar a la corriente elctrica, para evitar algn problema con los circuitos ya
armados, por lo tanto en este proceso se tiene un avance del 90%.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
5
4. Metodologa.
La metodologa que se ha utilizado en la primera etapa para el alcance de los
objetivos es la investigacin y desarrollo del proyecto por lo que se realiza el
anlisis para establecer la comunicacin entre el protocolo MDB/ICP y la interfaz.
Se recaba la informacin mediante un enfoque de investigacin de proyectos ya
existentes que emplean el protocolo MDB/ICP, y el anlisis de los diferentes
dispositivos que se estn utilizando.
Se realizan pruebas con distintos circuitos elctricos y electrnicos, que nos
permitan recabar informacin sobre los hechos y aspectos que interesen en la
investigacin.
Anlisis del Protocolo MDB/ICP durante el desarrollo del proyecto.
El siguiente apartado del Protocolo MDB/ICP sirve para asignarle direcciones a
los datos.
Byte de Formato Velocidad de Transmisin: 9600 NRZ Formato de Bits en Serie:
1 Bit de inicio 8 Bit de datos 1 Bit de modo
1 Bit de stop 11 Total de Bits
Comandos Direccin LSB inicio 0 1 2 3 4 5 6 7 Modo MSB Stop
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
6
Modo Bit: Maestro-Perifrico.
El bit de modo que es diferente entre los bytes de direccin y los bytes de
datos. El bytes de direccin debe ser ledo por todos los perifricos, los bytes de
datos slo es ledo por el perifrico que se ha mandado. El bit de modo est ajustado (uno lgico) para indicar un byte de direccin,
y no se establece (cero lgico) para indicar un byte de datos
Modo Bit: Perifrico-Maestro El bit de modo debe establecerse en el ltimo byte enviado cuando se envan
datos desde un esclavo al maestro.
Este apartado del Protocolo MDB/ICP es para establecer la comunicacin del
monedero VMC.
Cdigos de Respuesta Los siguientes cdigos representan para los bytes ACK, NAK y RET:
ACK 00H (Reconocimiento de los datos enviados) RET AAH (Retransmitir los datos que se enviaron nuevamente)
NAK FFH (No reconocimiento)
Nota: Cuando se recibe un NACK, ACK, o RET el dispositivo receptor en este caso el VMC, cuenta el nmero de bits establecidos en el byte. Este mtodo requiere al menos dos errores de bit en el byte antes que el byte puede ser mal interpretado y por tal motivo ya no sea reconocido.
El siguiente diagrama representa una transmisin tpica cuando un perifrico est
inactivo.
VMC: ----- -------- ---------------------------------------------------------------------------------- ADD* CHK Perifrico: ----------------------------------------- -------------------------------------------------------------- ACK*
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
7
El siguiente diagrama representa una transmisin tpica cuando un perifrico tiene datos para volver. VMC: --------- ------------ ----------------------------------------------------- ---------------- ADD* CHK ACK Perifrico: ------------------------------------------- ----------- --------- -------------------------- DAT DAT CHK* El siguiente diagrama representa una transmisin tpica cuando el CCM tiene datos para enviar. VMC: -------- ------------ ----------- ---------- ------------------------------------------- ADD* DAT DAT CHK Perifrico: ------------------------------------------------------------------------------- -------------------------
ACK*
El siguiente diagrama representa una transmisin tpico cuando el VMC determina
una CHK no es correcto. El VMC responder cualquiera de las dos maneras:
Enviar un NAK al perifrico para indicar que la informacin no se ha recibido
correctamente entonces realizara otras tareas.
Nota: Cuando el maestro responde con NAK (no reconocimiento) el esclavo tiene
que repetir la respuesta, a fin de asegurar la ejecucin (es decir, recepcin de
moneda, etc.) O el VMC puede enviar una retransmisin (RET) al perifrico para
retransmitir los datos enviados anteriormente.
VMC: _______ ________ ___________ _________________ ______ _______ ADD* DAT CHK RET ACK Perifrico: ________________ ____ ____ ____ ____ ____ ________ DAT DAT CHK* DAT DAT CHK*
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
8
Este diagrama representa en la que el perifrico no responde dentro de los 5 mm de tiempo de espera (t-respuesta). VMC: ______ ___________ _____________ _________ ___________ ADD* CHK ADD* CHK Perifrico: _____________________________________ ________________ [Silencio] ACK*
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
9
5. Circuito Electrnico.
Nota: En la siguiente imagen se muestra el circuito que se utilizo para establecer
la comunicacin entre la interfaz y el monedero electrnico, por tal motivo este
circuito es confidencial.
Figura 1. Circuito del monedero.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
10
6. Diagrama de flujo del proceso de comunicacin del monedero electrnico circuito.
Figura 2.- Diagrama de flujo.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
11
7. Programa para la comunicacin del monedero electrnico interfaz.
#include #device adc=8 #FUSES NOWDT #FUSES HS #FUSES NOPUT #FUSES NOPROTECT #FUSES NODEBUG #FUSES NOBROWNOUT #FUSES NOLVP #FUSES NOCPD #FUSES NOWRT #define use_portb_kbd TRUE #use delay (clock=4000000) #use standard_io(b) #use standard_io(C) #include #include #include #use rs232(baud=9600,xmit=PIN_C2,rcv=PIN_C3,bits=9,stream=com1,restart_wdt) #use rs232(baud=9600,parity=N,xmit=PIN_C0,bits=8,stream=com2,restart_wdt,FORCE_SW) #locate rc9bit = 0x18 #locate tx9bit = 0x98 char tecla; char string[6]; char k,i,j; int entrar = 0; float total = 0; float debe = 0; int pagado = 0; int16 contador=0; int reinciarSistema = 0; int reboteBtn1 = 0, reboteBtn0 = 0, reboteBtn2 = 0; int8 vec_mdb[10],vmdb=0,flag_bit_mode=0,cambio=0,mon=0,mon_ant=0,precio=0; void borra_vec(void); void trans(int8 a, int8 b); void poll(void); void reset_mon(void); void despacha(byte d); void com_mon(void); void teclado(void); void mensaje(); void pregunta(); void limpiar(); void imprimir();
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
12
void total_pagar(); void limpiar_string(); void reiniciar(); #int_RDA void RDA_isr(void){ vec_mdb[vmdb]=getc(com1); if ((rc8bit&0x04)==0){ vmdb=vmdb+1; } else{ if (vmdb>10){ trans(0x00,0x00); } flag_bit_mode=0; } CLEAR_INTERRUPT(int_RDA); } void main(){ delay_ms(30); port_b_pullups(TRUE); //Pull-up para RB0 lcd_init(); kbd_init(); SET_TRIS_C(0xbf); enable_interrupts(INT_RDA); enable_interrupts(GLOBAL); delay_ms(3000); reset_mon(); mensaje(); while(true){ for (j=0;j
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
13
void teclado(void){ k=kbd_getc(); if (k>='#' && k 0) total = atof(string); precio = total * 2; total_pagar(); entrar = 2; } else if (k=='C' && entrar == 2){ reinciarSistema = 1; delay_ms(200); despacha(mon*5);
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
14
delay_ms(200); reiniciar(); } } void reiniciar(){ mon = 0; pagado = 0; total = 0; precio = 0; entrar = 0; contador = 0; mensaje(); } void mensaje(){ limpiar(); lcd_gotoxy(3,1); printf(lcd_putc,"TORTILLERIA\n"); lcd_gotoxy(3,2); printf(lcd_putc,"LA BAJADITA"); } void pregunta(){ limpiar(); lcd_gotoxy(1,1); lcd_putc("CUANTA TORTILLA"); lcd_gotoxy(1,2); printf(lcd_putc,"DESEA: "); } void limpiar(){ lcd_putc("\f"); limpiar_string(); } void limpiar_string(){ string[0]=0; string[1]=0; string[2]=0; string[3]=0; string[4]=0; i=0; } void total_pagar(){ lcd_putc("\f"); lcd_gotoxy(1,1); printf(lcd_putc,"PAGAR: "); lcd_gotoxy(9,1); printf(lcd_putc, "%f",total); lcd_gotoxy(1,2); printf(lcd_putc,"DEBE: "); lcd_gotoxy(9,2); printf(lcd_putc, "%f",total); }
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
15
void imprimir(){ lcd_putc("\f"); lcd_gotoxy(1,1); printf(lcd_putc,"IMPRIMIRENDO"); lcd_gotoxy(1,2); printf(lcd_putc,"TICKET: "); lcd_gotoxy(9,2); printf(lcd_putc, "%f",total); /*CODIGO DE IMPRIMIR EL TICKET*/ fprintf(com2, "\f T O R T I L L E R I A \n\n"); fprintf(com2,"\f L A B A J A D I T A \n\n"); fprintf(com2,"\f C A N T I D A D \n\n"); fprintf(com2,"\f "); fprintf(com2,"%f", total); fprintf(com2," P E S O S \n\n\n\n\n\n"); fprintf(com2,"\f "); } void borra_vec(void){ for (vmdb=0;vmdb
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
16
void despacha(byte d){ borra_vec(); trans(d,0x00); delay_ms(1); trans(d+17,0x00); delay_ms(2); } void chek_mon(void){ int8 var_com=0; while ((flag_bit_mode==0)){ var_com++; } if (vec_mdb[0]>0x01A){ switch (vec_mdb[0]){ case 0x20: mon=mon+1; break; case 0x21: mon=mon+2; break; case 0x22: mon=mon+4; break; case 0x23: mon=mon+10; break; case 0x24: mon=mon+20; break; case 0x30: mon=mon+1; break; case 0x31: mon=mon+2; break; case 0x32: mon=mon+4; break; case 0x33: mon=mon+10; break; case 0x34: mon=mon+20; break; default: break; } } } void com_mon(void){ poll(); chek_mon(); if (mon!=mon_ant){ if(mon>=precio){ delay_ms(1000); cambio=mon-precio; if (cambio>0){ delay_ms(200); despacha(cambio*5);
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
17
delay_ms(200); } mon=0; pagado = 1; } if(pagado == 0){ debe = (float)(total - ((float) mon/2)); lcd_gotoxy(9,2); printf(lcd_putc,"%f", debe); } else if(pagado == 1 && reinciarSistema == 0){ imprimir(); } else if(reinciarSistema == 1){ reinciarSistema = 0; } mon_ant=mon; } }
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
18
8. Diseo realizado en Proteus.
Figura 3.- Diseo en en programa proteus.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
19
9. Diseo de placa en pcb wizard.
Figura 4.- Diseo real.
Figura 5.- Diseo de trabajo.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
20
Figura 6.- Diseo de grabado.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
21
Anexos.
-
Proyectos de Investigacin y Desarrollo Tecnolgico Informe Tcnico de Avance
22