Está en la página 1de 76

MANUAL TCNICO DE PROGRAMACIN DE MICRO PLC's SIEMENS S7-200

BASADO EN MODELOS DE REDES DE PETRI BAJO EL LENGUAJE DE


PROGRAMACIN "KOP"

AUTOR
JUAN FELIPE MEDINA ARBOLEDA

Trabajo de Grado presentado como requisito


Para obtener el ttulo de
Ingeniero de Control

DIRECTOR
I.E., M.Sc. Germn Daro Zapata Madrigal

UNIVERSIDAD NACIONAL DE COLOMBIA


FACULTAD DE MINAS
SEDE MEDELLN
2011

AGRADECIMIENTOS
A Dios por la salud que me otorg permitindome finalizar la redaccin de este
documento.
A mi familia por su apoyo incondicional y su ayuda durante toda mi carrera.
A Germn Zapata por su acompaamiento y direccin durante el desarrollo de este
documento.
A la Ingeniera Eliana Carrasco por su enseanza da a da y su apoyo para la
implementacin de este documento dentro del proceso productivo en SIMAC S.A.S

TABLA DE CONTENIDO
OBJETIVO GENERAL ....................................................................................................... 7
OBJETIVOS ESPECFICOS .......................................................................................... 7
INTRODUCCIN ............................................................................................................... 8
CAPTULO 01 - CONCEPTUALIZACIN .......................................................................... 9
CONSIDERACIONES GENERALES .............................................................................. 9
NORMA IEC 61131-3 ................................................................................................... 10
ESTRUCTURA FUNCIONAL DE UN SISTEMA DE AUTMATA PROGRAMABLE. 10
FUNCIN DE INTERFAZ CON LOS SENSORES Y ACTUADORES ....................... 11
FUNCIN DE INTERFAZ HOMBRE-MQUINA (HMI) ............................................. 12
LOS LENGUAJES GRFICOS DEL ESTNDAR IEC 61131-3 ................................ 12
CAPTULO 02 - CONCEPTOS Y HERRAMIENTAS BSICAS DE PROGRAMACIN ... 13
ESTRUCTURA DE LAS REDES DE PETRI ................................................................. 13
ELEMENTOS DE UNA RED DE PETRI ................................................................... 13
ESQUEMAS O TIPOLOGAS DE LAS REDES DE PETRI ....................................... 15
ERRORES DE REPRESENTACIN............................................................................ 16
REDES DE PETRI TEMPORIZADAS E INTERPRETADAS POR PERIFERIA (IPN) ... 18
REDES DE PETRI JERRQUICAS (HPN) .................................................................. 20
TIPO DE VARIABLES .................................................................................................. 24
DIRECCIONAMIENTO ................................................................................................. 25
DIRECCIONAMIENTO DIRECTO ............................................................................ 25
DIRECCIONAMIENTO INDIRECTO ......................................................................... 27
DIRECCIONAMIENTO SIMBLICO ......................................................................... 28
DOCUMENTACIN ..................................................................................................... 29
ESTRUCTURA DEL PROGRAMA ............................................................................... 30
FUNCIONES (FC - SUBRUTINAS) .......................................................................... 30
BLOQUES DE FUNCIONES (FB)............................................................................. 31
BLOQUE PRINCIPAL ............................................................................................... 31
CAPTULO 03 MODOS DE OPERACIN .................................................................... 35
PRELIMINAR ............................................................................................................... 35
SELECTOR MODO DE OPERACIN.......................................................................... 35
MODO MANUAL .......................................................................................................... 40
PROGRAMACIN MODO MANUAL ........................................................................ 40

MODO SEMIAUTOMTICO......................................................................................... 45
PROGRAMACIN MODO SEMIAUTOMTICO ....................................................... 45
MODO AUTOMTICO ................................................................................................. 46
PROGRAMACIN PARA MODO AUTOMTICO ..................................................... 46
CODIFICACIN DE LA RED DE PETRI................................................................... 47
ACTIVACIN DE LAS SALIDAS EN MODO SEMI -AUTOMTICO Y AUTOMTICO
................................................................................................................................. 52
MODO ESPECIAL DE OPERACIN PASO A PASO ............................................... 56
CAPTULO 04 MARCAJE INICIAL Y CONDICIONES INICIALES ................................ 59
MARCAJE INICIAL ...................................................................................................... 59
CODIFICACIN MARCAJE INICIAL ............................................................................ 60
CONDICIONES INICIALES .......................................................................................... 61
CAPTULO 05 - TEMPORIZADORES, CONTADORES Y TRANSICIONES
INSTANTNEAS ............................................................................................................. 63
TEMPORIZADORES.................................................................................................... 63
TIPOS DE TEMPORIZADORES............................................................................... 67
CONTADORES ............................................................................................................ 70
TIPOS DE CONTADORES ....................................................................................... 71
TRANSICIONES INSTANTNEAS .............................................................................. 74
CONCLUSIONES ............................................................................................................ 75
BIBLIOGRAFA................................................................................................................ 76

TABLAS
Tabla 1. Tipos de Datos ................................................................................................... 24
Tabla 2. reas de Memoria .............................................................................................. 25
Tabla 3. Direccionamiento Simblico - Entradas Digitales ............................................... 28
Tabla 4. Direccionamiento Simblico - Salidas Digitales .................................................. 28
Tabla 5. Direccionamiento Simblico - Marcas ................................................................ 28
Tabla 6. Direccionamiento Simblico - Variables V .......................................................... 29
Tabla 7. Direccionamiento Simblico - Temporizadores .................................................. 29
Tabla 8. Direccionamiento Simblico - Contadores.......................................................... 29

ILUSTRACIONES
Ilustracin 1. Estructura Funcional del Sistema de un Autmata Programable. ............... 11
Ilustracin 2. Funcin interfaz Sensores y Actuadores. .................................................... 11

Ilustracin 3. Funcin interfaz Hombre-Mquina .............................................................. 12


Ilustracin 4. Elementos de una Red de Petri .................................................................. 14
Ilustracin 5. Conjunto de lugares de entrada a t1 ........................................................... 14
Ilustracin 6. Conjunto de transiciones de entrada a P1 .................................................. 14
Ilustracin 7. Conjunto de lugares de salida de t1 ............................................................ 15
Ilustracin 8. Conjunto de transiciones de salida de P1 ................................................... 15
Ilustracin 9. Red de Petri Secuencial ............................................................................. 15
Ilustracin 10. Bifurcacin en un Lugar ............................................................................ 15
Ilustracin 11. Bifurcacin en una Transicin ................................................................... 16
Ilustracin 12. Sincronizacin .......................................................................................... 16
Ilustracin 13. Errores de Representacin 1 (Redes de Petri).......................................... 17
Ilustracin 14. Errores de Representacin 2 (Redes de Petri).......................................... 17
Ilustracin 15. Ejemplo Ilustrativo 1 - Redes de Petri Temporizadas e Interpretadas por
Periferia (IPN) .................................................................................................................. 18
Ilustracin 16. Red de Petri - Ejemplo Ilustrativo 1 ........................................................... 19
Ilustracin 17. Estructura de las Redes de Petri Jerrquicas ........................................... 20
Ilustracin 18. Ejemplo Ilustrativo 2 - Redes de Petri Jerrquicas .................................... 21
Ilustracin 19. Red de Petri Principal - Ejemplo Ilustrativo 2 ............................................ 22
Ilustracin 20. Subred SBR 0 - Ejemplo Ilustrativo 2 ........................................................ 22
Ilustracin 21. Subred SBR 1 - Ejemplo Ilustrativo 2 ........................................................ 23
Ilustracin 22. Subrutina Reutilizable 0 - Ejemplo Ilustrativo 2 ......................................... 23
Ilustracin 23. Subrutina Reutilizable 1- Ejemplo Ilustrativo 2 ......................................... 24
Ilustracin 24. Direccionamiento Directo - Direccionar a un Bit ........................................ 26
Ilustracin 25. Direccionamiento Directo - Direccionar a un Byte, Word o DobleWord ..... 27
Ilustracin 26. Llamado Estructural a Funciones .............................................................. 32
Ilustracin 27. Esquema de Bloques en Software de Programacin Step7/Microwin ....... 33
Ilustracin 28. Llamado Condicional e Incondicional de Subrutinas en Software de
Programacin Step7/Microwin ......................................................................................... 34
Ilustracin 29. Selector de Modo de Operacin Fsico ..................................................... 36
Ilustracin 30. Selector Modo Operacin desde Pantalla (Ms de 2 opciones) ................ 37
Ilustracin 31. Selector 1 Modo Operacin desde Pantalla (2 opciones).......................... 37
Ilustracin 32. Selector 2 Modo Operacin desde Pantalla (2 opciones).......................... 37
Ilustracin 33. Evaluacin Posicin Selector de Modo de Operacin Fsico 3 Posiciones en
Bloque Principal (Main) .................................................................................................... 38
Ilustracin 34. Evaluacin Posicin Selector de Modo de Operacin Fsico 2 Posiciones en
Bloque Principal (Main) .................................................................................................... 38
Ilustracin 35. Evaluacin Modo de Operacin por pantalla 3 Posiciones en Bloque
Principal (Main) ................................................................................................................ 39
Ilustracin 36. Evaluacin Modo de Operacin por pantalla 2 Posiciones en Bloque
Principal (Main) ................................................................................................................ 39
Ilustracin 37. Ejemplo Ilustrativo 3 - Modo Operacin Manual ........................................ 41
Ilustracin 38. Programacin Modo Manual Software de Programacin Step7/Microwin Ejemplo Ilustrativo 3 ........................................................................................................ 42
Ilustracin 39. Programacin Modo Manual Software de Programacin Step7/Microwin Ejemplo Ilustrativo 4 ........................................................................................................ 43
Ilustracin 40. Programacin Modo Manual Software de Programacin Step7/Microwin Ejemplo Ilustrativo 5 ........................................................................................................ 44
Ilustracin 41. Esquema de Codificacin de las Redes de Petri en Step7/Microwin......... 47

Ilustracin 42. Ejemplo Ilustrativo 6 Codificacin de las Redes de Petri en


