automatizaciÓn electronica de bebedero …148.206.53.84/tesiuami/uami10967.pdf · sp es el...

28
i UNIVERSIDAD AUTONOMA METROPOLITANA UNIDAD IZTAPALAPA DIVISIÓN DE CIENCIAS BÁSICAS E INGENIERÍA LICENCIATURA EN INGENIERÍA ELECTRÓNICA AUTOMATIZACIÓN ELECTRONICA DE BEBEDERO Y COMEDERO POR MEDIO DEL PROTOTIPO UAMI - 80188 PRESENTAN: TOVAR RAMIREZ SERGIO ALEJANDRO FLORES VARGAS RIGOBERTO ASESOR: MTRO. EN I. DAVID UZZIEL LÓPEZ ILLESCAS FIRMA DEL ASESOR: _____________________ MÉXICO D.F., 26 DE NOVIEMBRE DEL 2003.

Upload: duongtuyen

Post on 23-Sep-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

i

UNIVERSIDAD AUTONOMA METROPOLITANA

UNIDAD IZTAPALAPA

DIVISIÓN DE CIENCIAS BÁSICAS E INGENIERÍA

LICENCIATURA EN INGENIERÍA ELECTRÓNICA

AUTOMATIZACIÓN ELECTRONICA DE BEBEDERO YCOMEDERO POR MEDIO DEL PROTOTIPO UAMI - 80188

PRESENTAN:

TOVAR RAMIREZ SERGIO ALEJANDROFLORES VARGAS RIGOBERTO

ASESOR: MTRO. EN I. DAVID UZZIEL LÓPEZ ILLESCAS

FIRMA DEL ASESOR: _____________________

MÉXICO D.F., 26 DE NOVIEMBRE DEL 2003.

ii

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

ÍNDICEPROTOTIPO UAMI 80188 1

Unidad de Ejecución 1

- Registros de propósito general 1

- Registros índices y apuntadores 1

- Unidad aritmética y lógica 1

- Registro de banderas 1

- Banderas de estado 2

- Banderas de control 2

- Unidad de interfase del canal 2

- Registros segmentados 2

- Sumador dedicado de 20 bits 3

- Apuntador de instrucciones 3

Tarjeta de experimentación para un microprocesador 80188 3

- Diagrama a bloques 4

- Especificaciones del prototipo UAMI 80188 5

Arquitectura del microprocesador 80188 6

Introducción 8

El motor paso a paso 9

- Descripción 9

- Funcionamiento 9

- Motor unipolar 9

- Control del motor unipolar 11

- Motor bipolar 12

iii

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

El optoacoplador 13

- El optoacoplador MOC 3011 Aplicaciones 13

Un sistema automatizado 14

- Descripción del sistema 14

- Control de la bomba sumergible 15

-Circuito controlador de la bomba sumergible 16

-Circuito controlador del motor que mueve al cilindro 17

diagrama del circuito controlador del motor 18

-Circuito controlador del interruptor 19

-Algunas Imágenes 20

Código del programa para el sistema 21

Bibliografía 25

1

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Unidad de Ejecución

Es la responsable de decodificar y ejecutar todas las instrucciones, está constituidapor 4registros de propósito general, 2 registros base, 2 registros apuntadores, unregistro de banderas y la unidad aritmética y lógica. Ya que no posee conexión conel canal del sistema, obtiene las instrucciones de una cola de 4 bytes (6 bytes parael 8086) que forma parte de la unidad de interfase del canal (BIU). Cuando unainstrucción requiere accesar a la memoria o a un periférico, la unidad de interfasedel canal ejecuta los ciclos de canal necesarios ya sea para leer o escribir los datos.

Registros de propósito general

Son los registros: AX, BX, CX, DX y pueden considerase completos o dividirse enuna parte alta: AH, BH, CH, DH y en una parte baja: AL, BL, CL, DL. Por lo tanto,cada uno se puede utilizar como un registro de 16 bits o dos registrosindependientes de 8 bits. Cualquiera de estos registros puede ser el acumuladorpara operaciones aritméticas y lógicas.

Registros índice y apuntadores

