Objetivo
Aplicar conocimientos básicos de
programación JAVA en el campo práctico que en este
caso sería el encendido y apagado de LEDS mediante una
computadora.
Marco
teórico
Para este proyecto se utilizó una computadora, un
programa JAVA y un puerto paralelo.
PUERTO PARALELO
Un puerto paralelo es una interfaz entre
una computadora y un periférico, cuya principal
característica es que los bits de datos viajan
juntos, enviando un paquete de byte a la vez. Es decir, se
implementa un cable o una vía física para
cada bit de datos formando un bus. Mediante el puerto
paralelo podemos controlar
también periféricos como
focos, motores entre otros dispositivos, adecuados
para automatización.
El cable paralelo es el conector
físico entre el puerto paralelo y el dispositivo
periférico. En un puerto paralelo habrá una serie
de bits de control en vías aparte
que irán en ambos sentidos por caminos
distintos.
Puerto paralelo Centronics
Conector de puerto paralelo tipo
Centronics
El puerto paralelo más conocido es el puerto
de impresora (que cumplen más o menos la norma
IEEE 1284, también denominados tipo Centronics) que
destaca por su sencillez y que transmite 98 bits. Esta interfaz
es capaz de enviar caracteres a la impresora de forma paralelo.
Cada carácterestá codificado en un byte, del
cual cada bit se transmite por un terminal diferente. Existen
otros terminales que conectan ordenador e impresora, que sirven
para intercambiar información de control y
de estado, a fin de implementar un
sencillo protocolo.
Para realizar esta interfaz, los PCs disponen de unos
elementos hardware específicos, denominados
puertos de impresora o también puertos
paralelos.
En un PC pueden instalarse varios de estos puertos que
se distinguen entre sí con los nombres LPT1, LPT2 y LPT3
(en algunos casos también LPT4). Todos ellos son
idénticos, salvo que tienen asignadas diferentes
direcciones en el mapa de entrada/salida.
Se ha utilizado principalmente para
conectar impresoras, pero también ha sido usado para
programadores EPROM, escáneres, interfaces
de red Ethernet a 10 Mb, unidades ZIP, SuperDisk y
para comunicación entre dos PC
(MS-DOS trajo en las versiones 5.0 ROM a 6.22 un programa
para soportar esas transferencias).
Las características eléctricas
son:
Tensión de nivel alto: 3,3 o 5 V.
Tensión de nivel bajo: 0 V.
Intensidad de salida máxima: 2,6 mA.
Intensidad de entrada máxima: 24 Ma
Descripción del conector físico
La conexión del puerto paralelo al mundo exterior
se realiza mediante un conector hembra DB25. Observando el
conector de frente y con la parte que tiene mayor número
de pines hacia arriba, se numera de derecha a izquierda y de
arriba a abajo, del 1 al 13 (arriba) y del 14 al 25
(abajo).
Este conector: está formado por 17 líneas
de señales y 8 líneas de tierra. Las
líneas de señales están formadas por
tres grupos: 4 Líneas de control,5 Líneas de
estado, 8 Líneas de datos.
8 líneas (pines) son para salida de datos
(bits de DATOS). Sus valores son únicamente
modificables a través de software, y van del pin 2 al
pin 9 .
5 líneas son de entrada de datos (bits
de ESTADO), únicamente modificables a través
del hardware externo. Estos pines son: 11, 10, 12, 13 y 15, del
más al menos significativo.
4 líneas son de control (bits
de CONTROL), numerados del más significativo al
menos: 17, 16, 14 y 1. Habitualmente son salidas, aunque se
pueden utilizar también como entradas y, por tanto, se
pueden modificar tanto por software como por hardware.
las líneas de la 18 a la 25 son la
tierra
Materiales
8 LEDS DEDIFERENTES COLORES
1 PROTOBOARD
1 COMPUTADORA
CABLE DE PUERTO PARALELO
8 RESISTENCIAS DE 240 OHMIOS
PROGRAMA JAVA
CABLE UTP
Procedimiento
(Se adjunta el video del procedimiento más el
circuito y el material necesario)
Donde dice "Pin puerto paralelo" puede ser cualquier Pin
del 2 al 9. No olvidar hacer una conexión al pin 25 que es
tierra
El circuito consiste en un led con una resistencia, la
resistencia se usa para limitar la intensidad y no pedir
más de la que el puerto paralelo es capaz de dar (5 mA).
Cuando se active el pin el led se encenderá.
En este proyecto lo que se quiere mostrar es como, con
un circuito, se puede controlar mediante la
computadora un grupo de LEDs los que se van a
encender en una secuencia que nosotros vamos a controlar con un
pequeño programa escrito en el lenguaje de
programación Java.
El circuito que se va armar será montado sobre
una plaqueta, la cual conduce la corriente eléctrica,
llamada "protoboard".
El objetivo es controlar los diodos LEDs con la
computadora, esto es encenderlos y apagarlos según como
queramos.
Para controlar un circuito externo con la computadora se
usará el puerto paralelo de ella, para conectar el puerto
con el circuito se necesitará el cable paralelo o conector
DB-25. El paso siguiente es soldar cable fino UTP a los pines
internos del conector. Como los pines están numerados del
número 1 al 25, solo usaremos los pines numerados del 2 al
9, también se tiene que soldar un cable al pin 25 (que es
el pin de masa o tierra eléctrica) para tener una descarga
a tierra común, para nuestro circuito y la computadora.
Una vez construido el cable se lo puede conectar al
protoboard.
Solo se deben usar ocho entradas y ocho salidas, ya que
son los ocho LEDs los que controlamos. Las ocho salidas
están conectadas por medio de una resistencia limitadora
de corriente a un LED cada una. Estas resistencias son de un
valor de 240 ohm .
El programa para controlar nuestros leds sera
:
import parport.ParallelPort; import java.io.*; public class casita { public static class Aplicacion { private ParallelPort lpt1; public Aplicacion () throws IOException { int pin = 0; BufferedReader w = new BufferedReader (new lpt1 = new ParallelPort (888); int opcion = 0; do { System.out.println ("1) Prender PIN System.out.println ("2) Prender PIN System.out.println ("3) Prender PIN System.out.println ("4) Prender PIN System.out.println ("5) Prender PIN System.out.println ("6) Prender PIN System.out.println ("7) Prender PIN System.out.println ("8) Prender PIN System.out.println ("9) Apagar System.out.println ("10) Prender System.out.println ("11) Salir."); opcion = Integer.parseInt (w.readLine switch (opcion) { case 1: pin = (int) Math.pow (2, 0); //potencias desde 2 elevado a 0 break; case 2: pin = (int) Math.pow (2, 1); break; case 3: pin = (int) Math.pow (2, 2); break; case 4: pin = (int) Math.pow (2, 3); break; case 5: pin = (int) Math.pow (2, 4); break; case 6: pin = (int) Math.pow (2, 5); break; case 7: pin = (int) Math.pow (2, 6); break; case 8: pin = (int) Math.pow (2, 7); break; case 9: pin = 0; //apagar todo break; case 10: pin = 255; //prender todo break; } lpt1.write (pin); //manda a la } while (opcion != 11); } } //———————————- public static void main (String[] args) throws { new Aplicacion (); }} |
El funcionamiento de este programa y circuito necesita
que se desbloquee el puerto de la impresora:
Paso 1.- Desbloquear el puerto de la
impresora.
Para desbloquear el puerto de la impresora ingrese
al panel de control y haga clic en SISTEMA Y
SEGURIDAD
Luego clic en hardware y sonido
Clic en administrador de
dispositivos:
Ahora seleccione puerto de impresora:
Clic al botón derecho del mouse y
elegir propiedades:
En CONFIGURACIÓN DE PUERTO, seleccione USAR
CUALQUIER TIPO DE INTERRUPCIÓN
ACEPTAR todo y terminar. Con lo que tenemos habilitado
el puerto a nivel sistema operativo.
Paso 2.- Copiar archivos.- Descargue
el archivo comprimido javacomm20-win32–ok.rar ,
descomprima este archivo e inicie las copia de la siguiente
manera. De la carpeta FilecomAPI, copie el archivo parport.dll a
la carpeta bin de READY TO PROGRAM.
Ahora copiar el archivo UserPort.sys a
Windows
Asegúrese de dejar el archivo en el
directorio drivers:
Realice las siguiente copias de los archivos
al disco duro:
win32com.dll: guardarlo en la carpeta de
..Javajdk1.5.0_02jrebin
javax.comm.properties: copiarlo en la carpeta
Javajdk1.5.0_02jrelib
comm.jar: copiarlo en la carpeta
..Javajdk1.5.0_02jrelibext
Ejecute el programa User Port (En Windows 7 ejecutar
como administrador):
y clic en aceptar y clic en salir:
Paso 4.- El ejemplo que controla los led.
Lo adjunto en el archivo Leds.rar donde se encuentra el
material necesario.
Y proyecto.rar donde se encuentra el programa ya
compilado y listo para ser ejecutado.
(ver vínculos de interés al final del
documento)
Todo está incluido y no será necesario
hacer nada más claro que si usted quiere hacer alguna
modificación podrá hacerla sin ningún
problema, pero nuevamente se deberá tener cuidado con el
paquete de puerto paralelo.
Conclusiones
Este proyecto resulto satisfactorio y exitoso en todos
los sentidos ya que pudimos aplicar nuestros conocimientos de
programación y electrónica.
Vínculos
de interés
http://www.4shared.com/rar/QHnPlJ70/leds.html archivo
leds.rar
http://www.4shared.com/rar/tZaRBd84/proyecto.html
archivo proyecto.rar
http://www.youtube.com/watch?v=p3Kz3HRdNr8&feature=youtu.be
Video
http://www.youtube.com/watch?v=5uhTYFep26E&feature=youtu.be
Video
Enviado por:
Emilio Amir Oros Salazar