Está en la página 1de 27

01/12/14

 
TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  S7-­‐1200  
Tema  7  
Programación  Avanzada.  Visión  Prác4ca  con  S7-­‐1200  
PARTE  3:  CONTROL  PID  

1  
bierto: Son sistemas en los que solo actúa el proceso sobre la señal de entrada y da como resultado una señal de salida
ción de la cual el sistema no actúa. El error (PV-SP) no se toma en cuenta para el ajuste de la salida hasta que PV pueda lleg

Sistemas  en  Lazo  Cerrado  

01/12/14  
Setpoint (SP) Controlador Salida
+
•  Sistemas  de  lazo  cerrado:  Los  sistemas  de  lazo  cerrado  hacen  uso  
Sistema

de  una  realimentación  Imagen: de  lMintz


a  señal   dCommons)
e  salida  y  la  toman  como  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


(Wikimedia

referencia  para  de  esta  forma  corregir  la  entrada  al  controlador,  
abierto no son sistemas regulables de forma automática, pero por contra son sistemas estables frente a oscilaciones o alter
ma actúa de formaactuando  
independienteeste  aslaobre  
salidaedel l  sistema  
mismo. con  la  diferencia  existente  entre  la  
variable  de  proceso  (PV)  y  la  consigna  establecida  (SP).  De  esta  
forma,  a  mayor  diferencia  entre  ambas,  mayor  será́  la  actuación  del  
errado: Los sistemas de lazo cerrado hacen uso de una realimentación de la señal de salida y la toman como referencia p
controlador  
da al controlador, actuándo estessobre obre  elel  sistema
sistema,  
con la mdiferencia
idiendo  existente
de  nuevo  
entre el  laresultado  
variable de proceso (PV) y la consigna
mayor diferenciaproducido  
entre ambas, y  amayor
ctuando  
será e lal  actuación
controlador   en  consecuencia.  
del controlador sobre el sistema,   midiendo de nuevo el resultado
r en consecuencia.

Setpoint (SP) Error (E) Salida


Controlador
+
Sistema

S7-­‐1200  
Entrada de
referencia (PV)

Medidor

2  
Imagen: Mintz (Wikimedia Commons)

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
2  
cerrado son capaces de lograr la exactitud de control de proceso requerida en un sistema, pero por contra pueden
s debido a su tendencia a sobrecorregir errores en el sistema.
UD5. Introducción al control PID.

Sistemas  en  Lazo  Cerrado  


1. Fundamentos de control.

01/12/14  
3. Ejemplos de sistemas de control de lazo cerrado.

•  Ejemplo  de  sistema  de  control  de  lazo  cerrado.    


En este caso, el controlador debe ser capaz de, en base a la consigna marcada previamente (SP) y al valor medido de la variable de proceso (PV) regular el
flujo de vapor al intercambiador para que la temperatura de fluido caliente sea constante.

•  Regulación  de  nivel  de  depósito:     Un  sensor  ultrasónico  con  salida  4-­‐20mA  controla  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


b) Regulación de nivel de depósito:
el  nivel  de  uUn
n  dsensor
epósito   en  un  rango  
ultrasónico con salidaespecífico  
4-20mA (en  
controla el
este  caso  entre  
nivel de 80  un
y  1depósito
50mm  den esde  
un lrango
a  posición  
específico del   (en este
sensor),  enviando  
caso entre una  
80syeñal  
150mm de  vdesde
ariable   de  
la posición del sensor),
enviando una señal de variable de proceso (PV) a un
proceso  (PV)   a  un  regulador.  
regulador.
 
El  nivel  del  El
depósito  
nivel delddepósitoebe  mantenerse  
debe mantenerse en  un   en un punto
punto  específico  (SP)  previamente  especificado  al regulador
específico (SP) previamente especificado
y controlable desde entrada, de modo que puede ser
al  regulador   y  controlable  desde  entrada,  de  
cambiado en un salto único (p.e: S1-100mm,
modo  que  pS2-150mm).
uede  ser  cambiado  en  un  salto  único  
(p.e:  S1-­‐100mm,  S2-­‐150mm).  
  El ajuste al SP especificado se realiza mediante una
bomba 24VDC, cuyo caudal es regulable con una
El  ajuste  al  señal
SP  especificado   se  realiza  mediante  
analógica 0-10V procedente del regulador.
una  bomba  24VDC,  cuyo  caudal  es  regulable  con  
una  señal  aAnte nalógica   0-­‐10V  pde
un cambio rocedente  
consignadel   (SP), el regulador
regulador.   pondrá en marcha la bomba, ajustando el nivel de
tensión de la misma (velocidad y caudal) al nivel de la
 

S7-­‐1200  
variable de proceso hasta llegar a SP de acuerdo a
Ante  un  cambio  
señal d e  consigna  (por
proporcionada SP),  lael  variable
regulador  
de proceso del
pondrá  en  marcha  la  bomba,  ajustando  el  nivel  
sensor ultrasónico PV.
de  tensión  de  la  misma  (velocidad  y  caudal)  al  
nivel  de  la  variable  de  proceso  hasta  llegar  a  SP  
de  acuerdo  a  la  señal  proporcionada  por  la   3  
variable  de  proceso  del  sensor  ultrasónico  PV.  

3  
Curso Autómatas Programables
IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos
Regulador/Controlador  PID  

01/12/14  
•  Las  acciones  de  control  anteriormente  vistas  en  los  ejemplos  implican  un  
proceso  de  control  interno  en  el  regulador,  que  en  base  a  la  información  
de  consigna  marcada  (SP.-­‐  Setpoint)  y  al  valor  recibido  por  la  variable  de  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


proceso  (PV.-­‐  Process  variable)  regula  una  variable  de  control  (CV.-­‐  Control  
Variable)  de  la  forma  más  adecuada  para  lograr  un  ajuste  al  valor  deseado.    
•  Uno  de  los  sistemas  de  control  más  habitualmente  extendidos  en  procesos  
industriales  es  el  control  PID,  que  a  su  vez  implica  la  aplicación  de  tres  
4pos  de  control,  cada  uno  de  ellos  con  un  fin:    
•  Proporcional  (P):  Es  el  4po  de  control  en  el  que  la  salida  del  controlador  es  
proporcional  a  la  magnitud  de  error  (diferencia  entre  PV  y  SP).  
•  Integral  (I):  Es  el  4po  de  control  en  el  que  la  salida  del  controlador  es  
an un proceso de controlproporcional   a  la  que
interno en el regulador, magnitud  
en base a la d e  error  de(diferencia  entre  PV  y  SP)  y  al  4empo  
información
en  que  
de proceso (PV.- Process variable) ésta  
regula se  man4ene  
una variable de control (CV.-(error  
Control e n  estado  estacionario).    
Variable)

•  DerivaDvo  (D):  El  control  deriva4vo  reacciona  a  la  tendencia  de  la  magnitud  
de  error  (diferencia  entre  PV  y  SP),  y  por  tanto  únicamente  aplica  cuando  
ocesos industriales es el control PID, que a su vez implica la aplicación de tres tipos de

hay  cambios  en  el  valor  absoluto  del  error.    

