Logo Studenta

Practica 3 Prog Av

¡Estudia con miles de materiales!

Vista previa del material en texto

INSTITUTO TECNOLÓGICO DE LA LAGUNA 
Práctica 3 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
PROGRAMACIÓN AVANZADA 
Ingeniería Mecatrónica Semestre 8 
Alumno(s): Christian Enrique González Robles No. Control: 19131206 
 
2 
 
 
INSTITUTO TECNOLÓGICO DE LA LAGUNA 
Programa 1 
Se desarrolló dentro de MatLab una interfaz Gráfica que permite al usuario hacer la conversión de 
una temperatura en grados Celsius, a grados Fahrenheit y grados Kelvin de manera simultánea. 
Script 
De manera general, se desarrolló 
una interfaz con un campo para 
introducir la temperatura que sería 
convertida. La generación del 
código de la interfaz en general se 
da por sí mismo por medio de 
MatLab al establecer la GUI, 
solamente se hacen las 
adecuaciones y se agregan las 
líneas que permiten hacerla 
funcionar como se espera. 
A través de tempe se obtiene el 
valor ingresado y por medio de 
temperatura se evalúa la entrada 
para interpretarla como un valor 
numérico. Después, por medio del 
botón convertir, se llaman a F y 
K que proceden a hacer las 
operaciones matemáticas que rigen 
la conversión entre escalas de temperatura, Fahrenheit y Kelvin respectivamente, y posteriormente 
por medio de los set se procede a escribir los resultados en los campos nombrados result_f y 
result_k, con los cuales se muestra el resultado en pantalla al usuario. 
Con el botón salir por medio de close (gbcf) se asigna la tarea de cerrar la interfaz a dicho botón. 
Seguido a esto, con el botón limpiar, se genera en la variable blanco un espacio en blanco para 
limpiar los campos dónde se muestran las temperaturas. Finalmente, con las operaciones de set 
cargamos la variable blanco en los campos result_f, result_k y tempe para limpiar los mismos y 
poder generar nuevamente un cálculo según se requiera. 
GUI funcional 
 
 
 
 
 
 
 
 
3 
 
 
INSTITUTO TECNOLÓGICO DE LA LAGUNA 
Programa 2 
Se desarrolló dentro de MatLab una interfaz Gráfica que permite al usuario hacer la conversión de 
un valor en pesos mexicanos, a otras divisas como lo son el Dólar y el Euro de manera simultánea. 
Script 
A través del campo pesos se 
obtiene el valor ingresado y por 
medio de peso se evalúa la 
entrada para interpretarla como 
un valor numérico. Después, por 
medio del botón convertir, se 
llaman a D y E que proceden a 
hacer las operaciones 
matemáticas que rigen la 
conversión entre divisas, 
Dólares y Euros 
respectivamente, y 
posteriormente por medio de los 
set se procede a escribir los 
resultados en los campos 
nombrados conv_d y 
conv_e, con los cuales se 
muestra el resultado en pantalla 
al usuario. 
 
Seguido a esto, con el botón limpiar, se genera en la variable blanco un espacio en blanco para 
limpiar los campos dónde se muestran las temperaturas. Con las operaciones de set cargamos la 
variable blanco en los campos conv_d, conv_e y pesos para limpiar los mismos y poder generar 
nuevamente un cálculo según se requiera. 
Finalmente, con el botón salir por medio de close (gbcf) se asigna la tarea de cerrar la interfaz a 
dicho botón. 
GUI funcional 
 
 
 
 
 
 
 
 
4 
 
 
INSTITUTO TECNOLÓGICO DE LA LAGUNA 
Programa 3 
Se desarrolló dentro de MatLab una interfaz Gráfica que permite al usuario con un slider, por medio 
de la comunicación con la tarjeta de desarrollo Arduino y con un circuito electrónico, generar un 
PWM para controlar la velocidad de giro de un motor CD. 
 
Script 
Primeramente se declara la 
variable global s la cual nos 
permite generar 
comunicación serial y de 
acuerdo a los parámetros que 
se establecen dentro 
establecemos que la 
comunicación será por el 
puerto de comunicación 
serial 5 con un Baudrate de 
9600 para poder 
sincronizarlo al trabajo de la 
tarjeta Arduino así como 
decirle al programa que por 
este mismo puerto va a haber 
tanto entrada como salida 
de datos y finalmente se 
llama a iniciar la misma variable para que se pueda ejecutar de manera automática. 
Dentro de slider lo que se hace es llamar de nueva cuenta a la variable global s para que siga 
funcionando la comunicación, y en CT1 lo que se hace es obtener el valor del slider para que 
posteriormente en CT2 dicho valor pueda ser interpretado, tomado y redondeado para poder con 
ello trabajar adecuadamente. Posteriormente con el primer set se establece que en el campo STciclo 
se escribirá la variable CT2 para mostrarla al usuario, y posteriormente por medio de la variable val 
lo que se busca es obtener el redondeo del valor de CT1 para poder así obtener su equivalencia 
respecto al PWM y finalmente en el último set este valor es mostrado en el campo STvalor. 
Finalmente, cuando nosotros busquemos 
cerrar la interfaz con las instrucciones de 
delete y clear all lo que se busca es borrar 
todos aquellos datos que se puedan 
encontrar dentro del puerto para que, al 
momento de usarse para otras actividades 
o diferentes cuestiones, no tenga 
precargados distintos datos que puedan 
afectar ya sea a una nueva interfaz o 
afectar su funcionamiento para tareas 
completamente distintas que requieran de 
su uso. 
 
5 
 
 
INSTITUTO TECNOLÓGICO DE LA LAGUNA 
Por medio de un pequeño código de 
Arduino, se establece la manera en la cual 
se interpretarán los datos para que, en base 
a ello, comunicarse con el circuito para 
hacer girar el motor. 
Primeramente, se establece que la salida 
de la señal hacia el motor será por medio 
del pin #3. Posteriormente por medio de 
serial.begin se indica la cantidad de 
baudios a los cuales se deberá establecer 
la comunicación con el puerto serie para 
poder sincronizar y trabajar 
adecuadamente. 
Posteriormente se declara la variable 
velocidad, la cual proviene de leer el 
puerto serie con el que se comunica la GUI en MatLab e interpretar el valor para poder trabajarlo. 
Finalmente, se manda como salida, o, a escribir un valor analógico en el pin del motor (#3), con el 
valor de la velocidad obtenido de dicha comunicación serial. Y para finalizar, por medio de la salida 
al motor, este cambiaría su velocidad, incrementando o decrementando según el valor obtenido 
desde la GUI, en base al valor de salida analógica.

Continuar navegando