You are on page 1of 14

I.E.S.

Virgen de los Reyes


Pgina 1 de 5
CICLO: Automatizacin y Robtica Industrial
__________________________________________________________________________________
SPA_UD2_PR4. Regulacion de temperatura con PWM.
Autor: Ridouan Aoulad-Haddou
Fecha de entrega: 18/11/2015

Introduccin:
La modulacin por ancho de pulsos (o PWM) de una seal o fuente de energa es una tcnica en la
que se modifica el ciclo de trabajo de una seal peridica, ya sea para transmitir informacin a travs
de un canal de comunicaciones o para controlar la cantidad de energa que se enva a una carga.
Materiales:
Los materiales utilizados para realizar esta prctica son los siguientes:
Un autmata programable S300
LM35
RESISTENCIA CALEFACTORA
Fundamento terico:

Control PID: Un controlador PID (Proporcional Integral Derivativo) es un mecanismo de control


por realimentacin ampliamente usado en sistemas de control industrial. Este calcula la desviacin o
error entre un valor medido y un valor deseado.
El algoritmo del control PID consiste de tres parmetros distintos: el proporcional, el integral, y el
derivativo. El valor Proporcional depende del error actual. El Integral depende de los errores pasados
y el Derivativo es una prediccin de los errores futuros. La suma de estas tres acciones es usada para
ajustar al proceso por medio de un elemento de control como la posicin de una vlvula de control o
la potencia suministrada a un calentador.

I.E.S. Virgen de los Reyes


Pgina 2 de 5
CICLO: Automatizacin y Robtica Industrial
__________________________________________________________________________________

Descripcin de la prctica:
El objetivo es realizar las modificaciones en DB10 (PID) para controlar la temperatura de una
resistencia calefactora, para ello tenemos un sensor LM35 que mide la temperatura, y una
resistencia conectada a la salida A125.0 que se caliente o se enfra dependiendo de que est por
debajo o por encima 30C (punto de consigna), esta resistencia se coloca encima de la LM35 para
que esta mide su temperatura.

Despus de configurar el HW, creamos Un bloque de organizacin OB35 donde ira insertado
nuestro programa, este bloque dispone de:

El move lo utilizaremos para transferir el valor del set point a la instruccin PID.
La funcin SCALE (FC105) nos servir para poder convertir el valor de la LM35 a C.

La funcin TCONT_CP: esta funcin sirve para regular procesos


de temperatura con control continuo o en forma de impulso. En
el PV_IN metemos MD10 que da el valor medido por LM35.
El punto de consigna (en nuestro caso 30C) lo metemos en la
entrada SP_INT. En QPULSE metemos la salida A125.0 (resistencia
calefactora).

I.E.S. Virgen de los Reyes


Pgina 3 de 5
CICLO: Automatizacin y Robtica Industrial
__________________________________________________________________________________

Una vez hecho todo esto y despus de cargar el programa deberemos entrar en el bloque
DB10 para configurar el PID, en el mismo tiempo entramos al OB35 para observar los
cambios.
Los valores de temperatura mximo y mnimo dados por la LM35:

25,48C con la resistencia apagada (A125.0 est puesta a 0).

34,5C con la resistencia encendida (A125.0 est puesta a 1).


El punto de consigna es de 30C aproximadamente.
Antes de empezar a regular el PID debemos saber que en un control Proporcional con
accin Integral y derivativa:

La Parte proporcional disminuye la oscilacin.

La parte integral corrige el error estacionario.

La parte derivativa incrementa la respuesta del sistema ante perturbaciones.

Ahora vamos a regular el PID siguiendo el mtodo siguiente:


