You are on page 1of 5

OBTENCIN DE FUNCIN DE TRANSFERENCIA

Utilizando MATLAB y ARDUINO se realiz una adquisicin de datos


del circuito de control de posicin con controlador PI.
Primero se arm fsicamente el circuito con ganancias unitarias y
posteriormente con la ayuda de un algoritmo en MATLAB enlazado con
ARDUINO se tom un muestreo de datos en la salida del controlador
observando su comportamiento en el tiempo

ALGORITMO
clc;
close all;
clear all;
ar= arduino('COM3');
Fs=50;
%Frecuencia de muestreo
N=1000;
%Tamao de vector
y=zeros(N,1);
t=linspace(0,(N-1)/Fs,N);
l1 = line(nan,nan,'Color','r','LineWidth',2);
ylim([-0.1 5.1]);
xlim([0 (N-1)/Fs])
grid
Stop = 1;
uicontrol('Style','Pushbutton','String','Parar','Callback','Stop = 0;')

tic
while Stop
if toc>1/Fs
tic
y(1:end-1)=y(2:end);
y(end)= ar.analogRead(4)*5/1023;
set(l1,'XData',t,'YData',y);
drawnow
end

end
De dicho algoritmo se obtuvo una grfica de la cual se obtuvieron datos
que posteriormente se utilizaron para obtener la funcin.

En base a los datos obtenidos y con ayuda de la funcin ident de MATLAB


se procedi a obtener la funcin de transferencia. Una vez abierta la
funcin se utilizaron los vectores t y y obtenidos del algoritmo con
ARDUINO. *Uno de los vectores se traspuso para poder realizar la
operacin y se delimito un rango de los datos para tomar dicha muestra
como base para sacar la funcin.

Observado el comportamiento de la respuesta del controlador se dedujo que


se tratara de un sistema de primer orden por lo que se especific que la
funcin de transferencia obtendra tendra un polo y ningn zero

Hecho esto se indic obtener la funcin de transferencia as como el


diagrama de bode para observar el comportamiento en la frecuencia de la
funcin obtenida

La funcin obtenida fue


4.422e-05
-----------s + 0.002299

Y la respuesta ante una entrada escaln

You might also like