Step7/Microwin ................................................................................................................ 48
Ilustracin 43. Estructuras ms importantes desarrolladas en las Redes de Petri en
Lenguaje RLL - Relay Ladder Logic ................................................................................. 49
Ilustracin 44. Ejemplo Ilustrativo 7 - Red de Petri Propuesta para Codificar en
Step7/Microwin ................................................................................................................ 50
Ilustracin 45. Puntos Relevante Codificacin Red de Petri en Step7/Microwin - Ejemplo
Ilustrativo 7 ...................................................................................................................... 52
Ilustracin 46. Activacin de las salidas en Step7/Microwin ............................................. 52
Ilustracin 47. Activacin 1 Salidas en Modo Semiautomtico y Automtico ................... 53
Ilustracin 48. Codificacin Activacin 1 Salidas en Modo Semiautomtico y Automtico
en Step7/Microwin ........................................................................................................... 53
Ilustracin 49. Activacin 2 Salidas en Modo Semiautomtico y Automtico ................... 54
Ilustracin 50. Codificacin Activacin 2 Salidas en Modo Semiautomtico y Automtico
en Step7/Microwin ........................................................................................................... 55
Ilustracin 51. Ejemplo Ilustrativo 8 - Modo de Operacin Paso a Paso .......................... 56
Ilustracin 52. Codificacin Modo de Operacin Paso a Paso - Ejemplo Ilustrativo 8 ...... 58
Ilustracin 53. Ejemplo ilustrativo 9 - Marcaje Inicial ........................................................ 59
Ilustracin 54. Ejemplo Ilustrativo 10 - Codificacin Marcaje Inicial Red de Petri ............. 61
Ilustracin 55. Ejemplo Ilustrativo 11 - Evaluacin Condiciones Iniciales ......................... 62
Ilustracin 56. Ejemplo Ilustrativo 12 - Tiempos Propios del Proceso .............................. 63
Ilustracin 57. Ejemplo Ilustrativo 13 - Tiempos (Retardos) de Programacin ................. 64
Ilustracin 58. Ejemplo Ilustrativo 14 - Transicin Instantnea ......................................... 64
Ilustracin 59. Ejemplo Ilustrativo 15 - Correcta Activacin de Temporizadores en
Step7/Microwin ................................................................................................................ 65
Ilustracin 60. Ejemplo Ilustrativo 16 - Red de Petri Temporizador Ciclo de produccin .. 66
Ilustracin 61. Codificacin Temporizador Ciclo de produccin - Ejemplo Ilustrativo 16 .. 66
Ilustracin 62. Clculo Valor Preseleccin Temporizador segn base de Tiempo............ 67
Ilustracin 63. Temporizador con retardo a la conexin ................................................... 68
Ilustracin 64. Ejemplo Ilustrativo 17 Funcionamiento Temporizador con Retardo a la
Conexin ......................................................................................................................... 68
Ilustracin 65. Temporizador con retardo a la conexin con memoria.............................. 68
Ilustracin 66. Ejemplo Ilustrativo 18 - Funcionamiento Temporizador con retardo a la
conexin con memoria ..................................................................................................... 69
Ilustracin 67. Temporizador con retardo a la Desconexin ............................................. 69
Ilustracin 68. Ejemplo Ilustrativo 19 - Funcionamiento Temporizador con retardo a la
desconexin .................................................................................................................... 69
Ilustracin 69. Distribucin de los nmeros de Temporizadores Utilizables en
Step7/Microwin ................................................................................................................ 70
Ilustracin 70. Ejemplo Ilustrativo 20 - Inicializacin de Contadores ................................ 70
Ilustracin 71. Contador Incremental ............................................................................... 71
Ilustracin 72. Ejemplo Ilustrativo 21 - Funcionamiento Contador Incremental ................ 71
Ilustracin 73. Contador Decremental .............................................................................. 71
Ilustracin 74. Ejemplo Ilustrativo 22 - Funcionamiento Contador Decremental ............... 72
Ilustracin 75. Contador Incremental / Decremental ........................................................ 72
Ilustracin 76. Ejemplo Ilustrativo 23 - Funcionamiento Contador Incremental /
Decremental .................................................................................................................... 73
Ilustracin 77. Ejemplo Ilustrativo 24 - Hormetro con contadores................................... 74

OBJETIVO GENERAL
Establecer una metodologa de codificacin de los modelos de redes de Petri siguiendo la
norma IEC61131-3, que determine una correcta estructura de programacin de Micro
PLC's SIEMENS S7-200.

OBJETIVOS ESPECFICOS
1. Documentar varios de los conceptos y metodologas de trabajo desarrollados en
los cursos de Automatizacin I y II.
2. Estandarizar los juicios de programacin de Micro PLC's SIEMENS en sistemas
secuenciales tipo causa-evento modelados con la tcnica de Redes de Petri.
3. Elaborar un documento de apoyo para corregir inconsistencias en la respuesta del
PLC, debido a caractersticas de lectura propias del mismo Controlador.

INTRODUCCIN
La implementacin de las Redes de Petri para el desarrollo y programacin de PLCs se
ha convertido en una herramienta esencial para la comprensin e interpretacin de los
problemas de automatizacin.
Sin embargo, con la experiencia que se ha adquirido a lo largo de las implementaciones
desarrolladas con dicha tcnica, han surgido ciertas falencias y dificultades que han
puesto en consideracin el uso de la misma y han llevado a los programadores a tomar
decisiones adversas y a realizar modificaciones a veces inusuales sobre lo que se tiene
establecido para su desarrollo.
Que estas decisiones queden a criterio del programador y sin ningn fundamento vlido
que la soporte es lo que se desea mitigar con este documento.
De esta manera, se presenta en este trabajo de grado, una solucin prctica y confiable
basada en la normalizacin y estandarizacin de los procedimientos y criterios para la
elaboracin de programas, teniendo en cuenta la norma IEC61131-3 y los parmetros
establecidos por el fabricante del PLC y por el software de programacin.

CAPTULO 01 - CONCEPTUALIZACIN
CONSIDERACIONES GENERALES
La idea de normalizar y estandarizar los procedimientos y criterios para la elaboracin de
los cdigos de programa para los PLC Siemens utilizados, surgi bajo la necesidad de dar
solucin a diversos problemas de interpretacin y ejecucin del mismo.
De esta manera, las soluciones que se presentan en este manual, bsicamente fueron
diseadas y estructuradas en casos presentados en los PLCs Siemens S7-200, lo que
indica que solo puede ser estrictamente fiel a la generacin de cdigo en STEP 7
MICROWIN, o en casos excepcionales en que la generacin de cdigo sea similar.
Bajo las anteriores observaciones se presentan los siguientes criterios generales:

Para el desarrollo de cualquier programa, se deben comentar cada una de las


lneas de cdigo, permitiendo as que cada programador tenga la capacidad de
manipular y modificar cualquier programa sin ninguna dificultad.

La elaboracin del cdigo de programa de cada uno de los mandos, se debe


realizar en una subrutina independiente, esto con el fin de tener una estructura
ordenada que facilite la lectura y verificacin del programa.

La concepcin terica de la estructura y diseo de las Redes de Petri no debe ser


modificada, y se deben respetar los lineamientos y procedimientos exigidos para
su normal desarrollo.

Cada programa ser almacenado con su respectivo diseo de Red de Petri,


incluyendo las versiones anteriores y las versiones actuales.

Para la correcta interpretacin de la Red de Petri con el programa, se debe


manejar con total transparencia la simbologa y dems componentes que la
conforman.

Se permitir la realizacin de cambios o mejoras que permitan la optimizacin del


programa, siempre y cuando no violen las normas establecidas en el presente
manual.

NORMA IEC 61131-3


Las aplicaciones industriales actuales demandan el diseo de sistemas ms complejos,
seguros, fiables, que exhiban un alto grado de flexibilidad y reutilizacin. Caractersticas
necesarias para adaptarse rpidamente a un mercado cada vez ms cambiante y
competitivo. La estandarizacin es un objetivo clave a alcanzar en la integracin y la
reutilizacin en este tipo de aplicaciones.
Los esfuerzos de estandarizacin internacionales han llevado a la definicin del estndar
IEC 61131. La parte 3 de este estndar define un modelo de software para especificar
proyectos de automatizacin haciendo nfasis en la reutilizacin de software y establece
las especificaciones de la sintaxis y semntica (estructura) de dicho lenguaje.
Actualmente una gran parte de los principales fabricantes de Controladores Lgicos
Programables (PLC) ofrecen herramientas de programacin que siguen el estndar. IEC
61131-3. Esta norma pretende ser la base real para estandarizar los lenguajes de
programacin en la automatizacin industrial, haciendo el trabajo independiente de
cualquier compaa fabricante
De esta manera, IEC 61131 es el primer paso en la estandarizacin de los autmatas
programables y sus perifricos.

ESTRUCTURA FUNCIONAL DE UN SISTEMA DE AUTMATA PROGRAMABLE


La siguiente imagen, corresponde a la definicin de la Norma IEC 61131 respecto a la
estructura funcional de un sistema autmata programable.
Dicha estructura define las siguientes funciones:

Funciones de Alimentacin de potencia.


Funciones de comunicacin
Funciones de tratamiento de seal
Funciones de interfaz con sensores y actuadores
Funciones de Interfaz Hombre Mquina
Funciones de Programacin, puesta en marcha y documentacin.

10

Ilustracin 1. Estructura Funcional del Sistema de un Autmata Programable.

FUNCIN DE INTERFAZ CON LOS SENSORES Y ACTUADORES


La siguiente imagen, muestra con algo ms de detalle la definicin de la Norma IEC
61131 respecto a la estructura funcional de la interfaz con los sensores y actuadores.

Ilustracin 2. Funcin interfaz Sensores y Actuadores.

11

FUNCIN DE INTERFAZ HOMBRE-MQUINA (HMI)


La siguiente imagen, muestra con algo ms de detalle la definicin de la Norma IEC
61131 respecto a la estructura funcional de la interfaz Hombre - Mquina.

Ilustracin 3. Funcin interfaz Hombre-Mquina

LOS LENGUAJES GRFICOS DEL ESTNDAR IEC 61131-3


La parte 3 del IEC 61131 especifica la gramtica, sintaxis y semntica, de un total de
cinco lenguajes de programacin de Controladores Lgicos Programables. En concreto,
dos de ellos son textuales y tres grficos.
En lo referente a los textuales, el lenguaje Lista de Instrucciones (IL) es un lenguaje
textual de bajo nivel, similar al ensamblador y el lenguaje Texto Estructurado (ST), en
cambio, es un lenguaje de alto nivel que se utiliza habitualmente en aplicaciones de
automatizacin de procesos complejos.
En cuanto a los lenguajes grficos, el estndar establece tres:
Diagrama de Contactos (LD), basado en smbolos grficos dispuestos en Redes
(networks), de manera similar a los diagramas lgicos de rels en escalera. Est
orientado fundamentalmente a aplicaciones con seales Booleanas.
NOTA: Los ejemplos y aplicaciones de este manual estn basados en este lenguaje.
Los Diagramas de Bloques Funcionales (FBD) se utilizan para programar procedimientos
complejos mediante objetos grficos o bloques que representan funciones, bloques
funcionales o programas, tal como se hace en los diagramas de circuitos electrnicos. Es
ampliamente utilizado en la industria de procesos.
Los Diagramas de Funciones Secuenciales (SFC) estructuran las tareas secuenciales de
una aplicacin de automatizacin a travs de programas y bloques funcionales. Se puede
programar tanto en modo textual como grfico.

12

CAPTULO 02 - CONCEPTOS Y HERRAMIENTAS BSICAS DE


PROGRAMACIN
ESTRUCTURA DE LAS REDES DE PETRI
Para abordar este tema, se asume que el lector posee un conocimiento medio acerca de
la teora y la representacin formal y matemtica de Redes de Petri utilizadas en el
diseo, anlisis y control de procesos automatizados descritos por sistemas a eventos
discretos.
Las Redes de Petri deben representar el comportamiento dinmico del sistema o proceso
sin oportunidad a ambigedades. Debe ser lo suficientemente flexibles que facilite la
integracin de nuevas funciones y deben ser adems, un mtodo para generar de manera
automtica y transparente el cdigo de programacin del controlador lgico (PLC).
ELEMENTOS DE UNA RED DE PETRI
LUGARES: Llevan asociados las acciones que debe tomar el sistema modelado. Se
asocian a las salidas del sistema
TRANSICIONES: Seales o eventos que permiten evolucionar el sistema de un lugar a
otro. Se asocian a las entradas del sistema.
ARCOS ORIENTADOS: Unen lugares con transiciones (Arco de Salida) o viceversa (Arco
de Entrada).
MARCAS: (Tokens) Se sitan en los lugares. Representa el estado del sistema en cada
momento. Es la asignacin de un entero no negativo a los lugares de la Red de Petri. Se
representa mediante un crculo negro dentro del lugar.
TRANSICIN SENSIBILIZADA: Una transicin esta sensibilizada si todos sus lugares de
entrada a esa transicin estn marcados y el nmero de marcas en estos lugares es
mayor o igual al peso del arco que conecta cada lugar con dicha transicin.
DISPARO: El disparo de una transicin sensibilizada consiste en remover marcas de
cada lugar de entrada y agregar marcas a cada lugar de salida de acuerdo al peso de los
arcos de entrada y salida respectivamente, es decir, retirada una marca en cada lugar de
entrada, deposito una marca en cada lugar de salida.
Recordar que un disparo tendr lugar en el mismo instante en el que la transicin se
sensibiliza.
El cambio del marcaje de un lugar puede nicamente ser influenciado por las transiciones
habilitadas que estn directamente conectadas a este lugar. (Principio de Localidad) una
transicin solo afecta su vecindad (elementos de entrada y de salida).