S7-­‐1200  
ntrolador es Cada  uno  de  estos  4pos  de  control  está  diseñado  con  un  fin,  y  
aunque  es  posible  emplearlos  por  separado,  la  mayoría  de  los  
reguladores  basados  en  PLC  incorporan  funciones  específicas  
ntrolador es parametrizables  que  realizan  el  control  conjunto  proporcional,  
mpo en que integral  y  derivaDvo.   4  
Es  posible,  no  obstante,  modular  la  aplicación  de  cada  uno  de  
la magnitud los  controles  mediante  el  cambio  de  sus  ganancias  
cuando hay individuales,  aunque  esto  no  es  posible  en  todos  los  4pos  de  
4  
controlador,  como  veremos  más  adelante.  
Imagen: Wikimedia Commons
Autor: Arturo Urquizo
S7  1200  

01/12/14  
•  El  S7-­‐1200,  a  diferencia  de  numerosos  
reguladores  con  un  determinado  
número  de  lazos  especificados  PID  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


para  poder  integrar,  no  Dene  límite  de  
lazos  PID,  que  vendrán  pues  
determinados  por  la  memoria  del  
sistema.  Esto  significa  que,  con  el  
límite  de  entradas  y  salidas  disponibles  
y  el  límite  de  memoria  del  sistema,  se  
pueden  implementar  tantos  lazos  PID  
como  se  deseen  en  cada  CPU.    
•  Para  poder  implementar  un  control  PID  
desde  el  S7-­‐1200  es  necesario  disponer  
de  las  E/S  analógicas  per4nentes  que  
permitan  captar  la  información  de  la/s  
variable/s  de  proceso  (PV)  necesaria/s  
y  actuar  sobre  la/s  variable/s  de  

S7-­‐1200  
control  (CV)  per4nente/s.    
•  El  S7-­‐1200  incorpora  una  serie  de  
funciones  especiales  FB  agrupadas  bajo  
el  epígrafe  de  “instrucciones   5  
tecnológicas”  desde  las  Task  Cards.    
5  
S7  1200  

01/12/14  
•  Las  funciones  de  control  PID  del  S7-­‐1200  se  dividen  en:    
•  1)  PID_Compact:  La  instrucción  PID_Compact  permite  integrar  en  el  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


programa  de  usuario  un  lazo  de  control  PID  con  autosintonización  y  
op4mización  integrada  que  puede  emplearse  en  modo  automá4co  y  
manual.  En  la  prác4ca  se  emplea  la  instrucción  PID_Compact  para  
diseñar  lazos  de  control  PID  en  sistemas  con  variables  con4nuas  de  
entrada  y  salida.    
•  2)  PID_3Step:  Con  la  instrucción  PID_3Step  se  puede  configurar  un  
regulador  PID  con  op4mización  para  válvulas  con  un  elemento  de  
control  final  con  realimentación.  En  la  prác4ca  se  reserva  su  usopara  
controlar  disposi4vos  accionados  por  motor  con  realimentación,  como  
válvulas  que  requieren  señales  discretas  para  las  acciones  de  apertura  y  

S7-­‐1200  
cierre.  Es  posible  encontrar  más  información  sobre  el  uso  de  PID_3Step  
en  la  web  de  soporte  de  Siemens.    
•  De  aquí  en  adelante  nos  centraremos  en  el  uso  del  bloque  de  
6  
función  PID_Compact,  por  ser  el  más  general  y  extendido  en  su  uso.    
6  
escritura y no accesible) donde se realizan las ope

TIA Portal crea automáticamente el objeto tecnoló

S7  1200  

01/12/14  
objeto tecnológico.
D5. Introducción al control PID.
mplementación del control PID en S7-1200.
•  La  instrucción  PID_Compact  lleva  asociada   Las instruccione
un  DdeB  PID_Compact.
Proceso de configuración especifico  de  parametrización  de  la   scan, por lo que
instrucción,  
lleva asociada unaDB sí  cespecífico
omo  uden  parametrización
FB  especifico   de   así como un FB específico de sistema (protegido contra

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


nstrucción PID_Compact de la instrucción,
sistema  
itura y no accesible) donde (protegido  
se realizan las operacionescmatemáticas ontra  escritura  
y que se almacena y  no  
bajo FB1131. Dado que la ins
accesible)  
Portal crea automáticamente el objeto d onde  sye  el rDB
tecnológico ealizan   las  
de instancia al insertar la instrucción. El DB de instancia contiene todos los parámetros del (Cyclic Interrup
to tecnológico. operaciones  matemá4cas  y  que  se  
almacena   bajo  FB1131.  
Las instrucciones PID pueden requerir un tiempo de cálculo y proceso que en ocasiones puede ser superior al ciclo de El proceso de c
•  TIA  Pscan, ortal  
por clorea  
que es automá4camente  
especialmente importante no el  ubicar
objeto  
las instrucciones PID en el ciclo de programa principal OB1.
PID conlleva va
tecnológico   y   el  D B   d e   i nstancia   a l   i nsertar  
Dado que la instrucción PID necesita ejecutarse a intervalos regulares, es aconsejable ubicarla en interrupciones cíclicas
la  instrucción.  
(Cyclic Interrupt E-l  aDpartir
B  ddee  OB30).
instancia  con4ene  
todos  los  parámetros  del  objeto   1 2
tecnológico.    
El proceso de creación y parametrización de un lazo de control
PID conlleva varios pasos:
Árbol de proyecto Task Cards

•   Las  instrucciones  PID  pueden  requerir  un  


4empo  de  cálculo  y  proceso  que  en  
2 3

ocasiones  puede  ser  superior  al  ciclo  de  


ol de proyecto Task Cards (Automático)

scan,  por  lo  que  es  especialmente   Añadir objeto

S7-­‐1200  
Añadir OB cíclico tecnológico
PID_Compact

adir OB cíclico
importante  no  ubicar  las  instrucciones  PID  
Añadir objeto
tecnológico
Crear DB asociado a la

en  el  ciclo  de  programa  principal  OB1.    


instrucción
PID_Compact

•  Dado  que  la  instrucción  PID  necesita  


4 ejecutarse  a  intervalos  regulares,  es  
5 6
7  
aconsejable  ubicarla  en  interrupciones  
Editor de variables Instrucción PID Instrucción PID 4
Editor de variables
5
Instrucción PID
cíclicas  (Cyclic  Interrupt  -­‐  a7    par4r  de  OB30).    
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID
Las instrucciones PID pueden requerir un tiempo de cálculo y proce
scan, por lo que es especialmente importante no ubicar las instrucci

Dado que la instrucción PID necesita ejecutarse a intervalos regulares

S7  1200  

01/12/14  
(Cyclic Interrupt - a partir de OB30).

•  El  proceso  de  creación  y  parametrización   de  un  lyazo  


El proceso de creación de  control  dePID  
parametrización un lazo de control
conlleva  varios  pasos:     PID conlleva varios pasos:

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


1 2 3
Árbol de proyecto Task Cards (Automático)

Añadir objeto Crear DB asociado a la


Añadir OB cíclico tecnológico instrucción
PID_Compact

4 5 6
Editor de variables Instrucción PID Instrucción PID

S7-­‐1200  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

8  

Curso Autómatas Programables


8  
IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos
(Cyclic Interrupt - a partir de OB30).

UD5. Introducción al control PID. El proceso de creación y parametrización de un lazo de control


1) Creació
PID conlleva varios pasos:
2. Implementación del control PID en S7-1200. bloque” u
1 2 3
Árbol de proyecto