Los registros BP, SP, SI, DI sólo se pueden utilizar completos. BP, realiza lafunción de apuntador base en el segmento de pila y para varias formas dedireccionamiento. SP es el apuntador del segmento de pila. SI es un apuntador aun arreglo fuente de datos y DI es el apuntador a un arreglo destino. Estos 4registros se utilizan en los diferentes modos de direccionamiento delmicroprocesador.

Unidad aritmética y lógica

En esta unidad se realizan todas las operaciones aritméticas y lógicas que puedeejecutar el microprocesador y el resultado de éstas afecta los diferentes bits delregistro de banderas a fin de ejecutar instrucciones condicionales de transferenciadel programa.

Registro de banderas

Posee 6 banderas de estado y tres de control.

2

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Banderas de estado

Las banderas de estado reflejan el resultado de una operación aritmética o lógica ypermiten al programa cambiar la secuencia de su ejecución, dependiendo delestado de alguna bandera.

Banderas de control

Estas banderas permiten controlar tres estados del microprocesador.

Unidad de interfase del canalYa que la unidad de ejecución no tiene una conexión directa al canal del sistema,obtiene códigos, operandos y datos a través de la unidad de interfase del canal queejecuta todos los ciclos necesarios. Esta unidad consta de 4 registros de segmento,registros de comunicación interna, el apuntador de instrucciones, una cola de 4bytes, la lógica de control del canal, y un sumador dedicado para formar ladirección física. Mientras la unidad de ejecución decodifica y ejecuta unainstrucción, la unidad de interfase del canal ejecuta un ciclo en el que lee yalmacena en la cola, el byte de la siguiente localidad de memoria. Esto es, ambasunidades del CPU trabajan en forma paralela. Por lo tanto, en un alto porcentaje delprograma la unidad de ejecución tiene disponible, en la cola, el código de lasiguiente instrucción a ejecutar y de esta forma, prácticamente desaparece eltiempo del ciclo de recuperación de código (fetch) lo que resulta en un incrementomuy notable en la velocidad de ejecución de la mayoría de los programas. Launidad de ejecución normalmente mantiene llenos los 4 bytes de la cola ya que alestar vacío un byte ejecuta un nuevo ciclo a fin de llenarlo.

Registros SegmentadosEl espacio de memoria de los miembros originales de la familia 8086/8088 es de 1Mbyte que se divide en segmentos lógicos de 64 Kbytes. La unidad de interfasedel canal tiene cuatro registros de segmento:

3

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CS segmento de códigoDS segmento de datosES segmento extraSS segmento de pilaEl registro CS tiene la dirección del segmento, de hasta 64kbytes, donde seencuentra el programa en ejecución. DS es un segmento de datos y ES,típicamente, también lo es.

Sumador dedicado de 20 bits

La dirección física la forma el sumador dedicado de la unidad de interfase del canalcon el contenido de un registro de segmento, más un desplazamiento (offset). Porejemplo en la reinicialización, varios de los microprocesadores de esta familiainician la ejecución del programa en la localidad FFFF0H. En este caso, elcontenido de todos los registros de segmento del microprocesador y del apuntadorde instrucciones es 0000H con excepción del registro del segmento de código quedespierta con FFFFH.

La forma usual para dar las direcciones es mediante una dirección lógica que da lasdirecciones del segmento y del desplazamiento que para la reinicialización es:FFFFH:0000H a partir de la dirección lógica se forma la dirección física medianteuna suma como la anterior.

Apuntador de InstruccionesEl registro apuntador de instrucciones (IP), es de 16 bits y siempre apunta a ladirección de la siguiente instrucción. Por lo tanto, es muy similar al registro PC delos microprocesadores Z-80, 8080, 8085. Ninguna instrucción tiene acceso directo aeste registro pero, indirectamente mediante algunas instrucciones se puedecambiar, salvar o incluso obtener del segmento de pila.Las únicas diferencias de arquitectura entre el 8086 y el 8088 son la cola deinstrucciones, en el 8086 es de 6 bytes, consecuencia del ancho del canal de datosque es de 16 bits para el 8086.

