Vous êtes sur la page 1sur 21

NOMBRES:

ERICK YANKOLT ROCABADO PAZ


REINALDO TAQUI

MATERIA:
PROCESAMIENTO DIGITAL DE SEÑALES

TEMA:
JUEGO DE LUCES EN MAT-LAB

SEMESTRE:
SEXTO

TURNO:
TRABAJO

LA PAZ - BOLIVIA
INDICE__________________________________________________________________

NOMBRE: PAG

1. OBJETIVOS: 3
1.1OBJETIVO GENERAL 3
1.2. OBJETIVOS ESPECIFICOS 3
2. ASPECTOS TEORICOS 4
2.1. INSTRUCCIÓN IF 5
2.2. INSTRUCCIÓN SWITCH 5
2.3. INSTRUCCIÓN WHILE 6
2.4. COMANDO GUI 6
2.4.1 PUSH BUTTON 8
2.4.2 SLIDER 9
2.4.3. EDIT TEXT 11
2.4.4 AXES 12
2.5 PROGRAMA DEFINIDO POR EL GUI 14
2.6 MANEJO DEL PUERTO PARALELO 15
3. ASPECTOS PRACTICOS 18
4. CONCLUSIONES 21
5. BIBLIOGRAFIA 21

2
PROYECTO DE LAB # 1

1. OBJETIVOS:

1.1. OBJETIVO GENERAL

Realizar mediante el programa de MATLAB con el uso del GUI (guía


interfaz de usuario), un programa de JUEGO DE LUCES controlado
por el Puerto Paralelo tanto como ejemplos a elección y manualmente,
variando la velocidad de la secuencia en esencia.

1.2. OBJETIVOS ESPECIFICOS

- Introducción a un JUEGO DE LUCES


- Aprender ha utilizar la instrucción IF
- Aprender ha utilizar la instrucción SWITCH
- Aprender ha utilizar la instrucción WHILE
- Aprender ha utilizar el comando GUI
- Aprender ha utilizar la herramienta PUSH BUTTON
- Aprender ha utilizar la herramienta SLIDER
- Aprender ha utilizar la herramienta EDIT TEXT
- Aprender ha utilizar la herramienta AXES
- Aprender ha utilizar el PUERTO PARALELO EN MAT-LAB
- Realizar el circuito externo del JUEGO DE LUCES

3
2. ASPECTOS TEORICOS

Para realizar el programa del juego de luces controlado por el puerto


paralelo es necesario aprender varias instrucciones o comandos tanto
de las más básicas y complejas. Por esta razón el marco teórico
cubrirá toda la enseñanza necesaria de comandos solo en MAT-LAB
para realizar el programa antedicho.

El juego de luces es una simulación dada por una secuencia de


imágenes con la que se simulara también transformar el alumbrado en
"iluminación inteligente", con aplicaciones en campos tan diversos
como la medicina, el transporte, las comunicaciones, la imagen y la
agricultura. La posibilidad de controlar las propiedades básicas de la
luz, incluyendo la distribución espectral de potencia, la polarización, y
la temperatura del color, permitirá a las "fuentes de luz inteligente"
ajustarse a requisitos y ambientes específicos, y llevar a cabo
funciones completamente nuevas que no son posibles con la
iluminación incandescente o fluorescente.
El "juego de luces" de estado sólido tienen el potencial de ajustar los
ritmos circadianos humanos para adaptarlos a los horarios de trabajo
cambiantes, permitir a un automóvil comunicarse imperceptiblemente
con el automóvil que viaja detrás de él, o hacer crecer fresas
económicamente fuera de estación en los climas norteños.

Las fuentes de iluminación de estado sólido como los diodos emisores


de luz (LEDs) que generan dicha secuencias sucesivas
predeterminadas y que podemos dárnoslas.

4
2.1. INSTRUCCION IF

El comando IF en una definición más sencilla, es un comando que


pregunta si es verdadero o falso. Hace una instrucción cual sea la
elección.
La forma de utilizar este comando en MAT-LAB es la siguiente

If prefunta
Sentencia
else
Sentencia
end

2.2. INSTRUCCIÓN SWITCH

El comando SWITCH es un selector que se encarga de realizar una


sentencia, la cual esta separada por case y es elegida por una variable
enumerada
La forma de utilizar este comando en MAT-LAB es la siguiente

Switch(a)
Case 1:
Sentencia
Case 2:
Sentencia
Case 3:
Sentencia

5
end

2.3. INSTRUCCIÓN WHILE

