Está en la página 1de 265

DISEO DE AUTOMATISMOS SECUENCIALES PARA CONTROLADORES LGICOS PROGRAMABLES

GERMN DARIO ZAPATA MADRIGAL. I.E., M.s.c. Profesor Asociado

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE MEDELLN FACULTAD DE MINAS ESCUELA DE INGENIERIA ELECTRICA Y MECATRNICA 2007

AGRADECIMIENTOS

Este texto es el resultado del trabajo docente e investigativo de los ltimos seis aos. Muchos de mis estudiantes han realizado contribuciones importantes. Resalto el primer trabajo de grado realizado sobre el tema por parte de Medina & Gonzlez, quienes posteriormente me acompaaron en algunos proyectos de investigacin relacionados.

Tambin destaco las contribuciones de Omar Roa, Luis F, Rubn Vsquez, Esteban Rodas, Felipe Betancur, Alfonso Lpez, Andrea Angel, as como el aporte de los estudiantes de los cursos de Automatizacin.

En la validacin industrial ha sido definitivo el apoyo que Eliana Carrasco le ha brindado a la metodologa, quien fundamentalmente ha credo en los beneficios de ella.

El mayor sentimiento de gratitud lo expreso a la Universidad Nacional, a la Direccin de Investigaciones de la sede de Medelln y a la Facultad de Minas, que me han dado la oportunidad y los recursos para poder avanzar en el tema.

El reconocimiento a la institucin en la celebracin de los 140 aos de su fundacin y a la Facultad por los 120 aos de Trabajo y Rectitud.

DEDICATORIA

Este esfuerzo lo dedico a las dos personas que me desvelan por el inmenso amor que me manifiestan y que son el aliciente para el trabajo que hago a diario para construir un futuro para ellos: Juan Jos y Eliana.

Medelln, Junio 2007

TABLA DE CONTENIDO Pg.

INTRODUCCIN.........................................................................................................1 CAPITULO 1. ..............................................................................................................4 1.1 MTODOS FORMALES EN LA PROGRAMACIN DE PLCS. ....................4 1.2 SISTEMAS A EVENTOS DISCRETOS (DES)...................................................5 1.3 REDES DE PETRI. ...............................................................................................7 1.3.1 Ventajas y Fortalezas de implementacin de un automatismo mediante PN .....7 1.4 MODELAMIENTO DE SISTEMAS A EVENTOS DISCRETOS MEDIANTE REDES DE PETRI ...............................................................................................9 1.4.1 Metodologa para la especificacin y diseo de controladores lgicos...........11

CAPITULO 2. ............................................................................................................12 1. Conceptos Preliminares ...........................................................................................12 1.1 N-Tupla..................................................................................................................12 2. REDES DE PETRI AUTNOMAS. ......................................................................12 2.1 Existencia de una red de Petri................................................................................14 2.2 Elementos de entrada y salida de una PN..............................................................15

2.3 Vecindad................................................................................................................17 2.4 Clases de redes de Petri autnomas.......................................................................19 2.4.1 Red ordinaria ......................................................................................................19 2.4.2 Red Pura ....20 2.4.3 Red de Petri Simple ...........................................................................................21 2.4.4 Red de Petri de libre eleccion......22 2.4.5 Red de Petri Libre de eleccin extendida ...........................................................23 2.4.6 Redes de Petri T-Restrictivas .....23 2.4.7 Grafo de estados .................................................................................................24 2.4.8 Grafo Marcado ........25 2.5 Red de Petri marcada.............................................................................................25 2.6 Comportamiento dinmico de una red de Petri .....30

2.6.1 Transicin sensibilizada..........30 2.6.2 Regla de disparo.. ...............................................................................................32 2.6.3 Secuencia de disparo...........35 2.7 Principio de localidad.. ..........................................................................................36 2.8 Ecuacin de Estado............36

2.8.1 Alcanzabilidad.. ..................................................................................................39

2.9 Propiedades dinmicas de las redes de Petri.. .......................................................43 2.9.1 Red Viva..............43 2.9.2 Red Conforme.. ..................................................................................................44 2.9.3 Red Limitada...............44 2.9.4 Red Cclica.. .......................................................................................................45 2.9.5 Red Segura...............45 2.9.6 Red libre de conflicto.. .......................................................................................46 2.10 Tipologas de las Redes de Petri...49 2.10.1 Secuencia.. ........................................................................................................49 2.10.2 Bifurcacin....50 2.10.3 Union o Sincronizacion.. ..................................................................................51 2.10.4 Concurrencia o paralelismo....51 2.10.5 Cita o Rendez Vous.. ....................................................................................52 2.10.6 Exclusin mutua.....53 2.10.7 Recurso Compartido.. .......................................................................................53 2.10.8 Colas......54 2.11 Metodos de Anlisis.. ..........................................................................................55

2.11.1 Mtodo de rbol de alcanzabilidad........56 2.12 Ejemplos de aplicacin........................................................................................62 2.12.1 Problema del consumidor y productor......62 2.12.2 Problema de los filsofos.. ...............................................................................66 2.12.3 Regulacin de Liquido para un Tanque.....67 2.12.4 Sistema Discreto de Manufactura.....................................................................71 2.12.5 Sistema de Tanques.......73 2.12.6 Taller de maquinado.. .......................................................................................76 2.12.7 Estacin de Gasolina......78 2.12.8 Protocolo de Comunicacin..............................................................................80 2.12.9 Sistema Workflow.. ..........................................................................................81 2.13 Ejercicios.......82

CAPITULO 3.. ...........................................................................................................89 3.1 lgebra booleana........90 3.2 lgebra de eventos.. ..............................................................................................95 3.3 Redes de Petri interpretadas por periferia......101 3.3.1 Receptividad.. .................................................................................................. 101

3.3.2 Reglas de disparo de una transicin con receptividad...101 3.4 Redes de Petri temporizadas............................................................................... 104 3.4.1 P-timed PN ...104 3.5 Redes de Petri temporizadas interpretadas por periferia.. .................................. 107 3.5.1 Definicin de las IPN........107 3.6 Anlisis de IPN .................................................................................................. 113 EJEMPLOS .......117 3.7 EJERCICIOS PROPUESTOS............................................................................ 158

CAPITULO 4.. ........................................................................................................ 168 4. IMPLEMENTACIN EN UN CONTROLADOR LOGICO PROGRAMABLE...117 4.1 Controlador Lgico programable.169 4.1.1 Arquitectura de un PLC .................................................................................. 170 4.1.2 Como funciona un PLC ....170 4.1.3 Ejecucin cclica del programa y tiempo de ciclo........................................... 171 4.2 Norma IEC 61131-3..........173 4.2.1 Ventajas de la aplicacin de la Norma IEC 61131-3.. .................................... 173

4.2.2 Elementos comunes...........174 4.2.3 Tipos de datos.................................................................................................. 175 4.2.4 Lenguajes de programacin utilizados para programar un PLC de acuerdo a la norma IEC 61131-3............175 4.3 Formato (estructura de programacin).. ............................................................. 177 4.3.1 Instruction List...........174 4.3.2 Lenguaje ladder.. ............................................................................................. 182 4.4 Funciones Lgicas............189 4.5 Implementacin.. ................................................................................................ 189 4.5.1 Dinmica de la red.............190 4.5.2 Interpretacin de los elementos de la red.. ...................................................... 190 4.6 Generacin de cdigo para tipologas y funciones de las Redes de Petri....196 4.6.1 Funcin lgica AND........................................................................................ 196 4.6.2 Funcin lgica OR........................................................................................... 197 4.6.3 Temporizadores.. ............................................................................................. 198 4.6.4 Contadores....................................................................................................... 199 4.7 Consideraciones para la implementacin.. ......................................................... 200 4.7.1 Direccionamiento.. .......................................................................................... 200

4.7.2 Marcaje inicial.. ............................................................................................... 206 4.7.3 Orden de programacin.. ................................................................................. 207 4.7.4 Duracin de un evento..................................................................................... 210 4.7.5 Estabilidad del marcaje.................................................................................... 210 4.7.6 Sincronizacin dinmica.................................................................................. 211 4.7.7 Simultaneidad de eventos.. .............................................................................. 217 4.7.8 Ilustracin del mtodo de generacin de cdigo.. ........................................... 218 EJERCICIOS.. .......................................................................................................... 232 BIBLIOGRAFIA.. .................................................................................................. 238 ABREVIATURAS.. ................................................................................................ 241

LISTA DE TABLAS Pg. Tabla1. Representaciones graficas de Cabernet...58 Tabla 2. Descripcin de lugares y transiciones....69 Tabla 3. Descripcin de lugares y transiciones........72 Tabla 4. Descripcin de lugares y transiciones....74 Tabla 5. Descripcin de lugares y transiciones....77 Tabla 6. Descripcin de lugares y transiciones....79 Tabla 7. Descripcin de lugares y transiciones....81 Tabla 8. Descripcin de lugares y transiciones....82 Tabla 9. Leyes del algebra booleana ..90 Tabla 10. Combinacin lgica.....92 Tabla 11. Combinacin lgica..93 Tabla 12. Leyes del algebra Booleana..94 Tabla 13. Funciones....112 Tabla 14. Temporizaciones para la red115 Tabla 15. Lugares118 Tabla 16. Transiciones..118 Tabla 17. Direccionamiento de las entradas.119 Tabla 18. Direccionamiento de las salidas119

Tabla 19. Funciones...121 Tabla 20. Lugares...122 Tabla 21. Transiciones...122 Tabla 22. Funciones...124 Tabla 23. Lugares...126 Tabla 24. Transiciones127 Tabla 25. Direccionamiento de las entradas..127 Tabla 26. Direccionamiento de las salidas.128 Tabla 27. Funciones...129 Tabla 28. Lugares..130 Tabla 29. Transiciones......131 Tabla 30. Direccionamiento de las Entradas.131 Tabla 31. Direccionamiento de las salidas....132 Tabla 32. Funciones..133 Tabla 33. Direccionamiento de las Entradas....135 Tabla 34. Direccionamiento de las salidas135 Tabla 35. Funciones asignadas a los lugares137 Tabla 36. Funciones asignadas a las transiciones.138 Tabla 37. Direccionamiento de las entradas.141 Tabla 38. Direccionamiento de las salidas...142

Tabla 39. Funciones...........................................................................................144 Tabla 40. Direccionamiento de las entradas.146 Tabla 41. Direccionamiento de las salidas...147 Tabla 42. Funciones asignadas a los lugares......................................................149 Tabla 43. Funciones asignadas a las transiciones....150 Tabla 44. Direccionamiento de las entradas.153 Tabla 45. Direccionamiento de las salidas.......153 Tabla 46. Funciones asignadas a los lugares.155 Tabla 47. Funciones asignadas a las transiciones.156 Tabla 48. Descripcin de entradas159 Tabla 49. Descripcin de salidas..159 Tabla 50. Descripcin de lugares.160 Tabla 51. Funciones.163 Tabla 52. Funciones.164 Tabla 53. Tipos de datos..175 Tabla 54. Lenguajes de programacin.....176 Tabla 55. Principales Operadores del lenguaje IL...179 Tabla 56. Smbolos en diagramas Ladder183 Tabla 57. Funciones lgicas.189 Tabla 58. Funciones para la IPN de la funcin lgica AND...196 Tabla 59. Funciones para la IPN de la funcin lgica OR...197

Tabla 60. Funciones para la IPN para el temporizador198 Tabla 61. Funciones para la IPN de la funcin contador....199 Tabla 61.1. IEC....202 Tabla 2. Tabla de asignacin de memoria..204 Tabla 63. Tabla de asignacin de memoria..205 Tabla 3. Funciones......215 Tabla 4. Funciones para la IPN de la Figura 163219 Tabla 66. Direccionamiento de las entradas.223 Tabla 67. Direccionamiento de las salidas223 Tabla 68. Funciones...225 Tabla 69. Inventario de seales..227 Tabla 70. Inventario de seales233 Tabla 71. Inventario de seales...234

LISTA DE FIGURAS

Pg. Figura 1. Proceso de diseo para Sistemas de Control Lgico.................4 Figura 2. Sistema a eventos discretos....6 Figura 3. Extensiones de PN.....9 Figura 4. Modelo de un DES con PN ......10 Figura 5. Representacin grfica de una PN14 Figura 6. Estructuras que no representan una red de Petri....14 Figura 7. Conjuntos de lugares de entrada y salida ..16 Figura 8. Conjuntos de transiciones de entrada y salida .16 Figura 9. Vecindad de t4...17 Figura 10. Ejemplo Vecindad...18 Figura 11. PN ordinaria.....19 Figura 12. PN no pura...20 Figura 13. Transformacin de una red de Petri NO pura en una pura..21 Figura 14. Red de Petri simple......21 Figura 15. Red de Petri de libre eleccin...22

Figura 16. Transformacin de una PN libre eleccin extendida a una PN libre eleccin.. ....23 Figura 17. Red de Petri Restrictiva...........24 Figura 18. Grafo de estados..24 Figura 19. Grafo Marcado.....25 Figura 20. Red de Petri marcada...26 Figura 21. Red de Petri marcada ..27 Figura 22. Red de Petri autnoma.....29 Figura 23. Transiciones sensibilizadas...31 Figura 24. Ejemplo de transiciones sensibilizadas.31 Figura 25. Marcaje de una red obtenido por el disparo de una transicin sensibilizada....33 Figura 26. PN Pura para la obtencin de la ecuacin de

estado......38 Figura 27. Alcanzabilidad de un PN..41 Figura 28. PN no viva.....44 Figura 29. PN Cclica.....45 Figura 30. Red de un sistema con conflicto ..46 Figura 31. PN equitativa....47 Figura 32. PN Justa........48

Figura 33. Matriz de incidencia previa de la PN de la figura 32...48 Figura 34. Proceso Secuencial.......49 Figura 35. Bifurcacin...50 Figura 36. Sincronizacin..51 Figura 37. Concurrencia o paralelismo......52 Figura 38. Red correspondiente a un sistema con cita..52 Figura 39. Exclusin Mutua..53 Figura 40. Red de un sistema con recurso compartido ....54 Figura 41. Red de Petri que representa una cola ......55 Figura 42. Red de Petri y su rbol de alcanzabilidad....57 Figura 43. PN no limitada......59 Figura 44. Trayectoria para visualizar la ventana de opciones del TRT....60 Figura 45. Opciones del TRT.....60 Figura 46. Obtencin del rbol de alcanzabilidad.....60 Figura 47. rbol de alcanzabilidad con Cabernet..61 Figura 48. Propiedades del nodo S1..62 Figura 49. Representacin de la necesidad de dos condiciones para el paso a un nuevo estado..63

Figura 50. Modelamiento de las condiciones para producir y depositar objeto en el almacn...........................................................................................................................64 Figura 51. Reestablecimiento del recurso y modelamiento del aumento de objetos en el almacn....64 Figura 52. Extraccin del producto del almacn65 Figura 53. Red de Petri para el problema del productor consumidor..65 Figura 54. Esquema del problema de los filsofos.....66 Figura 55. Red de Petri correspondiente al problema de los filsofos...67 Figura 56. Ejemplo de regulacin de nivel.68 Figura 57. Matriz de incidencia..70 Figura 58. Red de Petri para el llenado de un tanque.....71 Figura 59. Sistema discreto de manufactura...72 Figura 60. Red de Petri para el sistema de manufactura............73 Figura 61.Sistema de tanques.....74 Figura 62. PN para el sistema de tanques...74 Figura 63. Grfico de descripcin del sistema de tanques.....74 Figura 64. Sistema de produccin......76 Figura 65. PN del sistema de produccin..77 Figura 66. Estacin de Gasolina.78

Figura 67. Modelo simplificado de un protocolo de comunicacin...80 Figura 68. Proceso del tratamiento de fallas..81 Figura 69....82 Figura 70........................................................................................................................83 Figura 71. ......84 Figura 72. PN para el sistema de tanques..85 Figura 73. Grafico de descripcin del sistema de tanques.87 Figura 74. Sistema de produccin......88 Figura 75. PN del sistema de produccin..88 Figura 76. Proceso Controlado......89 Figura 77. Diagrama temporal para la variable booleana a95 Figura 78. Grfica correspondiente a la Definicin 34......96 Figura 79. ..99 Figura 80.......................................................................................................................100 Figura 81.......100 Figura 82. Red de Petri interpretada.101 Figura 83. Diagrama temporal..102 Figura 84. PN con receptividad...103 Figura 85. Diagrama temporal para la PN de la Figura 74...104

Figura 86. Representacin de una red de Petri temporizada..106 Figura 87. Esquema temporal de la red de la Figura 86.106 Figura 88. Proceso controlado con PLC.....107 Figura 89. ....109 Figura 90. Notacin simplificada de una IPN ...............111 Figura 91. PN para la simplificacin de la notacin.......112 Figura 92. PN autnoma no-limitada mientras la t -PIPN es limitada113 Figura 93. Red de Petri interpretada .......114 Figura 94. IPN para el estudio de vivacidad ......115 Figura 95. Vivacidad y IPN....116 Figura 96. Vivacidad y IPN....116 Figura 97. Sistema de llenado de dos tanques....117 Figura 98. IPN correspondiente al automatismo del sistema de tanques (secuencial).120 Figura 99. IPN correspondiente al automatismo del sistema de tanques (paralelo)123 Figura 100. Compresor Acumulador de aire.............................................................125 Figura 101 IPN para el automatismo de la cmara de aire.......128 Figura 102. Celda de manufactura...130 Figura 103. IPN para la celda de manufactura.....132 Figura 104. Brazo Transportador de Piezas.....134

Figura 105. IPN para el brazo transportador....136 Figura 106. Mquina de Transferencia circular ..140 Figura 107. Modelo en PN para el automatismo del transfer circular......143 Figura 108. Cruce vial regulado por semforos ......145

Figura 109. Modelo en PN para el automatismo del semforo...148 Figura 110. Ascensor de dos pisos..............................................................................151 Figura 111. PN para un ascensor de dos pisos.....154 Figura 112. Reactor qumico....158 Figura 113. Red de Petri para el anlisis......160 Figura 114. Red de Petri para el anlisis.161 Figura 115. Diagrama temporal...162 Figura 116. IPN...162 Figura 117. Diagrama temporal para el automatismo de tres motores163 Figura 118. PN para el ejercicio 7..164 Figura 119. Proceso qumico165 Figura 120. Instrumentacin para el proceso qumico.165 Figura 121. Taller de Maquinado.166 Figura 122. Bandas transportadoras.....167 Figura 123. Estructura del PLC170

Figura 124. Ciclo de ejecucin.172 Figura 125. Ciclo de Scan en un PLC..173 Figura 126. Estructura del lenguaje IL....178 Figura 127. Bloque funcional RT1 Convertidor de un evento de subida en un impulso..180 Figura 128. Bloque funcional temporizador con retardo a la conexin ON181 Figura 129. Smbolo lgico de los diferentes tipos de contadores..182 Figura 130. Asignacin de variables lgicas en el lenguaje de diagrama de contactos....184 Figura 131. Smbolo de una funcin de salida interna o externa.184 Figura 132. Contactos activados por evento.186

Figura 133. Distribucin de un programa.186 Figura 134. Ejemplo de una trayectoria en LD187 Figura 25. Cdigo IL compilacin de transicin....191 Figura 3. Cdigo LD compilacin de transicin..191 Figura 137. Relacin entre los elementos de una IPN, LD e IL.191 Figura 437. Cdigo IL de transicin parte 2: disparo..192 Figura 5. Cdigo LD de transicin, parte 2: disparo...192 Figura 139. Relacin de cdigo con el modelo193 Figura 140. Segmento IL codificacin salidas.194 Figura 141.Segmento LD codificacin salidas.....194 Figura 142. Ejemplo generacin de cdigo...195

Figura 143. Funcin lgica AND convergente (Unin o sincronizacin)....196 Figura 144. Funcin lgica AND divergente (Bifurcacin)....196 Figura 145. Funcin lgica OR convergente....197 Figura 146. Funcin lgica OR divergente (Exclusin mutua)....197 Figura 147. Cdigo Generado para la funcin temporizador...198 Figura 148. Cdigo Generado para la funcin contador..199 Figura 149. Direccionamiento IEC...201 Figura 6. Direccionamiento de las entradas digitales...............................202 Figura 151. Direccionamiento de las entradas existentes en la receptividad de una PN.203 Figura 152. Direccionamiento de las salidas digitales203 Figura 153. ..204 Figura 7. Direccionamiento de las salidas...205 Figura 155. Marca especial (SM0.1) de primer ciclo...206 Figura 156. Estructura de programacin para programas IPN.209 Figura 157. Transiciones con receptividad 1..211 Figura 158. Transiciones que son receptivas, antes de estar sensibilizadas.212 Figura 159. Transiciones consecutivas con una receptividad equivalente...212 Figura 160. (a) IPN. (b)Cdigo incorrecto de la IPN...214 Figura 161. Cdigo PLC correcto para la IPN de la Figura 40....216

Figura

1628.

Red

de

Petri

que

modela

un

proceso

con

fin

de

ciclo...218 Figura 9. Ilustracin de la representacin grafica de una IPN.219 Figura 10. Generacin de cdigo LD para la IPN de la Figura 43.220 Figura 165. Generacin de cdigo LD para la IPN de la Figura 163...221 Figura 166. Sistema de Parqueadero222 Figura 167. IPN de Parqueadero..224 Figura 168. Programa en Step 7 200....228 Figura 169. Esquema del proceso.....232 Figura 17011. Esquema del proceso de llenado de

botellas.234 Figura 171. Sistema de Leva....235

Abreviaturas.

IEC: International Electrotechnical Commission. DIME: Direccin de Investigacin Universidad Nacional Sede Medelln. LD: Ladder Diagram. FBD: Function Block Diagram. IL: Lista de Instrucciones. ST: Texto Estructurado. SFC: Diagrama de secuencias funcional. PLC: Controlador lgico programable. DES: Sistemas dinmicos a eventos discretos. IPN: Redes de Petri Interpretadas por Periferia. PN: Red de petri.

241

INTRODUCCION

La manufactura y los procesos industriales a nivel global estn siendo transformados a travs de cambios radicales bajo el impacto de las nuevas tecnologas y las tendencias de la nueva economa. As es como obligadas por estas tendencias, un mayor nmero de compaas se apresuran para adoptar las nuevas tecnologas y las nuevas formas organizacionales de produccin para estar en capacidad de permanecer de forma competitiva en el nuevo medio que se define, de esta manera se determina una creciente complejidad de los procesos industriales llevando a definir los nuevos requerimientos de la automatizacin industrial. Segn Rameback (Rameback, 2003), stos estuvieron sujetos nicamente a la supervisin y control de los procesos, pero durante las ltimas dcadas funciones de control avanzado, alarmas, conexiones con sistemas de negocios, entre otros, han tenido que ser agregados. Adems los usuarios requieren optimizar los recursos, adherirse a las regulaciones medio ambientales as como a la de los procesos (certificacin de calidad). Todo esto introduce nuevos requerimientos dentro de los procesos de control de sistemas automatizados modernos. En la actualidad los sistemas tradicionales de control de procesos son sistemas basados en computadores que controlan flujos, temperaturas, presiones, entre otros, en un extenso nmero de procesos industriales. Durante los aos 60s los computadores tomaron el papel de los controladores. Despus los primeros microprocesadores llegaron al mercado y se introdujo el control basado en microprocesadores. Al mismo tiempo los primeros controladores lgicos programables (PLCs) fueron lanzados, y se basaron en la tecnologa de los microprocesadores. Sus aplicaciones fueron el control binario on-off y control secuencial (Rameback, 2003). Los nuevos avances en electrnica digital y las comunicaciones han dejado las puertas abiertas y el futuro en el control de procesos es simplemente impredecible. Desde su aparicin como opcin tecnolgica para resolver tareas secuenciales en automatizacin industrial, los PLCs han tenido una notable evolucin tecnolgica, tanto en hardware como software. En hardware pueden encontrarse actualmente soluciones con procesamiento paralelo, procesamiento de tareas rpidas, mdulos especiales de hardware, sistemas tolerantes a fallas, terminales de operador, puertos de comunicaciones, puertos Ethernet, alta densidad de entradas/salidas y mdulos entrada/salida especiales. En cuanto a software, es posible encontrar ambientes grficos de programacin, programacin orientada

