Está en la página 1de 11

CONTROL INTELIGENTE

docente: Ing. Ricardo Rodrguez Bustinza

Tema: Control PID con redes neuronales

Integrantes: Cdigo:

- ALVAREZ CHAUCA HAROLD STEEP 1313220418


- CUARESMA HURBANO JOHNN 1313220641

PERU CALLAO
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

I. INTRODUCCION
La razn principal por la cual se unas un control con redes neuronales es debido a
que consiste en la habilidad que tienen para emular sistemas no lineales, an sin
conocimiento previo de ellos; como resultado reducen el trabajo de identificacin,
considerado como el primer paso en el diseo de casi cualquier controlador. Cuando
el aprendizaje es fuera de lnea, es suficiente con una muestra de la seal de entrada
y salida (la cual debe representar toda la dinmica del sistema dentro su rango de
funcionamiento), para que los algoritmos de entrenamiento empiecen a adecuar los
pesos de la red sin aparente intervencin humana. Otra caracterstica favorable del
control con redes neuronales es que pueden adaptarse a los cambios en los
parmetros de la planta que emulan, lo cual se debe al aprendizaje en tiempo real con
que pueden ser implementadas. Adems, su lgica interna es simple; sta se basa en
la transformacin de los datos de entrada en los de salida por medio de
multiplicaciones, sumas, y clculos de exponenciales, en la mayora de los casos; esto
implica que la ejecucin de sus algoritmos no es exigente en cuanto a recurso
computacional; por tanto, pueden ser rpidas.

II. MARCO TEORICO


Control PID
Un controlador PID (Proporcional Integrativo Derivativo) es un mecanismo de
control genrico sobre una realimentacin de bucle cerrado, ampliamente
usado en la industria para el control de sistemas. El PID es un sistema al que
le entra un error calculado a partir de la salida deseada menos la salida
obtenida y su salida es utilizada como entrada en el sistema que queremos
controlar. El controlador intenta minimizar el error ajustando la entrada del
sistema.
Esquema de un control PID.
Considerando un lazo de control de entrada y de salida Los miembros de la
familia de controladores PID, incluyen tres acciones: proporcional (P), integral
(I) y derivativa (D). Estos controladores son los denominados P, I, PI, PD y PID.

Diagrama de bloques

2
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

P: accin de control proporcional: Da una salida del controlador que


es proporcional al error, es decir: u(t) = KP. e(t), que descrita desde su
funcin transferencia queda:
Cp(s) = Kp (1)
donde Kp es una ganancia proporcional ajustable. Un controlador
proporcional puede controlar cualquier planta estable, pero posee
desempeo limitado y error en rgimen permanente (offset).

I: accin de control integral: da una salida del controlador que es


proporcional al error acumulado, lo que implica que es un modo de
controlar lento.

La seal de control u(t) tiene un valor diferente de cero cuando la seal de error
e(t) es cero. Por lo que se concluye que, dada una referencia constante, o
perturbaciones, el error en rgimen permanente es cero.
PI: accin de control proporcional-integral: se define mediante

Donde Ti se denomina tiempo integral y es quien ajusta la accin


integral. La funcin de transferencia resulta:

Con un control proporcional, es necesario que exista error para tener


una accin de control distinta de cero. Con accin integral, un error
peque no positivo siempre nos dar una accin de control creciente, y si
fuera negativo la seal de control ser decreciente. Este razonamiento
sencillo nos muestra que el error en rgimen permanente ser siempre
cero. Muchos controladores industriales tienen solo accin PI. Se puede
demostrar que un control PI es adecuado para todos los procesos donde
la dinmica es esencialmente de primer orden. Lo que puede
demostrarse en forma sencilla, por ejemplo, mediante un ensayo al
escaln.
PID: accin de control proporcional-integral-derivativa:
esta accin combinada rene las ventajas de cada una de las tres
acciones de control individuales. La ecuacin de un controlador con esta
accin combinada se obtiene mediante:

3
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

y su funcin transferencia resulta:

Grafica de un control PID

Redes neuronales
Las Redes Neuronales son un campo muy importante dentro de la Inteligencia
Artificial. Inspirndose en el comportamiento conocido del cerebro humano
(principalmente el referido a las neuronas y sus conexiones), trata de crear
modelos artificiales que solucionen problemas difciles de resolver mediante
tcnicas algortmicas convencionales.
Modelo de una neurona artificial: El modelo define un elemento de proceso
(EP), o neurona artificial, como un dispositivo que, a partir de un conjunto de
entradas, xi (i=1...n) o vector x, genera una nica salida y.