TARJETA DE EXPERIMENTACIÓN PARA UN MICROPROCESADOR 80188.La tarjeta de experimentación es la parte principal para desarrollar un sistemamínimo que tiene los siguientes objetivos: 1) Utilizar en aplicaciones específicas un microprocesador de la familia 80X8X y los periféricos más usados en las tarjetas madre de computadoraspersonales. 2) Desarrollar aplicaciones que sean trasladadas a una computadora personaldel tipo IBM y compatibles. 3) Utilizar un microprocesador con varios periféricos integrados a fin de conocer

4

Universidad Autónoma Metropolitana. C.B.I. Diciembre,2003

las ventajas que tienen en el diseño y construcción de prototipos el utilizardispositivos VLSI de muy alto nivel de integración.

Además del microprocesador, la tarjeta de experimentación consta de los siguientescomponentes:

1) Una memoria ROM de 8Kbytes 27642) Una memoria RAM estática de 8Kbytes 62643) Controlador de teclado despliegue 82794) Cristal de 16MHz5) Lógica de pegado

La tarjeta de experimentación, a fin de tener una mayor flexibilidad, sólo contienelos componentes básicos del sistema mínimo, pero contiene conectores y unaranura , con una configuración de canal PC-XT, que permite agregar, en una tarjeta

adicional de propósito general, la circuitería específica que requiere la aplicación.

En la ranura quedan a disposición del usuario todas las señales necesarias pararealizar la conexión con la tarjeta adicional de propósito general, que pueden ser deteclado/despliegue, adquisición, comunicación, etc.

DIAGRAMA A BLOQUES:

5

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

ESPECIFICACIONES DEL PROTOTIPO UAMI 188

Procesador

80188

Frecuencia de reloj

Hasta 8 MHz.

Memoria

EPROM: 8 KBytes RAM: 8 KBytes

Direcciones

EPROM: FE00:0 FFF:F RAM: 0000:0 01FF:F

Interfases

2 conectores de 20 terminales 1 ranura tipo canal de PC-XT 1 controlador de teclado/despliegue 8279

Interrupciones

5 internas, enmascarables 4 externas, enmascarables 1 no enmascarables

Dimensiones

Ancho: 14.5 cm Largo: 21.5 cm

Alimentación

5 Volts

6

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Técnica de construcción

Dos caras sin conexión.

ARQUITECTURA DEL MICROPROCESADOR 80188

La unidad de procesamiento central del microprocesador 80188 es esencialmente lamisma que la del 8086/8088 y tiene como principal característica incorporar dosunidades independientes de procesamiento. Estas son la unidad de ejecución (EU),y la unida de interfase del canal (BIU). La unidad de ejecución decodifica y ejecutalas instrucciones y la unidad de interfase del canal realiza todas las operaciones delcanal del sistema como son los ciclos de recuperación de código (fetch), lectura dedatos y escritura de resultados.

Las dos unidades trabajan de manera independiente y paralela, que es una de lasprincipales características de los microprocesadores de tercera generación. Estaforma de funcionamiento les proporciona mayor velocidad, ya que un alto porcentajedel programa la unidad de ejecución tiene disponible, en la cola de instrucciones, elcódigo de la siguiente instrucción a ejecutar.

Además de la unidad de procesamiento central 8088, el microprocesador 80188incluye los periféricos siguientes:

• Generador de reloj hasta una frecuencia de 8MHz. • Dos canales independientes de acceso directo a memoria. • Un controlador de interrupciones programable. • Tres temporizadores programables de 16 bits. • Lógica programable para señales de habilitación tanto para memoria como para el espacio de entrada/salida.

Por mejoras en su diseño, tiene una velocidad de ejecución que es de tres a seisveces más rápida que un 8086 /8088 a 8MHz y ejecuta diez instruccionesadicionales.

7

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Los periféricos integrados del 80188 se controlan mediante registros que formanparte de un control interno mapeado en las últimas doscientas cincuenta y seislocalidades del espacio de entrada/salida. Es posible reubicar el bloque de controltanto en el espacio de entrada/salida como en memoria. No se requiere de ningunainstrucción especial para tener acceso a los registros del bloque de control y puedenser accesados en cualquier momento.

Microprocesador 80188. Diagrama Funcional Simplificado a Bloques.

8

Universidad Autónoma Metropolitana. C.B.I. Diciembre,2003

INTRODUCCIÓN

