Sei sulla pagina 1di 8

UNIVERSIDAD DEL ATLNTICO

FACULTAD DE INGENIERAS
INGENIERA QUMICA
LABORATORIO DE CONTROL Y SIMULACIN DE PROCESOS
USANDO ARDUINO-MATLAB
JESUS MIZGER - CRISTIAN LLANOS
FELIX ESCORCIA - MAURICIO ROJANO

LECTURA SERIAL DE UNA ENTRADA ANALOGA Y


ENCENDIDO DE LED POR PWM

1. INTRODUCCION
La seal analgica es aquella que presenta una variacin continua con el tiempo,
es decir, que a una variacin suficientemente significativa del tiempo le
corresponder una variacin igualmente significativa del valor de la seal (la seal
es continua).
Toda seal variable en el tiempo, por complicada que sta sea, se representa en
el mbito de sus valores (espectro) de frecuencia. De este modo, cualquier seal
es susceptible de ser representada descompuesta en su frecuencia fundamental y
sus armnicos. El proceso matemtico que permite esta descomposicin se
denomina anlisis de Fourier.
La modulacin por ancho de pulsos (tambin conocida como PWM, siglas en
ingls de pulse-width modulation) de una seal o fuente de energa es una tcnica
en la que se modifica el ciclo de trabajo de una seal peridica (una senoidal o
una cuadrada, por ejemplo), ya sea para transmitir informacin a travs de un
canal de comunicaciones o para controlar la cantidad de energa que se enva a
una carga.
Un potencimetro es un componente electrnico similar a los resistores pero cuyo
valor de resistencia en vez de ser fijo es variable, permitiendo controlar la
intensidad de corriente a lo largo de un circuito conectndolo en paralelo la cada
de tensin al conectarlo en serie. Un potencimetro es un elemento muy similar a
un restato, la diferencia es que este ltimo disipa ms potencia y es utilizado para
circuitos de mayor corriente, debido a esta caracterstica, por lo general los
potencimetros son generalmente usados para variar el voltaje en un circuito
colocados en paralelo, mientras que los restatos se utilizan en serie para variar la
corriente.

2. OBJETIVOS
Aprender a identificar una seal anloga.
Identificar un sistema PWM.
Aprender a medir seales anlogas usando la tarjeta de adquisicin de
datos.
Medir de manera cualitativa la intensidad de un potencimetro usando un
LED.

3. MATERIALES
-

Tarjeta ARDUINO UNO R3.


Cable USB.
3 LED.
3 resistencias de 1K.
Potencimetro.
Conectores rpidos MM.
Protoboard.
Computador.

4. ESQUEMA DE MONTAJE

Figura 1. Montaje del Potencimetro. Tomado de Gua bsica de Arduino.

Figura 2. Montaje del LED-PWM. Tomado de Gua bsica de Arduino.

Figura 3. Montaje del Potencimetro-LED-PWM. Tomado de Gua bsica de Arduino.

5. PROCEDIMIENTO
5.1.

Potencimetro

5.1.1. Conecte la Tarjeta ARDUINO UNO R3 a su computadora personal por


medio del cable USB y verifique la conexin en la ventana del programa
ARDUINO, segn lo dicho en la gua INSTALACION DE ARDUINO Y
ENLACE ARDUINO MATLAB.
5.1.2. Arme el respectivo circuito elctrico tal y como se muestra en la Fig.1
mostrada anteriormente, respetando los puertos donde se hacen las
respectivas conexiones.
5.1.3. Abra el programa MATLAB y dirjase vaya a la ventana del editor.
5.1.4. Escriba el cdigo que se le suministra en esta gua en la parte CODIGO
1.
5.1.5. Presione el botn Run, localizado en el men EDITOR (Parte superior
de la ventana de MATLAB).
5.1.6. Se deber desplegar un grafico donde se registrar la medida de la seal
dada por el potencimetro. Esta va de 0 a 5.
5.1.7. Mueva el regulador del potencimetro para variar la lectura y verificar
que el montaje est bien armado.
5.2.

LED-PWM

5.2.1. Conecte la Tarjeta ARDUINO UNO R3 a su computadora personal por


medio del cable USB y verifique la conexin en la ventana del programa
ARDUINO, segn lo dicho en la gua INSTALACION DE ARDUINO Y
ENLACE ARDUINO MATLAB.
5.2.2. Arme el respectivo circuito elctrico tal y como se muestra en la Fig.2
mostrada anteriormente, respetando los puertos donde se hacen las
respectivas conexiones.
5.2.3. Abra el programa MATLAB y dirjase vaya a la ventana del editor.
5.2.4. Escriba el cdigo que se le suministra en esta gua en la parte CODIGO
2.

5.2.5. Presione el botn Run, localizado en el men EDITOR (Parte superior


de la ventana de MATLAB).
5.2.6. Se deber ir encendiendo y apagando el LED de manera paulatina con
el transcurrir del tiempo.
5.3.

Potencimetro-LED-PWM

5.3.1. Conecte la Tarjeta ARDUINO UNO R3 a su computadora personal por


medio del cable USB y verifique la conexin en la ventana del programa
ARDUINO, segn lo dicho en la gua INSTALACION DE ARDUINO Y
ENLACE ARDUINO MATLAB.
5.3.2. Arme el respectivo circuito elctrico tal y como se muestra en la Fig.3
mostrada anteriormente, respetando los puertos donde se hacen las
respectivas conexiones.
5.3.3. Abra el programa MATLAB y dirjase vaya a la ventana del editor.
5.3.4. Escriba el cdigo que se le suministra en esta gua en la parte CODIGO
3.
5.3.5. Presione el botn Run, localizado en el men EDITOR (Parte superior
de la ventana de MATLAB).
5.3.6. Se deber ir encendiendo o apagando el LED paulatinamente a medida
que se mueva el regulador del potencimetro.

