Está en la página 1de 112

Control lgico programable

Control lgico programable


Rubn Daro Vsquez Salazar

Instituto Tecnolgico Metropolitano


Institucin Universitaria

Control lgico programable


Rubn Daro Vsquez Salazar
Instituto Tecnolgico Metropolitano
1a. edicin: diciembre de 2010
Rectora
Luz Mariela Sorza Zapata
ISBN: 978-958-8351-95-7
Comit editorial

Olga Mara Rodrguez Boluf, PhD


Jos R. Galo Snchez, PhD
Liliana Saidon, PhD
Monserrat Vallverd, PhD
Gianni Pezzoti, PhD
Juan Guillermo Rivera Berro, PhD
Edilson Delgado Trejos, PhD
Paula Botero Bermdez, MSc
Marleny Aristizbal Prez, MSc
Viviana Daz Daz

Correccin de textos
Lorenza Correa Restrepo

Diagramacin y montaje
L. Vieco e Hijas Ltda.
Hecho en Medelln, Colombia
Instituto Tecnolgico Metropolitano
Calle 73 No. 76A 354
Tels.: (574) 440 51 97
Fax: 440 51 01
www.itm.edu.co
Medelln - Colombia
Las opiniones, originalidad y citaciones del texto son de la responsabilidad del
autor. El Instituto salva cualquier obligacin derivada del libro que se publica.
Por lo tanto, ella recaer nica y exclusivamente en el autor.

Contenido

1.

Introduccin................................................................................... 17

2. Preliminares.................................................................................... 19
2.1 Puertas lgicas. ............................................................................. 19
2.1.1 SI (IF).............................................................................................. 19
2.1.2 No (NOT)........................................................................................ 20
2.1.3

Y (AND).......................................................................................... 21

2.1.4 O (OR)............................................................................................. 22
2.1.5 OR exclusiva (XOR)....................................................................... 22
2.1.6 No-Y (NAND)................................................................................. 23
2.1.7 NO-O (NOR)................................................................................... 24
2.1.8 Equivalencia (XNOR).................................................................... 25
2.2 Nmeros binarios............................................................................ 28
2.2.1 Tipos. ............................................................................................... 29
2.2.2 Transformacin de un nmero binario en decimal........................ 30
2.2.3

Transformacin de un nmero decimal en binario........................ 31

2.3 Conexin del PLC........................................................................... 32


2.4 Ejercicios propuestos...................................................................... 39
3. Redes de petri con variables digitales. ......................................... 41
3.1 Elementos de entrada digitales..................................................... 41
3.1.1 Contacto normalmente abierto (NA)............................................ 41
3.1.2 Contacto normalmente cerrado (NC)........................................... 41

3.2 Elementos de salida digitales........................................................ 42


3.2.1 Bobina de accin simple.................................................................. 42
3.2.2 Bobina de puesta a 1 (SET)............................................................ 42
3.2.3 Bobina de puesta a 0 (RESET)....................................................... 42
3.3 Elementos de una red de Petri....................................................... 44
3.4 Reglas de evolucin del marcaje. ................................................. 46
3.5

Traduccin de redes de Petri a lenguaje en escalera. ................. 48

3.5.1 Convergencia OR............................................................................ 48


3.5.2 Convergencia AND......................................................................... 49
3.5.3 Divergencia OR............................................................................... 50
3.5.4 Divergencia AND............................................................................ 50
3.6 Programacin de elementos digitales en Simatic Step7................ 63
3.7 Ejercicios propuestos...................................................................... 64
4. Redes de Petri con temporizadores y contadores......................... 67
4.1 Temporizadores............................................................................... 67
4.1.1 Temporizador impulso..................................................................... 68
4.1.2 Temporizador impulso prolongado................................................. 68
4.1.3 Temporizador con retardo a la conexin...................................... 69
4.1.4 Temporizador con retardo a la conexin (con memoria).............. 69
4.1.5 Temporizador con retardo a la desconexin................................. 70
4.2 Contadores..................................................................................... 73
4.2.1 Contador ascendente..................................................................... 73
4.2.2 Contador descendente. .................................................................. 73
4.2.3 Temporizador ascendente-descendente.......................................... 74
4.3 Ejercicios propuestos...................................................................... 81
5. Redes de Petri con variables analgicas...................................... 83
5.1 Tipos de datos. ................................................................................ 83
5.2 Conversin de datos....................................................................... 84
5.3 Comparadores................................................................................. 85

5.4 Operaciones aritmticas y transferencia...................................... 85


5.4.1 Operaciones aritmticas con enteros............................................ 85
5.4.2 Operaciones aritmticas en coma flotante (Figura 48)................ 86
5.4.3 Transferencia. ................................................................................ 87
5.5 Escalizacin.................................................................................... 87
5.6 Rampas. ........................................................................................... 90
5.7 Ejercicios propuestos.................................................................... 100
Bibliografa................................................................................................. 103

ndice de fguras
Figura 1.

Smbolo de la funcin lgica IF

20

Figura 2.

Smbolo de la funcin lgica NOT

21

Figura 3.

Smbolo de la funcin lgica AND

21

Figura 4.

Smbolo de la funcin lgica OR

22

Figura 5.

Smbolo de la funcin lgica XOR

23

Figura 6.

Smbolo de la funcin lgica NAND

24

Figura 7.

Smbolo de la funcin lgica NOR

25

Figura 8.

Smbolo de la funcin lgica XNOR

25

Figura 9.

PLC Siemens 314C-2DP

33

Figura 10.

Representacin de un motor trifsico

34

Figura 11.

Conexin en estrella de un motor trifsico

35

Figura 12.

Conexin en delta de un motor trifsico

35

Figura 13.

Esquema de contactos auxiliares del contactor

37

Figura 14.

Circuito de potencia

37

Figura 15.

Circuito de mando

38

Figura 16.

Diagrama

en escalera para el ejemplo:

Puertas

44

lgicas en lenguaje ladder

Figura 17.

Red de Petri para encendido de un bombillo

46

Figura 18.

Redes de Petri con: a) Transicin no sensibilizada,


b) Transicin sensibilizada, c) Transicin no
disparada y d) Transicin disparada.

47

Figura 19.

Red de Petri y equivalente en lenguaje ladder para


la estructura Convergencia OR

49

Figura 20.

Red de Petri y equivalente en lenguaje ladder para


la estructura Convergencia AND

49

Figura 21.

Red de Petri y equivalente en lenguaje ladder para


la estructura Divergencia OR

50

Figura 22.

Red de Petri y equivalente en lenguaje ladder para


la estructura Divergencia AND

51

Figura 23.

Red

53

de

Petri

del ejemplo de control de nivel

y temperatura en un tanque

Figura 24.

Bloque de organizacin OB100 para el ejemplo 3.3

55

Figura 25.

Acciones del estado M0.1

56

Figura 26.

Evolucin de la marca de M0.1 a M0.2 y M0.5

57

Figura 27.

Acciones de los estados M0.2 y M0.5

58

Figura 28.

Evolucin de la marca de M0.2 a M0.3 y acciones


de M0.3

59

Figura 29.

Evolucin de la marca de M0.2 a M0.4 directamente

60

Figura 30.

Evolucin de la marca de M0.3 a M0.4 y acciones


de M0.4

61

Figura 31.

Evolucin
a M0.1

62

Figura 32.

Bloque principal vaco con elementos ladder

63

Figura 33.

Bloque principal programado con elementos ladder

64

Figura 34.

Temporizador impulso.

68

Figura 35.

Temporizador impulso prolongado

68

Figura 36.

Temporizador con retardo a la conexin

69

Figura 37.

Temporizador
memoria)

Figura 38.

Temporizador con retardo a la desconexin

70

Figura 39.

Lista desplegable de temporizadores

71

Figura 40.

Bloque del
Ejemplo 4.1

de la marca de

M0.4

M0.5

de vuelta

con retardo a la conexin

temporizador

pulso

extendido

(con

del

69

72

Figura 41.

Lista desplegable de contadores

75

Figura 42.

Parametrizacin de un contador

76

Figura 43.

Bloque del
Ejemplo 4.2

77

Figura 44.

Red de Petri del ejemplo 4.3

78

Figura 45.

Programacin en lenguaje ladder del ejemplo 4.3

80

Figura 46.

Conversin de entero (INT) a real (REAL)

85

Figura 47.

Lista desplegable de bloques de operacin en coma

86

contador ascendente-descendente del

fija

Figura 48.

Lista desplegable de bloques de operacin en coma

86

flotante

Figura 49.

Lista del bloque de transferencia de datos

87

Figura 50.

Relacin lineal entre los datos de escalizacin

88

Figura 51.

Bloque de
Convert)

89

Figura 52.

Velocidad contra Tiempo (continua)

90

Figura 53.

Velocidad contra Tiempo (discreto)

92

Figura 54.

Modelo en redes de Petri para la rampa

93

Figura 55.

Tabla de smbolos del ejemplo 5.2

95

Figura 56.

Bloque OB100 del ejemplo 5.2

95

Figura 57.

Programacin
el ejemplo 5.2

conversin de escala

