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
Bien plus que des documents.
Découvrez tout ce que Scribd a à offrir, dont les livres et les livres audio des principaux éditeurs.
Annulez à tout moment.