Añadir OB cíclico
Añadir objeto
Task Cards
Crear DB asociado a la automática (Automático)

tecnológico

S7  1200  
instrucción
PID_Compact un tiempo

01/12/14  
2.2. Proceso de configuración de PID_Compact.
Añadir OB cíclico
Añadir objeto
tecnológico
PID_Compact
ciclo del O Crear DB asociado a la
instrucción

1 2 3 produce u
Árbol de proyecto Task Cards 1
1
(Automático) Los 3 primeros pasos de la creación de la instrucción PID consisten en:
4 5 6

•  Los  3  primeros  pasos  de  la  creación  de  la  


Editor de variables Instrucción PID Instrucción PID

2) Anadir
1) Creación del OB cíclico: para ello crearemos desde la opción “Agreg
Cards se
Introduccióninstrucción  
al controlPID  PID. consisten  en:   Añadir objeto
bloque” una interrupción cíclica. Podemos hacerlo con OB30 (d
Editar las variables de
la instrucción

automática) o proponer otra numeración de forma manual. Es necesario e


Ajuste de la

PID_Com
instrucción PID
Puesta en servicio de
la instrucción PID

•  1)  Creación   del  OB  cíclico:  para  ello  


Crear DB asociado a la
Añadir OB cíclico tecnológico necesario.

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


instrucción
lementación del control PID en S7-1200. PID_Compact Curso Autómatas
un tiempo de ciclo. Programables
IES Sáenz de Buruaga (MÉRIDA)
En el caso ideal, el tiempo de muestreo equivale al ti
crearemos  desde  la  opción  “Agregar  nuevo   ciclo del OB invocante. Si el tiempo de muestreo difiere mucho de este
José María Delgado Casado & David Pecellín Campos

3) Crear
produce un error (Error=0800 hex) y PID_Compact cambia al modo inactiv
ceso de configuración de bloque”  
PID_Compact. una  interrupción  cíclica.  Podemos  
1 instancia a
hacerlo  con  OB30  (de  forma  automá4ca)  o   2) Anadir objeto tecnológico: Desde las instrucciones tecnológicas de
DB sólo se

proyecto
2
proponer  otra  numeración  de  forma  manual.  
Task Cards
3
(Automático) Los 3 primeros pasos de la creación de la instrucción
Cards se PID añade consisten
sobreen:
el OB30 (u otra interrupción cíclica) la in
Es  necesario  establecer  un  4empo  de  ciclo.   1) Creación del OB cíclico: para ello crearemos
PID_Compact. En el momento de añadirla sobre el bloque de progra
desde la opción “Agregar nuevo
En  el  caso  ideal,  el  4empo  de  muestreo   necesario... 2

bloque” una interrupción cíclica. Podemos hacerlo con OB30 (de forma
B cíclico
equivale  al  4empo  de  ciclo  del  OB  invocante.  
Añadir objeto Crear DB asociado a la automática) o proponer otra numeración de3) forma
Crear manual.DB de Es necesario
instancia establecer
asociado: la instrucción PID necesita un
Si  el  4empo  de  muestreo  difiere  mucho  de  
tecnológico instrucción
PID_Compact un tiempo de ciclo. En el caso ideal, el tiempo de muestreo
instancia asociadoequivale para el al tiempo de
establecimiento de parámetros y cálculos int
este  valor,  se  produce  un  error  (Error=0800   ciclo del OB invocante. Si el tiempo de muestreo difiere mucho de este
DB sólo será accesible desde la instrucción PID.
produce un error (Error=0800 hex) y PID_Compact cambia al modo inactivo.
valor, se

hex)  y  PID_Compact  cambia  al  modo   3

inac4vo.    
2 (u otra interrupción cíclica) la instrucción
2) Anadir objeto tecnológico: Desde las instrucciones tecnológicas de las Task
2

•  2)  Anadir  objeto  tecnológico:   D esde   l as  


Cards se añade sobre el OB30
PID_Compact. En el momento de añadirla sobre el bloque de programa será
instrucciones  tecnológicas  necesario... de  las  Task  Cards  
se  añade  sobre  el  OB30  (u  otra  interrupción  
cíclica)  la  instrucción  PID_Compact.  
3) Crear DB de En  instancia
el   asociado: la instrucción PID necesita un DB de

S7-­‐1200  
momento  de  añadirla  sobre   el  bloque  de  
instancia asociado para el establecimiento de parámetros y cálculos internos. El
DB sólo será accesible desde la Curso Autómatas
instrucción PID. Programables
programa  será  necesario...     IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos
•  3)  Crear  DB  de  instancia  asociado:  la   3
3

instrucción  PID  necesita  un  DB  de  instancia  


2

asociado  para  el  establecimiento  de   9  


parámetros  y  cálculos  internos.  El  DB  sólo  
será  aCurso
ccesible   desde  lProgramables
Autómatas a  instrucción  PID.    
IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos 9  
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

oducción al control PID. 4


Editor de variables
5
Instrucción PID
6
Instrucción PID

ación del control PID en S7-1200.

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

configuración de PID_Compact. Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

5 •  4)  Editar  las  variables  de  la  instrucción:  De  cara  a  configurar  posterior  la  instrucción  PID  ajustando  sus  
4) Editar las variables de la instrucción: De cara a configurar posterior la instrucción PID ajustando sus
Instrucción PID
diferentes   parámetros  
diferentes parámetros de  deentrada  
entrada yy  ssalida,
alida,  será
seránecesario
 necesario  
en laen  
mayor la  mparte
ayor  departe  
los casos de  los  
definircasos  
en la definir  
tabla de en  la  tabla  
de  variables  
variables del  del
PLC  
PLC los  los
valores  
valorescon  
conlos  
losqque
ue  ttrabajar.
rabajar.  De
De  esta
esta   forma,  
forma, si  vaa  trabajarse
si va a  trabajarse  
con c on  sonda
una una  sonda  
de de  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


temperatura de entrada conectada a IW64 y una válvula proporcional conectada a QW80, podemos definir:
temperatura  de  entrada  conectada  a  IW64  y  una  válvula  proporcional  conectada  a  QW80,  podemos  definir:  
Ajuste de la
instrucción PID

•  5)  Ajuste  de  la  instrucción  PID:  Para  poder  realizar  el  ajuste  de  la  instrucción  PID  es  necesario  conocer,  por  un  lado,  los  
parámetros  
a instrucción PID: Para de  E/S  dele  ajuste
poder realizar la  instrucción   sobre  el  bPID
de la instrucción loque  
es dnecesario
e  programa   y  por  opor
conocer, tro  un
conocer  
lado, los la  cparámetros
onfiguración  de
de  E/S
la  mde
isma  
la desde  la  
bre el bloque de programa y por otro conocer la configuración
ventana  de  configuración  de  la  instrucción.   de la misma desde la ventana de configuración de la instrucción.

