Anterior | Inicio

CONTROL DE UN PEQUEÑO VENTILADOR POR PUERTO PARALELO





En este apunte se dará una reseña de las características del puerto paralelo de una computadora personal, así como el control de un pequeño ventilador de 2” por medio de este puerto y con la ayuda del lenguaje de programación QBASIC VER 7.1.

EL PUERTO PARALELO

El puerto paralelo recibe este nombre debido a que envía y recibe datos en forma paralela ( al mismo tiempo) 8 bits (1 ó 0), por medio de 8 cables individuales.
Este puerto por lo general está dedicado a conectar impresoras, aunque se pueden conectar en él escanners , otra PC o cualquier otro equipo, es por esto que además de los 8 bits de datos este puerto utiliza 5 señales más que controlan la impresora y 5 que vienen de la misma como se muestra a continuación:



A continuación se describen los pines:

DATOS
DO-D7
Salida
2-9
Terminales de datos de D0 a D7
ESTADO
BUSY
Entrada
11
Con una Valor alto indica que la impresora está ocupada y no puede recibir datos nuevos. Puede ponerse a nivel alto en caso de error

ACK
Entrada
10
Con un valor bajo indica la impresora que ha recibido un dato y está disponible para recibir otro.

PE
Entrada
12
Un valor alto se maneja un error de falta de papel.

SLCT IN
Entrada
13
Un valor alto se indica que la impresora está en línea.

ERROR
Entrada
15
Con un valor bajo se indica que se ha generado un error en la impresor, falta de papel o algún otro.
CONTROL
SELECT
Salida
17
Activa a nivel bajo. Indica a la impresora que se ha seleccionado ésta.

INIT
Salida
16
Con un nivel bajo se envía un reset a la impresora

AUTOFD
Salida
14
A nivel bajo, la impresora se encarga de hacer un salto de línea al recibir el carácter de retorno de carro

STROBE
Salida
1
Validación de datos. Cuando la impresora detecta un nivel bajo, acepta un dato.



18-25
Retornos de los bits de los datos 0 hasta 7.

Se utilizan voltajes tipo TTL con señales no balanceadas , por lo que es propenso a recibir ruido y por ende provocar errores.
Si en esta interfaz son utilizados cables comerciales de impresora, su longitud máxima puede ser de 4,5m, si es utilizado un cable especial (tipo blindado) podría alcanzar una longitud de hasta 15m.
Con la aparición de normas y estándares que definen partes y conexiones de una computadora personal, muchos fabricantes no se apegan a éstas, más aún si nuestra computadora es de las denominadas “armadas”, se podrán tener diferencias de voltajes en nuestro puerto, al no tener un voltaje TTL = 5V.
Podremos medir incluso hasta 3,6V que aún puede ser considerado como un 1 lógico, sin embargo esto nos limitará el largo de nuestro cable ya que en el extremo se puede encontrar un voltaje menor y nuestro circuito lógico al cual estamos controlando lo interpretaría de forma errónea. Si se llega a medir un voltaje inferior de 3,6V, será necesario verificar nuestro puerto si está activado o presenta un error.
Es por esto que es recomendable conectar un cable corto y añadir un circuito buffer ( como por ejemplo el CI 7407, ya que solo aporta corriente y estabiliza voltajes).
Es necesario tener en cuenta que esta interfaz, como los demás componentes de la computadora son muy delicados, se debe tener mucho cuidado al conectar cualquier cosa en la que se esté experimentando, ya que puede existir un corto circuito y dañar a la interfaz, no exigir mucha corriente tampoco pues este puerto solo puede proporcionar algunos cuantos miliamperes, realizar la conexión mediante optoacopladores como por ejemplo los CIs: 4N30, 4N31, 4N32, 4N33, 4N35, etc., como los de las figuras siguentes. Nunca conectar tierra de la interfaz con tierra del circuito a controlar ya que al existir una falla el retorno de las corrientes será por tierra, llegando al puerto y dañándolo también.


4N35, 3N36








4N30, 4N31, 4N33





Esta interfaz utiliza recursos del sistema que en muchos equipos están estandarizados, así que de forma predeterminada el puerto LPT1 utiliza la interrupción IRQ7.
Nota. Cuando la CPU (Unidad Central de Proceso) detecta una petición de interrupción (IRQ) detiene (interrumpe) su estado actual para procesar la interrupción específica del dispositivo que ha generado dicha interrupción.
Si se desean conocer las características de este puerto en la PC, seguir los siguientes pasos:
1.- Inicio (Windows), Configuración