FC105 (Scale

de segmentos del bloque

OB1

para

96

ndice tablas
Tabla 1.

Verdad de la puerta lgica IF

20

Tabla 2.

Verdad de la puerta lgica NOT

20

Tabla 3.

Verdad de la puerta lgica AND

21

Tabla 4.

Verdad de la puerta lgica OR

22

Tabla 5.

Verdad de la puerta lgica XOR

23

Tabla 6.

Verdad de la puerta lgica NAND

24

Tabla 7.

Verdad de la puerta lgica NOR

24

Tabla 8.

Verdad de la puerta lgica XNOR

25

Tabla 9.

Verdad de la puerta lgica XOR de 3 entradas

28

Tabla 10.

Capacidad de almacenamiento en bits

29

Tabla 11.

Procedimiento para convertir un nmero binario en

31

uno decimal

Tabla 12.

Variables para el ejemplo: Puertas lgicas en

43

lenguaje ladder

Tabla 13.

Direccin del ejemplo de control de nivel y

52

temperatura en un tanque

Tabla 14.

Equivalencia entre los nombres de los

70

temporizadores

Tabla 15.

Parmetros de un temporizador

72

Tabla 16.

Equivalencia entre los nombres de los contadores

74

Tabla 17.

Parmetros de un contador

76

Tabla 18.

Inventario de seales para el ejemplo 4.3

79

Tabla 19.

Tipos de datos en el PLC

84

Tabla 20.

Comparadores

85

1. Introduccin

Los controladores lgicos programables o PLC, por las


siglas de su nombre en ingls Programmable Logic Controller,
son dispositivos electrnicos de control de sistemas de eventos
discretos, cuya lgica se puede programar desde un computador
utilizando un programa propio del fabricante; incluso, algunos
PLC compactos permiten la programacin directa desde una
interface ubicada en su parte frontal.
Esta habilidad para ser programados es su principal ventaja
frente al tradicional control cableado. Los procesos industriales
estn en frecuente cambio, mejora y adaptacin, por lo cual
es comn que se requieran cambios en la lgica de control. El
control cableado generalmente requiere de cambio de equipos,
desconexiones y nuevas conexiones para ser adaptado a los
cambios en los procesos, pero el control lgico requiere nicamente
de cambios en la programacin y muchas menos configuraciones.
Desde sus inicios, el PLC fue utilizado nicamente para
realizar el control centralizado, pero pronto se fueron creando
protocolos de comunicacin, entre ellos el Internet, que
permitieron distribuir el control y reducir su complejidad. Las
seales analgicas tambin permitieron aumentar el espectro de
procesos a controlar y su aplicacin se masific hasta hoy en da
ser una herramienta muy popular, con gran cantidad de fabricantes
que ofrecen variedad de equipos a costos accesibles.
Los PLC permiten realizar la programacin a partir de
diferentes lenguajes, algunos de ellos basados en texto, pero el
ms utilizado es el lenguaje de escalera o ladder, debido a sus
ventajas grficas y a su similitud con la comnmente utilizada
lgica cableada, mencionada anteriormente.

Rubn Daro Vsquez Salazar

17

La programacin ha sido un tema de inters para muchas


investigaciones debido a que se han detectado algunos
inconvenientes por la no estandarizacin del cdigo PLC. Debido
a las grandes capacidades de estos equipos y a la cantidad de
aplicaciones en que pueden ser utilizados, cada programador ha
desarrollado su propio estilo de programacin y se ha acostumbrado
a l; los estilos entre diferentes programadores pueden llegar a ser
tan diferentes que las modificaciones por parte de un programador
diferente al autor original se vuelven una tarea muy compleja y,
en ocasiones, se hace necesaria la reconstruccin de parte o todo
el algoritmo de control lgico, desperdiciando tiempo de trabajo.
Entre los procedimientos que se podran realizar para
estandarizar el mtodo de programacin est la obtencin de
un modelo del proceso que permita realizar una evaluacin y/o
simulacin y luego iniciar la codificacin a lenguaje de PLC.
Este procedimiento permitira que varios programadores que
utilicen la misma herramienta de modelacin obtengan cdigos
similares o iguales, los cuales pueden ser fcilmente modificados
o reparados por cualquiera de ellos.
Las redes de Petri son una herramienta de modelacin de
sistemas de eventos discretos (SED) que se pueden traducir de
forma automtica o manual a cdigo PLC cuyo estudio es la
finalidad de este libro.

18

Control lgico programable

2. Preliminares

Existen algunos temas que requieren estudio o repaso previo


a la introduccin en la programacin de los PLC. Bsicamente,
estos temas consisten en el fundamento lgico implementado en
estos controladores, cuyo objetivo final es la evaluacin de ciertas
expresiones combinadas con el valor de las entradas para producir
un resultado en la salida. Las puertas lgicas son las expresiones
ms bsicas que pueden ser programadas en un PLC.
2.1 Puertas lgicas
Las entradas de una puerta lgica pueden estar activas o
inactivas, en 1 o en 0, ON OFF, en verdadero o en falso, son
iguales formas de llamar los nicos dos posibles estados que tiene
una entrada.
Las expresiones booleanas contenidas en cada puerta lgica,
junto con el valor de las entradas, producirn una salida F que
tambin tomar uno de dos posibles estados: activa o inactiva.
A continuacin se enunciarn las ms comunes utilizando la
mnima cantidad de entradas necesarias para su explicacin. En el
caso en que se desee conocer la puerta lgica equivalente con ms
entradas se deber hacer una analoga con la puerta explicada aqu.
Las tablas de verdad (lvarez, 2007) muestran todas las
posibles combinaciones de las entradas, adems, en la columna
derecha muestran el resultado de evaluar las entradas con su
respectiva funcin de salida.
2.1.1 SI (IF)
La puerta lgica IF consiste en una expresin, cuya salida F
es igual a la entrada A.

Rubn Daro Vsquez Salazar

19

La tabla de verdad para esta puerta lgica se muestra en la Tabla 1, y su smbolo,


en la Figura 1.

F=A
verdad
de la puerta
lgica
IF en la
LaTabla
tabla 1.
de Tabla
verdadde
para
esta puerta
lgica se
muestra
Tabla 1, y su smbolo, en la Figura 1.
ENTRADA A
SALIDA F
Tabla 1. Tabla de verdad de la puerta lgica IF
0
0
Entrada
Salida
1 A
1 F
0

Figura 1. Smbolo de la funcin lgica IF


Figura 1. Smbolo de la funcin lgica IF

Fuente: Elaboracin propia

Fuente: Elaboracin propia


2.1.2 No2.1.2 N
(NOT) o (NOT)
La puerta lgica NOT consiste en una expresin cuya salida F
La puerta lgica
NOTaconsiste
es opuesta
la entradaen
A. una expresin cuya salida F es opuesta a la
entrada A.

F=A
La tabla de verdad para esta puerta lgica se muestra en la
FA
tabla 2, y su smbolo, en la figura 2.

Tablaesta
2. Tabla
de verdad
puerta lgica
La tabla de verdad para
puerta
lgicadeselamuestra
en laNOT
Tabla 2, y su smbolo,
en la
Entrada A
Salida F
Figura 2.
0

1
0
Tabla 2. Tabla de verdad
de la puerta
lgica NOT

20

ENTRADA A

SALIDA F

Control lgico programable

Figura 2. Smbolo de la funcin lgica NOT

Figura 2. Smbolo de la funcin lgica NOT

Fuente: Elaboracin propia

2.1.3 Y (AND)
La puerta lgica AND consiste en una expresin, cuya salida
F se activa nicamente cuando todas las entradas estn activas. Su
expresin se realiza a travs de la operacin producto.
F = AB
Esta puerta lgica est estrechamente relacionada con
interruptores conectados en serie, debido a que para que se produzca
una corriente a travs de ellos es necesario que todos estn activos
de forma simultnea. La tabla de verdad para esta puerta lgica se
muestra en la Tabla 3, y su smbolo, en la figura 3.
Tabla 3. Tabla de verdad de la puerta lgica AND
Entrada A

Entrada B

Salida F

Figura 3. Smbolo de la funcin lgica AND

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

21

2.1.4 O (OR)
La puerta lgica OR consiste en una expresin, cuya salida
F se activa cuando cualquiera de las entradas est activa. Su
expresin se realiza a travs de la operacin suma.
F=A+B
Esta puerta lgica est estrechamente relacionada con
interruptores conectados en paralelo, debido a que para que se
produzca una corriente a travs de esta conexin es suficiente que
alguno de ellos est activo. La tabla de verdad para esta puerta
lgica se muestra en la Tabla 4, y su smbolo, en la Figura 4.
Tabla 4. Tabla de verdad de la puerta lgica OR
Entrada A

Entrada B

Salida F

Figura 4. Smbolo de la funcin lgica OR


Figura 4. Smbolo de la funcin lgica OR

Fuente: Elaboracin propia

2.1.5 OR exclusiva (XOR)


La puerta lgica XOR consiste en una expresin, cuya salida
F se activa cuando el resultado de la siguiente expresin es
verdadero.

22

Control lgico programable

F = A B = AB + AB
El operador utilizado en esta puerta lgica fue un signo de
suma encerrado en un crculo. La tabla de verdad para esta puerta
lgica se muestra en la Tabla 5, y su smbolo, en la Figura 5.
Tabla 5. Tabla de verdad de la puerta lgica XOR
Entrada A

Entrada B

Salida F

Figura 5. Smbolo de la funcin lgica XOR

Fuente: Elaboracin propia

2.1.6 No-Y (NAND)


La puerta lgica NAND consiste en una expresin, cuya
salida F se activa cuando el resultado de la siguiente expresin
es verdadero.
F = AB = A + B
Nota 1. Para la conversin de AB en A + B se utiliza una regla
de la lgica booleana: Un producto negado se convierte en la
suma de los multiplicandos negados.
La tabla de verdad para esta puerta lgica se muestra en la
tabla 6, y su smbolo, en la figura 6.

Rubn Daro Vsquez Salazar

23

Tabla 6. Tabla de verdad de la puerta lgica NAND


Entrada A

Entrada B

Salida F

Figura 6. Smbolo de la funcin lgica NAND

Fuente: Elaboracin propia

2.1.7 NO-O (NOR)


La puerta lgica NOR consiste en una expresin, cuya salida
F se activa cuando el resultado de la siguiente expresin es
verdadero.
F=A+B=AB
Nota 2. Para la conversin de A + B en AB se utiliza una
regla de la lgica booleana: Una suma negada se convierte en la
multiplicacin de los sumandos negados.
La tabla de verdad para esta puerta lgica se muestra en la
tabla 7 y su smbolo en la figura 7.
Tabla 7. Tabla de verdad de la puerta lgica NOR

24

Entrada A

Entrada B

Salida F

0
0
1
1

0
1
0
1

1
0
0
0

Control lgico programable

Figura 7. Smbolo de la funcin lgica NOR

Fuente: Elaboracin propia

2.1.8 Equivalencia (XNOR)


La puerta lgica XNOR consiste en una expresin, cuya
salida F se activa cuando el resultado de la siguiente expresin
es verdadero.
F=AB
La tabla de verdad para esta puerta lgica se muestra en la
tabla 8, y su smbolo, en la figura 8.
Tabla 8. Tabla de verdad de la puerta lgica XNOR
Entrada A

Entrada B

Salida F

Figura 8. Smbolo de la funcin lgica XNOR

Fuente: Elaboracin propia

Ejemplo 2.1. XOR de 3 entradas


Para reforzar las definiciones vistas en las Notas 1 y 2, y
mostrar la forma de realizacin de analogas para las puertas

Rubn Daro Vsquez Salazar

25

lgicas con ms entradas de las explicadas en la seccin anterior,


se tomar como referencia la puerta lgica XOR y se aadir
una entrada adicional, realizando el desarrollo para obtener su
expresin final y su tabla de verdad.
Anteriormente se vio que la puerta lgica XOR de 2 entradas
consiste en una expresin, cuya salida F se activa cuando el
resultado de la siguiente expresin es verdadero.
F = A B = AB + AB
Por tanto, para una puerta lgica XOR de 3 entradas la
expresin se convierte en:
F=ABC
Las propiedades asociativa y conmutativa se cumplen en las
operaciones lgicas, por lo tanto, es igual convertir la expresin
en:
F = (A B) C = (AB + AB) C
El operador XOR aplicado a 2 elementos sugiere en palabras
textuales que: El primero de ellos se niega y se multiplica por
el segundo, todo esto se suma con la negacin del segundo
multiplicado por el primero de ellos.
Aplicando esta definicin a la expresin obtenida se tiene:

) (

F = AB + AB C = AB + AB C + AB + AB C
Aplicando la definicin dada en la Nota 2,
convierte en AB AB , por tanto:

) (

F = AB AB C + AB + AB C

26

Control lgico programable

( AB + AB )

se

Aplicando la definicin dada en la Nota 1, AB y AB se


convierten, respectivamente, en A + B y A + B . Entonces la
expresin se convierte en:

) (

F=

(( A + B )( A + B )) C + ( AB + AB ) C

Si se niega cualquier nmero booleano su valor se invierte,


pero si se niega nuevamente su valor vuelve al estado inicial, por
lo tanto A = A y B = B . La expresin se convierte en:

((

)) (

)(

F = A + B A + B C + AB + AB C
Realizando el producto

( A + B )( A + B ) = AA + AB + AB + BB .

Cualquier nmero
multiplicado por su negado se convierte en cero, entonces

AA + AB + AB + BB = AB + AB , la expresin completa se

convierte en:

F = AB + AB C + AB + AB C
Destruyendo los parntesis:

F = ABC + ABC + ABC + ABC


La tabla de verdad para esta puerta lgica se muestra en la
tabla 9.

Rubn Daro Vsquez Salazar

27

Tabla 9. Tabla de verdad de la puerta lgica XOR de 3 entradas


Entrada A

Entrada B

Entrada C

Salida F

Las puertas lgicas permiten entonces realizar un sinnmero


de operaciones con nmeros que permiten nicamente 2 estados:
activo o inactivo. Estos nmeros se llaman nmeros binarios y su
estudio se convierte en uno de los temas necesarios para lograr
el entendimiento de la lgica utilizada para la programacin y
utilizacin de las puertas vistas anteriormente.
2.2 Nmeros binarios
Los nmeros que normalmente se utilizan en la vida cotidiana
y acadmica se llaman nmeros decimales, debido a que con un
solo dgito se pueden tener 10 posibles combinaciones, desde el 0
hasta el 9. Los nmeros binarios adquieren su nombre debido a que
en un solo dgito es posible tener nicamente 2 combinaciones,
0 1.
La representacin de los nmeros decimales en sistemas
computacionales es difcil debido a la cantidad de estados que
posee un nico dgito, mientras que en los binarios, por ejemplo
por voltaje, es fcil representar un 0 lgico a partir de 0V y un 1

28

Control lgico programable

lgico a partir de 5V. De esta forma se puede entregar una cadena


o tren de unos y ceros que finalmente estn llevando informacin
a travs de un cable.
Las reas de memoria en los controladores lgicos
programables estn representadas a partir de nmeros binarios y,
por tal motivo, su estudio debe ser de especial inters para un
conocedor o aprendiz de este tema.
2.2.1 Tipos
Los nmeros binarios se pueden dividir en varios tipos segn
el nmero de reas de memoria o bits que utilicen (Tabla 10). El
bit se considera entonces la unidad ms bsica de medicin de
tamao de un nmero binario.
Tabla 10. Capacidad de almacenamiento en bits
Nombre

Cantidad

Smbolo

Bit

1 bit

Bit

byte

8 bits

Kilobit

1024 bits

Kbit

Kilobyte

1024 B

KB

Megabit

1024 Kbits

Mbit

Megabyte

1024 KB

MB

Gigabit

1024 Mbits

Gbit

Gigabyte

1024 MB

GB

Terabit

1024 Gbits

Tbit

Terabyte

1045 GB

TB

Es posible realizar la transformacin de cualquiera de estos


tipos a bits, pero carece de sentido y normalmente se utiliza el
tamao en bytes (B).

Rubn Daro Vsquez Salazar

29

2.2.2 Transformacin de un nmero binario en decimal


En un nmero binario de cualquier tamao, se identifica el
nmero del extremo derecho como el bit menos significativo,
y el del izquierdo como el ms significativo. Este concepto se
reforzar con el siguiente ejemplo.
Dada una cadena o sucesin de unos y ceros, el procedimiento
para conocer su valor equivalente en nmeros decimales se
muestra en el siguiente ejemplo, paso por paso:
Ejemplo 2.2. Para convertir el nmero decimal de 16 bits
1100100110100001 se utiliza la Tabla 11, y a continuacin, se
explica cada una de sus filas:

30

Fila Binario: Se escribe el nmero binario, con el bit ms


significativo a la izquierda, y el menos significativo, a la
derecha.
Fila Enumeracin: Se enumeran desde el bit menos
significativo hasta el bit ms significativo, de derecha a
izquierda iniciando en cero.
Fila Potencia de 2: Se toma en cuenta la numeracin de
la fila anterior para ser la potencia del nmero decimal 2
respectivo. Este 2 es debido al nmero de estados que puede
tomar el nmero binario.
Fila Decimal: Se calcula el valor de cada potencia de 2
de la fila Potencia de 2, pero nicamente si su respectivo
binario de la fila Binario tiene el estado 1, en caso de ser 0
se debe poner 0 en la casilla decimal.

Control lgico programable

Tabla 11. Procedimiento para convertir


Binario

Enumeracin

15

14

13 12

11

10

215

214

213 212

211

210

29

28

27

26

25

24

23

22

21

20

2048

32

Decimal

Potencia de 2

un nmero binario en uno decimal

32768 16384

256 128

Finalmente, el nmero decimal equivalente es la suma de


todas las casillas decimales diferentes de cero:
32768 + 16384 + 2048 + 256 + 128 + 32 + 1 + = 51617
2.2.3 Transformacin de un nmero decimal en binario
El proceso en este caso ser inverso al anterior. Para ello se
utilizar el mismo ejemplo, partiendo desde el nmero decimal
51617 y terminando en el nmero binario antes descrito.
Para realizar este procedimiento se debe tener en cuenta si el
nmero es par o impar. En caso de ser par se tiene inmediatamente
que el bit menos significativo (el del extremo derecho) es cero, se
divide por 2 el nmero decimal y se contina el procedimiento,
aadiendo unos o ceros cada vez ms significativos. En caso de

Rubn Daro Vsquez Salazar

31

ser impar, este bit ser 1, se le deber restar una unidad al nmero
decimal, dividir por 2 y repetir el procedimiento hasta llegar al
final.
El procedimiento entonces es:

Debido a que 51617 es impar, entonces tomamos nota de que


1 es el bit menos significativo, restamos 1 unidad y queda en
51616, y dividimos por 2, lo cual da como resultado 25808.
Partimos ahora de 25808: dado que es par, el bit siguiente
hacia la izquierda ser 0. Dividimos por 2 y obtenemos 12904.
El procedimiento se repite hasta llegar a la conclusin que
el bit ms significativo es 1 y obtener finalmente el nmero
binario 1100100110100001.
En Windows XP, Vista y Windows7 est incluida una
calculadora cientfica capaz de realizar esta conversin de forma
automtica, adems, en Internet hay algunas disponibles en lnea
que permiten efectuar esta misma operacin sin necesidad de
llevar a cabo el procedimiento paso por paso.
2.3 Conexin del PLC
En esta seccin se explicar el esquema de conexin al PLC
usando como ejemplo la CPU314C-2DP de Siemens, dado que
el Laboratorio de PLC del ITM se encuentra dotado con esta
referencia de PLC. Sin embargo, la conexin de otras referencias
e incluso marcas diferentes se realiza de forma muy similar.
La conexin de este PLC consiste bsicamente en 3 pasos:
1. Conexin de la fuente a la alimentacin. Este PLC trae incluida
una fuente encargada de convertir la energa y suministrarla
a la CPU y a todos los dems componentes. Est ubicada en
el lado izquierdo y posee 3 bornes, L1, N y GND, los cuales

32

Control lgico programable

deben ser conectados a una alimentacin de 110VAC. La


fuente posee otros 4 bornes: 2 positivos etiquetados con L+ y
2 negativos etiquetados con M los cuales entregarn 24VDC.
2. Conexin de la CPU. sta posee 2 bornes llamados L+ y M,
los cuales deben conectarse directamente a los bornes del
mismo nombre en la fuente.
3. Conexin de las entradas y salidas. Esta referencia de PLC
incluye 2 mdulos de entradas y salidas, uno para analgicas
y otro para digitales. Ambos mdulos deben energizarse con
24VDC provenientes de la fuente. Los bornes de los mdulos
marcados con L deben ir conectados al borne L+ de la fuente,
y los marcados con M, al borne M. Los mdulos de entradas
y salidas poseen varios bornes L y M, por lo tanto, estn
numerados para ser fcilmente diferenciados.
La figura 9 muestra los componentes del PLC y sus respectivos
bornes de alimentacin.
Figura 9. PLC Siemens 314C-2DP
Figura 9. PLC Siemens 314C-2DP

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

33

Ejemplo 2.3. Utilizacin de un PLC para control de giro en


un motor trifsico
El motor trifsico utiliza, como su nombre lo dice, 3 fases
de forma equilibrada, es decir, consume lo mismo en cada una
de ellas y no requiere el uso del neutro. Su alimentacin es por
corriente alterna y se pueden clasificar en asncronos y sncronos.
Se dice que un motor es sncrono cuando su rotor gira a las mismas
revoluciones que lo hace el campo magntico del estator; en caso
contrario, se llama asncrono.
Algunas de las caractersticas ms importantes que diferencian
un motor trifsico de otro son: la tensin, la cual puede variar
dependiendo de su aplicacin; por ejemplo, para aplicaciones
industriales, es comn encontrarlos a 230V, pero para grandes
aplicaciones se utilizan motores de alta tensin, que llegan a ser
de hasta 15000V; la frecuencia, la cual vara principalmente de
acuerdo con el sistema elctrico utilizado; en Europa es a 50Hz,
mientras que en Amrica es a 60Hz; su velocidad, la cual depende
de la aplicacin que se requiera.
Su representacin se hace comnmente a travs de 3 bobinas
(figura 10) que deben conectarse entre s para producir el arranque
y el giro, conexin que se hace en delta o en estrella.
Figura 11. Conexin en estrella de un motor trifsico
Figura 10. Representacin de un motor trifsico

Fuente: Elaboracin propia

34

Control lgico programable

La conexin en estrella (Figura 11) se forma conectando


los extremos U2, V2 Y W2 de las 3 bobinas, y en los extremos
quedan los puntos U1, V1 y W1 disponibles para la alimentacin
con la red trifsica.
Figura 11. Conexin en estrella de un motor trifsico
Figura 11. Conexin en estrella de un motor trifsico

Fuente: Elaboracin propia

La conexin en delta, comnmente conocida como tringulo,


en la cual se conectan los puntos de las bobinas como se muestra
en la figura 12.
Figura 12. Conexin en delta de un motor trifsico
Figura 12. Conexin en delta de un motor trifsico

Fuente: Elaboracin propia

En un motor trifsico, es posible controlar velocidad y sentido


de giro.

Rubn Daro Vsquez Salazar

35

El control de velocidad se realiza mediante un variador de


frecuencia, al cual se le programan todos los parmetros del motor
y se le envan rdenes para indicar la velocidad deseada. Estas
rdenes se envan comnmente como un voltaje de 0-10VDC,
donde 0V significan velocidad 0 y 10V significan velocidad
mxima nominal.
El sentido de giro se realiza mediante la inversin de 2 de sus
fases. Esta inversin es delicada ya que si se comete un error en
la inversin es posible provocar un corto circuito entre 2 fases y
as generar un apagn y daos en el sector.
Algunos elementos necesarios son:

36

Pulsador. Elemento que permite el paso o interrupcin de la


corriente mientras es accionado. Cuando ya no se acta sobre
l, vuelve a su posicin de reposo. Puede ser normalmente
cerrado (NC) o normalmente abierto (NA).
Rel. Es un dispositivo electromecnico, que funciona como
un interruptor controlado por un circuito elctrico en el que,
por medio de una bobina y un electroimn, se acciona un
juego de uno o varios contactos que permiten abrir o cerrar
otros circuitos elctricos independientes.
Contactor. Es un interruptor accionado a distancia que vuelve
a la posicin de reposo cuando la fuerza de accionamiento deja
de actuar sobre l. Simbologa: 1 y 2 contactos normalmente
cerrados (NC). 3 y 4 contactos normalmente abiertos (NA)

Control lgico programable

Figura 13. Esquema de contactos auxiliares del contactor


Figura 13. Esquema de contactos auxiliares del contactor

Fuente: Elaboracin propia

Motor trifsico. La mayora de los motores trifsicos tienen


una carga equilibrada, es decir, consumen lo mismo en las
tres fases, ya estn conectados en estrella o en tringulo. Un
motor con carga equilibrada no requiere el uso de neutro.
Fuente 24V ajuste por VARIAC: Funciona con un
autotransformador para realizar los cambios de voltaje.
El circuito de potencia (Figura 14) es el encargado de
alimentar al receptor, en este caso el motor.
Figura 14. Circuito de potencia
Figura
14. Circuito de potencia

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

37

El circuito de mando (Figura 15) es el encargado de controlar el


funcionamiento del contactor. Normalmente consta de elementos
de mando como pulsadores, interruptores, rels, etc.
Figura 15. Circuito de mando

Figura 15. Circuito de mando

Fuente: Elaboracin propia

Los pulsadores de arranque y de paro deben conectarse a las


entradas digitales del PLC, mientras que el rel 24VDC debe ir
conectado a una salida digital. Es de vital importancia aclarar en
este tema de las entradas y salidas digitales del PLC aclarar que su
rango de voltajes admitido es 0-24V de baja corriente, es decir, su
seal tiene finalidad nicamente de control y no de potencia, por
lo cual activar actuadores directamente desde una de sus salidas
puede generar daos, se recomienda entonces utilizar rels para

38

Control lgico programable

activar los actuadores a travs de fuentes diferentes al voltaje


en las salidas digitales. Ampliacin de este tipo de conexiones,
definiciones adicionales y composicin interna de PLC se puede
encontrar en Mandado, et al, 2006 el cual es un texto con un
fuerte enfoque a los PLC Step 7 y y Balcells y Romeral, 1998,
libro cuyo captulo 4 se concentra especficamente en este tema.
Retomando el ejemplo, se aclare que para encender un
motor mientras un pulsador est presionado y apagarlo en caso
contrario, no es necesaria ni rentable la utilizacin de un PLC
porque incrementara el costo de la implementacin del sistema
y es de fcil implementacin sin utilizarlo. Sin embargo, en este
ejemplo se utilizar PLC porque en el captulo 5 se retomar
este ejemplo para programar diferentes secuencias en el motor,
utilizando temporizadores y contadores para inversin de giro,
y comparadores para realizar control de velocidad, casos en los
cuales empieza a ser rentable la implementacin de la lgica
programada, en vez de la lgica cableada, debido a la reduccin
de la utilizacin de cables y otros elementos fsicos fcilmente
reemplazables por lneas de cdigo en un PLC.
Entonces, el captulo 4 se concentrar en el uso de
temporizadores y contadores, elementos importantes para la
inversin de giro, mientras que en el captulo 5 se estudiarn las
variables analgicas y, dentro de este tema, el uso de comparadores
como elemento indispensable en el tratamiento de este tipo de
variables.
2.4 Ejercicios propuestos
1. A travs del lbegra de Boole, simplifique:
a. F = A + BC
b. F = A + BCD

Rubn Daro Vsquez Salazar

39

c. F = A + B
d. F = A ( BC )

f. F = A ( B C )
2. Obtenga el nmero decimal a partir de los siguientes nmeros
binarios
a. 10101010
b. 01101100
c. 00001101
d. 11100111
e. 11111111
3. A partir de los resultados obtenidos en el ejercicio 2, haga
el procedimiento inverso para convertirlo nuevamente en
binario y verifique as sus respuestas.

40

Control lgico programable

3. Redes de petri con variables digitales

El lenguaje en escalera, comnmente conocido como


diagrama de contactos o, por su traduccin al ingls, Ladder, es
uno de los ms utilizados en los autmatas programables.
Su simbologa se compone de elementos de entrada y de
salida, cada uno de los cuales debe estar relacionado con una
variable del PLC.
3.1 Elementos de entrada digitales
Los elementos de entrada normalmente son los primeros en
ser utilizados en el diagrama de escalera. Pueden ser de varios
tipos y comnmente estn relacionados con una variable tipo
entrada, como por ejemplo I4.3.
3.1.1 Contacto normalmente abierto (NA)
Este contacto evala la variable de entrada y se cierra en caso
en que sta est activa; de lo contrario, permanecer abierto. Su
smbolo es:

3.1.2 Contacto normalmente cerrado (NC)


Este contacto acta de forma opuesta al NA, es decir, evala
la variable de entrada y se abre en caso en que sta est activa; de
lo contrario, permanecer cerrado y permitir el paso de corriente
a travs de l. Su smbolo es:

Rubn Daro Vsquez Salazar

41

3.2 Elementos de salida digitales


Los elementos de salida normalmente se ubican despus de
haber aadido los elementos de entrada, los cuales actan como
condiciones a evaluar antes de modificar el estado de la salida.
Comnmente, estn relacionados con variables tipo salida, como
por ejemplo Q3.2.
3.2.1 Bobina de accin simple
Esta bobina activa su variable asociada nicamente cuando se
encuentra energizada; en caso contrario, la desactiva. Su smbolo es:

3.2.2 Bobina de puesta a 1 (SET)


Esta bobina activa su variable asociada cuando se encuentra
energizada, y an cuando se desenergiza la mantiene activa. Su
smbolo es:

3.2.3 Bobina de puesta a 0 (RESET)


Esta bobina desactiva su variable asociada cuando se
encuentra energizada y la mantiene as. Su smbolo es:

Nota. Las bobinas SET y RESET normalmente se utilizan


en conjunto, es decir, despus de aplicarse la bobina SET a una
variable, su apagado se realiza con la bobina RESET.

42

Control lgico programable

Ejemplo 3.1. Puertas lgicas en lenguaje ladder

La construccin del diagrama en escalera de estas puertas


lgicas y, en general cualquier programacin, se debe realizar
apoyada en una tabla de variables que permita identificar su
descripcin. La Tabla 12 muestra su respectiva direccin, smbolo
y comentario.
Tabla 12. Variables para el ejemplo:
Puertas lgicas en lenguaje ladder
Direccin

Smbolo

Comentario

I124.0

Entrada A

Entrada digital A

I124.1

Entrada B

Entrada digital B

I124.2

Entrada C

Entrada digital C

Q124.0

F1

Salida puerta lgica SI

Q124.1

F2

Salida puerta lgica AND

Q124.2

F3

Salida puerta lgica OR

Q124.3

F4

Salida puerta lgica XOR

Q124.4

F5

Salida puerta lgica NO

Q124.5

F6

Salida puerta lgica NAND

Q124.6

F7

Salida puerta lgica NOR

Q124.7

F8

Salida puerta lgica XOR

Q125.0

F9

Salida puerta lgica XOR 3 entradas

Con base en estos nombres y direcciones se construye el


diagrama en escalera para las puertas lgicas (Figura 16).

Rubn Daro Vsquez Salazar

43

Figura 16. Diagrama en escalera para el ejemplo: Puertas lgicas en lenguaje


ladder

Figura 16. Diagrama en escalera para el ejemplo: Puertas lgicas en


lenguaje ladder

Fuente: Elaboracin propia

3.3 Elementos de una red de Petri


Una Red de Petri (RdeP) es una herramienta grfica y
matemtica que provee una metodologa de diseo unificado para

44

Control lgico programable

la especificacin de sistemas de eventos discretos (Cassandras


y Lafortune, 2008). Introduction to Discrete Event Systems.
Springer Science+Business Media, LLC. 2nd Edition.). Una RdeP
puede ser traducida a lenguaje PLC utilizando la metodologa que
se plantear ms adelante.
Una red de Petri ordinaria est compuesta por:
Lugares. Representan estados del proceso o sistema modelado.
Su smbolo es un crculo.
Transiciones. Son utilizadas para que la RdeP evolucione de
un estado a otro y representan eventos del sistema modelado. Su
smbolo es un rectngulo.
Arcos. Se utilizan para conectar lugares con transiciones, y
viceversa. Su smbolo es una flecha cuya direccin representa el
sentido de flujo de marcas a travs de la red.
Marcaje. Si un lugar posee marca significa que este lugar
est activo; en caso contrario, el lugar est inactivo. Una marca
pasa de un lugar a otro a travs del disparo de una transicin
sensibilizada.
Una RdeP interpretada es similar a la ordinaria, pero en las
transiciones tiene asociadas seales de entrada, y en los estados,
seales de salida. Adicionalmente, se define, para implementacin,
que los lugares estn representados por memorias internas del
PLC.
Ejemplo 3.2. Encendido de un bombillo

Este sistema consiste en 2 posibles estados: encendido y


apagado, por lo cual la RdeP contiene 2 lugares. Inicialmente el
bombillo est apagado. Debe existir una transicin para pasar de
apagado a encendido cuando se activa un pulsador y otra para
pasar de encendido a apagado cuando se desactiva el mismo
pulsador.

Rubn Daro Vsquez Salazar

45

La RdeP que modela este sistema se muestra en la Figura 17:


Figura
Petri para encendido de un bombillo
Figura17.
17.Red
Red de
de Petri para encendido de un bombillo

Fuente: Elaboracin propia

3.4 Reglas de evolucin del marcaje


Anteriormente en la definicin de marcaje se especific que
una transicin debe estar sensibilidada para poder disparar. Se dice
que una transicin est sensibilizada nicamente cuando todos los
lugares de entrada a ella estn activos, es decir, poseen marca.
Cuando una transicin est sensibilizada y se cumplen las
condiciones, entonces la transicin dispara, removiendo una
marca de todos los lugares de entrada y aadiendo una en todos
los lugares de salida.
En la Figura 18 se muestra un ejemplo con diferentes
posibilidades para las transiciones y sus disparos.
En la Figura 18 a) la transicin no est habilitada, debido a
que M 0.3, lugar de entrada a la transicin, no est marcado.
En la Figura 18 b) la transicin est habilitada, debido a que
todos los lugares de entrada a ella, M 0.2 y M 0.3, estn marcados.
En la Figura 18 a) y b) se cuenta con 2 redes de Petri con igual
estructura pero diferente marcaje, ambas con una transicin con la
entrada I 0.1 como condicin de disparo. La Figura 18 a) no puede
disparar, ya que la transicin no tiene todos sus lugares de entrada
marcados; por lo tanto, la Figura 18 c) tiene el mismo marcaje.
46