a objetos, normalizacin de los lenguajes de programacin (IEC, 2003), estndares de integracin (OLE for process control OPC), algoritmos especiales integrados (regulacin PID, lgica difusa, controladores de posicin) y programacin de alto nivel. Esto ha generado una complejidad de los programas de PLC que se ve reflejada en la dificultad de sostenibilidad, manipulacin y comprensibilidad del cdigo de control, ya que ahora los PLCs no solo realizan operaciones secuenciales, sino tambin rutinas de autodiagnstico, control supervisorio, diagnstico de fallas de sensores, recuperacin despus de fallas, enlaces con niveles de automatizacin jerrquicos superiores, manejo de recetas, e incluso, controlan procesos batch y procesos continuos (DIME, 2004a), (DIME, 2004b). En el PLC los lenguajes de programacin permiten la codificacin de la informacin y la capacidad de establecer un medio sencillo, pero preciso, para que el programador pueda especificar la secuencia de tratamiento de la informacin que se requiere del sistema de control. La norma IEC 61131-3 (IEC, 2003) define cuatro lenguajes de programacin y en Miyazawa, Tanaka y Sekiguchi (Miyazawa, Tanaka y Sekiguchi, 1997: 532-537) se hace una clasificacin de estos. Se tienen dos clases de lenguajes grficos Ladder (LD) y el Function Block Diagram (FBD), dos clases de lenguajes textuales: Lista de Instrucciones (IL) y Texto Estructurado (ST) y adems se referencia como un elemento comn el diagrama de secuencias funcional (SFC) que es implementado en proyectos de software de alto nivel (Chmiel, Hrynkiewicz y Muszynski, 2002: 169- 173) (Bentez Pina, Vzquez Seisdedos y Villafruela Loperana, 1999: 1029-1034). Segn Feldmann, Colombo , Schnur y Stockel (Feldmann, Colombo , Schnur y Stockel 1999: 657-665) un rasgo importante del xito industrial de los PLCs ha sido el fcil aprendizaje de los lenguajes de programacin utilizados para programarlo. No obstante, estos sistemas de programacin usan varios mtodos de codificacin que no estn provistos de un medio de chequeo formal y ninguna herramienta terica o prctica determinan la correcta estructura del diseo. Aunque la programacin industrial de PLCs ha sido una disciplina muy intuitiva a lo largo del tiempo, ella ser cada vez ms y ms soportada por mtodos formales. El texto que se presenta pretende dar las directrices para formalizar el diseo de sistemas de control para sistemas industriales secuenciales, mediante el uso de un formalismo matemtico y la implementacin con lenguajes de programacin normalizados. La primera parte presenta unos conceptos introductorios, que justifican la aplicacin de mtodos de diseo formal en los Sistemas a eventos discretos, los cuales tambin se describen. Se presenta tambin la introduccin del formalismo matemtico, denominado Redes de Petri, destacando sus ventajas.
2

El segundo captulo aborda los conceptos y definiciones matemticas que sern utilizadas durante el desarrollo de la metodologa. La tercera parte particulariza la extensin de Redes de Petri especfica para la aplicacin en controladores lgicos programables, denominada Redes de Petri temporizadas interpretadas por periferia. Finalmente, el captulo de implementacin ilustra suficientemente la aplicacin de la metodologa, tomando ejemplos acadmicos e industriales y haciendo uso de los lenguajes establecidos por la norma internacional IEC 61131-3. Se entrega adems abundante bibliografa que soporta los desarrollos acadmicos y se recomienda el uso de algunos simuladores.

CAPITULO 1 1.1 MTODOS FORMALES EN LA PROGRAMACIN DE PLCS.

Como se presenta en Frey, G. (1998a) y en Frey, G. (1998a) la Especificacin Informal se refiere a lo que no esta basado en una composicin estricta, en una forma bien definida sintctica y semnticamente. La Implementacin Directa de los controladores se hace a partir de la especificacin informal usando un lenguaje de programacin de PLC. El mtodo informal de Validacin es la prueba del controlador implementado, contra la especificacin informal. La Formalizacin es la conversin de una especificacin informal a una formal, empleando una base matemtica. La formalizacin consiste en tres tareas: Formalizacin de propiedades especficas. Modelamiento formal de un proceso no controlado. Modelamiento formal directo de un algoritmo de control. En la figura 1 se muestra el proceso de diseo propuesto por Frey.

Figura 1. Proceso de diseo para Sistemas de Control Lgico En (DIME, 2004a) se presentan algunas razones para la aplicacin de mtodos formales en la programacin de PLCs. El crecimiento en la complejidad de los problemas de control. La demanda de tiempos reducidos de desarrollo. La posibilidad de reutilizar mdulos de software existentes.
4

La demanda de soluciones de alta calidad. La aplicacin de PLCs en procesos con seguridad crtica que hace necesaria la aplicacin de procesos de validacin y verificacin. La necesidad de probar las propiedades dinmicas de los programas como ausencia de bloqueos, estabilidad, ambigedad o tiempos de respuesta.

En Litz y Frey (Litz y Frey, 1998: 274-277) y Zhou y Twiss (Zhou y Twiss, 1998: 137-150) tambin se referencian los problemas de la no aplicacin de mtodos formales, entre las que se mencionan: No se obtienen soluciones idnticas entre grupos de trabajo. Las soluciones dependen de los estilos personales de programacin. Se producen algoritmos con errores. Altos tiempos de generacin de soluciones. La dificultad de hacer modificaciones que reflejen cambios en el sistema de especificaciones funcionales. Se dificulta el mantenimiento de los programas. La mayora de las soluciones no son transparentes en el sentido de que usuarios del algoritmo no lo entendern sin ser necesaria una completa explicacin.

1.2 SISTEMAS A EVENTOS DISCRETOS (DES).

El presente trabajo est orientado hacia el diseo de sistemas de control para sistemas dinmicos a eventos discretos (DES). Por ello, es de importancia definir un marco de referencia de este tipo de sistemas. Definicin 1 Los sistemas a eventos discretos son sistemas que dependen de variables que cambian slo en un nmero finito (contable) de puntos en el tiempo (Discreto) y cuyas variables cambian continuamente con respecto al tiempo (Dinmica). La evolucin del estado depende de la ocurrencia de eventos asincrnicos. La evolucin en el tiempo del sistema se traduce en cambios de estado de algn atributo de una entidad, a travs de un evento que ocurre en cierto instante. En la figura 2 se ve que el
5

sistema se puede describir mediante su estado high o low aunque posea un comportamiento continuo en el tiempo, y que su dinmica discreta depende de la ocurrencia de eventos tales como x1 y x2.

x2 x1

high low

Figura 2. Sistema a eventos discretos.

La aplicacin de los DES en automatizacin es tpica de procesos en los que se presentan tareas secuenciales y concurrentes. Entre ellos se pueden mencionar: procesos de mecanizado, prensado, galvanizado, lneas de transferencia, procesos de inyeccin, soplado, termo formado, fundicin, soldadura, redes de computadoras, redes de comunicaciones, trfico vehicular, logstica, FMS (Bordbar, Giacomini y Holding, 2000: 610-615), entre otros etc. Los DES son una clase importante de sistemas dinmicos que evolucionan en el tiempo por la abrupta ocurrencia de ciertos fenmenos fsicos llamados eventos en intervalos de tiempo posiblemente irregulares. Los DES requieren de un complejo sistema de control con el objetivo de asegurar la correcta y optima operacin. As mismo, con el objeto de facilitar el diseo de sistemas complejos, de elaborar diseo y especificaciones ms entendibles, de facilitar la transicin entre el diseo y la implementacin y finalmente hacer posible el software re-usable, varios investigadores (Bordbar, Giacomini y Holding, 2000: 610-615) que incluyen a Rumbaugh (Rumbaugh, 1993), han invocado un cambio de paradigma hacia las tcnicas orientadas a objetos para el control de DES.

En Nakamura, Fujii y Sekiguchi (Nakamura, Fujii y Sekiguchi,1999) se presenta la integracin de todas las fases de diseo de un controlador lgico programable para un DES. Las principales etapas de diseo e implementacin presentadas all son: a) Modelamiento de DES. b) Captura (modelamiento) del comportamiento requerido o especificacin del DES. c) Diseo de un controlador para el DES. d) Traduccin e implementacin del controlador dentro de un PLC.

Dentro de los formalismos ms populares de representacin de DES estn: Redes de Petri. Grafcet Statecharts. Grafos de eventos. Mquinas de estados finitos Algebra.

El Grupo de Automtica de la Universidad Nacional ha seleccionado como formalismo de trabajo las Redes de Petri (PN), por ser una de las herramientas de mayor desarrollo y aplicacin y por la amplia disponibilidad de recursos y produccin acadmica con que se cuenta en la actualidad. 1.3 REDES DE PETRI. Las PN fueron inventadas por el alemn Karl Adam Petri en 1962. En su tesis doctoral "kommunikation mit automaten" (Comunicacin con autmatas), establece los fundamentos para el desarrollo terico de los conceptos bsicos de las PN. Las PN tienen una base matemtica y una representacin grfica que asocia los estados del sistema discreto y los eventos con los elementos estructurales de las mismas, que se denominan lugares, transiciones y arcos. La dinmica del sistema es representada mediante la evolucin de un marcaje. 1.3.1 Ventajas y Fortalezas de implementacin de un automatismo mediante PN.

Formalismo matemtico, que facilita la especificacin formal, evitando ambigedades. Sintaxis y semntica bien definida.
7

Flexibilidad. Herramienta grfica para modelar DES. Provee tcnicas de anlisis. Permite la construccin sistemtica de modelos de sistemas a eventos discretos y controladores. Se facilita el mantenimiento y modificaciones posteriores en los modelos Garantizar el desempeo del modelo en trminos de - No Bloqueos - Ciclicidad - Estabilidad - Alcanzabilidad de estados deseados.

Como se menciona en Litz y Frey (Litz y Frey, 1998a: 274-277), Litz y Frey (Litz y Frey,1998b), Feldman, Colombo, Schnur y Stckel (Feldman, Colombo, Schnur y Stckel 1999: 651- 655), Park, Tilbury y Khargonekar (Park, Tilbury y Khargonekar, 1999), Frey (Frey,1998a) y Schettler y Frey (Schettler y Frey, 1998) la modelacin con herramientas matemticas, como las PN, adems de formalizar el diseo y la especificacin de los objetivos de control, ha permitido la aplicacin de mtodos, tambin formales, para el anlisis del desempeo de los controladores. Para el caso de un automatismo secuencial, el controlador debe cumplir con unas propiedades que garantizan la robustez de su comportamiento: limitacin (acotamiento), vivacidad (ausencia de bloqueos), alcanzabilidad, seguridad y reversibilidad. Una vez especificado un controlador, diseado y analizado mediante el formalismo empleado, la validacin dinmica del diseo se puede realizar va simulacin, a travs de la cual se pretende que el mtodo de diseo plantee unas directrices para la conversin del modelo al lenguaje de programacin del PLC. Los esfuerzos de la comunidad investigativa estn orientados a la generacin automtica de cdigo de PLC a partir de los modelos en PN. En Desrochers (Desrochers, 1995) y Zhou (Zhou, 1996) Se destaca que las PN tienen gran potencial para modelar sistemas secuenciales, asncronos, de eventos concurrentes muy comunes en los procesos industriales, de ah que sean utilizados para controlar dichos procesos. En Zhou y Twiss (Zhou y Twiss, 1998: 137-150) Zhou presenta una bibliografa muy completa sobre mtodos de diseo y demostraciones de laboratorio, as como herramientas computacionales para aplicacin industrial que facilitan el diseo asistido (CAD). Ese trabajo muestra una estrategia de control que usa un modelo en PN que captura las dinmicas de eventos discretos del proceso controlado, lo que resulta en un diseo fcil de entender, reparar, modificar y evaluar. En la actualidad se han generado una gran variedad de extensiones de las PN, con el objetivo de una especificacin ms acorde del proceso que se desea modelar y dependiendo de las necesidades del diseador y de la complejidad del sistema a modelar y controlar.
8

Figura 3. Extensiones de PN 1.4 MODELAMIENTO DE SISTEMAS A EVENTOS DISCRETOS MEDIANTE REDES DE PETRI. El modelamiento de DES con las PN ayuda a regular o supervisar la conducta de sistemas DES. Las PN tienen una representacin formal y matemtica simple pero robusta, que las hace particularmente tiles para el diseo, anlisis y control de procesos automatizados descritos por los sistemas a eventos discretos.

Figura 4. Modelo de un DES con PN

En (Zhou y Cesar, 1993), (Zurawski y Zhou, 1994) se implementa una metodologa de especificacin para los DES donde se presentan herramientas para la especificacin de sistemas, modelamiento rpido (simulacin), jerarquizacin y programacin estructurada. A travs de la aplicacin de estas herramientas se entiende por modelamiento la construccin de algoritmos utilizando un formalismo matemtico que describan el comportamiento del sistema especificado (Frey y Litz, 1998b), (Frey, 1998b).

10

En Antoniadis y Leupoulos (Antoniadis y Leupoulos, 1999) con objeto de proceder a un diseo ms sistemtico de aplicaciones de automatizacin, y debido a los problemas resultantes por la complejidad del proceso y los procesos inadecuados de verificacin, se proponen las PN para describir el comportamiento fsico del DES que se va a automatizar.

1.4.1 Metodologa para la especificacin y diseo de controladores lgicos. En definitiva, una metodologa para la especificacin y diseo de controladores lgicos para automatismos secuenciales debe incluir: Un formalismo matemtico, con una sintaxis y una semntica bien definidas para expresar la parte estructural del modelo y el comportamiento dinmico sin ambigedades. Debe tener la capacidad de representar las especificidades de un PLC y las nuevas caractersticas de software y hardware disponibles. Debe ser tan flexible que facilite la integracin de nuevas funciones, acordes con los desarrollos tecnolgicos. El formalismo, adems, debe servir como plataforma para la especificacin formal del controlador. Una herramienta formal para realizar el anlisis esttico del modelo, mediante validacin de propiedades. Una plataforma de simulacin para efectuar la validacin dinmica del modelo. Un mtodo para generar automticamente el cdigo de programacin del controlador lgico.

11

CAPITULO 2

1. Conceptos Preliminares 1.1 N-Tupla Definicin 2 Se define una ntupla como una sucesin de n objetos, a1,..,an. La propiedad fundamental que diferencia una ntupla de un conjunto finito es el papel que desempea el orden entre sus elementos, as, dadas a1,..,an,b1,..,bm se tiene:

a1,..,an=b1,..,bm m=na1=b1,..,an=bm
Nombre de tuplas El nombre de las tuplas se origina como abstraccin de la secuencia: singular, doble, triple, cudrupla, quntupla,..., ntupla. Una tupla de longitud n se describe generalmente como ntupla. Una 2tupla es un par ordenado; una 3tupla es una tripleta o un tro. La n puede ser cualquier nmero entero positivo.

2. REDES DE PETRI AUTNOMAS (Petri Nets - PN) Se abordan inicialmente las definiciones de las PN autnomas, que son aquellas cuya evolucin depende de condicionalismos resultantes de su estructura y marcaje, y son la base de donde se desprenden las dems extensiones, por ejemplo, las redes de Petri interpretadas y las redes de Petri coloreadas. Los conceptos presentados son fundamentales para la metodologa de diseo que se propone, especialmente lo relacionado con la sintaxis (estructura de los modelos) y la semntica (su comportamiento).

12

Definicin 3. Una PN autnoma est definida como una 4tupla:

R=P,T,Amxn,Bmxn
Donde:

P: Es un conjunto finito, no vaco de m lugares, cada lugar se representa mediante un


crculo.

P={p1,p2,p3,,pm},P=m,P
T: Conjunto finito, no vaco de n transiciones, las transiciones se representan mediante
una lnea.

T={t1,t2,t3,,tn},T=n,T
Amxn: Matriz de incidencia previa, representa un arco dirigido de pi a tj de peso a(pi,tj)N,coni=1,2,3,,myj=1,2,3,,n.

A:PxT N
Bmxn: Matriz de incidencia posterior, representa un arco dirigido de tj a pi con peso
B

b(pi,tj)N,coni=1,2,3,,myj=1,2,3,,n

B:PxT N

13

La figura 5 muestra la representacin grfica de los componentes de una PN.

Figura 5. Representacin grfica de una PN 2.1. Existencia de una red de Petri

En toda red de Petri debe cumplirse que:

P U T P I T= P1,T1 Amxn0mxn Bmxn0mxn


B

En la figura 6 se muestra que de forma aislada ningn elemento puede representar una red de Petri.

Figura 6. Estructuras que no representan una red de Petri.

14

2.2. Sea:

Elementos de entrada y salida de una PN.

X=P U T.
Se definen los siguientes conjuntos:

Conjunto de entrada

x={yX/a(y,x)>0sixTb(x,y)>0sixP}

Conjunto de salida

x={yX/b(x,y)>0sixTa(y,x)>0sixP}
Entonces, con base en los conjuntos definidos anteriormente se tienen:

Conjuntos de lugares de entrada y salida

tj={piP/a(pi,tj)>0}

Conjunto de lugares de entradaatj Conjunto de lugares de salidadetj

tj={piP/b(pi,tj)>0}

15

p1

p2

p3

t1

t1

p1

p2

p3

Conjunto de lugares de entrada

Conjunto de lugares de salida

Figura 7. Conjuntos de lugares de entrada y salida. Conjuntos de transiciones de entrada y salida

pi={tjT/b(pi,tj)>0}Conjunto de transiciones entrada api

pi={tjT/a(pi,tj)>0}Conjunto de transiciones de salida depi

P1

t1

t2

t3

t1

t2

t3

P1

Conjunto de transiciones de entrada

Conjunto de transiciones de salida

Figura 8. Conjuntos de transiciones de entrada y salida. Nota: Para simplificar la notacin en algunas ocasiones se utilizar i,j en lugar de (pi ,tj ) para los componentes de las diferentes matrices.

16

2.3.

Vecindad

Definicin 4 La vecindad de x X, se define como:

nbh(x)=x U x
Ejemplo 1 Sea la red de la figura 9, hallar la vecindad de la transicin t4 a partir de la definicin.

Figura 9. Vecindad de t4. Teniendo en cuenta la definicin de vecindad, se tiene para t4:

nbh(t4)=t4 U t4={p4,p6}

17

Ejemplo 2 Para la red de la figura 10 encontrar los conjuntos de entrada y salida del lugar p4, el conjunto de entrada para la transicin t5, el conjunto de salida de la transicin t1 y la vecindad de la transicin t1.

Figura 10. Ejemplo vecindad.

Los elementos de entrada del lugar p4 son las transiciones t2yt3.

Los

elementos

de

entrada

de

la

transicin t5 son los lugares p4yp5.

p4={t2,t3}

t5={p4,p5}

El elemento de salida de p4 es la transicin t5.


p4 ={t5}

Los elementos de salida de t1 son los lugares p2yp3.

t1={p2,p3}

nbh(t1)=t1 U t1={p1,p2,p3}

18

2.4.

Clases de redes de Petri autnomas

2.4.1. Red ordinaria Definicin 5 Se dice que una PN es ordinaria si los pesos de todos sus arcos son 0 1, es decir:

pPtT,a(pi,tj)b(pi,tj){0,1}

Ejemplo 3

Figura 11. PN Ordinaria.

19

2.4.2. Red pura Definicin 6 Una red se dice pura si ninguna transicin hace parte del conjunto de elementos de entrada y salida de un mismo lugar en la red:

tTpP,a(pi,tj)b(pi,tj)=0
Es decir:

t I t= ,tT

Figura 12. PN no pura Toda red no pura se puede transformar en una red de Petri Pura, como se muestra en la figura 13.

20

Figura 13. Transformacin de una red de Petri NO pura en una pura.

2.4.3. Red de Petri Simple (Asymetric choice) Definicin 7 Para cada transicin, a lo sumo uno de sus lugares de entrada puede ser compartido con otras transiciones como se ilustra en la figura 14.

p1 I p2 p1p2p1p2p1,p2P

Ejemplo 4

Figura 1. Red de Petri simple.

21

2.4.4. Red de Petri Libre Eleccin (Free choice) Definicin 8 Una red de Petri es de libre eleccin si todos los lugares tienen como conjunto de salida ms de una transicin, pero este conjunto de transiciones solo debe tener un conjunto de entrada unitario.

p1,p2P,p1 I p2 p1=p2=1
Ejemplo 5

Figura 2. Red de Petri Libre Eleccin. Obsrvese en la figura 15, que la red de Petri del lado izquierdo es vlida como libre eleccin an cuando a una de las transiciones llegan dos lugares, esto es porque la transicin no pertenece al conjunto de salida de ningn lugar que vaya a ms de una transicin.

22

2.4.5. Red de Petri Libre Eleccin Extendida Definicin 9 Una red de Petri libre eleccin extendida es una PN ordinaria tal que

p1,p2P,p1 I p2 p1=p2

Ejemplo 6 En la figura 16 se desarrolla la transformacin de una PN libre eleccin extendida a una estructura PN libre eleccin.

Figura 16. Transformacin de una PN libre eleccin extendida a una PN libre eleccin.

2.4.6. Redes de Petri T-Restrictivas Definicin 10 Son aquellas para las cuales todas las transiciones deben tener al menos un lugar de entrada y un lugar de salida.

tTt ,t

23

Ejemplo 7

Figura 17. Red de Petri T-Restrictiva. 2.4.7. Grafo de Estados Definicin 1 Es una red de Petri ordinaria tal que cada transicin t tiene exactamente un lugar de entrada y un lugar de salida, es decir:

tT: t = t =1

Ejemplo 8

Figura 18. Grafo de Estados. Un grafo de estados no permite modelar procesos paralelos. 24

2.4.8. Grafo Marcado Definicin 2 Es una red de Petri ordinaria tal que cada lugar p tiene exactamente una transicin de entrada y una transicin de salida.

pP: p = p =1
Ejemplo 9

Figura 19. Grafo Marcado. Un Grafo Marcado (GM) puede modelar la creacin o destruccin de marcas o determinadas sincronizaciones entre actividades, pero no puede expresar alternativas en la evolucin. Entonces un GM puede modelar sistemas en los que el nmero de estados no es finito.

2.5.

Red de Petri marcada

Para representar el comportamiento dinmico de una red, se define el concepto de marcaje, el cual es la asignacin de un entero no negativo a los lugares que se representa mediante un crculo negro dentro del lugar.

25

El marcaje puede tener muchas interpretaciones. Por ejemplo, cuando un lugar est marcado con una marca, ste puede representar que la correspondiente condicin es verdadera o que el estado est activo. En otros casos, k marcas pueden representar k recursos. Definicin 13 Una red de Petri marcada es una 5-tupla:

RM=P,T,Amxn,Bmxn,M0=R,M0
Donde:

R:

Es una red de Petri

M0: Es un marcaje inicial. M: Es una aplicacin de P en N, en la que se asigna un entero no negativo a cada lugar

M(pi):piN
M(pi): Es el nmero de marcas en el i-simo lugar.

Figura 20. Red de Petri marcada.

26

El conjunto de todos los marcajes de una red, alcanzables desde el marcaje inicial, se denota:

M(R,M0)
El marcaje se representa mediante un vector columna y el nmero de sus elementos esta determinado por el nmero de lugares que constituyen la red. Esto se muestra en el siguiente ejemplo. Ejemplo 10 Sea la siguiente PN autnoma, para ella se requiere una representacin en notacin estndar:

Figura 21. Red de Petri marcada.

27

Esta red se puede representar como:

RM=P,T,A5x5,B5x5,M0

En la cual:

P={p1, p2, p3, p4, p5}

t1 t2 t 3 t 4 t 5 p1 1 0 0 1 0 p2 0 1 0 0 0

T={t1, t2, t3, t4, t5}

A = p3 0 0 1 0 0 p4 0 0 0 0 1 p5 0 0 0 0 1
p1p2 p3 p4 p5 M 0 =[10000]
T

t1 t2 t3 t 4 t 5 p1 0 0 0 0 1 p2 1 0 0 0 0

B = p3 1 0 0 0 0 p4 0 1 1 0 0 p5 0 0 0 1 0

28

Ejemplo 11 Para la red de la figura 22 encontrar los conjuntos de entrada y salida del lugar p2, el conjunto de entrada y salida para la transicin t2, la matriz de incidencia previa y posterior y la vecindad de la transicin t4.

t5

Figura 22. Red de Petri Autnoma.

t1 P={p1, p2, p3, p4, p5, p6} p1 p2 A = p3 p4 p5 p6

t2 1 0 0 0 0 0

t3 0 3 0 0 0 0

t4 0 0 1 1 1 0

t5 0 0 0 0 0 2 p1 p2 B = p3 p4 p5 p6
T

t1

t2 0 3 0 1 0 0

t3 0 0 0 0 1 0

t4 0 0 0 0 0 1

t5 2 0 0 0 0 2

T={t1, t2, t3, t4, t5}

1 0 0 0 0 0

0 0 1 0 0 0

p1p2 p3 p4 p5 p6 M 0 =[ 200000 ]

29

Los elementos de entrada del lugar p4 son las transiciones t2 y t3.

Los elementos de entrada de transicin t5 son los lugares p4 y p5.

la

p2={t2}

t5={p1}

El elemento de salida de p4 es la transicin t5.

Los elementos de salida de t1 son los lugares p2 y p3.

P2={t3}

t1={p2,p4}

nbh(t4)=t4 U t4={p3,p4,p5,p6}
2.6. Comportamiento dinmico de una red de Petri

2.6.1. Transicin sensibilizada Definicin 3 Una transicin t se dice que esta sensibilizada si:

M(pi)a(pi,tj),pit
Es decir, una transicin est sensibilizada si el nmero de marcas en todos los lugares de entrada a esa transicin, es mayor o igual al peso del arco que conecta cada lugar con dicha transicin.

30

Ejemplo 12

p5

Figura 23. Transiciones sensibilizadas. El conjunto de transiciones sensibilizadas en el marcaje k se denotar como Tk.

Tk={tT/Mk(pi)a(pi,tj)pt}
Ejemplo 13 Reconocer las transiciones sensibilizadas de la figura 24.

Figura 24. Ejemplo de transiciones sensibilizadas. 31

El conjunto de las transiciones sensibilizadas para la red en el marcaje M1 es:

T1={t1,t2}
Obtenido a travs de la evaluacin de los conjunto de entrada de las transiciones t1 y t2 que son las transiciones que cumplen la definicin:
t1 ={p1};M(p1)=1;a1,1=1

M(p1)a1,1 t 2={p2,p3};M(p2)=3;a2,2=1;M(p3)=1; a3,2=1 M(p2)a2,2M(p3)a3,2


Obsrvese que aunque el lugar p2 posee tres marcas, la transicin t5 no est sensibilizada pues su otro lugar de entrada no tiene marcas, lo mismo ocurre con las transiciones t3 y t4.