Un sistema automatizado consiste en llevar a cabo funciones específicas para las

cuales ha sido creado. La ventaja de un sistema así es la facilidad con la que

cualquier persona puede operarlo sin necesidad de conocer su estructura interna.

En el sistema mínimo se utiliza el microprocesador 80188, principalmente por

pertenecer a la familia del 8086 / 8088, que es en la que se basan las computadoras

personales del tipo IBM y compatibles, que constituyen actualmente la plataforma

con mayor disponibilidad. Los microprocesadores 80186 / 188 tienen como

característica distintiva integrar a varios de los periféricos más utilizados en las

tarjetas madre de computadoras personales, estar disponibles en diferentes

versiones y ser particularmente atractivos para aplicaciones dedicadas en las que

se requieran características similares a las de una computadora personal. El 80188,

por su canal de datos de 8 bits, facilita su interfase a un menor costo.

9

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

MOTOR PASO A PASO.

Descripción:

Un motor paso a paso, se diferencia de un motor convencional en que en éste sepuede posicionar su eje en posiciones fijas o pasos, pudiendo mantener la posición.Esta peculiaridad es debida a la construcción del motor en si, teniendo por un ladoel rotor constituido por un imán permanente y por el otro el stator construido porbobinas, al alimentar estas bobinas se atraerá el polo del magnético opuesto al rotorcon respecto al polo generado por la bobina y este permanecerá es esta posiciónatraído por el campo magnético de la bobina hasta que ésta deje de generar elcampo magnético y se active otra bobina, haciendo avanzar o retroceder el rotorvariando los campos magnéticos en torno al eje del motor y haciendo que éste gire.

Funcionamiento:Los motores paso a paso pueden ser de dos tipos, según se muestra en la siguienteimagen:

MOTOR UNIPOLAR

El motor unipolar normalmente dispone de 5 o 6 cables dependiendo si el comúnesta unido internamente o no, para controlar este tipo de motores existen tresmétodos con sus correspondientes secuencias de encendido de bobinas, el comúnirá conectado a +Vcc o masa según el circuito de control usado y luego tan solotendremos que alimentar la bobina correcta para que avance o retroceda el motorsegún avancemos o retrocedamos en la secuencia.

Las secuencias son las siguientes:

10

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Paso simple:

Esta secuencia de pasos es la mas simple de todas y consiste en activar cadabobina una a una y por separado, con esta secuencia de encendido de bobinas nose obtiene mucha fuerza ya que solo es una bobina cada vez la que arrastra ysujeta el rotor del eje del motor.

PASO ABCD PASO ABCD PASO ABCD PASO ABCD1 1000 2 0100 3 0010 4 0001

Paso doble:

Con el paso doble se activan las bobinas de dos en dos, con lo que se hace uncampo magnético más potente que atraerá con más fuerza y retendrá el rotor delmotor en el sitio. Los pasos también serán algo más bruscos debido a que la accióndel campo magnético es más poderosa que en la secuencia anterior.

PASO ABCD PASO ABCD PASO ABCD PASO ABCD1 1100 2 0110 3 0011 4 1001

Medio Paso:

Combinando los dos tipos de secuencias anteriores se puede mover el motor enpasos más pequeños y precisos, es así que se tiene el doble de pasos demovimiento para el recorrido total de 360º del motor.

11

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

PASO ABCD PASO ABCD PASO ABCD PASO ABCD1 1000 2 1100 3 100 4 0110

PASO ABCD PASO ABCD PASO ABCD PASO ABCD5 0010 6 0011 7 0001 8 1001

CONTROL DEL MOTOR UNIPOLAR:

Para controlar un motor paso a paso unipolar deberemos alimentar el común delmotor con Vcc y conmutaremos con masa en los cables del devanadocorrespondiente con lo que haremos pasar la corriente por la bobina del motoradecuada y esta generará un campo electromagnético que atraerá el polomagnetizado del rotor y el eje del mismo girará.

Para hacer esto podemos usar transistores montados en configuración Darlington ousar un circuito integrado como el ULN2003 que ya los lleva integrados en suinterior aunque la corriente que aguanta este integrado es baja y si queremoscontrolar motores mas potentes deberemos montar nosotros mismos el circuito decontrol a base de transistores de potencia.

