Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
FACULTAD DE INGENIERÍA
INGENIERÍA QUÍMICA
1. INTRODUCCIÓN
La señal analógica es aquella que presenta una variación continua con el tiempo,
es decir, que a una variación suficientemente significativa del tiempo le
corresponderá una variación igualmente significativa del valor de la señal (la señal
es continua).
Toda señal variable en el tiempo, por complicada que ésta sea, se representa en
el ámbito de sus valores (espectro) de frecuencia. De este modo, cualquier señal
es susceptible de ser representada descompuesta en su frecuencia fundamental y
sus armónicos. El proceso matemático que permite esta descomposición se
denomina análisis de Fourier.
La modulación por ancho de pulsos (también conocida como PWM, siglas en
inglés de pulse-width modulation) de una señal o fuente de energía es una técnica
en la que se modifica el ciclo de trabajo de una señal periódica (una senoidal o
una cuadrada, por ejemplo), ya sea para transmitir información a través de un
canal de comunicaciones o para controlar la cantidad de energía que se envía a
una carga.
Un potenciómetro es un componente electrónico 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 conectándolo en paralelo ó la caída
de tensión al conectarlo en serie. Un potenciómetro es un elemento muy similar a
un reóstato, la diferencia es que este último disipa más potencia y es utilizado para
circuitos de mayor corriente, debido a esta característica, por lo general los
potenciómetros son generalmente usados para variar el voltaje en un circuito
colocados en paralelo, mientras que los reóstatos se utilizan en serie para variar la
corriente.
2. OBJETIVOS
3. MATERIALES
4. ESQUEMA DE MONTAJE
2
Figura 2. Montaje del LED-PWM. Tomado de Guía básica de Arduino.
3
5. PROCEDIMIENTO
5.1. Potenciómetro
5.2. LED-PWM
4
5.2.5. Presione el botón Run, localizado en el menú EDITOR (Parte superior
de la ventana de MATLAB).
5.3. Potenciómetro-LED-PWM
CODIGO 1
clc
close all
clear all
%% Experiencia de adquisición de datos inmediata de un potenciómetro
% Se especifica el nombre de la tarjeta que identificará el Matlab
ar=arduino('COM3');
% Se crea una línea vacía de color rojo y ancho 2
l1=line(nan,nan,'Color','r','LineWidth',2);
%se definen los límites de la ordenada
ylim([-0.1 5.1])
grid
Fs=50;%Frecuencia de muestreo
N=1000; %Tamaño 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
5
stop=1;
% Se definen los límites 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;')
%Función 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 gráfica inmdiatamente
drawnow
end
end
CODIGO 2
clc
clear all
close all
%% Experiencia encendido de un LED por PWM
%Se específica 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 variación (entero) de brillo del LED
variacion=5;
%Se denota la variable led con el pin 9 o un pin que posea PWM
led=9;
%Especificación 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 señal digital por PWM donde la intensidad es = brillo
ar.analogWrite(led,brillo)
brillo=brillo+variacion;
%Condicional que determina el cambio cuando alcanza los respectivos
%límites de la señal PWM. Recuerde que la señal PWM tiene límites
%0-255 y los valores deben ser enteros.
if brillo==0 || brillo==255
6
variacion=-variacion;
end
pause(0.1)
end
CODIGO 3
clc
clear all
close all
%% Experiencia encendido de un LED por PWM utilizando un potenciómetro
%Se específica 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;
%Especificación 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 análoga del potenciómetro expresada en números enteros
brillo=ceil(ar.analogRead(0)*255/1023);
end
6. CASO DE ESTUDIO
7
6.3. Se requiere un sistema que permita identificar cualitativamente el
aumento o disminución 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 además al
encenderse uno de los LED´s se apaguen los otros 2. Cree un código
que permita encender cada LED en un rango específico, que cambien
con mover el regulador del potenciómetro.
7. BIBLIOGRAFIA