•  EN:  
EN: Entrada  
Entrada de  de
habilitación  
habilitación de  
dela  lainstrucción  
instrucciónPPID_Compact.
ID_Compact.  PPuede
uede  cconectarse
onectarse  ddirectamente
irectamente  aala
 la  barra
barra  
dede  
redred  
enen  
eñel  OB  cíclico  si  
no  OB
depende  
cíclico dsie  no
ninguna  
depende condición  
de ninguna para   su  ejecución.  
condición para su ejecución.
•  Setpoint:  Punto  de  consigna  del  lazo  de  control.  Puede  ir  en  unidades  reales  si  se  usa  entrada  Input_PER  de  acuerdo  al  4po  de  
Setpoint: Punto de consigna del lazo de control. Puede ir en unidades reales si se usa entrada Input_PER de
unidad  
acuerdo a  elegir  
al tipo posteriormente  
de unidad a elegir en  cposteriormente
onfiguración  o  en
en  configuración
unidades  enteras   de  los  diferentes  
o en unidades enteras de 4pos  
losddiferentes
e  datos  de   S7-­‐1200  
tipos de si  se  usa  
entrada  
datos d de esde  
S7-1200dato  dsie  se
programa.  
usa entrada desde dato de programa.
• 
UD5. Introducción al control PID.
Input:  Entrada  al  PID  u4lizando  una  variable  del  programa  de  usuario  como  valor  real.  
2. Implementación
Input: Entrada al PID utilizando una variable del programa de usuario como del
valorcontrol
real. PID en S7-1200.
Input_PER:  Entrada  al  PID  u4lizando  una  entrada  analógica  como  origen  del  valor  real  (p.e.  IW64).  ENO:  Salida  de  habilitación  
• 
de  Input_PER:
la  instrucción  PID_Compact.  
Entrada al PID utilizando una entrada analógica 2.2. Proceso
como de configuración
origen del valordereal PID_Compact.
(p.e. IW64).

S7-­‐1200  
•  Output:  Valor  de  salida  en  el  formato  REAL.   La instrucción PID_Compact lleva asociada un DB específico de parametrización de la instrucción, así como un FB específico de
ENO: Salida de habilitación de la instrucción PID_Compact. escritura y no accesible) donde se realizan las operaciones matemáticas y que se almacena bajo FB1131.
•  Output_PER:  Valor  de  salida  del  PID  para  sacarlo  directamente   a  salida  analógica  (p.e.  QW80).  
•  Output_PWM:  
de salida en el formato REAL. Valor  de  salida  modulado  por  ancho  de  impulso.  Ecrea
TIA Portal l  valor   de  salida  sele  objeto
automáticamente ob4ene   por  4empos  
tecnológico y el DB dede  instancia
conexión   y   la instrucción. El DB de instancia contiene
al insertar
objeto tecnológico.
desconexión  variables.  Suele  emplearse  con  salidas  digitales  cuya  conexión/desconexión  sea  variable  (p.e.  elementos  de  
calefacción).  
Valor de salida del PID para sacarlo directamente a salida analógica (p.e. QW80).
10  
Las instrucciones PID pueden requerir un tiempo de cálculo y proceso que en ocasiones pue
scan, por lo que es especialmente importante no ubicar las instrucciones PID en el ciclo de pro
Valor de salida modulado por ancho de impulso. El valor de salida se obtiene por tiempos de conexión y desconexión variables. Suele
Dado que la instrucción PID necesita ejecutarse a intervalos regulares, es aconsejable ubicarla
salidas digitales cuya conexión/desconexión sea variable (p.e. elementos de calefacción).
(Cyclic Interrupt - a partir de OB30).

State indica el modo de operación del regulador PID, mientras que error devuelve los posibles mensajes de error.
El proceso de creación y parametrización de un lazo de control
PID conlleva varios pasos:

1 2 3
Árbol de proyecto Task Cards (Automático)
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

D5. Introducción al control PID. 4


Editor de variables
5
Instrucción PID
6
Instrucción PID

mplementación del control PID en S7-1200.

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

Proceso de configuración de PID_Compact. Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

Editor de variables
•  Configurados  
5
Instrucción PID
los  Configurados
parámetros  los
de  parámetros
E/S,  deben   de E/S,especificarse   las  variables  
deben especificarse las variablesde  la  de
instrucción  
la instrucción(de  
(dem odo  opcional)
modo opcional)  
y y  
fundamentalmente   realizar  el  ajuste  
fundamentalmente realizar de  ella  instrucción  
ajuste PID  desde  
de la instrucción PID desdeel  icono  
el icono .
•  El  ajuste  de  la  instrucción  PID  implica  varios  pasos:    

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


Editar las variables de
•  1)  AAjuste
justes  
de la
básicos:   En  el  de
El ajuste “4po   de  regulación”  
la instrucción es  posible  
PID implica varioselegir  
pasos: la  magnitud  Ysica  de  la  variable  medida  (PV)  (temperatura,  
la instrucción
presión,  nivel,...)  así  como  sus  unidades.  Es  posible  también  seleccionar  si  se  desea  una  inversión  del  senDdo  de  
instrucción PID

regulación  (reducir   un  valor  


1) Ajustes real  con  
básicos: Enun  
elv“tipo
alor  de
de  regulación”
salida  más  es
elevado,  
posible pelegir
.e  aumentar  
la magnitud potencia  
físicadde
e  refrigeración  
la variable medidapara  r(PV)
educir  
Ta,  o  abrir  válvula  para  reducir  nivel).     (temperatura, presión, nivel,...) así como sus
unidades. Es posible también seleccionar si se
•  Se  puede  igualmente  seleccionar  si  se  desea  una  reacDvación  del  control  PID   tras  un  rearranque  de  CPU,  así  como  el  4po  
desea una inversión del sentido de
de  Input  y  Output  a  emplear.     regulación (reducir un valor real con un valor
•      de salida más elevado, p.e aumentar potencia
de refrigeración para reducir Tª, o abrir válvula
para reducir nivel).

Se puede igualmente seleccionar si se desea


una reactivación del control PID tras un
rearranque de CPU, así como el tipo de Input
y Output a emplear.

S7-­‐1200  
11  

rso Autómatas Programables


Sáenz de Buruaga (MÉRIDA)
María Delgado Casado & David Pecellín Campos
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

4 5 6
Editor de variables Instrucción PID Instrucción PID

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

•  2)  Ajustes  del  valor  real:  Es  posible  y  necesario  seleccionar  los  valores  límites  absolutos  del  valor  real  si  en  los  ajustes  
básicos  se  ha  seleccionado  entrada  Input_PER.  El  valor  de  la  entrada  analógica  debe  conver4rse  en  el  tamaño  psico  del  
valor  real.  Para  ello,  se  escala  el  valor  de  entrada  en  base  a  una  pareja  de  valores  inferiores  y  superiores:  valor  inferior  y  
superior  del  valor  real,  y  valor  inferior  y  superior  escalado.    

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