El esquema de uso del ULN2003 para un motor unipolar es el siguiente:

12

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

Las entradas son TTL y se activan a nivel alto, también disponen de resistencias depolarización internas con lo que no deberemos de preocuparnos de esto ypodremos dejar "al aire" las entradas no utilizadas. Las salidas son en colectorabierto.

MOTOR BIPOLAR:

Este tipo de motor lleva dos bobinados independientes el uno del otro, paracontrolar este motor se necesita invertir la polaridad de cada una de las bobinas enla secuencia adecuada, para esto necesitaremos usar un puente en "H" o driver tipoL293b para cada bobina y de este modo tendremos una tabla de secuencias comola siguiente:

PASO A B C D1 +Vcc Gnd +Vcc Gnd2 +Vcc Gnd Gnd +Vcc3 Gnd +Vcc Gnd +Vcc4 Gnd +Vcc +Vcc Gnd

Cada inversión en la polaridad provoca el movimiento del eje, avanzando este unpaso, la dirección de giro se corresponde con la dirección de la secuencia de pasos,por ejemplo para avanzar el sentido horario la secuencia seria 1-2-3-4,1-2-3-4.... ypara sentido anti-horario seria; 4-3-2-1,-4-3-2-1...

13

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

EL OPTOACOPLADOR

El optoacoplador es un dispositivo que se compone simplemente de un paquete quecontiene un LED infrarrojo y un fotodetector, tal como un diodo de silicio, un par detransistores Darlington, o un SCR. Los optoacopladores son capaces de convertiruna señal eléctrica en una señal luminosa modulada y volver a convertirla en unaseñal eléctrica. La gran ventaja de un optoacoplador reside en el aislamientoeléctrico que puede establecerse entre los circuitos de entrada y salida.

El funcionamiento de los optoacopladores es muy simple, se basa en que al ledinfrarrojo emisor, le llega la señal a transmitir, la luz emitida por el led, varia enintensidad de acuerdo a la magnitud de la señal de entrada, esta luz puede activarya sea un fotodiodo, un fototriac, un transistor.

En el caso del fotodiodo, o del fototriac, estos se activarán cuando la intensidad dela luz del led infrarrojo llegue a cierto nivel. Pero en el caso del transistor, la señal sepuede transmitir tal como es a la entrada en el diodo, debido a que la luz del diodoactúa sobre la base de fototransistor, esto hace que la corriente que deja pasar elfototransistor, varíe de acuerdo a la cantidad de luz que recibe por parte del led.

La respuesta de longitud de onda de cada dispositivo se ajusta para que sea lo másidéntica posible. Se diseñan con tiempos de respuesta tan pequeños que puedenemplearse para transmitir datos en el rango de MHz.

El tiempo de conmutación de un optoacoplador disminuye con el aumento decorriente, en tanto que para muchos dispositivos ocurre exactamente lo contrario.

APLICACIONES

Una de las mayores aplicaciones de los optoacopladores, es como interfase depotencia de un sistema digital a un motor, un switch, una máquina, cualquiersistema que no trabaje al nivel de voltaje o corriente de los circuitos digitales (por logeneral de 3 a 10 V), logrando manejar niveles altos de voltaje (120VDC, ocualquier otro voltaje de alterna o directa, tan solo de debe de cuidar que eloptoacoplador sea el adecuado).

14

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003DESCRIPCIÓN DEL SISTEMA.

El sistema consiste en dos depositos, el deposito No.1 es el deposito de alimento y eldeposito No.2 es el deposito de agua.El depósito No.1 sirve una ración ( previamente determinada) de croquetas en elplato e inmediatamente después el depósito No. 2 sirve otra ración previamentedeterminada) solo que esta vez será de agua.

El funcionamiento del sistema es el siguiente:Ya que el sistema consta de dos depósitos, el primero (de croquetas) consta de uncilindro el cual esta hueco por uno de sus lados y por medio de la tarjeta UAMI-188 yun circuito amplificador de potencia que se encuentran conectados a un circuitositwch el cual se activa para hacerlo girar, para que cuando gire 90º el cilindro dejecaer una primera ración, al gira otros 90º el cilindro se cierra y evita la caída decroquetas. El cilindro es girado nuevamente (360º) para repetir la misma rutina y serviruna segunda ración. Cabe mencionar que el cilindro se encuentra fijado de una basede metal en la cual también se encuentra fijado el motor de corriente directa que esalimentado por un voltaje de ±12 Volts.