Control lgico programable

17

Por el contrario, la Figura 18 b) s cumple la condicin de


disparo y, ante la ocurrencia del evento I 0.1, la transicin puede
disparar y el marcaje evoluciona, removiendo las marcas de M 0.2
y M 0.3 y aadiendo una en M 0.4 (Figura 18 d).
Figura 18. Redes de Petri con: a) Transicin no sensibilizada, b) Transicin

Figura 18. Redes de Petri con: a) Transicin no sensibilizada, b) Transicin


sensibilizada,
c)) T
Transicin
no disparada
disparadayydd)
disparada.
sensibilizada, c
ransicin no
) TTransicin
ransicin disparada
.

Fuente: Modificada de Medina y Gonzlez, Modelamiento de controladores lgicos


mediante el uso de redes de Petri temporizadas intepretadas por periferia, pg. 35.

Rubn Daro Vsquez Salazar

47

3.5 Traduccin de redes de Petri a lenguaje en escalera




Anteriormente se defini que:


Cada lugar de la red de Petri est representado por una
memoria interna del PLC, por ejemplo M0.0.
Cada transicin est representada por una entrada del PLC,
por ejemplo I124.3.
Cada lugar representa un estado del sistema, por tanto, puede
representar activacin o desactivacin de las salidas del PLC,
por ejemplo, Q125.2=1 Q125.7=0.