•  La  pareja  “valor  real  escalado”  hace  referencia  a  los  extremos  de  señal  enviados  por  el  sensor.  Es  posible  asignarles  
valores  inferiores  y  superiores  acordes  con  el  valor  límite  del  área  de  entradas  empleado  en  formato  palabra.  De  esta  
forma,  por  defecto  varía  entre  0  y  27648.    
•  La  pareja  “límite  del  valor  real”  hace  referencia  a  los  límites  entre  los  que  va  a  variar  nuestra  señal.  En  cuanto  dichos  
valores  se  rebasen  por  exceso  o  por  defecto,  la  regulación  se  desconectará  y  se  ajustará  el  valor  de  salida  al  0%.  Es  pues  
muy  importante  elegir  valores  superior  e  inferior  del  valor  real  acordes  con  el  proceso  a  controlar.    
•  Ejemplo:  sensor  ultrasónico  que  mide  entre  10mm  (4mA)  y  200mm  (20mA),  pero  en  el  proceso  se  moverá  entre  50mm  
(7.4mA)  y  100mm  (11.6mA).    
•     

S7-­‐1200  
12  
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

4 5 6
Editor de variables Instrucción PID Instrucción PID

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de

UD5. Introducción al control PID.


la instrucción instrucción PID la instrucción PID

Curso Autómatas Programables


2. Implementación del control PID en S7-1200. IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

•  3)  Ajustes  avanzados:  Pueden  


establecerse  límites  de  
advertencia  
2.2. Proceso inferior  yde
de configuración  superior  
PID_Compact.
de  monitorización  del  valor  real,  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


3) Ajustes avanzados: Pueden establecerse límites de
de  forma  que  si  durante  el   advertencia inferior y superior de monitorización del valor
funcionamiento  se  rebasan  los   real, de forma que si durante el funcionamiento se rebasan
límites  por  defecto  o  por  exceso,   los límites por defecto o por exceso, se muestra una
se  muestra  una  advertencia  en  la   advertencia en la instrucción PID_Compact.
instrucción  PID_Compact.    
•  Los  límites  configurados   Los límites configurados controlan los valores de salida del
controlan  los  valores  de  salida   DB asociado:
del  DB  asociado:    
InputWarning_H
•  InputWarning_H   InputWarning_L
InputWarning_L    
•  Si  se  rebasa  el  límite  superior  de   Si se rebasa el límite superior de advertencia,
advertencia,  InputWarning_H   InputWarning_H cambia de FALSE a TRUE. Si por contra
cambia  de  FALSE  a  TRUE.  Si  por   se rebasa por debajo el límite inferior de advertencia,
contra  se  rebasa  por  debajo  el   InputWarning_L es la que cambia de FALSE a TRUE.
límite  inferior  de  advertencia,  
InputWarning_L  es  la  que  
cambia  de  FALSE  a  TRUE.    
•     

S7-­‐1200  
Ejemplo:  Límite superior del valor real: 98ºC
Ejemplo:
Límite  superior  
Límite d el  valor  de
superior real:   98ºC    
advertencia: 90ºC
Límite  superior  de  advertencia:  90ºC  
Límite  superior  
Límite d el  valor  del
superior real:  
valor 10ºC  
real:   10ºC
Límite superior de advertencia:
Límite  superior  de  advertencia:  0ºC   0ºC

13  

Si se controla una salida digital mediante PWM, es posible definir periodos de conexión y desconexión mínimos para evitar excesivas conmutaciones en
la salida (en caso de no emplear elementos de estado sólido).

Curso Autómatas Programables


D5. Introducción al control PID. Añadir OB cíclico
Añadir objeto
tecnológico
PID_Compact
Crear DB asociado a la
instrucción

Implementación del control PID en S7-1200.


D5. Introducción al control PID. 4
Editor de variables
5
Instrucción PID
6
Instrucción PID

S7  1200  
2.Implementación del control PID en S7-1200.

01/12/14  
Proceso de configuración de PID_Compact. Editar las variables de
la instrucción
Ajuste de la
instrucción PID
Puesta en servicio de
la instrucción PID

Curso Autómatas Programables


2. Proceso de configuración de PID_Compact. En ajustes IESavanzados Sáenz de Buruaga (MÉRIDA) pueden definirse también
José María Delgado Casado & David Pecellín Campos

•  En  ajustes  avanzados  pueden  definirse  también  límites  superiores   e  inferiores  del  valor  de  salida  (%),  
límites superiores e inferiores del valor de salida
(%), de modo que estos no pueden se rebasarán ni por también
exceso
de  modo  que  estos  no  se  rebasarán  ni  por  exceso  ni  por  defecto  
En
ni por ndefecto
i  en  mniavanzados
ajustes odo  
en manual  
modo manualni  enin  enedefinirse
l  elautomá4co.  
automático.  
límites superiores e inferiores del valor de salida
•  Por  úl4mo,  es  posible  establecer  de  forma  manual  los  parámetros   que  rque
(%), de modo egulan  
estosla  no
actuación  
se rebasarándel  ni por exceso

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


regulador  PID     Por último, es posible establecer de forma
ni por defecto ni en modo manual ni en el automático.
manual los
parámetros que regulan la actuación del regulador PID
•     
Por último, es posible establecer de forma manual los
parámetros que regulan la actuación del regulador PID

S7-­‐1200  
s posible también modificar desde los parámetros PID el tiempo de muestreo y la estructura del regulador (PI ó PID).

s posible también modificar desde los parámetros PID el tiempo de muestreo y la estructura del regulador (PI ó PID). 14  
urso Autómatas Programables
Es  posible  también  modificar  desde  los  parámetros  PID  el  4empo  de  
Sáenz de Buruaga (MÉRIDA)
muestreo  y  la  estructura  del  regulador  (PI  ó  PID).  
é María Delgado Casado & David Pecellín Campos

urso Autómatas Programables


S Sáenz de Buruaga (MÉRIDA)
é María Delgado Casado & David Pecellín Campos
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

Con respecto al algoritmo de cálculo y los parámetros ajustados de forma


manual, además de las observaciones que se hicieron en un principio 4
Editor de variables
5
Instrucción PID
6
Instrucción PID

S7  1200  
respecto al proceso de cálculo, es necesario hacer alguna observación

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

adicional para este posible ajuste manual:


Curso Autómatas Programables
IES Sáenz de Buruaga (MÉRIDA)

troducción •  al
Con  control
respecto  
- Es aPID.
l  aposible
lgoritmo  ponderar
de  cálculo  y  los  
deparámetros   ajustados  dlas
forma individual e  forma   manual,  proporcional
acciones
José María Delgado Casado & David Pecellín Campos

además  de  las   y


entación del control PID en S7-1200.
observaciones   que  se  con
hicieron   en  un  principio  
derivativa un coeficiente (brespecto  
y a) cuya al  proceso  
recomendaciónde  cálculo,  es  es
necesario  
que esté hacer  
entre alguna  
observación   0.0aydicional  
1.0, de para  
forma este  pque
osible  
seajuste  
atenúe manual:  
la acción   proporcional o la derivativa.

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