2.-Panel de control, Sistema


3.-Administrador de Dispositivos, Puertos Com y LPT

























4.-Propiedades, en la pestaña recursos tenderemos la dirección en Hexadecimal del puerto y la interrupción.





A continuación se muestra el circuito que conforma nuestro controlador:



Observese que el circuito a controlar y la circuitería del puerto paralelo se encuentran eléctricamente aisladas, aunque ocurra una falla en el circuito de control no afectará al puerto.
A continuación se presenta la ecuación para el circuito de salida, siendo el transistor del optoacoplador Q1 y el transistor de potencia Q2:


5Vcc – (330Ù * ICQ1) – VceQ1 – (330 Ù * IeQ1) – 0.7Vcc = 0
y
12Vcc – Vmotor – VCEQ2 = 0

Recuerdese que:

Ic = â IB

En el circuito IEQ1 = IBQ2

Para simplificar la ecuación se puede considerar que al estar saturados los transistores VCE ˜ 0 y al estar en corte Vce = Vcc


Se presentan algunas mediciones hechas en un circuito semejante al anterior

VCEQ1 = 0,52V Saturado
VCEQ1 = 5.0V Corte

Vcc = 12 V VCEQ2 = 11.42V ICQ2 = 0A Transistor el corte
VCEQ2 = 0.07V ICQ2 = 93.9mA Transistor saturado

Tener presente que se recomienda ampliamente colocar un disipador de calor en el transistor de potencia para que no se sobrecaliente y sufrir un daño , más aún si la carga es mayor.


Con el siguiente programa en Q-BASIC 7.1 controlamos el pin 2 (Dato 0) en nuestro puerto.

CLS
INICIO:
OUT 888, 0
PRINT STRING$(80, “¦”) Este símbolo lo encontramos con; ¦ ALT + 177
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT STRING$(80, “¦”)
MENU:
LOCATE 6,20
PRINT “ INSTITUCION”
PRINT
PRINT
PRINT “¦ SEGUIR -1- “
PRINT “¦ SALIR -2- “
INPUT “¦ ELIJA POR FAVOR “; X%
IF X% < 1 OR X% > 2 THEN GOTO FALLO
IF X% = 2 THEN GOTO SALIR
CLS
SALIDA:
M = 1
PRINT “ PULSAR 4 PARA ACTIVAR, 5PARA DESACTIVAR Y F PARA SALIR”
DO
N$ = INKEY$
IF N$ = “F” OR N$ = “f” THEN GOTO INICIO
IF N$ < “4” OR N$ > “5” THEN GOTO INICIO
IF N$ = “4” THEN M = 1
IF N$ = “5” THEN M = 0
OUT 888, M
PRINT M
INPUT “PRESIONE ENTER PARA CONTINUAR”; B$
GOTO SALIDA
END
FALLO:
CLS
PRINT STRING$(80, “¦”)
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT “¦”; TAB(80); “¦”
PRINT STRING$(80, “¦”)
LOCATE 3,10
PRINT “INTRODUZCA LOS VALORES DE 1 ó 2”
LOCATE 4, 10
PRINT “PULSE ENTER PARA CONTINUAR”
INPUT “¦” Y$
GOTO INICIO
SALIR:
LOCATE 6,1
PRINT “¦ “
PRINT “¦ “
PRINT “¦ “
PRINT “¦ “
PRINT “¦ “
PRINT “¦ REALMENTE QUIERE SALIR? SI = 1 o NO = 2”
INPUT “¦”; Z%
IF Z% <> 1 OR Z% <> 2 THEN GOTO FALLO
IF Z% = 1 THEN END
IF Z% = 2 THEN GOTO INICIO

ESTE PROGRAMA SE PUEDE EJECUTAR CON F5 DENTRO DEL LENGUAJE DE PROGRAMACION O COMPILARLO Y EJECUTARLO HACIENDO DOBLE CLICK EN SU ICONO.
SI NO SE DISPONE DEL LENGUAJE, PUEDES SOLICITARME EL EJECUTABLE POR MEDIO DEL CORREO ELECTRÓNICO MANDANDO TU NOMBRE, ESCUELA, CARRERA ETC., SI LO DESEAS PARA QUE APAREZCA EN LA PORTADA DEL PROGRAMA Y A LA BREVEDAD REGRESARÉ EL CORREO.
SI SE TIENE UNA PREGUNTA HACELA LLEGAR TMBIEN POR CORREO.

ezequiel.laboratorio@canieti.com.mx


Anterior | Inicio