Vous êtes sur la page 1sur 4

Actas de las XXXVI Jornadas de Automtica, 2 - 4 de septiembre de 2015.

Bilbao
ISBN 978-84-15914-12-9 2015 Comit Espaol de Automtica de la IFAC (CEA-IFAC) 997

DESARROLLO DE UN CONTROLADOR PID ACCESIBLE COMO


SERVIDOR OPC

Jess M. Zamarreo, Mara J. Fuente, Luis F. Acebes


Dpto. de Ingeniera de Sistemas y Automtica, Universidad de Valladolid
jesusm@autom.uva.es, maria@autom.uva.es, felipe@autom.uva.es

Resumen ms popular del mundo, siendo utilizado en una de


cada tres instalaciones industriales. InTouch puede
Se ha desarrollado un controlador PID accesible conectarse a cientos de servidores OPC para acceder
como servidor OPC utilizando el software de as al mayor nmero de fuentes de datos distintas. En
simulacin EcosimPro. Este controlador se convierte versiones antiguas del software se inclua un mdulo
as en un mdulo estndar que puede ser utilizado denominado InControl que permita programar lazos
por cualquier aplicacin con soporte OPC que de control PID en el propio SCADA. Sin embargo,
necesite la funcionalidad de un PID. En este artculo, en versiones actuales dicho mdulo ya no existe, lo
adems de exponer las caractersticas y desarrollo cual supone un handicap para determinados
del PID, se muestra un ejemplo de uso desde el HMI proyectos de automatizacin.
InTouch de la empresa Wonderware.
Por lo tanto, el objetivo del presente trabajo es
desarrollar un mdulo servidor OPC con capacidades
Palabras Clave: Integracin de sistemas, PID, OPC. de clculo PID para su uso por cualquier software
con capacidad cliente OPC y que requiera dicha
funcionalidad.

1 INTRODUCCIN 2 EL CONTROLADOR PID


El controlador PID [1] sigue siendo uno de los
controladores ms populares y extendidos en la El algoritmo de control PID digital calcula en cada
industria, debido a su buen funcionamiento en la periodo de muestreo T (en segundos) la salida al
mayora de los procesos y a que su operacin y proceso (Output to Process), OP(t), en funcin de la
sintona son fciles de entender por los operarios de seal de error e(t) calculada como la diferencia entre
planta. El algoritmo del controlador PID est incluido los valores filtrados y normalizados del Set-Point,
en la mayora de los sistemas de control, pero hay SP(t), y la variable de proceso (Process Variable),
ocasiones en que nos podemos encontrar con que el PV(t).
software que queremos utilizar para controlar una
planta carece de dicha capacidad o que el PID que En caso de requerirse un filtrado de las seales, se
tiene implementado no cubre nuestras necesidades. dispone de sendos filtros de primer orden con
constantes de tiempo SP y PV para las seales del
En estas situaciones, se necesita un mdulo externo Set-Point y variable de proceso, respectivamente.
con la funcionalidad de un PID y que sea fcil de
comunicar con nuestro software. El rango del controlador se define mediante los
lmites inferior y superior tanto de PV como de SP,
Hoy da, el estndar OPC [4, 6] se he convertido en denominados PVEULO y PVEUHI. Estos lmites
el medio ms comn y verstil de intercambiar datos permiten convertir las seales reales XEU, en
entre sistemas de control, supervisin e incluso unidades de ingeniera, en seales en unidades
aplicaciones ofimticas (e.g., Excel). Prcticamente porcentuales X% o normalizadas, aplicando la
todo software actual que pueda tener algn uso ecuacin 1.
industrial es capaz de comunicarse con fuentes de
datos OPC. Algunos ejemplos seran Matlab (con la 100
X% = ( X EU PVEULO ) (1)
OPC Toolbox), LabView, Excel, etc. ( PVEUHI PVEULO )

La empresa Wonderware [5] comercializa un HMI Los tres parmetros de sintona del controlador PID
(Human Machine Interface, Interfaz Hombre son la ganancia proporcional Kp expresada en %/%,
Mquina) denominado InTouch caracterizado por ser el tiempo integral Ti expresado en minutos, y el
una solucin de supervisin HMI y SCADA abierta y tiempo derivativo Td expresado tambin en minutos.
extensible. Segn la propia empresa, su sistema es el
Actas de las XXXVI Jornadas de Automtica, 2 - 4 de septiembre de 2015. Bilbao
ISBN 978-84-15914-12-9 2015 Comit Espaol de Automtica de la IFAC (CEA-IFAC) 998