En la traduccin a lenguaje en escalera se utiliza un escaln


o segmento de cdigo para cada transicin. Se debe verificar
el estado activo de cada lugar de entrada, luego se verifica con
lgica AND el cumplimiento de las condiciones asociadas a
la transicin, finalmente se activan los lugares de salida de la
transicin con la instruccin SET y se desactivan los lugares de
entrada con la instruccin RESET.
Se ilustrar el mtodo de traduccin de RdeP a lenguaje en
escalera usando las estructuras generalizadas (Zapata y Carrasco,
2002) Estructuras generalizadas para Controladores Lgicos
modeladas mediante Redes de Petri.
): convergencia y divergencia utilizando lgica AND y OR,
debido a que son de frecuente uso en los controladores lgicos
programables.
3.5.1 Convergencia OR
Se presenta cuando un lugar se activa ante el disparo de
cualquiera entre varias transiciones de entrada, las cuales tienen un
nico lugar de entrada que garantiza la sensibilidad. El lugar M 0.7
se activa entonces ante el disparo de I 0.2 I 0.3 (Figura 19).

48

Control lgico programable

Figura 19. Red de Petri y equivalente en lenguaje ladder para la estructura


Figura 19. Red de PetriConvergencia
y equivalente en
lenguaje ladder para la
OR
estructura Convergencia OR

Fuente: Elaboracin propia

3.5.2 Convergencia AND


Se presenta cuando un lugar se activa ante el disparo de una
transicin de entrada la cual, a su vez, tiene varios lugares de
entrada, los cuales deben estar activos simultneamente. El lugar
M 1.2 se activa entonces ante el disparo de I 0.4 y el cumplimiento
simultneo de M 1.0 y M 1.1 (Figura 20).
igura
20. R
de Petri y equivalente
en lenguaje
la
Figura 20. Red Fde
Petri
yed
equivalente
en lenguaje
ladderladder
parapara
la estructura
estructura
C
onvergencia
AND
Convergencia AND

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

49

3.5.3 Divergencia OR
Se presenta cuando un lugar est marcado y se debe elegir
entre 2 posibles transiciones para el disparo. El lugar M 1.3 enva
su marca a travs de I 0.5 I 0.6 (Figura 21).

Figura 21. Red de Petri y equivalente en lenguaje ladder para la estructura


Figura 21. Red de Petri Divergencia
y equivalente OR
en lenguaje ladder para la
estructura Divergencia OR

Fuente: Elaboracin propia

3.5.4 Divergencia AND


Se presenta cuando un lugar est marcado y, ante el disparo
de una transicin, la marca evoluciona a varios estados. El lugar
M 1.6 enva su marca hacia M 1.7 y M 2.0 (Figura 22).

50

Control lgico programable

Figura 22. Red Fde


Petri
equivalente
en lenguaje
ladderladder
parapara
la estructura
igura
22. y
Red
de Petri y equivalente
en lenguaje
la
estructura
D
ivergencia
AND
Divergencia AND

Fuente: Elaboracin propia

Ejemplo 3.3: Control de nivel y temperatura en un tanque


(Tomado de Medina, C. y Gonzlez, 2003)
El funcionamiento del sistema debe ser:
1) Las condiciones iniciales son todos los actuadores apagados.
2) Si se presiona el pulsador de inicio, se debe verificar nivel
por debajo del sensor de nivel bajo y temperatura por debajo
del valor deseado. Si esto se cumple, se inicia el llenado y el
mezclado.
3) Durante el llenado, se verifica que el nivel est por debajo del
nivel mximo; cuando se llegue a este nivel, el llenado debe
finalizar.
4) Una vez verificado el nivel mximo, se debe verificar
temperatura. Si la temperatura est en el valor deseado,
se salta al proceso de vaciado; de lo contrario, se inicia el
proceso de calentamiento.
5) En el proceso de calentamiento, se verifica constantemente la
temperatura; una vez se obtenga el valor deseado, se termina
el calentamiento y se inicia el vaciado.

Rubn Daro Vsquez Salazar

51

6) Una vez se detecta el vaco completo, se vuelve a las


condiciones iniciales, apagando todos los actuadores.
La Tabla 13 especifica la direccin, tipo y descripcin de
cada variable utilizadas.
Tabla 13. Direccin del ejemplo de control de
nivel y temperatura en un tanque

52

Direccin

Tipo

Descripcin

M0.1

Estado

Reposo

M0.2

Estado

Llenado

M0.3

