Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MEDIANTE ARDUI NO 1
CONTROL 2
Contenido
1 RESUMEN
2 INTRODUCCIÓ N.
3.1 OBJETIVOS
3.2 HIPOTESIS
Impacto industrial.
Impacto económico.
Impacto tecnológico.
5 METODOLOGI A
1 LED.
1 Optoacoplador (optotriac) CT3011, .
1 Triac BT 136.
1 ventilador de 220v, 0.14 A y 60Hz.
Figura 8. Transformador.
Bajo coste.
6 TOMA DE PRUEBAS
%delete(instrfind({'Port'},{'COM25'}));
%a=arduino('COM23');
Fs=50;
N=100;
u=zeros(N,1);
y=zeros(N,1);
t=linspace(0,(N -1)/Fs,N);
l1=line(nan,nan,'Color','r','LineW idth',2);
l2=line(nan,nan,'Color','b','LineW idth',2);
ylim([-0.1 5.1])
TOMA DE PRUEBAS 15
CONTROL 2
xlim([0 (N-1)/Fs])
grid
Stop=1;
uicontrol('Style','Pushbutton','String','Parar',...
'Callback','Stop=0;')
%%
H=tf(6.5,[1 3.5 6.5]);
Hd=c2d(H,1/Fs);
A=Hd.den{1};
a1=A(2);
a2=A(end);
B=Hd.num{1};
b1=B(2);
b2=B(end);
%%
tic
while Stop
if toc>1/Fs
tic
u(1:end-1)=u(2:end);
u(end)=a.analogRead(0)*5/1023;
y(1:end-1)=y(2:end);
y(end)=-a1*y(end-1)-a2*y(end-2)+b1*u(end -1)+b2*u(end-2);
set(l1,'XData',t,'YData',u)
set(l2,'XData',t,'YData',y)
drawnow
end
end
Figura 13. Programación comunicación serial Arduino -Matlab
38 0.4740958 80 0.48875855
39 0.4740958 81 0.48875855
40 0.4740958 82 0.48875855
41 0.4740958 83 0.48875855
Tabla 1. Toma de datos de voltaje en función del tiempo.
Kp =
7.723433157249670
Ki =
6.930332582054424
Kd =
27.721330328217697
Figura 3.1. Constant e del controlador PI D.
Figura 13.1. Respuesta ante una entrada en escalón del sistema y recta
tangente en el punto de inf lexión.
7 RESULTADOS
𝑉 − 0.0059
𝑇=
0.0098
Lo primero que hay que hacer es definir todos los errores en nuestro
código. Partiendo que e(t)=Error del sistema, pues simplemente
necesitamos comparar el valor deseado de la variable a controlar
con el valor real medi do por el sensor. Es decir:
e(t)=valorDeseado -valorReal
El error anterior multiplicado por la ganancia proporcional nos da
como resultado el controlador proporcional. La parte más sencilla
del controlador PID. Es decir:
ControladorProporcional= Kp*e(t)
Ahora continuamos definiendo el controlador integral. Partiendo de
la definición previa de e(t) y tomando en cuenta que la integral del
error respecto al tiempo es la sumatoria de todos los valores que
pueda adquirir el error durante el tiempo de ejecución. E l controlador
integral se define de la siguiente manera:
e(t)=valorDeseado -valorReal;
integral=integral+e(t);
Controlador integral=ki*integral;
Return Controlador integral;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
miliVolts=(analogRead(sensorLM35)*5.00)/1023.00;//
Escalamiento
t=(miliVolts-0.0059)/0.0098; // ecuacion de nuestra funcion
ahora=millis(); // tiempo actual
8 CONCLUSIONES.
9 BIBLIOGRAFÍ A
o http://www.luisllamas.es/2015/07/medir -temperatura -con-
arduino-y-sensor-lm35/.
o http://www.geekfactory.mx/tutoriales/tutoriales -
arduino/tutorial -arduino-con-fotoresistencia-ldr/.
o https://www.youtube.com/watch?v=FO2X7MN1gZE
o https://www.youtube.com/watch?v=nQ_ENlzHP7Q&t=229s
o https://www.youtube.com/watch?v=C1i5jBmKwXI
o http://www.ti.com/lit/ds/symlink/lm35.pdf
o http://microhop.net/articulos/microcontroladores -
articulos/control -pid-con-arduino-y-matlab/
o http://www.edutecne.utn.edu.ar/microcontrol_congr/industria/
MTODOB~1.PDF.
10 ANEXOS
10.1 Hoja de datos del optoacoplador CT3011.
10.2 Hoja de datos del triac BT136.
10.3 Hoja de datos del transistor 2N2222.
CONTROL 2
28