de configuración de PID_Compact.
•  -­‐  Es  posible  ponderar  de  forma  individual  las  acciones  proporcional  y  deriva4va  con  un  coeficiente  (b  y  a)  
cuya  recomendación  es  que  esté  entre  0.0  y  1.0,  de  forma  
En q ue  se  aavanzados
ajustes tenúe  la  acción  
pueden proporcional   o  la  
- Se puede retrasar el efecto de la acción derivativa mediante eldefinirse también
coeficiente
deriva4va.     límites superiores e inferiores del valor de salida
a. Es posible establecerlo de la forma: (%), de modo que estos no se rebasarán ni por exceso
•  -­‐  Se  puede  retrasar  el  efecto  de  la  acción  deriva4va  mediante  
ni por defecto el  coeficiente  
ni en modo amanual
.  Es  posible  
ni en eleautomático.
stablecerlo  de  la  
forma:    
Por último, es posible establecer de forma manual los
parámetros que regulan la actuación del regulador PID
En ajustes avanzados pueden definirse también
límites superiores e inferiores del valor de salida
•  -­‐  El  Dempo  
(%), dedmodoe  muestreo  
que estos del  
noase lgoritmo  
rebasarán PID  
ni pores  eexceso
l  4empo  entre  dos  cálculos  del  valor  de  salida.  Este  4empo  se  
redondea   - aEl
ni por  un  tiempo
defecto múl4plo  
ni en modo
de del  manual
4muestreo
empo  
ni d e  elmautomático.
en uestreo  
del algoritmo PID_Compact  
PID es (establecido  
el tiempo en  entre
el  4empo  
dosde  cálculos
ciclo  del  OB  
cíclico  Por
desde  
del
último,evalor
l  qesue   sde
posiblee  ejecuta  
salida.
establecerla  oEste
peración).  
de tiempo
forma Todas  
manual loslas  
se demás  funciones  
redondea a un dmúltiplo
e  PID_Compact  
del tiempose  ejecutan  
de con  
cada  llamada.  
parámetros   que regulan la actuación del regulador PID
muestreo PID_Compact (establecido en el tiempo de ciclo del OB cíclico
desde el que se ejecuta la operación). Todas las demás funciones de
PID_Compact se ejecutan con cada llamada.

S7-­‐1200  
15  

ambién modificar desde los parámetros PID el tiempo de muestreo y la estructura del regulador (PI ó PID).
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

4 5 6
Editor de variables Instrucción PID Instrucción PID

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

•  Proceso  de  puesta  en  servicio  y  opDmización  de  PID_Compact.    


•     

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


La  ventana  de  puesta  en  servicio  ayuda  
1 2 durante  la  puesta  en  servicio  del  regulador  
PID.  En  el  visor  de  curvas  se  puede  observar  
los  valores  de  la  consigna,  valor  de  variable  
de  proceso  (PV)  y  valor  de  variable  de  
control  de  salida  (CV)  a  lo  largo  del  eje  de  
4empo.  En  la  ventana  de  puesta  en  servicio  
se  soportan  las  siguientes  funciones:    
i.  Op4mización  inicial  del  regulador.  
ii.  Op4mización  fina  del  regulador.  
iii.  Observación  de  la  regulación  en  curso.    
iv.  Probar  el  sistema  regulado  especificando  
un  valor  de  salida  manual.  
   
(1)  Es  necesario  especificar  un  Dempo  de  
muestro  de  medición.  Este  4empo  será  
el  que  se  emplee  para  la  actualización  de  
los  valores  mostrados  en  la  ventana.  

S7-­‐1200  
 
(2)  Puede  elegirse  el  modo  de  op4mización  
entre  opDmización  inicial  y  opDmización  
fina.  La  op4mización  inicial  determina  la  
respuesta  del  sistema  a  una  entrada  escalón  
(cambio  súbito  de  SP)  y  autosintoniza  los  
parámetros  del  controlador  PID.  Cuando  la  
16  
barra  de  estado  llegue  al  100%  se  ha  
realizado  la  op4mización  y  es  posible  parar  
el  sistema  y  si  se  es4ma  conveniente,  cargar  
los  parámetros  en  el  controlador.  
Añadir objeto Crear DB asociado a la
Añadir OB cíclico tecnológico instrucción
PID_Compact

4 5 6
Editor de variables Instrucción PID Instrucción PID

S7  1200  

01/12/14  
Editar las variables de Ajuste de la Puesta en servicio de
la instrucción instrucción PID la instrucción PID

Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos

•  Proceso  de  puesta  en  servicio  y  opDmización  de  PID_Compact.    


•      El  visor  de  curvas  permite  representar  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


gráficamente  los  valores  de  la  variable  de  proceso  
(PV),  variable  de  control  (CV)  y  setpoint  (SP).    
 
3 (3)  Modo  de  visualización:  Es  posible  emplear  los  
modos  sta8c,  strip,  scode  y  swip.  Cada  uno  de  ellos  
permite  la  visualización  de  valores  de  la  puesta  en  
servicio  de  un  modo  diferente.    
4
5 (4)  Regla  de  variable  de  proceso.  Permite  definir  
un  mínimo  y  máximo  (y  bloquearlos)  para  la  
visualización  del  progreso  de  la  variable  de  
entrada.    
(5)  Regla  de  variable  de  control.  Permite  definir  
un  mínimo  y  máximo  (y  bloquearlos)  para  la  
visualización  del  progreso  de  la  variable  de  salida.    
(6)  Regla  de  Dempos.  Permite  definir  un  mínimo  y  
máximo  de  4empos  (y  bloquearlos)  para  la  
6 visualización  del  progreso  de  la  variable  de  
entrada.  En  función  del  modo  de  visualización,  
7

S7-­‐1200  
podrá  o  no  realizarse.    
7)  Estado  on-­‐line  del  regulador.  El  estado  on-­‐line  
del  regulador  permite  seleccionar  un  modo  
manual  para  escribir  de  forma  directa  un  Output  
en  el  sistema.  Al  desac4var  el  modo  manual,  el  
valor  de  output  volverá  al  calculado  por  SP  y  PV   17  
UD5. Introducción al control PID.
3. Ejemplo de control PID con S7-1200.

S7  1200  

01/12/14  
3.1. Planteamiento del supuesto práctico.
Se desea mantener el nivel de un depósito de agua constante en un punto de consigna que es posible cambiar desde el sistema automatizado mediante un
•  Ejemplo  
PLC S7-1200 prácDco  
CPU 1214 DC/DC/DC con Signal Board SB1232 AQ 1x12 bits.
•  Se  desea  mantener  el  nivel  de  un  depósito  de  agua  constante  en  un  punto  de  consigna  que  es  posible  cambiar  desde  
Se emplearán el  
para sistema  
ello, comoautoma4zado  
puede versem ediante  
en la figura, un  
unPLC  
sensor S7-­‐1200   CPU  1214  
ultrasónico FESTO DC/DC/DC  
a 24DC con con  salida
Signal  
deBcorriente
oard  SB1232  
4-20mA AQ  
y1 x12  bits.  
margen  
de medición de 150
a 500mm, • conSe  
la ecurva
mplearán   para  ello,   como  depuede   verse   en  la   figura,   un  sensor  ultrasónico   FESTO   a  24DC  
uncregulador
on  salida  d0-10VDC
e  corriente  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