Estado

Calentamiento

M0.4

Estado

Vaciado

M0.5

Estado

Mezclado

I0.1

Entrada

Sensor de nivel mnimo (NA)

I0.2

Entrada

Sensor de nivel mximo (NA)

I0.3

Entrada

Sensor de temperatura (NA)

I0.4

Entrada

Pulsador de inicio (NA)

Q0.1

Salida

Vlvula de llenado

Q0.2

Salida

Vlvula de vaciado

Q0.3

Salida

Motor del mezclador

Q0.4

Salida

Resistencia del calentador

Control lgico programable

Figura 23. Red de Petri del ejemplo de control de nivel


y temperatura en un tanque

Figura 23. Red de Petri del ejemplo de control de nivel y temperatura en un tanque

Fuente: Modificada de Medina y Gonzlez, Modelamiento de controladores lgicos


mediante el uso de redes de Petri temporizadas intepretadas por periferia, pg. 32.

La conversin de red de Petri a cdigo PLC se realiza entonces


de teniendo en cuenta lo siguiente:

El bloque de organizacin OB100 se encarga de asignar el


marcaje inicial a la red.

Rubn Daro Vsquez Salazar

53

Cada estado se representa por una marca, en la red de la


Figura 23 se tienen 5 estados, ocupando las memorias M0.0
a M0.5 del PLC.
Cada transicin representa la evolucin de una marca de un
estado al otro.
Cada estado tiene asociadas unas acciones en las salidas.

En diagrama ladder se realizara entonces el cdigo por


segmentos. Se requieren 5 segmentos para realizar cada una de
las 5 transiciones, y otros 5 segmentos para las acciones de cada
estado.

54

Control lgico programable

Los pasos entonces seran:


Programacin del bloque OB100 para el marcaje inicial: Para


esto se ubica un contacto NA y un contacto NC en paralelo
con la misma variable asociada, esto permitir el paso de
corriente a la bobina bajo cualquier estado de la variable y as
iniciar encendida junto con el estado RUN del PLC (Figura
24).

Figura 24. Bloque de organizacin OB100 para el ejemplo 3.3


Figura 24. Bloque de organizacin OB100 para el ejemplo 3.3

Fuente: Elaboracin propia

Fuente: Elaboracin propia

Luego se programa la accin de M0.1, la cual consiste en apagar todas las


55
Rubn Daro Vsquez Salazar
salidas (Figura 25).

Luego se programa la accin de M0.1, la cual consiste en


apagar todas las salidas (Figura 25).
Figura 25. Acciones del estado M0.1
Figura 25. Acciones del estado M0.1

Fuente: Elaboracin propia

Fuente: Elaboracin propia


El siguiente paso es la evolucin de la marca de M0.1. Segn la red, al dispararse
la transicin de salida de M0.1 se activan los estados M0.2 y M0.5. Por lo tanto se
debe aplicar la instruccin SET a estos dos estados y aplicar RESET a M0.1 que
es el lugar de origen de la marca (Figura 26).
56
Control lgico programable

El siguiente paso es la evolucin de la marca de M0.1. Segn


la red, al dispararse la transicin de salida de M0.1 se activan los
estados M0.2 y M0.5. Por lo tanto se debe aplicar la instruccin
SET a estos dos estados y aplicar RESET a M0.1 que es el lugar
de origen de la marca (Figura 26).
igura 26. Evolucin de la marca de M0.1 a M0.2 y M0.5
FiguraF26.
Evolucin de la marca de M0.1 a M0.2 y M0.5

Fuente: Elaboracin propia

Fuente: Elaboracin propia


Dado que ya se activaron los estados M0.2 y M0.3 se pueden programar las
acciones que cada uno de estos tiene asociadas (Figura 27).

Rubn Daro Vsquez Salazar

57

Dado que ya se activaron los estados M0.2 y M0.3 se pueden


programar las acciones que cada uno de estos tiene asociadas
(Figura 27).
igura 27. Acciones de los estados M0.2 y M0.5
Figura 27. Acciones de Flos
estados M0.2 y M0.5

Fuente: Elaboracin propia

Fuente: Elaboracin propia


La evolucin del estado M0.5 se puede realizar ms adelante. Por el momento se
puede realizar la evolucin de M0.2 a M0.3 (Figura 28).

58

Control lgico programable

La evolucin del estado M0.5 se puede realizar ms adelante.


Por el momento se puede realizar la evolucin de M0.2 a M0.3
(Figura 28).
Figura 28. Evolucin de la marca de M0.2 a M0.3 y acciones de M0.3
Figura 28. Evolucin de la marca de M0.2 a M0.3 y acciones de M0.3

Fuente: Elaboracin propia

Fuente: Elaboracin propia


El estado M0.2 tambin tiene la opcin de evolucionar al estado M0.4 sin pasar
59 repetir
por M0.3 (Figura 29). Se debe programar
evolucin
Rubn Daro Vla
squez
Salazar pero no es necesario
las acciones de M0.3.

El estado M0.2 tambin tiene la opcin de evolucionar al


estado M0.4 sin pasar por M0.3 (Figura 29). Se debe programar
la evolucin pero no es necesario repetir las acciones de M0.3.
Figura 29. Evolucin de la marca de M0.2 a M0.4 directamente
Figura 29. Evolucin de la marca de M0.2 a M0.4 directamente

Fuente: Elaboracin propia

Fuente: Elaboracin propia


La marca evoluciona de M0.3 a M0.4 a travs de la transicin con el evento
asociado I0.3. Las acciones de M0.4 son aplicar la RESET a Q0.1 y Q0.4 y SET a
M0.2 (Figura 30).

60

Control lgico programable

La marca evoluciona de M0.3 a M0.4 a travs de la transicin


con el evento asociado I0.3. Las acciones de M0.4 son aplicar
la RESET a Q0.1 y Q0.4 y SET a M0.2 (Figura 30).

Figura 30. Evolucin de la marca de M0.3 a M0.4 y acciones de M0.4


Figura 30. Evolucin de la marca de M0.3 a M0.4 y acciones de M0.4

Fuente: Elaboracin propia

Fuente: Elaboracin propia

La evolucin de marcaje de M0.4 de vuelta a M0.1 se debe realizar en


Rubn Daro Vsquez Salazar

61

conjunto con el estado M0.5, ya que ambos son condiciones de la


transicin. Entonces para programar la evolucin a M0.1 se deben evaluar
ambos estados M0.4 y M0.5 (Figura 31).

La evolucin de marcaje de M0.4 de vuelta a M0.1 se


debe realizar en conjunto con el estado M0.5, ya que ambos
son condiciones de la transicin. Entonces para programar la
evolucin a M0.1 se deben evaluar ambos estados M0.4 y M0.5
(Figura 31).
Figura 31. Evolucin de la marca de M0.4 y M0.5 de vuelta a M0.1
Figura 31. Evolucin de la marca de M0.4 y M0.5 de vuelta a M0.1

Fuente: Elaboracin propia

Fuente: Elaboracin propia


Con estos 10 segmentos se completa la programacin de la
Con estos 10
se completa
la programacin
de entonces
la red de Petri del
red segmentos
de Petri del Ejemplo
3.3. A continuacin
se presenta
seccin dondese
se presenta
explica paso
a paso una
la programacin
de se explica
Ejemplo 3.3.una
A continuacin
entonces
seccin donde
estos elementos en el programa Simatic Step7.
paso a paso la programacin de estos elementos en el programa Simatic Step7.

3.6.

62

Control lgico programable


Programacin de elementos
digitales en Simatic Step7

La conversin de estos segmentos en lenguaje en escalera se programan al PLC

3.6 Programacin de elementos digitales en Simatic Step7


La conversin de estos segmentos en lenguaje en escalera
se programan al PLC a travs del programa Simatic Step7. Este
programa carga los datos programados a la CPU del PLC utilizando
comunicacin serial o con algn protocolo de comunicacin como
Ethernet o Profibus DP por ejemplo.
Dentro de un bloque de programacin en el software Simatic
Step7 se encuentras las opciones para aadir cada uno de los
elementos que componen el diagrama en escalera (Figura 32).
Figura
32. Bloque
principal vaco con elementos ladder
Figura 32. Bloque
principal
vaco
con elementos ladder

Fuente: Elaboracin propia

Una vez aadidos los elementos y programado el primer


segmento del diagrama (Figura 33) se podr iniciar la programacin
de los elementos restantes

Rubn Daro Vsquez Salazar

63

Figura
33.33.
Bloque
conelementos
elementos
ladder
Figura
Bloqueprincipal
principalprogramado
programado con
ladder

Fuente: Elaboracin propia

3.7 Ejercicios propuestos


1. Elabore la codificacin en lenguaje ladder para los ejercicios
planteados en el numeral 1 de la seccin 2.4.
2. A travs de un pulsador llamado Pulsador1 se encendern 2
pilotos simultneamente. A travs de un Pulsador2, se apagar
el Piloto1 y a travs de un Pulsador3 se apagar el Piloto2, con
lo cual el sistema volver a condiciones iniciales con ambos
pilotos apagados. El proceso debe ser cclico. Obtenga la red
de Petri que modela al sistema y la codificacin en lenguaje
ladder.
3. Para la apertura de una puerta de seguridad, se requiere la
activacin de 3 seales en un orden especfico. Cada seal se
activa o desactiva a travs de un pulsador. Haga la red de Petri
para que el sistema pueda abrirse nicamente en el caso que
los 3 pulsadores se activen en la secuencia correcta; en caso

64

Control lgico programable

contrario, deber iniciar nuevamente y haga la codificacin


en lenguaje ladder. Nota. Suponga que nunca se activar 1
pulsador 2 veces seguidas.

Rubn Daro Vsquez Salazar

65

4. Redes de Petri con temporizadores y contadores

Hasta este momento se han estudiado las seales digitales


y su importancia en los sistemas a eventos discretos. Estas
seales permiten detectar rdenes o mediciones provenientes
de pulsadores, suiches, sensores, etc., y, a travs de la lgica
implementada en el PLC, encender o apagar las salidas tambin
digitales.
Se ha demostrado tambin la forma en que los PLC han
reemplazado los sistemas de control cableados, cambiando dichos
elementos por programacin de bajo costo. Algunos de estos son
los temporizadores y contadores, elementos que tambin se pueden
reemplazar por cdigo PLC, reduciendo costos, conexiones y
espacios en la implementacin de los sistemas de control.
Los temporizadores y los contadores se estudiarn basados
en el lenguaje en escalera para el PLC S7-300 de acuerdo a las
explicaciones dadas en el captulo anterior.
4.1 Temporizadores
Existen varios tipos de temporizadores para la CPU S7-300,
particularmente 5. Las diferencias entre ellos son la forma en
que realizan la temporizacin, permitiendo as lograr diferentes
aplicaciones. Para cada una de ellas es necesario conocer
detalladamente el funcionamiento del temporizador para realizar
la programacin apropiada.
En total son 256 y todos requieren de una seal de entrada
que les indique su activacin o desactivacin, y ellos generan una
salida dependiendo del tipo. Los 5 tipos de temporizadores en
KOP o lenguaje en escalera son (Siemens, 2002):

Rubn Daro Vsquez Salazar

67

4.1.1 Temporizador impulso


El temporizador activa su salida inmediatamente cuando
la entrada es activada. La salida del temporizador permanecer
activa hasta que se desactive la entrada o, en su defecto, hasta que
se cumpla el tiempo preconfigurado.
Figura
impulso..
F
igura 34.
34. Temporizador
Temporizador impulso

Fuente: Siemens, Esquema de contactos (KOP) para S7-300 y S7-400, pg. 164

4.1.2 Temporizador impulso prolongado


El temporizador activa su salida inmediatamente cuando
la entrada es activada. La salida del temporizador permanecer
activa nicamente hasta que se cumpla el tiempo preconfigurado.
Figura
35.35.
Temporizador
impulso
prolongado
Figura
Temporizador
impulso
prolongado

Fuente: Siemens, Esquema de contactos (KOP) para S7-300 y S7-400, pg. 164

68

Control lgico programable

4.1.3 Temporizador con retardo a la conexin


El temporizador activa su salida nicamente un tiempo despus
de haberse activado la entrada y esta ltima haya permanecido
activa durante todo este tiempo. La salida se desactivar cuando
la seal de entrada se desactive.
Figura 36. Temporizador con retardo a la conexin

Figura 36. Temporizador con retardo a la conexin

Fuente: Siemens, Esquema de contactos (KOP) para S7-300 y S7-400, pg. 164