13

EVENTO: Es el cambio de valor de una variable en un instante de tiempo t. Para el caso


de variables booleanas, un evento es el cambio de valor binario de la variable (pasar de 0
a 1 flanco positivo pasar de 1 a 0 flanco negativo)
El tipo de Redes de Petri que se manejarn son Redes de Petri binarias (solamente
puede haber una marca en cada lugar) y/o seguras (El numero de marcas en un lugar de
la Red de Petri nunca es mayor a uno) y ordinarias (El peso de los arcos es 1).
RECEPTIVIDAD: La receptividad se asocia a las transiciones. Es el producto de un
evento por una variable booleana. La red evoluciona si la variable booleana es verdadera
y el evento ocurre. Si el evento ocurre y la variable booleana es falsa la red no evoluciona
y viceversa.

Ilustracin 4. Elementos de una Red de Petri

Ilustracin 6. Conjunto de transiciones de entrada a P1

Ilustracin 5. Conjunto de lugares de entrada a t1

14

Ilustracin 8. Conjunto de transiciones de salida de P1


Ilustracin 7. Conjunto de lugares de salida de t1

ESQUEMAS O TIPOLOGAS DE LAS REDES DE PETRI


Apoyados en las Redes de Petri, se podrn representar cantidades de procesos, sistemas
y subsistemas autmatas. A continuacin se abordarn las tipologas ms comunes en
este proceso de modelamiento.
SECUENCIALES: Una red es secuencial si y slo si, toda transicin tiene exactamente un
lugar de entrada y uno de salida.

Ilustracin 9. Red de Petri Secuencial

BIFURCACIN EN UN LUGAR: (Exclusin) Esta situacin se da cuando un lugar tiene


varias transiciones posteriores. Estas transiciones compiten por los marcas de dicho
lugar. La red evoluciona a travs de la transicin que primero dispare. Recordar que: La
probabilidad de ocurrencia de dos o ms eventos simultneos independientes es cero.
Ya que, la tecnologa de automatizacin es capaz de discriminar eventos en escalas de
microsegundos (seg).

Ilustracin 10. Bifurcacin en un Lugar

15

BIFURCACIN EN UNA TRANSICIN: (Paralelismo) Esta situacin se da cuando una


transicin tiene varios lugares posteriores. En este caso las marcas son enviadas en
forma simultnea hacia los lugares posteriores. Esta tipologa es comn cuando se tienen
procesos paralelos en el autmata, ya que, una vez se da la bifurcacin, se inicia un
proceso en la red conocido como concurrencia (paralelismo), es decir, dos subRedes que
evolucionan de manera independiente una de la otra. De esta manera se pueden estar
realizando 2 o ms acciones de forma independiente.

Ilustracin 11. Bifurcacin en una Transicin

SINCRONIZACIN: Esta situacin se da cuando una transicin tiene varios lugares


anteriores. Las marcas esperan en estos lugares hasta el instante en el cual la ltima
marca que es necesaria para habilitar el disparo de la transicin (sensibilizar la transicin)
arribe a dicho lugar. En ese instante son consumidas simultneamente todas las marcas
sincronizando el sistema previamente bifurcado.
Recordar que: El paralelismo provocado por una bifurcacin debe terminar en una
sincronizacin, con el objetivo de no dejar ms de una marca recorriendo por la Red de
Petri.

Ilustracin 12. Sincronizacin

ERRORES DE REPRESENTACIN
Los siguientes son algunos de los errores ms comunes en la representacin de modelos
de sistemas a eventos discretos en Redes de Petri.

16

Ilustracin 13. Errores de Representacin 1 (Redes de Petri)

Ilustracin 14. Errores de Representacin 2 (Redes de Petri)

17

REDES DE PETRI TEMPORIZADAS E INTERPRETADAS POR PERIFERIA


(IPN)

Una Red de Petri autnoma no est asociada a ningn tipo de evento ni incluyen
conceptos temporales, es por ello que no son lo suficientemente adecuadas para el
modelamiento de sistemas a eventos discretos, ya que carecen de interpretacin de
seales de entrada y salida para interactuar con los PLCs. Para ello se requiere el uso de
las IPN temporizadas, las cuales incorporan periferia del proceso y temporizaciones en las
transiciones.
En este punto el lector debe conocer los conceptos y las operaciones bsicas del algebra
booleana, ya que, las Redes de Petri interpretadas estn caracterizadas por que los
eventos y las condiciones se definen sobre este tipo de variables.
El siguiente ejemplo, ilustrar la aplicacin de los conceptos bsicos del modelamiento de
sistemas DES en Redes de Petri.

EJEMPLO:
Se tienen 2 carros que van y vienen. El primer carro (C1) arranca el recorrido hacia
adelante con un flanco positivo de la seal de Inicio. Una vez alcance el fin de carrera F1
detiene su marcha y retrocede hasta alcanzar el fin de carrera F2. Cuando C1 alcanza el
fin de carrera F1, de manera simultnea se activa el inicio del recorrido para el segundo
carro (C2), una vez C2 alcanza el fin de carrera F3 detiene su marcha y retrocede hasta
alcanzar el fin de carrera F4. El ciclo se repite con una nueva seal del pulsador de inicio.

Ilustracin 15. Ejemplo Ilustrativo 1 - Redes de Petri Temporizadas e Interpretadas por Periferia (IPN)

18

Ilustracin 16. Red de Petri - Ejemplo Ilustrativo 1

En efecto, este tipo de redes interpretan seales de entrada y salida e interactan con
stas para la evolucin del sistema.
Este ejemplo incorpora todos los conceptos bsicos del modelamiento de sistemas a
eventos discretos bajo la teora de las Redes de Petri. Se pueden observar los lugares,
arcos y transiciones de la red. El marcaje inicial donde se muestra el estado inicial del
sistema, el concepto de concurrencia o paralelismo cuando en la transicin del flanco
positivo de F1 se dividen el proceso en 2 acciones distintas e independientes una de la
otra. As mismo el concepto de sincronismo, cuando ambos procesos independientes
previamente separados (bifurcacin) se sincronizan en la transicin t1 =100mseg.

19

REDES DE PETRI JERRQUICAS (HPN)


Un problema comn de las Redes de Petri, es su tamao, ya que para sistemas
complejos, el modelo IPN crece demasiado. Estos modelos IPN (denominados no
jerrquicos), se tornan inmanejables para modelar el proceso.
Una estrategia que se ha utilizado exitosamente es agrupar secciones de la Red de Petri
en subredes. Al hacer este agrupamiento la nueva Red de Petri se presenta como una red
principal con entradas y con salidas. As, la construccin de modelos complejos en Redes
de Petri puede facilitarse mediante la construccin de Redes ms pequeas y simples.
Las Redes de Petri jerrquicas permiten tener diferentes niveles de descripcin del
sistema. En un nivel se puede describir al sistema global de manera simple y en niveles
adicionales se proporcionan los detalles del comportamiento.
En general, las Redes de Petri jerrquicas, son un conjunto de subredes de Petri
temporizadas e interpretadas por periferia (IPN) que interactan a partir del llamado en
una red principal o de otra subred. Una subred es una IPN asociada a una transicin
(Supertransicin).

Ilustracin 17. Estructura de las Redes de Petri Jerrquicas

20

EJEMPLO:
Considerar el ejemplo anterior de IPN. Esta vez ambos carros inician el recorrido con la
seal de inicio. Cada vez que el carro C1 alcanza alguno de los fines de carrera, otro
carro (C3) inicia un recorrido similar alcanzando los fines de carrera F5 y F6. El recorrido
de C1 se reactiva con el fin del recorrido de C3. De manera similar sucede con el carro 2
(C2) y un carro C4 asociado a dicho movimiento, este ltimo debe alcanzar los fines de
carrera F7 y F8. El ciclo se repite con una nueva seal del pulsador de inicio.

Ilustracin 18. Ejemplo Ilustrativo 2 - Redes de Petri Jerrquicas

Realizar este ejercicio mediante una Red de Petri temporizada e interpretadas por
periferia (IPN) resulta bastante largo y poco prctico. Se aplicarn los conceptos de
Redes de Petri Jerrquicas y se dividir el proceso en un programa principal el cual se
encarga de realizar los llamados a las subrutinas. Luego en estas subrutinas se
programarn las secuencias de los carros 1 y 2 (C1 y C2) y desde all se reutilizarn en
dos oportunidades las subrutinas para los carros 3 y 4 (C3 y C4) como lo indica los
requerimientos de ejercicio.
OB (Principal)

Subred 0 (C1)

Subred Reutilizable 0 (C3)

Subred 1 (C2)

Subred Reutilizable 1 (C4)

21

Ilustracin 19. Red de Petri Principal - Ejemplo Ilustrativo 2

Ilustracin 20. Subred SBR 0 - Ejemplo Ilustrativo 2

22

Ilustracin 21. Subred SBR 1 - Ejemplo Ilustrativo 2

Ilustracin 22. Subrutina Reutilizable 0 - Ejemplo Ilustrativo 2

23

Ilustracin 23. Subrutina Reutilizable 1- Ejemplo Ilustrativo 2

TIPO DE VARIABLES
Cuando se modelan procesos secuenciales mediante Redes de Petri, deben figurar
claramente las variables de E/S que interactan en el proceso para garantizar la
secuencia. As como tambin, los operandos auxiliares necesarios (marcas, contadores,
temporizadores, etc.) para que sta se cumpla.
Estas variables se deben clasificar de acuerdo al tipo de datos que represente en el
proceso. Definir de manera correcta cada una de las variables del proceso ayuda entre
otras cosas a evitar prdidas significativas de datos.
La Norma IEC 61131-3 define como elementos comunes independiente del fabricante, los
tipos de datos. Los tipos de datos previenen errores en una fase inicial, como por ejemplo
la divisin de un dato tipo fecha por un nmero entero.
Los tipos comunes de datos son: variables booleanas, nmero entero, nmero real, byte y
palabra, as como tambin fechas, horas del da y cadenas (strings).

Tabla 1. Tipos de Datos

TIPO

MEMORIA PLC

CAPACIDAD

Binario (Booleanas)

Bit

0-1

Octeto (8 bits)

Byte

0 - 255

Entero (palabra)

2 Bytes

-32767 - 32767

24

ELEMENTO
E/S digitales,
Marcas
E/S, Char
E/S analgicas,
Variables enteras

Reales (Doble
palabra)

4 Bytes

Reales

E/S analgicas,
Variables Reales

Basados en esta tipologa, las direcciones de hardware implementadas debern ser


identificadas de la siguiente manera:

Tabla 2. reas de Memoria

REA DE MEMORIA
I
Q
M
SM
V
T
C
AI
AQ
AC
L

DESCRIPCIN
Entradas digitales
Salidas digitales
Marcas internas (identificar los lugares de la Red de Petri)
Marcas especiales (SM0 a SM29 son de slo lectura)
Memoria de PLC. Almacenamiento de variables
Valores actuales y bits de temporizadores
Valores actuales y bits de contadores
Entradas analgicas
Salidas analgicas
Acumuladores
Memoria de variables locales

DIRECCIONAMIENTO
Hay tres modos de direccionar los operandos en el programa:

Directo
Indirecto
Simblico

DIRECCIONAMIENTO DIRECTO
El S7-200 almacena informacin en diferentes reas de la memoria que tienen
direcciones unvocas. Es posible indicar explcitamente la direccin a la que se desea
acceder. De esta manera, el programa puede acceder entonces directamente a la
informacin. En el direccionamiento directo se indica el rea de memoria, el tamao y la
direccin. Ejemplo: VW790 se refiere a la direccin 790 de la memoria V (la W indica
palabra (Word) luego su tamao equivale a 2 bytes, de esta manera se estar
direccionando a los bytes 790 y 791 de la memoria V)

25