2.6.2. Regla de disparo La dinmica de la red est determinada por el flujo de marcas. El marcaje tras el disparo de la transicin tj cambia de acuerdo con la siguiente regla de evolucin:

Mk+1(pi)=Mk(pi)+b(pi,tj)a(pi,tj),piP
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.

En las redes autnomas un disparo tendr lugar en el mismo instante en el que la transicin se sensibiliza.

32

De forma global para la red, el marcaje al disparar una transicin se obtendr tomando la columna de A y B correspondiente a la transicin sensibilizada y disparada as:

Mk+1=Mk+B(j)A(j)
La evolucin del marcaje, desde un marcaje Mk hasta un marcaje Mk+1, por la ocurrencia o disparo de la transicintjse denota:

tj Mk Mk +1
Y se lee: Mk+1es alcanzable a partir de Mk por el disparo de tj

Ejemplo 14 Para la red de la figura 25(a) se desea encontrar el marcaje que resulta del disparo de t1.

(a) marcaje de la red antes del disparo.

(b) marcaje de la red despus del disparo de t1.

Figura 25. Marcaje de una red obtenido por el disparo de una transicin sensibilizada.

33

Como primer paso, se verificar que los lugares pertenecientes al conjunto de entrada de la transicin cumplen con las condiciones que se imponen sobre ellos para que la sensibilizacin y el disparo sean posibles. El nico elemento de entrada a la transicin es p1 y se tiene:

M(p1)=1,a(p1,t1)=1 M(p1)a(p1,t1)
De esta forma, se concluye que t1 de la figura 25 pertenece al conjunto de transiciones sensibilizadas y est disponible para el disparo.

Se tienen las siguientes matrices de incidencia:

1 0 0 A= 0 0 0

0 0 0 0 1 0 0 1 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 1

0 1 1 B= 1 0 0

0 0 0 0 1 0

0 0 0 0 0 1

1 0 0 0 0 0

1 0 0 0 0 0

M 0 = [100000 ]

Una primera evolucin de la red ser:

1 M0 M1

En este caso se toma la primera columna de la matriz A y B, que corresponde a la transicin t1:

M1=M0+B(1)A(1)

34

As que el marcaje final estar dado por:

1 0 1 0 0 1 0 1 0 1 0 1 M1 = + = 0 1 0 1 0 0 0 0 0 0 0 0

La representacin grfica con el marcaje obtenido se muestra en la figura 25 (b).

2.6.3. Secuencia de disparo Definicin 15 Una secuencia de disparos a partir de un marcaje Mk indica el disparo consecutivo de transiciones por medio de un orden determinado, tal que el disparo de cada transicin conduce a un marcado que sensibiliza a la siguiente transicin.

Una secuencia de disparos se representa como:

=t1t2t3.tn
Si la siguiente expresin es posible

t1 t2 tn M k M k+1 M k+2 ...... M k+n


Se dir que la secuencia =t1t2t3.tn es aplicable a partir de Mk. Esta evolucin del marcaje se puede condensar de la siguiente forma:

35

Mk Mk+ n
2.7. Principio de Localidad

El comportamiento de una transicin depende nicamente de su entorno local, entendido ste como la totalidad de elementos de entrada y de salida de esa transicin, es decir, una transicin solo afecta su vecindad. Como consecuencia de la aplicacin de este principio se obtiene que el cambio del marcaje de un lugar puede nicamente ser influenciado por las transiciones habilitadas que estn directamente conectadas a este lugar.

De acuerdo con principio de localidad la regla de evolucin del marcaje se puede redefinir como:

Mk+1(pi)=Mk(pi)+b(pi,tj)a(pi,tj),pinbh(tj)
Para que se presente la evolucin del marcaje en un lugar, debe cumplirse que:

Mk (pi ) Mk+1 (pj ) t i Tk nbh(pi )

2.8.

Ecuacin De Estado

Definicin 46 La estructura de una PN pura puede ser caracterizada completamente por la matriz de incidencia Cmxn, la cual esta dada por la combinacin lineal de las matrices Amxn y

Bmxn:
B

Cmxn=BmxnAmxn
B

De modo que sus componentes son: 36

ci,j=bi,jai,j
Donde:

i=1,2,3,,myj=1,2,3,,n.

Los valores que tomen los componentes de la matriz de incidencia indicarn la estructura de la red:

Sici,j=1,entoncestjpi Sici,j=1,entoncestjpi Sici,j=0,entoncestjpitjpi


Definicin 57 Cuando se trata de la evolucin de marcaje en una PN pura, la regla de evolucin se simplifica obteniendo la forma de la ecuacin de estado:

Mk+1=Mk+CUk
Donde:

Uk es un vector columna, cuyas componentes son nulas excepto el de la j-sima


posicin, si tj es disparada a partir del marcaje Mkpara evolucionar al marcaje Mk+1.

1 si t = t j i Uk (t ) = i 0 si t t j
i

37

Ejemplo 15 Se desea hallar el marcaje alcanzado a partir del disparo de t1 y t2, es decir, =t1t2.

Figura 26. PN Pura para la obtencin de la ecuacin de estado. Como es una red pura, entonces para observar la evolucin de la red se puede utilizar la matriz de incidencia y de esta forma trabajar con la ecuacin de estado.

1 0 A= 0 0 0 1 1 C = 0 0 0

0 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1
1 0

1 0 0 0

0 1 B= 0 0 0

0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0
M = [2 0 0 0 0 ] 0 T

1 0 1 1 0 0 1 0 1

1 1 1 0 0 1 0 0

38

t 1 M 0 M1

2 1 0 1 M1 = 0 + 0 0 0 0 0

1 0

0 1 0 0

1 1 1 1 1 0 0 0 1 1 0 0 0 = 0 1 1 0 0 0 1 0 1 0 0

t2 M1 M 2

1 1 1 1 M 2 = 0 + 0 0 0 0 0

1 0

0 1

1 0 1 0

0 1 1 0 1 0

0 0 1 1 0 0 0 = 1 0 0 0 1 0 0

2.8.1. Alcanzabilidad Definicin 68 Una secuencia de disparos da lugar a una secuencia de marcajes.

En (Murata, 1989) se demuestra que una forma de obtener el marcaje Mk es a travs de la ecuacin de estado, como se presenta a continuacin:

Mk=Mk1+CUk M0 Mk Mk=M0+C.
La condicin necesaria para la alcanzabilidad descrita es la siguiente:

Sea r el rango de la matriz Cmxn y se hace la siguiente particin:

39

r
C C = 11 C 21

n r

C12 b m r C22 b r

Se construye la siguiente matriz

= Imr
Se debe cumplir que CTT=0

C11 (C 21 )1

Si Mk es alcanzable desde M0, entonces

M=0dondeM=MkM0

40

Ejemplo 16 Dada la red de la figura 27 verificar la alcanzabilidad desde el marcaje inicial hasta Mk = [ 1 1 1 2]T

Figura 27. Alcanzabilidad de una red de Petri. Se construye la matriz de incidencia

2 0 A= 0 0

0 0 1 0 0 1 2 0

0 1 B= 1 0
C =BA

0 0 0 0 0 2

1 1 T M0 = [ 2 0 1 0]

T M = [1 1 1 2 ]
k

M = M k M 0

0 1 C= 1 0

1 0 0 0

1 2 0 0 0 0 2 0

0 1 0 2

0 2 1 1 0 1 1 0 = 1 1 0 1 0 0 2 2

1 2 1 1 0 1 M = = 1 1 0 2 0 2

Por simple manejo matricial se halla que el rango de la matriz C es 2, indicando el nmero de filas linealmente independientes.

41

2 1 1 1 1 0 C C12 = 11 C= 1 0 1 C 21 C 22 0 2 2

2 1 C11 = 1 1 m r x r

1 C12 = 0 m r x n r

C 21 =

0 0 2 r x r

1 C 22 = 2 r x n r

Se construye la matriz

= I2

C11 (C 21 )1

1 0 2

0 1 1 0.5

0.5

Se verifica que CTT=0 Ahora se verifica que Mk es alcanzable desde M0, para lo cual se debe cumplir que:

M = 0

1 1 0 2 0.5 1 0 0 1 1 0.5 0 = 0 2

Luego Mk es alcanzable desde M0 y es verificable con =t3t1

42

2.9.

Propiedades dinmicas de las redes de Petri

Las propiedades de las PN pueden ser de dos tipos: propiedades estructurales (estticas) y propiedades funcionales (dinmicas). Las propiedades funcionales son las que dependen de los estados iniciales, o del marcaje de la red. Las propiedades estructurales, por el contrario, no dependen del marcaje de la red sino de la topologa o la estructura de la misma. Estticamente una red se define como ordinaria y pura, dinmicamente como segura, viva, conforme, cclica, limitada. Adems, se pueden verificar propiedades desde la alcanzabilidad. 2.9.1. Red viva Definicin 79 Una red de Petri R,M0 es viva si para todo marcaje que se pueda alcanzar a partir del marcaje inicial, existe un marcaje posterior a partir del cual se pueda disparar por lo menos una transicin. Esto es:

t MkM(R,M0)M0 MkMk+1M(R,M0)Mk Mk+1 talque Tk+1


Cuando una red es no viva, se presenta un problema de comportamiento denominado bloqueo. Una red viva es una red libre de bloqueos.

Ejemplo 17 La figura 28 describe una red de Petri no viva considerando la secuencia =t1t4, en la cual, el Proceso 1 requiere de la existencia de marca en los lugares p4yp5. En adicin, el Proceso 2 igualmente demanda la existencia de marcas en los lugares p4yp5 para el disparo de la transicin t4. Como consecuencia del requerimiento para la habilitacin de las transiciones consideradas el sistema se bloquear y no existir posibilidad de que evolucione.

43

Figura 28. PN no viva.

2.9.2. Red conforme Definicin 20 Una PN se dice conforme si es viva y binaria.

2.9.3. Red limitada (Boundedness property) Definicin 81 Una red es limitada o acotada si para todo marcaje alcanzable, todos los lugares presentan un nmero finito de marcas. Esto es:

Mk(pi)k,piPMkM(R,M0)conkfinito
44

2.9.4. Red cclica Una PN es cclica para un marcaje inicial M0, si existe una secuencia de disparos que permita alcanzar el marcaje inicial a partir de cualquier marcaje alcanzable M:

Definicin 92
MM(R,M0):/ M M0

Ejemplo 18

Figura 39. PN Cclica. 2.9.5. Red Segura (safeness property) Definicin 103 Un lugar en una red de Petri es seguro si el nmero de marcas nunca es mayor a uno.

piP,essegurosiMkM(R,M0) Mk(pi)1 M(pi)1,piP


45

Definicin 114 Una red de Petri es segura si todos los lugares de la red son seguros.

piPMkM(R,M0):Mk(pi)1
Se observa que la seguridad es un caso especial de la propiedad de acotamiento.

2.9.6. Red libre de conflicto Conflicto Definicin 125 Se tiene un conflicto en un marcaje Mk si al menos dos transiciones compiten por la obtencin de una marca. Se puede decir que hay una eleccin no determinstica entre las transiciones.

Dos transiciones estn en conflicto, si:

ti I tj={pi}M(pi)<a(pi,ti)+a(pi,tj)

Ejemplo 19

Figura 30. Red de un sistema con conflicto. 46

Red equitativa Una PN es equitativa si durante la ejecucin de la secuencia la habilitacin de una transicin t implica su disparo. Una red equitativa es una PN libre de conflictos.

Figura 31. PN equitativa.

Red Justa (Fairness property) Cuando una PN no es libre de conflictos como muestra la figura 32, se debe tener una poltica de solucin de conflictos (por ejemplo, la forma en que se asignan los recursos mediante el orden de arribo o por aleatoriedad o por prioridades) o de lo contrario algunas partes del sistema modelado podran entrar en inanicin, es decir, algunas de las ramas podran nunca ocurrir. Cuando una PN no es libre de conflicto y tiene una poltica de solucin para ellos, se dice que es una PN Justa.

47

t3 y t4 son justas porque ambas se

pueden habilitar varias veces pero no siempre ocurrirn, pues estn en conflicto. cuando una marca llega a p3, t3 y t4 se habilitan, pero slo una de ellas puede ocurrir.

Figura 32. PN Justa.

Una forma de determinar los conflictos en una red, es recorrer las filas de la matriz de incidencia previa, correspondientes a cada uno de los lugares y en ellas no debe encontrarse ms de un elemento distinto de cero, como se ilustra en la figura 28, para la red de la figura 27, que presenta un conflicto, si la red es binaria.

t1 t 2 t 3 t 4 t 5 t 6

p1 p A= 2 p3 p4 p5

1 0 0 0 0

0 1 0 0 0

0 0 1 0 0

0 0 1 0 0

0 0 0 1 0

0 0 0 0 1

Conflicto

Figura 33. Matriz de incidencia previa de la PN de la figura 32.

48

2.10.

Tipologas de las Redes de Petri

Una de las caractersticas ms interesantes de las PN es su capacidad de representacin grfica de los distintos subsistemas que constituyen un sistema global, entendiendo por subsistema al conjunto de operaciones estrechamente interrelacionadas llevadas a cabo para la consecucin de un objetivo parcial. Por ejemplo, el conjunto de operaciones elementales llevadas a cabo por una mquina de control numrico, dentro de un sistema de fabricacin automatizado. An ms, las PN permiten modelar de una manera muy robusta y legible las relaciones existentes entre los diversos subprocesos de un proceso global. En los apartados siguientes se abordar el modelado de las tipologas ms comunes.

2.10.1. Secuencia Definicin 136 Son redes que representan sistemas que evolucionan de estado a estado por medio de la ejecucin de acciones simples; para cada marcaje alcanzable solo existe una marca en la red.

Ejemplo 20

Figura 34. Proceso secuencial.

49

2.10.2. Bifurcacin (Fork) Ejemplo 21 La ocurrencia de un evento implica la ejecucin de al menos dos procesos diferentes.

Una transicin tj presenta una bifurcacin, si:

tj2

Ejemplo 22

Figura 35. Bifurcacin.

50

2.10.3. Unin o sincronizacin Definicin 147 Este tipo de estructura recombina la ejecucin de dos o ms procesos diferentes en uno solo. Se utiliza cuando se requiere sincronizar varios procesos.

pipj={tj}

Ejemplo 23

Figura 36. Sincronizacin.

2.10.4. Concurrencia o Paralelismo Definicin 28 En las redes que presentan esta estructura, dos sistemas o eventos se habilitan evolucionando sin interactuar entre ellos, es decir, independientemente una vez se haya dado la bifurcacin de la red. El paralelismo debe terminar en una sincronizacin. La concurrencia se puede interpretar como dos subredes que evolucionan independientemente, cuya evolucin inicia con el disparo de una transicin que est en bifurcacin y termina con una sincronizacin. Las dos redes no tienen lugares ni transiciones comunes.

51

Ejemplo 24

Figura 37. Concurrencia o Paralelismo. 2.10.5. Cita Rendez Vous Tambin conocida como causalidad.

Figura 38. Red correspondiente a un sistema con cita.

52

2.10.6. Exclusin mutua Dos lugares estn en exclusin mutua si a partir del marcado inicial, nunca pueden estar marcados simultneamente.

Ejemplo 25

Figura 49. Exclusin Mutua.

2.10.7. Recurso compartido Definicin 29 Esta estructura es caracterstica de aquellos sistemas en los que existe un solo recurso y este debe ser compartido por varios procesos. Despus de utilizar el recurso este es devuelto para que el proceso que no se pudo ejecutar anteriormente se realice.

53

Ejemplo 266

Figura 40. Red de un sistema con recurso compartido.

2.10.8. Colas Definicin 30 Esquema utilizado para representar la prestacin de un servicio requerido por varios usuarios; es una de las aplicaciones ms comunes del recurso compartido.

54

Ejemplo 27

Figura 41. Red de Petri que representa una cola. En la figura 41 el lugar p1 representa la llegada de los clientes, p2 el servicio requerido,

t1 el evento de inicio de prestacin del servicio y t2 el evento de fin de prestacin del


servicio.

2.11.

Mtodos de Anlisis

La validacin funcional y la verificacin funcional son dos tipos de estudios cualitativos a travs de los cuales se realiza un estudio del modelo. En un anlisis de validez, o validacin funcional, se determina si el modelo del sistema que ha sido diseado, es decir su descripcin, cumple una serie de propiedades que caracterizan su buen funcionamiento. En un estudio de verificacin se examina la descripcin del sistema a fin de comprobar si esta cumple las especificaciones. El estudio de verificacin tiene que considerar la semntica, la significacin, de cada una de las operaciones o acciones elementales.

Para realizar la validacin y verificacin de los modelos es necesario recuperar el concepto de las propiedades de vivacidad y limitacin, entre otras, que han sido definidas con anterioridad.

En este trabajo se abordar el anlisis mediante el mtodo de rbol de alcanzabilidad o cobertura.

55

A travs del anlisis del modelo se puede dar respuesta a preguntas tales como:

Es posible alcanzar un estado final Mf deseado a partir del estado inicial M0? Cual es el conjunto de todos los posibles estados finales a los que se puede llegar a

partir del estado inicial M0? Es posible que el proceso entre en bloqueo? Que conjunto de transiciones hay que disparar para alcanzar un estado determinado? Los mtodos de anlisis para redes de petri se pueden clasificar en los siguientes grupos:

1. 2. 3. 4.

Mtodo de rbol de alcanzabilidad o cobertura. Enfoque de matriz de ecuaciones. Tcnicas de reduccin y sntesis. Anlisis por simulacin.

Los mtodos correspondientes a los tres primeros grupos se denominan mtodos estticos. Su aplicacin a las PN conduce a resultados exactos. Los mtodos de simulacin se denominan mtodos dinmicos y permiten una cierta confianza en la descripcin, pero no demuestran propiedades.

2.11.1. Mtodo de rbol de alcanzabilidad. Para enumerar todos los marcados alcanzables de una red se construye el rbol de alcanzabilidad. La construccin de este rbol consiste en tomar como raz del rbol el marcado inicial de la red y disparar todas las transiciones habilitadas. Esto lleva a nuevos marcados que habilitan otras transiciones. Tomando cada uno de esos nuevos marcados como una nueva raz, se pueden generar recursivamente todos los marcados alcanzables.

Este mtodo de anlisis es dependiente del marcado inicial, por tanto, es til para determinar propiedades de comportamiento. Una alternativa para la construccin del rbol de alcanzabilidad es la implementacin del la herramienta de anlisis del software Cabernet desarrollado por el Politcnico de Miln, que permite a travs del constructor TRT (time reachability tree) obtener el rbol de alcanzabilidad de una red de Petri. 56

Ejemplo 28 En la figura 42 se muestra una red de Petri y su rbol de alcanzabilidad obtenido mediante el programa Cabernet. Este rbol demuestra que la red es segura, viva, cclica y que esta tiene dos secuencias posibles =t1,t2,t4 y =t1,t3,t5, las cuales son identificables a partir de la visualizacin de las propiedades de cada uno de los nodos que componente el rbol.

Figura 42. Red de petri y su rbol de alcanzabilidad.

57

Herramienta TRT de Cabernet La representacin grfica del rbol proporciona un estado simblico a cada uno de los estados que puede alcanzar una PN. Los diferentes smbolos implementados sobre los nodos dependen del estatus de cada estado alcanzado. Esto permite agilidad para la obtencin de un anlisis final sobre la PN considerada.

Siguiente tabla contiene las representaciones graficas implementadas en la herramienta TRT de Cabernet.

Representacin Grfica

Smbolo Representa un estado normal Representa un estado final Representa un estado de bloqueo Representa bloqueo y estado final Representa un estado no explorado, considerando que el analisis de este estado no es nencesario para alcanzar un resultado final.

Tabla 1. Representaciones grficas de Cabernet.

Algunas de las propiedades que se pueden estudiar utilizando el rbol de alcanzabilidad

T para una red de Petri R,M0 son las siguientes:

1. Una red R,M0 es acotada y as M(R,M0) es finito si y solo si el rbol T finaliza con la representacin grfica de . 2. Una red esta bloqueada si tiene en su estructura Nodos Terminales. Es decir, si alguno de los nodos del rbol T tiene la representacin grfica de . 3. Una red R,M0 es segura si y solamente si en los nodos de T solo aparecen 0s y 1s como su marcaje. 4. Una transicin t es no viva si y solamente si, no aparece como etiqueta de un arco en T. En Cabernet se evala a travs de la ventana de propiedades de cada uno de los nodos. Es decir, evaluando en cada una de estas ventanas la ultima transicin disparada. 58

5. una PN es viva para M0 si y slo si, se cumple que en su rbol de cobertura no existe ningn nodo Terminal. Obtencin del rbol de alcanzabilidad con Cabernet. El procedimiento de obtencin se ilustra con el ejemplo 29.

Ejemplo 29 La red de la figura 43 es una red de Petri no limitada para la cual se pide construir el rbol de alcanzabilidad.

Figura 43. PN no limitada.

El primer paso para obtener el rbol de alcanzabilidad con Cabernet es llegar a la ventana de configuracin de las opciones de la herramienta TRT, como muestra la figura 44.

59

Figura 44. Trayectoria para visualizar la ventana de opciones del TRT. Para la PN de la figura 43 la ventana de opciones debe quedar como muestra la figura 45.

Figura 45. Opciones del TRT Una vez establecida la configuracin se procede a obtener el rbol como muestra la figura 46.

Figura 46. Obtencin del rbol de alcanzabilidad

60

El rbol obtenido d a travs de la herramienta de anlisis de Cabernet se muestra en la figura 47.

Figura 47. rbol de alcanzabilidad con Cabernet En la figura 47 el rectngulo corresponde al bloqueo de la red cuando ocurre la secuencia =t1t2, el crculo indica que se llego a un estado final y la estrella indica un estado no explorado porque su anlisis es innecesario para las conclusiones finales sobre la red. Esto considerando que es una red ilimitada y cada uno de los estados adicionales es simplemente la demostracin de esto sin la presencia de secuencias nuevas en la dinmica de la red.

Para obtener los marcajes obtenidos en cada uno de los nodos y las transiciones disparadas para obtener cada uno de ellos, sencillamente se hace doble clic sobre cada nodo y aparecer una tabla como la que muestra la figura 48 para el nodo S1.

61

Figura 48. Propiedades del nodo S1 2.12. Ejemplos de Aplicacin

A continuacin se presenta el modelo de dos problemas clsicos mediante redes de Petri para ilustrar la construccin de la red de Petri a partir de la descripcin de funcionamiento.

2.12.1. Problema del consumidor y productor El problema consiste en un proceso de produccin, consumo y almacenamiento, en el cual el sistema se encuentra en estado de produccin (crea un objeto) mientras haya capacidad de almacenamiento y luego lo coloca en el almacn; el consumidor debe esperar hasta que el objeto haya sido puesto en el almacn para poder retirar el objeto y consumirlo. Como condicin de funcionamiento, al almacn no pueden acceder el productor y el consumidor al mismo tiempo.

Para realizar una buena representacin del proceso, en primer lugar se definen los estados del sistema:

Espera para producir. Producir. Depositar.


62

Extraer. Consumir. Espera para consumir.


En las PN como se haba dicho anteriormente, los estados se representan por medio de lugares.

Como el acceso al almacn no puede ser simultneo, entonces el almacn ser un recurso compartido, y deber representarse mediante un lugar con una marca removible.

Ya se definieron algunos de los elementos que conformarn la red, ahora se procede a construir la red, en este primer caso se har un anlisis paso a paso para ilustrar al lector:

a. Para producir se necesita espacio en el almacn, por tanto se crear un lugar que indique del estado del almacn, es decir, el productor estar esperando hasta que haya espacio. La red correspondiente es la que se muestra en la figura 49 donde EP es la espera para producir y H es el indicador de espacio en el almacn.

EP

Figura 49. Representacin de la necesidad de dos condiciones para el paso a un nuevo estado. b. Si las dos condiciones anteriores se cumplen, entonces el sistema pasa al estado de produccin, y si el consumidor no se encuentra en el almacn, entonces se proceder a depositar el objeto creado, como se presenta en la figura 50 donde el lugar P corresponde al estado de producir, A al acceso del almacn (recurso compartido) y D al estado de depositar.

63

EP

Figura 50. Modelamiento de las condiciones para producir y depositar objeto en el almacn. c. Luego de depositar, el recurso del acceso al almacn deber devolverse, y el sistema de nuevo tendr que pasar al estado de espera para producir. Como el almacn solo puede almacenar k objetos, entonces el nmero de elementos del almacn se modelar como un lugar. La red correspondiente se muestra en la figura 51, en la cual B representa el nmero de objetos en el almacn.

Figura 51. Reestablecimiento del recurso y modelamiento del aumento de objetos en el almacn.

64

d. El consumidor estar esperando para entrar en el almacn. Para entrar al almacn ser necesario que hayan productos en l (existencia de marcas en el lugar B) y que en el almacn no este el productor (recurso A disponible). En la figura 52 EC es el lugar que representa el estado de espera para consumir, C es el estado de consumir y Eel estado de extraccin del objeto. e.

Figura 52. Extraccin del producto del almacn. f. Despus de extraer el producto, este podr ser consumido, se devolver el recurso de acceso al almacn y se enviar una marca al lugar que indica el nmero de espacios disponibles en el almacn. El sistema de nuevo pasar al estado de espera para consumir. La red final puede ser observada en la figura 53 en la cual se han colocado las marcas que representan un estado inicial del sistema, en B se colocaron inicialmente k marcas y por lo tanto el lugar Hse encuentra vaco.

Figura 53. Red de Petri para el problema del productor consumidor. 65