CODIGO 1
clc
close all
clear all
%% Experiencia de adquisicin de datos inmediata de un potencimetro
% Se especifica el nombre de la tarjeta que identificar el Matlab
ar=arduino('COM3');
% Se crea una lnea vaca de color rojo y ancho 2
l1=line(nan,nan,'Color','r','LineWidth',2);
%se definen los lmites de la ordenada
ylim([-0.1 5.1])
grid
Fs=50;%Frecuencia de muestreo
N=1000; %Tamao del vector
y=zeros(N,1);%Vector de entrada
%Se crea un vecto t de N valores linealmente espaciados desde 0 (N-1)/Fs
t=linspace(0,((N-1)/Fs),N);
%Variable arbitraria para iniciar el bucle

stop=1;
% Se definen los lmites de la abscisa
xlim([0 ((N-1)/Fs)])
%Se define un pushbutton con un valor de variable stop=0
uicontrol('Style','Pushbutton','String','Parar','Callback','stop=0;')
%Funcin tic
tic
while stop
if toc>1/Fs
tic
%Los valores de y+1 se convierten en los valores de y
y(1:end-1)=y(2:end);
%Se calcula el valor de y mediante el analogread de la tarjeta
y(end)=ar.analogRead(0)*5/1023;
%Colocamos los valores de la abscisa y la ordenada con los
valores
%de t y y
set(l1,'Xdata',t,'Ydata',y);
%Fuerza a Matlab a hacer la grfica inmdiatamente
drawnow
end
end

CODIGO 2
clc
clear all
close all
%% Experiencia encendido de un LED por PWM
%Se especfica el nombre de la tarjeta que identificar el Matlab
ar=arduino('COM3');
%Se estima la variable brillo como 0 al principio
brillo=0;
%Se selecciona el intervalo de variacin (entero) de brillo del LED
variacion=5;
%Se denota la variable led con el pin 9 o un pin que posea PWM
led=9;
%Especificacin de la variable led como salida
ar.pinMode(led,'output')
%Variable arbitraria para iniciar el bucle
stop=1;
%Se define un pushbutton con un valor de variable stop=0
uicontrol('Style','Pushbutton','String','Parar','Callback','stop=0;')
while stop
%Lectura de la seal digital por PWM donde la intensidad es = brillo
ar.analogWrite(led,brillo)
brillo=brillo+variacion;
%Condicional que determina el cambio cuando alcanza los respectivos
%lmites de la seal PWM. Recuerde que la seal PWM tiene lmites
%0-255 y los valores deben ser enteros.
if brillo==0 || brillo==255

variacion=-variacion;
end
pause(0.1)
end

CODIGO 3
clc
clear all
close all
%% Experiencia encendido de un LED por PWM utilizando un potencimetro
%Se especfica el nombre de la tarjeta que identificar el Matlab
ar=arduino('COM3');
%Se denota la variable led con el pin 9 o un pin que posea PWM
led=9;
%Especificacin de la variable led como salida
ar.pinMode(led,'output')
%Variable arbitraria para iniciar el bucle
stop=1;
%Se estima la variable brillo como 0 al principio
brillo=0;
%Se define un pushbutton con un valor de variable stop=0
uicontrol('Style','Pushbutton','String','Parar','Callback','stop=0;')
while stop
brilloled=brillo;
%Lectura digital por PWM de 0-255 (entero)
ar.analogWrite(led,brilloled)
%Lectura anloga del potencimetro expresada en nmeros enteros
brillo=ceil(ar.analogRead(0)*255/1023);
end

6. CASO DE ESTUDIO
6.1.

El dueo de DISCOLO quiere implementar un sistema novedoso de


luces para su discoteca, el cual consiste en que las luces de la discoteca
se enciendan y se apaguen pero paulatinamente, es decir que vayan
aumentando o disminuyendo su intensidad con respecto al tiempo, para
ello se requiere de sus servicios como programador. Cree un cdigo que
le permita a 3 LEDs encenderse y apagarse tal como se quiere.
(Suministre esquema)

6.2.

El dueo de DISCOLO quedo encantado con su sistema de luces, por


ello quiere que usted implemente un sistema similar de encendido y
apagado de las luces pero usando un potencimetro que regule la
intensidad de los LED. Proponga un cdigo que permita regular la
intensidad de los 3 LEDs simultneamente con un potencimetro
(Suministre esquema)

6.3.

Se requiere un sistema que permita identificar cualitativamente el


aumento o disminucin de la intensidad del volumen de un equipo de
sonido, observando el cambio de luces. Para ello se propone que tres
luces se enciendan y se apaguen a medida que se aumenta o disminuya
la intensidad del sonido; un LED que se encienda para un rango bajo,
uno para un rango medio y otro para un rango alto; y que adems al
encenderse uno de los LEDs se apaguen los otros 2. Cree un cdigo
que permita encender cada LED en un rango especfico, que cambien
con mover el regulador del potencimetro.
NOTA: Las seales analgicas varian en un rango de 0 a 255 (divdalo
en tres partes iguales).
(Suministrar esquema)

7. BIBLIOGRAFIA
MONK, Simon. 30 proyectos con Arduino. Madrid, Espaa. (2012). 1ra
edicin. Editorial Estribor, S.L. ISBN: 978-84-940030-0-4.
Gua bsica de Arduino. [en lnea]. [27/06/2015]. Disponible en
http://www.tiendaderobotica.com/download/Libro_kit_Basico.pdf

Potrebbero piacerti anche