Nota: Una opcin importante es la de activar el generador de pulsos, esto nos har que nos
module la salida del PID.
a. Cambiamos el tiempo de accin derivativa y el tiempo de integracin a 0s.
b. Aumentamos la Ganancia Proporcional poco a poco hasta que consigamos aproximarnos
al punto de consigna, la temperatura medida en este caso es de 27,117C casi 3C
debajo del punto de consigna. Esperando entre cambio y cambio de 3 a 4 minutos.
c. como vemos la respuesta del sistema est por debajo del punto de consigna deseado.
Ahora hay que aumentar el tiempo de Integracin para intentar corregir el error y
acercar de 30C. el resultado de esta regulacin es alcanzar el 30,09C, este 0,09 de
diferencia se puede deber a la resolucin del CAD del PLC.
c. Cuando conseguimos esto, aumentamos la accin derivativa hasta antes de que esta
desestabilice la seal.
Las imgenes siguientes muestran los valores de PID y la temperatura medida despus de la
regulacin:

I.E.S. Virgen de los Reyes


Pgina 4 de 5
CICLO: Automatizacin y Robtica Industrial
__________________________________________________________________________________

Preguntas:
1. Qu pasar si se escoge un tiempo de ciclo excesivamente largo?
En nuestro caso, al aumentar el tiempo de ciclo, la temperatura medida por LM35 baja hasta
28,98C, casi un grado menos del punto de consigna. Esto pasa porque el tiempo de ciclo -o el
periodo- , la dinmica del proceso y la amplitud de las oscilaciones estn ampliamente
relacionados, as que al aumentar el tiempo de ciclo, se aumentar el tiempo de respuesta del
regulador lo que hace que disminuya la frecuencia y causar una oscilacin de la seal mayor
alrededor del punto de consigna. El resultado es: la seal la seal de salida se alejase del punto
de consigna y oscilase alrededor de l hasta conseguir estabilizarse otra vez.
2.

Qu ventajas tiene el sistema de regulacin PWM con respecto al sistema con salida
continua?
La modulacin por ancho de pulsos (o PWM) de una seal o fuente de energa modifica el
ciclo de trabajo de una seal peridica para controlar la cantidad de energa que se enva a
una carga. Dependiendo de la anchura del pulso el valor final de aproximar ms o menos a

I.E.S. Virgen de los Reyes


Pgina 5 de 5
CICLO: Automatizacin y Robtica Industrial
__________________________________________________________________________________
la tensin total aplicada, mientras que en la regulacin con salida continua, donde la tensin
de salida es mxima en la carga constantemente, no podemos controlar la energa que se
enva a una carga.
3. Crees que es adecuado para todo tipo de proceso? Razona tu respuesta.
Este control no es lo ms adecuado para todo tipo de proceso, por ejemplo para el control de
nivel el regulador PID es inadecuado y es poco adecuado para el control del caudal.
El sistema de control tipo/todo o nada es adecuado en procesos donde el sistema tiene un
tiempo de respuesta relativamente largo.
El control proporcional es el tipo de control que utilizan la mayora de los controladores que
regulan la velocidad de un automvil.
Los controladores PID son muy comunes en la industria.
El control derivativo es el menos utilizado por su sensibilidad al ruido.
Conclusin:
Un controlador PID es un mecanismo de control por realimentacin ampliamente usado en sistemas
de control industrial. Este calcula la desviacin o error entre un valor medido y un valor deseado.

Anexos:
El cdigo.

SIMATIC

practica4/Equipo SIMATIC 300

18/11/2015 16:54:40

Equipo SIMATIC 300


UR - Bastidor (0)
Nombre abreviado:
Referencia:
Denominacin:

UR
6ES7 390-1???0-0AA0
UR

Bastidor (0), Slot 1


Nombre abreviado:
Referencia:
Denominacin:
Ancho:
Comentario:

PS 307 2A
6ES7 307-1BA00-0AA0
PS 307 2A
1
---

Bastidor (0), Slot 2


Nombre abreviado:
Versin de firmware:
Referencia:
Denominacin:
Ancho:
Direccin MPI:
Direccin MPI ms alta:
Velocidad de transferencia:
Comentario:

CPU 313C
V1.0
6ES7 313-5BE00-0AB0
CPU313C(1)
1
2
31
187.5 kbit/s
---

Bastidor (0), Slot 2, Interface 2


Nombre abreviado:
Referencia:
Denominacin:
Canales digitales:
Ancho:
Comentario:
Direcciones
Entradas
Inicio:
Fin:
Salidas
Inicio:
Fin:

DI24/DO16
--DI24/DO16
24 Entradas
16 Salidas
1
---

124
126
124
125

Bastidor (0), Slot 2, Interface 3


Nombre abreviado:
Referencia:
Denominacin:
Canales analgicos:
Ancho:
Comentario:
Direcciones
Entradas
Inicio:
Fin:
Salidas
Inicio:
Fin:

AI5/AO2
--AI5/AO2
5 Entradas
2 Salidas
1
---

752
761
752
755

Bastidor (0), Slot 2, Interface 4


Nombre abreviado:
Referencia:
Denominacin:
Ancho:
Comentario:

Contaje
--Contaje
1
---

Direcciones
Entradas
Inicio:
Fin:

768
783

Pgina 1 de 2

SIMATIC
Salidas
Inicio:
Fin:

practica4/Equipo SIMATIC 300

18/11/2015 16:54:40

768
783

Bastidor (0), Slot 4


Nombre abreviado:
Referencia:
Denominacin:

CP 342-5
6GK7 342-5DA02-0XE0
CP 342-5

Ubicacin
Equipo:
Ancho:

Equipo SIMATIC 300


1

Direccin MPI:
Nombre de red MPI:

3
---

Red
Tipo de red:
Nombre de red:

PROFIBUS
---

Direcciones
Entradas
Inicio:
Fin:
Estndar:
Salidas
Inicio:
Fin:
Estndar:

256
16
--256
16
---

Comentario:
---

Pgina 2 de 2

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\OB1 - <offline>

18/11/2015 16:56:58

OB1 - <offline>
""
Nombre:
Autor:

Familia:
Versin: 0.1
Versin del bloque: 2
09/11/2015 10:53:50
Hora y fecha Cdigo:
15/02/1996 16:51:12
Interface:
Longitud (bloque / cdigo / datos): 00120 00002

Nombre

Tipo de datos

TEMP

Direccin

00020

Comentario

0.0

TEMP0

Byte

0.0

TEMP1

Byte

1.0

TEMP2

Byte

2.0

TEMP3

Byte

3.0

TEMP4

Byte

4.0

TEMP5

Byte

5.0

TEMP6

Int

6.0

TEMP7

Int

8.0

TEMP8

Int

10.0

TEMP9

Date_And_Time

12.0

Bloque: OB1

Segm.: 1

Pgina 1 de 1

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\OB35 - <offline>

18/11/2015 16:57:17

OB35 - <offline>
"CYC_INT5"
Nombre:
Autor:

Cyclic Interrupt 5
Familia:
Versin: 0.1
Versin del bloque: 2
16/11/2015 12:46:10
Hora y fecha Cdigo:
15/02/1996 16:51:11
Interface:
Longitud (bloque / cdigo / datos): 00310 00194

Nombre

Tipo de datos

TEMP

Direccin

00030

Comentario

0.0

OB35_EV_CLASS

Byte

0.0

Bits 0-3 = 1 (Coming event), Bits 4-7 = 1 (Event class 1)

OB35_STRT_INF

Byte

1.0

16#36 (OB 35 has started)

OB35_PRIORITY

Byte

2.0

Priority of OB Execution

OB35_OB_NUMBR

Byte

3.0

35 (Organization block 35, OB35)

OB35_RESERVED_1

Byte

4.0

Reserved for system

OB35_RESERVED_2

Byte

5.0

Reserved for system

OB35_PHASE_OFFSET

Word

6.0

Phase offset (msec)

OB35_RESERVED_3

Int

8.0

Reserved for system

OB35_EXC_FREQ

Int

10.0

Frequency of execution (msec)

OB35_DATE_TIME

Date_And_Time

12.0

Date and time OB35 started

Bloque: OB35

"Cyclic Interrupt"

Segm.: 1

FC105
Read Analog Value
464-2
"Read
Analog
Value 4642"
EN
ENO
PEW754 IN

RET_VAL MW210
OUT MD10

1.000000e+
003 HI_LIM
0.000000e+
000 LO_LIM
M100.0 BIPOLAR

