tablero indicador de turnos

Upload: mauro-moya-pianista

Post on 02-Mar-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 Tablero Indicador de Turnos

    1/6

    Tablero Indicador de Turnospara Oficinas Pblicas

    Maggiolo Gustavo Caballero Raul Reula Germn Pfarher IvnEmail: {gustavomaggiolo, raul_caballero, germanreula}@frp.utn.edu.ar [email protected]

    Facultad Regional ParanUniversidad Tecnolgica Nacional

    Almafuerte 1033 3100. Entre Ros. Argentina

    Eje temtico: aplicaciones acadmicas

    Palabras claves: tablero, turnos, circuito electrnico.

    RESUMENEl presente trabajo se encuadra en las actividades prcticas de la ctedra Tcnicas Digita-

    les II dentro de la carrera de Ingeniera en Electrnica en la UTN-FRP y tiene como objeto

    iniciar a los alumnos en la programacin de los microcontroladores.

    Este caso consiste en el desarrollo de un tablero indicador de turnos, similar al que usan

    en oficinas pblicas y otras organizaciones, con dos dgitos indicando el turno, un digito

    para el nmero de caja o escritorio y una bocina que indica el cambio del turno.

    El sistema se conforma por dos cajas, o escritorios, que tienen dos pulsadores uno de

    ellos, y el otro tiene tres pulsadores, que ya indicaremos para que; un tablero con los dgi-

    tos que indica el turno y el nmero de caja. Cada pulsador esta conectado directamente al

    mdulo que visualiza los nmeros; a su vez, identifica que nmero de pulsador se presio-

    n para indicar el nmero de caja que esta libre.

    Uno de los mdulos pulsadores cuenta con la opcin de resetear el indicador de turnos, lo

    que permite restablecer el sistema para iniciar una nueva secuencia de atencin.

    Cada vez que se incrementa el contador de turnos, se hace sonar una bocina para indicarel evento de cambio de turno.

    IntroduccinNo es de hoy en da, que llegado a unaoficina, de servicios pblicos o privados,las personas tengan que esperar paraser atendidos.En su comienzo se realizaba la selec-cin de quien era atendido haciendouna cola, uno tras otro, y cuando llega-ra el turno la persona se acercaba a la

    caja, o ventanilla, para realizar el trmi-te. Luego se fueron incorporando otrasalternativas como ser, la persona quellegara sacaba de un aparato un nme-ro y se dedicaba a esperar, cuando lellegaba su turno, que poda ser indicadopor el cajero, nombrando en voz alta, elnumero que segua.Hoy en da, este esquema de atencinal pblico se puede mejorar en varios

  • 7/26/2019 Tablero Indicador de Turnos

    2/6

    aspectos, como son: la incorporacinde un dispositivo electrnico que visua-lice el nmero del turno que espera seratendido, de forma clara y en un lugaraccesible a la vista por todos, el aviso

    por medio de un sonido que el turnoacaba de cambiar, alertando a las per-sonas que esperan ser atendidas, laincorporacin del nmero de caja oventanilla que esta libre lo cual agilizala bsqueda de la caja desocupada.

    Esquema general del sistemaEn la imagen siguiente se observa unesquema general del sistema.

    Pulsadores VisualizacinMCU

    Bocina

    Esquema General

    Est formado por el bloque de los pul-sadores, que estn conectador directa-mente al microcontrolador, la bocina, el

    microcontrolador en si y el bloque devisualizacin, el cual incorpora los dis-play de siete segmentos que indican,en dos dgitos, el turno, y tambin, enun dgito, el de la caja o ventanilla.

    Kits utilizadoPara desarrollar el sistema los alumnosutilizan los kits de entrenamientoEVAL08QTY[1] que posee el laborato-rio. De este modo los alumnos no nece-sitan adquirir el microcontrolador hautilizar dado que el mismo kits ya loincorpora. En la prxima figura se ob-serva una imagen del kits.

    Kits EVAL08QTY

    Este kits incorpora los circuitos necesa-rios para programar el microcontroladory la herramienta de debugger al mismotiempo, lo cual es muy verstil a la horade hace prcticos, adems de que in-

    corpora un conector tipo header elcual conecta el kits con el protoboard, oplaca de armado, del alumno para des-arrollar los trabajos prcticos. La si-guiente imagen muestra la distribucinde pines del conector.

    Conector del Kits

    Es de destacar que el kits EVAL08QTYsirve para dos tipos de microcontrola-dores, y de ah su nombre tambin,para los MC68HC908QTx y losMC68HC908QYx, mediante zcalos dis-puestos en la placa se puede trabajarcon uno u otro.

    El trabajo prctico lo desarrollan con elmicrocontrolador MC68HC908QY4 [2]que es el que trae el kits EVAL08QTY.

    Circuito ImplementadoEn la siguiente figura se observa unesquema con ms detalle, del circuitoimplementado por los alumnos, paradesarrollar el trabajo prctico.

    8 8 8Turno Caja

    PTB(7..4)

    PTB1PTB2PTB3

    BCDa7segmentos

    PTB0

    PTA1

    PTA3

    PTA4

    PTA2

    MCU

    PTA0

    RSTBuzzer

    Circuito implementado

    A continuacin se describirn los circui-tos para los pulsadores, el buzzer y losdisplay.

  • 7/26/2019 Tablero Indicador de Turnos

    3/6

    Los pulsadoresEl circuito de los pulsadores se muestraen la prxima figura. Es de notar que elmismo circuito incorpora un capacitor,C1, para reducir el rebote del pulsadoral ser presionado.

    Circuito Pulsadores

    Esta configuracin del pulsador la in-corporan todos los pulsadores del sis-tema, ya sea, los de subir y bajar elturno como el de reset.

    El buzzerEn la siguiente figura vemos el circuitocorrespondiente a la buzzer.

    Circuito buzzer

    En el circuito se observa un divisor re-sistivo entre R2 y R3, el cual tiene co-mo objetivo reducir la tensin aplicadaa la base del transistor Q1. La alimen-tacin del buzzer, VCC, depender del

    tipo de dispositivo que se utilice,habiendo disponibles en diversas ten-siones.Al utilizar este puerto para el buzzer, elPTA0, no se lo podr hacer sonar; alestar conectado con el debbug, debidoa que ste utiliza este pin para comuni-carse con el MCU.

    Los display

    El la siguiente figura se observa el cir-cuito de los display.

    Circuito de los display

    Como se puede apreciar, la salida deldato se ingresa a un decodificador deBCD a 7 segmentos (que puede ser elintegrado 74LS48), la salida ingresa alos display de siete segmentos ctodocomn. Mediante otras tres salidas delmicrocontrolador, que son B1, B2 y B3,se activa el digito correspondiente aldato que se quiere visualizar. Esta tc-nica (de multiplexado de los dgitos) seutiliza dado los pocos pines que dispo-ne el microcontrolador.Para activar el dgito correspondiente sedebe poner en alto (o uno lgico) el pindel puerto B, ya sea B1, B2 o B3. Estoes as dado que los display son de c-todo comn y lo que hace el transistores alimentarlos conectarlos a la refe-

    rencia de cero volts o no. Tambin hayque notar el tipo de decodificador utili-zado. En este caso se planteo el74LS48 cuyas salidas son activas enalto; lo cual se utilizan activando undisplay ctodo comn.

    El MicrocontroladorEl microcontrolador utilizado por losalumnos en el trabajo prctico, como

    ya se mencion es el MC68HC908QY4de Freescale. Dicho dispositivo tiene lassiguientes caractersticas, en cuanto acapacidad de memoria se refiere.

    Dispositivo Tamao de la FLASH ConversorA/D

    Pines

    MC68HC908QT1 1536 bytes - 8 pinesMC68HC908QT2 1536 bytes 4ch, 8 bit 8 pinesMC68HC908QT4 4096 bytes 4ch, 8 bit 8 pinesMC68HC908QY1 1536 bytes - 16 pinesMC68HC908QY2 1536 bytes 4ch, 8 bit 16 pinesMC68HC908QY4 4096 bytes 4ch, 8 bit 16 pines

  • 7/26/2019 Tablero Indicador de Turnos

    4/6

    Y la distribucin de pines se muestra acontinuacin:

    Distribucin de pines del MCU

    Las caractersticas ms importantes sepueden resumir en las siguientes:

    Voltajes de operacin de 5V y 3

    V (VDD). 8 MHz bus interno a 5V, 4 MHz

    a 3V. Capacidad de auto-despertarse

    de STOP. Programacin de FLASH en sis-

    tema. 128 Bytes de RAM. Hasta 13 lneas de I/O. 6 bits para interrupciones de te-

    clado (KBI). Interrupcin externa (IRQ). Mapeo en memoria de los regis-

    tros de I/O. Modos de ahorro de energa

    STOP y WAIT.

    El softwareEl software para desarrollar el progra-ma del microcontrolador se desarrolla

    en CodeWarrior, provisto por la mismaempresa Freescale fabricante de losdispositivos.ste es un entorno integrado se desa-rrollo (IDE) que permite programar enassembler, o en los lenguajes de C yC++. Es de destacar que para progra-mar en lenguaje ensamblador no tienelimitaciones. La interfaz de programa-cin se puede observar en la siguienteimagen:

    Imagen del proyecto en CodeWarrior

    En el programa se tienen diferentesbloques. Como son:

    Inicializacin del microcontrola-dor (funcin MCU_init).

    Lectura de teclado (funcin

    KBD_Read). Incrementar o disminuir el n-

    mero del turno (funcionesADD_TURNO y SUB_TURNO).

    Borrado del nmero del turno(funcin isrINT_RST de la inte-rrupcin de IRQ).

    Refresco de los nmeros en losdisplay (funcin Refresh_DISP).

    Activacin de la bocina (funcinBuzzer_ON)

    La funcin para inicializar el MCU, quecomo ya se dijo es la funcin denomi-nada MCU_init, es generada automti-camente por el propio programa Code-Warrior. Lo hacer a travs de una inter-faz grfica, muy intuitiva, donde elalumno configura las distintas opciones

    del microcontrolador, como son: oscila-dor (tipo, frecuencia, etc.), pines deentradas y de salida, configuracin delas interrupciones, etc., que como es deesperar, depender del tipo de disposi-tivo, se tendrn unas u otras opcionesde configuracin. A continuacin semuestra la pantalla de configuracin delas interrupciones:

  • 7/26/2019 Tablero Indicador de Turnos

    5/6

    Configuracin de la interrupcin IRQ

    En este caso, la interrupcin es la delpin IRQ (PTA2), la cual genera la fun-cin isrINT_RST que es para estableceren cero el indicador de turno y borra el

    indicador de caja.A continuacin se puede observar elcdigo de la rutina de interrupcin:

    Cdigo perteneciente a la interrupcin

    La funcin de lectura de teclado es unpoco ms extensa, por lo que no seescribir l cdigo completo, solo sedar un detalle de su funcionamiento.La deteccin de la tecla presionada serealiza con la ayuda de bits que son

    utilizados como banderas, indicando laocurrencia de cierto evento. En el grafi-co siguiente se muestra un diagrama delos valores que va adquiriendo el pinpropio del MCU y los valores de lasbanderas.

    Pin MCU

    Flag Key_A_Dn

    Flag Key_Press

    Banderas para detectar el accionamiento de los pul-sadores

    La funcin para incrementar o disminuirel contador es muy similar, por eso que

    en la siguiente imagen se observa elcdigo correspondiente al incrementodel indicador de turno.

    Funcin que incrementa el nmero de turno

    Se observa que luego de incrementar elturno se hace el ajuste decimal del n-mero.

    Las funciones que siguen utilizan la in-terrupcin del timer 1 como base de

    tiempo. Estas funciones son la del re-fresco de los display y la de activar elbuzzer. La interrupcin del timer seproduce cada 10 milisegundos.Para el primer caso, en cada interrup-cin se va colocando los datos de lasdecenas, unidades y del nmero decaja y se va activando el display quecorrespondiente.En el caso del buzzer se lo activa y se

    lanza un timer de 1 segundo, al termi-nar el tiempo del timer se lo detiene yse apaga el buzzer.

    Consideraciones finalesCon este proyecto se pretende que elalumno se inicie en la programacin deeste tipo de microcontroladores, es dedestacar que en el plan de la ctedra yalos alumnos anteriormente a esta prc-tica han desarrollado trabajos prcticoscon otras marcas de microcontrolado-res, por eso este trabajo tiene ciertas

  • 7/26/2019 Tablero Indicador de Turnos

    6/6

    caractersticas en cuanto al grado dedificultad del mismo.Por otro lado, el indicador de turno, a lahora de montarlo en la realidad, setendran que hacer ciertas modificacio-

    nes, como son: el display, que este tra-bajo se considero uno de siete segmen-tos, debera ser uno realizado con LED,para tener un tamao considerable ypoder ser visualizado desde cierta dis-tancia lejana del tablero. Otro elemen-to, y no menos importante, es que eneste trabajo se conectaron los pulsado-res directamente al microcontrolador.En la prctica esta pensado reemplazar

    los pulsadores con mdulos de RF XBeepara poder tener una mayor cantidad

    de pulsadores, y por ende, una mayorcantidad de cajas para atender a losusuarios. En el caso de la utilizacin demdulos inalmbricos los pulsadores sepueden conectar directamente al mdu-

    lo RF, y desde el MCU se recibira eldato cada vez que se presione un pul-sador.

    Referencias

    [1] Kits didctico EVAL08QTYhttp://www.electrocomponentes.com

    [2] MC68HC908QY4 Data Sheet, Frees-

    cale, Documento: MC68HC908QY4.pdf