Td
El PID implementado dispone de dos modos de Kp = Kp r 1 + r (10)
Tir
operacin: ideal o no interactivo (modo = 1) y real o
interactivo (modo = 0). En cualquiera de los modos,
se pueden seleccionar cuatro tipos de ecuaciones de Ti = (Tir + Td r ) (11)
la seal de control normalizada (tipo = 1(A), 2(B),
3(C), 4(D)) denominadas tradicionalmente como Tir Td r
ecuacin A o PID (ecuacin 2), ecuacion B o PI-D Td = (12)
(ecuacin 3), ecuacin C o I-PD (ecuacin 4) y Tir + Td r
ecuacin D o I (ecuacin 5).
Para evitar la saturacin del trmino integral
1 de(t ) (antiwind-up), la seal de control normalizada
OP(t ) = Kp e(t ) + e(t )dt + Td (2) calculada, OP(t), est limitada en el rango 0-100%.
Ti dt
Sin embargo, la seal de control que se enva al
proceso es una seal limitada dentro del rango
1 dPV% (t ) especificado por los valores mximos y mnimos de
OP(t ) = Kp e(t ) + e(t )dt Td (3)
Ti dt la seal de control en campo (OPHI y OPLO).
Adems, dicha seal, que se calcula cada periodo de
1 dPV% (t ) muestreo, se reconstruye usando un ZOH (Zero
OP(t ) = Kp PV% + e(t )dt Td (4) Order Hold, Mantenedor de Orden Cero).
Ti dt
El controlador puede funcionar en modo
Kp AUTOmtico o modo MANual. En modo automtico
Ti
OP(t ) = e(t )dt (5)
(autom = 1), el usuario especifica el valor deseado de
SP. En modo manual (autom = 0), el usuario indica
Dichas ecuaciones se han discretizado de acuerdo a una seal de control (OPman) en la escala 0-100%.
la frmula incremental implementada en Allen
Bradley Logix5550, siendo respectivamente: Si est activado el SP Tracking (SPTracking = 1),
cuando el controlador est en modo manual, el valor
(e(t ) e(t T )) + de la seal de referencia SP sigue al valor de la seal
de proceso. De modo que, cuando el controlador se
T Td
OP(t ) = OP(t T ) + Kp e(t ) + (e(t ) (6) vuelva a situar en modo automtico, el valor de la
Ti T
seal de referencia coincide con el valor de la seal
2e(t T ) + e(t 2T )) de proceso y as se evitan los bumpless.

(e(t ) e(t T )) + 3 EL SERVIDOR OPC DEL PID



T Td
OP(t ) = OP(t T ) + Kp e(t ) ( PV% (t ) Para desarrollar el servidor OPC que represente al
Ti T algoritmo de clculo del PID, este ha sido

2 PV% (t T ) + PV% (t 2T )) programado previamente en el entorno de simulacin
(7) EcosimPro [2], de forma que, haciendo uso de la
OPCToolbox [7] del mismo entorno, es posible
generar de forma muy sencilla el servidor OPC
( PV% (t ) PV% (t T )) +
asociado.
T Td
OP(t ) = OP(t T ) + Kp e(t ) ( PV% (t )
Ti T Un servidor OPC viene definido por el espacio de

2 PV% (t T ) + PV% (t 2T )) nombres que ofrece a los clientes y por la lgica de
ejecucin en base a los valores que tengan los items.
(8)
En el caso del servidor OPC del PID, por una parte,
el espacio de nombres incluir todas las variables
T propias del algoritmo de control y que se han descrito
OP(t ) = OP(t T ) + Kp e(t ) (9)
Ti en el apartado anterior (ver figura 1).

En modo real o interactivo (modo = 0) se usan las Por otra parte, en la rama Deck Commands del
mismas ecuaciones, pero se realiza una mismo espacio de nombres disponemos de diversas
transformacin de los parmetros reales (Kpr, Tir, variables booleanas que permiten la ejecucin del
Tdr) a los ideales (Kp, Ti, Td) mediante las algoritmo del PID segn se requiera. Bsicamente,
ecuaciones 10 a 12. podemos ejecutar el modelo del PID en dos modos:
autnomo o supervisado.
Actas de las XXXVI Jornadas de Automtica, 2 - 4 de septiembre de 2015. Bilbao
ISBN 978-84-15914-12-9 2015 Comit Espaol de Automtica de la IFAC (CEA-IFAC) 999

3. Lee del servidor del PID la seal de control


OP.
4. Escribe en el servidor del proceso el nuevo
valor de la variable de control OP.

Figura 1: Variables del PID en el servidor OPC


Figura 2: Integracin de los 3 subsistemas
En modo autnomo, el algoritmo del PID se ejecuta
de forma temporizada en tiempo real. Para ello, se Como aplicacin prctica de lo mostrado hasta aqu,
debe poner a TRUE el item RealTimeFlag, y vamos a considerar una planta piloto como la
posteriormente poner a TRUE el item IntegFlag. Esto mostrada en la figura 3, situada en el laboratorio de
har que el servidor OPC recalcule el valor de la OP Ingeniera de Sistemas y Automtica de la
cada periodo de muestreo T de forma autnoma. Universidad de Valladolid.

En modo supervisado, es el cliente el que decide en


qu momento se recalcula el valor de la OP. Para
ello, en primer lugar el valor del item Sim_CINT
debe coincidir con el periodo de muestreo T. Con
esta condicin, cada vez que el cliente ponga a
TRUE el item StepCINTFlag, el algoritmo del PID
recalcular el valor de la OP.

4 EJEMPLO DESDE INTOUCH