característica y datos la gráfica y una bomba FESTO de 24VDC accionada mediante a 0-24VDC, que
4-­‐20mA  
modificará el caudal y  m
de la argen  
misma endfunción
e  medición   de  150  
de la señal deacontrol.
 500mm,  con  la  curva  caracterís4ca  y  datos  de  la  gráfica  y  una  bomba  FESTO  
de  24VDC  accionada  mediante  un  regulador  0-­‐10VDC  a  0-­‐24VDC,  que  modificará  el  caudal  de  la  misma  en  función  de  
la  señal  de  control.    

S7-­‐1200  
18  
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
UD5. Introducción al control PID.
UD5. Introducción
3. Ejemplo de control PID al control PID.
con S7-1200.
•  El  fde
abricante   del  con
sensor   nos  proporciona  una  curva  caracterísDca  de  detección  (señal-­‐

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


3. Ejemplo control PID S7-1200.
nivel)  y  udel
3.1. Planteamiento na   tabla  dpráctico.
supuesto e  caracterís4cas  tal  y  como  la  que  se  adjunta  en  la  figura    
3.1. Planteamiento del supuesto práctico.
El fabricante del sensor nos proporciona una curva característica de detección (señal-nivel) y una tabla de características tal y como la que se adjunta en la
Elfigura
fabricante del sensor nos proporciona una curva característica de detección (señal-nivel) y una tabla de características tal y como la que se adjunta en la
figura

S7-­‐1200  
19  
S7  1200  

01/12/14  
UD5. Introducción al control PID.
3. Ejemplo Ejemplo  
•  de prácDco  
control PID con S7-1200.
•  Nos  interesa  que  el  depósito  2  (depósito  de  nivel)  mantenga  un  nivel  lo  más  estable  
posible   bajo  dpráctico.
iferentes  consignas  (100mm  y  140  mm,  p.e.),  teniendo  en  cuenta  que  el  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


3.1. Planteamiento del supuesto
depósito  tendrá  escapes  de  agua  variables  (a  través  de  la  válvula  manual  de  salida)  y  
Nos interesa que el depósito 2 (depósito de nivel) mantenga un nivel lo más estable posible bajo diferentes consignas (100mm y 140 mm, p.e.), teniendo en
aportes  
cuenta que el depósito ocasionales  
tendrá escapes de agua (puede  
variablesllenarse  
(a través p deor  
la aválvula
rriba  manual
con  vde ariaciones   lentas  
salida) y aportes de  nivel).  
ocasionales (puede   llenarse por arriba con
•  Implementaremos  para  ello  un  control  PID  de  nivel,  obteniendo  la  señal  de  nivel  de  
variaciones lentas de nivel).

Implementaremos depósito  
para ello un desde   el  ddeetector  
control PID ultrasónico  
nivel, obteniendo la señal de conectado  
nivel de depósitoa  la  desde
entrada   IW64  
el detector del  Pconectado
ultrasónico LC  (variable   de   IW64 del
a la entrada
PLC (variable deproceso   PV).  
proceso PV). LaLa   salida  
salida se  obtendrá
se obtendrá desde la  salida
desde   la  salida  
analógica analógica  
en tensión 0-10VcceQW80
n  tensión   0-­‐10Vcc  
de la SB1232 hastaQelW80   de   que nos
regulador,
transformará esela  SB1232  hasta  el  regulador,  que  nos  transformará  ese  nivel  de  tensión  en  un  nivel  
nivel de tensión en un nivel 0-24Vcc para alimentar la bomba y de esta forma variar su velocidad y caudal suministrado.
0-­‐24Vcc  para  alimentar  la  bomba  y  de  esta  forma  variar  su  velocidad  y  caudal  
Nuestras variables serán por tanto:
suministrado.    
•  Nuestras  variables  serán  por  tanto:    

Dirección Símbolo Tipo de dato Comentario


%IW64 NIVEL_SENSOR Int Entrada analógica del valor real de llenado.

%QW80 SALIDA_REG Int Salida analógica de magnitud manipulada a bomba

S7-­‐1200  
%I0.0 S1_100 Bool Entrada de consigna a 100mm

%I0.1 S2_140 Bool Entrada de consigna a 140mm

20  
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
•  Necesitaremos  seguir  los  siguientes  pasos  para  configurar  y  poner  en  servicio  nuestro  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


UD5.regulador  
IntroducciónPID:     al control PID.
•  1)  C
3. Ejemplo dereación  
controldel  
PID proyecto   y  configuración  HW  de  disposiDvos    
con S7-1200.
•  Por  mayor  simplicidad  del  ejemplo,  vamos  a  suponer  que  las  entradas  analógicas  integradas  de  la  CPU  admiten  
rango  
3.1. Planteamiento de  entrada  
del supuesto 0-­‐20  mA.  
práctico.

•  2)  Definición  de  variables  en  tabla  de  variables  PLC.    


Necesitaremos seguir los siguientes pasos para configurar y poner en servicio nuestro regulador PID:

2) Definición •  De  cara  aen  la  


de variables tabladefinición   de  variables  
de variables PLC. de  proceso,  es  necesario  saber  en  qué  área  de  memoria  y  en  qué  dirección  se  
alojan,  para  cada  canal,  las  entradas  /  salidas  analógicas  a  emplear,  lo  que  podremos  hacer  en  propiedades  de  
De cara a la definición de variables de proceso, es necesario saber en qué área de memoria y en qué dirección se alojan, para cada canal, las entradas /
salidas analógicasdisposi4vos.     podremos hacer en propiedades de dispositivos.
a emplear, lo que
•  En  este  caso,  la  primera  entrada  analógica  será  %IW64,  mientras  que  la  salida  analógica  se  ubicará  en  %QW80.    
En este caso, la primera entrada analógica será %IW64, mientras que la salida analógica se ubicará en %QW80.

S7-­‐1200  
21  
3) Agregar bloque de programa.

Dado que la instrucción PID no debe ir alojada en el programa principal cíclico OB1, es necesario agregar una interrupción cíclica (p.e. OB30), en la que
estableceremos un tiempo de por ejemplo 100ms. Deberemos observar posteriormente, en online y diagnóstico, que la instrucción PID no pase a inactiva
por excesivo tiempo de procesamiento.

En este bloque crearemos una variable temporal para almacenar el valor de consigna en el formato REAL:
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
•  Necesitaremos  seguir  los  siguientes  pasos  para  configurar  y  poner  en  servicio  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


nuestro  regulador  PID:    
•  3)  Agregar  bloque  de  programa.    
•  Dado  que  la  instrucción  PID  no  debe  ir  alojada  en  el  programa  principal  cíclico  OB1,  es  
necesario  agregar  una  interrupción  cíclica  (p.e.  OB30),  en  la  que  estableceremos  un  4empo  
de  por  ejemplo  100ms.  Deberemos  observar  posteriormente,  en  online  y  diagnósDco,  que  la  
instrucción  PID  no  pase  a  inac4va  por  excesivo  4empo  de  procesamiento.    
UD5. Introducción
•  En   este   b
al control
loque   c
PID.una  variable  temporal  para  almacenar  el  valor  de  consigna  en  el  
rearemos  
3. Ejemplo de control PID con S7-1200.
formato  REAL:    
3.1. Planteamiento del supuesto práctico.