2.12.2. Problema de los filsofos. El problema de los filsofos fue propuesto por Dijkstra y consiste en cinco filsofos quienes de forma alternativa piensan y comen.

Los filsofos estn sentados en una mesa redonda en la cual hay comida china, entre cada pareja de filsofos hay un palito chino (5 palitos en total). Los filsofos estarn meditando hasta que tenga acceso a los dos palitos y puedan comer. El problema est en que el proceso se bloquear si cada uno de los filsofos toma un palito. Ver figura 54.

Figura 54. Esquema del problema de los filsofos.

La red de Petri correspondiente a este sistema se muestra en la figura 55, en la cual, los lugares marcados con M corresponden al estado de meditar, con E al estado de comer y con C los palitos que en este caso seran los recursos compartidos.

66

Figura 55. Red de Petri correspondiente al problema de los filsofos.

2.12.3. Regulacin de Liquido para un Tanque El siguiente ejemplo es ms que todo acadmico y se utiliza para mostrar la aplicacin de las PN en la solucin de problemas combinatorios. Se plantea el modelo completo de la red autnoma, que cubre completamente el espacio de estados del sistema. Sin embargo, para la solucin completa como un automatismo prctico, se requiere el enlace con las seales de sensores y actuadores, tema que se abordar en el siguiente captulo.

Considere el tanque del sistema mostrado en la figura 56. El tanque tiene dos vlvulas de llenado etiquetadas A y B y una vlvula de vaciado C localizada en el fondo del tanque.

67

El tanque contiene liquido cuyo nivel es denotado por un entero no-negativo. Se asume que se tiene total control de la apertura de las vlvulas A y B. Cuando la vlvula A se abre, automticamente esta se cierra despus de verter suficiente liquido como para que el nivel del liquido se incremente en uno. Igualmente, cuando la vlvula B se abre, esta se cierra automticamente despus de verter suficiente lquido como para que el nivel de liquido en el tanque aumente por tres unidades. Cuando la vlvula C se abre, el nivel de liquido decrementa dos unidades, cerrndose automticamente (si el nivel del lquido fuera igual o mayor que dos) y, no existe la posibilidad de abrir si el nivel lquido es menor que dos. Se asume que existe un sensor que puede medir la altura del lquido en el tanque. El objetivo se centra en regular el nivel de lquido en el tanque de forma que permanezca entre el rango de 0 a 5, sabiendo que su nivel oscila entre 0 y 7. La idea consiste en considerar el nivel del tanque como estados del sistema, y la apertura de las vlvulas como los eventos.

vlvula A

nivel vlvula B

7 5 2 nivel 0 vlvula C

Figura 56. Ejemplo de regulacin de nivel

68

Tabla 2. Descripcin de lugares y transiciones. Lugares Transiciones

pi

Nivel de lquido

aij bij cij bcij acij abcij

Apertura vlvula A Apertura vlvula B Apertura vlvula C aperturas vlvulas B y C al mismo tiempo Apertura vlvulas A y C al mismo tiempo apertura vlvulas A, B y C al mismo tiempo

Donde i=0,1,...,7

ij indican el cambio de nivel del liquido desde i


aj

69

Matriz de incidencia
1 1 0 1 12 a 0 23 0 a 0 0 34 a 0 45 0 a 0 0 56 a 0 0 67 a 1 0 03 0 1 b 14 b 0 0 25 0 0 b 36 b 0 0 47 c 1 0 C = 20 c 0 1 31 c 0 0 42 0 0 c 53 c 0 0 64 0 0 c 75 bc 0 0 23 bc 0 0 34 0 0 bc 45 0 ac 0 32 0 0 ac 43 0 ac 0 54 0 0 abc 24 0 abc 0 35
01

1 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 0 0

0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0

0 0 0 0 0 0 1 0 0 0 0 1

Figura 57. Matriz de incidencia.

70

Figura 58. Red de Petri para el llenado de un tanque.

2.12.4. Sistema Discreto de Manufactura Se tiene un sistema de manufactura que consiste en dos mquinas y un buffer de tamao 1. Las dos mquinas indexadas con los nmeros 1 y 2 respectivamente, estn conectadas por el buffer como se muestra en la figura 59. Las mquinas pueden tomar uno de tres estados: ociosa, trabajando o defectuosa. El buffer puede estar lleno o vaco. Inicialmente se asume que el buffer est vaco y las maquinas estn ociosas. Existen especificaciones de produccin y reparacin: 1) El buffer no debe desbordarse o presentar escasez: la mquina 1 no puede operar mientras una pieza de trabajo este presente en el buffer. 2) La maquina 2 tiene reparacin y retornar a servicio con prioridad sobre la mquina 1: En caso de que ambas mquinas estn defectuosas, la mquina 2 debe repararse y retornar al servicio primero. En la tabla 3 se indican los lugares y transiciones que componen la estructura de la red de Petri para el sistema de manufactura.

71

M1

M2

Figura 59. Sistema discreto de manufactura.

Tabla 3. Descripcin de lugares y transiciones Lugares Transiciones

p1 p2 p3 p4 p5 p6 p7 p8

Mquina 1 esta ociosa Mquina 1 est trabajando Mquina 1 est defectuosa Buffer 1 est vaco Buffer 1 est lleno Mquina 2 est ociosa Mquina 2 est trabajando Mquina 2 est defectuosa

t1 t2 t3 t4 t5 t6 t7 t8

Mquina 1 comienza a operar Mquina 1 interrumpe por defecto Repara y retorna a servicio mquina 1 Mquina 1 finaliza operacin Mquina 2 comienza a operar Mquina 2 interrumpe por defecto Repara y retorna a servicio mquina 2 Mquina 2 finaliza operacin

72

Figura 60. Red de petri para el sistema de manufactura.

2.12.5. Sistema de Tanques Los fluidos A y B en los tanques T1yT2respectivamente tienen que ser transferidos al tanque T3 a travs de las vlvulas V1 y V3. La capacidad del tanque T3 es de 10 unidades e inicialmente est vaco. Se asume que el tiempo necesario para transferir el fluido A y B al tanque T3 es 2 y 3 unidades de tiempo respectivamente, adems las ratas de transferencia de los fluidos A y B son 2 y 3 unidades de volumen/tiempo respectivamente. Sean v1(t)yv2(t)los volmenes de transferencia para los fluidos A y B respectivamente, entonces vc(t)=v1(t)+v1(t) es el volumen de transferencia para el tanque T3. Por tanto las ecuaciones que describen la dinmica continua son:

v1(t)=2 v2(t)=3

73

Tabla 4. Descripcin lugares y transiciones. Lugares p1 p2 p3 Fluido A est esperando a ser transferido. Fluido A est siendo a ser transferido. Fluido A est transferido. Fluido B est esperando a ser transferido. Fluido B est siendo transferido. Fluido B est transferido Exclusin mutua. t1 t2 t3 Transiciones Apertura vlvula V1. Apertura vlvula V2. Cierre vlvula V1. Cierre vlvula V2.

p4

t4

p5 p6 p7

Figuras 61, 62 y 63. Descripcin de Sistema de Tanques

74

M0:(1001001)T M1:(0101000)T M2:(0010100)T M3:(0010011)T

t
0 1 0 0 0 0 0

t t
0 0 0 1 0 0 1 0 0 0 , 0 1 0 0

t
0 0 1 0 0 0

t t
0 0 0 0

P={p1, p2, p3, p4, p5, p6, p7 }

T={t1, t2, t3, t4}

p1 1 p2 0 p3 0 A = p4 0 p5 0 p6 0 p7 1

p1 0 p2 1 p3 0 B = p4 0 p5 0 p6 0 p7 0

0 0 0 0 1 0 0 1 1 0 1

t 1 t 2 t 3 t 4 p1 1 p2 0 p3 0 C = p4 0 p5 0 p6 0 p7 1
0 1 1 0 0 0 0 0 0 0 0

p1p2 p3 p4 p5 T M =[10000 ]
0

0 0 1 0 1 1 0 1 1 0

75

2.12.6

Taller de Maquinado

El taller tiene tres mquinas M1, M2 y M3, dos operadores F1 y F2, y un buffer intermedio as como buffers de entrada y de salida. Se asume que todos los buffers son infinitos (aceptado as bajo condiciones acadmicas) y las mquinas y operadores pueden atender un trabajo al tiempo. M1 puede ser operada por ambos operadores, mientras M2 puede nicamente ser operada por F1 y M3 nicamente por F2. Los trabajos requieren dos estados de maquinado. El primero de ellos debe ser maquinado por M1 y el otro por M2 o M3. En la red de Petri de la figura 64 se identifican los diferentes estados de las mquinas y los operadores representados por las marcas en los lugares, y su relacin se incorpora a travs de los eventos representados por las transiciones.

M2

M1

M3

Figura 64. Sistema de produccin

76

Tabla 5. Descripcin de lugares y transiciones

Lugares

Transiciones

p1 p2 p3 p4 p5 p6 p7 P8 P9

Trabajo en el buffer de entrada MaquinadoM1F1 Maquinado M2F1 Mquina 1 ociosa Operario 1 disponible Operario 2 disponible Trabajo en el buffer intermedio Maquinado M2F1 Mquina 2 ociosa

t1 t2 t3 t4 t5 t6 t7 t8 t9 t10

Llegada de trabajo

M1 comienza maquinado-operador 1 M1 comienza maquinado-operador 2 M1 finaliza maquinado-operador 1 M1 finaliza maquinado-operador 2 M2 comienza maquinado-operador 1 M3comienza maquinado-operador 2 M2 finaliza maquinado-operador 1 M3 finaliza maquinado-operado r2
Salida del trabajo

P10 Mquina 3 ociosa P11 Maquinado M3F2 P12 Trabajo en el buffer de salida

Figura 65. PN del sistema de produccin

77

2.12.7 Estacin de Gasolina Considere una estacin de Gasolina con una sola bomba y espacio exactamente para un carro. Despus de llenar el carro, un cajero recibe el pago del cliente y libera la bomba. El carro abandona el espacio prximo a la bomba antes que el siguiente vehiculo se acerque a la bomba.

Figura 66. Estacin de Gasolina

78

Tabla 6. Descripcin lugares y transiciones. Lugar Descripcin Carro en la va de ingreso a la gasolinera Bomba libre Carro listo para tanquear ubicado en la bomba Bomba libre Carro tanqueado en la bomba Cajero libre Carro tanqueado listo para salir Cajero ocupado Carro en la va de salida de la gasolinera Transicin Descripcin El carro llega a la bomba. El tanque se llena. El cliente paga. Liberacin cajero de la bomba. El carro sale de la bomba.

p1 p2 p3 p4 p5 p6 p7 p8 p9

t1 t2 t3 t4 t5

t p1 1 p2 1 p3 0 p4 0 A = p5 0 p6 0 p7 0 p8 0 p9 0

t 0 0 1 1 0 0 0 0 0

t 0 0 0 0 1 1 0 0 0

t t 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0

t1t 2 t 3 t 4 t 5
p1 0 p2 0 p3 1 p4 0 B = p5 0 p6 0 p7 0 0 0 0 0 1 0 0 p8 0 0 p9 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0

P={p1, p2, p3, p4, p5, p6, p7, p8, p9}

T={t1, t2, t3, t4, t5}

0 0 1

79

t1t 2 t 3 t 4 t 5
p1 1 p2 1

p p p p p p p p p
1 2 3 4 5 6 7 8

p3 1 p4 0 C = p5 0 p6 0 p7 0 p8 0 p9 0

0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 1 0 1 1 0 0 0 0 1

2.12.8

Protocolo de Comunicacin

Se tiene un protocolo de comunicacin entre dos procesos como el que se modela en la figura 67.

Figura 67. Modelo simplificado de un protocolo de comunicacin

80

Tabla 7. Descripcin lugares y transiciones. Place Descripcin Transicin Descripcin

p1 p2 p3 p4 p5 p6 p7 p8

Listo para enviar Listo para recibir Espera confirmacin Mensaje recibido Recibir confirmacin Enva confirmacin Buffer lleno Buffer lleno

t1 t2 t3 t4 t5 t6

Enva mensaje Recibe mensaje Recibe mensaje Enva mensaje Proceso 1 Proceso 2

2.12.9

Sistema Workflow

Se implementar un modelo para procesar las fallas tcnicas en un departamento de productos. Cada vez que una falla ocurre por ejemplo, una mquina bloqueada- el mecnico del departamento categoriza la falla y un procedimiento de reparacin toma lugar. Despus de hecho esto, una prueba se lleva a cabo, con dos posibles resultados: (1) la falla ha sido resuelta; (2) El componente defectuoso debe remplazarse. Este proceso es modelado en la figura 68.

Figura 68. Proceso del tratamiento de fallas

81

Tabla 8. Descripcin lugares y transiciones. Place Descripcin Transicin Descripcin

p1 p2 p3 p4 p8 P6

Presencia de falla Componente para reparacin Componente reparado Componente probado Componente reparado Reemplazo del componente

t1 t2 t3 t4 t5

Categorizar la falla Reparar Pruebas del componente reparado Aceptar componente como reparado Aceptar componente para reemplazo

2.13 EJERCICIOS

1. Analice las caractersticas dinmicas y estticas de la red de la figura 69.

Figura 69.

82

2. Para la siguiente red, explique si es binaria, ordinaria, pura, viva, limitada, conforme. RM=C,M0, Donde:

1 0 0 1 1 1 1 1 0 0 M 0 = [0 1 0 0]T C= 0 1 1 1 0 0 0 1 0 1

3. Utilice la ecuacin de estado para determinar el marcaje final de la red de la siguiente figura 70 si se aplica la secuencia de disparo = tb ta tc.

Figura 70.

4. Para la red de la figura 71 que se muestra a continuacin: a. Represntela en la notacin estndar RM=P,T,Amxn,Bmxn,M0.
83

b. Determine la matriz de incidencia. c. Explique si es pura, binaria, ordinaria, conforme.

d. Utilice la ecuacin de estado para determinar M 0 M 3 con=t1t2t3. e. Grafique el rbol de alcanzabilidad y determine las propiedades de vivacidad y limitacin.

Figura 71.

5. Para la siguiente matriz : a. Dibuje la red. b. Determine si es pura. c. Para M 0 = [1 0 0 1]T determine si es viva y limitada.
1 1 0 0 0 1 1 0 C= 0 0 1 1 0 1 1 0

6. Encuentre nbh(p2) para la siguiente red de la figura 72. 84

Figura 72.

7. Una RdP est definida por:

1 1 0 1 1 0 1 0 C= 0 1 1 0 0 0 1 1

a. Utilice la ecuacin de estado para hallar M1 con M0 = [ 2 0 0 0 ] y = t1 .


T

b. Explique si la red es pura, ordinaria, conforme y binaria para M0. c. Determine t1t2t4 d. Encuentre un marcaje inicial para que se cumpla que:

pP{ti,tj}T/titj={p}M(p)<a(pi,ti)+a(pi,tj)

85

Cules p, ti, tj cumplen esta definicin?

e. Determine si la red cumple que:

pP,sip>1 tp:t=1

Explique su respuesta.

3 f. Utilice la ecuacin de estado para hallar M0 M1 , con M0 = [1 1 0 0]T.

g. Analice si la red es viva y limitada para M0=[2000]T. 8. Dadas las siguientes redes, explique cul cumple la siguiente definicin:

tT,sit>1 pt:p=1

(a)

(b)

(c)

9. Para la red de Petri de la figura 73 Establecer si Mn = [1 1 1 1 1]T es alcanzable con el marcaje inicial dado.

86

Figura 73. Red de Petri para el problema 9.

10. Para la red de Petri de la figura 74 Establecer si Mn = [0 1 0 1 3] es alcanzable con el marcaje inicial dado.

p1 t1
2

p5 t2
2

p3

p2 t3 t4

p4

87

Figura 74. Red de Petri para el problema 7.

11. En la siguiente red de Petri identifique la concurrencia, el conflicto y la sincronizacin.

Figura 75. Red de petri para el problema 11

88

CAPTULO 3

3. REDES DE PETRI TEMPORIZADAS INTERPRETADAS POR PERIFERIA (Timed Periphery Interpreted Petri Nets IPN) Las redes de Petri autnomas, no estn asociadas a ningn tipo de evento ni incluyen conceptos temporales, por lo tanto con ellas slo es posible describir la estructura lgica del sistema impidiendo un modelamiento adecuado cuando se tienen sistemas que se encuentran condicionados o por el tiempo o por la ocurrencia de un evento determinado.

Con el fin de hacerlas ms apropiadas para modelar sistemas secuenciales, controlados mediante autmatas programables, las PN han sido aumentadas, asignando atributos de tiempo y de procesamiento lgico a las transiciones y funciones de entrada/salida asociadas a los lugares para establecer las relaciones de la periferia del proceso (sensores y actuadores) con el modelo. Este tipo de PN constituyen una extensin de las PN autnomas y son referenciadas como redes de Petri interpretadas por periferia, en las cuales cada lugar es asociado a un estado del proceso y a acciones sobre las salidas y las transiciones se interpretan como condiciones o eventos que en caso de ser verdaderas o de ocurrir, obligan al sistema a cambiar de un estado a otro.

Periferia

Controlador Controlador

Figura 76. Proceso controlado Las redes de Petri interpretadas (IPN) que se presentan estn caracterizadas por que los eventos y las condiciones se definen sobre variables booleanas. Por esta razn, se presenta inicialmente un repaso del lgebra booleana, para unificar la terminologa y la notacin; y los conceptos bsicos del lgebra de eventos, que sern tiles en el resto de este trabajo.

89

3.1

lgebra booleana

Sea

un conjunto no vaco que contiene dos elementos especiales: 0 (el cero o

elemento neutro) y 1 (el uno o elemento unidad),

B ={0,1}
Se definen la suma, el producto y el complemento para los elementos de B como:

0+0=0;0+1=1+0=1+1=1 00=0=10=01;11=1 0 =1; 1 =0


Una variable x es una variable booleana si x slo toma valores de B.

Si sobre

se definen las operaciones binarias cerradas: (+), () y una operacin

monaria (o unaria): ( ), entonces (B,+,,,0,1) es un lgebra booleana si se cumplen las siguientes condiciones para todos x ,y, z B.

Tabla 9. Leyes del algebra boolena

x +y =y+x x (y + z)= x y + x z x + 0=x x + x =1 0 1

xy+yx x + y z= (x + y )+ (x + z) x 1=x x x =x
x

Leyes conmutativas Leyes distributivas Leyes de identidad

=0

Ley de inversin

90

Como consecuencia de las operaciones definidas, se tiene:

x +x
Y adems:

=x

, x 2= x x = x , x

x+y

= 0 x =

y=0

x y = 1

x =y = 1

Sea n Z+, entonces

Bn={(x 1,x2,.,xn)/x i {0,1},1in}


Una funcin

f:

Bn B

Es una funcin de conmutacin, o booleana, de n variables. Las n variables se enfatizan si se escribe:

f (x 1,x2,.,xn)
Donde cada x i, para 1in es una variable booleana.

91

Ejemplo 30

Sea f : B
2

B, donde f (x ,y)=x + y g : B2 B,

donde g (x ,y)=x y , estas

funciones quedan determinadas evaluando f g para cada una de las asignaciones (x ,y) como se muestra en la Tabla 10.

Tabla 10. Combinacin lgica

x
1 1 0 0

y
1 0 1 0

f (x ,y ) = x + y
1 1 1 0

G (x ,y) = x y
1 0 0 0

Ejemplo 31

Sea f : B
3

B, donde f (x ,y, z)=x y + z. La evaluacin de f, se muestra en la Tabla

11.

92

Tabla 11. Combinacin lgica

x
0 0 0 0 1 1 1 1

y
0 0 1 1 0 0 1 1

z
0 1 0 1 0 1 0 1

xy
0 0 0 0 0 0 1 1

f (x ,y,z)=x y+z

0 1 0 1 0 1 1 1

Definicin 31

Para n Z+, n2, sean f, g :

Bn B

dos funciones booleanas de las n variables

booleanas x 1,x 2,.,x n. Se dice que f y g son iguales y se escribe f =g si las columnas para f y g son exactamente las mismas.

Definicin 32

Si f :

Bn B, entonces el complemento de f, que se denota con


n

f , es la funcin

booleana definida sobre B como

f (x 1 , x 2 ,..., x n ) = f (x 1 , x 2 ,..., x n )

93

Si g :

Bn B,

se define f +g , f g :

Bn B

la suma y producto de f, g,

respectivamente como

(f +g): (x 1,x 2,.,x n)=f(x 1,x 2,.,x n)+ g (x 1,x 2,.,x n)


(f g): (x 1,x 2,.,x n)=f(x 1,x 2,.,x n) g (x 1,x 2,.,x n)

La Tabla 12 resume diez leyes (consecuencias importantes de estas definiciones) Tabla 12. Leyes del algebra Booleana
Funciones Variables Ley definida Ley del doble complemento

f =f

x =x
x + y =x y

f + g = f g f g = f +g

Leyes de De Morgan

x y =x +y

f+g=g+f f g = g f f + (g + h) = (f + g) + h f(gh) = (fg)h f + (gh) = (f+g) (f+h) f (g+h)=fg+fh f+f ff f + 0= f f 1 = f f + f =1

x+y=y+x
Leyes Conmutativas

x y = y x x + (y + z) = (x + y) + z
Leyes Asociativas

x (yz) = (x y)z x + (yz) = (x+y)(x+z)


Leyes Distributivas

x (y+z)=x y+xz x+x


Leyes de Idempotencia

x x x + 0= x
Leyes de Identidad

x 1= x x + x =1
Leyes de los Inversos

94

Funciones

Variables

Ley definida

f f =0 f+1=1 f 0= 0 f + fg = f f (f +g) = f

x x =0 x+1=1
Leyes de Dominacin

x 0= 0 x + x y = x
Leyes de Absorcin

x (x + y) = x

3.2 lgebra de eventos Definicin 13 Se define un evento, como el cambio de valor de una variable en un instante de tiempo

t.
Para el caso de variables booleanas, se definir un evento como el cambio de valor binario de la variable. El cambio de estado de la variable booleana a, de cero a uno, se denomina el evento positivo de

a). El cambio de uno a cero se denomina evento negativo o flanco de bajada y se denota: ( a). El cambio de estado de la variable a es representado en la Figura 77.