4
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

Consta de los siguientes elementos:


Conjunto de entradas o vector de entradas x, de n componentes
Conjunto de pesos sinpticos wij. Representan la interaccin entre la
neurona presinptica j y la postsinptica i.
Regla de propagacin d(wij,xj(t)): proporciona el potencial
postsinptico, hi(t).
Funcin de activacin ai(t)=f(ai(t-1), hi(t)): proporciona el estado de
activacin de la neurona en funcin del estado anterior y del valor
postsinptico.
Funcin de salida Fi(t): proporciona la salida yi(t), en funcin del
estado de activacin.
Redes neuronales
Una red neuronal artificial (RNA) se puede como un grafo dirigido con las
siguientes restricciones:

Los nodos se llaman elementos de proceso (EP).


Los enlaces se llaman conexiones y funcionan como caminos
unidireccionales instantneos
Cada EP puede tener cualquier nmero de conexiones.
Todas las conexiones que salgan de un EP deben tener la misma seal.

Los EP pueden tener memoria local.


Cada EP posee una funcin de transferencia que, en funcin de las
entradas y la memoria local produce una seal de salida y / o altera la
memoria local.
Las entradas a la RNA llegan del mundo exterior, mientras que sus
salidas son conexiones que abandonan la RNA.

Arquitectura de una red neuronal


La arquitectura de una RNA es la estructura o patrn de conexiones de la red.
Es conveniente recordar que las conexiones sinpticas son direccionales, es
decir, la informacin slo se transmite en un sentido.
En general, las neuronas suelen agruparse en unidades estructurales llamadas
capas. Dentro de una capa, las neuronas suelen ser del mismo tipo. Se pueden
distinguir tres tipos de capas:

5
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

De entrada: Reciben datos o seales procedentes del entorno.


De salida: Proporcionan la respuesta de la red a los estmulos de la
entrada.
Ocultas: No reciben ni suministran informacin al entorno.
Generalmente las conexiones se realizan entre neuronas de distintas capas, pero
puede haber conexiones intracapa o laterales y conexiones de realimentacin que
siguen un sentido contrario al de entrada-salida.

Arquitecturas de RNA

III. Desarrollo del control PID con redes neuronales:


El primer objetivo que vamos a realizar es crear datos ( datos.text) que
recogeremos seguidamente con un programa que lea estos datos para as
poder realizar el control PID:
clear all;close all;clc
a=1:10;
b=1:0.1:5;
c=1:10;
P=combvec(a,b,c);
Mp=0.1; % sobreimpulso
ts=0.3; % tiempo establecimiento
x=1.5; % polo
p=(log(Mp)/pi)^2;
zeta=sqrt(p/(1+p)); % factor de amortiguamiento
w=3/(zeta*ts);
T=zeros(1,3);
L=length(P);
for i=1:L;
% CONTROL PID
d=P(:,i);
Kp=(w^2+2*zeta*w*x-d(3))/d(1);
Ki=(x*w^2)/d(1);
Kd=(2*zeta*w*x-d(2))/d(1);
T(i,:)=[Kp Ki Kd];
End

6
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

P=P';
N1=length(P);
a1=P(:,1);a1=a1(1:N1);
b1=P(:,2);b1=b1(1:N1);
c1=P(:,3);c1=c1(1:N1);
T1=T(:,1);T1=T1(1:N1);
T2=T(:,2);T2=T2(1:N1);
T3=T(:,3);T3=T3(1:N1);
coef=[a1,b1,c1,T1,T2,T3];
save datos.txt coef -ascii

luego de haber realizado la generacin del archivo datos.txt con un sobre impulso
de 0.1, tiempo de establecimiento de 0.3 y un polo de 1.5, que pusimos nosotros,
este valor puede variar de acuerdo con el modelo de control que se va a realizar.

Como segundo objetivo es leer este archivo generado (datos.txt) y entrenar la


