Está en la página 1de 6

TALLER: PID PLANTA-LED

NOMBRE: Valentina Jaimes Rangel

CÓDIGO:2170434

Esta planta consta principalmente de un led de chorro y una fotorresistencia, además es controlado
por un Arduino uno, para el funcionamiento correcto se tuvo que tapar el led de chorro junto con
la fotorresistencia, para evitar que la luz del ambiente perturbe los datos tomados. La intensidad de
la luz del led es controlada dependiendo el voltaje que se le asigne, el botón se usa para detener el
sistema y dejar de obtener datos, en este montaje no se hizo uso del potenciómetro, se usó para
realizar pruebas. Se usa un pin PWM, que esta conectado al transistor, un pin analógico a la
fotorresistencia, de esta manera el sistema se retroalimenta y constantemente esta tomando datos
y corrigiéndolos, dependiendo de los resultados obtenidos.

Se diseñó en simulink el diagrama de bloques que define el sistema de control PID, que busca que
el voltaje que se le envíe al led sea de 2.5 V, en este PID se varia la señal de error para poder mejorar
y estabilizar el sistema, este diagrama se obtuvo luego de obtener todos los datos del sistema y las
diferentes constantes que se necesitan para implementarlo.
Inicialmente se realizó una prueba de lazo abierto con el código LED_Fotores, la parte de lazo
abierto, con un valor de referencia fijo de 2.5.
% %%% Lazo abierto
% dutyCycle=(Ref(i)/5*1^(1/2.4))^2.4; %Se hace lineal con función potencial
(desde experimento)
% writePWMDutyCycle(P_uno,Pin_PWM,dutyCycle) %Establecer PWM de la salida
% [t(i), Ref(i), Sal(i)] %Imprimir datos en el "Command Window"
% %%% Fin Lazo abierto

Luego de obtenidos los datos es necesario saber el punto en el que se estabilizó el voltaje que es
aproximadamente 3.1844.

Con ese valor se halla la K, que es el valor de estabilización del voltaje sobre el voltaje de referencia
fijo.
3.1844
𝐾=
2.5
𝐾 = 1.2738
Luego se calculó el punto en el que aproximadamente se debe encontrar el Tao, que es 63% del
establecimiento del sistema

𝐶𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 63% = 3.1844 ∗ 0.63


𝐶𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 63% = 2.0062

Se busca aproximadamente el punto más cercano a 2.0062 en la gráfica, y el más cercano fue
2.17374, lo que da como resultado que tao es 0.7783.
Se obtiene que la función de transferencia es:
1.2738
𝐺=
0.7783𝑠 + 1
Y en simulink se representa de la siguiente manera:

Se observa que el sistema real tiene un poco de retardo debido a que siempre va a existir un poco
de perturbación debido a la luz externa.
Se realizó el diseño del controlador PID a partir de Ziegle y Nichols, inicialmente para calcular las
constantes se requiere hacer una prueba en lazo abierto, se realiza una línea tangente y una línea
horizontal en donde aproximadamente se estabiliza.

𝐿 = 0.28
𝐾=3
𝑇 = 3.44 − 0.28 = 3.16
1.2∗3.16
𝐾𝑝 = 0.28∗3
=4.514

𝑇𝑖 = 2 ∗ 𝐿 = 0.56
𝑇𝑑 = 0.5 ∗ 𝐿 = 0.14
Luego en simulink se añade el PID a los bloques de lazo abierto y se obtienen los siguientes
resultados.
Se implementa en el circuito con el siguiente código en Matlab en el programa LED_Fotores:
%%% Control PID
if (i>1) %Entra después de un ciclo
Dt=t(i)-t(i-1); %Delta de tiempo
error_P=Ref(i)-Sal(i); %error P
error_I=error_I+(Ref(i)-Sal(i))*Dt; %error I
error_D=((Ref(i)-Sal(i))*Dt); %error D
error(i)=(error_P+(error_I/0.56)+(error_D*0.14))*4.51; %error P+I+D
else
error(i)=0; %error primer ciclo
end
% Correción para valores de PWM mayores a 1 o menores a 0
if (error(i)>=0) && (error(i)<=5)
dutyCycle=(error(i)/5*1^(1/2.4))^2.4; %Se hace lineal con función
potencial (desde experimento)
elseif (error(i)>5)
dutyCycle=1;
else
dutyCycle=0;
end
writePWMDutyCycle(P_uno,Pin_PWM,dutyCycle)%Establecer PWM de la salida
[t(i), Ref(i), Sal(i), error(i)] %Imprimir datos en el "Command Window"
% Fin Control PID
Se observa que existe un overshoot mucho mayor al que se evidencia en simulink, esto se puede
deber a muchas cosas, además se observa que sigue habiendo un poco de retardo, esto se puede
seguir dando debido a perturbaciones externas al sistema, se puede observar que se estabiliza
correctamente en 2.5 que es lo que se estaba buscando, y a pesar de este overshoot se considera
que el sistema puede funcionar de manera correcta.

Esta gráfica corresponde al mismo sistema, pero con una Kp de 1, se observa que el overshoot
disminuye un poco, sin embargo, el overshoot sigue siendo mayor al que se obtiene en simulink.

También podría gustarte