o el flanco de subida de a y se denota: (

Figura 77. Diagrama temporal para la variable booleana a. 95

Definicin 34 Sea f (x 1, x 2,., x n) una funcin booleana, donde (x 1, x 2,., x n) son variables booleanas, cuyo valor se define desde el tiempo t=0, y tal que para t1 <

t2< t3 < t4<

tn1< tn< tn+1 se cumple que:

f =0 para los intervalos [0,t1),[t2,t3),, [tn1,tn) f =1 para los intervalos [t1,t2),[t3,t4),, [tn,tn+1)
Si 0< t1, el evento

f= f (x 1,x 2,.,x n) ocurre en el tiempo t1,t3,...,tn y el evento

f ocurre en el tiempo t2,t4,...,tn1.

La Figura 78 presenta en forma grfica esta definicin.

Figura 78. Grfica correspondiente a la Definicin 34.

Propiedades:

a. El smbolo b.

es precedente a los smbolos lgicos () y (+.) Es decir x y =( x )y y x +y = ( x )+y. x y es un evento que ocurre al mismo tiempo que x, cada que y =1. 96

c. La probabilidad de ocurrencia de dos eventos independientes simultneos es 0. Es decir, x y=0, si x y y son dos variables independientes. d. x + y es un evento que ocurre en el momento en que x o y ocurran. e. Sea S un sistema cuyo comportamiento depende de un conjunto de eventos . Entonces (t) es el evento asociado con S en el tiempo t : (t) U {}. donde

es un evento nulo del conjunto en el tiempo t.


f. Sean e1 y e2 dos eventos. Se escribe e1 = e2, si e1 y e2 son equivalentes, es decir, si ellos siempre ocurren al mismo tiempo. g. Un evento no tiene duracin en el tiempo. h. e1 = 0, si e1 es un evento que nunca ocurre. i. Dos eventos e1 y e2 son independientes si no existe un evento ei tal que

e1=w + x ei , e2=v + y ei
Donde v y w son eventos, x y y son funciones booleanas o variables booleanas que cumplen que

w + v + x y ei >x + y.

Ejemplo 12

e1 = f

e2 = g no pueden ser independientes si ambos dependen de la misma

variable booleana x , por ejemplo, f =x y y g = x. Hiptesis 1 La probabilidad de ocurrencia simultnea de dos eventos independientes es cero. Es decir:

x y =0,x

, y son dos variables independientes

La hiptesis anterior se basa en el hecho de que un evento no tiene duracin.

97

A continuacin se definen algunas propiedades de los eventos: Propiedad 1 El flanco positivo de una seal es igual al flanco negativo del negado de la seal.

x = x
Propiedad 2 El producto lgico entre el flanco positivo de una seal y la seal es igual al flanco positivo de la seal y viceversa.

x x = x
Propiedad 3 El producto lgico entre el flanco positivo de una seal por el complemento de la seal es igual a cero y viceversa.

x x =0 xx=0
Propiedad 4 El producto lgico entre un flanco de una seal por si mismo es igual al flanco de la seal.

x x = x x x = x

98

Propiedad 5 El producto lgico entre el flanco positivo de una seal por el flanco negativo de la misma es igual a cero.

x x = x x =0
Propiedad 6 Si x y y son dos variables booleanas independientes, entonces:

(x y)= x y + y x (x + y)= x y + y x

Propiedad 7

x y es un evento que ocurre cuando se presenta x, cada qu y = 1

Figura 79.

99

Propiedad 8

x + y es un evento que se presenta cada que se presentan x y.

Figura 80. Propiedad 9 La suma de una variable booleana con sus eventos, es la misma variable.

x+x =x

Figura 81.

100

3.3 Redes de Petri interpretadas por periferia

Las Redes de Petri Interpretadas por Periferia (IPN), asocian los estados del sistema a los lugares y establecen condiciones booleanas y eventos en las transiciones. El nombre Interpretadas por Periferia es usado para reforzar el hecho de que la influencia del ambiente en el sistema est basada en las seales de entrada y salida y que los eventos externos se detectan en los cambios de estado de las seales binarias de entrada. En algunos trabajos, la interpretacin asocia a cada transicin una receptividad, la cual se define como el producto de un evento por una condicin booleana.

3.3.1

Receptividad

Sea un conjunto de eventos:

= { e1, e2,,en}
Y una funcin de conmutacin :

=Bn B =f (x 1,x2,.,xn)
El producto de un evento por una funcin de conmutacin se denomina receptividad y se asocia a las transiciones, tal como se ilustra en la Figura 82:

Figura 82. Red de Petri interpretada. 101

3.3.2

Reglas de disparo de una transicin con receptividad

Para que ocurra el disparo de una transicin con receptividad es necesario que se cumplan las siguientes condiciones:

Estsensibilizada EsReceptiva

La transicin debe estar sensibilizada. La transicin debe ser receptiva. Una transicin es receptiva si:

ti[t0,tj]talquee0
Es decir, la transicin se dispara si la transicin esta sensibilizada y si la funcin de conmutacin es verdadera en el instante en el que ocurra el evento.

Figura 83. Diagrama temporal

102

Ejemplo 33 Sea la red de la Figura 84:

Figura 84. PN con receptividad.

En este ejemplo, se tiene:

E ={

a}

= { b }

El comportamiento de esta red es tal, que la marca permanecer en el lugar p1 hasta que la variable booleana b sea verdadera y el evento a ocurra. Si el evento ocurre pero la variable booleana es falsa, entonces la marca no se transfiere a otro estado.

103

La Figura 85 muestra el comportamiento de la red de la Figura 84.

Figura 85. Diagrama temporal para la PN de la Figura 74.

3.4 Redes de petri temporizadas Definicin 35 Las redes de Petri temporizadas son aquellas que corresponden a sistemas cuyo comportamiento depende del tiempo, el cual puede estar asociado con los lugares o con las transiciones; estas redes se conocen en la literatura como P timed PN y T

timedPN respectivamente.

3.4.1

PtimedPN

Una PtimedPN es un par:

PtimedPN=RM,(p)

104

Tal que:

RM es una red de Petri marcada.

p es una funcin que va del conjunto P de lugares al conjunto de los


nmeros reales positivos incluyendo el cero.

(p):P+
Si se define (p)= i como el tiempo asociado al lugar pi, entonces cuando una marca llega a un lugar pi de una PtimedPN, la marca debe permanecer all al menos i unidades de tiempo, durante ese tiempo no se tiene acceso a la marca, de modo que no puede ser disparada. Luego de que el tiempo

i haya transcurrido entonces la marca

puede participar en la habilitacin de la transicin.

3.4.2

T-timed PN

Una TtimedPN es un par:

TtimedPN =RM,(t)
Donde:

RM es una red de Petri marcada.

t es una funcin que va del conjunto T de transiciones al conjunto de los


nmeros reales positivos incluyendo el cero.

(t) : T +

Sea (t)=i el tiempo asociado a la transicin ti. Cuando una marca llega a un lugar de entrada de la transicin tj de una TtimedPN, se habilita la transicin ti. Antes del disparo de la transicin la marca se debe reservar al menos

i unidades de tiempo,
105

durante el cual la marca no podr estar disponible para otra actividad diferente, luego de

pasado el tiempo la transicin puede disparar y la marca pasa a los lugares de salida de la transicin.

NOTA:

En este trabajo, los modelos se desarrollan con base en las T timed PN, de esta forma se tendr la siguiente definicin para las PN temporizadas.

Comportamiento dinmico de las Ttimed PN

En la PN de la Figura 86 existe un retardo al cabo del cual se presenta un evento (flanco positivo de tiempo) que hace evolucionar el sistema.

Figura 86. Representacin de una red de Petri temporizada.

Figura 87. Esquema temporal de la red de la Figura 86.

106

3.5 Redes de Petri temporizadas interpretadas por periferia (IPN) Conocidas en la literatura como Timed periphery interpreted Petri nets o Timed Signal Interpreted Petri Nets Timed Signals, las PN temporizadas interpretadas por periferia permiten modelar conexiones entre el algoritmo y su ambiente, haciendo posible la implementacin de estas en un controlador del proceso.

Figura 88. Proceso controlado con PLC 3.5.1 Definicin de las IPN

Las redes de Petri temporizadas interpretadas por periferia, pueden describirse mediante una 7-tupla:

IPN =RM,I,Q,,E,,
Donde:

RM: Es una PN marcada autnoma, la cual debe ser pura, binaria y ordinaria.

107

I: Conjunto de entradas booleanas (periferia del proceso). Se asocia con los sensores
binarios

I={i1,i2,, ir},I i{0,1},1ir Q: Conjunto de seales de salida booleanas (periferia del proceso). Se asocia con los
actuadores binarios.

Q:{q1,q2,qs} ,q i{0,1},1is

: Es una funcin de salida que asigna a cada p P un valor booleano para cada
elemento del conjunto de salidas Q.

:P{0,1}
E:

|Q|

es una funcin que asigna a cada t T un evento perteneciente al conjunto de

eventos . Los eventos son generados por las variables booleanas asociadas a las entradas.

E : T ,= {e1, e2,......, en} = { i1 , i1,......, ir, ir };i1, ir I

: Es una funcin que asigna a cada t T una funcin de conmutacin, siendo esta
funcin de conmutacin sobre las entradas del proceso.

:T,: Bn B , =f (i 1,i2,.,ir)
108

Es una funcin del tiempo que impone un retardo al disparo despus de la

sensibilizacin.

:T+

NOTA: Si una transicin tiene asociado un retardo

, el evento asociado a esa transicin es

.
Esto es:

Si (ti)0 E (ti)=

Si se asigna un evento diferente a

, se estar produciendo una situacin de eventos

independientes simultneos; situacin no deseable como consecuencia de la Hiptesis 1. Ejemplo 34

Figura 89.

109

Para que el marcaje evolucione de p1 a p2, debe cumplirse que instante en el que

ab 0

en el

0. Como puede verse en el diagrama, este disparo no es posible.

En resumen la notacin de eventos se presenta a continuacin:

El evento e asociado a la transicin t, se representa E(t). El evento e cuya ocurrencia se presenta en el instante t se denota (t). Los eventos e1 y e2 pertenecen a .

es un evento nulo del conjunto .


El siguiente ejemplo muestra la utilizacin y escritura de los conjuntos y funciones de una red de Petri interpretada.

Ejemplo 35

I={i1,i2,i3,i4} ={ i1, i2, i3, i4, i1, i2, i3, i4} Q:{q1,q2} (p1)=(0,1)

(t1)=i1+i2i3
E(t2)= i4

(t )= =10
4 1

En resumen, en el formalismo IPN definido, se entiende que es interpretado por periferia por:

110

En los lugares se especifican las acciones sobre las salidas:

:P(0,1)|Q|
En las transiciones se asignan receptividades, que son funciones de las entradas.

E(ti)=f(i1,i2,, ir)
NOTA:

Para simplificar la notacin relacionada con la funcin de salida

, se puede expresar

en el lugar correspondiente, la accin de encendido o apagado de las salidas que cambien su valor lgico, o representar con el smbolo x si la salida no cambia el valor lgico en el lugar respectivo, tal como se muestra en la Figura 90.

Figura 90. Notacin simplificada de una IPN

Otra recomendacin, til para simplificar la representacin grfica, es emplear una tabla en la que se relacionan los lugares con las funciones de salida, utilizando cualquiera de las descripciones anteriores; y las transiciones con las receptividades.

111

La Figura 91 ilustra la utilizacin de estas tablas.

Figura 91. PN para la simplificacin de la notacin. Tabla 13. Funciones


Funcin Lugar Receptividad Transicin

(pi)
(0,0,0,0)

E (ti) (ti)

p1 p2 p3 p4 p5

t1 t2 t3 t4 t5

i0 i3 i1 i2 i2 i4 i2

q1=1 q3=1
(0,1,x,x) (x,x,0,1)

112

3.6 Anlisis de IPN No es posible trasladar directamente y de forma general los resultados del anlisis de la

PN autnomas sobre las IPN, considerando que ahora el comportamiento dinmico del
modelo es afectado por la receptividad con la que se proveen las transiciones de los modelos construidos mediante IPN.

Propiedad de Acotamiento: Una IPN es limitada si la PN correspondiente tambin lo es. Una PN no limitada puede ser limitada al asocirsele una temporizacin o interpretacin. Ejemplo 36

Figura 92. PN autnoma no-limitada mientras la t -PIPN es limitada La PN de la Figura 92 no es limitada. Ahora si el ciclo de la izquierda dura ms que el de la derecha si es limitada, es decir:

Si

(t1)+(t3)> (t2)+(t4), entonces la IPN es limitada.

Adems la PN de la Figura 92 puede ser limitada al asocirsele una interpretacin como se muestra en la Figura 93.

113

Figura 93. Red de petri interpretada

Para ello la interpretacin asociada debe establecer una secuencia tal que la IPN pueda alcanzar una marcaje que determine una red limitada.

En conclusin, para que una IPN sea limitada no es necesario que la PN lo sea. Si una

PN es limitada, cualquier IPN construida sobre ella ser limitada.

Estudio de la vivacidad

La vivacidad de una IPN no podr ser inferida, en modo alguno, partiendo de la vivacidad o no-vivacidad de la PN autnoma.

Al comprobar la evolucin de la IPN de la Figura 94 considerando las temporizaciones de la Tabla 14 asignadas cada una de las transiciones de la red, permiten que la red sea Viva. Lo contrario sucedera con la secuencias 1 = t3t4t3t4 y 2 = t2t1t2t1 para las cuales es imposible disparar otra transicin.

114

Figura 94. IPN para el estudio de vivacidad Tabla 14. Temporizaciones para la red de la Figura .
Temporizacin Valor 3 5 4 4 15 5 5

(t1) (t2) (t3) (t4) (t5) (t6)

(t7)

De otra manera una PN simple es viva para un marcado M0, toda IPN construida a partir de la red es viva para M0, si todos los eventos asociados a las transiciones pueden producirse. Su justificacin puede establecerse a parir de las redes de la Figura 95 y Figura 96.

115

La IPN no es viva, la PN autnoma no lo es.

Figura 95. Vivacidad y IPN

La IPN no viva, la PN autnoma si lo es.

Figura 96. Vivacidad y IPN Como se ilustr, la temporizacin y la interpretacin asociada a una red introducen restricciones adicionales sobre las secuencias de disparo posibles en la red autnoma.

116

EJEMPLOS. Ejemplo 37 Sistema de Llenado de tanques (Llenado y vaciado secuencial de los tanques 1 y 2)

Un sistema de llenado de tanques como el que se muestra en la Figura 97 funciona con el siguiente ciclo:

El proceso comienza activando el pulsador inicio M. Las vlvulas W1 y W2 se encuentran cerradas mientras la vlvula V1 se abre con el fin de llenar el tanque 1. Luego de haberse llenado el tanque 1 hasta el nivel H1, se cierra la vlvula V1 y se abre la vlvula V2. Luego de haberse llenado el tanque 2 hasta el nivel H2, se inicia el vaciado del tanque 1, cerrando la vlvula V2 y abriendo la vlvula W1 hasta que el nivel del tanque 1 llegue a B1.
B

El tanque 1 al llegar al nivel B1, inicia el vaciado del tanque 2hasta el nivel B2,
B B

cerrando la vlvula W1 y abriendo la vlvula W2. El ciclo se interrumpe con un pulsador P de modo que desde cualquier estado, el proceso se detiene.

Se requiere disear la red del automatismo.

Figura 97. Sistema de llenado de dos tanques. Se definen en primer lugar el conjunto de entradas y salidas del sistema, tal como se muestra en la Tabla 15 y Tabla 16 respectivamente: 117

Tabla 15. Lugares Lugar Descripcin Estado ocioso de los tanques Vlvula Activa de alimentacin tanque 1 Vlvula Activa de alimentacin tanque 2 Vlvula Activa de descarga tanque 1 Vlvula Activa de descarga tanque 2

p1 p2 p3 p4 p5

Tabla 16. Transiciones Transicin Descripcin Inicio del ciclo Mximo nivel del tanque 1 Mximo nivel del tanque 2 Mnimo nivel del tanque 1 Mnimo nivel del tanque 2 Pulsador de Parada

t1 t2 t3 t4 t5 t6,t7,t8,t9

118

Tabla 17. Direccionamiento de las entradas Smbolo Direccin Descripcin Pulsador de inicio Mximo nivel del tanque 1 Mximo nivel del tanque 2 Mnimo nivel del tanque 1 Mnimo nivel del tanque 2 Pulsador de parada

M H1
Entradas

i1 i2 i3 i4 i5 i6

H2 B1
B

B2
B

Tabla 18. Direccionamiento de las salidas Smbolo Direccin Descripcin Vlvula alimentacin tanque 1 Vlvula de alimentacin tanque 2 Vlvula de descarga tanque 1 Vlvula de descarga tanque 2

V1
Salidas

q1 q2 q3 q4

V2 W1 W2

De modo que el vector estar compuesto por cuatro elementos.

119

La red de Petri ser la que se presenta en la Figura 98.

Figura 98. IPN correspondiente al automatismo del sistema de tanques (secuencial).

120

Tabla 19. Funciones Funcin Lugar Receptividad Transicin


E (ti) (ti)

(pi)
(0,0,0,0) (1,0,0,0) (0,1,0,0) (0,0,1,0) (0,0,0,1)

p1 p2 p3 p4 p5

t1 t2 t3 t4 t5 t6,t7,t8,t9

i1 i2 i3 i4 i5 i6

La seal de vaciado de los tanques se toma como un flanco negativo, ya que se supone que se encuentra activo a partir del momento en que se llegue a este nivel. Ejemplo 38 Sistema de Llenado de tanques (Llenado y vaciado en paralelo de los tanques 1 y 2) Se considera el sistema de llenado de tanques del Ejemplo 37 con la variante de que el llenado y vaciado se realiza en paralelo, es decir tal como ilustra el siguiente ciclo de funcionamiento: El proceso comienza activando el pulsador de inicio. Las vlvulas W1 y W2 se encuentran cerradas mientras las vlvulas V1 y V2 se abren para llenar los tanques 1 y 2. Luego de haberse llenado los tanques hasta sus niveles mximos, se cierran las vlvulas V1 y V2 y se abren las vlvulas W1 y W2 para el vaciado de los tanques hasta los niveles B1 y B2 respectivamente.
B B

El ciclo se interrumpe con un pulsador P de modo que desde cualquier estado, el proceso se detiene.

Con el direccionamiento propuesto en el Ejemplo 38 se debe disear la red del automatismo. 121

Tabla 20. Lugares Lugar Descripcin Estado ocioso de los tanques Vlvula Activa de alimentacin tanque 1 Vlvula Activa de alimentacin tanque 2 Desactivacin Vlvula de alimentacin tanque 1 Desactivacin Vlvula de alimentacin tanque 2 Vlvulas Activas de descarga tanque 1 y tanque 2 Desactivacin Vlvula de descarga tanque 1 Desactivacin Vlvula de descarga tanque 2

p1 p2 p3 p4 p5 p6 p7 p8

Tabla 21. Transiciones Transicin Descripcin Inicio del ciclo Mximo nivel del tanque 1 Mximo nivel del tanque 2 -Mnimo nivel del tanque 1 Mnimo nivel del tanque 2 -Pulsador de Parada

t1 t2 t3 t4 t5 t6 t7 t8,t9,t10,t11,t12,t13,t14

122

La IPNpara este automatismo se presenta en la Figura 99.

Figura 99. IPN correspondiente al automatismo del sistema de tanques (paralelo)

123

Tabla 22. Funciones Funcin Lugar Receptividad Transicin


E (ti) (ti)

(pi)
(0,0,0,0) (1,0,0,0) (0,1,0,0) (0,0,0,0) (0,0,0,0) (0,0,1,1) (0,0,0,0) (0,0,0,0)

p1 p2 p3 p4 p5 p6 p7 P8

t1 t2 t3 t4 t4 t5,t6 t7 t7 t8,t9,t10,t11,t12,t13,t14

i1 i2 i3

i4, i5

Ejemplo 29 La Figura 100 muestra una cmara de are (acumulador de aire comprimido), de la cual puede extraerse aire comprimido a travs de una vlvula. Dos sensores binarios PS1 y

PS2 son utilizados para monitorear la presin en la cmara. Dos compresores de aire (A
y B) estn alimentando la cmara. Los compresores dan una seal cuando entran en falla.

124

Compresor A

PS 1

M Aire Comprimido

PS 2

Aire

Aire comprimido para el consumidor

Compresor B

Figura 100. Compresor Acumulador de aire Se tiene la siguiente especificacin informal: 1). Si la presin es menor o igual que 6.1 bares (PS1 conmuta a ON), el compresor A debe trabajar. 2). Si la presin es mayor que 6.1 bares (PS1 conmuta a OFF), ningn compresor debe funcionar. 3). PS1 esta asociado a el compresor A y PS2 esta asociado al compresor B. 4). El compresor A funciona hasta cuando entre en falla, posteriormente funciona el compresor B mientras se arregla el compresor A.

Para implementar el control de las seales I/Q se codifican como se muestra en la Tabla 23 y la Tabla 24.

125

Tabla 23. Lugares Lugar Descripcin Compresor A inyectando aire, Compresor B apagado Compresor A inyectando aire Compresores A y B apagados Compresor B inyectando aire, Compresor A apagado Compresor B inyectando aire Compresores A y B apagados

p1 p2 p3 p4 p5 p6

126

Tabla 24. Transiciones Transicin Descripcin Presin <6,1 bares Presin >6,1 bares Presin >6,1 bares Compresor A en falla Compresor A en falla Presin <6,1 bares Presin >6,1 bares Presin >6,1 bares Compresor B en falla Compresor B en falla Compresor B en falla Compresor A en falla

t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12

Tabla 25. Direccionamiento de las entradas Direccin Significado del valor binario i =1 Presin <6,1 bares Presin >6,1 bares Compresor A en falla Compresor B en falla

i1
Entradas

i2 i3 i4

127

Tabla 26. Direccionamiento de las salidas Direccin Salidas Significado del valor binario i =0 Compresor A operando Compresor B operando

q1 q2

Figura 101. IPN para el automatismo de la cmara de aire.

128

Tabla 27. Funciones Funcin Lugar Receptividad Transicin


E (ti) (ti)

(pi)
(1,0) (1,0) (0,0) (0,1) (0,1) (0,0)

p1 p2 p3 p4 p5 p6

t1,t2,t12 t3,t4 t5 t6,t7,t11 t8,t9 t10

i1, i2, i3 i2, i3 i3 i1, i2, i4 i2,i4 i4

Ejemplo 40 Celda de Manufactura

Se tiene una celda de manufactura como la que se muestra en la Figura 102, donde un producto constituido por dos piezas (Pa,Pb) son procesados. La pieza Pa requiere el uso de las maquinas M1 y M2, mientras la pieza Pb requiere las maquinas M3 y M2; ambas en la secuencia mostrada. Despus ambas partes son procesadas, ellas son ensambladas y el producto final es liberado y la celda esta lista para iniciar otro ciclo. La IPN de la Figura 103 es un modelo de la celda de manufactura.

129

Figura 102. Celda de manufactura Tabla 28. Lugares Lugar Descripcin Estado ocioso de la celda La maquina M1 trabajando La mquina M1 disponible Pieza Pa est siendo procesada en maquina M2 La mquina M2 disponible La mquina M3 trabajando La mquina M3 disponible Pieza Pb est siendo procesada en mquina M2 La mquina M2 disponible Ensamble de piezas

p1 p2 p3 p4 p5 p6 p7 p8 p9 p10

130

Tabla 29. Transiciones Transicin Descripcin Inicio del ciclo Procesamiento en M1 Procesamiento en M3 Llega Pieza Pa aM2 Llega Pieza Pb a M2 Procesamiento en M2 de pieza Pa Procesamiento en M2 de pieza Pb Ensamble y liberacin del producto

t1 t2 t3 t4 t5 t6 t7 t8

Dos diferentes seales son desplegadas cuando las mquinas M1 y M3 estn siendo usadas respectivamente, y la mquina M2 despliega dos diferentes seales dependiendo de la pieza que esta siendo procesada.

Tabla 30. Direccionamiento de las entradas Direccin Significado del valor binario i=1 Llega pieza Pa yPb Llega Pieza Pa a M2 Llega pieza Pb a M2 Ensamble

i1
Entradas

i2 i3 i4

131

Tabla 31. Direccionamiento de las salidas Direccin Significado del valor binario i=0

q1
Salidas

M1 operando sobre Pa M2 operando sobre Pa M2 operando sobre Pb M3 operando sobre Pb

q2 q3 q4

Figura 103. IPN para la celda de manufactura

132

Tabla 32. Funciones

Funcin Lugar

Receptividad Transicin
E (ti) (ti)

Retardo

(pi)
(0,0,0,0) (1,0,0,0) (0,0,0,0) (0,1,0,0) (0,0,0,0) (0,0,0,1) (0,0,0,0) (0,1,0,0) (0,0,0,0) (0,0,0,0)

(ti)

p1 p2 p3 p4 p5 p6 p7 p8 p9 p10

t1 t2 t4 t6 t8 t3 t5 t7 t8 t4,t5

i1 i2 i4 i4 ,

Ejemplo 41 Brazo Transportador El Proceso de consta en general de ciertos sensores y actuadores que permiten el funcionamiento del mismo. En la Figura 105 se muestran los instrumentos del proceso. Las entradas y salidas del proceso son definidas en la tabla 33 y tabla 34. La secuencia del proceso es la siguiente:

133

1. Condiciones Iniciales: a. Brazo en la Posicin Arriba-Derecha (i1i3) b. Brazo desenergizado (q5=0) c. Motores apagados (q1=q2=q3=q4=0) 2. Pulso de inicio del Proceso (i6=1) 3. Encendido motor abajo (q3=1) 4. Cuando llegue a posicin (i3=1), paro motor (q3=0), energizo brazo (q5=1) 5. Encendido motor (q4=1). 6. Cuando llegue a posicin (i4=1), paro motor (q4=0), Encendido motor (q1=1) 7. Cuando llegue a posicin (i4i1=1), paro motor (q1=0), Encendido motor

(q3=1)
8. Cuando llegue a posicin (i3=1), paro motor (q3=0), desenergiza brazo (q5=0) 9. El brazo llega a fin de ciclo y busca su posicin inicial, llegando a condiciones inciales y esperando nuevamente pulsador de inicio. 10. Cuando se accione pulsador de paro, el brazo se desplazar hasta posicin inicial (siempre busca posicin inicial). 11. Existir un pulsador de fin de ciclo que le indicara al proceso que complete un ciclo completo.

Figura 104. Brazo Transportador de Piezas

134

Tabla 33. Direccionamiento de las entradas Direccin Descripcin Detector Posicin (Brazo Derecha) Detector Posicin (Brazo Izquierda) Detector Posicin (Brazo Abajo) Detector Posicin (Brazo Arriba) Detector Pieza Inicio del proceso Paro del Proceso Fin de Ciclo

i1 i2
Entradas

i3 i4 i5 i6 i7 i8

Tabla 34. Direccionamiento de las salidas Direccin Descripcin Movimiento derecha Movimiento izquierda Movimiento abajo Movimiento arriba Movimiento Brazo (Abierto-Cerrado)

q1 q2
Salidas

q3 q4 q5

135

Figura 105. IPN para el brazo transportador

136

Tabla 35. Funciones asignadas a los lugares Funcin Transicin

(pi)
(0,0,0,0,0) (0,0,0,0,0) (0,0,0,0,0) (0,0,0,1,0) (0,1,0,0,0) (0,0,0,1,0) (0,1,0,0,0) (0,0,1,0,0) (0,0,0,0,0) (0,0,0,0,1) (0,0,0,1,1) (1,0,0,0,1) (0,0,1,0,1) (0,0,0,0,0)

Descripcin

p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16

Estado ocioso del Brazo. Brazo esperando orden (fuera de posicion). Brazo esperando orden (si existe pieza). Brazo sube. Brazo se desplaza a izquierda. Brazo sube. Brazo se desplaza a izquierda. Brazo baja. Brazo esperando orden (temporizacion). Brazo enciende motor para recoger. Brazo sube. Brazo se desplaza a derecha. Brazo baja. Brazo suelta pieza.

Memoria de Fin de ciclo

137

Tabla 36. Funciones asignadas a las transiciones Receptividad Transicin


E (ti) (ti)

Retardo

(ti)

Descripcin

t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16 t17 t18

i2 i4 i2 i4+ i6 i2 i3 i1 i4 i5 i2 i4 i4 i2 i4 i2 i4 i3 i2 i4 i1

Brazo en posicin inicial Inicio del proceso con Brazo en posicin izquierda arriba Brazo en posicin izquierda abajo. Brazo en posicin derecha arriba. Detector Pieza Brazo en posicin izquierda arriba Detector Posicin (Brazo Arriba) Detector Posicin (Brazo Izquierda) Detector Posicin (Brazo Arriba) Brazo en posicin izquierda arriba Detector Posicin (Brazo Abajo) Detector Posicin (Brazo Izquierda) -Temporizacin mientras brazo recoge la pieza. Detector Posicin (Brazo Arriba) Detector Posicin (Brazo Derecha) -Fin de ciclo