Informacin del smbolo


FC105
Read Analog Value 464-2 Read Analog Value 464-2
Segm.: 2

EN
3.000000e+
001 IN

MOVE
ENO
OUT MD20

Pgina 1 de 2

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\OB35 - <offline>

18/11/2015 16:57:18

Segm.: 3

EN

DB10
FB58
temperature PID
controller with
pulse generator
and self-tuning
"TCONT_CP"
ENO

MD10 PV_IN
PV_PER
DISV
E124.0 INT_HPOS
E124.1 INT_HNEG
SELECT
CYCLE

PV
LMN
LMN_PER
QPULSE A125.0
QLMN_HLM
QLMN_LLM
QC_ACT

CYCLE_P
MD20 SP_INT
MAN
E124.2 COM_RST
E124.3 MAN_ON

Informacin del smbolo


FB58
TCONT_CP

temperature PID controller with pulse generator and self-tuning

Pgina 2 de 2

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\OB100 - <offline>

18/11/2015 16:57:23

OB100 - <offline>
""
Nombre:
Autor:

Familia:
Versin: 0.1
Versin del bloque: 2
09/11/2015 10:54:23
Hora y fecha Cdigo:
15/02/1996 16:51:10
Interface:
Longitud (bloque / cdigo / datos): 00116 00002

Nombre

Tipo de datos

TEMP

Direccin

00020

Comentario

0.0

TEMP0

Byte

0.0

TEMP1

Byte

1.0

TEMP2

Byte

2.0

TEMP3

Byte

3.0

TEMP4

Byte

4.0

TEMP5

Byte

5.0

TEMP6

Word

6.0

TEMP7

DWord

8.0

TEMP8

Date_And_Time

12.0

Bloque: OB100

Segm.: 1

Pgina 1 de 1

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\FB41 - <offline>

18/11/2015 16:57:28

FB41 - <offline>
"CONT_C"
Continuous Control
Familia: ICONT
Nombre: CONT_C
Versin: 1.5
Autor: SIMATIC
Versin del bloque: 2
02/12/2003 13:15:59
Hora y fecha Cdigo:
22/07/1996 07:33:06
Interface:
Longitud (bloque / cdigo / datos): 01750 01428
Proteccin KNOW HOW

Nombre

Tipo de datos

IN

Direccin

00074

Valor inicial

Comentario

0.0
COM_RST

Bool

0.0

FALSE

complete restart

MAN_ON

Bool

0.1

TRUE

manual value on

PVPER_ON

Bool

0.2

FALSE

process variable peripherie on

P_SEL

Bool

0.3

TRUE

proportional action on

I_SEL

Bool

0.4

TRUE

integral action on

INT_HOLD

Bool

0.5

FALSE

integral action hold

I_ITL_ON

Bool

0.6

FALSE

initialization of the integral action

D_SEL

Bool

0.7

FALSE

derivative action on

CYCLE

Time

2.0

T#1S

sample time

SP_INT

Real

6.0

0.000000e+000

internal setpoint

PV_IN

Real

10.0

0.000000e+000

process variable in

PV_PER

Word

14.0

W#16#0

process variable peripherie

MAN

Real

16.0

0.000000e+000

manual value

GAIN

Real

20.0

2.000000e+000

proportional gain

TI

Time

24.0

T#20S

reset time

TD

Time

28.0

T#10S

derivative time

TM_LAG

Time

32.0

T#2S

time lag of the derivative action

DEADB_W

Real

36.0

0.000000e+000

dead band width

LMN_HLM

Real

40.0

1.000000e+002

manipulated value high limit

LMN_LLM

Real

44.0

0.000000e+000

manipulated value low limit

PV_FAC

Real

48.0

1.000000e+000

process variable factor

PV_OFF

Real

52.0

0.000000e+000

process variable offset

LMN_FAC

Real

56.0

1.000000e+000

manipulated value factor

LMN_OFF

Real

60.0

0.000000e+000

manipulated value offset

I_ITLVAL

Real

64.0

0.000000e+000

initialization value of the integral action