S7-­‐1200  
4) Elaboración del programa de usuario.

Elaboramos el programa de usuario, primero con los movimientos de 100.0 y 140.0 al área LEVEL_TANK, que emplearemos como dato de consigna para la 22  
instrucción PID_Compact, y posteriormente con la instrucción PID_Compact, de la siguiente forma:
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
•  Necesitaremos  seguir  los  siguientes  pasos  para  configurar  y  poner  en  servicio  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


nuestro  regulador  PID:    
•  4)  Elaboración  del  programa  de  usuario.  
•  Elaboramos  
4) Elaboración el  programa  
del programa de  usuario,  primero  con  los  movimientos  de  100.0  y  140.0  al  área  
de usuario.
LEVEL_TANK,  que  emplearemos  como  dato  de  consigna  para  la  instrucción  PID_Compact,  y  
posteriormente  
Elaboramos el programa decon   la  instrucción  
usuario, primero P ID_Compact,  
con de  la  de
los movimientos siguiente   forma:  
100.0 y 140.0 al  área LEVEL_TANK, que emplearemos como d
instrucción PID_Compact, y posteriormente con la instrucción PID_Compact, de la siguiente forma:

S7-­‐1200  
23  

Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
José María Delgado Casado & David Pecellín Campos
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
UD5. Introducción al control PID.
3. Ejemplo de control PID con S7-1200.
•  Necesitaremos  seguir   los  siguientes  pasos  para  configurar  y  poner  en  servicio  nuestro  regulador  PID:    
•  4)  Elaboración  del  programa  de  usuario.  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


3.1. Planteamiento del supuesto práctico.

S7-­‐1200  
24  

Curso Autómatas Programables


S7  1200  
UD5. Introducción al control PID.

01/12/14  
3. Ejemplo de control PID con S7-1200.

•  Ejemplo  prácDco  
3.1. Planteamiento del supuesto práctico.

•  De  
De cara al empleo cara  al  eampleo  
de entradas de  entradas  
la instrucción PID_Compact a  la  icaben
nstrucción   PID_Compact  caben  2  posibilidades:    
2 posibilidades:

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


•  a)  INPUT:
a) Emplear una entrada Emplear   una  que
Dado entrada  
en esteINPUT:  
casoDestaremos
ado  que  eempleando
n  este  caso  una
estaremos  
señal deempleando  
entrada 4-20mA una  señal  
sobre de  una
entrada  
entrada 4-­‐20mA  
0-20mA sobre  
del PLC,una   podemos
entrada  
escalar dicha entrada para que el 0-­‐20mA   del  PLC,  pelodemos  
PLC identifique escalar  dicha  
4mA procedente entrada  
del sensor como para  
unque  
0 deel  rango.
PLC  iden4fique  
Para ello, ecomo
l  4mA  
vimos procedente  
en la unidaddel  sensor  
anterior, como  
empleamos
un  0  de  rango.  Para  ello,  como  vimos  en  la  unidad  anterior,  empleamos  el  FC  de  librería  global  SCALE_CURRENT_INPUT.    
el FC de librería global SCALE_CURRENT_INPUT.
•  En  este  caso  podemos  emplear  una  detección  de  nivel  de  rotura  de  hilo  a  2mA  (2764.8)  y  ac4vando  un  bit  M200.0.  Dado  
En este caso podemos emplear una detección de nivel de rotura de hilo a 2mA (2764.8) y activando un bit M200.0. Dado que la entrada analógica se está
que  la  entrada  analógica  se  está  procesando  por  programa,  ya  no  tendremos  posteriormente  en  la  instrucción  
procesando por programa, ya no tendremos posteriormente en la instrucción PID_Compact una Input_PER con %IW64, sino que emplearemos el REAL
PID_Compact  
%MD1000 sobre la entrada INPUT. una  Input_PER  con  %IW64,  sino  que  emplearemos  el  REAL  %MD1000  sobre  la  entrada  INPUT.    
•  Este  MD1000  tomará  el  valor  0.0  cuando  el  sensor  envíe  4mA,  y  enviará  27648.0  cuando  el  sensor  mande  la  señal  de  
Este MD1000 tomará el20mA.  
valor 0.0   cuando el sensor envíe 4mA, y enviará 27648.0 cuando el sensor mande la señal de 20mA.

S7-­‐1200  
25  
 
Nuestra  pserá
Nuestra principal limitación rincipal  
ahora limitación   será  ahora  
que al emplear unaque   al  emplear  
entrada INPUT, una   entrada  
nuestro INPUT,  ndeberá
SETPOINT uestro  Sllevar,
ETPOINT  deberá   reales de magnitud (mm), sino
no unidades
llevar,  
unidades de valor entre unidades  reales  de  magnitud  (mm),  sino  unidades  de  valor  entre  0  y  27648.  
0 nyo  27648.

Curso Autómatas Programables


IES Sáenz de Buruaga (MÉRIDA)
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
•  De  cara  al  empleo  de  entradas  a  la  instrucción  PID_Compact  caben  2  posibilidades:    
•  b)  Emplear  una  entrada  INPUT_PER:  Si  empleamos  una  entrada  INPUT_PER  deberemos  posteriormente  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


escalar  el  valor  real,  indicando  los  rangos  de  medición.  
UD5. Introducción •  Siguiendo   al lcontrol
os  datos  de  PID.
curva  caracterís4ca,  hemos  iden4ficado  el  valor  330mm  como  aquel  con  el  
3. Ejemplo de control PID con S7-1200.
que  el  sensor  manda  20mA,  la  cues4ón  es  :¿qué  manda  cuando  el  sensor  mide  0mm?.  Según  la  
curva,  podemos  ver  que  corresponde  aproximadamente  a  9mA.    
3.1. Planteamiento del Si  20mA  práctico.
•  supuesto corresponde  a  un  dato  de  27648,  9mA  (teniendo  en  cuanta  que  el  0  de  dato  corresponde  a  
4mA),  corresponde  a  un  dato  de  8640.    
b) Emplear una entrada•  Dado   que  nuestro  
INPUT_PER: rango  real  
Si empleamos una dentrada
e  medición  
INPUT_PER es  de  deberemos
un  máximo   de  200mm  escalar
posteriormente y  mínimo   de  4real,
el valor 0mm,   los   los rangos
indicando de
colocamos  en  la  curva.    
medición de la siguiente forma:

S7-­‐1200  
26  
S7  1200  

01/12/14  
•  Ejemplo  prácDco  
•  Por  úl4mo  será  necesario  realizar  una  op4mización  inicial  de  los  parámetros  

TEMA  6  PROGRAMACIÓN  AVANZADA.  VISIÓN  PRÁCTICA  CON  


PID.  Para  ello  marcamos  un  4empo  de  muestro  superior  al  valor  de  
interrupción  cíclica  marcado,  y  pinchamos  en  opDmización  inicial.    
•  Los  parámetros  PID  generados  podemos  cargarlos  posteriormente  en  el  
controlador.    

S7-­‐1200  
!

27  

También podría gustarte