138

Receptividad Transicin
E (ti) (ti)

Retardo

(ti)

Descripcin

t19,t20,t21, t22,t23,t24, t25 t26 i8


Seal de Fin de Ciclo.

i7

Seal de paro del proceso.

Ejemplo 42 Mquina de transferencia de tres puestos

Las maquinas de transferencia rotativas entraan a menudo un gran nmero de entradassalidas. Este ejemplo representa 21 entradas y 20 salidas. La mquina comprende tres puestos de trabajo: modelado, mecanizacin, marcado y un puesto de transferencia. El ciclo es lanzado con el botn Inicio e inmediatamente se inicia la secuencia de transferencia. El disco es desenclavado (se libra el sensor b0) y el cilindro se desplaza hasta presionar el sensor b1 mientras el disco gira 90 grados (a1). Despus este es bloqueado devolviendo el cilindro hasta presionar nuevamente el sensor (b0). Lo que permite el retorno del tornillo del clic o gato de transferencia (a0). Cuando esta terminada la transferencia, las tres secuencias de modelado, de mecanizado y de marcados son disparadas simultneamente y se desarrolla independientemente las unas de las otras (secuencias paralelas). La transferencia para el ciclo siguiente no se obtendr, sin embargo, ms que cuando los tres puestos hayan terminado sus secuencias respectivas. El detalle de las operaciones efectivas en cada puesto se comprende analizando los elementos tecnolgicos de los diversos puestos y que se modelan mediante la PN de la Figura 107.

139

E G I H F

C B J A

E b0 b1 B A a0 a1 G F e0 e1 g0 g1 f1 f0 d0 d1 c1

D H C c0

i0 i1 j1

J h0 h1

j0

Transferencia Indexado

Mecanizado

Modelado

Marcado

Figura 106. Mquina de Transferencia circular

140

Tabla 37. Direccionamiento de las entradas Entradas Smbolo Dcy a0 a1 b0 b1 c0 c1 d0 d1 e0 e1 f0 f1 g0 g1 h0 h1 i0 i1 j0 j1 Direccin i1 i2 i3 i4 i5 i6 i7 i8 i9 i10 i11 i12 i13 i14 i15 i16 i17 i18 i19 i20 i21 Descripcin Botn inicio Fin de carrera 1 elemento A Fin de carrera 2 elemento A Fin de carrera 1 elemento B Fin de carrera 2 elemento B Fin de carrera 1 elemento C Fin de carrera 2 elemento C Fin de carrera 1 elemento D Fin de carrera 2 elemento D Fin de carrera 1 elemento E Fin de carrera 2 elemento E Fin de carrera 1 elemento F Fin de carrera 2 elemento F Fin de carrera 1 elemento G Fin de carrera 2 elemento G Fin de carrera 1 elemento H Fin de carrera 2 elemento H Fin de carrera 1 elemento I Fin de carrera 2 elemento I Fin de carrera 1 elemento J Fin de carrera 2 elemento J

141

Tabla 38. Direccionamiento de las salidas Salidas Smbolo A+ AB+ BC+ CD+ DE+ EF+ FG+ GH+ HI+ IJ+ JDireccin Descripcin Energizacin elemento A Desenergizacin elemento A Energizacin elemento B Desenergizacin elemento B Energizacin elemento C Desenergizacin elemento C Energizacin elemento D Desenergizacin elemento D Energizacin elemento E Desenergizacin elemento E Energizacin elemento F Desenergizacin elemento F Energizacin elemento G Desenergizacin elemento G Energizacin elemento H Desenergizacin elemento H Energizacin elemento I Desenergizacin elemento I Energizacin elemento J Desenergizacin elemento J

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 q12 q13 q14 q15 q16 q17 q18 q19 q20

142

Figura 107. Modelo en PN para el automatismo del transfer circular

143

Tabla 39. Funciones Funcin Lugar Transicin Receptividad


E (ti) (ti)

(pi)
P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16 P17 P18 q1=0 q4=1 q1=1 q3=1 q2=1 q5=1 q7=1 q8=1 q7=1 q8=1 q6=1 q9=1 q11=1 q12=1,q13=1 q14=1 q10=1 q16=1 q17=1,q19=1 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16 t17 t18

i1 i5 i3 i4 i2 i7 i9 i8 i9 i8 i11 i13 i12 i15 i14 i17 i19 i18 i6 i10 i21 i20 i16

144

P19 P20

q18=1,q20=1 q16=1

Ejemplo 43 Cruce vial regulado por semforos El proceso a automatizar es el cruce de dos calles perpendiculares, una principal y la otra secundaria, en las cuales se permite la circulacin en ambos sentidos, as como giros a izquierda y derecha de una calle a otra. Para la realizacin del control del cruce se ha dispuesto de 4 semforos, los cuales poseen un pulsador cada uno para que los peatones puedan controlar el cruce peatonal cuando sea necesario y un control adicional poseer el sistema de ambulancias de la ciudad para as controlar tambin su cruce en momentos de emergencia, si los dos dispositivos anteriores no son activados el autmata controlar todas las salidas por medio del tiempo e igualmente controlar la desactivacin del sistema para las horas de la madrugada por medio de un contador. En la Figura 108 se muestra el proceso a automatizar:

Figura 108. Cruce vial regulado por semforos 145

La duracin de los semforos en rojo es de 20 seg, en amarillo de 4 seg., y en verde de 20 seg. Para el paso de las personas se cuenta con un sensor que al ser activado se esperara un tiempo de 1 seg., para llevar las luces a rojo. Para el paso de las ambulancias se dispone de un sensor, que al ser activado, cambia el estado del sistema, poniendo los semforos indicados para el paso de las ambulancias en verde.

Tabla 40. Direccionamiento de las entradas.

Direccin

Descripcin Persona en semforo A Persona en semforo B Persona en semforo C Persona en semforo D Ambulancia en semforo A Ambulancia en semforo B Ambulancia en semforo C Ambulancia en semforo D

i1 i2 i3
Entrada

i4 i5 i6 i7 i8

146

Tabla 41. Direccionamiento de las salidas

Direccin

Descripcin Luz roja en semforo A Luz amarilla en semforo A Luz verde en semforo A Luz roja en semforo B Luz amarilla en semforo B Luz verde en semforo B Luz roja en semforo C Luz amarilla en semforo C Luz verde en semforo C Luz roja en semforo D Luz amarilla en semforoD Luz verde en semforo D

q1 q2 q3 q4 q5
Salidas

q6 q7 q8 q9 q10 q11 q12

147

Figura 109. Modelo en PN para el automatismo del semforo.

148

Tabla 42. Funciones asignadas a los lugares Funcin Transicin Descripcin

(pi)
p1 p2 p3 p4 p5 p6 p7 p8 p9 (0,1,0,0,1,0,0,1,0,0,1,0) (0,0,1,1,0,0,0,0,1,1,0,0) (0,1,0,0,1,0,0,1,0,0,1,0) (1,0,0,0,0,1,1,0,0,0,0,1) (0,1,0,0,1,0,0,1,0,0,1,0) (0,1,0,0,1,0,0,1,0,0,1,0) (0,1,0,0,1,0,0,1,0,0,1,0) (0,1,0,0,1,0,0,1,0,0,1,0) C1
Semforos A, B, C, D Todos en Amarillo. Semforos A y C en verde, semforos B y D en rojo. Semforos A, B, C, D Todos en Amarillo. Semforos B y D en verde, semforos A y C en rojo. Semforos A, B, C, D Todos en Amarillo. Semforos A, B, C, D Todos en Amarillo. Semforos A, B, C, D Todos en Amarillo. Semforos A, B, C, D Todos en Amarillo. Contador para desactivacin del sistema.

149

Tabla 43. Funciones asignadas a las transiciones

Receptividad Transicin
E (ti) (ti)

Retardo

(ti) =4Seg.

Descripcin

t1 t2 t3 t4 t5 t6

i1 i3 i8 i6

Espera de los semforos en Amarillo. Persona en semforo A. Persona en semforo C. Ambulancia en semforo D. Ambulancia en semforo B. Temporizacin de un segundo, al activarse el sensor por parte de las personas. Espera de los semforos en Verde y Rojo Temporizacin de un segundo, al activarse el sensor por parte de las personas. Temporizacin de un segundo, al activarse el sensor por parte de las personas. Espera de los semforos en Amarillo Temporizacin de un segundo, al activarse el sensor por parte de las personas. Ambulancia en semforo A Ambulancia en semforo C Persona en semforo B

=1Seg. =20Seg. =1Seg. =1Seg. =4Seg. =1Seg.


t7

t8

t9

t10

t11 t12 t13 t14

i5 i7 i2

150

Receptividad Transicin
E (ti) (ti)

Retardo

(ti) =20Seg.

Descripcin

t15 t16 t17

i4

Espera de semforos en Verde y Rojo; Persona en semforo D --

Ejemplo 44 Ascensor de 2 pisos

Disear un automatismo que controle un ascensor de 2 plantas como el que se muestra en la Figura 110.

PLC

Figura 110. Ascensor de dos pisos El funcionamiento es como sigue:

Estando en reposo el ascensor, la puerta estar cerrada. Para acceder al ascensor el usuario presiona el pulsador de llamada desde el exterior en la planta en la que se encuentre. El usuario debe presionar el nmero del piso al que se dirige y el ascensor debe moverse hasta que se llegue a ese piso. Si se corta la foto celda antes de que se haya cerrado la puerta, sta se abrir (Abrir puerta esperar al menos 2 segundos o que el 151

botn interior del numero del piso sea presionado) y volver a intentar cerrarla para despus moverse hacia el piso destino. Si el ascensor est en la planta desde la que se le llama, se abrir la puerta para permitir que entren las personas que lo quieran usar. Cada vez que llega a un piso debe abrir la puerta y mantenerla abierta al menos 2 segundos o que el botn interior de cierre sea presionado antes de atender una llamada. Si no hay otra llamada, se quedar la puerta cerrada. El ascensor solo atender una orden. Cuando acabe el movimiento (cerrar puerta, moverse hasta el piso destino, abrir puerta, esperar 2 segundos) podr atender otra llamada. En el interior del cajn del ascensor se encuentran dos pulsadores para indicarle al ascensor que se desplace hasta un piso. Cuando el ascensor llegue aun destino abrir las puertas para dejar salir a las personas que lo deseen, volver a cerrar sus puertas y quedar listo para un nuevo uso. Si quedara alguna persona dentro, esta podr presionar el botn interior de abrir puerta. Las seales de entrada y salida se presentan en la Tabla 44 y Tabla 45:

Tabla 44. Direccionamiento de las entradas 152

Smbolo FC

Direccin

Descripcin FOTO CELDA. Situada en la puerta del ascensor. Est a 0 si no se interpone ningn objeto, y a 1 si se interpone algn objeto. PUERTA CERRADA. Es un detector que se pone a 1 cuando la puerta se ha cerrado del todo. PUERTA ABIERTA. Es un detector que se pone a 1 cuando la puerta se abre totalmente. Detector que indica que la cabina del ascensor est en un piso. Est a 1 si el ascensor est situado en el piso 1. Detector que indica que la cabina del ascensor est en un piso. Est a 1 si el ascensor est situado en el piso 2. Pulsador llamado desde el piso 1. Pulsador llamado desde el piso 2. Botn interior de Apertura. Botn interior de cierre.

i1

SPC SPA Entradas

i2 i3

SP1

i4

SP2 LP1 LP2 A C

i5 i6 i7 i8 i9

Tabla 45. Direccionamiento de las salidas

Smbolo S Salidas B PA PC

Direccin

q1 q2 q3 q4

Descripcin SUBIR. Mueve el ascensor hacia arriba. BAJAR. Mueve el ascensor hacia abajo. ABRIR Puerta. CERRAR Puerta

153

Figura 111. PN para un ascensor de dos pisos

Tabla 46. Funciones asignadas a los lugares

154

Transicin

Funcin

Descripcin

(pi)
p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 (0,0,0,0) (0,0,0,0) (0,0,0,0) (0,0,1,0) (0,1,0,0) (1,0,0,0) (0,0,1,0) (0,0,0,0) (0,0,0,0) (0,0,0,1) (0,0,0,1) (1,0,0,0) (0,1,0,0) (0,0,1,0) (0,0,1,0) (0,0,0,0) (0,0,0,0) (0,0,0,1) (0,0,0,1)
Ascensor en reposo y puerta cerrada En espera de identificar el piso actual En espera de identificar el piso actual Ascensor abre puertas Ascensor bajando Ascensor subiendo Ascensor abre sus puertas En espera para cerrar En espera para cerrar Ascensor cierra sus puertas Ascensor cierra sus puertas Ascensor subiendo Ascensor bajando Ascensor abre sus puertas Ascensor abre sus puertas En espera para cerrar En espera para cerrar Ascensor cierra sus puertas Ascensor cierra sus puertas

155

Tabla 47. Funciones asignadas a las transiciones

Receptividad Transicin
E (ti) (ti)

Retardo

(ti)

Descripcin

t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16 t17

i6 i7 i4 i5 i4 i5 i3 i4 i5 i3 i9 i9 i2 i2 i5

Llamado del ascensor desde el piso 1. Llamado del ascensor desde el piso 2. El ascensor est situado en el piso 1. El ascensor est situado en el piso 2. El ascensor est situado en el piso 1. El ascensor est situado en el piso 2. La puerta del ascensor se abre totalmente. El ascensor est situado en el piso 1. El ascensor est situado en el piso 2. La puerta del ascensor se abre totalmente.

Retardo para el cierre de puerta. Presin del pulsador interno para indicar el cierre de puertas. Retardo para el cierre de puerta. Presin del pulsador interno para indicar el cierre de puertas. Puerta cerrada. Puerta cerrada. El ascensor est situado en el piso 2.

156

Receptividad Transicin
E (ti) (ti)

Retardo

(ti)

Descripcin

t18 t19 t20 t21 t22 t23 t24 t25 t26 t27 t28 t29 t30

i4 i3 i3 i9 i9 i2 i2 i1 i8 i8 i1

El ascensor est situado en el piso 1. La puerta del ascensor se abre totalmente. La puerta del ascensor se abre totalmente. Retardo para el cierre de puerta. Presin del pulsador interno para indicar el cierre de puertas. Presin del pulsador interno para indicar el cierre de puertas. Retardo para el cierre de puerta. Puerta cerrada. Puerta cerrada. Existe un objeto que impida el cierre de la puerta. Presin del pulsador interno para abrir puerta. Presin del pulsador interno para abrir puerta. Existe un objeto que impida el cierre de la puerta.

3.7 EJERCICIOS PROPUESTOS 1. Reactor Qumico

157

Despus de una seal de Inicio, el reactor qumico V3 es alimentado con dos clases de lquidos desde los vasos de medida V1 y V2. Despus de que la reaccin de los lquidos es completada, el reactor V3 es descargado. Cuando el reactor est vaco, el proceso comienza otra vez desde el estado inicial. Para asegurar una reaccin completa el agitador M agita los lquidos en el reactor. Desarrolle el modelo para el control de la secuencia del reactor.

Figura 112. Reactor qumico

Tabla 48. Descripcin de entradas 158

Direccin

Descripcin Botn de inicio Mximo nivel en el vaso V1,V2 Mnimo nivel en el vaso V1,V2 Mnimo nivel para activar el agitador ST Mnimo nivel en el reactor V3

i0 i1,i3
Entradas

i2,i4 i5 i6

Tabla 49. Descripcin de salidas

Direccin

Descripcin Sistema listo Vlvulas de alimentacin V1,V2 Vlvulas de descarga de los vasos V1,V2 Agitador Vlvula de descarga del reactor V3

q0 q1,q2
Salidas

q3,q4 q5 q6

Tabla 50. Descripcin de lugares

159

Lugar p1 p2 p3 p4 p5 p6 p7 p8 p9 Estado inicial Tanque V1 llenando

Descripcin

Esperando hasta que el tanque V2 est lleno Tanque V2 llenando Esperando hasta que el tanque V1 est lleno Estado ocioso del agitador M Llenado el tanque V3 desde los vasos V1yV2 Mezclando Vaciando el tanque V3

2. Para la red de la Figura 113:

Figura 113. Red de Petri para el anlisis a. Explique porque la red autnoma correspondiente es no viva y porque la red interpretada es viva. a,b,c son variables binarias. b. Exprese la red autnoma en notacin estndar y obtenga la matriz de incidencia. c. Es posible obtener una restriccin temporal en las transiciones de la red, para que la red sea viva? 160

d. Dibuje el grafo de alcanzabilidad.

3.

Para la PN de la Figura 114:

Figura 114. Red de Petri para el anlisis a. Represntela en notacin estndar. b. Analice propiedades para los siguientes casos: i. Red autnoma. ii. Red temporizada con:

1=1 sg, 2=2 sg, 3=1,5 sg, 4=0,2 sg, 5=0,3 1=0,5sg, 2=0,8sg, 3=1,2sg, 4=2sg, 5=1,8

sg,6=1sg.
iii. Red temporizada con:

c. Utilice la ecuacin de estado para determinar M0 M2, con = t1t 4 .

sg,6=1sg.

4. Dado el diagrama temporal de la Figura 115, dibuje una que lo modele:

161

Figura 115. Diagrama temporal 5. En la red interpretada por periferia de la Figura 116, existen 6 errores de definicin y representacin. Encuentre los errores y redefina la red.

Figura 116. IPN

Tabla 51. Funciones 162

Funcin Lugar

Receptividad Transicin
E (ti) (ti)

Retardo

(pi)
(0,0,0,0)

(ti)

P1 P2 P3 P4 P5

t1 t2 t3 t4 t5

i1 q0=0

q0=1 q0=0 q1=0, q0=1 q1=3

1 2
i2

p2

i1

6. Disee un automatismo mediante el formalismo IPN, para el encendido y apagado secuencial de tres motores, como se muestra en el siguiente diagrama temporal de la Figura 117. El sistema arranca con un pulsador de inicio.

t3

Figura 117. Diagrama temporal para el automatismo de tres motores.

163

7. Explique porque la red de la Figura 118 no corresponde a un modelo definido mediante el formalismo IPN.

Figura 118. PN para el ejercicio 7.

Tabla 52. Funciones. Funcin Lugar Receptividad Transicin


E (ti) (ti)

(pi)
(0,0,0,0)

p1 p2 p3 p4 p5

t1 t2 t3 t4 t5

i0 i1 i2 i2 i2

q1=1 q0=1 q1=0 q0=0

164

8. Considere el proceso qumico simple de las Figuras 119 y 120 que combina dos reactivos para producir un resultado final. Primero se vierte suficiente reactivo dentro del tanque como para alcanzar un nivel especificado, despus se vierte el segundo reactivo hasta alcanzar el segundo nivel (mientras se mezclan ambos reactivos), para luego vaciar fuera del tanque el producto final. La secuencia deseada de operaciones es la siguiente:

a. Cuando se presiona el botn Inicio, V1 deber abrirse hasta que el nivel L1 sea alcanzado. b. Cuando L1 es alcanzado, el mezclador debe operar y simultneamente V2 se abrir. c. Cuando L2 es alcanzado, el mezclador se detendr, V3 deber abrirse hasta que el nivel del tanque sea menor a L0. d. El botn Fin de ciclo permite que el ciclo termine y deja el proceso en condiciones iniciales. e. El botn de Paro detiene el proceso inmediatamente y lo lleva a condiciones iniciales de operacin.

R1 V1 V2

R2 Inicio L2 L1 L0 Findeciclo Alarma Paro

MezcladorM

V3

Figuras 119 y 120. Proceso qumico

9. Un taller tiene tres maquinas M1,M2yM3, dos brazos robotizados R1 y R2, y un buffer intermedio B2, as como buffers de entrada B1 y de salida B2 como se ilustra en la Figura 121. Se asume que todos los buffers son infinitos y las maquinas y los brazos pueden atender un trabajo al tiempo. M1 puede ser atendida por el brazo R1,
B B B

mientras M2 y M3 son atendidas por R2. Se tienen tiempos de maquinado de 30,42 165

y 45 segundos para M1, M2 y M3 respectivamente. Los trabajos requieren dos estados de maquinado. El primero de ellos debe ser maquinado por M1 y el otro por

M2 o M3 de acuerdo a la disponibilidad de trabajo en el buffer intermedio y el


brazo robotizado R2. El proceso cuenta con un botn de fin de ciclo que le indica al proceso detener el suministro de trabajo a la maquina M1, y esperar a que las maquinas M2 y M3 procesen los trabajos pendientes en el buffer intermedio B2 antes de parar por completo el proceso del taller de maquinado.
B

M2

B1

M1

B2

R2

B3

M3 R1
Figura 121. Taller de Maquinado

Disee un automatismo mediante IPN para el taller de maquinado de la Figura 121, teniendo en cuenta que los buffer de entrada y salida estn provistos de dispositivos para la deteccin de trabajo y que adems se tiene la posibilidad de conocer la disponibilidad o no de las cada una de la maquinas.

166

10. Considere el sistema que se muestra en la Figura 122.

Figura 122. Bandas transportadoras

Por la cinta inferior llegan piezas. Cuando una pieza se sita encima de la superficie de elevacin el detector ptico D se activa. En ese momento hay que parar la cinta, subir el cilindro hasta su posicin superior (hasta que se activa el detector magntico F1), mover el cilindro horizontal hasta F2, y volver los dos cilindros a su posicin inicial (P1 y P2 activos). Las seales A1y A2 hacen avanzar los cilindros, las seales R1 y R2 los hacen retroceder. Si se desactivan las dos seales el cilindro se queda parado. La cinta inferior se mueve mediante la seal M, mientras que la superior est siempre en marcha (la controla otro proceso). Se tienen adems un pulsador de marcha y otro de parada. Cuando se inicia el automatismo el sistema debe estar en reposo. Al pulsar la marcha se pondr en funcionamiento. Cuando se pulse la parada el sistema acabar de trasladar la ltima pieza (si hay alguna en la plataforma de subida) antes de volver al inicio y quedar en reposo.

a) Obtener la PN que resuelve el problema. b) Obtener la PN que resuelven el problema si adems se tiene un pulsador de emergencia con enclavamiento que al pulsar desactivar todo el proceso. Una vez solucionado el problema y rearmado el pulsador de emergencia se volver al inicio.

167

CAPITULO 4

4. IMPLEMENTACIN EN UN CONTROLADOR LOGICO PROGRAMABLE La metodologa de diseo de automatismos secuenciales propuesta, puede ser implementada indiferentemente en las diversas tecnologas disponibles para su aplicacin industrial: computadores, controladores lgicos programables, sistemas embebidos, sistemas de propsito especfico, microcontroladores. Una vez definida y seleccionada la tecnologa de implementacin, se deben tener en cuenta sus particularidades para realizar una traduccin, preferiblemente automtica, que permita pasar del modelo al cdigo especfico de programacin: acceso a perifricos, manejo de memoria, direccionamiento, lenguajes de programacin, sistema operativo, restricciones temporales, entre otros aspectos.

El presente captulo ilustra la aplicacin del mtodo en los denominados Controladores lgicos programables PLC, por ser stos los dispositivos de mayor aceptacin en la prctica industrial para la implementacin de automatismos secuenciales y por que la orientacin de un curso de automatizacin industrial cobija ampliamente estos equipos.

Dado que lo que se pretende es ilustrar la metodologa, no se profundiza en la descripcin de los PLCs, pero se presenta suficiente bibliografa sobre el tema y se enfatiza en las particularidades tecnolgicas de los mismos: el concepto de tiempo de ciclo, la implementacin de los eventos, su duracin, la estabilidad del marcaje, el marcaje inicial, el orden de programacin, los conflictos, la sincronizacin dinmica, el anlisis de propiedades, la estructuracin de los programas y los lenguajes de programacin.

Con respecto a los lenguajes de programacin, se espera plantear una metodologa genrica de implementacin en PLC y de generacin automtica y portabilidad de cdigo entre fabricantes y lenguajes. Para ello, la generacin de cdigo se hace bajo las directrices de la norma IEC 61131, especficamente, en lenguaje de contactos o escalera (Ladder Diagram LD) y en lista de instrucciones (Instruction List IL) y se ilustra la aplicacin para el caso de dos fabricantes en particular.
168

El captulo inicia con una muy breve descripcin genrica del PLC, para luego abordar la definicin del tiempo de ciclo. Posteriormente, se presentan los aspectos necesarios a considerar de la norma IEC, como el juego de instrucciones en IL y LD entre otros aspectos relevantes para la generacin de cdigo.

Luego se presentan las reglas que permiten pasar de un modelo IPN a los lenguajes seleccionados, en el que se ilustra la correcta realizacin de la codificacin. Finalmente, algunas consideraciones prcticas para la implementacin, el anlisis de propiedades y la ilustracin de la metodologa en ejemplos prcticos.

Se recomienda al lector, que realice inicialmente una revisin de la literatura sobre PLCs, si no tiene conocimientos previos al respecto.

4.1 Controlador lgico programable La Electrical Manufacturers Association (NEMA) adopta una definicin formal de un PLC que puede ser hallada en ANSI/NEMA IA 2.1-1994 (R2002) paragraph 2.50 y se presenta en la Definicin 36. Definicin 36

Un PLC se define como un aparato electrnico operando digitalmente que usa una memoria programable para el almacenamiento interior de instrucciones para llevar a cabo funciones especificas como la lgica, secuenciamiento, temporizacin, conteo y operaciones aritmticas para controlar a travs de los mdulos del entrada/salida digitales o anlogos, distintos tipos de mquinas o procesos. Una definicin ms corta y actualizada sera:

169

Definicin 37

Es un pequeo computador dedicado a tareas de automatizacin en ambientes industriales.

4.1.1

Arquitectura de un PLC

Para interpretar la estructura de un PLC se utilizar un sencillo diagrama en bloques que se presenta en la Figura 1.
RS 232 Ethernet

CPU

Real-Time Clock

ROM

flash EPROM

serial port controller

ethernet controller
extension bus

parallel bus

buffers

fieldbus controller

analogdigital converters signal conditioning

digitalanalog converters power amplifiers

Digital Output

Digital Input signal conditioning

external I/Os

relays

field bus

direct Inputs and Outputs

Figura 123. Estructura del PLC. 4.1.2 Como funciona un PLC

Estos dispositivos controlan los procesos segn el programa de control (software) que contiene la secuencia de operaciones a realizar. Las seales de entrada pueden proceder de elementos digitales, como fines de carrera y detectores de proximidad, o analgicos, como sensores de temperatura y dispositivos de salida en tensin o corrientes continuas.

170

Las seales de salida son rdenes digitales o seales analgicas en tensin o corriente, que se envan a los elementos indicadores y actuadores del proceso, como lmparas, contactores, vlvulas, entre otros.

El programa (software) que gobierna las seales de salida se introducen en el PLC a travs de la unidad de programacin, que permite adems funciones adicionales como depuracin de programas, simulacin, monitoreo, control del PLC, entre otras.

4.1.3

Ejecucin cclica del programa y tiempo de ciclo

Una de las caractersticas fundamentales del PLC es el funcionamiento cclico de la CPU, y un parmetro de las prestaciones es su tiempo de scan (tiempo de ciclo), considerado como el necesario para ejecutar 1K instrucciones, pero como no todas las instrucciones son iguales en cuanto a tiempo de ejecucin se refiere, se adopt como parmetro el tiempo de ejecucin de 1K de memoria vaca. Un autmata tpico puede leer mil instrucciones en 6[mseg] y emplea de 5 a 10 [mseg] para actualizar las variables, por lo tanto puede emplearse para controlar procesos relativamente rpidos. La suma del tiempo de programa y el tiempo de actualizacin de las variables conforman el tiempo de ciclo, y obviamente es necesario que: Tiempo de evolucin del proceso >> Tiempo de ciclo

En general el tiempo de ciclo es el tiempo transcurrido entre el cambio fsico de una entrada y el cambio correspondiente en la salida y en consecuencia su duracin es fundamentalmente dependiente del nmero de entradas y salidas, del tamao del programa y de la velocidad del procesador del PLC. Existen tres pasos bsicos en la operacin de cualquier PLC, estos se ilustran en la Figura 2.

171

Figura 124. Ciclo de ejecucin Primero, el ciclo comienza con la agrupacin de todos los ltimos estados de todas las sealas de entrada en la periferia de entradas y estos estados son almacenados en la memoria entrada como se visualiza en la Figura 3. El prximo paso es evaluar el programa para determinar nuevos estados de salida, los cuales son almacenados en la memoria de salida. Estos estados son llevados a la periferia en una sola operacin, una vez haya sido finalizada la evaluacin del programa.

172

Figura 125. Ciclo de Scan en un PLC 4.2 Norma IEC 61131-3 Desde la creacin de los PLC, surgieron mltiples plataformas de hardware y software, ofrecidas por los distintos fabricantes. Esta situacin ha dificultado la estandarizacin de aplicaciones y por consiguiente, el mantenimiento, la portabilidad de software, el soporte, el manejo de repuestos. Una empresa requiere mayor logstica para el montaje y mantenimiento de proyectos y sistemas si cuenta con mltiples plataformas de desarrollo de distintos fabricantes. El objeto de la IEC 61131 es la estandarizacin de los autmatas programables y sus perifricos, incluyendo los lenguajes de programacin que se deben utilizar. La norma especifica la sintaxis y semntica de los lenguajes de programacin, incluyendo el modelo de software y la estructura del lenguaje. 4.2.1 Ventajas de la aplicacin de la Norma IEC 61131-3

Reduce el gasto de recursos humanos (entrenamiento, bsqueda de errores, mantenimiento y consultara), creando un enfoque que resuelve el problema va
173

reusabilidad del software (reduciendo la inversin en aplicaciones y dependencia del proveedor). Reduce las equivocaciones y errores en el programa de usuario. La tcnicas de programacin son utilizables en otros ambientes (el control industrial en general) Combina de forma armoniosa los diferentes componentes provenientes de diferentes ubicaciones, compaas o pases, o proyectos. 4.2.2 Elementos comunes Nombramiento de elementos de software usando identificadores, por ejemplo variables. Declaracin de variables usando tipos de datos estndar. Declaracin de variables usando tipos de datos derivados, estructuras y tipos de datos tipo vector. Establecimiento del valor inicial por defecto para ciertos tipos de datos.

174

4.2.3

Tipos de datos

Tabla 53. Tipos de datos Variable Bool Byte Word Dword Int Real Time Date String 1 8 16 32 16 32 Dependiente de la implementacin Dependiente de la implementacin Dependiente de la implementacin Bits

4.2.4

Lenguajes de programacin utilizados para programar un PLC de acuerdo a la norma IEC 61131-3

Los lenguajes de programacin definidos en la norma IEC 61131-3 se presentan en la 54.

175

Tabla 54. Lenguajes de programacin

Lenguaje de Contactos (LD)


VAR CONSTANT X : REAL := 53.8 ; Z : REAL; END_VAR VAR aFB, bFB : FB_type; END_VAR

Diagrama de bloques funcionales (FBD)

bFB(A:=1, B:=OK); Z := X - INT_TO_REAL (bFB.OUT1); IF Z>57.0 THEN aFB(A:=0, B:=ERR); ELSE END_IF aFB(A:=1, B:=Z is OK);

Texto estructurado (ST)

Lenguaje por Lista de Instrucciones (IL)

Sequential Function Chart (SFC)

176

4.3 4.3.1

Formato (estructura de programacin) Instruction List (IL)

Lista de Instrucciones (IL) es el modelo de lenguaje ensamblador basado en un acumulador simple.

Consiste en una serie de instrucciones donde cada instruccin es una nueva lnea. Una instruccin consiste de un operador seguido por uno o ms operandos. Un operando es el Asunto del operador. Los operandos representan variables o constantes, lo que en la norma EIC se llaman Elementos Comunes. Unos pocos operadores pueden tomar una serie de operandos en el que cada operando debe separarse por una coma.

Cada instruccin puede usar o puede cambiar el valor guardado en un solo registro. La norma se refiere a este registro como el resultado de una instruccin. El resultado puede sobrescribirse con un nuevo valor, puede modificarse o puede guardarse en una variable.

IL tambin proporciona operadores que comparan el valor de una variable con el valor del registro, es decir con el resultado actual. El resultado de la comparacin es escrito en el registro. Los tipos de instruccin de salto estn provistos para probar el valor del registro actual y, si es apropiado, salte a una etiqueta nombrada. Pueden usarse las etiquetas para identificar los puntos de entrada para las instrucciones del salto. Cada etiqueta debe seguirse por un color.

177

La Figura 126 describe las caractersticas principales del lenguaje IL:

Figura 126. Estructura del lenguaje IL Las instrucciones IL en la Figura 126 son equivalentes a las declaraciones del siguiente texto estructurado. IF SPEED > 1000 Then Volts := Volts 10; END_IF; %75 := 1;

178

Tabla 55. Principales Operadores del lenguaje IL Operador Operandos LD ANY

Comentarios

Inicio de una red de contactos. Carga los operandos dentro de un registro resultado. Escribe el resultado de la red en una bobina (operando). Enclava una bobina Desenclava un bobina Conexin en serie Equivalente a AND Conexin en paralelo Conexin "o" exclusiva Negacin lgica

ST S R AND & OR XOR NOT

ANY BOOL BOOL ANY ANY ANY ANY ANY

ANY: Los operadores que pueden tomar operandos de un tipo de dato ANY se puede decir que son Sobrecargados. Esto es, El operador puede ser usado con cualquiera de los diferentes tipos de dato SINT, INT, tipos de datos tales como DATE_AND_TIME.

Bloques Funcionales Un bloque funcional realiza un algoritmo que se utiliza frecuentemente en los sistemas electrnicos de control. Al igual que las funciones, los bloques funcionales pueden estar predefinidos por el programador.

179

Bloques funcionales de deteccin Los bloques funcionales R_TRIG [evento de subida (Rise), cambio de 0 a 1] y F_TRIG (evento de bajada (Fall), cambio de 1 a 0] se pueden utilizar como variables detectoras de eventos. Estos bloques generan un impulso que dura un ciclo de operacin del autmata programable, cuando se produce un evento de su variable de entrada. La Figura 5(a) muestra el programa en lista de instrucciones que convierte un evento de subida de la variable de entrada i1 en un impulso en la variable de salida q1. Dicho comportamiento se representa mediante el cronograma de la figura Figura 5(b).

Figura 127. Bloque funcional RT1 Convertidor de un evento de subida en un impulso: a) Lista de instrucciones; b) Cronograma que describe su comportamiento. Bloques funcionales temporizadores Son bloques funcionales que generan variables cuya activacin, duracin o desactivacin es funcin del tiempo que permiten programar cuentas de tiempo con el fin de activar bobinas pasado un cierto tiempo desde la activacin.
180

Para que un autmata posea este tipo de bloques funcionales es necesario que incluya en su sistema fsico (hardware) circuitos temporizadores o bien que los realice por programa (software).

Temporizador de retardo a la conexin

Se denomina TON (Timer ON). Se caracteriza por que a partir del instante en que la entrada IN se activa (pasa de cero a uno), la salida Q tarda un tiempo PT en activarse y se desactiva cuando lo hace la entrada IN. En la Figura 128(a) se representa su smbolo lgico y en la Figura 128(b) el cronograma que representa su comportamiento. En dicha figura se observa tambin que la norma establece, adems de la salida Q, una salida ET que indica el tiempo transcurrido a partir del instante en que se activa la entrada IN. En el caso de que la entrada IN vuelva a cero antes de que trascurra el tiempo PT, la salida Q no llega a activarse (Figura 128(b)), de donde se deduce que este tipo de temporizador no tiene capacidad de memorizacin.

Figura 128. Bloque funcional temporizador con retardo a la conexin TON: a) Smbolo lgico; b) Cronograma.

181

Bloques funcionales contadores Como su nombre indica, son bloques funcionales que cuentan los impulsos aplicados a su entrada de contaje, que es una variable lgica. Pueden realizar el contaje en sentido ascendente (Up), en sentido descendente (Down) o en ambos sentidos (Up/Down). Sus smbolos lgicos se representan en la Figura 7.

Figura 129. Smbolo lgico de los diferentes tipos de contadores.

4.3.2

Lenguaje Ladder (LD)

Un contacto en diagramas Ladder se asume para tener estados ENCENDIDO y APAGADO (para un estado normalmente abierto estos estados son referenciados como CERRADO y ABIERTO) que son equivalentes a los estado bolanos 1 (verdadero) y 0 (falso). Un contacto siempre representa el estado asociado a una variable booleana.

Por otro lado, una bobina nicamente provee acceso y puede solo ser usada para actualizar el estado asociado a la variable booleana cuando el flujo de potencia puede ocurrir va contactos desde la barra de alimentacin haca la barra de masa.

Para programar un autmata con LADDER, adems de estar familiarizado con las reglas de los circuitos de conmutacin, es necesario conocer cada uno de los elementos de que consta este lenguaje. A continuacin se describen de modo general los ms comunes.
182

Elementos bsicos En la siguiente Tabla 56 se observan los smbolos de los elementos bsicos junto con sus respectivas descripciones.

Tabla 56. Smbolos en diagramas Ladder Elementos bsico en Ladder Smbolo Nombre Contacto NA Contacto NC
P

Descripcin Se activa cuando hay un uno lgico en el elemento que representa, esto es, una entrada (para captar informacin del proceso a controlar), una variable interna o un bit de sistema. Su funcin es similar al contacto NA anterior, pero en este caso se activa cuando hay un cero lgico. El contacto Detectar evento positivo (EU) permite que la corriente circule durante un ciclo cada vez que se produce un cambio de 0 a 1 (de apagado" a encendido"). El contacto Detectar evento negativo (ED) permite que la corriente circule durante un ciclo cada vez que se produce un cambio de 1 a 0 (de encendido" a apagado"). Se activa cuando la combinacin que hay a su entrada (izquierda) da un uno lgico. Su activacin equivale a decir que tiene un uno lgico. Suele representar elementos de salida, aunque a veces puede hacer el papel de variable interna. Se activa cuando la combinacin que hay a su entrada (izquierda) da un cero lgico. Su activacin equivale a decir que tiene un cero lgico. Su comportamiento es complementario al de la bobina NA. Una vez activa (puesta a 1) no se puede desactivar (puesta a 0) si no es por su correspondiente bobina en RESET. Sirve para memorizar bits y usada junto con la bobina RESET dan una enorme potencia en la programacin. Permite desactivar una bobina SET previamente activada.

Contacto de Deteccin de Cambio Positivo Contacto de Deteccin de Cambio Negativo Bobina NA

( )

( )

Bobina NC

(S)

Bobina SET

(R)

Bobina RESET

183

Identificacin de Variables A cada contacto se le asigna una variable cuya identificacin es igual a la utilizada en el lenguaje de lista de instrucciones. En la Figura 8(a) se representa el smbolo asociado a un contacto correspondiente a la variable i1 (examina la variable i1 a uno, es decir, el contacto est cerrado si la variable i1 es 1) y en la Figura 8(b) el correspondiente a la variable i 1 (examina la variable i1 a cero, es decir, el contacto est cerrado si la variable i1 es 0).

Figura 130. Asignacin de variables lgicas en el lenguaje de diagrama de contactos: a) Representacin de la variable i; b) Representacin de la variable i 1 . Las variables de salida externa o interna, generadas mediante una combinacin de variables lgicas, se indican mediante el smbolo de la Figura 9(a), que corresponde en este caso a la variable mi. Las variables de salida externa o interna se pueden representar tambin de forma invertida tal como se indica en la Figura 9(b) que representa la variable

qi .

Figura 131. Smbolo de una funcin de salida interna o externa: a) Normal; b) negada.

184

Variables internas y bits de sistema Las variables internas o estados internos son bits auxiliares que pueden ser usados segn convenga sin necesidad de que representen ningn elemento del autmata. Se suele indicar mediante los caracteres B M y tienen tanto bobinas como contactos asociados a las mismas de los tipos vistos en el punto anterior. Su nmero de identificacin oscila, en general, entre 0 y 255. Su utilidad fundamental es la de almacenar informacin intermedia para simplificar esquemas y programacin. Los bits de sistema son contactos que el propio autmata activa cuando conviene o cuando se dan unas circunstancias determinadas. Existe una gran variedad, siendo los ms importantes los de arranque y los de reloj, que permiten que empiece la ejecucin desde un sitio en concreto y formar una base de tiempos respectivamente. Su nomenclatura es muy diversa, dependiendo siempre del tipo de autmata y fabricante.

Operaciones con eventos En el lenguaje de esquema de contactos se definen operaciones que facilitan el trabajo con eventos. Estas operaciones pueden corresponder a variables que actan por eventos (que se deben denominar variables de deteccin de eventos) o a variables de salida en las que se genera un impulso cuando se detecta un evento. A continuacin se trabajan las variables que actan por eventos las cuales son implementadas en este texto.

Variables de entrada que actan por eventos se representan en la Figura 132. La Figura 10(a) representa un contacto que se cierra (toma el valor ON) solamente durante un ciclo de programa cuando la variable asociada con l (en este caso i1) pasa de uno a cero. (la letra P proviene de Positive Transition.). La Figura 10 representa un contacto que se cierra durante un ciclo de programa cuando la variable asociada con l (en este caso i1) pasa de uno a cero. (La letra N proviene de Negative Transition.) Estos elementos cierran el contacto correspondiente (ON) durante un ciclo de programa cuando se produce un evento en su variable asociada, y lo abren (OFF) el resto del tiempo.

185

Figura 132. Contactos activados por evento: a) Contacto que se cierra cuando la variable Q pasa de cero a uno; b) Contacto que se cierra cuando la variable i1 pasa de uno a cero. Estructura y orden de ejecucin Una vez conocidos los elementos que Ladder proporciona para su programacin, resulta importante resaltar cmo se estructura un programa y cul es el orden de ejecucin. El esquema que se presenta en la Figura 133 representa la estructura general de la distribucin de todo programa Ladder, contactos a la izquierda y bobinas y otros elementos a la derecha.

Figura 133. Distribucin de un programa En cuanto a su equivalencia elctrica, es posible imaginar que la lnea vertical de la izquierda representa la barra de alimentacin, mientras que la lnea vertical de la derecha representa la barra de masa.

El orden de ejecucin es generalmente de arriba a bajo y de izquierda a derecha, primero los contactos y luego las bobinas, de manera que al llegar a stas ya se conoce el valor
186

de los contactos y se activan si procede. El orden de ejecucin puede variar de un autmata a otro, pero siempre se respetar el orden de introduccin del programa, de manera que se ejecuta primero lo que primero se introduce.

Trayectoria de Realimentacin Es posible crear escalones en diagramas Ladder que contiene trayectorias cerradas, es decir, donde uno o ms valores usados en contactos, y como funciones o funciones de bloque de entrada, actualizando las variables cada vez que el escaln es evaluado.

Un ejemplo de una Trayectoria de Realimentacin en diagramas Ladder se presenta en la Figura 134. En este ejemplo, donde el escaln utiliza el estado de su propia salida, el valor de la bobina asociada con el contacto es siempre el valor resultante de las evaluaciones previas. Sin embargo, si el valor de FAN es usado en cualquiera de los escalones siguientes, el ltimo estado evaluado es usado.

Figura 134. Ejemplo de una trayectoria en LD Reglas de Evaluacin El orden en que se evalan los escalones en un una red de un diagrama Ladder es especificado en el Standard. En consecuencia las siguientes reglas, que adems aplican a los diagramas de funciones de bloques, aseguran que el resultado de la evaluacin de una red LD sea inambigua y consistente.

187

1. Ningn elemento en una red Ladder se evaluar a menos que se hayan evaluado los estados de todas las entradas. 2. La evaluacin de un elemento de la red Ladder no estar completa hasta que los estados de todas sus salidas sean evaluadas, es decir las salidas de un bloque de funcin no deben ser consideradas disponibles hasta que todos las salidas sean actualizadas; una bobina no debe cambiar hasta que todos los caminos en el escaln se hayan evaluado. 3. La evaluacin de una red no est completa hasta que las salidas de todos sus elementos se hayan evaluado. Todas las salidas de toda funcin, bloques funcionales y bobinas del Ladder se actualizan antes de que una red LD se considere que est completa. 4. Cuando se transfieren los datos de una red a otra, todos los valores de los primeros elementos de la red LD deben ser producidos por la misma evaluacin de la red. La segunda red LD no debe empezar la evaluacin hasta que todos los valores de la primera red estn disponibles.

188

4.4

Funciones lgicas

Tabla 57. Funciones lgicas

4.5

Implementacin

Los criterios de anlisis de un modelo IPN pueden solamente ser garantizados por el controlador implementado si la generacin de cdigo desde un modelo IPN preserva el comportamiento dinmico. Este comportamiento se describe a continuacin y adems se
189

presenta el mtodo de generacin automtica de cdigo de PLC en lenguajes IL y LD acorde a la norma IEC 1131-3 desde una IPN.

4.5.1

Dinmica de la red

El comportamiento dinmico de una IPN esta controlado por el flujo de marcas en la red, y en un el modelo una transicin se encuentra habilitada para el disparo, si est sensibilizada y se cumple la receptividad.

Reglas de disparo de una transicin en un modelo IPN 1. Una transicin dispara inmediatamente si esta habilitada (sensibilizada) y su condicin de disparo se cumple (receptiva). 2. Todas las transiciones que puedan disparar y no estn en conflicto con otras transiciones disparan simultneamente. 3. El proceso de disparo es iterado hasta que ya no disparen ms transiciones. 4.5.2 Interpretacin de los elementos de la red

Para la implementacin del juego de marcas es necesario definir una variable booleana pi a cada lugar del modelo IPN en el que se muestre si el correspondiente lugar esta marcado (pi=TRUE) o si esta desmarcado (pi=FALSE). Basados en esta premisa los elementos de la red pueden ser traducidos al PLC paso por paso

Transiciones La compilacin de una transicin tiene que probar si la transicin est sensibilizada y es receptiva, para comprobar esto se construye el segmento de cdigo mostrado en la Figura 135.

190

Figura 25. Cdigo IL compilacin de transicin

Figura 3. Cdigo LD compilacin de transicin De esta manera, la relacin entre el modelo IPN y el cdigo respectivo en lenguaje IL y LD puede verse en la Figura 137.

Figura 137. Relacin entre los elementos de una IPN, LD e IL


191

Marcaje de lugares El disparo de una transicin genera el desmarcaje de los lugares de entrada a la transicin y el marcaje de los lugares de salida. Para ello se utilizan las funciones de memoria SET (S)/RESET(R). Cuando todas las condiciones se cumplen (la transicin est habilitada y es receptiva), entonces la transicin dispara. El cdigo para el disparo de una transicin codificado en lenguaje IL y LD se muestra en la Figura 137 y en la Figura 138 respectivamente.

Figura 437. Cdigo IL de transicin parte 2: disparo

Figura 5. Cdigo LD de transicin, parte 2: disparo La codificacin completa de la transicin de la Figura 137 en IL y LD se presenta en la Figura 139.

192

Figura 139. Relacin de cdigo con el modelo

Es importante tener en cuenta que este paso es el encargado de mantener la estructura del juego de marcas de la IPN. Bajo esta condicin se desarrolla la traduccin uno a uno de los segmentos de cdigo, que es el mapeo de los elementos de la red con el segmento de cdigo desarrollado.

Salidas Despus de tener la estructura del juego de marcas (representacin de la dinmica que establece el disparo de las transiciones de un modelo IPN) traducida al lenguaje PLC, se procede a la asignacin de acciones en los lugares o estados internos basados en la funcin .

Si un lugar est marcado entonces la correspondiente funcin de salida se ejecuta (encendiendo o apagando variables de salida) como se muestra en la Figura 140 y Figura 141 para los lenguajes LD e IL.

193

Figura 140. Segmento IL codificacin salidas

Figura 141.Segmento LD codificacin salidas

El siguiente ejemplo ilustra la generacin de cdigo:

194

Figura 142. Ejemplo generacin de cdigo

195

4.6 4.6.1

Generacin de cdigo para tipologas y funciones de las Redes de Petri Funcin lgica AND

Tabla 58. Funciones para la IPN de la funcin lgica AND Receptividad Transicin
E (ti) (ti)

t1

i1

Figura 143. Funcin lgica AND convergente (Unin o sincronizacin)

Figura 144. Funcin lgica AND divergente (Bifurcacin)


196

4.6.2 Funcin lgica OR Tabla 59. Funciones para la IPN de la funcin lgica OR Receptividad Transicin
E (ti) (ti)

t1 t2

i1 i2

Figura 145. Funcin lgica OR convergente

Figura 146. Funcin lgica OR divergente (Exclusin mutua)


197

4.6.3

Temporizadores

La transformacin de los lugares que tienen asociadas funciones especiales como lo son las temporizaciones (especficamente se utilizar el temporizador con retardo a la conexin no memorizado) se realiza en la seccin de inicializacin justo antes del cuerpo del cdigo en el que se realiza la transformacin de todas las transiciones y en el orden en que estn enumeradas en la IPN. Tabla 60. Funciones para la IPN para el temporizador Receptividad Transicin
E (ti) (ti)

t1

Figura 147. Cdigo Generado para la funcin temporizador

198

4.6.4

Contadores

La transformacin de los lugares que tienen asignada una funcin contador, se realiza de manera similar a la presentada anteriormente para los temporizadores. Tabla 61. Funciones para la IPN de la funcin contador Funcin Lugar Transicin

Receptividad
E (ti) (ti)

(pi)

p1 p2

t1

i1 i2

q1=C0+1

Figura 148. Cdigo Generado para la funcin contador

199

4.7 4.7.1

Consideraciones para la implementacin Direccionamiento

El direccionamiento de entradas, salidas y marcas en la programacin de un PLC consiste en informar a la CPU, de acuerdo al formato empleado por el fabricante, la direccin lgica de las diferentes entradas salidas y marcas.

El direccionamiento de I/O y estados internos vara de fabricante a fabricante, sin embargo, la mayora adopta una nomenclatura dividida en campos que proporciona informacin sobre la ubicacin fsica de la entrada, salida o marca, por ejemplo. La norma IEC contempla adems el direccionamiento normalizado.

200

Bit
0000 0001 0002

Byte

0010 0020 0030 0040

Word

4096

Figura 149. Direccionamiento IEC.

201

Tabla 61.1. IEC. Primera Letra del Cdigo I Q M Segunda Letra del Cdigo X B W D L Bit Byte (8 Bits) Word (16 Bits) Doble Word (32 Bits) Long Word (64 Bits) Interpretacin Memoria de entrada Memoria de Salida Memoria Interna

Direccionamiento de las entradas digitales

Figura 6. Direccionamiento de las entradas digitales


202

Esto desde un modelo en redes de Petri se muestra en la Figura 32.

Figura 151. Direccionamiento de la entradas existentes en la receptividad de una PN Direccionamiento de las salidas digitales