DIRECCIONAMIENTO DE BIT
Para acceder a un bit en un rea de memoria especfico es preciso indicar la direccin del
mismo, compuesta por un identificador de rea (I, Q, V, M, SM), la direccin del byte y el
nmero del bit precedido de un punto. Ejemplo: I3.4 se refiere al bit 4 del byte 3 del rea
de memoria I (Entradas Digitales).

Ilustracin 24. Direccionamiento Directo - Direccionar a un Bit

DIRECCIONAMIENTO DE BYTE
El direccionamiento de un byte, de una palabra o de una palabra doble de datos en la
memoria del PLC se indica de forma similar a la direccin de un bit. Esta est compuesta
por un identificador de rea, una letra que indica el tamao de los datos y la direccin
inicial del valor del byte, de la palabra o de la palabra doble.
Ejemplos:
VB100 indica el byte (B) 100 de la memoria V.
VW100 indica 2 bytes (W) a partir del byte 100, es decir, byte 100 y byte 101 de la
memoria V
VD100 indica 4 bytes (D) a partir del byte 100, es decir, byte 100, byte 101, byte 102 y
byte 103 de la memoria V.
La siguiente figura muestra este tipo de direccionamiento y determina el bit menos
significativo (LSB) y el bit ms significativo (MSB) de cada direccionamiento.

26

Ilustracin 25. Direccionamiento Directo - Direccionar a un Byte, Word o DobleWord

Ntese en la imagen que el bit menos significativo (LSB) corresponde al primer bit del
ltimo Byte del tamao de memoria direccionado, en el ejemplo VD100 el LSB
corresponde al bit 103.0. Mientras que el bit ms significativo (MSB) corresponde al ltimo
bit del primer Byte del tamao de memoria direccionado. En el ejemplo VD100 el MSB
corresponde al bit 100.7.
Contrario a lo que normalmente uno pensara.
DIRECCIONAMIENTO INDIRECTO
El direccionamiento indirecto utiliza un puntero para acceder a los datos de la memoria.
Los punteros son valores de doble palabra que sealan a una direccin diferente en la
memoria.
El S7-200 permite utilizar punteros para acceder a las siguientes reas de memoria: I, Q,
V, M, S, T (slo el valor actual) y C (slo el valor actual). El direccionamiento indirecto no
se puede utilizar para acceder a un bit individual ni para acceder a las reas de memoria
AI, AQ, HC, SM o L.
Para acceder indirectamente a los datos de una direccin de la memoria es preciso crear
un puntero a esa direccin, introduciendo para ello el carcter "&" y la direccin a la que
se desea acceder. El operando de entrada de la operacin debe ir precedido de un
carcter "&" para determinar que a la direccin indicada por el operando de salida (es
decir, el puntero) se debe transferir la direccin y no su contenido.
Introduciendo un asterisco (*) delante de un operando de una operacin, se indica que el
operando es un puntero.
Ejemplo:
MOVD &VW150, AC1

(El acumulador AC1 se convierte en un puntero de la


direccin VW150, es decir, AC1 apunta a dicha direccin,
mas no al contenido)

MOVW *AC1, AC0

(Transfiere a AC0 el valor de la palabra (W) al que seala el


puntero AC1)

27

DIRECCIONAMIENTO SIMBLICO
El direccionamiento simblico utiliza una combinacin de caracteres alfanumricos para
identificar una direccin. Una constante simblica utiliza un nombre simblico para
identificar un nmero constante o un valor de un carcter ASCII.
De esta manera es ms fcil recordar nuestras variables usadas en el programa
(codificacin), en relacin a las variables usadas en el modelo de Red de Petri.
La representacin simblica de las variables del programa debe describir e identificar las
reas de memoria utilizadas del PLC a travs de un texto alusivo a la funcionalidad de
dicha variable. sta descripcin debe ser lo ms corta posible, de fcil recordacin y
obedeciendo la siguiente nomenclatura:
ENTRADAS DIGITALES
Tabla 3. Direccionamiento Simblico - Entradas Digitales

TIPO
Entradas Digitales

SIMBOLO
I_Descripcin

SALIDAS DIGITALES
Tabla 4. Direccionamiento Simblico - Salidas Digitales

TIPO
Salidas Digitales

SIMBOLO
Q_Descripcin

MARCAS (LUGARES DE LA RED DE PETRI)


Tabla 5. Direccionamiento Simblico - Marcas

TIPO
Marca modo automtico
Marca modo semiautomtico
Marca modo Manual
Marca modo Paso
Marca Inicial de la PN principal (Auto)
Marcas (lugares) de la PN principal (Auto)
Marca Inicial de la PN de una subrutina x
llamada desde la PN principal (Auto)
Marcas (lugares) de la PN de una
subrutina x llamada desde la PN principal
(Auto)
Marcas de entrada de las Subrutinas
Marcas de salida de Subrutinas

M_Pin_Subrutinax
M_Pout_Subrutinax

Marcas de Panel de Operador

MOP_descripcin

28

SIMBOLO
M_Mod_Auto
M_Mod_Semi
M_Mod_Manual
M_Mod_Paso
M_P0
M_Pn
M_P0_Subrutinax
M_Pn_Subrutinax

Marcas auxiliares
Marcas de registro estado de secuencia

MAux_descripcin
MReg_descripcin

VARIABLES (MEMORIA V)
Tabla 6. Direccionamiento Simblico - Variables V

TIPO
Variables desde Panel de Operacin

SIMBOLO
VOP_Descripcin

TEMPORIZADORES
Tabla 7. Direccionamiento Simblico - Temporizadores

TIPO
Temporizadores

SIMBOLO
Tx_Descripcin

CONTADORES
Tabla 8. Direccionamiento Simblico - Contadores

TIPO
Contadores

SIMBOLO
Cx_Descripcin

Para generar cada uno de los smbolos de las variables a utilizar en el programa de
acuerdo a la nomenclatura que se propone, es conveniente adems crear varias tablas de
smbolos discriminadas por el tipo de variables, es decir, una tabla de smbolos slo para
las entradas, una para las salidas, otra para las marcas, etc.

DOCUMENTACIN
El objetivo de documentar y comentar cada lnea de cdigo que se genere, no es ms que
facilitar el mantenimiento, mejoras y correcciones a dicho cdigo, no solamente por quien
lo genere, sino tambin, por cualquier persona que conozca el lenguaje y quiera entender
el objetivo de cualquier lnea de cdigo. No slo se comenta la simbologa utilizada, sino
tambin las lneas de cdigo que se generen al codificar la Red de Petri.
A continuacin algunos criterios generales para la documentacin del programa:
Se deben crear en la tabla de smbolos diferentes tablas para cada tipo de dato. Una tabla
para entradas, otra para salidas, otra para los smbolos correspondientes a marcas, etc.
Esto facilitar la bsqueda de variables.

29

Cada elemento implementado en la programacin deber ser comentado en su


totalidad. Esto aplica tanto en la tabla de smbolos como en el bloque del
programa.

Cada variable debe describir exactamente la funcin que sta realiza, basada en
la operacin asignada en la Red de Petri.

Comentar los distintos bloques de los que se compone el cdigo, aplicando un


criterio uniforme y distinto para cada nivel.

Evitar comentarios que vayan en detrimento del cdigo y que no ayuden al


correcto entendimiento del mismo.

Cuidar la ortografa. Una ortografa correcta mejora la calidad de la expresin


escrita y, por tanto, de la comunicacin.

No comentar si no es necesario, no escribir ms de lo que necesites para


transmitir la idea. Mantener los comentarios simples y directos.

introducir los comentarios conforme se va codificando. No dejarlo para el final,


puesto que entonces costar ms trabajo.

Comentar como si fuera para uno mismo. A la hora de comentar no pensar slo en
mantenimiento posterior, ni creer que se esta dejando un regalo para la posteridad
del que slo obtendr beneficios el desarrollador que en el futuro sea designado
para corregir o mantener dicho cdigo.

ESTRUCTURA DEL PROGRAMA


Tpicamente, un programa es una interaccin de Funciones y Bloques Funcionales, con
capacidad para intercambiar datos.
Funciones y bloques funcionales son las partes bsicas de construccin de un programa,
que contienen una declaracin de datos, variables y un conjunto de instrucciones.
Los programas, bloques Funcionales y funciones se denominan Unidades de
Organizacin de Programas, POUs.
FUNCIONES (FC - SUBRUTINAS)
Se especifican funciones estndar y funciones definidas por usuario. En general, Las
funciones estndar son por ejemplo ADD (suma), SUB (Multiplicacin), MOV (Transferir).
Las funciones definidas por usuario, una vez implementadas pueden ser usadas
indefinidamente en cualquier POU.

30

Las funciones no pueden contener ninguna informacin de estado interno, es decir, que la
invocacin de una funcin con los mismos argumentos (parmetros de entrada) debe
suministrar siempre el mismo valor (salida).
BLOQUES DE FUNCIONES (FB)
Los bloques funcionales representan funciones de control especializadas. Los FBs
contienen tanto datos como instrucciones, y adems pueden guardar los valores de las
variables (que es una de las diferencias con las funciones). Tienen un interfaz de entradas
y salidas bien definido y un cdigo interno oculto, como un circuito integrado o una caja
negra. De este modo, establecen una clara separacin entre los diferentes niveles de
programacin. Un lazo de control de temperatura, PID, es un excelente ejemplo de bloque
funcional. Una vez definido, puede ser usado una y otra vez, en el mismo programa, en
diferentes programas o en distintos proyectos. Esto lo hace altamente reutilizable.
Los bloques funcionales pueden ser escritos por el usuario, pero tambin existen FBs
estndar. stos pueden ser llamados mltiples veces creando copias del bloque funcional
que se denominan instancias. Cada instancia llevar asociado un identificador y una
estructura de datos que contenga sus variables de salida e internas.
BLOQUE PRINCIPAL
El bloque principal es un conjunto lgico de todos los elementos y construcciones del
lenguaje de programacin que son necesarios para el tratamiento de seal previsto que
se requiere para el control de una mquina o proceso mediante el sistema de autmata
programable. Un programa puede contener, aparte de la declaracin de tipos de datos,
variables y su cdigo interno, distintas instancias de funciones y bloques funcionales.
Comparado esto con un PLC convencional, ste contiene un solo recurso, ejecutando una
tarea que controla un nico programa de manera cclica.
El S7-200 slo cuenta con el programa principal y la creacin y utilizacin de funciones
(subrutinas) reusables o no reusables. La creacin de los bloques funcionales se aplica en
los PLCs de gama alta S7-300/400. Sin embargo es conveniente que usted como
programador reconozca y diferencie estos conceptos.
La siguiente figura esquematiza dicho proceso:

31

Ilustracin 26. Llamado Estructural a Funciones

OB es el programa principal, quien se encarga de administrar las tareas y realizar los


diferentes llamados. Es posible realizar hasta 8 anidamientos de llamados de subrutinas
(Funciones) para el PLC S7-200.
El cdigo ejecutable comprende el programa principal, las subrutinas y/o rutinas de
interrupcin (opcionales).
El cdigo se compila y se carga en el S7--200, a excepcin de los comentarios del
programa.
Las unidades de organizacin tales como el programa principal, las subrutinas y las
rutinas de interrupcin servirn para estructurar el programa de control.
El orden que se llevar a cabo para la estructura de programacin se describe a
continuacin:

Programa Principal (Main) - Inicializacion


Subrutina Modo Automtico / Semiautomtico
Subrutinas Reusables
Modo Manual - Periferia de Salida
Modulo de Alarmas
Subrutinas Adicionales (reusables)

32

Ilustracin 27. Esquema de Bloques en Software de Programacin Step7/Microwin

El programa principal contiene las operaciones que controlan la aplicacin. El S7-200