Este comando WHILE es una instrucción repetitiva la cual pregunta


mientras. Esto quiere decir mientras haga una instrucción realiza una
determinada sentencia.
La forma de utilizar este comando en MAT-LAB es la siguiente:

While pregunta
Sentencia
end

2.4. COMANDO GUI

Este comando es muy interesante ya que en el se puede realizar


varias operaciones y hacer mas fácil el funcionamiento del programa.

Para abrir el GUI se realiza lo siguiente:

Luego saldrá una pantalla y se escoge blank o la primara opción.

6
Después de seleccionar la primera opción tendremos la pantalla de
trabajo del GUI.

Esta pantalla tiene diferentes cualidades o herramientas, pero para el


juego de luces que es este proyecto solo se utilizara las herramientas
como el push button, slider, edit text y axes.

7
2.4.1. FORMA DE USAR EL PUSH BUTTON

EL PUSH BUTTON nos sirve para realizar un determinado programa o


ejecutarlo, haciendo clic en el respectivamente este realiza el
programa que esta dentro del cabllbacks.
Para poner un PUSH BUTTON en el GUI se realiza lo siguiente:

Esa opción es el PUSH BUTTON y se elije la posición donde se


pondrá:

8
Para modificarlo solo se hace doble clic en PUSH BUTTON.

2.4.2. FORMA DE USAR EL SLIDER

EL SLIDER nos sirve para realizar un cambio de valores de un rango a


otro, por ejemplo teniendo una variable a se le puede cambiar el valor
solo haciendo clic en el SLIDER.

Para poner un SLIDER en el GUI se realiza lo siguiente:

9
Esa opción es el SLIDER y se elije la posición donde se pondrá:

10
Para modificarlo solo se hace doble clic en el SLIDER

2.4.3. FORMA DE USAR EL EDIT TEXT

EL EDIT TEXT nos sirve para introducir un número por teclado o


simplemente mostrar un número por el teclado.

Para poner un EDIT TEXT en el GUI se realiza lo siguiente:

Esa opción es el EDIT TEXT y se elije la posición donde se pondrá:

11
Para modificarlo solo se hace doble clic en el EDIT TEXT

2.4.4. FORMA DE USAR EL AXES

EL AXES nos sirve para poner un grafico el GUI de MAT-LAB

Para poner un AXES en el GUI se realiza lo siguiente:

12
Esa opción es el AXES y se elije la posición donde se pondrá:

13
2.5 PROGRAMA DEFINIDO POR EL GUI

Cuando acabamos de poner todas las cosas necesarias que se


utilizaran en el GUI, se selecciona PLAY:

Después nos pedirá en donde guardar el archivo, y luego saldrá el


programa en M-FILE de MAT-LAB.

Donde estará dividido por las funciones de las herramientas que


introducimos en el GUI.

Y nos mostrara el programa final o el acabado del GUI.

14
2.6 MANEJO DEL PUERTO PARALELO EN MAT-LAB

Para el manejo del PP es necesario conocer como MAT-LAB trabaja


con el puerto paralelo:
En el command window ejecutamos:
>> out = daqhwinfo;
>> out.InstalledAdaptors
Lo que dará como resultado en el caso de mi PC:
ans =
'parallel'
'winsound'
Una vez que Matlab ha reconocido el PP, ejecutamos:
>> daqhwinfo('parallel')
ans =
AdaptorDllName: [1x50 char]
AdaptorDllVersion: '2.7 (R14SP3)'

15
AdaptorName: 'parallel'
BoardNames: {'PC Parallel Port Hardware'}
InstalledBoardIds: {'LPT1'}
ObjectConstructorName: {'' '' 'digitalio('parallel','LPT1')'}
La última línea indica el nombre de la entrada digital:
digitalio('parallel','LPT1').
Como sabemos, el PP puede ser de entrada y salida. La siguiente
figura muestra la distribución de pines del PP:

-
- 8 pines son para salida de datos (bits de DATOS), y van desde
el pin 2 (bit menos
significativo) hasta el pin 9 (bit más significativo).
- 5 pines son de entrada de datos (bits de ESTADO). Estos pines
son: 15, 13, 12, 10
y 11, del menos al más significativo.
- 4 pines son de control (bits de CONTROL). Tienen la
Característica de ser bidireccionales es decir que los puedes
Utilizar tanto de entrada como de salida.

Estos pines son: 1, 14, 16 y 17, del menos al más significativo.