Figura 152. Direccionamiento de las salidas digitales


203

Esto desde un modelo en redes de Petri se muestra en la Figura 153

Figura 153.

Tabla 1. Tabla de asignacin de memoria Funcin Lugar

(pi)
(0,1)

Direccionamiento

q0 p1 q1

Q0.0 Q0.1

204

Direccionamiento de los estados internos (marcas)

Figura 7. Direccionamiento de las salidas

Tabla 63. Tabla de asignacin de memoria Lugar Direccionamiento m0.0 m0.1 m0.2

p1 p2 p3

205

4.7.2

Marcaje inicial

Para el marcaje inicial, deben consultarse las prestaciones que ofrece el fabricante, tales como marcas de primer ciclo o rutinas de arranque o zonas de declaracin de variables, conforme lo establece la norma, inicializando una variable booleana en valor TRUE. Por ejemplo, en los quipos de la serie S7-200 de Siemens, se dispone de una marca especial (SM0.1) de primer ciclo, la cual esta activa solo durante el primer ciclo, tras el paso del PLC de modo STOP a modo RUN.

Figura 155. Marca especial (SM0.1) de primer ciclo En los equipos de la serie S7-300, del mismo fabricante, se dispone del bloque de arranque OB100, el cual se ejecuta solo una vez, tras el paso de STOP a RUN. La codificacin para este caso sera la siguiente: OB100 S M0.0 Para los equipos FEC34-MWT, de FESTO, el marcaje inicial se establece mediante un estado interno denominado FI, que tiene un valor 1, solo durante el primer ciclo. Para
206

una direccin de lugar inicial (p1) definida como F0.0, el segmento de cdigo para el marcaje inicial de p1, en lenguaje STL para el equipo FESTO, seria: IF THEN SET FI F0.0

El cdigo IEC equivalente para el marcaje inicial es el siguiente: PROGRAM MARCAJE INICIAL Declaracin del programa

VAR P1 : BOOL:= TRUE; END_VAR 4.7.3 Orden de programacin

Declaracin de variables

El comportamiento secuencial de un proceso est determinado por el orden que presente la evolucin de los estados, ocasionado por la ocurrencia de eventos. Es decir, el comportamiento secuencial lo establece el modelo y la ocurrencia asncrona y aleatoria de los eventos y no el orden en que se programen las instrucciones. El comportamiento del controlador es invariante con el orden de programacin.

Esta afirmacin es vlida si el modelo no presenta situaciones de sincronizacin dinmica o de simultaneidad de eventos.

Se tiene en cuenta que la estructura y orden de ejecucin establece que el programa se ejecuta de arriba abajo y de izquierda a derecha y de manera cclica. Adems, se consideran las reglas presentadas en el numeral 4.5.1, en el sentido que todas las transiciones habilitadas para el disparo, disparan simultneamente (en el mismo ciclo).

207

La organizacin entonces del cuerpo del programa y del cuerpo de cdigo de las transiciones es arbitraria.

Para que un compilador este conforme con la norma debe ser capaz de reconocer sintaxis y entender la semntica en ella propuesta. Para preservar la estructura del programa sugerida por la norma IEC, se propone el siguiente orden:

ESTRUCUTRA COMPLETA DEL PROGRAMA (LD, IL) (Cuerpo de codigo).

LD

Temporizadores y contadores Temporizadores

Inicializacin Temporizadores Contadores Dinmica del marcaje (transicin y lugares)

Activacin de salidas

208

IL

Declaracin de variables Inicializacin de instancias Cuerpo de cdigo

Figura 156. Estructura de programacin para programas IPN El orden del cuerpo de cdigo de las transiciones seguir siendo arbitrario, por que depende de la numeracin de las transiciones que haga el diseador.

209

4.7.4

Duracin de un evento

Se planteo en el capitulo 3, que un evento no tiene duracin. Para la implementacin practica, se requiere que el evento tenga una duracin mnima que garantice el procesamiento de la informacin que la ocurrencia del evento genera. La norma IEC establece que la duracin de los eventos, definidos mediante las operaciones positive transition y negativie transition es de un ciclo. Es decir, el evento estar en valor 1 durante el ciclo en el que el cambio de la entrada ha sido ledo. Una consideracin importante con respecto a la duracin de los eventos es que en un ciclo, un evento puede no ser procesado. Esto ocurre si la duracin del evento es menor que el tiempo de ciclo.

4.7.5

Estabilidad del marcaje

El concepto de estabilidad del marcaje establece, de acuerdo con la definicin de tiempo de ciclo y con la dinmica del juego de marcas, que durante un ciclo el marcaje es estable, esto es, todas las transiciones sensibilizadas y receptivas en un ciclo, disparan en ese ciclo, hasta alcanzar un marcaje estable. Este concepto es vlido si no se considera el orden de programacin (numeral 4.2.7), ya que un marcaje que no es estable en un ciclo, puede volverse estable cambiando el orden de programacin. La estabilidad del marcaje tiene estrecha relacin con el orden de programacin, con la sincronizacin dinmica y con la simultaneidad de eventos, situaciones que se explicarn e ilustrarn en las secciones siguientes. Considerando el orden de programacin, la estabilidad del marcaje puede expresarse as: En un ciclo, si el disparo de una transicin t1 sensibiliza a una transicin t2 y si t2 es receptiva en ese ciclo, t2 se dispara en el ciclo actual si su cdigo es posterior al cdigo de t1. En caso contrario, se dispara en el ciclo siguiente.

210

4.7.6

Sincronizacin dinmica

Definicin 38 Dos transiciones t1 y t2 estn en sincronizacin dinmica si existe un marcaje alcanzable tal, que el disparo de t1 implique el disparo simultneo de t2 para todas o al menos una combinacin de seales de entrada. Se presentan varios casos de sincronizacin dinmica: ( i ) Transiciones con receptividad 1

Figura 157. Transiciones con receptividad 1

211

( ii ) Transiciones que son receptivas, antes de estar sensibilizadas.

Figura 158. Transiciones que son receptivas, antes de estar sensibilizadas.

( iii ) Transiciones consecutivas con una receptividad equivalente.

Figura 159. Transiciones consecutivas con una receptividad equivalente.


212

Con base en lo establecido en las reglas de generacin de cdigo y en el concepto de estabilidad del marcaje, las transiciones que tienen sincronizacin dinmica, disparan en el mismo ciclo. Esta situacin puede causar problemas en el desempeo del controlador, fundamentalmente con las acciones asociadas a los lugares que estn entre las transiciones, ya que estas acciones no se alcanzan a ejecutar. Es recomendable entonces detectar los casos de sincronizacin dinmica antes de producir el cdigo y proceder a realizar la correccin desde el modelo. Si no es posible corregir el cdigo, se recomienda una de las siguientes acciones (para los casos i) , ii): invertir el orden de programacin, tal como se explic en el caso de estabilidad del marcaje y como se muestra en el siguiente ejemplo. Agregar un retardo a la segunda transicin.

Ejemplo 45 De la IPN de la Figura 40(a) se observa que las condiciones de disparo asociadas a las transiciones t1 y t2 al ser traducidas al cdigo PLC conservando el juego de marcas y en el orden que determina la secuencia de las transiciones, originan comportamientos errneos del controlador.

Debido a la forma en que se ejecuta el programa de usuario (izquierda - derecha y arriba abajo) cuando es cumplida la condicin de disparo i1 y el estado interno IPN est activo se enciende (SET) el lugar de salida p2 y se apaga (RESET) el lugar de entrada p1 (ver segmento de cdigo de transicin t1 de la Figura 40), pero debido a que la condicin de disparo de la transicin t2 es igual a uno, es decir, incondicional, el segmento de cdigo correspondiente a esta transicin tambin se ejecuta en este mismo ciclo causando as que la marca de p3 se apaga antes de ejecutar su accin asociada. En la Figura 41 se observa el cdigo en el lenguaje PLC correspondiente a la IPN de la Figura 40 en el cual se ha modificado el orden de los segmentos de cdigo correspondientes a las transiciones t1 y t2, con lo que se obtiene un correcto comportamiento del controlador.

213

Figura 160. (a) IPN. (b)Cdigo incorrecto de la IPN.

214

Tabla 2. Funciones Funcin Lugar Transicin Receptividad


E (ti) (ti)

(pi)
p1 p2 p3 (1,0,0) (0,1,0) (0,1,1) t1 t2 t3

i2 1 i3

215

Figura 161. Cdigo PLC correcto para la IPN de la Figura 40.

216

4.7.7

Simultaneidad de eventos

Segn se estableci en la Hiptesis 1, la probabilidad de ocurrencia de dos eventos independientes, de manera simultnea es cero. Sin embargo, cuando se abordan los aspectos de implementacin, debe considerarse el caso hipottico de que se presente la simultaneidad de eventos.

Las dinmicas tpicas de los procesos discretos tienen respuestas temporales muy superiores a los tiempos de ciclo de los PLCs y adems, stos tienen la posibilidad de discriminar el arribo de seales con diferencias de un tiempo de ciclo.

Aun as, si se presentase el caso de dos eventos simultneos, ledos en el mismo ciclo, el controlador debe resolver de manera determinstica esta situacin. La evolucin de un sistema industrial no debe dejarse al azar.

Se pueden analizar tres casos:

i) Si las transiciones que tienen asociados los eventos simultneos estn en sincronizacin dinmica. Aplica lo establecido en la seccin anterior. ii) Si las transiciones no estn en sincronizacin dinmica. Los eventos son ledos en el mismo ciclo y las transiciones disparadas en el mismo ciclo (estabilidad del marcaje). El desempeo del controlador es invariante con el orden de programacin de las dos transiciones. iii) Las transiciones estn en conflicto. En este caso, debe suministrarse un esquema de solucin de conflictos, como por ejemplo, asignacin de prioridades segn el orden de programacin. Se programa primero el cdigo correspondiente a la transicin con mayor prioridad. En el siguiente ejemplo se ilustra la aplicacin de este concepto. Ejemplo 46 (memorizacin de fin de ciclo) Se dispone de un pulsador de fin de ciclo, para permitir que un proceso evolucione y termine el ciclo actual si se da esta seal. La red de la izquierda representa la ejecucin del ciclo. La red de la derecha, la memorizacin del pulso de fin de ciclo. El ciclo
217

termina y al llegar la marca al lugar p5, sta debe ser retirada por el disparo de la transicin t5. Se presenta un conflicto entre las transiciones t3 y t5 por el marcaje del lugar p3. La accin de fin de ciclo es prioritaria sobre la accin que da continuidad al ciclo. Para lograrlo, se adiciona un retardo en t3 con lo que se le da prioridad al disparo de t5.

Figura 1628. Red de Petri que modela un proceso con fin de ciclo.

Los cambios en el orden de cdigo, ocasionados por sincronizacin dinmica o simultaneidad de eventos, dificultan la generacin del cdigo de manera automtica.

El comportamiento del controlador es invariante con el orden de programacin, si no se presentan situaciones de sincronizacin dinmica ni simultaneidad de eventos.

4.7.8

Ilustracin del mtodo de generacin de cdigo

Para ilustrar el mtodo de generacin de cdigo a partir de una IPN se utilizar la red de la Figura 43 y se presentar la correspondencia entre cdigo en lenguaje IL y LD. En lenguaje IL se inicializarn las variables en la zona de declaracin y se usarn variables internas simblicas, de conformidad con la norma IEC 61131-3.
218

Ejemplo 47

Figura 9. Ilustracin de la representacin grafica de una IPN

Tabla 3. Funciones para la IPN de la Figura 163 Funcin Lugar Transicin

Receptividad
E (ti) (ti)

(pi)

p1 p2 p3

(0,0) q1=1 (1,0)

Rq1 Rq2 Sq2 Sq1 Rq2

t1 t2 t3 t4

i1 i2
i1 i2

i1 i3 i1

219

Figura 10. Generacin de cdigo LD para la IPN de la Figura 43

220

Figura 165. Generacin de cdigo LD para la IPN de la Figura 163.


221

Ejemplo 48 PARQUEADERO

Se tiene un sistema de parqueadero, como se muestra en la figura 166:

Figura 166. Parqueadero. El sistema consiste en un parqueadero que controla la entrada y salida de vehculos, a travs de un semforo, este se pone en Verde cada vez que hay cupos, y en rojo cuando no hay cupos dentro. Adems tiene tres sensores (Fs1, Fs2 y Fs), que controlan la posicin del vehculo, para saber si este ha abandonado el parqueadero o si en caso contrario ha ingresado. Se define en primer lugar el direccionamiento de entradas y salidas del sistema, tal como se muestra en la Tabla 66 y Tabla 67 respectivamente:

222

Tabla 66. Direccionamiento de las entradas

Direccin

Descripcin Entrada asociada a fs1 Entrada asociada a fs2 Entrada asociada a fs Control de acceso Interruptor de fin de Carrera de cierre de la puerta Interruptor de fin de Carrera de apertura de la puerta

i1 i2
Entradas

i3 i4 i5 i6

Tabla 67. Direccionamiento de las salidas

Direccin

Descripcin Semforo en verde Semforo en rojo Cierre de Puerta Apertura de puerta

q1
Salidas

q2 q3 q4

223

La red de Petri ser la que se presenta en la figura 167.

Figura 167. IPN de Parqueadero

224

Tabla 68. Funciones

Funcin Lugar

Receptividad Transicin
E (ti) (ti)

Retardo

(pi)
(0,0,0,0)

(ti)
,

p1

t1,t2

i4 i2 i1

p2 p3 p4 p5 p6 p7

(0,0,0,1) (0,0,0,0) (0,0,0,1) (0,0,0,0) (0,0,0,0) C1(Resta Cupo)

t3 t4 t5 t6 t7 t7

i6 i2 i1 i6 i1 i2 i3 i3

p8 p9

(0,0,0,0) C+1(Suma Cupo)

t9 t9

p10 p11 p12

(0,0,1,0) (0,0,0,1) (0,0,0,0)

t8,t10 t12 t11

i5,i3 i6

225

p13 p14

(1,0,0,0) (0,1,0,0)

t14 t13

226

PROGRAMA EN STEP 7 Tabla 69. Inventario de seales: Entradas Estados Salida

i1=I0.0 i2=I0.2 i3=I0.3 i4=I0.4 i5=I0.5 i6=I0.6


M0.0=M0

Q0.1= Q1

M0.1=M1

Q0.2= Q2

M0.2=M2

Q0.3= Q3

M0.3=M3

Q0.4= Q4

M0.4=M4 M0.5=M5 M0.6=M6 M0.7=M7 M1.0=M8 M1.1=M9 M1.2=M10 M1.3=M11 C1=Ocupado

En la figura 168 se muestra el programa en STEP 7 200 para el parqueadero:


227

228

229

230

231

Figura 168. Programa en Step 7 200

EJERCICIOS

1. Sea un proceso como se muestra en la figura 1.

Fotosensor1 Cilindro 1 V1 Cilindro 2 V4 V2 Estampador Motor 1 Fotosensor2 V3

Motor 2

Figura 169. Esquema del proceso.

232

Tabla 70. Inventario de seales: Seal Inicio Fotosensor 1 Fotosensor 2 Parada de Emergencia Cilindro 1 contrado Cilindro 2 expulsado Cilindro 2 contrado Entrada Estado i1 i2 i3 i4 i5 i6 i7 NA NC NC NA NA NA NA Seal Motor 1 Motor 2 V1 V2 V3 V4 Salida q1 q2 q3 q4 q5 q6

El proceso comienza cuando se presiona el botn inicio. El proceso realiza la siguiente secuencia:

1. Se posiciona la caja que se encuentra en la banda 1, es decir, se mantiene encendido el motor 1 hasta que el fotosensor 1 presencia el objeto. 2. Se expulsa el pistn del cilindro 1 por medio de la vlvula 1. 3. Cuando el fotosensor 2 detecta la caja, se contrae el pistn del cilindro 1 con la apertura de la vlvula 2 hasta que se activa el pulsador de fin de carrera para la contraccin del cilindro 1. 4. Se expande el cilindro 2 hasta que se activa el pulsador de fin de carrera para la expansin del cilindro 2 y se estampa la caja, dejando el estampador en la caja por 3 segundos. 5. Se comprime el cilindro 2 hasta que se activa el pulsador de fin de carrera para su contraccin. 6. Se retira la caja por medio del movimiento de la banda transportadora. Nota: Este proceso se realiza 3 veces y luego se detiene totalmente. Si se presiona el botn de emergencia el proceso se detiene y espera de nuevo la seal de inicio.

233

Condiciones inciales: Al empezar el proceso la caja puede estar siendo detectada o no por el fotosensor 1. Ambos cilindros estn contrados.

2. En la Figura 170 se muestra el esquema del proceso que se definir a continuacin:

V2

V3 N3 N2 N1

V1

V4

Motor 1

Figura 17011. Esquema del proceso de llenado de botellas Tabla 71. Inventario de seales:

Entrada Inicio N1 N2 N3 Botella en posicin Parada de emergencia

Seal i1 i2 i3 i4 i5 i6

Estado NA NA NA NA NC NA

Salida V1 V2 V3 V4 Motor

Seal q1 q2 q3 q4 q5

234

El botn de inicio y la parada de emergencia son pulsadores. Los sensores de nivel se ponen en 1 cuando el nivel es mayor o igual a su indicacin.

1. Se presiona el botn de inicio. 2. Si el nivel del tanque es mayor que N1, se abre la vlvula V1 hasta que el nivel sea menor o igual a N1; de otra forma se contina con el punto 3. 3. Se abre V2 hasta que se alcanza el nivel N2. 4. Se abre V3 hasta que se alcanza el nivel N3. 5. Si la botella no est en posicin, se posiciona mediante el motor 1. 6. Cuando la botella est en posicin, se abre V4 por 3 segundos. 7. Los pasos 5 y 6 se realizan hasta que se han llenado 3 botellas. 8. El proceso se detiene totalmente luego de llenar 3 botellas. Nota: Si se presiona parada de emergencia se cierran todas las vlvulas. Si alguna botella estaba en proceso de llenado, el operario se encargar de retirarla. Suponer que siempre hay botellas disponibles en la banda transportadora. 3. Sea una leva como la que se muestra en la Figura 171:

Figura 171. Sistema de Leva. En la cual: M1 es un motor que hace girar la leva (q 1 giro horario y q 2 giro anti horario)

235

M2 (q3) es un motor que coloca piezas y las recoge mediante la activacin y desactivacin de un electro imn (q 4).

Proceso:

Se inicia con el pulso de i1. M2 acta de tal forma que cuando i2 Se activa, un actuador baja hasta que se da i4, cuando el giro de la leva ha sido horario o en condiciones inciales coloca una pieza (la colocacin toma 3 segundos) luego vuelve a subir hasta que se da i3. Cuando i2 ha sido activado por el giro anti horario de la leva M2 hace bajar el actuador y toma la pieza, proceso que toma 4 segundos.

El motor M1 mueve la leva en sentido anti horario hasta que se da i5, cuando esto sucede el motor detiene la leva por 4 segundos, luego continua movindose en sentido anti horario hasta que se activa i2, lo que detiene la leva; luego de la seal de activacin la leva se mueve en sentido horario hasta activar a i2 sin detenerse en i5.

La seal de activacin para M1 es un flaco de bajada de i4.

El proceso se realiza 3 veces seguidas (Llegada con giro horario a i2) y luego se detiene.

Si en algn momento se da i6 el proceso continua hasta que se activa i2 por el giro en sentido horario, lo que hace que el proceso se detenga.

El proceso puede reiniciarse con un pulso de inicio.

Suposiciones: No tener en cuenta el sentido de giro de M2.


236

Inicialmente estn pulsados tanto i3 como i2. Siempre hay piezas disponibles para colocar. Nota: i2 e i5 son suiches normalmente cerrados.

237

1. Rameback, C. (2003). Process automation systems-history and future. En: Emerging Technologies and Factory Automation, Sweden, IEEE conference, vol.1. pp. 3-4. 2. IEC, International Electrotechnical Commission. (2003). IEC 61131-3, 2nd Ed. Working group 7: Programmable controllers. Technical committee no. 65: Industrial-process measurement and control sub-committee 65b: devices. programmable controllers - programming languages.

3. DIME-Direccin de Investigacin U.N Sede Medelln. (2004a). Mtodos Formales Para El Diseo De Algoritmos De Control Lgico De Sistemas Dinmicos a Eventos Discretos. En: , Medelln, Mes, Paginas.

4. DIME-Direccin de Investigacin UN Sede Medelln. (2004b). Un mtodo basado en HCPN (Hierarchical Coloured Petri Nets) para disear programas de control lgico. En: , Medelln, Mes, Paginas. 5. SIEMENS S.A. Manual SIMATIC S7-300. 2000. 6. Miyazawa, H., Tanaka, T., Sekiguchi. (1997). Verification of the Behavior of Sequential Function Chart Based on Its Petri Nets Model. En: Emerging Technologies and Factory Automation, USA, IEEE. pp. 532-537. 7. Chmiel, M., Hrynkiewicz, E. y Muszynski, M. (2002). The way of ladder diagram analysis for small compact programmable controller. En: Science and Technology, IEEE. pp. 169- 173. [K31] 8. Benitez Pina, I., Vazquez Seisdedos, L. y Villafruela Loperana, L. (1999). Including object-oriented properties in the PLC's programming languages. En: Emerging Technologies and Factory Automation, Espaa, IEEE, vol. 2. pp 1029-1034. 9. Feldmann, K., Colombo, A.W., Schnur, C. y Stockel, T. (1999). Specification, design, and implementation of logic controllers based on colored Petri net models and the standard IEC 1131. I. Specification and design. En: Emerging Technologies and Factory Automation, Espaa, IEEE, vol. 2. pp. 1029-1034. 10. Litz, L. y Frey, G. (1998a). A Senior Course on Logic Process Control based on Petri Nets. En: Conf. on Systems, Man, and Cybernetics (SMC'98), USA, IEEE. pp. 274-277.

11. Zhou, M. y Twiss, E. (1998). Design of Industrial Automated Systems Via Relay Ladder Programming and Petri Nets. En: IEEE Transactions on Systems, Man and Cybernetics, USA, IEEE, Vol 28, No. 1. pp. 137-150. 12. Bordbar, B., Giacomini, L., Y Holding, D. (2000). UML and Petri Nets for Design and Analysis of Distributed Systems. En: IEEE CCA/CACSD, USA, IEEE. pp. 610-615.
238

13. Rumbaugh, J. (1993). Object-Oriented Modeling and Design. USA, AddisonWesley Professional. 2 edicin. 14. Zhou, M. y DiCesare, F. (1993). Petri nets synthesis for discrete event control of manufacturing system. Dordrecht, Kluwer Academic publisher. 15. Zurawski, R. y Zhou, M. (1994). Petri nets and industrial applications. En: IEEE transaction on industrial Electronics, IEEE, Vol 41, No 6, Diciembre. pp. 567-583. 16. Frey, G. y Litz, L. (1998b). Correctness analysis of petri net based logic controllers. Kaiserslaurtern, Institute of process Automation, Universidad de Kaiserslaurtern. 17. Frey, G. (1998a). Automatic Implementation of petri net based control algorithms on PLC. Kaiserslaurtern, Institute of process Automation, Universidad de Kaiserslaurtern. 18. Antoniadis, I. y Leopoulos, V. (1999). A concept for the integrated process description, PLC programming and simulation using petri nets: Application in a production process. En: . Atenas, Universidad de Atenas. 19. Park, E., Tilbury, D. y Khargonekar, P. (1999). Modular logic controllers for machining systems: formal representation and performance analysis using petri nets. En: IEEE transactions on robotics and automation,IEEE, vol 15, No 6. 20. Frey, G. (1998b). Analysis of petri net based control algorithms-basic properties. Kaiserslaurtern, Institute of process Automation, Universidad de Kaiserslaurtern. 21. Frey, G. y Schettler, H. (1998). Algebraic analysis of petri net based control algorithms. En: Proceedings of the 4th IEE wokshop on discrete event systems WODES98, Cagliari, IEEE. pp 94-96 22. Desrochers, A. (1995). Applications of Petri Nets in Manufacturing Systems. En: IEEE Press, IEEE. 23. Zhou, m. (1996). Discrete Event Control Design Methods. En: 13th IFAC Word Congress, Vol. 9. 24. Bruggink, M. (1999). Programming PLCs using Sequential Function Chart. Nijmegen, Department of Computing Science, Universidad de Nijmegen. 25. Ferrarini, L., Narduzzi, M. y Tassan-Solet, M. (1994). A new approach to modular liveness analysis conceived for large logic controllers design. En: IEEE Trans. Robot. Automation, IEEE, vol. 10, pp. 169184.

239

26. Zhou, M., DiCesare, F. y Desrochers, A. (1992). A hybrid methodology for synthesis of Petri net models for manufacturing systems. En: En: IEEE Trans. Robot. Automation, IEEE, vol. 8, pp. 350361. 27. Nakamura, S., Fujii, Y. y Sekiguchi, T. (1999). Study on a transformation method of ladder Diagram into sequential function chart on the Basis of linear programming technique. Yokohama, Facultad de ngeniera, Universidad Nacional Yokohama. 28. Balcells, J. y Romeral, J. (1997). Automatas Programables. Barcelona. Marcombo. 29. Mandado, E., Acevedo, J. y Perez, S. (1997). Controladores lgicos y automatas programables. Barcelona. Marcombo. 2. Ed. 30. Porras, A. y Montenegro, A. (1990). Automatas Programables: Fundamento, manejo, instalacion y practicas. Barcelona. Mc Graw-Hill. 31. Murata, Tadao

240

También podría gustarte