Para mostrar la utilidad del servidor OPC
desarrollado, se va a mostrar un ejemplo en el que, Figura 3: Planta piloto
desde InTouch se supervisa una planta de laboratorio
y se establece un control PID de la misma. Dicha planta consta de dos depsitos comunicantes;
entrando un caudal de agua al primero de ellos y
El esquema de los diversos elementos que componen midindose el nivel en el segundo. Se puede regular
el sistema integrado se muestra en la figura 2. El el caudal que entra mediante una vlvula de
servidor OPC que representa al PID corresponde al regulacin. El caudal que sale del segundo depsito
desarrollo explicado en el punto anterior. El servidor cae a una cubeta de donde se extrae con una bomba
OPC del proceso corresponde al servidor OPC de una que aporta agua de nuevo a la entrada a travs de la
tarjeta de adquisicin de datos (DAQ) que establece vlvula. Por lo tanto, el sistema es autnomo en
un acceso estndar tanto a la variable de proceso cuanto al consumo de agua. Por ltimo, el caudal que
(PV) como a la variable de control (OP). El HMI de circula por el circuito se mide a travs de un
Intouch, cada periodo de muestreo, realiza 4 caudalmetro situado entre la bomba y la vlvula de
acciones: regulacin. En cuanto a seales, en este sistema se
tienen disponibles medidas del nivel en el segundo
1. Lee del servidor del proceso la variable de depsito y del caudal a la entrada, y se puede actuar
proceso PV. sobre la apertura de la vlvula de regulacin. Para
2. Pasa dicho valor actualizado al servidor del controlar el nivel en el segundo depsito puede
PID para que este actualice el error (SP-PV) utilizarse un PID que, en funcin del nivel medido y
y por tanto recalcule la seal de control OP. la referencia deseada, acte sobre la apertura de la
vlvula. Las seales de los dos sensores y del
actuador se conectan fsicamente a una tarjeta de
Actas de las XXXVI Jornadas de Automtica, 2 - 4 de septiembre de 2015. Bilbao
ISBN 978-84-15914-12-9 2015 Comit Espaol de Automtica de la IFAC (CEA-IFAC) 1000

adquisicin de datos que lleva asociado un servidor 5 CONCLUSIONES


OPC de forma que, junto con el PID descrito en la
seccin 3, el esquema de la figura 2 puede ser llevado En este artculo se ha mostrado el desarrollo de un
a la prctica. servidor OPC que es capaz de realizar los clculos de
un PID. Su desarrollo ha sido relativamente sencillo
Por tanto, slo queda configurar InTouch para que se dado que, una vez programado el PID en el entorno
comunique con ambos servidores OPC y tenga de simulacin EcosimPro, desde el propio entorno
acceso a las variables de inters (figura 4). puede generarse el servidor OPC asociado.

Se ha mostrado su utilidad como mdulo de soporte


para todo aquel software que necesite los servicios de
un PID; en concreto se ha mostrado un ejemplo de
aplicacin desde el HMI InTouch, de la empresa
Wonderware.

El PID con soporte OPC puede ser descargado desde


la pgina web del grupo de investigacin en Control
Figura 4: Variables OPC accedidas desde InTouch y Supervisin de Procesos de la Universidad de
Valladolid [3].
Y con estas variables, configurar las acciones a
realizar por el HMI y desarrollar la interfaz de Agradecimientos
usuario. En las figuras 5 y 6 pueden verse dos de las
pantallas desarrolladas. En la figura 5 puede verse un Los autores agradecen al Ministerio de Economa y
sinptico de la planta junto con los principales Competitividad y a la Unin Europea el soporte a
valores asociados a la misma, y en la figura 6 la travs del proyecto DPI2012-39381-C02-02.
pantalla donde el usuario/operador puede cambiar los
parmetros del PID as como visualizar grficamente Referencias
la evolucin de las variables de inters.
[1] strm K.J. and Hgglund T. (2001) The future
of PID control. Control Engineering Practice,
Volume 9, Issue 11, November 2001, pp. 1163-
1175.

[2] EcosimPro (2015) http://www.ecosimpro.com.


Online; ltimo acceso: 19/05/2015.

[3] GIR Control y Supervisin de Procesos (2015)


Controlador PID con soporte OPC.
http://bit.ly/1SSXyqD. Online; ltimo acceso:
2/06/2015.

[4] Iwanitz, F. and J. Lange (2002) OPC -


Fundamentals, Implementation and Application.
Figura 5: Sinptico de la planta en InTouch Hthig, Heidelberg (Germany).

[5] Wonderware Spain (2015)


http://www.wonderware.es. Online; ltimo
acceso: 19/05/2015.

[6] Zamarreo J.M. (2010) Acceso a datos


mediante OPC. Andavira SL, Santiago de
Compostela (Spain).

[7] Zamarreo, J. M., Mazaeda, R., Caminero, J.


A., Rivero, A. J. & Arroyo, J. C. (2014). A new
plug-in for the creation of OPC servers based on
Figura 6: Parmetros del PID y grficas de evolucin EcosimPro simulation software. Simulation
Modelling Practice and Theory, 40, 86-94.