ejecuta estas operaciones en orden secuencial de arriba hacia abajo y de izquierda a
derecha una vez por ciclo.
En el programa principal se tendr en cuenta entonces:
Marcaje inicial, es decir, ubicar la primera marca de ciclo con la marca especial SM0.1
(setear la(s) primera(s) marca(s) que permite(n) evolucionar la red).
Llamado de subrutinas (Automtico, Alarmas, Recetas, Salidas, etc.)
Operaciones globales.
Evala el modo de operacin en que se encuentra la mquina.
Resetear la dems rea de memoria M, C y T con el fin de garantizar que los contadores
y temporizadores se encuentren en 0 y que no hayan marcas seteadas (lugares de la PN
con marcas) al poner en RUN el PLC.
Las subrutinas se ejecutan slo cuando se llaman desde el programa principal, desde una
rutina de interrupcin, o bien desde otra subrutina. Las subrutinas son elementos
opcionales del programa, adecundose para funciones que se deban ejecutar
repetidamente. As, en vez de tener que escribir la lgica en cada posicin del programa
principal donde se deba ejecutar una funcin, basta con escribirla slo una vez en una
subrutina y llamar a la subrutina desde el programa principal desde otra subrutina cada
vez que sea necesario.
Las subrutinas tienen varias ventajas:

33

Permiten reducir el tamao total del programa.


Acorta el tiempo de ciclo, puesto que el cdigo se ha extrado del bloque principal.
El S7--200 evala el cdigo del bloque principal en cada ciclo, sin importar si el cdigo se
ejecuta o no. Sin embargo, el S7--200 evala el cdigo en la subrutina slo si se llama a
sta. El llamado puede ser condicional (el llamado requiere de ciertas condiciones) o
Incondicional (El llamado se realiza en todo momento).
Bajo este principio de funcionamiento se desprenden 2 situaciones:
El no evaluar la subrutina en el actual ciclo de ejecucin puede generar que algunos
valores de dicha subrutina se vean afectados y no se actualicen correctamente.
El evaluar la subrutina en todos los ciclos de ejecucin as sta no interese ser evaluada,
implica consumo de tiempo de ejecucin que en algunas aplicaciones puede resultar
valioso.

Ilustracin 28. Llamado Condicional e Incondicional de Subrutinas en Software de Programacin Step7/Microwin

Como se aprecia en la figura, en la network 15 se realiza un llamado incondicional a


travs de la marca especial SM0.0 la cual permanece activa en todo tiempo de ciclo. Por
otro lado, en la network 16, se observa el llamado condicional el cual habilita la subrutina
ENSAMBLE slo cuando la entrada I0.0 est activa y la salida Q3.2 se encuentre
apagada, de lo contrario las network dentro de dicha subrutina no sern evaluadas.
De esta manera, la utilizacin de subrutinas crea cdigos porttiles. Ofreciendo la
posibilidad de aislar el cdigo de una funcin en una subrutina y copiar sta a otros
programas sin necesidad de efectuar cambios o con slo unas pocas modificaciones.

34

CAPTULO 03 MODOS DE OPERACIN


PRELIMINAR
Las necesidades de altos niveles de automatizacin en los procesos, as como la
dedicacin en especial a tareas de seguridad, vigilancia mantenimiento y autodiagnstico
imponen diferentes formas de manejo y operatividad de las maquinas autmatas.
Bajo este concepto, los modos de marcha son los distintos modos de funcionamiento que
pueden darse en los sistemas automatizados. El Funcionamiento normal de un sistema
autmata es cclico. Segn como se ejecute este ciclo se clasifican los siguientes modos
de marcha:

Modo Manual: Cada movimiento es ejecutado por el operario. ste tiene un dominio
permanente, permitiendo as la activacin de una o ms etapas del proceso en cada
autorizacin.
Modo Semiautomtico: Es ejecutado todo el ciclo uno a uno. Cada inicio de ciclo
requiere autorizacin por parte del operario.
Modo Automtico: Es ejecutado el ciclo repetidamente a partir de una autorizacin inicial
del operario y hasta una condicin programada para el fin de ciclo (# de ciclos, # de
piezas, horas de ejecucin, etc.).

Si la mquina ha sido diseada y fabricada para que pueda utilizarse segn varios modos
de marcha o de funcionamiento con distintos niveles de seguridad, entonces, por lo
general, dicha mquina llevar un selector de modo de marcha (bien sea fsico o desde
un panel de operacin) que pueda ser enclavado en cada posicin. Cada una de las
posiciones del selector slo corresponder a un nico modo de mando o de
funcionamiento.

SELECTOR MODO DE OPERACIN


El selector de modo de operacin deber:

Excluir los dems modos de mandos existentes cuando se haya posicionado en


uno de ellos.

35

Para el modo Manual, autorizar los movimientos nicamente mediante un


accionamiento mantenido de pulsadores (JOG) y/o la combinacin de varios de
ellos.

Considerar todas las condiciones de seguridad necesarias para cada uno de los modos,
manteniendo as la seguridad e integridad del operador y de la mquina o proceso.
El selector de Modo de Operacin puede ser:
1. Un selector fsico que llegue como entradas al PLC.
2. Seleccionable desde Panel de Operacin (Memoria del PLC).
De cualquiera de estas dos formas, se manejan selectores de 2 posiciones o 3 de
posiciones. En relacin al nmero de posiciones del selector se tienen igual nmero de
modos de operacin.

Ilustracin 29. Selector de Modo de Operacin Fsico

La combinacin de estas 2 entradas me permite evaluar hasta 3 modos distintos de


Operacin. De manera anloga sucede con un selector de 2 posiciones.
En el caso de un selector fsico de 2 posiciones, es necesaria tan slo una entrada. Los
dos modos de operacin se obtienen evaluando sus dos posibles estados, activada o
desactivada.

36

Los selectores desde panel de operacin son menos restrictivos y mucho ms flexibles.
Solo se requiere de cierta rea de memoria para evaluar el modo de operacin
seleccionado.

Ilustracin 30. Selector Modo Operacin desde Pantalla (Ms de 2 opciones)

Ilustracin 31. Selector 1 Modo Operacin desde Pantalla (2 opciones)

Ilustracin 32. Selector 2 Modo Operacin desde Pantalla (2 opciones)

Para evaluar cada modo de operacin y saber en cul de estos se encuentra operando la
mquina se siguen los siguientes criterios:

Desde Selector fsico de 3 Posiciones: En el bloque Principal (OB) se debe evaluar


cada una de las 3 posibles combinaciones y a partir de ellas activar la marca
descrita en el captulo 2 para indicar el modo de operacin seleccionado. Esta
marca ser la que nos indicar el modo de operacin y condicionar la respectiva
activacin de las salidas, evolucin la Red de Petri y dems requerimientos,
dependiendo del modo seleccionado.

37

Ilustracin 33. Evaluacin Posicin Selector de Modo de Operacin Fsico 3 Posiciones en Bloque Principal (Main)

Desde Selector fsico de 2 Posiciones: Con este tipo de selector no es necesario la


activacin de una marca auxiliar que nos indique el modo de operacin
seleccionado. Para permitir la activacin de salidas, evolucin de la Red de Petri y
dems requerimientos, basta con condicionar el estado de la entrada asociada al
selector de modo de operacin.

Ilustracin 34. Evaluacin Posicin Selector de Modo de Operacin Fsico 2 Posiciones en Bloque Principal (Main)

38

Selector de 3 posiciones desde Panel Operacin: Con este tipo de selectores, en


lugar de entradas a PLC, se necesita un rea de memoria del PLC. Para 3 o ms
posiciones se requiere como mnimo de un byte de memoria. Este byte debe
corresponder a la memoria V del PLC. No es necesario la activacin de una marca
auxiliar para indicar el modo de operacin, al igual que el selector fsico de 2
posiciones, para permitir la activacin de salidas, evolucin de la Red de Petri y
dems requerimientos, basta con condicionar una comparacin tipo [==].

Ilustracin 35. Evaluacin Modo de Operacin por pantalla 3 Posiciones en Bloque Principal (Main)

Selector de 2 posiciones desde Panel Operacin: Con un Bit de memoria del PLC
es suficiente para evaluar el modo de operacin. Se deja abierta la posibilidad de
elegir entre la memoria M o memoria V del PLC.

Ilustracin 36. Evaluacin Modo de Operacin por pantalla 2 Posiciones en Bloque Principal (Main)

39

MODO MANUAL
Es un modo de funcionamiento especial, utilizado generalmente en los periodos de ajuste,
calibracin y en general se utiliza para realizar mantenimiento de los sistemas
automatizados.
Con este modo se pretende facilitar la labor de correccin de imprevistos, fallos, averas o
correcciones precisas en el funcionamiento de las mquinas o de los dispositivos de
control. Adems este modo es utilizado tambin para el ajuste o puesta a punto de la
mquina antes de inicio de produccin.
Este modo de funcionamiento exige en programacin, todos los enclavamientos y
seguridades propios de la mquina, y fuera de esto, un conocimiento avanzado del
sistema por parte de quien la opera, con el fin de minimizar la activacin de movimientos
que pongan en peligro la seguridad de las personas y la integridad de la mquina o
proceso.
PROGRAMACIN MODO MANUAL
Los mandos manuales en los procesos y las mquinas, son los segmentos de los
automatismos que permiten la activacin de las salidas que impulsan la prefera, bajo una
serie de mandos combinacionales validados por el operario.
Cabe aclarar que este modo NO es modelado por una Red de Petri, generalmente es un
sistema combinacional, ya que aqu no existe un movimiento secuencial, ordenado y
estricto de la mquina; slo se tiene un dominio total de los movimientos de la mquina o
de tan slo aquellos ms importantes y que lo requiera a partir de la combinacin de
algunas seales. Este modo es til para mantenimiento, ajuste y puesta a punto de la
mquina.
Partiendo de esa base, se propone el siguiente procedimiento para la programacin del
modo manual:

La elaboracin del cdigo de programa para mandos manuales (evaluacin de los


mandos manuales) se debe realizar en una subrutina a parte destinada para la
activacin de las salidas de periferia. Esta subrutina llevar el nombre de
SALIDAS.

Dicho cdigo NO tendr Marcas o lugares de Red de Petri, los movimientos se


validarn por la correspondiente combinacin entrada/salida, es decir, una bobina
simple de salida (Qxx) ser activada con su correspondiente combinacin de
entradas (Ixx) o estados de memoria y/o variables (MOP) que procedan de un
panel de operacin del Tipo TD / OP / TP.

La combinacin de entradas por parte del operario tendr efecto sobre la salida,
slo si el selector de modo de operacin se encuentra posicionado en modo
manual.

40

Tener en cuenta las seguridades para que dichos movimientos sean permitidos.
Los criterios de diseo de la mquina o proceso es una herramienta til para saber
que dispositivo requiere o no de manera crtica la evaluacin de seguridades en
este modo de operacin.

Enclavamientos y/o salidas que no se pueden dar en conjunto con otras son a
veces necesarios en este modo de operacin; sin embargo pueden existir otros
dispositivos de la mquina o proceso que en modo manual pueden activarse
directamente con la correspondiente combinacin de entradas y/o Marcas del
Panel de Operacin sin requerir el chequeo de seguridades previas.

El modo de operacin Manual es de tipo impulso sostenido (JOG), es decir, la


salida slo se activa mientras el pulsador se encuentre pulsado, o mientras la tecla
(botn) del panel de operacin se encuentre presionado, en caso contrario la
salida deber apagarse inmediatamente.

NOTA: Slo en casos especiales, como por ejemplo, cuando una salida Q1 requiere ser
activada, pero sta depende de que otra salida Q2 confirme que se encuentra activada,
entonces, slo en este caso es permitido sostener la activacin de la salida Q2 a travs
del respectivo pulsador o mediante un botn tipo toggle (interruptor) desde panel de
operacin, es decir, con retencin y as, de esta manera cumplir los requisitos de
seguridad para activacin de la salida Q1. Ahora bien, la activacin de la salida Q1 si se
har mientras el pulsador se encuentre pulsado, o mientras la tecla (botn) del panel de
operacin se encuentre presionado como lo indica el modo JOG para la activacin de
salidas en modo manual.
EJEMPLO:
Se debe realizar el proceso de bombeo de un lquido de un tanque de almacenamiento a
otro tanque en modo Manual. Para ello se dispone de una bomba y 2 vlvulas. Una
vlvula se encuentra despus del tanque origen y la otra antes del tanque de destino.
Ambas vlvulas poseen confirmacin de abierta y cerrada. La bomba se encuentra en
medio de ambas vlvulas.