Inmediatamente después de que el motor del cilindro fue activado para servir la dobleración de croquetas se activa una bomba de agua sumergible que se encuentra en elinterior del depósito de agua. Esta bomba es controlada por medio de otro circuitoamplificador de potencia que se encuentra conectado a la tarjeta.

Para llevar a cabo el funcionamiento de este sistema se realizo programación enlenguaje ensamblador para el prototipo UAMI 80188 y utilizamos varias tablillaselectrónicas para montar los circuitos controladores que mostraremos mas adelante.Nota: Mostraremos los circuitos que realizamos para los motores a pasos, aunqueutilizamos un motor de corriente directa para fines que así nos convinierón.

15

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CONTROLADOR DE LA BOMBA

En la figura puede verse una aplicación práctica de gobierno de un motor de c.a.mediante un triac. La señal de control (pulso positivo) llega desde un circuito demando exterior a la puerta inversora de un ULN2003 que a su salida proporciona un0 lógico, por lo que circulará corriente a través del diodo emisor perteneciente alMOC3011 (optoacoplador). Dicho diodo emite un haz luminoso que hace conducir alfototriac a través de la resistencia, tomando la tensión del cátodo del triac depotencia. Este proceso produce una tensión de puerta suficiente para excitar al triacprincipal que pasa al estado de conducción provocando el arranque del motor(bomba).

Es importante recordar que el triac se desactiva automáticamente cada vez que lacorriente pasa por cero, es decir, en cada semiciclo, por lo que es necesarioredisparar el triac en cada semionda, o bien mantenerlo con la señal de controlactivada durante el tiempo que consideremos oportuno. Como se puede apreciar,entre los terminales de salida del triac se sitúa una red RC cuya misión es protegeral semiconductor de potencia, de las posibles sobrecargas que se puedan producirpor las corrientes inductivas de la carga, evitando además cebados no deseados.Es importante tener en cuenta que el triac debe ir montado sobre un disipador decalor constituido a base de aletas de aluminio de forma que el semiconductor serefrigere adecuadamente.

16

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CIRCUITO CONTROLADOR DE LA BOMBA SUMERGIBLE

En la siguiente figura se muestra la bomba sumergible.

Para llevar a cabo el circuito controlador de la bomba sumergible, utilizamos elsiguiente material:

1 tablilla de laboratorio1 resistencia de 2.2K,2 resistencias de 200Ω,capacitor de 0.5µf,SCR 6071A,cabezal de 20 pinescable listón.soldadura

El circuito se muestra en seguida.

17

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CIRCUITO CONTROLADOR DEL MOTOR QUE MUEVE ALCILINDRO.

A continuación veremos el motor y el circuito empleado para su control.

Para la elaboración del circuito controlador del motor utilizamos el siguientematerial:

1 tablilla de laboratorio1 circuito integrado SN74LS245Nun circuito integrado ULN2003AN2 conectores (conectado el motor y al voltaje alimentador de 12 Volts.)

soldadura

18

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

A continuación se muestra el diagrama de este circuito:

19

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CIRCUITO CONTROLADOR DEL INTERRUPTOR

Para lleva a cabo el circuito controlador del interruptor utilizamos el siguientematerial:

1 tablilla de laboratorio1 circuito integrado SN74LS245N1 cabezal de 20 pines1 cable listón1 switch soldadura

El circuito es el siguiente:

20

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003ALGUNAS IMAGENES

21

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

CÓDIGO DEL PROGRAMA.

.186;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; PROGRAMA DE PRUEBA PARA EL RPOYECTO DE INGENIERIA ELECTRONICA 2;;;;ESTE PROGRAMA VERIFICA SI SE PRESIONA ALGUN SWITCH EXTERNO, PARA;;POSTERIORMENTE ECHAR A EJECUTAR EL MOTOR A PASOS, EL CUAL DARA UNNUMERO;;DE VUELTAS DETERMINADO, PARA DESPUES CONTINUAR A ECHAR A EJECUTAR;; UNA BOMBA SUMERGIBLE POR UN TIEMPO DETERMINADO.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