4.1.4 Temporizador con retardo a la conexin (con memoria)


El temporizador activa su salida nicamente un tiempo
despus de haberse activado la entrada, aun si esta ltima fue
desactivada en algn momento.
Figura 37. Temporizador con retardo a la conexin (con memoria)
Figura
37. Temporizador con retardo a la conexin (con memoria)

Fuente: Siemens, Esquema de contactos (KOP) para S7-300 y S7-400, pg. 164

Rubn Daro Vsquez Salazar

69

4.1.5 Temporizador con retardo a la desconexin


Este temporizador se activa simultneamente con su entrada,
y se desactivar nicamente un tiempo despus de haberse
desactivado la entrada, es decir, haya pasado del estado 1 al 0.
Figura 38. Temporizador con retardo a la desconexin

Figura 38. Temporizador con retardo a la desconexin

Fuente: Siemens, Esquema de contactos (KOP) para S7-300 y S7-400, pg. 164

En los tipos de temporizadores se utiliz el nombre en alemn


que se le da en el software Simatic; sin embargo, su nombre
en ingls es ms fcil de recordar. La Tabla 14 muestra estas
equivalencias.
Tabla 14. Equivalencia entre los nombres de los temporizadores
Tipo

Nombre en ingls

Nombre en alemn

Impulso

S_PULSE

S_IMPULS

Impulso prolongado

S_PEXT

S_VIMP

Retardo a la conexin

S_ODT

S_EVERZ

Retardo a la conexin con


memoria

S_ODTS

S_SEVERZ

Retardo a la desconexin

S_OFFDT

S_AVERZ

Los temporizadores se pueden parametrizar y arrancar


simultneamente mediante un bloque, o se pueden arrancar
mediante una bobina. La forma ms comn de utilizacin es
mediante un bloque, aunque en realidad depende del programador,
sus gustos y necesidades.
70

Control lgico programable

utilizacin es mediante un bloque, aunque en realidad depende del programador,