Ilustracin 37. Ejemplo Ilustrativo 3 - Modo Operacin Manual

41

Ilustracin 38. Programacin Modo Manual Software de Programacin Step7/Microwin - Ejemplo Ilustrativo 3

Como se ve en la grfica, para poder activar la bomba de descarga, se requiere que las
vlvulas T1 y T2 confirmen que se encuentren abiertas, para ello tambin se deben
activar. La activacin de estas vlvulas debe permanecer sostenidas en este modo de
operacin, con el fin de permitir la activacin de la Bomba de descarga.
Slo en casos particulares como este, la activacin tipo JOG es exigido por ejemplo, para
la activacin de la bomba y para el caso de las vlvulas es permitido hacer una excepcin
a este tipo de activacin.

42

EJEMPLOS:
Se muestran adems, otros 2 ejemplos que representan la forma correcta para realizar la
activacin de las seales de salida de periferia en modo Manual en lenguaje KOP.

Ilustracin 39. Programacin Modo Manual Software de Programacin Step7/Microwin - Ejemplo Ilustrativo 4

De acuerdo a la estructura de programacin, en el ejemplo anterior se puede observar los


siguientes aspectos en la lnea de cdigo:

El modo manual se encuentra programado en la misma subrutina donde se activan


las salidas.

La presencia de contactos abiertos que evalan el modo de operacin actual de la


mquina. En el ejemplo, este selector se encuentra programado en el panel de
operacin. Tambin puede suceder que se evale una combinacin de entradas
en el PLC correspondientes a un selector de modo fsico.

Contacto abierto como condicin de entrada (Pulsador) o estado de memoria


(botn Marca desde OP) que autoriza la activacin de la seal de periferia.
Activacin modo JOG.

Condiciones de seguridad que se deben tener en cuenta y autorizan la activacin


de la seal de periferia.

Activacin de periferia (salida) como una bobina simple y NO como Set / Reset.

43

Ilustracin 40. Programacin Modo Manual Software de Programacin Step7/Microwin - Ejemplo Ilustrativo 5

Ahora bien, este ejemplo maneja la misma estructura de programacin del ejemplo
anterior salvo que la activacin manual de la salida de periferia no depende de
condiciones de seguridad y enclavamientos con otras salidas del sistema. Esta activacin
slo depende de:

El selector de modo de operacin en manual.

Comando de activacin manual del dispositivo. Entrada a PLC (Pulsador) o Mando


desde OP.

Paro de Emergencia desactivado.

44

MODO SEMIAUTOMTICO
Este modo de operacin difiere del modo automtico, en que el inicio de cada ciclo
necesita de una seal de autorizacin por parte del operario para ejecutarse. De esta
manera, la activacin de las salidas en ambos modos (semiautomtico / automtico)
dependen de las mismas marcas (lugares) de la Red de Petri.
El control sobre el inicio de la ejecucin del ciclo implica verificar las condiciones iniciales
de arranque.
Las condiciones iniciales (CI) es la comprobacin de que los distintos elementos que
componen el automatismo se encuentran en la posicin inicial para asegurar el correcto
funcionamiento y secuencia del sistema.
En el siguiente captulo se analizar la verificacin de dichas condiciones iniciales.

PROGRAMACIN MODO SEMIAUTOMTICO


Los mandos semiautomticos en los procesos y en las mquinas, son los segmentos de
los automatismos que permiten el accionamiento de las salidas que activan la prefera,
bajo una secuencia lgica, la cual requiere para cada ciclo de operacin la autorizacin
del operario.
Dicha secuencia se garantiza por medio de la activacin de una marca condicional propia
del cumplimiento de un estado anterior, conforme al modelo basado en estados y
transiciones (Red de Petri).
La Red de Petri utilizada en el modo semiautomtico es la misma para el modo
automtico, sin embargo pueden existir ciertas condiciones y/o activaciones que difieren
entre estos modos de operacin, por lo tanto se deben tener en cuenta los
condicionamientos necesarios para cada uno.
Partiendo de esa base se propone el siguiente procedimiento para la programacin del
modo Semiautomtico:

La elaboracin del cdigo de programa se debe realizar en una subrutina a parte


destinada para la programacin de la Red de Petri. Dicho cdigo estar
compuesto por la secuencia de la red, es decir, por las Marcas o lugares de Petri y
condiciones o transiciones para la evolucin de la misma.

Esta subrutina llevar el nombre de MOD_ AUTO.

Cada una de estas marcas debe seguir el estndar de marcacin de smbolos


expuesta en el captulo anterior.

45

Las diferentes salidas se validarn por la correspondiente combinacin


entrada/salida y marcas de Petri. Estas salidas son las mismas bobinas simples
que se ubican en la subrutina de SALIDAS.

La combinacin de entradas y de las marcas de Petri tendrn efecto sobre la


salida, s y slo si el selector de modo de operacin se encuentra posicionado en
modo semiautomtico.

Contemplar las seguridades para que dichos movimientos sean permitidos,


enclavamientos, salidas que no se pueden dar en conjunto con otras son criterios
de diseo que se deben tener en cuenta a la hora de elaborar dicho cdigo.

MODO AUTOMTICO
Se trata del modo de funcionamiento normal, para el cual la mquina o sistema ha sido
concebido y diseado.
En este modo de operacin, cuando se ejecute la orden de arranque de ciclo con el
pulsador de inicio o botn de inicio desde HMI, el sistema permanece funcionando de
forma ininterrumpida, hasta que una orden (condicin) de parada (fin de ciclo) normal sea
efectuada.
La parada normal (fin de ciclo) detiene el sistema al final de ciclo de produccin en curso,
a diferencia de las paradas de emergencia, cuyo objeto por lo general es parar de
inmediato la ejecucin del ciclo sea cual sea la situacin.
El inicio de un nuevo ciclo esta dado de forma automtica por la maquina o proceso, una
vez se detecta el fin del ciclo anterior. El fin de ciclo puede ser dado por una seal I/O
como un sensor de cada de pieza o por un tiempo de espera que se evala cuando se
finaliza un ciclo.

PROGRAMACIN PARA MODO AUTOMTICO


Los mandos automticos en los procesos y las mquinas, visto desde el controlador, son
los segmentos de los automatismos que permiten el accionamiento de las salidas que
activan la periferia, con la dependencia de una marca condicional propia del cumplimiento
de un estado anterior, conforme al modelo de Red de Petri, basado en estados y
transiciones.
Teniendo en cuenta la particularidad de los sistemas automticos y las variaciones que se
pueden presentar respecto al comportamiento dinmico de la maquina, surgen ciertas
dificultades que se hacen visibles en el momento de puesta en marcha de la maquina.
Para la programacin de este modo de operacin, se seguir el mismo procedimiento
expuesto en el modo semiautomtico.

46

Recordando que la programacin de la Red de Petri para ambos modos de operacin


automtico / semiautomtico se debe concentrar en la misma subrutina MOD_AUTO.
CODIFICACIN DE LA RED DE PETRI
Una vez terminada la Red de Petri, la codificacin de sta se debe seguir conforme se
avanza sobre ella, es decir, seguir uno a uno los lugares de la red y activar los contadores
y temporizadores tal cual se van activando durante el transcurso de la red.
El esquema de programacin basado en el orden:
1.
2.
3.
4.

Condiciones Iniciales.
Activacin de Temporizadores y Contadores
Evaluacin de Transiciones
Salidas

Es una propuesta de programacin con fines netamente acadmicos y en ocasiones no


aplica en el verdadero uso industrial.
Se debe codificar uno a uno la evolucin de la red (Evolucin de un lugar a otro lugar) en
cada segmento (Network) de Micro/Win bajo el siguiente esquema:

Ilustracin 41. Esquema de Codificacin de las Redes de Petri en Step7/Microwin

Como el modo de operacin y el pre-lugar son condiciones para evolucionar la red y se


garantiza la presencia de stas, se estara en efecto evaluando el flanco positivo del
evento (entrada).
Si se requiere activar un temporizador o incrementar un contador, esto se hace en la
network (segmento) inmediatamente despus de donde se setea la marca que activa
dicho temporizador o incrementa el contador.

EJEMPLO:

47

Ilustracin 42. Ejemplo Ilustrativo 6 Codificacin de las Redes de Petri en Step7/Microwin

Casos particulares como transiciones instantneas, transiciones con tiempos mnimos,


lgica negada, entre otros, se irn tratando paulatinamente en el transcurso del
documento.
La siguiente imagen muestra la representacin de las estructuras ms importantes
desarrolladas en las redes de Petri en lenguaje RLL - Relay Ladder Logic (KOP)

48

Ilustracin 43. Estructuras ms importantes desarrolladas en las Redes de Petri en Lenguaje RLL - Relay Ladder Logic

49

EJEMPLO
Para abordar los ejemplos de programacin de estos 2 modos, se debe empezar por la
respectiva Red de Petri. Se Usar el ejemplo de los dos carritos expuesto en el captulo 2
y se tomara como base en las estructuras de programacin de la imagen anterior.
Se modificar el ejercicio para que en modo automtico haga la secuencia en 3
ocasiones, y en modo semiautomtico inicie de nuevo la secuencia con la seal del
pulsador de inicio.
La Red de Petri con las respectivas modificaciones se ver de la siguiente manera:

Ilustracin 44. Ejemplo Ilustrativo 7 - Red de Petri Propuesta para Codificar en Step7/Microwin

50

En esencia la Red de Petri es la misma para ambos modos, pues se observa claramente
que poseen en comn los lugares P0, P1, P2, P3, P4, P5 y P6 y es precisamente en estos
lugares donde se desarrollan todas las condiciones y los requerimientos del ejercicio.
Ahora bien, la diferencia radica al final de la red, donde se debe evaluar el modo de
operacin para decidir si se compara con la condicin de fin de ciclo automtico (Para
nuestro caso particular contador >= 3) o si por el contrario la ejecucin de un nuevo ciclo
depender de un nuevo pulso de la seal de Inicio.
Apoyados en las representaciones de las estructuras ms importantes desarrolladas en
las Redes de Petri en lenguaje Ladder (KOP) y tomando como base el esquema de
codificacin propuesto, se tendr que la anterior Red de Petri codificada se ver de la
siguiente manera:
Se Indicarn slo los puntos ms relevantes de la red.

51

Ilustracin 45. Puntos Relevante Codificacin Red de Petri en Step7/Microwin - Ejemplo Ilustrativo 7

ACTIVACIN DE LAS SALIDAS EN MODO SEMI -AUTOMTICO Y AUTOMTICO


Se Recuerda que la activacin de las salidas se realiza en una subrutina independiente,
llamada SALIDAS y las salidas no se setean, sino que se activan en forma de bobina
simple, esto por motivos de seguridad.

Ilustracin 46. Activacin de las salidas en Step7/Microwin

Para activar las salidas en este modo de operacin, se debe analizar el lugar en la Red de
Petri que activa la salida y el lugar que la desactiva. Partiendo de este hecho se tienen
dos posibilidades:
1. La salida se activa (Qx.x = 1) en un lugar cualquiera en la Red de Petri y se
desactiva (Qx.x = 0) en el lugar inmediatamente posterior.
En la red del ejemplo anterior se observa este suceso. En un lugar de la red (Lugar
P3) activo cierta salida (Mot_Adelante_C2 = 1) y en el lugar inmediatamente
posterior (Lugar P4) la desactivo (Mot_Adelante_C2 = 0):

52

Ilustracin 47. Activacin 1 Salidas en Modo Semiautomtico y Automtico