CODE SEGMENTMAIN PROC FAR

ASSUME CS:CODE,DS:CODE

;********** INICIALIZACION DEL UMCS ********** ORG 1FF0H

MOV DX,0FFA0H MOV AX,0FE3FH OUT DX,AL

DB 0EAH DW 0000H DW 0FE00H

ORG 0000H

;********** INICIALIZACION DEL LCS ********** MOV DX,0FFA2H MOV AX,01FFH OUT DX,AL

;********** INICIALIZACION DEL PACS ********** INC DX INC DX MOV AX,003FH OUT DX,AL

22

;********** INICIALIZACION DEL MMCS ********** INC DX INC DX MOV AX,03FFH OUT DX,AL

;********** INICIALIZACION DEL MPCS ********** INC DX INC DX MOV AX,84BFH OUT DX,AL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;------------------------------------- MOV AX,CS MOV DS,AX MOV ES,AX

XOR AX,AX MOV SS,AX MOV SP,2000H ;INICIALIZACION DE LA PILA MOV ES,AX

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;REVISION POR MEDIO DE ENCUESTA, PARA VERIFICAR SI ALGUN SWITCH ESTA ;;OPRIMIDO ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

ENCUESTA:IN AL,01H ;Puerto de entrada para sensores PCS0 CMP AL,00H JZ ENCUESTA MOV BL,00HVEZ: ROR AL,1 INC BL JC VERIFICA JMP VEZ

VERIFICA:CMP BL,01H JZ MOTOR JMP ENCUESTAMOTOR: MOV CX,0082H CALL GIRAR MOV CX,03A0H CALL BOMBA JMP ENCUESTA HLT

MAIN ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; PROCEDIMIENTO PARA GIRAR EL MOTOR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

GIRAR PROC NEAR

23

MOV DX,0101H MOV AL,00HREPITE: PUSH CX MOV CX,088FH AQUI: OUT DX,AL ;PCS2 LOOP AQUI ROL AL,1 POP CX LOOP REPITE RETGIRAR ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; PROCEDIMIENTO PARA ACTIVAR LA BOMBA SUMERGIBLE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

BOMBA PROC NEAR MOV AL,00HREPITE1:PUSH CX MOV CX,088FH AQUI1:OUT 81H,AL ;PCS1 LOOP AQUI1 ROL AL,1 POP CX LOOP REPITE1 RETBOMBA ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; RESET;;;;ESTA RUTINA SE EJECUTA AL INICIALIZAR EL 80188 POR ENCENDIDO O PORRESET. ;;SE REPROGRAMA UMCS' QUE ES LA UNICA SE¥AL DE HABILITACION ACTIVA DESPUES;;DEL RESET PARA LOS ULTIMOS 8 KBYTES DEL ESPACIO DE MEMORIA Y SE BRINCAAL ;;INICIO DE ESE ESPACIO O SEA A LA DIRECCION F000:dfff.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG 1FF0H MOV DX,0FFA0H ;UCS=8K 3 EDOS. MOV AX,0FE3FH ;DE ESPERA OUT DX,AL ;AHORRA UN CICLO DE BUS DB 0EAH ;BRINCA AL INICIO

24

DW 0000H ;DE LA ROM 2764 DW 0FE00H

CODE ENDSEND MAIN

25

Universidad Autónoma Metropolitana. C.B.I. Diciembre, 2003

BIBLIOGRAFÍA.

1. Abel, A.P. IBM PC Assembly Language and Programming. Fourth Edition.Prentice Hall. New Jersey 1998

2. Intel Corporation. 80C186/80C188. Users manual. California 1992

3. Suárez, F.A., Jiménez V.D., Hernández M.E., Bautista L.M.A. Tarjeta deexperimentación para un microprocesador 80C188EB. Reporte de Investigación.División de Ciencias Básicas e Ingeniería. UAM Iztapalapa. 1999.

4. Motorola. Thyristor Device Data .

5. Motorola. Optoelectronics Device Data.

6. Motorola . TTL Device Data.