Capítulo 1
El GRAFCET
Capítulo 1 El GRAFCET
El GRAFCET
1.1 Introduction
Le Grafcet, Inventé en 1977 en France par l ’AFCET (Association Française pour la
Cibernética Económica y Técnica) es la abreviatura de la expresión «Gráfico Funcional
de Commande Etape/Transition». Permite describir todos los comportamientos esperados de un
automatismo de control frente a los eventos o la información derivada de un proceso
automatizado. En otras palabras, es un modelo gráfico de representación del cuaderno de
cargas de un automatismo lógico.
El GRAFCET es difundido por la ADEPA (Agencia Nacional para el Desarrollo de la
Productique Aplicada a la industria.
1.2 Puesta en situación
El desarrollo de talleres flexibles y la robotización han impuesto una herramienta gráfica simple
que permite, a partir de un pliego de condiciones bien definido, resolver un problema
de automatización y establecer el ciclo de funcionamiento del proceso, esta herramienta es el Grafcet.
El Grafcet responde particularmente bien a las necesidades de la industria en los automatismos
secuenciales cuya descomposición en pasos es posible. Nos permite no solo
de analizar el problema planteado pero, también de concebir una solución programable cualquiera
sea la tecnología del autómata. Esta herramienta se basa en una representación gráfica muy
detallada del sistema y esto, antes de hacer su síntesis.
Nuestra elección se ha centrado en esta herramienta porque es un lenguaje claro y estricto que permite describir un
funcionamiento sin ambigüedad.
1.2.1 Normalización
- NFC (Norma francesa de la electricidad): La presente norma se aplica a todo sistema lógico
de commande de automatización industrial, independientemente de la complejidad o la tecnología utilizada
(eléctrico, electrónico cableado o programado, mecánico, neumático, etc.). El diagrama
El funcional «Grafcet» describe todo sistema cuyas evoluciones pueden expresarse
secuencialmente, es decir, cuya descomposición en etapas es posible. El Grafcet puede ser
también utilizado para la descripción de procesos combinatorios cuando permite dar, de
el automatismo de mando, una descripción secuencial más fácilmente analizable y
comprensible.
La presente norma ha entrado en vigor desde el 19 de junio de 1982 bajo el nombre NFC 03-190 de 1982, y
desde el Comité Electrotécnico Internacional: CEI / IEC 848 (1988), CEI: IEC 1131.3 (marzo
1993).
Existe una documentación y símbolos gráficos, diagrama funcional "Grafcet" editado
por la Unión Técnica de la Electricidad, UTE C03-190 noviembre 1990.
1.2.2 Ámbito de aplicación
El diagrama funcional es independiente de las técnicas secuenciales "todo o nada".
neumático, eléctrico o electrónico, cableados o programados, que pueden ser utilizados para
Enseñante: Ridha MAHJOUB 2
Capítulo 1 El GRAFCET
realizar el automatismo de control. Pero el uso de secuenciadores, por un lado, y
de autómatas a instrucciones por pasos, permite una transcripción directa del diagrama
funcional.
Esta representación gráfica concisa y fácil de leer es fácilmente comprensible por toda
persona en relación con el sistema automatizado, del diseñador al usuario sin olvidar
el agente de mantenimiento.
Utilizado industrialmente, el Grafcet también se enseña en las opciones técnicas y
la educación superior.
Tenga en cuenta:
- El Grafcet solo se centra en el funcionamiento normal del automatismo y no tiene en cuenta
cuenta los diversos modos de marcha y de paro, así como las fallas;
El GEMMA nos introducirá a estos modos más adelante.
1.3 Niveles de Grafcet
El lenguaje Grafcet tiene dos niveles, cuyas características son las siguientes.
Niveau 1 (spécification) :
- Solo trata el comportamiento lógico de la aplicación;
- Ignora las restricciones específicas de los sensores y de los actuadores;
Las acciones y las receptividades se describen mediante frases.
Nivel 2 (realización):
- Describe el funcionamiento real de la automatización;
- Ten en cuenta la tecnología de los sensores y de los actuadores;
- Las acciones y las receptividades se dan por ecuaciones lógicas sobre señales reales.
Dado los beneficios que nos aporta el Grafcet nivel 2, lo vamos a utilizar para la
modelado de nuestros futuros procesos.
1.4 Elementos básicos de un Grafcet
El Grafcet es una sucesión de transiciones, está compuesto por (ver Figura 1.1):
- Etapa inicial: representa una etapa que está activa al inicio del funcionamiento, se
diferencie de otros pasos duplicando los lados del cuadrado;
- Etape : a la que están asociadas acciones,cada etapa está representada por un cuadrado marcado
numéricamente ;
- Transición: a la que se asocia una Receptividad, la transición está representada por una línea
horizontal
- Receptividad: las condiciones de receptividad están inscritas a la derecha de la transición;
- Acción: están descritas literal o simbólicamente dentro de uno o varios
rectángulos conectados por una línea al lado derecho de la etapa;
- Lazos orientados: conectando las etapas a las transiciones y las transiciones a las etapas. Estos lazos
serán señalizadas solo cuando no respeten el sentido del recorrido general de arriba hacia abajo
bas. Ellas indican el sentido del recorrido.
Enseignant : Ridha MAHJOUB 3
Capítulo 1 El GRAFCET
Figura 1.1 - Elementos básicos de un Grafcet
1.5 Règles d ’évolutions d ’un Grafcet
Regla 1: Etapa inicial
La etapa inicial está representada por un cuadrado doble y siempre está activada
incondicionalmente. En un Grafcet se pueden tener varios pasos iniciales.
Regla 2: Condición de activación de una etapa
El paso de la etapa n a la etapa n+1 está sujeto a dos condiciones:
La etapa debe estar activa Y la transición correspondiente debe ser validada.
Regla 3: Activaciones simultáneas
Tenemos tres etapas en paralelo simultánea y una transición (a+bc) con dos etapas más.
simultánea 15 y 16 (ver Figura 1.2). Es necesario que los pasos 23, 14 y 7 estén activos (el
la transición es franquable) Y que la transición (a+b.c) sea verdadera (la transición se ha cruzado)
para que podamos activar las etapas 15 y 16. Si una de las tres etapas no está activa, no
no se puede pasar a la siguiente etapa. Debemos tener las 3 etapas activas y la condición (a+b.c=1).
Regla 4: La convergencia y divergencia en OU
Esta regla es muy importante y muy utilizada en los procesos industriales, especialmente los
ascensores.
La divergencia en OU :
El paso de la etapa 11 a la etapa 12 está condicionado por la transición y el paso de 11 a
13 está condicionado por la transición y (ver Figura 1.3). Si x=1 y y=0, se pasa de la etapa 11 a
l’étape 12 et si x=0 et y=1, on passe de l’étape 11 à l’étape 13 ;
Enseignant : Ridha MAHJOUB 4
Capítulo 1 El GRAFCET
Figura 1.2 - Acciones simultáneas
Figure 1.3 -Divergence en OU
La convergencia en OU :
Tenemos dos etapas que ya están activas y dos transiciones, el paso de la etapa 17 a la etapa
19 está condicionado por c y el paso de la etapa 18 a la etapa 19 está condicionado por d (ver
Figura 2.4).
Después de una divergencia en OU, se encuentra una convergencia en OU. El número de ramas puede
ser superior a 2.
Figura 1.4 - Convergencia en OU
Regla 5: Solo se debe activar un paso
Enseñante: Ridha MAHJOUB 5
Capítulo 1 El GRAFCET
En una divergencia en OU, solo se debe ejecutar una rama (ver Figura 1.5):
Si se valida, pasamos de la etapa 1 a la etapa 2.
- Si b es validada, pasaremos de la etapa 1 a la etapa 3.
Figura 1.5 - Solo un paso debe estar activado
Regla 6: Acciones simultáneas
Es decir, se ejecutarán varias etapas en paralelo (por ejemplo, motores,
vérins, lámparas, etc. funcionan al mismo tiempo.
Figure 1.6 -Actions simultanées
En este caso, la transición se realiza mediante un final de carrera f.c(ver Figura 1.6).
El paso de la etapa 1 a las etapas 2 y 3 se realiza mediante el fin de carrera fc=1 Y de las etapas 2 y 3
en la etapa 1 también por fc=1.
Regla 7: Pasarela entre Grafcets
Si tenemos un pliego de condiciones complejo, para simplificar el Grafcet se puede dividir en
varios Grafcets donde cada uno gestiona una parte pero la condición debe ser comunicativa es
se puede llamar a un Grafcet desde otro.
La Figura 1.7 muestra una comunicación bidireccional entre los dos Grafcets y la
la transición X6 representa la etapa 6 del Grafcet a la derecha. El paso de la etapa 1 a la etapa 2 es
condicionado por la activación es la validación del paso 6, si el paso 6 está validado y la transición
X6 está validado, podemos pasar de la etapa 1 a la etapa 2.
De igual manera, el paso de la etapa 4 a la etapa 5 está condicionado por la validación de la etapa X1
du Grafcet à gauche et le départ du cycle dcy.
Regla 8: Reanudación de etapas y salto hacia adelante
- Reanudación de etapas: La reanudación de etapas permite reiniciar varias veces si es necesario
una misma secuencia como muestra la Figura 1.8.
- Saltar hacia adelante: El salto de etapas es una selección de secuencia que permite saltar varias
etapas según las condiciones de evolución como se representa en la Figura 1.9.
Enseñante: Ridha MAHJOUB 6
Capítulo 1 El GRAFCET
Figura 1.7 - Comunicación bidireccional.
Figura 1.8 - Revisión de etapas
Figura 1.9 - Salto hacia adelante
1.6 Grafcet de tareas y Subprogramas
Un subprograma es un Grafcet independiente cuya ejecución y desarrollo son
sincronizados a un Grafcet principal.
Cuando una tarea debe realizarse varias veces en un ciclo, la descripción de esta tarea
bajo la forma de un Grafcet independiente permite simplificar el análisis y simplificar la
programación. Este Grafcet independiente es un subprograma lanzado por el programa que
corresponde al Grafcet principal.
Enseñante: Ridha MAHJOUB 7
Capítulo 1 El GRAFCET
En el ejemplo de la Figura 1.10, la tarea de dosificación (GT1) se ejecuta 2 veces en el ciclo y el
El grafcet de dosificación describe esta tarea. El inicio de esta tarea de dosificación se realiza mediante la activación.
de la etapaX2 o la activación de la etapaX5.
Cuando la tarea está terminada, se devuelve información de estado (fin de tarea) al Grafcet
principal que puede entonces evolucionar. Es deseable terminar el Grafcet de la tarea por la
verificación de que la etapa de lanzamiento del Grafcet principal está bien desactivada antes de que lo
abrochar
Figura 1.10 - Grafcet de tareas
1.7 Macros etapas
Una macro-etapa, repetida tantas veces como sea necesario, se introduce en el grafo principal
en lugar de la secuencia repetitiva. Esta secuencia se describe en las inmediaciones del gráfico.
La macro-representación responde a las necesidades de un enfoque progresivo y estructurado de
aplicaciones industriales complejas (ver Figura 1.11).
Figura 1.11 - Macro etapa
Enseñante: Ridha MAHJOUB 8
Capítulo 1 El GRAFCET
En relación con la realización programada, el paso 10 corresponde a un salto hacia el sub-
programa (llamada al subprograma ME1) y su actividad está materializada por el puntero
programa principal.
Sin embargo, la programación no será exactamente conforme a esta descripción porque, en
En general, la prueba S3 está incorporada en el subprograma.
1.8 Gráfico auxiliar
Los pasos 2 y 4 son pasos de llamada del grafo de secuencia repetitiva y provocan
la activación de la etapa 10 mediante el cruce de la transición (1), receptiva a la actividad de estos
etapas (X2 o X4) como muestra la Figura 1.12.
La etapa 13 es la etapa de regreso al gráfico principal.
Figura 1.12 - Gráfica auxiliar
Figura 1.13 - Gráfico auxiliar, conceptos de transiciones fuente y sumidero
Enseignant : Ridha MAHJOUB 9
Capítulo 1 El GRAFCET
Existen otras descripciones funcionales posibles: ejemplo utilizando los conceptos de
transiciones fuente y pozo con cruzamientos simultáneos de transiciones (*) (ver Figura 1.13).
En conclusión, existen múltiples representaciones funcionales posibles para describir
el uso de un mismo recurso en una secuencia, en diferentes momentos.
El problema puede ser mucho más complejo en ciertos casos (llamada a subprogramas)
parametrizados o multiplexados, la gestión de llamadas múltiples, etc.).
1.9 Forçage
El forzaje es una acción continua, anotada en un doble marco, que actúa sobre el grafico Gi,
jerárquicamente inferior o "esclavo" configurando este Grafcet, desde cualquier
situación, en un estado dado.
La activación de la etapa 10 del GrafcetG1 fuerza al grafcetG2 a su etapa 21 (forzada a 1), los
otras etapas del grafcet G2 están desactivadas (forzadas a 0) como se muestra en la Figura 1.16.
Figura 1.16 – Acción de forzaje
1.10 Grafcet desde el punto de vista de la parte operativa (P.O)
El Grafcet desde el punto de vista de la parte operativa describe en términos claros o por símbolo los
acciones y las receptividades teniendo en cuenta la tecnología elegida.
La tecnología se refiere a los elementos de la parte operativa así como al tipo de información
recibidas (órdenes) o enviadas (informes).
Es en general la descripción del automatismo solo, es decir, la secuencia de las acciones y
de transiciones que permiten controlar el proceso. Cuando se aborda el análisis y la
descripción de un sistema, no se sabe qué tecnología se elegirá para los actuadores,
Los sensores y el control. En este Grafcet, describiremos las acciones y los eventos en términos
generales. Este gráfico describe el funcionamiento global del sistema. Traducir el pliego de condiciones
sin prejuicio de la tecnología adoptada. Permite dialogar con personas no
spécialistes (fournisseurs, décideurs...) son écriture, en langage clair, permettant sa
comprensión por parte de todos.
Enseignant : Ridha MAHJOUB 10
Capítulo 1 El GRAFCET
1.11 Grafcet desde el punto de vista de la parte de control (P.C)
El Grafcet desde el punto de vista de la parte de control describe los intercambios de la parte de control
con la parte operativa y el diálogo con el operador, teniendo en cuenta las elecciones
tecnológicos de los preactuadores y de los sensores.
En este tipo de Grafcet se especifica el tipo de información recibida (órdenes) y enviada.
(informes). El observador desde este punto de vista es un especialista en la parte operativa, la
la parte del pedido solo le interesa por sus efectos.
1.12 Grafcet desde el punto de vista del sistema (proceso y procedimientos)
Descripción hecha por un observador que se sitúa desde un punto de vista externo al SAP.
El punto de vista del sistema describe el comportamiento del sistema en relación al producto.
El procedimiento es el conjunto de funciones sucesivas ejecutadas sobre un mismo producto durante
de su fabricación.
El proceso es la organización del procedimiento. Es la sucesión de funciones simultáneas.
realizadas en todos los productos presentes en el sistema automatizado.
El Grafcet desde el punto de vista del sistema permite el diálogo entre el cliente y el diseñador para la
especificación del sistema automatizado.
1.13 Interpretación algebraica
Las reglas de evolución del Grafcet son el punto de partida de las ecuaciones lógicas que describen la
navigation entre les étapes de fonctionnement.
1éreregla: una transición está, o validada o no validada.
Está validada cuando todos los pasos inmediatamente anteriores están activos. No puede
ser cruzada que:
Cuando está validada Y la receptividad asociada a la transición es VERDADERA.
La traducción de esta regla da la condición de activación de la etapa:
CA Xn Xn‐[Link].
2èmerègle :le franchissement d’une transition entraîne l’activation de toutes les étapes
inmediatamente siguientes y la desactivación de todas las etapas inmediatamente anteriores.
La traducción de esta regla da la condición de desactivación de la etapa:
CD Xn [Link] 1 Iniciar Xn 1 Iniciar
Si laCAet laCDde l’étape n son falsos, la etapa n permanece en su estado. Esto es lo que se llama
el efecto memoria (de la lógica secuencial). Es decir, que el estado de Xn en el instante t+δt depende
del estado anterior al instante Xn.
De acuerdo con estos tres puntos anteriores, es posible escribir la tabla de verdad de la actividad de
la etapa n de un Grafcet : Xn
Enseignant : Ridha MAHJOUB 11
Capítulo 1 El GRAFCET
Tableau 1.1 -Table de vérité de l’étape Xn
Xn(t) CA(Xn) CD(Xn) Xn(t+δt) Observaciones
0 0 0 0 La etapaXnreste inactif (effet mémoire)
0 0 1 0 La etapa Xn permanece inactiva
0 1 0 1 Activación de la etapa Xn
0 1 1 1 Activación Y Desactivación: Activación de Xn
1 0 0 1 La etapa sigue activa (efecto memoria)
1 0 1 0 Desactivación de la etapa Xn
1 1 0 1 La etapa permanece activa
1 1 1 1 Activación Y Desactivación : Activación deXn
La tabla de Karnaugh asociada se presenta en la Tabla 1.2.
Tabla 1.2 - Tabla de Karnaugh de la etapa Xn
CA(Xn).CD(Xn) 00 01 11 10
0 0 0 1 1
Xn
1 1 0 1 1
De dónde la ecuación de Xn:
Xn CA X n . XnLo que resulta en:Xn . . .
O aún y la expresión de la ecuación de transferencia generalizada de un paso cualquiera de un
El grafcet es el siguiente:
Xn . . .
Enseignant : Ridha MAHJOUB 12
Capítulo 2
Métodos de
programación de
automates programables
industriales
Capítulo 2 Métodos de programación de APIs
Métodos de programación de autómatas
programables industriales
2.1 Introducción
El Autómata Programable Industrial (API) es un dispositivo electrónico programable, adecuado
al entorno industrial, que realiza funciones de automatización para asegurar el control
de preactuadores y actuadores a partir de información lógica, analógica o numérica.
El mismo tipo de autómata programable industrial puede ser utilizado para diferentes
aplicaciones, la diferencia se produce con el programa instalado en este. Para realizar estos
los programas utilizan diferentes lenguajes según el autómata, el usuario y el
diseñador.
Antes: uso de relés electromagnéticos y sistemas neumáticos para la
realización de las partes de control Lógica cableada.
Inconvenientes: caro, sin flexibilidad, sin posibilidad de comunicación.
Solución: utilización de sistemas basados en microprocesadores que permiten una modificación
facilitación de sistemas automatizados Lógica programada.
2.2 Principales tipos de datos elementales
En los sistemas automatizados, la noción de bit, octeto (byte), palabra (word) o doble palabra (double word)
La palabra) se utiliza a menudo. Por lo tanto, es necesario conocer el significado de estos términos.
Un bit corresponde a una posición o un carácter binario. Es la unidad más pequeña.
en materia de información y solo admite uno de los dos estados siguientes: "0" o "1".
Varios bits pueden agruparse en unidades más grandes.
Octeto (o byte): un byte es una unidad de 8 bits. Se utiliza, por ejemplo, para agrupar los
estados lógicos de 8 entradas o de 8 salidas (ver Figura 2.1).
Figura 2.1 - Significación de la distribución de las zonas de memoria
Enseñante : Ridha MAHJOUB 2
Capítulo 2 Métodos de programación de API
Mot(o palabra): una palabra se compone de 2 bytes, es decir, 16 bits. Una palabra permite agrupar
16 entradas o 16 salidas.
Doble palabra: una doble palabra contiene 2 palabras, o 4 bytes, o 32 bits. Un
double mot es la unidad más grande que un autómata puede procesar, a excepción de
algunas API que procesan la palabra larga (64 bits).
En resumen :
-1 Byte = 8 bits ;
-1 Palabra = 2 Bytes = 16 bits ;
-1 Doble palabra = 2 palabras = 4 Bytes = 32 bits (ver Tabla 2.1).
Tabla 2.1 - Tabla de tipos de datos elementales
Tipo de Descripción Tamaño o Extensión
Datos nombre de bits
BOOL Booléen (bit) 1 0o1
BYTE Cordon de 8 bits 8 Sin extensión
PALABRA Cuerda de caracteres de longitud 16 16 numérico para
DWORD Cuerda de caracteres de longitud 32 32 este tipo de
LWORD Cuerda de caracteres de longitud 64 64 datos
INT Entero firmado n=16 -2 à + (2n+1- 1)
n-1
UINT Entier no firmado n=16 0 a (2n– 1)
REAL Nombre réel 32 Punto flotante
CADENA Cuerda de caracteres Encadrado por dos apóstrofes
TIEMPO Duración Depende de la aplicación en cuestión
2.3 Representación de las variables
Una variable permite identificar objetos de datos cuyo contenido puede variar (datos
asociados a las entradas, salidas o ubicaciones de memoria de la API).
La Tabla 2.2 permite representar simbólicamente una variable. La variable comienza con el
símbolo %.
Tableau 2.2 -Représentations symboliques des variables
Prefijo Significación
Yo Ubicación de una entrada automática
Q Ubicación de una salida automática
M Ubicación del memento o memoria interna
X Tamaño de un solo bit
B Tamaño de un byte u octeto
W Tamaño de una palabra: palabra de 16 bits
D Tamaño de un doble palabra: palabra doble de 32 bits
L Tamaño de una palabra larga: palabra de 64 bits
Enseignant : Ridha MAHJOUB 3
Capítulo 2 Métodos de programación de API
2.4 Asignación de direcciones en las zonas de memoria
- Bits internos: M0.0 a M255.7 dependientes de las siguientes palabras;
- Octetos internos: conjunto de 8 bits MBi;
- Mots internes : ensemble de 16 bits MWi ;
- Mots dobles : conjunto de 32 bits MDi.
Según la marca del autómata programable (referencia del fabricante) podemos asignar
las entradas/salidas y también las etapas como muestra la tabla 2.3.
Tabla 2.3 - Representaciones simbólicas de las variables
API Siemens API Siemens API Omron
S7-1200/1500 S7-300/400 CQM1 - CPU21
IB0 : I0.0…I0.7 EBO : E0.0…E0.7 000.0X : 000.00…000.07
Entrées
IB1 : I1.0…I1.7 EB1 : E1.0…E1.7 000.1X : 000.10…000.17
QB0 : Q0.0…Q0.7 AB0 : A0.0…A0.7 100.0X : 100.00…100.07
Salidas
QB1 : Q1.0…Q1.7 AB1 : A1.0…A1.7 100.1X : 100.10…100.17
MB0 : M0.0…M0.7 MB0 : M0.0…M0.7 240.0X : 240.00…240.07
Etapas
MB1 : M1.0…M1.7 MB1 : M1.0…M1.7 240.1X : 240.10…240.17
Ejemplo:
- %IW125 : Emplacement du mot d’entrée à l’adresse 125 ;
%QB17 : Ubicación del octeto de salida en la dirección 17 ;
- %MD48 : Ubicación de la palabra de memoria doble en la dirección 48.
La Tabla 2.4 propone varios modos de distribución de la zona de memoria que van de M0.0 a
M6.7. Esta distribución se realiza según las necesidades y prestando atención a las coincidencias.
Tabla 2.4 - Representaciones simbólicas de las variables
M6.0..M6.7 M5.0..M5.7 M4.0..M4.7 M3.0..M3.7 M2.0..M2.7 M1.0..M1.7 M0.0..M0.7
MB6 MB5 MB4 MB3 MB2 MB1 MB0
MW5 MW3 MB2 MW0
MB6 MW4 MW2 MW0
MW5 MB4 MD0
Ejemplo de identificación de entradas y salidas:
El reconocimiento o direccionamiento, es la referencia correspondiente a la ubicación de cada entrada y
salida así su dirección en memoria donde se almacena la imagen de su estado 0 o 1, esto permite
de utilizar varias veces la entrada o la salida en el programa.
Un autómata programable con 8 entradas y 8 salidas, que puede ocupar las siguientes direcciones:
-Entrées :I0.0 ; I0.1 ; I0.2 ; I0.3 ; I0.4 ; I0.5 ; I0.6 ; I0.7 ;
-Sorties :Q1.0 ; Q1.1 ; Q1.2 ; Q1.3 ; Q1.4 ; Q1.5 ; Q1.6 ; Q1.7.
Profesor: Ridha MAHJOUB 4
Capítulo 2 Métodos de programación de API
2.5 Direccionamiento absoluto y simbólico
En un programa, se tiene la opción de una dirección absoluta, simbólica o bien ambas a la vez.
3.5.1 Adressage absolu
La direccionamiento absoluto implica utilizar las direcciones físicas del autómata, es decir, las
direcciones reales (ver Figura 2.2).
Figura 2.2 – Ejemplo de direccionamiento absoluto
2.5.2 Direccionamiento simbólico
Para dar claridad al programa, se utiliza la direccionamiento simbólico. Esto equivale a
sustituir cada dirección física por una dirección simbólica que represente mejor la
función como se muestra en la Figura 2.3.
Figura 2.3 – Ejemplo de direccionamiento simbólico
2.6 Cableado de las entradas / salidas de un autómata programable
2.6.1 Alimentación del autómata
El autómata programable generalmente se alimenta a través de la red monofásica 230V/50 Hz
pero otras alimentaciones son posibles (110V por ejemplo).
La protección será de tipo magnetotérmica (ver las características del autómata y los
recomendaciones del fabricante). Es deseable controlar la alimentación del autómata mediante un
circuito de mando específico (contactor KM).
2.6.2 Alimentación de las entradas del autómata
El autómata generalmente está provisto de una alimentación para los sensores/detectores (atención
al tipo de lógica utilizada: lógica positiva o negativa).
Las entradas están conectadas a 24V (terminal común de las entradas). La información de
Los sensores/detectores son tratados por las interfaces de entrada como se presenta en la Figura 2.2.
Enseignant : Ridha MAHJOUB 5
Capítulo 2 Métodos de programación de API
Figura 2.4 – Cableado de las entradas del autómata
2.6.3 Alimentación de las salidas del autómata:
Las interfaces de salida permiten alimentar los diversos preactuadores. Es deseable
de equipar cada preaccionador con un relé de aislamiento (no representados en la Figura 2.3).
Figura 2.5 – Cableado de las salidas del autómata
2.7 Principio de programación de las API
Cada autómata se programa a través de una consola de programación propietaria o por un
ordenador equipado con el software específico del fabricante.
Un programa de un autómata está constituido por una secuencia de instrucciones, cada instrucción se
componga los elementos siguientes:
Un número de línea o una dirección que permite encontrar una instrucción en el
programa
Un código de operación que indica el tipo de operador a ejecutar (operación Y (código AND);
operación O (código O)
Un operando que indica el objeto sobre el cual se realiza la operación, está compuesto por dos
parties :
- Son tipo, por ejemplo, I para las entradas y Q para las salidas;
Enseñante: Ridha MAHJOUB 6
Capítulo 2 Métodos de programación de API
- Su dirección geográfica en el autómata (su posición) por ejemplo 0.5: 0 siendo el número
du module et 5 étant la voie sur le module.
Todos los autómatas programables funcionan según el mismo modo operativo como el
muestra la Figura 2.4.
Se llama escrutinio al conjunto de las cuatro operaciones realizadas por el autómata y el tiempo de
examina el tiempo que tarda el autómata en procesar la misma parte del programa. Este tiempo
es del orden de decenas de milisegundos para aplicaciones estándar.
Figura 2.6 – Modo operativo de funcionamiento de un autómata programable
Tratamiento interno: El autómata realiza operaciones de control y actualiza algunos
parámetros del sistema (detección de los pasos en RUN / STOP, actualizaciones de los valores de)
el sellador de tiempo, ...).
Lectura de entradas: El autómata lee las entradas (de forma síncrona) y las copia en la
memoria de imagen de las entradas.
Ejecución del programa: El autómata ejecuta el programa instrucción por instrucción
y escribe las salidas en la memoria de imagen de las salidas.
Escritura de las salidas: El autómata alterna las diferentes salidas (de forma síncrona) a
posiciones definidas en la memoria de imagen de las salidas.
Estas cuatro operaciones se realizan continuamente por el autómata (funcionamiento
cíclico).
2.8 Eléments communs aux différents langages
La estructuración de un programa se puede editar gracias a los tres tipos de módulos siguientes:
Función: Módulo con varias entradas posibles, una sola variable de salida y sin
memoria interna.
Bloc funcional: Módulo que tiene varias variables de entrada y salida posibles y una
memoria interna.
Programme :Module construit à l’aide de fonctions et de blocs fonctionnels etc.
La organización interna de un programa puede involucrar un diagrama funcional de
secuencia SFC. Las principales funciones comunes a todos los lenguajes de programación de
el autómata programable son:
Enseñante: Ridha MAHJOUB 7
Capítulo 2 Métodos de programación de API
La función de conversión de tipos: REAL / INT, esta función permite la conversión de un
variable de entrada del tipo real en una variable de salida del tipo entero.
La función numérica: SQRT, esta función permite calcular la raíz cuadrada de una
variable de entrada.
Funciones de desplazamiento de bits: SHL, esta función permite el desplazamiento a la izquierda de N bits de una
variable de entrada y el relleno de ceros a la derecha.
Funciones lógicas: Y, esta función realiza el Y booleano.
Funciones de selección y comparación:
- MAX: esta función permite determinar el valor máximo entre tres variables de entrada;
- SEL : esta función permite seleccionar una de las dos variables de entrada según la
variable G ;
- GT: esta función realiza la comparación de superioridad entre dos variables de entrada
(IN1>IN2).
2.9 Lenguajes de programación de las API
La norma CEI 61131-3 está destinada a regular los aspectos de la programación de los PLC.
Esta norma de los lenguajes de programación de los autómatas programables permite que los
classer suivant trois catégories données par le Tableau 2.5.
Tabla 2.5 - Tabla de verdad de la actividad del paso n
Lenguajes literales Lenguajes gráficos Lenguaje de sistemas
secuenciales
Lenguaje IL (Lista de Instrucciones) Lenguaje LD (Diagrama de Escalera) Diagrama SFC
Lenguaje ST (Texto Estructurado) Lenguaje FBD (Función (Función Secuencial
Bloc Diag Gráfico)
2.9.1 Lenguaje IL (Lista de Instrucciones o lenguaje a lista de instrucciones)
Como su nombre indica, este programa, muy poco utilizado por los automaticistas, está constituido
de una serie de instrucciones (ver Tabla 2.6) que cumplen con el siguiente formato:
Etiqueta Operador Operando(s) Comentario
(No obligatorio) (No obligatorio)
Este lenguaje es parecido al lenguaje de programación de un microprocesador: el ensamblador.
Tableau 2.6 – Instrucción del lenguaje Lista
Etiqueta Operador Operando(s) Comentario
Inicio : Y(
O %I0.0 Bp marche (NO)
O %Q4.0 Electroválvula
)
Y %I0.1 Bp arrêt (NF)
YN %I0.2 Nivel alto (NO)
ST %Q4.0 Afectación de electroválvula
Enseñante: Ridha MAHJOUB 8
Capítulo 2 Métodos de programación de API
[Link] Programación Lista de una API OMRON
La contraseña de la consola: Hay que girar la llave hacia la posición Programa y luego ingresar los
instrucciones siguientes : MONTR / CLR / MONTR / CLR.
La ejecución de un esquema siempre se realiza de izquierda a derecha.
-Para controlar el funcionamiento de un programa, basta con colocar la llave en la
positionMonitorpuis escribirCLRet desplazar la flecha↓.
Programación de un temporizador: se trata de traducir las redes de contactos dados.
por la Figura 2.7, en el programa List destinado a una API de tipo OMRON.
ylo
Figura 2.7 – Redes de contacto de un temporizador
Se propone el programa de la temporización anterior en el lenguaje List:
LD 000.01 WR
SALIMOS TIM 01 WR
50 WR
LD TIM 01 WR
FUERA 100.05 WR
FIN. «FUNC 01 WR»
Para cambiar el valor del temporizador, basta con girar la llave a la posición Programar, pulsar
CLEAR luego apunta la flecha↓ para cambiar el tiempo. Toca SHIFT + CONT y
dar el nuevo valor y finalmente escribir WR.
Para ver si las modificaciones están validadas o no, hay que girar la llave hacia RUNet y verificar.
el resultado de funcionamiento sobre el modelo del autómata.
Programación de la función O EXCLUSIVO: se trata de traducir la red a contactos
siguiente, en programa List destinado a una API de tipo OMRON.
Enseñante: Ridha MAHJOUB 9
Capítulo 2 Métodos de programación de API
La función O EXCLUSIVO es un caso de programación de instrucción en bloque lógica en efecto
el esquema de relés correspondiente puede dividirse en bloques lógicos. La instrucción ORLD
permite definir la condición que relaciona el primer bloque con el segundo, en este caso los dos bloques
están relacionados con una condición O.
LD 000,01 WR
Y NO 000.02 WR
LD NO 000,01 WR
Y 000.02 WR
O LD WR
FUERA 100.01 WR
FIN.
Aplicación 1 :
Ecrire le programme List équivalent au schéma à contacts suivant :
Solución de la aplicación 1 :
LD 000.01 WR
O NO 000.03 WR
LD NO 000.02 WR
O 000.04 WR
Y LD WR
FUERA 100.01 WR
FIN.
Aplicación 2 :
Escribir el programa List del esquema a contactos siguiente:
Solución de la aplicación 2:
Para facilitar el programa se puede utilizar la instrucción AND LD de la siguiente manera:
Enseignant : Ridha MAHJOUB 10
Capítulo 2 Méthodes de programmation des API
LD 000.01 WR
O NO 000.03 WR
LD NO 000.02 WR
O 000.04 WR
Y LD WR
LD NO 000.05 WR
O 000,06 WR
Y LD WR
FUERA 100.01 WR
FIN.
Aplicación 3 :
Escribe el programa List equivalente al esquema de contactos siguiente:
Q1: Descomponer el esquema en bloques lógicos.
Q2 :Ecrire le code mnémonique équivalent en langage List.
Solución de la aplicación 3 :
Q1 :
Q2:
LD 000.01 WR
Y NO 000.02 WR
Enseñante: Ridha MAHJOUB 11
Capítulo 2 Métodos de programación de API
LD NO 000.01 WR
Y 000.03 WR
O LD WR
LD 000.06 WR
Y 000.05 WR
O LD WR
LD NO 000.03 WR
O 000.09 WR
Y LD WR
LD NO 000.04 WR
Y LD WR
FUERA 100.06 WR
FIN.
2.9.2 Lenguaje ST (Texto Estructurado o lenguaje literal estructurado)
Este lenguaje, poco utilizado por los automáticos, está compuesto por expresiones literales constituidas
de operadores y operandos y enunciados. Este lenguaje es cercano a un lenguaje informático
como el PASCAL. Utiliza instrucciones como if, then, else (si, entonces, sino ...).
Ejemplo 1: Pedido de una electroválvula
%L1 (« comando de electrovalvula »)
SI (%I0.0 O %Q4.0) Y %I0.1 Y_NO %I0.2 ENTONCES CONFIGURAR %Q4.0
FIN_SI;
Ejemplo 2: Procedente de un programa de demostración «Máquina de dosificación y mezcla de un
productos» por el software PL7 de Schneider.
El contenido de este bloque escrito en lenguaje ST es el siguiente:
(*** Rutina de Simulación de un proceso de primer orden para Salida PID ***)
SI Trs ENTONCES
Sortie : = Tri ;
ELSE
Te : = INT_TO_REAL(%SW0) /1000.0 ;
Salida : = (Filtrado/(Filtrado+Te)) *Salida+(Ganancia*Te)/(Filtrado+Te) *Entrada ;
FIN_SI ;
Avec :
%SW0:Período de sondeo de la tarea maestra. Permite modificar el período de la tarea
maître définie en configuration, par le programme utilisateur ou par le terminal. La période est
expresada en ms (1 255ms). %SW0=0 en funcionamiento cíclico.
Ejemplo 3: La simulación de un retraso escrita en lenguaje ST es la siguiente:
Nb := REAL_TO_INT(1000.0*Retard/INT_TO_REAL(%SW0));
SI (Nb>=999) ENTONCES
Nb := 999;
FIN_SI;
SI Trs ENTONCES
Enseignant : Ridha MAHJOUB 12
Capítulo 2 Métodos de programación de API
Memoire :=Tri;
Sortie := Tri;
Pos := 0;
DE OTRA MANERA
Sortie := Memoire[Pos];
Memoria[Pos]:= Entrada;
Pos := Pos + 1;
SI (Pos>= Nb) ENTONCES
Pos := 0;
FIN_SI;
2.9.3 Lenguaje FBD (Diagrama de Bloques Funcionales) o lenguaje en bloques funcionales
Es un lenguaje gráfico utilizado por los automáticos donde los bloques están programados
(biblioteca) o programables, están representadas por rectángulos con las entradas a la izquierda
y las salidas a la derecha. Este lenguaje se compone de redes de bloques funcionales que son
conectados entre sí por líneas, el flujo de señales se realiza desde la salida de una función hacia
la entrada de la función conectada.
Ejemplos de bloques funcionales estándar:
Bloc funcional contadores;
Bloc funcional temporizadores;
Bloque funcional regulador PID...
Aplicación: Descripción del contador SFB 2
CU: Entrada de conteo, cuando el estado lógico de la entrada CU pasa del estado 0 a
en el estado 1 (frente montante), el contador se incrementa en 1.
-CD: Entrada de conteo, cuando el estado lógico de la entrada CD pasa del estado 0
à l’état 1 (front montant), le compteur est décrément de 1.
-R: Restablecimiento de entrada, cuando el estado lógico de la entrada R pasa del estado 0 al estado 1, la
el valor del contador se fuerza a 0 independientemente del estado de la entrada CU.
-PV : Ajuste del valor del contador. (en el ejemplo anterior 10).
-LD: Entrada «cargada», cuando el estado lógico de la entrada LD pasa del estado 0 al estado
1, el valor del contador (CV) se fuerza al valor ajustado en la entrada PV independientemente de
sea el estado de la entrada CD.
La salida Q está en estado lógico 1 si el valor de conteo actual (CV) es
igual o inferior a 0. (CV≤0).
-CV :MW101 en el ejemplo, nota para la visualización del valor del
contador o el uso del valor del contador en otro lugar del programa.
Atención de no reutilizar los bits de memoria M101.0 a M102.7 para otra
elegido en el programa.
La salida Q está en estado lógico 1 si el valor de conteo actual (CV) es
égale ou supérieure à la valeur allouée à l’entrée PV (CV≥PV).
Profesor: Ridha MAHJOUB 13
Chapitre 2 Métodos de programación de API
Figura 2.8 –Compteur CTUD (SFB 2)
2.9.4 Lenguaje de contactos (LD : diagrama de escalera)
Lenguaje gráfico, el más utilizado, desarrollado para electricistas. Utiliza los símbolos tales
que: contactos, relés y bloques funcionales y se organiza en redes (etiquetas). Este lenguaje es una
representación gráfica de ecuaciones booleanas combinando contactos (de entrada) y
rele (en salida). Permite la manipulación de datos booleanos, mediante símbolos
gráficos organizados en un diagrama como los elementos de un esquema eléctrico a
contactos.
Se presentan componentes gráficos elementales de un diagrama de contactos en la Tabla
3.7.
Tableau 2.7 – Instrucción del lenguaje Lista
Variable de entrada o contacto de cierre
┤├ (I0.2 entradas automático, M1.2 bit
memoria interna, etc.)
┤∕├ Variable de entrada complementada o
contacto a la apertura
-( )- Variable de sortie (Q0.2 sorties
automatizar, M1.3 bit memoria interna,
etc.)
-(S)- Salida ajustada a 1 memorizada (S = establecer)
-(R)- Salida de reinicio memorizada (R = reinicio)
┤P├ Un frente montante
[Link] Los principios de los esquemas de relés
Un esquema de relé tiene una línea y conexiones. La línea de la izquierda es la línea de
bus y las líneas de ramificación son las líneas de instrucciones o líneas secundarias. Dos
Enseñante: Ridha MAHJOUB 14
Capítulo 2 Métodos de programación de API
Las líneas de instrucciones están relacionadas por al menos una condición. La ejecución de un esquema se lleva a cabo
siempre de izquierda a derecha.
Las condiciones (contactos) están representadas por dos líneas verticales o por dos líneas.
verticales atravesadas por una diagonal. En el primer caso, la condición está inicialmente abierta.
ella es transcrita por una mnemotécnica como (LD, AND, OR); en el segundo caso es una
condición inicialmente cerrada (cerrada en reposo) se transcribe mediante una mnemotécnica del tipo
(LDNO, ODN, ANDNO).
La línea de salida vertical colocada en el extremo izquierdo de la red es el punto de partida de esto
último.
Las líneas verticales paralelas a esta son líneas que representan subtareas por
relación a la línea principal.
Las condiciones están representadas por dos líneas verticales.
La terminología fundamental: en un esquema de relé, a cada condición se le asigna un bit.
el bit está en (uno) cuando la condición es verdadera, la condición está entonces en posición ON. Una condición
Inicialmente cerrada está inicialmente en posición OFF, pasará a posición ON con un estado
complementario al de una condición inicialmente abierta.
Las condiciones de ejecución: en un esquema a relés, la ejecución de una instrucción se realiza en
a partir del momento en que la combinación de las condiciones que la preceden es verdadera.
‐Los bits de operación: bit de entrada/salida; bandera (bit de estado); bit de trabajo; temporizador o
contador.
- Bloques lógicos y bloques de instrucción: el bloque lógico es un grupo de instrucciones que genera un
resultado lógico. La descomposición de un programa en varios bloques lógicos simplifica la
sintetización y prueba de aplicaciones. Un bloque de instrucciones incluye todas las instrucciones
relacionadas entre sí en un mismo esquema.
2.9.5 Programación utilizando GRAFCET (SFC: Diagrama de Función Secuencial)
El GRAFCET, lenguaje de especificación, es utilizado por algunos fabricantes de autómatas.
(Schneider, Siemens) para la programación. A veces asociado a un lenguaje de programación,
permite una programación fácil de los sistemas secuenciales mientras facilita el ajuste
programas así como la solución de problemas de sistemas (ver Figura 2.9).
También se puede traducir un Grafcet a lenguaje de contactos e implementarlo en cualquier tipo
de un autómata.
Figura 2.9 – Tramo de un Grafcet generalizado
Enseignant : Ridha MAHJOUB 15
Capítulo 2 Métodos de programación de API
2.10 Método de traducción de las ecuaciones de transferencia en lenguaje LADDER
Este método de programación de autómatas programables industriales se basa
esencialmente sobre las ecuaciones de transferencias determinadas a partir de un Grafcet de
funcionamiento. Para establecer las ideas, se presenta una sección de un Grafcet generalizado (ver
Figura 2.10) a partir del cual se determinan las ecuaciones de transferencia de las etapas Xyoet Xi+1.
Figura 2.10 – Tramo de un Grafcet generalizado
Las ecuaciones de transferencia del Grafcet de funcionamiento se traducirán en redes de etapas y
acciones.
- ∗ ∗
- ∗ ∗
La traducción de sus ecuaciones mediante el método de ecuaciones de transferencia da el resultado de
la Figura 2.11.
Figura 2.11 – Método de traducción de las ecuaciones de transferencia
2.11 Método del secuenciador electrónico
Enseignant : Ridha MAHJOUB 16
Capítulo 2 Métodos de programación de API
Este método se basa esencialmente en la explotación de las funciones establecidas en 1 memorizadas y
remise a 0 memorizada (Configurar/Reiniciar) y sus funciones de mantenimiento que son:
- Conjunto: La función de puesta a 1 lógica (Set to One);
- Reiniciar : La función de reinicio a 0 (Reset to Zero).
Para la aplicación de este método, las etapas de la Figura 2.10 se traducirán por las redes
de la Figura 2.12.
Figura 2.12 – Método del secuenciador electrónico
2.12 Criterios de elección de un autómata
La elección de un autómata programable es, ante todo, la elección de una empresa o de un grupo
y los contactos comerciales y las experiencias vividas ya son un punto de partida.
Les grandes sociétés privilégieront deux fabricants pour faire jouer la concurrence et pouvoir
regresar en caso de pérdida de velocidad de una de ellas.
Le personnel de maintenance doit toutefois être formé sur ce matériel et une trop grande
la diversidad de material puede tener graves repercusiones. Un autómata programable utilizando
los lenguajes de programación del tipo Grafcet también son preferibles para asegurar las actualizaciones
al punto y las reparaciones en las mejores condiciones.
La posesión de un software de programación también es fuente de ahorros. Herramientas
permitiendo una simulación de los programas también son deseables.
Luego, es necesario cuantificar las necesidades:
Nombre de entradas/salidas: el número de módulos puede tener un impacto en el número de
estantes tan pronto como el número de entradas/salidas necesarias se vuelve elevado.
Tipo de procesador: el tamaño de la memoria, la velocidad de procesamiento y las funciones especiales
las ofertas del procesador permitirán la elección en la gama a menudo muy amplia.
Funciones o módulos especiales: algunas tarjetas (control de eje, pesaje, etc.) permitirán
de aliviar el procesador y deberán ofrecer las características deseadas (resolución, etc.).
Funciones de comunicación: el autómata programable debe poder comunicarse con los
otros sistemas de control (API, OP, PC, etc.) y ofrecer posibilidades de comunicación
con estándares normalizados (Profibus, Profinet, Modbus, etc.).
2.13 Señalizaciones en un autómata programable
Consideramos la CPU de un autómata programable Simatic S7-1200 como un ejemplo.
concreto de una API reciente. La CPU de esta API proporciona los indicadores de estado siguientes:
Enseñante: Ridha MAHJOUB 17
Capítulo 2 Métodos de programación de API
DETENER/CORRER
- El amarillo continuo indica el estado PARADA ;
- Verde continuo indica el estado DE FUNCIONAMIENTO ;
- Verde y amarillo intermitente alternando indica que la CPU está en estado DE ACTIVACIÓN
RUTA.
ERROR
- La luz roja intermitente indica un error, como un error interno en la CPU, un
error con la tarjeta de memoria o un error de configuración (módulos no
concordancias);
- Rouge continu signale un matériel défectueux ;
- Todos los LED parpadean si se detecta una falla en el firmware.
La LED MAINT (Mantenimiento) parpadea tan pronto como insertas una tarjeta de memoria. La
La CPU pasa entonces al estado DETENIDO. Una vez que la CPU ha pasado al estado DETENIDO,
ejecutar una de las siguientes acciones para activar la evaluación de la tarjeta de memoria:
Hacer que la CPU pase al estado ON;
- Realizar un borrado general (MRES);
- Apagar la CPU y luego encenderla.
La CPU también proporciona dos LEDs que indican el estado de la comunicación. Abra la caché
el límite inferior para verlos:
Link (vert) s'allume pour signaler qu'une connexion a été établie avec succès.
Rx/Tx (amarillo) se enciende para señalar que hay una actividad de transmisión en curso.
La CPU y cada módulo de entradas/salidas TOR proporcionan un LED de canal I/O para
cada una de las entradas y salidas. El canal de LED I/O (verde) se enciende o se apaga para indicar
el estado de la entrada o de la salida correspondiente (Ver Tabla 2.8).
Tabla 2.8 – Indicadores de estado de la CPU de una API Simatic S7-1200
DETENER/CORRERERROR MANT
Description Amarillo/Verde Rojo Amarillo
Fuera de tensión Apagado Apagado Apagado
Démarrage, auto-prueba o Intermitente Apagado
actualización del firmware Amarillo verde en alternancia -
Estado DETENIDO Allumé (amarillo) - -
Estado MERCADO Allumé (verde) - -
Retirar la tarjeta de memoria Allumé (amarillo) - Intermitente
Error Allumé Intermitente -
Ya sea amarillo o verde
Mantenimiento requerido
- E/S forzadas Allumé
- Reemplazar la pila (si elYa sea amarillo o verde - Allumé
La placa de batería está instalada)
Material defectuoso Allumé (amarillo) Allumé Apagado
Prueba de LEDs o firmware Intermitente
CPU defectuoso (amarillo verde en alternancia) Intermitente Intermitente
Enseñante: Ridha MAHJOUB 18
Capítulo 2 Métodos de programación de API
Versión de configuración de
la CPU desconocida o Allumé (amarillo) Intermitente Intermitente
incompatible
2.14 Seguridad de los sistemas automatizados
Los sistemas automatizados son, por naturaleza, fuente de muchos peligros (tensiones utilizadas,
déplacements mecánicos, chorros de materia bajo presión, etc.).
La falla de un autómata programable puede tener graves repercusiones en materia
de seguridad, las normas prohíben la gestión de las detenciones de emergencia por el autómata programable;
esta debe realizarse en tecnología cableada.
Situado en el corazón del sistema automatizado, el autómata debe ser un elemento fiable porque:
Un mal funcionamiento de este podría tener graves repercusiones en la seguridad de
personas.
Los costos de reparación del herramienta de producción son generalmente muy altos.
Una parada en la producción puede tener graves consecuencias en el plano financiero.
Además, el autómata programable está sujeto a numerosas disposiciones para garantizar la seguridad:
Restricciones exteriores: el autómata programable está diseñado para soportar las diferentes
las limitaciones del mundo industrial y ha sido objeto de numerosas pruebas normalizadas (resistencia a
vibraciones, CEM, etc.).
Cortes de suministro: el autómata programable está diseñado para soportar los cortes.
de alimentación y permite, por programa, asegurar un funcionamiento correcto durante la
réalimentation (reprises a frío o a caliente).
Modo RUN/STOP: solo un técnico puede poner en marcha o detener un autómata.
programable y la reactivación se realiza mediante un procedimiento de inicialización (programado).
Controles cíclicos :
Procedimientos de autocontr control de las memorias, del reloj, de la batería, de la tensión
de alimentación y de entradas/salidas.
Verificación del tiempo de sondeo en cada ciclo llamado Watch-Dog (perro guardián)
y la activación de un procedimiento de alarma en caso de superación de este (regulado por
el usuario).
Visualización: los autómatas ofrecen una pantalla de visualización donde se puede ver la evolución
de entradas/salidas.
Enseñante: Ridha MAHJOUB 19
Chapitre 3
Gestión de modos de
funcionamiento de un S.A.P
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P
Gestión de los modos de funcionamiento de un S.A.P
3.1 Función de una parte de mando
De manera general, es posible realizar una partición de la Parte Comando en tres.
funciones principales (presentes regularmente en las PC) y funciones complementarias
relacionadas con la complejidad del sistema.
Función de comando: es la función esencial, aquella para la cual se construye la
Parte de Pedido. Consiste en elaborar las órdenes de pedido de los preactuadores para
obtener el comportamiento deseado de la Parte Operativa, a partir de la información obtenida de esta
PO y las instrucciones del operador. Esta función de Comando integra los modos de
producción normal, pero también los modos de marcha, fallos, etc.
Función de conducción: bajo esta función se agrupan tres niveles de necesidades para la
conducción del sistema automatizado.
- Una necesidad de flexibilidad;
Un necesidad de complejidad ;
- Una necesidad de coordinación o sincronización de los SPO.
Función de supervisión: esta función está relacionada con la posible aparición de defectos o de
fallo tanto en la Parte Operativa como en la Parte de Control, así como en sus alimentaciones
y interfaces. Corresponde a las funciones de alarma y seguridad.
- La función de alarma implica la observación de las magnitudes significativas del sistema, luego un
tratamiento para llegar a medios de visualización que faciliten la comunicación
con el operador.
- La función de seguridad consiste en emitir instrucciones o comandos hacia
accionadores específicos, o hacia otros niveles de control.
Función de optimización: esta función permite la introducción de datos y restricciones.
económicos en la orden. Se trata, a partir de objetivos de producciones y de datos
técnicas, de elaborar el modelo de funcionamiento más adecuado al estado actual del sistema.
Función de gestión: se trata, a partir de los resultados del modelo optimizado, de la información
issues del sistema, elaborar todos los documentos técnicos, administrativos, contables
y financieros, etc. necesarios para la buena integración del sistema en el funcionamiento global
de la empresa.
Función de comunicación: esta función permite tener en cuenta la intervención de
el hombre en la conducción del sistema automatizado pero también en el conjunto de las funciones de
comando, de supervisión, de gestión y de optimización.
3.2 Estructura de una parte de pedido
Le Grafcet permet de modéliser des commandes dont toutes les entrées sont des variables d'états
de tipo binario (0 o 1). Si toda la parte de comando de una aplicación no es modelable
a través de un Grafcet, es importante formalizar los límites y la comunicación con los otros modelos
de la commande.
Enseñante : Ridha MAHJOUB 2
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P
3.2.1 La PC hace uso de funciones Grafcet
La estructura y los diferentes módulos están descritos en un o varios lenguajes, otros
los módulos están en Grafcet. El Grafcet de nivel módulo es llamado por la estructura de control
par échanges des Entrées/Sorties booléennes (voir Figure 3.1).
Figura 3.1 - Estructura de una PC
3.2.2 Un Grafcet estructura la parte de control
La estructura se describe en Grafcet y los diferentes módulos se describen ya sea en Grafcet o en
otro lenguaje. En este caso, la parte principal del comando está modelada por un Grafcet
estructura global que se comunica por intercambio de Entradas/Salidas con otras subpartes
comandos modelados con otros formalismos (ver Figura 3.2).
Figura 3.2 – Modelización de una PC
3.2.3 El Grafcet es adecuado para modelar toda la parte de control
La estructura y los diferentes módulos se describen en Grafcet. En este caso, el conjunto de la
la orden está modelada por un Grafcet global estructurado en Grafcet parciales:
Sea jerárquicamente, por órdenes de forzado y variables de etapas;
Sea sin jerarquía formal, únicamente por intercambio de variables de etapas.
El mando directo de la parte operativa es asegurado por un cierto número de automatismos
locales, formando así una partición del sistema en un cierto número de subsistemas, constituido
cada uno de una subparte operativa y de una Parte de comando local. Esta partición en sub-
el sistema resulta de restricciones:
- De la localización física de las subpartes operativas;
De fraccionamiento de las inversiones;
- Tecnológicos, etc.
Enseignant : Ridha MAHJOUB 3
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P
Para realizar una partición funcional de la parte de comando, es necesario respetar la arquitectura
de la parte operativa, arquitectura funcional en relación con la elaboración del valor añadido.
3.3 Hiérarchisation des fonctions
Las funciones de una Parte de Control pueden ser clasificadas por niveles de intervención de la
PC en la PO.
Las tres funciones principales, mando, conducción, seguridad, pueden ser organizadas, en
nivel de la estructura interna de la PC, en niveles jerarquizados. Este tipo de estructura conduce
generalmente a un Grafcet Global de tres niveles, y por lo tanto compuesto de al menos tres grafcets
parciales (ver Figura 3.3).
Nivel de seguridad: agrupa las condiciones de parada de seguridad así como la vigilancia del
punto delicado del proceso.
Nivel de conducción: gestiona los modos de marcha y parada, fuera de la seguridad.
Nivel de pedido: gestiona el ciclo de producción del sistema en las condiciones de
marchas normales.
Sistema en Modo de seguridad
GFS
Sécur_/OK Sécur_OK Segur_/OK
Conducción del sistema
GFC
sel_manu sel_auto
Producción en Modo
Producción en Modo Manual
Automático
...
GFP_Manu GFP_Auto
Figura 3.3 – Estructura organizativa de un programa de automatización
3.4 Representación del nivel de vigilancia
La función de vigilancia debe garantizar la seguridad de las personas y de los bienes y asegurar la
disponibilidad máxima de la instalación. Los eventos asociados a este nivel son del tipo
aléatoire (défaut, coupure énergie, AU, etc.) et peuvent survenir dans n'importe quel mode de
funcionamiento.
Enseignant : Ridha MAHJOUB 4
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P
El nivel de supervisión es jerárquicamente superior a los otros dos, por lo que emitirá
órdenes de forzamiento hacia los niveles inferiores pero también órdenes directas hacia la PO:
Las seguridades de primera urgencia serán aseguradas por una lógica cableada;
Las seguridades de emergencia inferiores serán tratadas por la lógica programada (API).
En la mayoría de los casos de parada de seguridad, la dificultad principal es el tratamiento de la recuperación.
después de la detención, esto puede llevar al diseñador a implementar grafcet especiales de reanudación
después de una interrupción. La norma EN 1131-1 define tres tipos de reanudación.
3.4.1 Reprise a frío
Reanudación de la configuración de la API y de su programa de aplicación después de que todas las
datos dinámicos (variables como imagen E/S, memorias internas, temporizadores,
los contadores, etc. y los contextos del programa hayan sido llevados a un estado predeterminado. Un
la reanudación en frío puede ser automática (por ejemplo, después de un corte de energía, una pérdida
de información en la o las partes dinámicas de la o las memorias, etc.) o manual (por
ejemplo de botón de reinicio, etc.).
3.4.2 Reprise inmediata
Reanudación después de un corte de energía que ocurra durante el tiempo máximo permitido
función del proceso asignado a la configuración de una API para restablecer su funcionamiento
como si no hubiera habido un corte de electricidad. Toda la información de E/S y toda
los otros datos dinámicos así como el contexto del programa de aplicación son restaurados
ou demeuran invariables. La capacidad para la recuperación inmediata requiere un reloj de tiempo real o
un temporizador alimentado por separado para determinar el tiempo transcurrido desde la detección de
la interrupción de la alimentación y un medio accesible para el usuario para programar la duración
máximo asignado en función del proceso.
3.4.3 Reprise a caliente
Reanudación después de un corte de energía, con un conjunto de datos dinámicos
predeterminado y programado por el usuario y un contexto de programa de aplicación
predeterminado por el sistema. Una reanudación en caliente se caracteriza por una señalización de estado o
cualquier otro medio relacionado puesto a disposición del programa de aplicación que indique que
Se ha detectado la interrupción del suministro de energía de la configuración de la API en modo RUN.
La seguridad es un componente de la seguridad de un sistema automatizado. La obtención de un nivel de
alta disponibilidad puede ser incompatible con la seguridad, por eso la seguridad debe ser
analizada globalmente para llegar al mejor compromiso. La seguridad debe ser considerada bajo
el doble aspecto del análisis de riesgos (gravedad y probabilidad de aparición) y de la
reglamento vigente.
3.4.4 Acciones de seguridad
Tras la detección de una falla, la PC puede estar encargada de acciones de seguridad de diferentes
types :
Alarma y señalización: control de luces indicadoras, balizas, sirena, edición de mensajes
ou/et d'historique de défaits ;
- Comando directo de actuadores: generalmente prohibiciones absolutas y directas de
movimientos (ecuación de salidas);
Enseignant : Ridha MAHJOUB 5
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P.
- Evolución del sistema: la PC provoca cambios de estado del sistema hacia una parada,
una escalera degradada o una escalera de seguridad.
La representación del nivel de supervisión incluirá como mínimo un Grafcet de seguridad
(GFS) más a menudo asociado a uno o varios Grafcet de supervisión (GFSUR).
3.5 Tratamiento de una parada de emergencia
Se pueden proponer dos soluciones:
- Sin secuencia de emergencia: el sistema detiene su evolución;
- Con secuencia de emergencia: la aparición de una parada de emergencia desencadena un procedimiento
particular
3.5.1 Parada sin secuencia de emergencia
Fijación del automatismo: se supone en este caso que el término «AU» es un factor implícito
en todas las receptividades. Desde la ocurrencia de la parada de emergencia, ninguna receptividad puede
tomar el valor lógico 1: la situación no puede evolucionar. La desaparición de la orden de urgencia
autoriza nuevamente la evolución del ciclo (ver Figura 3.4).
Figura 3.4 - Tratamiento de una parada fija
3.5.2 Detención con secuencia de emergencia
Se sabe que uno de los intereses del Grafcet es indicar en cada situación que los únicos
circunstancias que la hacen evolucionar. La parada de emergencia siempre debe hacer evolucionar la situación de
la parte de comando, deberíamos, en rigor, hacerla aparecer en cada etapa del Grafcet.
Tan pronto como el caso tratado se vuelve un poco importante, el Grafcet se vuelve completamente ilegible. Él en
se deduce que es difícil considerar la parada de emergencia como una información de entrada
como los demás. Además, es contrario al mismo espíritu de urgencia que otorga a esta decisión.
una especie de «súper prioridad». Sin embargo, es interesante (pero no siempre es posible) de
poder formalizar el comportamiento esperado de un sistema ante la aparición de la información
«AU» (ver Figura 3.5).
Enseñante: Ridha MAHJOUB 6
Capítulo 3 Gestión de los modos de funcionamiento de un S.A.P
Figura 3.5 - Tratamiento de parada de emergencia secuencial
3.6 Grafcet de producción normal
Grafcet que describe el funcionamiento normal de producción del sistema. Puede hacer referencia a algunos
Grafcets de tâches ou de procédures. Le dialogue entre les Grafcets est réalisé par les variables
Xi (ver Figura 3.6).
Describirá el ciclo de la Parte Operativa (uno o varios Grafcets) para producir el valor
agregada. En el caso de que un rectángulo estado llame a un procedimiento complejo, este se llevará a cabo
par un Grafcet de procédure.
Figura 3.6 -Ejemplo de Grafcets de producción
3.7 Grafcet de conducción
Es el Grafcet el que gestiona todos los modos de marcha y de paradas normales. Puede hacer uso de algunos
Grafcets específicos (inicialización, preparación, cierre...). El diálogo entre los Grafcets es
realizado generalmente por las variables internas de etapas Xi (ver Figura 3.7).
Un estado (no confundir con una etapa) es un modo de funcionamiento (modo de marcha
ou d'arrêt) que peut prendre une machine.
Enseignant : Ridha MAHJOUB 7
Chapitre 3 Gestión de los modos de funcionamiento de un S.A.P
Figura 3.7 - Grafcet de conducción
3.8 Grafcet de sécurité
Es el Grafcet quien gestiona los procedimientos de fallo. Es jerárquicamente superior a todos.
los otros grafcets. Esta jerarquía se realiza a través de órdenes de Forzamiento (ver Figura 3.8).
Un estado (no confundir con una etapa) es un modo de funcionamiento (modo de marcha
o de parada) que puede tomar una máquina. Para diseñar máquinas robustas y fiables,
es necesario censar los estados de funcionamiento de esta máquina.
Figura 3.8 - Grafcet de seguridad
Enseñante: Ridha MAHJOUB 8
Capítulo 4
Tratamiento de las magnitudes
analógicos por una API
Capítulo 4 Tratamiento de las magnitudes analógicas por una API
Tratamiento de magnitudes analógicas por una API
4.1 Introducción
Todas las magnitudes físicas (tensión, temperatura, presión, posicionamiento, velocidad,
etc.) son grandes magnitudes analógicas. Para poder tratar estas magnitudes en una API, se
es necesario hacer:
Convertir la grandeza física en una grandeza analógica eléctrica;
Convertir la grandeur analogique électrique en une grandeur numérique.
El objetivo del tratamiento de las magnitudes analógicas por una API es, a partir de los principios básicos
de la técnica analógica, de las características de los módulos de entradas y salidas analógicas.
4.2 Las señales analógicas y binarias
Las señales binarias solo pueden tener dos estados lógicos: el estado lógico 1 (tensión
présente) et l'état logique 0 (aucune tension n’est présente). Dans la technique d'automatisation,
señales no solo binarias sino también analógicas a menudo deben ser leídas, procesadas y
transmis. A diferencia de las señales binarias, las señales analógicas pueden tomar todas
los valores contenidos en un rango definido.
4.3 Las entradas analógicas
A diferencia de las entradas digitales o lógicas, una entrada analógica permite recopilar un
señal eléctrica variable que puede tomar una infinitud de valores que se extienden sobre un rango
definida. El valor de una entrada analógica cambia continuamente en el tiempo en función
de la grandeza física medida por el sensor.
- Las señales de tipo tensión: Las señales de tipo tensión son generadas por ciertos tipos de
sensores analógicos. Los rangos de operación más comunes son de 0 a 5 V/DC y de 0 a 10
V/DC.
- Las señales de tipo corriente: La señal 4 20 mA se ha convertido en la señal de corriente estándar
en la industria, a veces también se pueden encontrar sensores de tipo 0 20 mA.
- Las señales de tipo resistencia: Las señales de tipo resistencia son en la mayoría de los casos
utilizados con los sensores de temperatura como los termopares.
Para realizar la conversión de la magnitud física a la señal eléctrica, basta con realizar
una regla de tres
señaleléctrico max grandezafísica
Señaleléctrico
grandezafísico máximo
Enseignant : Ridha MAHJOUB 2
Capítulo 4 Tratamiento de magnitudes analógicas por una API
Ejemplo N°1: Sensor de temperatura que puede medir temperaturas entre 0 y 500°C.
Señal analógica eléctrica equivalente
Temperatura 0..10 VDC 0..20 mA 4..20 mA
0°C 0 VDC 0 mA 4 mA
250°C 5 VDC 10 mA 12 mA
500°C 10 VDC 20 mA 20 mA
300°C 6 VDC 12 mA 13,6 mA
Ejemplo N°2: Motor trifásico cuya velocidad varía de 0 a 4000 rpm.
Señal analógica eléctrica equivalente
Vitesse 0..10 VDC 0..20 mA 4..20 mA
0 tr/min. 0 VDC 0 mA 4 mA
2000 rpm 5 VDC 10 mA 12 mA
4000 rpm 10 VDC 20 mA 20 mA
2500 rpm 6,25 VDC 12,5 mA 14 mA
4.4 Las salidas analógicas
A diferencia de las entradas analógicas, las salidas analógicas son señales variables.
Estas señales son generadas por el autómata (módulo de salida analógica) actúan sobre unos pre-
actuadores analógicos. Por ejemplo, una salida analógica puede permitir controlar un
variateur de velocidad o una válvula proporcional. Al igual que para las entradas
analógicos, los tipos de señales más frecuentes son las señales de tipo tensión, corriente
y resistencia.
4.5 Direccionamiento de variables analógicas
Los valores analógicos son leídos o escritos por la API como información de palabras. El acceso a
ces mots s'effectue par exemple avec les opérandes :
-%IW 64 : palabra de entrada analógica 64 ;
‐ %QW 64 : palabra de salida analógica 64.
El direccionamiento de los valores de entrada y de salida depende del direccionamiento en la vista de
aparejos. La Figura 4.1 muestra la configuración de hardware de un autómata programable.
Simatic S7-1500 comportant des modules d’entrées/sorties analogiques.
Enseñante: Ridha MAHJOUB 3
Capítulo 4 Tratamiento de las magnitudes analógicas mediante una API
PS CPU DI16 DO16 IA8 AO4
Figura 4.1 - Ejemplo de direccionamiento
Este autómata programable cuenta con ocho (8) entradas analógicas, la dirección de la primera entrada
la analógica sería en este caso %IW64 y la de la octava entrada analógica es %IW78.
Como tiene cuatro (4) salidas analógicas, la dirección de la primera salida analógica
sería en este caso %QW64 y la de la cuarta salida analógica es %QW70.
4.6 Normalización de los valores analógicos
Si un valor de entrada analógica está presente como valor digitalizado en un rango
bipolar 27648 (ver Tabla 4.1 y Figura 4.2), generalmente debe ser normalizada para
que los valores numéricos corresponden a valores físicos del proceso. La salida
la analógica también se realiza mediante la transmisión de un valor normado que debe luego ser
mise à l’échelle à la valeur de la sortie bipolaire 27648 comme est montré au Tableau 4.1.
Tableau 4.1 – Tratamiento de las magnitudes analógicas por una API
Las entradas
Entrada de tensión 27648
∗
10
Entrada corriente 27648
∗
20
Las salidas
Salida de tensión 10
∗
27648
Salida corriente 20
∗
27648
Para adaptar la señal analógica se utiliza la conversión, normalización y escalado.
dos funciones predefinidas por el software Step7.
Figura 4.2 – Rango nominal de valores analógicos/valores digitalizados
Enseignant : Ridha MAHJOUB 4
Capítulo 4 Tratamiento de magnitudes analógicas por una API
El bloque funcional «NORM_X» permite normalizar el valor de la variable de entrada
VALOR al reproducirlo en una escala lineal. Se define, con los parámetros MIN y
MAX, los límites de un rango de valores que se refleja en la escala. El resultado se calcula en
función de la posición del valor a normalizar en este rango y se almacena en forma de
nombre real a punto flotante en la salida OUT (ver Figura 4.3).
Cuando el valor a normalizar es igual al valor de entrada MIN, la salida OUT proporciona la
valor 0.0.
Cuando el valor a normalizar es igual al valor de entrada MAX, la salida OUT proporciona la
valor 1.0.
Figura 4.3 – Bloc funcional NORM_X
La instrucción de normalización utiliza la siguiente ecuación:
(VALOR - MÍN)
FUERA
(MÁX - MÍN)
La salida de validación ENO proporciona el estado lógico 0 cuando una de las siguientes condiciones es
verdadera
La entrada de validación EN proporciona el estado lógico 0;
El valor de la entrada MIN es mayor o igual al valor de la entrada MAX;
El valor de un número de punto flotante indicado se encuentra fuera del rango de los números
normalizados según IEEE-754 ;
- El valor en la entrada VALUE es el resultado de una operación de cálculo no válida (NaN: no un número)
número).
4.7 Escalado del resultado de una conversión
La instrucción de escalado permite escalar el valor resultante de una operación
de conversión reproduciéndola en un rango de valores especificado. Al ejecutar
la instrucción «SCALE_X» predefinida por el software Step7, el número de punto flotante a
la entrada VALUE se escala en el rango de los valores que han sido definidos por los parámetros
MIN y MAX. El resultado de la escalación es un número entero que se almacena en la salida.
FUERA como se muestra en la Figura 4.4.
Profesor: Ridha MAHJOUB 5
Capítulo 4 Tratamiento de las magnitudes analógicas mediante una API
Figura 4.4 – Bloc funcional SCALE_X
El bloque funcional «SCALE_X» utiliza la siguiente ecuación:
FUERA [ VALOR∗(MÁX – MÍN)] + MÍN
La salida de validación ENO proporciona el estado lógico 0 cuando se cumple una de las siguientes condiciones:
verdadera
- La entrada de validación EN proporciona el estado lógico 0;
El valor de la entrada MIN es mayor o igual que el valor de la entrada MAX;
El valor de un número de punto flotante indicado se encuentra fuera del rango de números
normalizados según IEEE-754 ;
- Se produce un desbordamiento;
- El valor de entrada VALUE es el resultado de una operación de cálculo no válida (NaN: no un número)
número).
Aplicación 1: Medición de velocidad
La velocidad de una máquina giratoria debe registrarse en un rango a través de un
transductor de medida que permite el paso del intervalo [500 1500] tr/min a una gama de
tensión de [0 10] V.
Para una velocidad medida de 865 rpm, ¿cuál es el valor de la tensión transmitida por el?
transductor de medida. Deductar el contenido numérico en el registro Reg10.
Solución de la aplicación 1:
La característica de la respuesta del transductor se presenta en la siguiente figura:
Enseignant : Ridha MAHJOUB 6
Capítulo 4 Traitement des grandeurs analogiques par un API
Esta característica se describe mediante la siguiente ecuación:
U K.(N – N0)
A : U = 0V cuando N = 500 rpm y U = 10V cuando N = 1500 rpm, de donde :
10
10
1500 500
-Para: N = 500 rpm 10∗500 500 0 ;
‐ Para : N = 1500 rpm 10∗1500 500 10 .
De dónde entonces: N = 865 rpm 10∗865 500 3.65 .
Esta magnitud analógica será tratada por la entrada analógica de la API para que sea leída.
luego convertida en una información digital (Conversión analógica digital) eso significa
que el valor de la tensión de 3.65V será almacenado como información digital en el
registro de entrada Reg10.
27648 27648
∗U ∗3.65 10091
10 10
Aplicación 2: control de nivel de tanque
El nivel de un líquido en un tanque se convierte en una tensión que va de [0 +10V] por un
sensor al cual está asociado un transductor de medida.
El transductor está conectado a la primera entrada analógica del Simatic S7-1200 en el nivel del
el señal analógica debe ser convertida, normalizada y escalada.
Proposer un programme Step7 qui répond aux conditions suivantes :
-0V corresponde a un nivel de 100 litros y +10V corresponde a un nivel de 1000 litros;
El nivel máximo permitido es 990 litros y el nivel mínimo permitido es 110.
litros.
Solución de la aplicación 2:
Las variables locales necesarias para esta aplicación son:
Direcciones Variables Tipos Commentaires
%IW64 niveau_citerne_EA Enterrador Nivel de la cisterna
%Q0.0 citerne_max Booléen Señalización
nivel > 990 litros
%Q0.1 citerne_min Booleano Señalización
nivel <110 litros
Es especialmente importante que se utilicen los tipos de datos correctos, ya que en
la continuación del programa, deben ser compatibles con las funciones de conversión utilizadas.
Después de haber declarado las variables locales, se escribe el programa en el direccionamiento simbólico de
variables.
Profesor: Ridha MAHJOUB 7
Capítulo 4 Tratamiento de las magnitudes analógicas por una API
Enseignant : Ridha MAHJOUB 8