DISV

Real

68.0

0.000000e+000

disturbance variable

OUT

0.0

LMN

Real

72.0

0.000000e+000

manipulated value

LMN_PER

Word

76.0

W#16#0

manipulated value peripherie

QLMN_HLM

Bool

78.0

FALSE

high limit of manipulated value reached

QLMN_LLM

Bool

78.1

FALSE

low limit of manipulated value reached

LMN_P

Real

80.0

0.000000e+000

proportionality component

LMN_I

Real

84.0

0.000000e+000

integral component

LMN_D

Real

88.0

0.000000e+000

derivative component

PV

Real

92.0

0.000000e+000

process variable

ER

Real

96.0

0.000000e+000

error signal

IN_OUT

Bloque: FB41

0.0

continuous PID controller

Pgina 1 de 1

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\FB58 - <offline>

18/11/2015 16:57:33

FB58 - <offline>
"TCONT_CP"
temperature PID controller with pulse generator and self-tuning
Familia: CONTROL
Nombre: TCONT_CP
Versin: 1.1
Autor: SIMATIC
Versin del bloque: 2
25/11/2003 10:33:53
Hora y fecha Cdigo:
06/08/2003 13:55:29
Interface:
Longitud (bloque / cdigo / datos): 10866 09868 00184
Proteccin KNOW HOW

Propiedades del objeto:


S7_techparam
Nombre

S7WRTX.TCONT_CP

Tipo de datos

IN

Direccin

Valor inicial

Comentario

0.0
PV_IN

Real

0.0

0.000000e+000

process variable in

PV_PER

Int

4.0

process variable peripherie

DISV

Real

6.0

0.000000e+000

disturbance variable

INT_HPOS

Bool

10.0

FALSE

integral action hold in positive direction

INT_HNEG

Bool

10.1

FALSE

integral action hold in negative direction

SELECT

Int

12.0

selection of call PID and pulse generator

OUT

0.0

PV

Real

14.0

0.000000e+000

process variable

LMN

Real

18.0

0.000000e+000

manipulated variable

LMN_PER

Int

22.0

manipulated variable peripherie

QPULSE

Bool

24.0

FALSE

output pulse signal

QLMN_HLM

Bool

24.1

FALSE

high limit of manipulated variable reached

QLMN_LLM

Bool

24.2

FALSE

low limit of manipulated variable reached

QC_ACT

Bool

24.3

TRUE

next cycle, the continuous controller is working

CYCLE

Real

26.0

1.000000e-001

sample time of continuous controller [s]

CYCLE_P

Real

30.0

2.000000e-002

sample time of pulse generator [s]

SP_INT

Real

34.0

0.000000e+000

internal setpoint

MAN

Real

38.0

0.000000e+000

manual value

COM_RST

Bool

42.0

FALSE

complete restart

MAN_ON

Bool

42.1

TRUE

manual operation on

IN_OUT

Bloque: FB58

0.0

PID temperature controller with pulse generator and self-tuning

Pgina 1 de 1

SIMATIC

practica4\
SIMATIC 300(1)\CPU 313C\...\FC105 - <offline>

18/11/2015 16:57:37

FC105 - <offline>
"Read Analog Value 464-2"
Nombre: SCALE
Autor: SEA

Read Analog Value 464-2


Familia: CONVERT
Versin: 2.1
Versin del bloque: 2
11/04/2000 10:16:18
Hora y fecha Cdigo:
14/10/1996 13:28:29
Interface:
Longitud (bloque / cdigo / datos): 00336 00208 00020
Proteccin KNOW HOW

Nombre

Tipo de datos

IN

Direccin

Comentario

0.0
IN

Int

0.0

input value to be scaled

HI_LIM

Real

2.0

upper limit in engineering units

LO_LIM

Real

6.0

lower limit in engineering units

BIPOLAR

Bool

10.0

1=bipolar; 0=unipolar

OUT
OUT

0.0
Real

IN_OUT

Bloque: FC105

14.0

result of the scale conversion

0.0

SCALING VALUES

Pgina 1 de 1

You might also like