Sin embargo, configurando en la BIOS del PC (accesible en unos PCs
con la tecla F12, en otros con la tecla Del o Supr, y a veces con F10)

16
el puerto paralelo (LPT1) como de entrada y salida, es posible usar los
pines del 2 al 9 como de entrada.
Para determinar cuantos pines podemos usar en el PP, ejecutamos:
>> parport = digitalio('parallel','LPT1');
>> hwinfo = daqhwinfo(parport)
hwinfo =
AdaptorName: 'parallel'
DeviceName: 'PC Parallel Port Hardware'
ID: 'LPT1'
Port: [1x3 struct]
SubsystemType: 'DigitalIO'
TotalLines: 17
VendorDriverDescription: 'Win I/O'
VendorDriverVersion: '1.3'
Como se puede ver en la información, 17 de los 25 pines del PP se los
puede utilizar como I/O. Los restantes pines son tierra.
Una vez creada la entrada digital del PP, lo que sigue es asignar que
pines serán para entrada y cuales para salida. Usamos la función
addline, cuya sintaxis es:
>> dato2= addline(parport,0:7,'in'); %Para valores de entrada
>> dato = addline(parport,0:7,'out'); %Para valores de salida
Y se obtiene el dato de entrada con dato3=getvalue(dato2). Se asigna
el dato al puerto con: putvalue(dato,255).
Con esta información se puede realizar la interfaz gráfica.

17
3. ASPECTOS PRACTICOS

El juego de luces realizado en MAT-LAB utiliza todas las cosas


mencionadas en el marco teórico. Un primer objetivo en el juego de
luces era ver en el GUI en tiempo real el juego de luces como graficas
para aquello se realizo o se tomo imágenes y puestas en el axes del
GUI con la siguiente instrucción:

axes(handles.axes1),[x,map]=imread('nombre de la imagen','jpg');
image(x),colormap(map),axis off,hold on

Las imágenes utilizadas son las siguientes:

Donde el color plomo significa el apagado luego cambia la imagen en


forma instantánea a otro color donde visualmente parece que se
estuviera prendiendo.

Como un segundo objetivo se realizo ejemplos para esto se utilizo un


switch, la cual al apretar un pushbutton, una variable toma un valor, y
esta es elegida por el switch y mandada al case respectivo donde se
encuentra la interacción de imágenes y debajo de ellos el valor de
salida del PP.

18
En la utilización del PP se define primero cuantas entradas y salidas
va ha existir en este caso existe 8 salidas desde el D1 al D8.

Para la dirección de la secuencia utilizamos la instrucción básica del IF


La cual es seleccionada por un togle button que se parece al
pushbutton pero la ventaja es que al hacer un clic en el se vuelve 1 o 0
y de esta forma se vuelve una esencia para utilizar el IF y haci realizar
el sentido de la secuencia, por ejemplo si es 1 va ha la derecha y si es
0 va ha la izquierda.

El tiempo o la velocidad de la secuencia es varida por un slider la cual


cambia el valor en el While de la siguiente instrucción:
t=0;
while t<=n
t=t+0.00001;
end

En la cual que n es el valor dado por el slider si n es menor el tiempo


es menor ya que tarda menos en el que el While haga toda la
instrucción y si es un valor más grande es viceversa (tarda más).

Y por ultimo se utilizo la forma manual, introduciendo datos por el


teclado un valor numérico o un número decimal en 8 edit text la cual al
poner el número, esta es representada por el código binario y
mandada por el PP.

El GUI final del JUEGO DE LUCES es la siguiente:

19
EL CIRCUITO DE COMUNICACIÓN ENTRE EL PP Y EL EXTERIOR
ES LA SIGUIENTE:

20
4. CONCLUSIONES

Este PROYECTO, cumplió exitosamente cada uno de nuestros


objetivos específicos y general, ya que se realizo de forma practica el
manejo de el PP mediante el GUI de MAT-LAB. Una desventaja seria
la limitación de las salidas, pero con circuitos electrónicos se puede
realizar un mayor mejoramiento ha este proyecto, la limitación en el
proyecto esta en la forma manual ya que son 8 bits solo se puede
introducir hasta el numero decimal 255.
5. BIBLIOGRAFIA

- LISTA DE INSTRUCCIÓN DE MAT-LAB EN PDF


- IMÁGENES Y GRAFICAS EN MAT-LAB EN PDF
- GRAFICAS CON MAT-LAB EN PDF
- TUTORIAL DE MAT-LAB 2007 EN WORD
- TUTORIAL DEL PROGRAMAMA MAT-LAB

21