En este caso, la activacin de la salida se realiza con la misma marca con la que se
representa dicho lugar en la codificacin, es decir, si el lugar P3 que activa una salida en
mi proceso est representado con la memoria del PLC (Marca) M0.3 entonces, esta
misma marca ser usada para la activacin de la salida.
Esto es posible, ya que de acuerdo al esquema de codificacin propuesto, en el lugar
seteado, al mismo tiempo se est reseteando el lugar anterior, luego, de igual manera
estara sucediendo con la salida, se estara activando y luego desactivando.

Ilustracin 48. Codificacin Activacin 1 Salidas en Modo Semiautomtico y Automtico en Step7/Microwin

53

Como lo muestra la figura, la activacin de las salidas estn ubicadas en la subrutina


SALIDAS; dicha activacin en este caso depende del modo de operacin Automtico, se
est omitiendo el modo manual.
De esta manera, de acuerdo al esquema de codificacin propuesto, en el lugar seteado,
tambin se est reseteando el lugar anterior, luego, de igual manera estara sucediendo
con la salida, la se estara activando y luego desactivando.

2. La segunda posibilidad sucede cuando: la salida se activa (Qx.x = 1) en un lugar


cualquiera en la Red de Petri y permanece activa durante varios lugares
posteriores al lugar donde fue activada. La salida es retenida hasta llegar al
respectivo lugar que desactiva dicha salida.

Ilustracin 49. Activacin 2 Salidas en Modo Semiautomtico y Automtico

En este caso no aplica utilizar la misma marca del lugar que activa la salida en la Red de
Petri, ya que una vez la red evolucione al siguiente lugar, se perdera la seal de
activacin y por consiguiente se desactivara la salida.
Para solucionar este problema se debe recurrir a marcas auxiliares de activacin. En el
captulo 2 de este manual, se defini el smbolo a utilizar para dichas marcas.
Una vez definida el rea de memoria de la marca auxiliar que mantendr activa la salida,
se procede a setear esta marca en la misma network en que se setea el lugar de la Red
de Petri que activa la salida. Esta marca permanecer activa hasta llegar al lugar donde
se desactiva la salida. Es en ese instante donde se procede a resetear la marca auxiliar.
En efecto, de esta manera se cumplir con los requerimientos de activacin de tal salida.

54

NOTA: Es de suma importancia no olvidar resetar tambin este tipo de marcas (marcas
auxiliares) ante eventos como inicio de primer ciclo, paros de emergencia y cambios de
modo de operacin.

Ilustracin 50. Codificacin Activacin 2 Salidas en Modo Semiautomtico y Automtico en Step7/Microwin

55

MODO ESPECIAL DE OPERACIN PASO A PASO


Este modo de operacin est concebido slo para facilitar los ajustes mecnicos de
manera detallada y especfica a la mquina o proceso, observando el comportamiento de
las piezas ensambladas durante la ejecucin de la secuencia automtica paso por paso.
El modo de operacin Paso a Paso consiste en ejecutar uno por uno los movimientos de
la secuencia automtica supeditando la ejecucin de cada movimiento a la activacin de
una seal de PASO proveniente de un pulsador fsico (Entrada del PLC) o de un botn
desde Panel de Operacin HMI (Memoria del PLC).
Este modo de operacin se debe codificar en la misma subrutina donde se programa el
modo automtico y semiautomtico (MOD_AUTO), con el fin de ejecutar tambin la Red
de Petri que gobierna la secuencia automtica en este modo. No obstante, como
condicin de evolucin, se debe evaluar la seal de PASO slo en los lugares que afecten
las salidas de periferia, es decir, los que activan o desactivan salidas. Para la evolucin de
la red en aquellos lugares que sirven slo como estado de memoria y que no llevan
asociado la modificacin del estado de alguna salida, no se debe ubicar la seal de PASO
como condicin de evolucin, slo se ubica la evaluacin del modo de operacin.

EJEMPLO

Ilustracin 51. Ejemplo Ilustrativo 8 - Modo de Operacin Paso a Paso

56

57

Ilustracin 52. Codificacin Modo de Operacin Paso a Paso - Ejemplo Ilustrativo 8

58

CAPTULO 04 MARCAJE INICIAL Y CONDICIONES INICIALES


MARCAJE INICIAL
El marcaje inicial es aquel lugar de la Red de Petri en el cual se determinan las
condiciones de arranque (Condiciones Iniciales) que se deben cumplir antes de ejecutar
una secuencia automtica.
En relacin al modelo en Redes de Petri, esta marca corresponde al primer lugar de dicha
red. En este lugar se establecen los estados iniciales de las salidas del proceso. Por
seguridad todas las salidas se deben encontrar apagadas al iniciar la secuencia, sin
embargo, esta restriccin no es camisa de fuerza y su excepcin depender nicamente
de requerimientos especficos de la mquina o proceso por parte del cliente.

Ilustracin 53. Ejemplo ilustrativo 9 - Marcaje Inicial

Se acepta la codificacin de este lugar y de la transicin que evala las condiciones


iniciales dentro de la subrutina de modo automtico (MOD_AUTO) en el bloque principal
(PRINCIPAL). Sin embargo, se acostumbra realizar la programacin del marcaje inicial en
el bloque principal.

59

CODIFICACIN MARCAJE INICIAL


La activacin (Seteo) de la marca inicial que representa el primer lugar de la Red de Petri
(P0) y donde se realiza la evaluacin de las condiciones iniciales se debe realizar en los
siguientes eventos:
1. Al energizar la mquina, es decir, al encender el PLC (primer ciclo de la CPU).
Esto se hace con la ayuda de la marca especial SM0.1.
2. Al finalizar el ciclo normal de la mquina en semiautomtico o automtico.
3. Tras un cambio en el modo de operacin. Un flanco positivo de cada uno de los
mandos existentes debe resetear todas las marcas de secuencia (Marcas de la
Red de Petri) con el fin de garantizar que no se encuentren marcas en ningn
lugar de la red de Petri (Marcas de PLC Seteadas).
4. La activacin del paro de emergencia.
5. Otras seales de seguridad que realicen la misma funcin de un paro de
emergencia.
Sobre este mismo segmento debe ir el reinicio (reseteo) de todas las marcas que hacen
parte de la red de Petri, as como tambin las diferentes marcas auxiliares y de registro
usadas para el correcto seguimiento de la secuencia.

60

Ilustracin 54. Ejemplo Ilustrativo 10 - Codificacin Marcaje Inicial Red de Petri

CONDICIONES INICIALES
Las condiciones iniciales son todos aquellas seguridades, enclavamientos y seales de
entrada y salida que se deben cumplir antes de dar inicio a la secuencia de operacin en
modo semiautomtico, automtico o paso-paso, garantizando que la mquina inicie en las
condiciones normales de reposo y para la cual est diseada, con el fin de prevenir daos
en la misma mquina, imperfecciones en el producto o daos en el personal humano
encargado.
Dichas condiciones iniciales deben evaluarse en serie al marcaje inicial y permiten la
evolucin de la red nicamente si se cumplen todas las seguridades vez.
Si transcurrido un tiempo pequeo (alrededor de un (1) segundo, puede ser ms, todo
depende de requerimientos del cliente) las condiciones iniciales no se cumplen, se debe
activar una marca auxiliar del modo bobina simple para dinamizar por pantalla la aparicin
de una alarma que indique este suceso.
Mientras no se cumplan las condiciones iniciales, la mquina o proceso, no podr dar
inicio con la secuencia.
El marcaje inicial se debe desactivar en el momento que se realice la valoracin de las
condiciones iniciales y estas se hayan cumplido.

61

Ilustracin 55. Ejemplo Ilustrativo 11 - Evaluacin Condiciones Iniciales

62

CAPTULO 05 - TEMPORIZADORES, CONTADORES Y TRANSICIONES


INSTANTNEAS
TEMPORIZADORES
En toda solucin automtica pueden existir temporizadores inherentes al proceso que
parten de los mismos requerimientos del cliente, por ejemplo, la activacin temporizada
de algunos actuadores cuando no se poseen sensores que indiquen el final de dicha
activacin.
Existen tambin pequeos retardos aplicados a la secuencia de la red de Petri. Estos
retardos se dan debido a que en ocasiones, no se encuentran seales de periferia,
condiciones o eventos del proceso que representen una transicin entre 2 lugares de la
red.
Es claro en este punto del manual que no est permitido -esquemticamente hablandopasar de un lugar a otro lugar de la red sin una transicin que los una.
Es as como, para solucionar este inconveniente, se utilizan temporizadores con un valor
de preseleccin bastante corto (tao~mseg) con el fin retardar la menor cantidad de tiempo
posible la evolucin natural de la Red de Petri.
Ahora bien, en muchas de las aplicaciones estos retardos no son bien vistos por el cliente
dada la necesidad de disminuir el tiempo de produccin y aumentar el nmero de piezas
producidas por turno y es as cuando se omiten los retardos y se quebranta un poco la
esquematizacin de las redes de Petri ubicando transiciones sin eventos asociados.

Ilustracin 56. Ejemplo Ilustrativo 12 - Tiempos Propios del Proceso

63

Ilustracin 57. Ejemplo Ilustrativo 13 - Tiempos (Retardos) de Programacin

Ilustracin 58. Ejemplo Ilustrativo 14 - Transicin Instantnea

Como se indic en el captulo 3, si se requiere activar (habilitar) un temporizador, esto se


hace en la network (segmento) inmediatamente posterior de donde se setea la marca que
activa dicho temporizador, siguiendo la secuencia normal de la Red de Petri.

64

Ilustracin 59. Ejemplo Ilustrativo 15 - Correcta Activacin de Temporizadores en Step7/Microwin

Si se requiere que el temporizador permanezca habilitado contando el tiempo de


preseleccin an durante varios lugares ms en la red de Petri despus de pasar por el
lugar donde ha sido activado, no se podr hacer uso de la marca que representa dicho
lugar de activacin, sino hacer uso de una marca auxiliar la cual se encargar de
habilitarlo y deshabilitarlo en los momentos indicados.
Ahora bien, para aplicar la activacin de un temporizador en la network (segmento)
inmediatamente posterior de donde se setea la marca que activa dicho temporizador slo
se debe garantizar que dicho temporizador presencie en algn ciclo de lectura del PLC,
sus respectivas seales de activacin para iniciar a temporizar y de desactivacin para
detener el conteo.
Recuerde que el PLC lee de arriba hacia abajo y de izquierda a derecha.
El siguiente ejemplo mostrar este detalle.
EJEMPLO:
Se quiere llevar conteo del tiempo de ciclo de una inyectora. Para ello se habilita un
temporizador con la seal de inicio (Cierre de Puerta) y se desactiva el tiempo al finalizar
el ciclo (Expulsin de La pieza).

65

Ilustracin 60. Ejemplo Ilustrativo 16 - Red de Petri Temporizador Ciclo de produccin

Ilustracin 61. Codificacin Temporizador Ciclo de produccin - Ejemplo Ilustrativo 16

66

El temporizador T_Tiempo_Ciclo segn lo muestra la Red de Petri, se activa al iniciar la


secuencia y se desactiva al finalizar la misma. Esta activacin no presenta inconveniente
en modo semiautomtico ya que para activar de nuevo el T_Tiempo_Ciclo en un nuevo
ciclo, se requiere de un cierre de puerta, el tiempo que demora en suceder este evento,
da oportunidad suficiente para que la CPU evale el cdigo varios ciclos, de esta manera,
el PLC ver una cada en la seal de activacin del temporizador, luego, reiniciar el
conteo del mismo.
Ahora bien, el inconveniente se presenta en modo automtico, ya que una vez la
secuencia llegue al lugar P10 (Network 35), se resetea la marca de activacin del
temporizador. Pero la lectura del PLC vuelve a arrancar desde la network 20 y Con la
presencia de P10 y las Condiciones Iniciales es suficiente para arrancar de nuevo el ciclo
de operacin de mquina, esto implica de nuevo el seteo de la marca de activacin del
tiempo de ciclo. Cuando la lectura pase a la network 21, el temporizador no notar una
cada en su seal de activacin, luego ste seguir corriendo como si siempre hubiera
estado activo.
Para eliminar este inconveniente, se acepta subir esta network en la subrutina de
programacin, una, dos o las networks que sean necesarias para que la lectura del PLC
note una cada en su seal de activacin y as se reinicie el temporizador.
TIPOS DE TEMPORIZADORES
Los PLCs trabajan los temporizadores en escalas de milisegundos, es por ello que para
calcular el valor de tiempo deseado a contar en segundos se debe seguir la siguiente
frmula simple:

Ilustracin 62. Clculo Valor Preseleccin Temporizador segn base de Tiempo

67

Son 3 los tipos de temporizadores que maneja la gama de PLCs S7-200 de SIEMENS:
TON: TEMPORIZADOR CON RETARDO A LA CONEXIN.

Ilustracin 63. Temporizador con retardo a la conexin

La operacin temporizador como retardo a la conexin (TON) cuenta el tiempo al estar


activada (ON) la entrada de habilitacin. Si el valor actual (Txxx) es mayor o igual al valor
de preseleccin (PT), se activar el bit de temporizacin (bit T). El temporizador contina
contando tras haber alcanzado el valor de preseleccin y detiene el conteo cuando
alcanza el valor mximo de 32767.

Ilustracin 64. Ejemplo Ilustrativo 17 Funcionamiento Temporizador con Retardo a la Conexin

TONR: TEMPORIZADOR CON RETARDO A LA CONEXIN CON MEMORIA.

Ilustracin 65. Temporizador con retardo a la conexin con memoria

Su funcin es similar al temporizador con retardo a la conexin (TON). Difiere en que el


valor actual del temporizador se mantiene cuando la entrada de habilitacin est
desactivada (OFF). El temporizador como retardo a la conexin con memoria sirve para
acumular varios perodos de tiempo de la entrada en ON. Para borrar el valor actual del
temporizador como retardo a la conexin con memoria se utiliza la operacin Poner a 0
(R).

68

Ilustracin 66. Ejemplo Ilustrativo 18 - Funcionamiento Temporizador con retardo a la conexin con memoria

TONR: TEMPORIZADOR CON RETARDO A LA DESCONEXIN

Ilustracin 67. Temporizador con retardo a la Desconexin

La operacin Temporizador como retardo a la desconexin (TOF) se utiliza para retardar


la puesta a 0 (OFF) de una salida durante un perodo determinado tras haberse
desactivado (OFF) una entrada. Cuando la entrada de habilitacin se activa (ON), el bit de
temporizacin se activa (ON) inmediatamente y el valor actual se pone a 0. Cuando la
entrada se desactiva (OFF), el temporizador cuenta hasta que el tiempo transcurrido
alcanza el valor de preseleccin. Una vez alcanzado ste, el bit de temporizacin se
desactiva (OFF) y el valor actual detiene el contaje. Si la entrada est desactivada (OFF)
durante un tiempo inferior al valor de preseleccin, el bit de temporizacin permanece
activado (ON). Para que la operacin TOF comience a contar se debe producir un cambio
de ON a OFF.

Ilustracin 68. Ejemplo Ilustrativo 19 - Funcionamiento Temporizador con retardo a la desconexin

La siguiente imagen muestra la distribucin de los nmeros de temporizadores utilizables


en el PLCs S7-200 de SIEMENS:

69

Ilustracin 69. Distribucin de los nmeros de Temporizadores Utilizables en Step7/Microwin

CONTADORES
Los contadores son tambin elementos importantes en las soluciones automticas.
Muchos de los procesos industriales requieren en su secuencia repetir varios movimientos
antes de terminar la secuencia de la mquina, por ejemplo, expulsar ms de una vez una
pieza en una inyectora de plstico. Esto se simplifica con el uso de los contadores.
Para la compaa es de suma importancia conocer y llevar registro de las cantidades de
unidades producidas (segn su razn social), de esta manera contar la produccin y
ofrecer este registro es tambin tarea de programacin.
Para activar o incrementar un contador se deben seguir las mismas indicaciones hechas
para los temporizadores, salvo que el contador incrementa o decrementa tras detectar un
flanco positivo en la seal de activacin. Se recomienda adems inicializar a 0 el valor de
stos tras el arranque del PLC (paso de STOP a RUN) en el bloque principal con ayuda
de la marca especial SM0.1 y reiniciar tras un paro de emergencia los contadores que
evalan cantidad de repeticiones para secuencia de movimiento. Los contadores de
produccin deben permanecer para evitar prdidas de datos de produccin.

Ilustracin 70. Ejemplo Ilustrativo 20 - Inicializacin de Contadores

Los contadores almacenan sus valores tipo enteros en un rea de memoria de tamao W,
es decir, en dos bytes. De esta manera el valor mximo que puede alcanzar el contador
es de 32767. El contador se detiene cuando el valor de contaje alcance el valor lmite
superior (32.767).

70

TIPOS DE CONTADORES
Son 3 los tipos de contadores bsicos que maneja la gama de PLCs S7-200 de
SIEMENS:
CTU: INCREMENTAR CONTADOR

Ilustracin 71. Contador Incremental

La operacin Incrementar contador (CTU) empieza a contar adelante a partir del valor
actual cuando se produce un flanco positivo en la entrada de contaje adelante CU. Si el
valor actual (Cxxx) es mayor o igual al valor de preseleccin (PV), se activa el bit de
contaje (Cxxx). El contador se inicializa cuando se activa la entrada de desactivacin (R) o
al ejecutarse la operacin Poner a 0. El contador se detiene cuando el valor de contaje
alcance el valor lmite superior (32.767).

Ilustracin 72. Ejemplo Ilustrativo 21 - Funcionamiento Contador Incremental

CTD: DECREMENTAR CONTADOR

Ilustracin 73. Contador Decremental

La operacin decrementar contador (CTD) empieza a contar atrs a partir del valor actual
cuando se produce un flanco positivo en la entrada de contaje atrs CD. Si el valor actual
Cxxx es igual a cero, se activa el bit de contaje (Cxxx). El contador desactiva el bit de

71

contaje (Cxxx) y carga el valor actual con el valor de preseleccin (PV) cuando se activa
la entrada de carga (LD). El contador se detiene cuando alcanza el valor "0" y el bit de
temporizacin Cxxx se activa.

Ilustracin 74. Ejemplo Ilustrativo 22 - Funcionamiento Contador Decremental

CTD: INCREMENTAR/DECREMENTAR CONTADOR

Ilustracin 75. Contador Incremental / Decremental

La operacin Incrementar/decrementar contador (CTUD) empieza a contar adelante


cuando se produce un flanco positivo en la entrada de contaje adelante CU, y empieza a
contar atrs cuando se produce un flanco positivo en la entrada de contaje atrs CD. El
valor actual Cxx del contador conserva el contaje actual. El valor de preseleccin PV se
compara con el valor actual cada vez que se ejecuta la operacin de contaje. Cuando se
alcanza el valor mximo (32.767), el siguiente flanco positivo en la entrada de contaje
adelante invertir el contaje hasta alcanzar el valor mnimo (-32.768). Igualmente, cuando
se alcanza el valor mnimo (-32.768), el siguiente flanco positivo en la entrada de contaje
atrs invertir el contaje hasta alcanzar el valor mximo (32.767).Si el valor actual (Cxx)
es mayor o igual al valor de preseleccin PV, se activa el bit de contaje Cxx. En caso
contrario, se desactiva el bit. El contador se inicializa cuando se activa la entrada de
desactivacin (R) o al ejecutarse la operacin Poner a 0. El contador adelante/atrs se
detiene al alcanzar el valor de preseleccin (PV).

72

Ilustracin 76. Ejemplo Ilustrativo 23 - Funcionamiento Contador Incremental / Decremental

EJEMPLO
El siguiente ejemplo muestra una de las aplicaciones ms comunes de los contadores a
nivel industrial. Se quiere llevar un registro de cunto tiempo en minutos y segundos ha
permanecido encendido un motor cuya salida est asociada a la Q0.0.
1. Llevar en un primer contador C0 (C_Cont_Segundos) el registro de la cantidad de
segundos que ha permanecido el motor encendido. Con ayuda del byte de estado
del sistema SMB0 en particular del bit SM0.5 llevar el conteo de los segundos.
Reloj_1s (SM0.5): Este bit ofrece un reloj que est desactivado durante 0,5 segundos y
activado durante 0,5 segundos, siendo el tiempo de ciclo de 1 segundo.
2. Llevar en un segundo contador C1 (C_Cont_Minutos) el registro de la cantidad de
minutos que ha permanecido el motor encendido. Para ello ayudarse del contador
de segundos, incrementar el contador de minutos cuando el bit de control del
contador de segundos (C0) se active, es decir, alcance el valor de 60. Reiniciar
Contador C0.
Si se desease llevar registro de las horas, se aplicara de nuevo el punto dos con un
tercer contador C3 (C_Cont_Horas) e incrementndolo con la seal del contador de
Minutos.

73

Ilustracin 77. Ejemplo Ilustrativo 24 - Hormetro con contadores

TRANSICIONES INSTANTNEAS
Las transiciones instantneas son transiciones que suceden en instantes muy rpidos
durante el ciclo de lectura del PLC y que impiden que los pre-lugares asociados a dicha
transicin permanezcan activos por un tiempo significativo para su evaluacin en otras
subrutinas.
El problema radica cuando estos pre-lugares llevan asociados algunas acciones, por
ejemplo, activacin de salidas, incrementos u operaciones matemticas, comparaciones,
entre otras. Como el pre-lugar dura activo muy poco (menos de un tiempo de ciclo
completo), el PLC no alcanza a detectar la presencia de estos pre-lugares ubicados como
condiciones para realizar algunas acciones en otras subrutinas.
Existen dos posibles soluciones ante este problema:
1. Temporizar la transicin para retener el (los) pre-lugar (es) y dar tiempo a que el
PLC evale las condiciones asociadas a este (estos) pre-lugar (es) en otras
subrutinas. Esta solucin puede ser significativa para el tiempo de ciclo de la
mquina o proceso.
2. Paralelo a la activacin del (los) pre-lugar (es) que llevan asociados transiciones
instantneas, activar una marca auxiliar con la cual se realizar la evaluacin para
las acciones que estaban asociadas a dichos lugares. Una vez se garantice que la
accin deseada ha sido realizada por el PLC se procede a desactivar dicha marca
auxiliar. Esto permite que la Red de Petri evolucione y que se garantice las
acciones de cada lugar.

74

CONCLUSIONES
Seguir esta metodologa de codificacin de los modelos de redes de Petri siguiendo la
norma IEC61131-3, nos permite realizar una correcta estructura de programacin,
disminuyendo as las probabilidades de error y las incertidumbres en las respuestas de los
micro PLCs a las rdenes programadas.
Las aplicaciones industriales actuales demandan el diseo de sistemas ms complejos,
seguros, fiables, que exhiban un alto grado de flexibilidad y reutilizacin. La integracin y
la reutilizacin en este tipo de aplicaciones se pueden alcanzar gracias a
estandarizaciones y metodologas como las plasmadas en este documento.
Esta metodologa puede ser escalable a la programacin de equipos ms robustos como
PLCs de gama media y alta con tiempos de respuesta mucho ms altos.

75

BIBLIOGRAFA
Zapata M. Germn, Branch Jhon, Quintero Henao Luis, Gonzales Carlos, Medina Carlos.
Metodologa para generacin de cdigo a partir de modelos en Redes de Petri
jerrquicas.
Zapata M. Germn I.E., M.s.c. (2007) Diseo de Automatismos secuenciales para
controladores Lgicos Programables.
Escuela de ingeniera elctrica y mecnica. Universidad Nacional de Colombia.
Formalizacin de las Redes de Petri Jerrquicas.

76

También podría gustarte