red neuronal para poder as realizar el control PID con una RNA.
clear all; close all; clc
load datos.txt
a=datos(:,1);b=datos(:,2);c=datos(:,3);
Kp=datos(:,4);Ki=datos(:,5);Kd=datos(:,6);
P=[a'; b'; c'];
T=[Kp'; Ki'; Kd'];
N1=3; N2=3; % neuronas de capa oculta y capa de salida
net=newff(minmax(P), [N1 N2], {'tansig', 'purelin'}, 'trainlm');
W=randn(N1,N2);
V=randn(N2,N1);
bW=randn(N1,1);
bV=randn(N2,1);
net.iw{1,1}=W;
net.lw{2,1}=V;
net.b{1}=bW;
net.b{2}=bV;
net.trainParam.epochs=500; % # de epocas
net.trainParam.goal=1e-5; % objetivo de error
net.trainParam.lr=0.01; % learning rate
net.trainParam.show=100;
net=train(net,P,T);
%simulando a la RED
an=sim(net,P); % salida de la red
%calculo del Error MSE (Mean Square Error)
error=T-an;
Q=length(error);
E=zeros(1,1); % condicion inicial
for i=1:Q;
e=mse(error(:,i)); % error mse
E(i)=e; % almacena error mse
end
% validar el entrenamiento ingresando una planta P(s)
% coeficientes ai, bi, ci
ai=10;bi=4;ci=10;
planta=tf(ai, [1 bi ci]);
Pv=[ai;bi;ci]; % vector de validacion
an=sim(net,Pv);
Kpn=an(1,:) %Kp obtenido de la red
Kin=an(2,:) %Ki obtenido de la red
Kdn=an(3,:) %Kd obtenido de la red
PID=tf([Kdn Kpn Kin],[1 0]);
plantapid=PID*planta;
plantapidlc=feedback(plantapid,1); %F.T de la planta con PID de la red
en lazo cerrado
%%Calculando Kp, Ki y Kd de la planta%%
Mp=0.1; % sobreimpulso

7
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

ts=0.3; % tiempo establecimiento


x=1.5; % polo
p=(log(Mp)/pi)^2;
zeta=sqrt(p/(1+p)); % factor de amortiguamiento
w=3/(zeta*ts);
Kpv=(w^2+2*zeta*w*x-ci)/ai;
Kiv=(x*w^2)/ai;
Kdv=(2*zeta*w*x-bi)/ai;
PIDv=tf([Kdv Kpv Kiv],[1 0]);
plantapidv=PIDv*planta;
plantapidlcv=feedback(plantapidv,1); %F.T de la planta con PID en lazo
cerrado
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
j=1:Q;
subplot(311),plot(j,E,'k')
xlabel('k')
ylabel('Error')
title('Error Cuadratico Medio')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
t=0:0.001:2;
r=ones(size(t));
P1=lsim(planta,r,t);
P2=lsim(plantapidlc,r,t);
P3=lsim(plantapidlcv,r,t);
subplot(312)
plot(t,P1,'m',t,P2,'r',t,P3,'b',t,r,'k--')
legend('Planta no controlada','PID-RN','PID')
axis([0 t(end) 0 2])
subplot(313)
step(plantapidlc,plantapidlcv)
legend('PID-RN','PID')
Kv=[Kpv;Kiv;Kdv];
Kn=[Kpn;Kin;Kdn];
e=Kv-Kn % error de las constantes del controlador

Red neuronal generada con 3 capas


ocultas y 3 capas de salida

8
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

Como lo mencionamos el programa primero realiza una creacin de datos


luego estos datos son ledos, luego ingresamos el nmero de capas de la
salida y la capa oculta nosotros ingresamos 3 capas, luego creamos la red
especificando el nmero de pocas y el error.

Despus entrenamos la red ingresando a, b y c para que as la red nos d


las constantes kp, pi y kd, para as tener un control PID en lazo cerrado.

IV. Graficas obtenidas

Grafica de la performance de la red con


500 pocas

9
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

Graficas del entrenamiento de la red

En las grficas se observa el error cuadrtico medio, el control pid, pid con red
neuronal, y la red ante un escaln

10
FACULTAD DE INGENIERIA ELECTRICA Y ELECTRNICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRNICA

V. CONCLUCIONES
Se concluye con el trabajo siguiente que con la red neuronal se puede realizar
un control PID. Y as poder comprar como se realiz con un PID normal y poder
observar que sus graficas salieron muy similares, pero con un error muy
cercano para la planta elegida.

En el proceso se realiz dos veces el entrenamiento ya que se pusieron pesos


aleatorios.

Para poder obtener quiz mejor resultados, se tendra que aumentar el nmero
de capas de acuerdo con la eleccin de la planta para poder as disminuir el
error obtenido.

VI. Bibliografa

http://revistas.utp.edu.co/index.php/revistaciencia/article/view/6669
Control de procesos con redes neuronales-jose Danilo rairan

11

También podría gustarte