sus gustos y necesidades.
Para obtener los temporizadores basta simplemente con abrir un bloque de
programacin y arrastrarlos al lugar deseado arrastrndolos desde el men
Para obtener los temporizadores basta simplemente con
desplegable abrir
de launizquierda
la lista de temporizadores
39). En esta lista
bloque deenprogramacin
y arrastrarlos al (Figura
lugar deseado
el menydesplegable
la izquierda
en lade arranque
los primerosarrastrndolos
5 elementos desde
son bloques,
los ltimosde
5 son
las bobinas
lista de temporizadores (Figura 39). En esta lista los primeros 5
para cada temporizador.
elementos son bloques, y los ltimos 5 son las bobinas de arranque
para cada temporizador.
Figura 39. Lista desplegable de temporizadores
Figura 39. Lista desplegable de temporizadores

Fuente: Elaboracin propia

Fuente: Elaboracin propia


Para la parametrizacin del temporizador, como se explic
antes, es necesario
hacerlo en formacomo
de bloque.
Los parmetros
Para la parametrizacin
del temporizador,
se explic
antes, es necesario
que se deben configurar en cada temporizador se muestran en la
hacerlo en forma de bloque. Los parmetros que se deben configurar en cada
Tabla 15.
temporizador se muestran en la Tabla 15.
Rubn Daro Vsquez Salazar

57

71

Tabla 15. Parmetros de un temporizador


PARMETRO
S
TV
R
Q
Parmetro
BI

S
BCD
TV
R

DESCRIPCIN

TIPO

Entrada de arranque

Bool

Valor de temporizacin predeterminado

S5T#

Reset del temporizador

Bool

Tabla 15. Parmetros de un temporizador


Estado del temporizador
Descripcinactual
Valor de temporizacin

Entrada
arranque
Tiempode
restante
Valor de temporizacin predeterminado
Reset del temporizador

Bool
T
ipo
Binario (Bi)
Bool
BCD

S5T#
Bool

Ejemplo 4.1: Un
detemporizador
pulso extendido tiene como entrada
Q temporizador
Estado del
Bool a I0.0, a la
BI
Valor
temporizacin
actual con su estado,
Binario (Bi)
salida debe encender
a de
Q0.0
de acuerdo
y su tiempo
BCD
Tiempo restante
predeterminado
es 4 segundos.

BCD

Ejemplo 4.1: Un temporizador de pulso extendido tiene como


entrada a I0.0, a la salida debe encender a Q0.0 de acuerdo con su
La Figura 40 muestra la programacin en KOP, nombrndolo T5 y configurando la
estado, y su tiempo predeterminado es 4 segundos.
variable tipo S5T
con 4 40
segundos.
La Figura
muestra la programacin en KOP, nombrndolo
T5 y configurando la variable tipo S5T con 4 segundos.
Figura
40. 40.
Bloque
deldel
temporizador
extendido
del
Ejemplo
Figura
Bloque
temporizador pulso
pulso extendido
del
Ejemplo
4.1 4.1

Fuente:Elaboracin
Elaboracin propia
Fuente:
propia

72

58programable
Control lgico

Para un programador, es de especial importancia conocer


muy bien el funcionamiento de los temporizadores. Para ello, se
sugiere la experimentacin, ms que la lectura de documentos
extensos en este tema; por tanto, se recomienda realizar la
programacin de varios temporizadores con la estructura del
Ejemplo 4.1, modificar el estado de la entrada y observar el valor
de la salida.
Los contadores poseen una estructura muy similar a los
temporizadores y por esta razn es que normalmente se explican
de forma paralela. A continuacin se explicarn los contadores
para el lenguaje KOP.
4.2 Contadores
Al igual que en el caso de los temporizadores, existen varios
tipos de contadores para la CPU S7-300, particularmente 3;
igualmente, es necesario conocer su funcionamiento de forma
detallada para hacer la apropiada seleccin del tipo necesario y su
correcta implementacin y programacin.
Los contadores requieren de, por lo menos, una seal de
entrada que representa el evento al que se le realiza el contaje
y una salida que representa el estado actual del contador. Los 3
tipos de contadores en KOP (Siemens, 2002) son:
4.2.1 Contador ascendente
Este contador inicia su contaje en cero y lo incrementar a
medida que la entrada CU se active. La entrada CU es exclusiva
para los contadores ascendentes y ejecuta la instruccin de
incrementar el contaje.
4.2.2 Contador descendente
Este contador inicia su contaje en un valor predeterminado y
lo decrementar a medida que la entrada CD se active. La entrada

Rubn Daro Vsquez Salazar

73

CD es exclusiva para los contadores descendentes y ejecuta la


instruccin de decrementar el contaje.
4.2.3 Temporizador ascendente-descendente
Este contador es capaz de realizar las mismas funciones que
los otros 2 tipos de contadores, es decir, es capaz de incrementar
o decrementar su valor de contaje.
Similarmente al caso de los temporizadores, es comn
encontrar los contadores en alemn o en ingls. Para diferenciarlos,
la Tabla 16 muestra las equivalencias.
Tabla 16. Equivalencia entre los nombres de los contadores
Nombre en ale-

Tipo

Nombre en ingls

Ascendente

CU

ZAEHLER

Descendente

CD

Z_VORW

Ascendente-descendente

CUD

Z_RUECK

mn

Los contadores tambin se pueden parametrizar y arrancar


simultneamente mediante un bloque o se pueden arrancar
mediante una bobina. La forma ms comn de utilizacin es
tambin mediante el bloque.
Los contadores se encuentran tambin en el men desplegable
de la izquierda dentro de un bloque de programacin (Figura
41). En esta lista los primeros 3 elementos son bloques y los 3
siguientes son las bobinas de arranque para cada contador.

74

Control lgico programable

Figura 41. Lista desplegable de contadores


Figura 41. Lista desplegable de contadores

Fuente: Elaboracin propia

Fuente: Elaboracin propia

La parametrizacin del contador (Figura 42) se realiza a partir

La parametrizacin
contador
(Figura
se realiza
del bloque,del
como
se muestra
en42)
la Tabla
17. a partir del bloque, como se
muestra en la Tabla 17.

Rubn Daro Vsquez Salazar

75

Figura 42. Parametrizacin


de 42.
unPcontador
Figura
arametrizacin de un contador

Fuente: Elaboracin propia

Tabla 17. Parmetros de un contador


Parmetro

Descripcin

Tipo

No

Nmero del contador

Decimal

CU

Entrada de contaje ascendente

Bool

CD

Entrada de contaje descendente

Bool

Entrada para predeterminar el contador

Bool

PV

Valor numrico introducido en forma de


C#<valor> en el margen comprendido entre
0 y 999

C#

Entrada de puesta a 0

Bool

Estado del contador

Bool

CV

Valor actual del contador, nmero hexadecimal

Hexa

CV_BCD

Valor actual del contador, nmero BCD

BCD

Ejemplo 4.2. Un contador ascendente-descendente se


programa con I0.0 como entrada ascendente, I0.1 entrada de contaje
descendente, I0.2 como entrada SET, valor predeterminado igual
76

Control lgico programable

a 5, I0.3 como entrada RESET; y a las salidas Q0.1 almacena el


estado del contador, MW2 el valor actual en hexadecimal y MW4
en BCD.
La figura 43 muestra la programacin de este contador en
KOP, llamado C5.
Figura 43.
Bloque
del contador
ascendente-descendente
del Ejemplo
4.2
Figura
43. Bloque
del contador
ascendente-descendente del Ejemplo
4.2

Fuente:
Elaboracin propia
Fuente:
Elaboracin
propia

Ejemplo 4.3. Un piloto se debe encender de forma intermitente


con un TON=500ms y un TOFF0500ms. Una vez el piloto haya
Ejemplo 4.3.
piloto se10 debe
de forma
intermitente
con un
sidoUn
intermitente
veces, encender
se debe apagar.
La descripcin
se
en:
TON=500mspuede
y unresumir
TOFF0500ms.
Una vez el piloto haya sido intermitente 10
veces, se debe apagar. La descripcin se puede resumir en:

77
Rubn
Daro Vsquez a
Salazar
Condiciones iniciales. Piloto
conectado
Q124.0 est apagado

Si el sistema se encuentra en condiciones iniciales y se presiona el


pulsador I124.0, entonces el piloto se enciende

Condiciones iniciales. Piloto conectado a Q124.0 est


apagado
Si el sistema se encuentra en condiciones iniciales y se
presiona el pulsador I124.0, entonces el piloto se enciende
Si el piloto est encendido y pasan 500ms, se apaga,
Si el piloto est apagado y pasan 500ms, se enciende.
Una vez haya encendido 10 veces el piloto, entonces el
sistema vuelve a condiciones iniciales.
La red de Petri de la Figura 44 muestra un sistema que cumple
con la descripcin dada, y la Tabla 18 muestra el inventario de
seales utilizadas:
Figura 44. Red de Petri delFigura
ejemplo
4.3de Petri del ejemplo 4.3
44. Red

Fuente: Elaboracin propia

78

Control lgico programable

Tabla 18. Inventario de seales para el ejemplo 4.3


Variable

Direccin

Condicin

Piloto

Q124.0

Pulsador

I124.0

Condiciones iniciales

M0.0

Apaga la salida Q124.0 y


enciende el Contador 1 (C1)

Piloto Encendido
(intermitente)

M0.1

Enciende la salida Q124.0

Piloto Apagado
(intermitente)

M0.2

Apaga la salida Q124.0

T1

Condicin de disparo
I124.0

T2

Condicin de disparo
Temporizador 1 con 500ms

T3

Condicin de disparo
Temporizador 1 con 500ms

T4

Condicin de disparo C1 ha
finalizado la cuenta

Rubn Daro Vsquez Salazar

79

T4

Condicin de disparo C1 ha finalizado la cuen

Figura 45. FProgramacin


enenlenguaje
ladder
del ejemplo
4.3
igura 45. Programacin
lenguaje ladder
del ejemplo
4.3

Fuente: Elaboracin propia

Fuente: Elaboracin propia


80

Control lgico programable

s ejemplos se encuentran disponibles en lvarez (2007).

Ms ejemplos se encuentran disponibles en lvarez (2007).


4.3 Ejercicios propuestos
1. Disee la programacin como se muestra en el ejemplo 4.2
y simlelo, utilizando el PLC virtual proporcionado con
el software Simatic Step-7, llamado PLCSim. En esta
simulacin modifique las entradas y observando el valor
de las salidas. Obtenga sus propias conclusiones. Adems,
cambie el tipo de contador y realice el mismo procedimiento.
Obtenga diferencias entre los diferentes contadores.
2. Elabore la codificacin en lenguaje ladder del ejemplo 4.3 y
simlelo con el PLC virtual.
3. Modifique el ejemplo 4.3 para que se enciendan 2 pilotos
alternadamente durante 15 veces.

Rubn Daro Vsquez Salazar

81

5. Redes de Petri con variables analgicas

Las variables analgicas, por definicin, son aquellas que


pueden tomar infinitos valores dentro de cierto rango. En el PLC,
aunque las seales provengan de un rango de esta naturaleza, son
transformadas a corriente o voltaje a travs de un transductor y
llevadas al PLC por medio de un conversor anlogo digital. En
general, cuando se efecta transformacin a voltaje se utilizan
rangos de 0 a 5V, 0 a 10V, -5 a 5V o -10 a 10V; en el caso de
corriente, es comn la utilizacin de los rangos 0-20mA o 4-20mA.
5.1 Tipos de datos
Hasta el momento se han trabajado datos que pueden tomar
dos estados (BOOL), que pueden realizar contajes (COUNTER)
o que pueden hacer temporizaciones (TIMER), pero en realidad,
en un ambiente analgico es importante conocer bien el
procesamiento que se le da a estas variables en un PLC.
Algunos de los tipos de datos, su respectivo tamao en bits y
descripcin se muestran en la Tabla 19:

Rubn Daro Vsquez Salazar

83

Tabla 19. Tipos de datos en el PLC


Tipo de dato

Tamao

Descripcin

Rango

BOOL

1 bit

Variable lgica

01

BYTE

8 bits

Conjunto de 8 bits

0 a 255

WORD

16 bits

Conjunto de 16 bits

0 a 65535

DWORD

32 bits

Conjunto de 32 bits

0 a 232 - 1

INT

16 bits

Nmero entero con signo

-32768 a 32767

DINT

32 bits

Nmero entero doble con signo

-232 a 232 - 1

REAL

32 bits

Nmero real (con decimales)

S5TIME

16 bits

Duracin

CHAR

8 bits

Carcter

Cadena de caracteres

STRING

5.2 Conversin de datos


En el PLC no est permitido hacer operaciones con 2 o ms
datos que tienen diferentes tipos. Por ejemplo, no se pueden hacer
operaciones de multiplicacin entre un entero (16 bits) y un real
(32 bits), por lo que es necesario convertir este entero en un real.
Es posible hacer la conversin de real a entero, pero el proceso
de redondeo y reduccin de bits lleva consigo una reduccin de
la precisin. Por lo tanto, la conversin de entero a real es ms
recomendable.
No existe un bloque que permita hacer esto, sino que se hace
necesaria la utilizacin de 2 bloques, llamados I_DI y DI_R
(Figura 46). El bloque I_DI convierte MW0 de 16 bits en otro
entero MD2 de 32bits, mientras que el bloque DI_R convierte el
entero MD2 de 32bits en un real MD6 de 32 bits.

84

Control lgico programable

Figura 46. Conversin


de C
entero
(INT)dea entero
real (REAL)
Figura 46.
onversin
(INT) a real (REAL)

Fuente: Elaboracin propia

5.3 Comparadores
Algunas operaciones de comparacin son tiles, debido
a que permiten cerrar un contacto o abrirlo, si se cumple o no
la condicin de comparacin. La comparacin se hace entre 2
variables o entre 1 variable y un valor fijo. Algunos de ellos se
muestran en la Tabla 20:
Tabla 20. Comparadores
Condicin de Compara-

Nombre

Smbolo

Traduccin al Ingls

EQ

EQual

Igual

NE

<>

Not Equal

Diferente

GT

>

Greater Than

Mayor que

LT

<

Less Than

Menor que

GE

>=

Greater or Equal than

Mayor o igual que

LE

<=

Less or Equal than

Menor o igual que

cin

5.4 Operaciones aritmticas y transferencia


5.4.1 Operaciones aritmticas con enteros
Las operaciones aritmticas con enteros requieren del uso de
bloques para los tipos de datos entero y doble entero (Figura 47).

Rubn Daro Vsquez Salazar

46

85

Figura 47. Lista desplegable de bloques de operacin en coma fija


Figura 47. Lista desplegable de bloques de operacin en coma fija

Fuente: Elaboracin propia

5.4.2 Operaciones aritmticas en coma flotante (Figura 48)


Figura 48. Lista desplegable de bloques de operacin en coma flotante

Fuente: Elaboracin propia

86

Control lgico programable

5.4.3 Transferencia
El bloque de transferencia sirve nicamente para mover datos
(Figura 49)
Figura 49. Lista del bloque de transferencia de datos
Figura 49. Lista del bloque de transferencia de datos

Fuente: Elaboracin propia

Fuente: Elaboracin propia

5.5 Escalizacin
La escalizacin es el proceso por el cual el valor analgico
de entrada (voltaje, corriente, etc.) ledo por un mdulo, es
convertido en un valor en unidades de proceso (C, rpm, lts, kgs,
etc.) dentro de unos lmites fijados por el usuario.
Valor usuario: es el valor procesado a partir del valor PLC.
Est dado en las unidades de la variable del proceso (C, rev/min,
psi, etc.).
Valor PLC: es el dato almacenado en el PLC a travs del
convertidor A/D y su valor depende del nmero de bits A/D y del
rango de la variable medida.
Ejemplo 5.1: Si se tiene un motor cuya velocidad nominal es
1500rpm y sta velocidad es leda por el PLC a travs de PIW752,
los valores seran:

Rubn Daro Vsquez Salazar

87

Velocidad 0rpm
Velocidad 1500rpm

Valor de la entrada 0
Valor de la entrada 27648

Utilizando la ecuacin de una recta.


V _ usuario = pendiente * valor _ PLC

Reemplazando los puntos conocidos:


pendiente =

(Figura 50).

1500
= 0.0543 . Recta con cruce por el origen
27648

Figura 50.Relacin lineal entre los datos de escalizacin

Figura 50.Relacin lineal entre los datos de escalizacin

Fuente: Elaboracin propia

hi lo
out =
(in k1) lo
k 2 k1
Ntese que este valor de la pendiente es tipo real, por lo cual
las variables tienen que estar declaradas previamente como reales.
Para esto, se utilizan los bloques I_DI y DI_R. La conversin no
se le puede aplicar directamente a la entrada; se requiere utilizar
reas de memoria M para la representacin de esta entrada entera
en valores tipo reales.
88

Control lgico programable

Este proceso normalmente no se debe realizar a partir de


la ecuacin de una recta; para ello existe un bloque de funcin
llamado Scale Convert. La ruta para su ubicacin es en
Librerias - standard library - TI S7 converting block - FC 105
Scale Convert.
Este bloque realiza una conversin desde 0 a 27648.0 en la
entrada para escala unipolar, y desde -27648.0 hasta 27648.0 para
una bipolar.
La parametrizacin del bloque es como se muestra en la
Figura 51
FiguraF51.
Bloque de conversin de escala FC105 (Scale Convert)
igura 51. Bloque de conversin de escala FC105 (Scale Convert)

Fuente: Elaboracin propia

Donde:
EN se debe activar para poder habilitar el bloque
IN es la entrada que se quiere medir en valor PLC
HI LIM Valor mximo en valor usuario
LO LIM Valor mnimo en valor usuario

Rubn Daro Vsquez Salazar

89

BIPOLAR Activo si se quiere tener en cuenta valores


negativos, Inactivo si slo son positivos.
OUT Resultado de la conversin a escala tipo real.
RET VAL es 0 si no tiene errores, un valor diferente se debe
consultar en gua de errores. Se guarda en una variable tipo entera.
5.6 Rampas
Se quiere arrancar y controlar velocidad de un motor a travs
de una rampa. El motor est controlado por PLC a travs de una
salida analgica que vara de 0-27648 entregando un rango de
voltajes entre 0-10V.
Se definen los siguientes parmetros:


Velocidad nominal del motor: 1640 rpm.


Velocidad deseada: Vdes = 1640 rpm.
Tiempo deseado: Tdes = 10s. Es el tiempo determinado para
alcanzar el valor deseado de velocidad.
Figura 52. Velocidad contra Tiempo (continua)
Figura 52. Velocidad contra Tiempo (continua)

Fuente: Elaboracin propia

90

Control lgico programable

Sin embargo, en el PLC es imposible aumentar continuamente


un valor en la salida analgica, por lo que se requiere incrementar
un valor pequeo (V) a intervalos de tiempo pequeos (t).
Se define un intervalo pequeo de tiempo t = 0.2s = 200ms = 1 s
5

El valor deseado de la salida es V plcdes = 27648 y el valor


actual es V plc = 0 para la realizacin de la rampa que partir de
velocidad 0 hasta alcanzar la velocidad mxima.
A partir de t, V plcdes , V plc y Tdes es posible calcular el
act

act

intervalo de voltaje V que se aumentar cada instante de tiempo,


as:
V =

V plcdes V plcact
Tdes

T V =

27648-0 1
27648
= 552.96 552
seg =
10 seg 5
50

Para V se hizo una aproximacin, por lo tanto no ser posible


alcanzar el valor deseado a partir de escalones de altura de V = 552,
as que con la rampa slo se alcanzar un valor aproximado, calculado
as:

V plcdes _ aprox = V plcact + V *50 = 0 + 552*50 = 27600

Es decir, si la rampa hace 50 escalones se alcanzar un valor


de 27600, si se hicieran 51 escalones el valor sera 28152, caso
en el cual se sobrepasara el valor deseado. Por tal motivo la
rampa debe llegar nicamente hasta el valor deseado aproximado
V plcdes _ aprox = 27600 y luego, al terminar la rampa, alcanzar el valor
deseado de 27648, haciendo un ltimo escaln de 48 unidades en
forma manual.

Rubn Daro Vsquez Salazar

91

Figura 53. Velocidad contra Tiempo (discreto)


Figura 53. Velocidad contra Tiempo (discreto)

Fuente: Elaboracin propia

Una vez cumplidas las condiciones para arrancar el motor, se


debe tener en cuenta la siguiente especificacin de funcionamiento:
En total, la rampa utilizar 3 lugares.
1. El primer lugar ser de ingreso a la rampa, donde se utiliza
un comparador para verificar si todava no se ha alcanzado
el valor PLC deseado aproximado ( V plc
= 27600 ). Esta
verificacin se debe realizar con un temporizador en serie
para garantizar la correcta evolucin del marcaje en el PLC;
se recomienda un temporizador de 10ms. En este lugar,
adicionalmente, se deber encender el sentido de giro a partir
de una salida digital. Despus de verificarse la comparacin y
el cumplimiento del temporizador, se debe evolucionar a una
marca de incremento de velocidad.
2. El segundo lugar ser el de incremento de velocidad, donde
se aumenta la velocidad un V. Como la marca permanece
en este lugar un tiempo de t-10ms, la operacin de suma
se debe efectuar a travs de un flanco positivo para que esta
operacin se lleve a cabo nicamente una vez por cada ciclo
de rampa. Despus del tiempo de espera se regresa al lugar 1.
des _ aprox

92

Control lgico programable

3. Cuando se est nuevamente en el lugar 1 hay dos opciones:


volver a ingresar con el cumplimiento de las condiciones
para evolucionar al lugar 2 o salir de la rampa porque ya se
alcanz el valor PLC deseado aproximado. Para tal caso, se
evolucionar al lugar 3 de salida de la rampa.
4. El lugar 3 de salida de la rampa se encarga de transferir el valor
de PLC deseado para corregir la aproximacin, entonces sus
funciones principales son permitir la continuidad del proceso
al finalizarse una rampa y corregir el error de aproximacin.
Nota. El ciclo de rampa ( tciclo _ rampa ) se mide como el tiempo
que se demora la marca para evolucionar del lugar 1 al lugar 2 y
regresar al lugar 1. Para este caso, para evolucionar de 1 a 2 se
demor un tiempo de 10ms, mientras que para evolucionar de 2
a 1 se demor t-10ms, por lo cual tciclo _ rampa = 10ms + ( t 10ms ) = t ,
que cumplie las especificaciones de tiempo para incremento en
la rampa.
El modelo en redes de Petri para este procedimiento se
muestra en la Figura 54.
Figura 54. Modelo en redes de Petri para la rampa
Figura 54. Modelo en redes de Petri para la rampa

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

93

Se deja como ejercicio al lector la traduccin a lenguaje


ladder y la conversin del valor de velocidad deseado a velocidad
PLC usando o no el bloque Scale Convert, el cual es necesario
nicamente para visualizacin de la velocidad en rpms a partir de
la velocidad en valor PLC.
Es importante notar que la salida no puede ser modificada
a travs de operadores matemticos; as que se sugiere el uso
de reas de memoria de 16 bits (INT) para realizar los clculos
numricos, por ejemplo el rea MW10, y luego transferrselos a
la salida a travs de un bloque MOVE.
Ejemplo 5.2: Se desea construir una rampa de subida y bajada
en lenguaje ladder para el control de velocidad de un motor que
gira a la derecha. El tiempo de subida hasta la velocidad nominal
es de 4seg y el de bajada es de 3seg. El motor debe permanecer en
velocidad nominal durante 3seg y el t = 240ms . La secuencia se
debe repetir 2 veces.
Los clculos segn el procedimiento anteriormente descrito
son:
Vsubida =

27648 0
0.24 = 1658.88 1658
4

V plcdes _ aprox _ subida = 0 + 1658*16 = 26528


Vbajada =

0 27648
0.24 = 2211.84 2211
3

V plcdes _ aprox _ bajada = 27648 + ( 2211*12 ) = 1116

A continuacin la solucin de este ejercicio en lenguaje


ladder:

94

Control lgico programable

A continuacin la solucin de este ejercicio en lenguaje ladder:


La tabla de smbolos para la definicin de las variables:
Figura 55. Tabla de smbolos del ejemplo 5.2
La tabla de smbolos para la definicin de las variables:
Figura
55. Tabla de smbolos del ejemplo 5.2
Figura 55. Tabla de smbolos del ejemplo 5.2

Fuente: Elaboracin propia


Fuente: Elaboracin propia

El bloque OB100 para el marcaje inicial M0.0 con marca:


El bloque OB100 para el marcaje inicial M0.0 con marca:
Figura 56. Bloque OB100 del ejemplo 5.2
Figura 56. Bloque OB100 del ejemplo 5.2

Fuente: Elaboracin propia

Fuente: Elaboracin propia


Los segmentos 1 a 17 (Figura 57) programados en el bloque
principal
OB1
segn 57)
la metodologa
explicada
en el OB1 segn
Los segmentos
1 a 17
(Figura
programados
en elanteriormente
bloque principal
ejemplo 3.3 la cual, para recordar un poco, consiste bsicamente
la metodologa explicada anteriormente en el ejemplo 3.3 la cual, para recordar un
en los siguientes pasos:
poco, consiste bsicamente en los siguientes pasos:
Programar en un segmento la evolucin de una marca. Esta
evolucin depende de la condicin de la transicin. Entonces
cada transicin generar un segmento de programacin.
79

Rubn Daro Vsquez Salazar

95

En un segmento diferente programar las acciones que cada


estado tiene asociadas.
En el ejemplo 3.3 se program cada uno de estos pasos de
forma intercalada, es decir, se evoluciona a un nuevo estado y
luego se programa la accin asociada a este estado. En este ejemplo
5.2 se hizo primero la programacin de todas las transiciones y
luego al final del cdigo se programaron las acciones asociadas a
cada estado.
Esta diferencia en programacin no tiene ninguna diferencia
funcional, y demuestra la versatilidad de las redes de Petri al
poderse realizar el mismo cdigo en diferente orden obteniendo
el mismo resultado.
Figura 57. Programacin de segmentos del bloque OB1 para el ejemplo 5.2

96

Control lgico programable

57

Rubn Daro Vsquez Salazar

97

58

98

Control lgico programable

Fuente: Elaboracin propia

Rubn Daro Vsquez Salazar

59

99

5.7

ejerCiCios propuestos

1. Comparadores
a. Dada una entrada de pt100 en la direccin pIW752 del
plC genere alarmas dependiendo de la temperatura t,
as:
i encender la salida Q124.0 que representa un piloto
si 80 T < 95
ii. encender la salida Q124.0 que representa un
zumbador si 95 T < 100
iii. encender ambas salidas si T 110
2. escalizacin
a. Dada una entrada de pt100 en la direccin pIW752
del plC, escalice este valor para un valor usuario de
0-750C utilizando la ecuacin de la recta y el bloque de
escalizacin Scale Convert. Compare los resultados
b. Dada una velocidad de un motor en la memoria mW10,
convierta este valor a
i. Valor usuario en rpm, para un rango de 0-1500
ii. Valor usuario en hz, para un rango de 0-60
3. rampas
a. realizar 2 veces la siguiente secuencia

100

ContRol lgiCo pRogRamable

3. Rampas
a. Realizar 2 veces la siguiente secuencia

b. realizar 3 veces la siguiente secuencia


b. Realizar 3 veces la siguiente secuencia

84

Rubn DaRo Vsquez salazaR

101

Bibliografa
lvarez, M. (2007). Controladores Lgicos. Editorial Marcombo. Barcelona,
Espaa. ISBN-10:84-269-1347-5.
Balcells, J. y Romeral, J. (1998). Autmatas Programables. Ed. Alfaomega.
Mxico DF, Mxico.
Cassandras, C. y Lafortune, S. (2008). Introduction to Discrete Event Systems.
Springer Science+Business Media, LLC. 2nd Edition.
Mandado, E., Acevedo, J., Fernndez, C., Armesto, J. y Prez, S. (2006).
Autmtas Programables Entorno y Aplicaciones. Madrid, Espaa. Ed.
Thomson. ISBN: 84-9732-328-9.
Medina, C. y Gonzlez, C. (2003). Modelamiento de controladores lgicos
mediante el uso de redes de Petri temporizadas interpretadas por periferia.
Tesis de pregrado, Facultad de Minas, Universidad Nacional de Colombia,
sede Medelln.
Siemens AG (2002). Esquema de contactos (KOP) para S7-300 y S7-400.
Documentacin para la referencia 6ES7810-4CA06-8DR0. Edicin
12/2002.
Zapata, G. y Carrasco, E. (2002) Estructuras generalizadas para Controladores
Lgicos modeladas mediante Redes de Petri.

Rubn Daro Vsquez Salazar

103

Control lgico programable

se termin de imprimir en diciembre de 2010.


Para su elaboracin se utiliz papel Bond de 70 g,
en pginas interiores, y cartulina Propalcote 240 g para la cartula.
Las fuentes tipogrficas empleadas son Times New Roman 11 puntos,
en texto corrido, y Myriad Pro 14 puntos en ttulos.

INSTITUTO TECNOLGICO METROPOLITANO


Direccin Fondo Editorial

Serie TEXTOS ACADMICOS


Publicaciones de nuestros docentes para los estudiantes de Colombia!

Fundamentos de Legislacin Laboral


Mnica Luca Granda Viveros

Gestin de mantenimiento hospitalario e industrial.


tendencias actuales
William Orozco Murillo, compilador

Aprendiendo a ser el mejor


Yudi Amparo Marn lvarez

El Lenguaje Musical
Elkin Prez lvarez
Fundamentos tericos de la armona
Elkin Prez lvarez

FUNCIONES REALES CON MATLAB


Yolanda lvarez Ros / Gloria Mara Daz Londoo

Estudio del Trabajo: Notas de clase


Mara del Roco Quesada Castro / William Villa Arenas

INTRODUCCIN AL MANTENIMIENTO BIOMDICO


Luis Fernando Castrilln Gallego

TICA, INNOVACIN Y ESTTICA


Marta Palacio Sierra / Ral Domnguez Rendn / Hctor Cardona Carmona
ESTDISTICA BSICA
Adriana Guerrero / Mara Victoria Buitrago / Mara de los ngeles Curieses
PRESUPUESTO Y PROGRAMACIN DE OBRAS CIVILES
Sergio Andrs Arboleda Lpez

Graficar con AUTOCAD


John Jairo Garca Mora
ACSTICA: LA CIENCIA DEL SONIDO
Ana Mara Jaramillo Jaramillo
INTRODUCCIN DE ERRORES EN LA MEDICIN
Adriana Guerrero Pea / Gloria Mara Daz Londoo
METROLOGA. ASEGURAMIENTO METROLGICO industrial. Tomo I
Jaime Restrepo Daz

NEUMTICA BSICA
Luis Giovanny Berro Zabala / Sandra Ruth Ochoa Gmez

Elementos bsicos de Ingeniera del Software


Diego Guerrero Pea
ADMINISTRACIN DE SISTEMAS DE COSTOS POR RDENES
Armando Garca Muoz
MANUAL DE PRCTICAS PROFESIONALES
Silvia Elena Rivera Escobar

GEOMETRA INTEGRADA
Len Daro Fernndez Betancur / Gustavo Saldarriaga Rivera

QUMICA BSICA. Prcticas de laboratorio


Margarita Patio Jaramillo
PRINCIPIOS DE ADMINISTRACIN
Daro Hurtado Cuartas
CLCULO DIFERENCIAL. Lmites y derivadas
Sergio Alberto Alarcn Vasco / Mara Cristina Gonzlez Mazuelo
Hernando Manuel Quintana vila

FSICA MECNICA. Ejercicios resueltos


richard Hamilton Benavides Palacios / Claudia Milena Serpa Imbett

CARTILLA TCNICA DEL DESFIBRILADOR


William Orozco Murillo / Edward Cardona Montoya

CONSULTA Y ACTUALIZACIN DE BASES DE DATOS MEDIANTE EQUIPOS MVILES


Jaime Vsquez Rojas
INTRODUCCIN A LA PROGRAMACIN EN JAVA
Fray Len Osorio Rivera
BASES DE DATOS RELACIONALES. TEORA Y PRCTICA
Fray Len Osorio Rivera
MATEMTICAS ESPECIALES PARA INGENIERA. NIVEL I
Martha Cecilia Guzmn Zapata
METROLOGA: ASEGURAMIENTO METROLGICO INDUSTRIAL. TOMO II
Jaime Restrepo Daz
MATEMTICAS ESPECIALES PARA INGENIERA. NIVEL II
Diego Agudelo Torres
ESPAOL AL DA. NORMAS DE USO COMN
Humberto de la Cruz Arroyave
FSICA MECNICA. CONCEPTOS BSICOS Y PROBLEMAS
Javier Vargas / Iliana Ramrez / Santiago Prez / Jairo Madrigal
MATERIALES INDUSTRIALES. TEORA Y APLICACIONES
Ligia Mara Vlez Agudelo
LGICA Y PROGRAMACIN ORIENTADA A OBJETOS:
INICIO AL DESARROLLO DEL SOFTWARE
Fray Len Osorio Rivera
SECCIONES CNICAS: UNA MIRADA DESDE LA DERIVACIN IMPLCITA
Maria Cristina Gonzlez Mazuelo / Juan Guillermo Paniagua Castrilln
Gustavo Adolfo Patio Jaramillo
SENTENCIAS BSICAS USADAS EN LA PROGRAMACIN DE COMPUTADORES
Roberto Carlos Guevara Calume
FUNDAMENTOS DE LA TEORA DE LA INFORMACIN
Mauricio Correa Villa
ANLISIS DE SEALES CON LAS TRANSFORMADAS DE FOURIER, GABOR Y ONDITAS
Horacio Arango Marn

ApLICACIN DE GEOGEBRA EN LA GEOMETRA INTEGRADA


Len Daro Fernndez Betancur / Gustavo Saldarriaga Rivera

GEOMETRA INTERACTIVA
Grupos GNOMON-ELIME.CEID-ADIDA

CLCULO INTEGRAL
Yolanda lvarez Ros / Jorge Agudelo Quiceno

APLICACIONES MATEMTICAS EN LA INGENIERA


Jos Benjamn Gallego Alzate

Procesos productivos y administrativos


Yudi Amparo Marn lvarez / Melba Elena Marn Ramrez

MANUAL BSICO DE MATEMTICAS FINANCIERAS


Luis Fernando Romn Henao

FUNDAMENTO SOCIAL DEL DERECHO


Mnica Luca Granda Viveros / Juan Fernando Gmez Gutirrez
Introduccin a las comunicaciones industriales con profibus
Aplicaciones con controladores lgicos programables y variadores de velocidad
Juan Guillermo Meja Arango

Labview prctico con aplicaciones


Alexander Arias Londoo / Paula Andrea Ortiz Valencia
mtodos numricos

Hctor Tabares Ospina

Qumica bsica. Prcticas de laboratorio



Margarita Patio Jaramillo
Nlkar Yar Valds Romaa

Introduccin al R

Juan Carlos Correa Morales


Carlos Javier Barrera Causil

También podría gustarte