Jump to content
  • Spanish database on PLC programming techniques and HMI interface design

    PLC, DCS, HMI and SCADA product application technical articles

    leizuofa
    Quizás el concepto más importante y difícil de entender al aprender a programar PLC es la relación entre el estado eléctrico de los puntos de E/S del PLC y el estado de las variables y otros “elementos” en su programación.
    Esto es especialmente cierto para la programación con diagrama de escalera (LD), donde el programa en sí se parece a un diagrama eléctrico.
    Establecer la conexión mental entre el mundo “real” de los interruptores, contactores y otros dispositivos eléctricos conectados al PLC y el mundo “imaginario” del programa del PLC que consiste en contactos virtuales y “bobinas” de relé es lo más fundamental.
    La primera regla fundamental que se debe tener en cuenta al examinar un programa de PLC con diagrama de escalera es que cada contacto virtual que se muestra en el programa se activa siempre que lee un estado “1” en su bit respectivo y estará en reposo siempre que lea un estado “0” en su bit respectivo (en la memoria del PLC).
    Si el contacto es de tipo normalmente abierto (NO), se abrirá cuando su bit sea 0 y se cerrará cuando su bit sea 1. Si el contacto es de tipo normalmente cerrado (NC), se cerrará cuando su bit sea 0 y se abrirá cuando su bit sea 1.
    Un estado de bit 0 hace que el contacto esté en su condición “normal” (en reposo), mientras que un estado de bit 1 activa el contacto, lo que lo obliga a pasar a su estado no normal (activado).
    Otra regla para recordar al examinar un programa PLC de diagrama de escalera es que el software de programación ofrece resaltado de color (Nota 1) para mostrar el estado virtual de cada elemento del programa: un contacto de color está cerrado, mientras que un contacto sin color está abierto.
    Si bien la presencia o ausencia de un símbolo de “barra” marca el estado normal de un contacto, su resaltado de color en vivo que muestra el software de programación de PLC revela el estado “conductivo” de los elementos en tiempo real.
    Nota 1: Se debe tener en cuenta que en algunas situaciones el software de programación no podrá colorear los contactos correctamente, especialmente si su estado cambia demasiado rápido para que el enlace de comunicación del software pueda seguirlo, y/o si los bits cambian de estado varias veces dentro de un escaneo del programa. Sin embargo, para programas y situaciones simples, esta regla es válida y es de gran ayuda para los programadores principiantes a medida que aprenden la relación entre las condiciones del mundo real y las condiciones dentro del mundo "virtual" del PLC.
    Concepciones erróneas sobre la lógica de escalera del PLC
    La siguiente tabla muestra cómo los dos tipos de contactos en un programa de diagrama de escalera del PLC responden a los estados de los bits, utilizando el color rojo para indicar la conductividad virtual de cada contacto:

    Así como los contactos de un interruptor de presión se activan por una condición de alta presión, y los contactos de un interruptor de nivel se activan por una condición de alto nivel, y los contactos de un interruptor de temperatura se activan por una condición de alta temperatura, así también el contacto virtual de un PLC se activa por una condición de bit alta (1). En el contexto de cualquier interruptor, una condición activada es lo opuesto a su condición normal (en reposo).
    La siguiente ilustración simplificada (el cableado eléctrico que se muestra en este diagrama está incompleto, y el terminal “común” se muestra sin conectar para simplificar) muestra un pequeño PLC con dos de sus canales de entrada discretos energizados eléctricamente, lo que hace que esos dos bits tengan estados “1”.
    Los contactos resaltados en color en la pantalla del software del editor de programación muestran una colección de contactos dirigidos a esos bits de entrada en varios estados (coloreado = cerrado; sin color = abierto).
    Como puede ver, cada contacto dirigido a un bit “establecido” (1) está en su estado activado, mientras que cada contacto dirigido a un bit “borrado” (0) está en su estado normal:

    Recuerde que un contacto de color es un contacto cerrado. Los contactos que aparecen coloreados son contactos normalmente cerrados con estados de bit “0” o contactos normalmente abiertos con estados de bit “1”.
    Es la combinación del estado del bit y el tipo de contacto (NO vs. NC) lo que determina si el contacto virtual estará abierto (sin color) o cerrado (con color) en un momento dado.
    Correspondientemente, es una combinación de resaltado en color y tipo de contacto virtual lo que indica el estado de energización del mundo real de una entrada de PLC en particular en un momento dado.
    El principal problema que tienen los estudiantes/ingenieros para comprender los programas de diagramas de escalera de PLC es que simplifican demasiado e intentan asociar directamente los interruptores del mundo real conectados al PLC con sus respectivas instrucciones de contacto dentro del programa de PLC.
    Los estudiantes/ingenieros piensan erróneamente que el interruptor del mundo real que se conecta al PLC y el contacto del interruptor virtual respectivo dentro del programa de PLC son uno y el mismo, cuando este no es el caso en absoluto.
    En cambio, el interruptor del mundo real envía energía a la entrada del PLC, que a su vez controla el estado del contacto o contactos virtuales programados en el PLC.
    Específicamente, veo que los estudiantes/ingenieros caen rutinariamente en los siguientes conceptos erróneos:
    Mistakenly think the contact instruction type (NO vs. NC) needs to match that of its associated real-world switch Mistakenly think color highlighting of a contact instruction is equivalent to the electrical status of its associated real-world PLC input Mistakenly think a closed real-world switch must result in a closed contact instruction in the live PLC program To clarify, here are the fundamental rules one should keep in mind when interpreting contact instructions in Ladder Diagram PLC programs:
    Each input bit in the PLC’s memory will be a “1” when its input channel is powered, and will be a “0” when its input channel is unpowered Each virtual contact shown in the program actuates whenever it reads a “1” state in its respective bit, and will be at rest whenever it reads a “0” state in its respective bit A colored contact is closed (passes virtual power in the PLC program), while an un-colored contact is open (blocks virtual power in the PLC program) In trying to understand PLC Ladder Diagram programs, the importance of these rules cannot be overemphasized.
    The truth of the matter is a causal chain – rather than a direct equivalence – between the real-world switch and the contact instruction status.
    The real-world switch controls whether or not electrical power reaches the PLC input channel, which in turn controls whether the input register bit will be a “1” or a “0”, which in turn controls whether the contact instruction will actuated or at rest.
    Virtual contacts inside the PLC program are thus controlled by their corresponding real-world switches, rather than simply being identical to their real-world counterparts as novices tend to assume.
    Following these rules, we see that normally-open (NO) contact instructions will mimic what their real-world switches are doing, while normally-closed (NC) contact instructions will act opposite of their real-world counterparts.
    The color highlighting of coil instructions in a Ladder Diagram PLC program follows similar rules. A coil will be “on” (colored) when all contact instructions prior to it are closed (colored).
    A colored coil writes a “1” to its respective bit in memory, while an un-colored coil instruction writes a “0” to its respective bit in memory. If these bits are associated with real-world discrete output channels on the PLC, their states will control the real-world energization of devices electrically connected to those channels.
    To further illuminate these fundamental concepts, we will examine the operation of a simple PLC system designed to energize a warning lamp in the event that a process vessel experiences a high fluid pressure.
    The PLC’s task is to energize a warning lamp if the process vessel pressure ever exceeds 270 PSI, and keep that warning lamp energized even if the pressure falls below the trip point of 270 PSI. This way, operators will be alerted to both past and present process vessel over-pressure events.
    120 volt AC “line” power (L1 and L2) provides electrical energy for the PLC to operate, as well as signal potential for the input switches and power for the warning lamp.
    Two switches connect to the input of this PLC: one normally-open pushbutton switch acting as the alarm reset (pressing this switch “unlatches” the alarm lamp) and one normally-open pressure switch acting as the sensing element for high process vessel pressure:

    The reset pushbutton connects to discrete input X1 of the PLC, while the pressure switch connects to discrete input X4. The warning lamp connects to discrete output Y5.
    Red indicator LEDs next to each I/O terminal visually indicate the electrical status of the I/O points, while red-shaded highlighting shows the virtual power (Note 2 ) status of the “contacts” and “coils” in the PLC’s program, displayed on the screen of a personal computer connected to the PLC through a programming cable.
    With no one pressing the reset pushbutton, that switch will be in its normal status, which for a “normally-open” switch is open.
    Likewise with the pressure switch: with process pressure less than the trip point of 270 PSI, the pressure switch will also be in its normal status, which for a “normally-open” switch is open.
    Since neither switch is conducting electricity right now, neither discrete input X1 nor X4 will be energized. This means the “virtual” contacts inside the PLC program will likewise be in their own normal states.
    Thus, any virtual contact drawn as a normally-open will be open (not passing virtual power), and any virtual contact drawn as a normally-closed (a diagonal slash mark through the contact symbol) will be closed.
    This is why the two normally-open virtual contacts X4 and Y5 have no highlighting, but the normally-closed virtual contact X1 does – the colored highlighting representing the ability to pass virtual power.
    Note 2 : For a PLC program contact, the shading represents virtual “conductivity.” For a PLC program coil, the shading represents a set (1) bit.
    If the process vessel experiences a high pressure (> 270 PSI), the pressure switch will actuate, closing its normally-open contact. This will energize input X4 on the PLC, which will “close” the virtual contact X4 in the ladder program.
    This sends virtual power to the virtual “coil” Y5, which in turn latches itself on through virtual contact Y5 (Note 3 ) and also energizes the real discrete output Y5 to energize the warning lamp:

    Note 3 : It is worth noting the legitimacy of referencing virtual contacts to output bits (e.g. contact Y5), and not just to input bits.
    A “virtual contact” inside a PLC program is nothing more than an instruction to the PLC’s processor to read the status of a bit in memory. It matters not whether that bit is associated with a physical input channel, a physical output channel, or some abstract bit in the PLC’s memory.
    It would, however, be wrong to associate a virtual coil with an input bit, as coil instructions write bit values to memory, and input bits are supposed to be controlled solely by the energization states of their physical input channels.
    If now the process pressure falls below 270 PSI, the pressure switch will return to its normal state (open), thus de-energizing discrete input X4 on the PLC.
    Because of the latching contact Y5 in the PLC’s program, however, output Y5 remains on to keep the warning lamp in its energized state:

    Thus, the Y5 contact performs a seal-in function to keep the Y5 bit set (1) even after the high pressure condition clears.
    This is precisely the same concept as the “seal-in” auxiliary contact on a hard-wired motor starter circuit, where the electro-mechanical contactor keeps itself energized after the “Start” pushbutton switch has been released.
    The only way for a human operator to re-set the warning lamp is to press the pushbutton.
    This will have the effect of energizing input X1 on the PLC, thus opening virtual contact X1 (normally closed) in the program, thus interrupting virtual power to the virtual coil Y5, thus powering down the warning lamp and un-latching virtual power in the program:


    leizuofa
    Aunque parece que cada modelo de PLC tiene su propio estándar idiosincrásico para la programación, existe un estándar internacional para la programación de controladores al que la mayoría de los fabricantes de PLC al menos intentan ajustarse. Se trata del estándar IEC 61131-3, que será el estándar
    Uno debería consolarse con el hecho de que, a pesar de las diferencias en los detalles de la programación de PLC de un fabricante a otro y de un modelo a otro, los principios básicos son en gran medida los mismos.
    Existen disparidades mucho mayores entre los diferentes lenguajes de programación de propósito general (por ejemplo, C/C++, BASIC, FORTRAN, Pascal, Java, Ada, etc.) que entre los lenguajes de programación compatibles con los diferentes PLC, y este hecho no impide que los programadores informáticos sean "multilingües".
    He escrito y/o analizado personalmente programas para más de media docena de fabricantes diferentes de PLC (Allen-Bradley, Siemens, Square D, Koyo, Fanuc, Moore Products APACS y QUADLOG, y Modicon), con múltiples modelos de PLC dentro de la mayoría de esas marcas, y puedo decirles que las diferencias en las convenciones de programación son en gran medida insignificantes.
    Después de aprender a programar un modelo de PLC, es bastante fácil adaptarse a la programación de otras marcas y modelos de PLC.
    Lenguajes de programación de PLC
    La norma IEC 61131-3 especifica cinco formas distintas de lenguaje de programación para controladores industriales:
    Diagrama de escalera (LD) Texto estructurado (ST) Lista de instrucciones (IL) Diagrama de bloques de funciones (FBD) Diagrama de funciones secuenciales (SFC) No todos los controladores lógicos programables admiten los cinco tipos de lenguaje, pero casi todos admiten el diagrama de escalera (LD), que será el foco principal de este libro.
    Los lenguajes de programación para muchos dispositivos industriales están limitados por diseño.
    Una razón para esto es la simplicidad: cualquier lenguaje de programación lo suficientemente simple en estructura para que alguien sin conocimientos formales de programación informática pueda entenderlo va a tener capacidades limitadas.
    Otra razón para las limitaciones de la programación es la seguridad: cuanto más flexible e ilimitado sea un lenguaje de programación, más potencial habrá de crear involuntariamente errores complicados de "tiempo de ejecución" al programar.
    La norma de seguridad ISA número 84 clasifica los lenguajes de programación industrial como lenguajes de programación fijos (FPL), lenguajes de variabilidad limitada (LVL) o lenguajes de variabilidad completa (FVL).
    La programación de diagramas de escalera y de diagramas de bloques de funciones se consideran lenguajes de "variabilidad limitada", mientras que la lista de instrucciones (y los lenguajes de programación informática tradicionales como C/C++, FORTRAN, BASIC, etc.) se consideran lenguajes de "variabilidad completa" con todo el potencial que conlleva para errores complejos.

    leigehong
    Cuando diseña una lógica de PLC, debe tener cuidado con los nombres que proporciona a las etiquetas. Debe ser fácil de entender e interpretar para cualquier programador. No debe ser ni demasiado largo ni demasiado corto.
    La convención de nombres es importante porque el etiquetado incorrecto puede causar problemas de resolución de problemas para los programadores. Además, dar nombres largos consumirá la memoria del PLC. Por lo tanto, cada programador debe seguir las convenciones de nombres adecuadas antes de escribir un programa de PLC. En esta publicación, veremos el concepto de convenciones de nombres de etiquetas de PLC.
    Convenciones de nombres de etiquetas de PLC

    En primer lugar, comprendamos cómo la convención de nombres de etiquetas juega un papel importante en la programación de PLC. Tiene un motor con su comando de ejecución y retroalimentación de ejecución como E/S de PLC.
    El motor está ubicado en la sala de sopladores y se usa como compresor de aire. El nombre de la etiqueta del motor en el P&ID es M-101. Ahora bien, para un programador de PLC, identificar la ubicación de una etiqueta es importante. Por lo tanto, existen dos tipos de mentalidades que normalmente definen a un programador de PLC.
    El primero intentará dar la mayor cantidad de información posible en un nombre de etiqueta; por lo tanto, puede nombrar el comando de funcionamiento del motor como M101_Compressor_Run_Command. El segundo intentará darle el nombre como Q_M101_Comp.
    La segunda mentalidad parece muy clara, ya que está dando nombres cortos y manteniendo la longitud lo más mínima posible. Esta es la razón por la que nombrar una etiqueta de PLC es importante, ya que libera al programador de leer etiquetas tan largas en situaciones en las que se ha presentado una solución de problemas urgente. (Cabe señalar que la denominación de etiquetas de PLC no acepta ningún carácter especial aparte del guión bajo (_)).
    Un nombre de etiqueta de PLC debe contener información que pueda ayudar al programador a relacionarse con su significado. Esto generalmente implica la siguiente información:
    tipo de datos (p. ej., booleano, entero), flujo de datos (p. ej., entrada, salida), alcance (p. ej., local, global), tipo de instrumento o dispositivo (p. ej., motor, válvula, sensor), parámetro de proceso (p. ej., presión, flujo, temperatura) y ubicación del dispositivo. Estilos de nombres de etiquetas
    Existen varios estilos según los estándares IEC que se deben seguir para una denominación adecuada.
    Veamos algunos de los más utilizados:
    Estilo Camel, Estilo Pascal, Estilo Snake, Estilo de prefijo con tipo de datos Estilo Camel
    En este estilo, no hay guiones bajos entre ellos. Se le da un nombre completo a la palabra entera, pero cada palabra comienza con una letra mayúscula. Por ejemplo, tomemos el ejemplo mencionado anteriormente.
    M101_Compressor_Run_Command se escribirá como m101CompressorRunCommand. Puede identificar cada palabra con una letra mayúscula.
    La primera letra será una letra minúscula obligatoria. Este estilo se ve bien si la palabra es pequeña. Evita el uso de guiones bajos y esto hace que el consumo de memoria sea menor.
    Estilo Pascal
    Es similar al estilo camel; la única diferencia es que la primera letra será una letra mayúscula obligatoria.
    Por ejemplo, nuestra etiqueta se escribirá como M101CompressorRunCommand.
    Estilo Snake
    El ejemplo que discutimos antes es el estilo Snake. Aquí, cada palabra estará separada por un guión bajo.
    Estilo de prefijo con tipo de datos
    Aquí, la etiqueta tendrá como prefijo el tipo de datos del nombre de la etiqueta. En nuestro caso, el tipo de etiqueta era booleano. Según los estándares IEC, una etiqueta booleana generalmente tiene un prefijo de 'x'.
    Entonces, nuestro estilo se escribirá como xM101CompressorRunCommand. Esto ayuda al programador a identificar qué tipo de datos se utilizan para esa etiqueta en particular.
    Consejos para nombrar etiquetas en la programación de PLC
    La primera y más importante regla es que la longitud de una etiqueta debe ser corta, pero no tan corta que nadie pueda entenderla. Como se mencionó, la longitud debe contener la información adecuada en una longitud adecuada. Se deben evitar estrictamente los nombres largos.
    Siga los estilos generales de nombres de etiquetas que se analizaron. Estos se ajustan a las normas IEC y hacen que la lógica se vea ordenada y clara.
    Para reducir los errores durante la creación de etiquetas, utilice archivos de Excel. Excel reduce la carga de trabajo de una manera muy amplia, ya que la duplicación y la copia se vuelven muy fáciles. Casi no se producen errores en los archivos de Excel.
    No siempre es necesario utilizar un nombre completo para una palabra. Por ejemplo, la válvula se puede escribir como vlv y la temperatura se puede escribir como temp.
    Evite escribir la etiqueta en mayúsculas. Parece complicado e inadecuado de leer.

    leizuofa
    Para cualquier conversión de unidades en cualquier PLC, puede utilizar cuatro funciones matemáticas con lo siguiente para la Fórmula de conversión de entrada analógica de PLC, que supone matemáticas de números enteros, de la siguiente manera:
    Fórmula de conversión de PLC

    Fórmulas:
    EU = ((EUSpan x (DATA – DataOffset))/DataSpan) + EUOffset
    ProcessValue = EU / FACTOR
    DataOffset = Datos en el registro de entrada a 4 mA (o señal analógica cero de cualquier rango, por ejemplo, 0 VCC en un transmisor de 0-10 VCC)
    DataSPan = Datos a 20 mA – Datos a 4 mA
    FACTOR = factor arbitrario (múltiplo de 10) necesario para obtener la resolución y precisión adecuadas
    EU = Unidades de ingeniería x FACTOR
    EUOffset = Unidades de ingeniería a 4 mA x FACTOR
    EUSpan = (Unidades de ingeniería a 20 mA – Unidades de ingeniería a 4 mA) x FACTOR
    DATOS = Lectura de datos reales en el registro de entrada
    Por ejemplo,
    Un transmisor de presión de rango de 0 a 60 psig está conectado a una tarjeta de entrada analógica de PLC. El conteo sin procesar de la tarjeta de entrada analógica de PLC comienza en 6240 para 4 mA y 31208 para 20 mA. El PLC lee 18975 conteos sin procesar y calcula la lectura equivalente del transmisor de presión.
    Nota: Los conteos sin procesar del PLC pueden variar de un sistema a otro.
    0-60 psig de 4-20 mA con una resolución de 0,1 psig:
    FACTOR = 10
    Datos a 4 mA = 6240
    Datos a 20 mA = 31208
    DataOffset = 6240
    DataSpan = 31208 – 6240 = 24968
    EUOffset = 0 x 10 = 0
    EUSpan = (60 – 0) x 10 = 600
    DATA = 18975
    EU = ((EUSpan x (DATA – DataOffset))/DataSpan) + EUOffset
    EU = ((600 x (18975 – 6240)) / 24968) + 0 = 306
    ProcessValue = EU / FACTOR
    Process Value = 306 / 10 = 30,6 psig

    leigehong
    La programación de PLC tomó como referencia los dibujos eléctricos. A medida que pasó el tiempo y se hizo difícil solucionar problemas en los sistemas eléctricos que involucraban automatización, se requirió que algún controlador ejecutara una lógica y hiciera lo necesario. Esto dio origen a los sistemas PLC.
    Como sabes, la programación de PLC tiene muchos tipos de lenguajes y el original es el lenguaje de escalera. Debes saber que los diagramas eléctricos también ayudan a convertirlo en lógica de escalera. En esta publicación, veremos cómo convertir un diagrama eléctrico en un programa de PLC.
    Entender el diagrama eléctrico
    En primer lugar, debes entender el diagrama eléctrico. Consulta la siguiente imagen. Cada circuito tiene dos extremos: positivo y negativo. La corriente comienza desde el extremo positivo y fluye a través del extremo negativo.
    En el medio, vienen los componentes y dispositivos eléctricos. Si consulta la siguiente imagen, hay cuatro componentes: el botón de inicio, el botón de parada, el contacto auxiliar de la lámpara y la lámpara.

    La fuente de alimentación comienza desde el extremo positivo y va a la entrada del pulsador de arranque (contacto NA). La salida del pulsador de arranque va a la entrada del pulsador de parada (contacto NC). La salida del pulsador de parada va a la entrada de la lámpara.
    La salida de la lámpara está conectada a la fuente de alimentación del extremo negativo. En paralelo al pulsador de arranque, otro cable baja desde la entrada del botón hasta un contacto auxiliar de la lámpara. La salida de este contacto se conecta de nuevo a la salida del pulsador.
    Cuando se suministra la fuente de alimentación y se presiona el botón de arranque, la lámpara se encenderá ya que obtiene el camino para la corriente. Ahora, si se suelta el botón, la lámpara se apagará ya que no obtiene el camino.
    Entonces, para bloquearlo, colocamos el contacto de la lámpara en paralelo que mantendrá la ruta de la fuente de alimentación. Cuando se presiona el botón de parada, la ruta de suministro eléctrico se corta y la lámpara se apaga.
    Convertir el diagrama de cableado al programa de PLC
    Ahora, una vez que haya entendido el diagrama de cableado, comience a interpretarlo de la misma manera para la programación de PLC. Consulte la imagen a continuación.
    La lógica de escalera tendrá dos extremos de alimentación: izquierdo y derecho. El izquierdo es el equivalente a un extremo de alimentación positivo y el derecho es el equivalente a un extremo de alimentación negativo.
    Necesitará cuatro componentes de programación de PLC: botón pulsador de inicio -> contacto NA, botón pulsador de parada -> contacto NC, lámpara -> bobina de salida y contacto NA de lámpara.

    Primero, coloque el contacto NA del botón pulsador de inicio. En paralelo a él, coloque la lámpara en contacto NA. Después de esto, coloque el contacto NC del botón pulsador de parada. Por último, coloque la lámpara en contacto NA.
    El funcionamiento será el mismo que se explicó para el diagrama de cableado. Viste que el mismo dibujo eléctrico se interpretó y se convirtió en lógica de escalera.
    Los consejos generales a seguir son:
    1. Comprenda el diagrama de cableado desde la alimentación de entrada hasta la alimentación de salida. Mientras tanto, vea qué componentes están colocados, dónde y cómo están cableados.
    2. En el cableado, identifica las partes de entrada y las partes de salida y márcalas con colores diferentes.
    3. Comienza a programar siguiendo el diagrama y colocando los componentes de la misma manera que se hace el cableado.
    4. Ejecuta el programa y observa cómo funciona.

    leigehong
    Necesitamos controlar el nivel de los tanques que están conectados en serie. Implemente el programa para el control de nivel de tanques en serie mediante programación en escalera de PLC.
    Control de nivel de tanques en serie
    Dos tanques están conectados en serie. Necesitamos controlar ambos tanques que están conectados en serie.
    Implemente el programa de PLC para esta aplicación.
    Diagrama del problema

    Solución del problema
    En las empresas químicas, hay muchos materiales que se utilizan para el proceso y también se almacenan en tanques de almacenamiento para diferentes procesos.
    Aquí consideramos dos tanques, 1. Tanque de almacenamiento y 2. Tanque de alimentación.
    El tanque de almacenamiento tiene más capacidad que el tanque de alimentación. El tanque de almacenamiento es para el almacenamiento de material y el tanque de alimentación es para el suministro de material para otro proceso.
    Se utilizan dos interruptores de nivel para la detección de nivel y una válvula de entrada para el control de alimentación de material.
    Considere una válvula de salida manual y puede ser operada según los requisitos del operador.
    Para esta aplicación podemos usar PLC, escribiremos un programa de PLC para esta aplicación.
    Lista de entradas y salidas
    Entradas digitales
    INICIO de ciclo: I0.0 PARADA de ciclo: I0.1 Tanque de almacenamiento de nivel bajo (LL1): I0.3 Tanque de alimentación de nivel bajo (LL2): I0.4 Tanque de almacenamiento de nivel alto (LH1): I0.5 Tanque de alimentación de nivel alto (LH2): I0.6 Salida digital
    Válvula de entrada: Q0.0 Memoria M
    Bit de ENCENDIDO de ciclo: M0.0 Condición de cierre de la válvula de entrada: M0.1 Diagrama de escalera de PLC para control de nivel de tanques en serie


    Descripción del programa
    Para esta aplicación, utilizamos el PLC S7-300 y el software de portal TIA para la programación. También podemos implementar esta lógica utilizando otro PLC.
    Red 1:
    La red 1 es para el circuito de enclavamiento. Siempre que se presione el botón de INICIO (I0.0), el bit de ENCENDIDO del ciclo (M0.0) estará ENCENDIDO. El ciclo se puede DETENER presionando el botón de DETENER (I0.1).
    Red 2:
    Si se detecta un nivel bajo del tanque de almacenamiento (I0.3) o del tanque de alimentación (I0.4), la válvula de entrada (Q0.0) estará ENCENDIDA. (La condición de cierre de la válvula de entrada no debería estar presente).
    Red 3:
    Si se detectan niveles altos (I0.5 e I0.6) de ambos tanques, se activará la condición de cierre de la válvula de entrada y se cerrará la válvula de entrada (Q0.0). Aquí, la válvula de salida es una válvula manual, que puede ser operada por el operador según los requisitos.
    Nota: la aplicación anterior puede ser diferente de la aplicación real. Este ejemplo es solo para fines explicativos. También podemos implementar esta lógica en otros PLC.
    Resultado


    xiangjinjiao
    Explicación del programa PLC para un sistema de monitoreo del nivel de agua de un estanque artificial con el concepto de lógica de escalera para principiantes.
    Sistema de monitoreo del nivel de agua
    Descripción del problema
    Implemente un programa PLC para un sistema de monitoreo del nivel de agua de un estanque artificial.
    Alimente o vacíe el agua del estanque artificial cuando el nivel de agua esté por debajo del nivel normal y active la alarma cuando el nivel de agua esté por encima o por debajo del nivel.
    Diagrama del problema

    Solución del problema
    Este problema se puede resolver mediante una automatización simple.
    Aquí consideramos un estanque artificial, cuatro sensores de nivel y tres bombas para el monitoreo y control del sistema.
    Aquí escribiremos un programa que controlará todo el sistema. El sistema mantendrá el nivel normal y no permitirá que el nivel del agua suba o baje para mantener el nivel normal.
    Si el nivel del agua desciende del nivel normal, el sistema suministrará agua al estanque de peces y si el nivel del agua aumenta del nivel normal, el sistema drenará el agua del estanque de peces.
    Lista de entradas/salidas
    Lista de entradas
    Sensor de nivel, L0: I0.0 (L0=1 cuando el nivel del agua está por encima del nivel de alarma). Sensor de nivel, L1: I0.1 (L1=1 cuando el nivel del agua está por encima del nivel normal) Sensor de nivel, L2: I0.2 (L2=1 cuando el agua está por encima del nivel normal) Sensor de nivel, L3: I0.3 (L3=1 cuando el agua está por encima del nivel de alarma) Lista de salidas
    Bomba de alimentación: Q0.0 Bomba de drenaje 1: Q0.1 Bomba de drenaje 2: Q0.2 Lámpara de alarma: Q0.3 Lógica de escalera de PLC para monitoreo del nivel de agua de estanques artificiales





    Lógica explicada
    En este problema consideraremos Software de programación de PLC S7-300 y portal TIA.
    Red 1:
    En esta red, hemos escrito la lógica para la bomba de drenaje 1 (Q0.1). Cuando el nivel de agua está por encima del nivel más alto del nivel de alarma (L3 = I0.3), en ese momento la bomba de drenaje 1 (Q0.1) estará encendida.
    Red 2:
    Si el nivel de agua está por debajo del nivel de alarma, entonces la bomba de alimentación (Q0.0) debe ponerse en marcha. Por lo tanto, aquí hemos tomado el contacto NC de L1 (I0.1), cuando el nivel está por debajo del nivel normal, entonces la bomba de alimentación (Q0.0) se encenderá y llenará el estanque de peces con agua.
    Red 3:
    Si el nivel de agua está por encima del nivel normal, entonces la bomba de drenaje 2 (Q0.2) estará encendida. Aquí el nivel de agua está por encima del nivel normal, no del nivel de alarma, por lo que solo funcionará la bomba de drenaje 2 (Q0.1).
    Red 4:
    Aquí hemos utilizado dos condiciones en la compuerta OR, de modo que si el nivel está por debajo del nivel normal (L1 = I0.1) o por encima del nivel normal (L1 = I0.1), entonces se activará el circuito intermitente y la lámpara de alarma (Q0.3) se encenderá.
    Red 5:
    Temporizador 2 para el circuito intermitente.
    Red 6:
    Aquí hemos utilizado dos condiciones en la compuerta OR, de modo que si el nivel está por debajo del nivel normal (L1=01) o por encima del nivel normal, entonces la lámpara de alarma (Q0.3) parpadeará automáticamente en intervalos de 5 segundos.
    El nivel está por encima del nivel de alarma (L0=1, L1=1, L2=1, L3=1) o por debajo del nivel de alarma (L0=0, L1=0, L2=0, L3=0). ENTONCES la lámpara de alarma parpadeará automáticamente en intervalos de 5 segundos.
    El nivel está por encima del nivel de alarma (L0=0, L1=0, L2=0, L3=0), entonces las bombas de drenaje 1 y 2 se pondrán en marcha y si el nivel de agua está por encima de lo normal, entonces solo se pondrá en marcha la bomba de drenaje 2.
    Nota: el ejemplo anterior es solo para fines explicativos, no se consideran todos los parámetros o interbloqueos. No es necesario utilizar el PLC S7-300 para esta lógica simple, hemos utilizado este PLC para nuestro propósito de discusión.
    Resultado


    xiangjinjiao
    Comunicación Modbus del PLC Delta (DVP 14SS2) con el VFD Delta (serie VFD-L). El motor se debe poner en funcionamiento directamente desde la HMI (DOP-107CV) mediante comunicación Modbus.
    Comunicación Modbus entre el PLC Delta y el VFD
    El motor de inducción se debe poner en funcionamiento directamente desde la HMI junto con su control de velocidad. El control de velocidad es tal que debe haber dos botones en la HMI que aumenten y disminuyan la velocidad del motor en pasos de un hercio (supuesto). Hay un variador de CA delta de la serie VFD-L que hará funcionar el motor según los comandos recibidos del PLC. En primer lugar, se deben configurar la comunicación y otros parámetros en el variador para que coincidan todas sus configuraciones con el PLC, como la velocidad en baudios, la paridad, el modo de comunicación, etc.; excepto el ID del esclavo (dirección de la estación) que debe ser diferente de la dirección de la estación del PLC. De forma predeterminada, la dirección de la estación del PLC es igual a uno (1). Esto significa que la dirección de la estación del variador debe ser cualquier valor dentro de su rango definido excepto uno (1). Los parámetros detallados que se deben configurar para el modo de comunicación son los siguientes:
    2-00 = 4 2-01 = 4
    Parámetros de comunicación

    Debemos configurar los parámetros de comunicación según la tabla anterior (tomada del manual).
    9-00 = 2 (se puede configurar en cualquier valor excepto 1) 9-01 = 1 9-04 = 7 (modo RTU, bits de parada iguales a 1 y paridad par) El DVP 14SS2 tiene dos puertos de comunicación, a saber, RS232 y RS485 por separado. Ahora, la configuración del puerto de comunicación 2 debe realizarse de acuerdo con los parámetros configurados del VFD, que son los siguientes.
    Abra el software WPL (Software Delta PLC). Haga clic en el ícono del Programa de comunicación en la página de programación.
    Seleccione COM2 y presione siguiente.

    Establezca los parámetros de acuerdo con los parámetros de comunicación del variador VFD y haga clic en Siguiente. Aquí, se ingresan de acuerdo con los parámetros establecidos en la interfaz VFD-L.
    La dirección de la estación del PLC es 1 (ver la esquina inferior izquierda)

    Marque lo resaltado y presione siguiente.

    Se pueden marcar las casillas a continuación y escribir las condiciones.
    Aquí, omitimos esta ventana y, en su lugar, escribiremos la lógica directamente en el modo de diagrama de escalera.
    Haga clic en Finalizar.

    Ahora, la siguiente lógica de escalera se genera como resultado de las condiciones establecidas anteriormente.

    La escalera en el escalón 2 se ejecuta cada vez que se recibe una solicitud enviada. La escalera en el peldaño 3 se ejecuta cada vez que se leen o escriben datos al variador. Ahora, antes de seguir adelante, se escribe la lógica para iniciar y detener el motor y su control de velocidad; necesitamos encontrar las direcciones Modbus del variador a través de las cuales se ejecutará lo mencionado. Para la serie VFD-L, 2000H es la dirección Modbus para iniciar y detener el variador y 2001H es para el cambio de frecuencia. Aquí, H denota hexadecimal. En este tema, estamos aquí para usar el formato decimal para la dirección en particular. Por lo tanto, el formato hexadecimal debe cambiarse a decimal.
    A través del código 8421, convertiríamos de la siguiente manera:
    2000 (Hex) = 8192 (Dec) 2001(Hex) = 8193 (Dec) Entonces, en lugar de 200H y 2001H, se usarán 8192K y 8193K. Asegúrese de que 8192 y 8193 sean solo direcciones Modbus.
    Si 8192K tiene un valor igual a 10, el motor arrancará. Si 8192K tiene un valor igual a 1, el motor se detendrá. Si 8193K tiene un valor igual a 5000, el motor funcionará a 50 Hz, lo que significa que si la velocidad del motor necesita aumentarse en 1 Hz, se deben agregar 100 al valor existente y viceversa. Explicación del programa PLC
    Ahora, pasemos a los detalles del programa PLC. El bit de solicitud de envío M1122 se establece cada vez que se da un comando al VFD en el renglón 5.
    MODRW K2 K6 K8192 D70 K1
    MODRW representa lectura/escritura de Mod K2 representa la dirección de la estación del VFD. K6/K3 representa el código de función, ya sea para escribir o leer. Aquí k6 representa escritura. K8192 representa la dirección Modbus en la que se escriben los datos Los datos en D70 se escriben en k8192 K1 es la longitud de los datos
    10 (dec) y 1 (dec) se mueven a D70 cuando se dan los comandos de inicio y detención en los peldaños 6 y 7. Al mismo tiempo, se lleva a cabo la transmisión de datos, es decir, los datos en D70 se escriben en la dirección 8192k del VFD en el peldaño 8 para iniciar y detener el motor.
    100 (dec) se suma al valor de D100 en el peldaño 10 para aumentar la velocidad en 1 Hz cuando se recibe el pulso de aumento de velocidad (M4). 100 (dec) se resta del valor de D100 en el peldaño 9 para disminuir la velocidad en 1 Hz cuando se recibe el pulso de disminución de velocidad (M5).
    Al mismo tiempo, se lleva a cabo la transmisión de datos, es decir, los datos en D100 se escriben en la dirección 8193k del VFD en el renglón 11 para iniciar y detener el motor.

    HMI
    Ahora, pasando a la configuración de HMI.
    Después de seleccionar el modelo de HMI, configure la siguiente configuración como aquí, la configuración de PLC a HMI es en RS232. (Debe configurarlo según el modelo de HMI)

    Tome cuatro botones momentáneos, asigne las direcciones y diseñe la pantalla de HMI de la siguiente manera:

    Inicio = M0 Detención = M1 Aumento de la velocidad = M4 Disminución de la velocidad = M5 Prueba del proceso El diseño de la HMI no se trata en este artículo.

    leizuofa
    Este es un tutorial completo sobre lógica de escalera de PLC para controlar un variador de frecuencia (VFD) para el control de velocidad del motor con selección de velocidad desde el panel local de campo o gráficos SCADA.
    Pasos de ejecución:
    Preparar un diagrama de control y potencia Puesta en servicio y programación de parámetros en VFD Preparar un programa de PLC Preparar un diseño SCADA ¿Cómo controlar un VFD con un PLC?

    Diagrama de control y potencia

    Puesta en servicio y programación de parámetros en VFD
    La puesta en servicio es necesaria para el correcto funcionamiento del VFD. Los parámetros necesarios como los detalles de la placa de identificación del motor, el voltaje de entrada, el tipo de motor y la frecuencia deben ingresarse en el VFD durante la puesta en servicio rápida. Después de una puesta en servicio rápida exitosa, ahora es el momento de instalar la puesta en servicio avanzada. Esta puesta en servicio es necesaria para proporcionar los detalles de todas las entradas y salidas digitales y analógicas, como Información sobre las entradas digitales del comando de inicio y el comando de selección de velocidad Información sobre las salidas digitales como el estado del variador en funcionamiento y el variador en falla, etc. Información sobre las entradas analógicas como la entrada de velocidad 1 y la entrada de velocidad 2 Información sobre las salidas analógicas como la corriente y la frecuencia del motor Programa del PLC
    Red 1:

    En esta Red 1, verificamos si el VFD está listo para comenzar. Esta señal llegará cuando todas las condiciones sean correctas y las retroalimentaciones de seguridad y potencia estén activas.
    Red 2:

    En la Red 2, cuando se presiona el botón de inicio, se establecerá el bit VFD Drive_DO, si está listo para comenzar y no hay error.
    Red 3:

    Esta es la lógica de detención. Cuando se presiona el botón de detención, se restablecerá el bit Drive_DO.
    Red 4:

    En esta Red 4, esta lógica es necesaria para la seguridad tan pronto como se establezca el bit Drive_DO y, si en algún caso el VFD no funciona debido a alguna falla, luego de un tiempo de espera predefinido, aquí lo consideramos como Run_FB_Time, se restablecerá el bit Drive_DO y se generará un error.
    Puede reconocer este error desde el SCADA después de resolver el error desde el lado del campo.
    Red 5:

    En esta Red 5, si el VFD está consumiendo más corriente y da un error de sobrecarga, entonces restablecerá el bit Drive_DO y generará un error.
    Puede reconocer este error desde el SCADA después de resolver el error desde el lado del campo.
    Red 6:

    Esta es la salida digital de selección de velocidad. Si selecciona la entrada de velocidad como local, no se activará el bit de selección de velocidad, lo que dará como resultado Speed_DO ausente y si selecciona la entrada de velocidad como remota, se activará el bit de selección de velocidad, lo que dará como resultado Speed_DO presente.
    Diseño SCADA
    Estado normal

    Este es el estado normal del motor. No hay ningún error y el bit Listo también está en estado normal.
    Además, la selección de velocidad está en modo LOCAL.
    Estado de ejecución

    Este estado muestra que el bit Listo está alto y el motor está funcionando sin ningún error.
    Estado de error

    Hay un bit de error alto y el motor también muestra una condición de error.
    Nota:
    En algunas industrias, el color amarillo también se utiliza para indicar la condición de error. El color rojo se utiliza para indicar la condición de parada del motor.

    leigehong
    Programación de diagramas de escalera (LD)
    El lenguaje más común utilizado para programar PLC es el diagrama de escalera (LD), también conocido como lógica de escalera de relés (RLL).
    Este es un lenguaje gráfico que muestra las relaciones lógicas entre las entradas y las salidas como si fueran contactos y bobinas en un circuito de relé electromecánico cableado.
    Este lenguaje se inventó con el propósito expreso de hacer que la programación de PLC se sintiera "natural" para los electricistas familiarizados con la lógica basada en relés y los circuitos de control. Si bien la programación de diagramas de escalera tiene muchas deficiencias, sigue siendo extremadamente popular en la automatización de las industrias.
    Cada programa de diagrama de escalera está organizado para parecerse a un diagrama eléctrico, lo que lo convierte en un lenguaje de programación gráfico (en lugar de basado en texto).
    Los diagramas de escalera deben considerarse circuitos virtuales, donde la "energía" virtual fluye a través de "contactos" virtuales (cuando están cerrados) para energizar "bobinas de relé" virtuales para realizar funciones lógicas.
    Ninguno de los contactos o bobinas que se ven en un programa de PLC de diagrama de escalera son reales; En lugar de eso, actúan sobre bits en la memoria del PLC, y las interrelaciones lógicas entre esos bits se expresan en forma de un diagrama que se asemeja a un circuito. que se edita en una computadora personal:
    Programación de diagrama de escalera
    La siguiente captura de pantalla de computadora muestra un programa de diagrama de escalera típico.

    Los contactos aparecen tal como lo harían en un diagrama lógico de relé eléctrico: como segmentos de línea verticales cortos separados por un espacio horizontal.
    Los contactos normalmente abiertos están vacíos dentro del espacio entre los segmentos de línea, mientras que los contactos normalmente cerrados tienen una línea diagonal que cruza ese espacio.
    Las bobinas son algo diferentes y aparecen como círculos o pares de paréntesis. Otras instrucciones aparecen como cuadros rectangulares.
    Cada línea horizontal se conoce como peldaño, al igual que cada paso horizontal en una escalera de tijera se llama "peldaño".
    Una característica común entre los editores de programas de diagramas de escalera, como se ve en esta captura de pantalla, es la capacidad de resaltar con colores aquellos “componentes” virtuales en el “circuito” virtual listos para “conducir” “energía” virtual.
    En este editor en particular, el color utilizado para indicar “conducción” es azul claro.
    Otra forma de indicación de estado que se ve en este programa de PLC son los valores de ciertas variables en la memoria del PLC, que se muestran en texto rojo.
    Por ejemplo, puede ver la bobina T2 energizada en la esquina superior derecha de la pantalla (llena de color azul claro), mientras que la bobina T3 no lo está.
    En consecuencia, cada contacto T2 normalmente abierto aparece coloreado, lo que indica su estado “cerrado”, mientras que cada contacto T2 normalmente cerrado no tiene color.
    Por el contrario, cada contacto T3 normalmente abierto no tiene color (ya que la bobina T3 no tiene energía) mientras que cada contacto T3 normalmente cerrado se muestra coloreado para indicar su estado conductor.
    De la misma manera, los valores de conteo actuales de los temporizadores T2 y T3 se muestran como 193 y 0, respectivamente. El valor de salida del cuadro de instrucciones matemáticas es 2400, que también se muestra en texto rojo.
    El resaltado de color de los componentes del diagrama de escalera solo funciona, por supuesto, cuando la computadora que ejecuta el software de edición de programas está conectada al PLC y el PLC está en modo "ejecutar" (y la función "mostrar estado" del software de edición está habilitada).
    De lo contrario, el diagrama de escalera no es más que símbolos negros sobre un fondo blanco.
    El resaltado de estado no solo es muy útil para depurar programas de PLC, sino que también cumple una función de diagnóstico invaluable cuando un técnico analiza un programa de PLC para verificar el estado de los dispositivos de entrada y salida del mundo real conectados al PLC.
    Esto es especialmente cierto cuando el estado del programa se ve de forma remota a través de una red de computadoras, lo que permite al personal de mantenimiento investigar los problemas del sistema sin siquiera estar cerca del PLC.

    leizuofa
    Los controladores lógicos programables están diseñados para introducir varios tipos de señales (discretas, analógicas), ejecutar algoritmos de control sobre esas señales y luego emitir señales en respuesta a los procesos de control. Por sí solo, un PLC generalmente carece de la capacidad de mostrar esos valores de señal y variables de algoritmo a los operadores humanos.
    Un técnico o ingeniero con acceso a una computadora personal y el software necesario para editar el programa del PLC puede conectarse al PLC y ver el estado del programa "en línea" para monitorear los valores de las señales y los estados de las variables, pero esta no es una forma práctica para que el personal de operaciones controle lo que hace el PLC de manera regular.
    Para que los operadores controlen y ajusten los parámetros dentro de la memoria del PLC, necesitamos un tipo diferente de interfaz que permita leer y escribir ciertas variables sin comprometer la integridad del PLC al exponer demasiada información o permitir que cualquier persona no calificada altere el programa en sí.
    Una solución a este problema es una pantalla de computadora dedicada programada para proporcionar acceso selectivo a ciertas variables en la memoria del PLC, generalmente denominada Interfaz Hombre-Máquina o HMI.
    Las HMI pueden adoptar la forma de computadoras de propósito general (“personales”) que ejecutan un software gráfico especial para interactuar con un PLC, o como computadoras de propósito especial diseñadas para ser montadas en paneles de chapa metálica para no realizar ninguna tarea más que la interfaz operador-PLC.
    Esta primera fotografía muestra un ejemplo de una computadora personal (PC) común con software HMI ejecutándose en ella:

    La pantalla que se muestra aquí es para monitorear un ejemplo, un proceso de adsorción por oscilación de vacío (VSA) para purificar el oxígeno extraído del aire ambiente. En algún lugar, un PLC (o un conjunto de PLC) está monitoreando y controlando este proceso VSA, con el software HMI actuando como una “ventana” hacia la memoria del PLC para mostrar las variables pertinentes en un formato fácil de interpretar para el personal de operaciones. La computadora personal que ejecuta este software HMI se conecta al PLC a través de cables de red digital como Ethernet.
    Nota: Un término más antiguo para un panel de interfaz de operador era “Interfaz hombre-máquina” o “MMI”.
    La siguiente fotografía muestra un ejemplo de un panel HMI de propósito especial diseñado y construido expresamente para ser utilizado en entornos operativos industriales:

    Estos paneles HMI no son realmente más que computadoras personales “reforzadas” construidas de manera resistente y en un formato compacto para facilitar su uso en entornos industriales.
    La mayoría de los paneles HMI industriales vienen equipados con pantallas sensibles al tacto, lo que permite a los operadores presionar los objetos mostrados con las yemas de los dedos para cambiar de pantalla, ver detalles sobre partes del proceso, etc.

    Los técnicos y/o ingenieros programan pantallas HMI para leer y escribir datos a través de una red digital a uno o más PLC.
    Los objetos gráficos dispuestos en la pantalla de una HMI suelen imitar indicadores e interruptores del mundo real, con el fin de proporcionar una interfaz familiar para el personal de operaciones.
    Un objeto de “pulsador” en la cara de un panel HMI, por ejemplo, se configuraría para escribir un bit de datos en el PLC, de manera similar a un interruptor del mundo real que escribe un bit de datos en el registro de entrada del PLC.
    Los paneles y el software HMI modernos se basan casi exclusivamente en etiquetas, y cada objeto gráfico en la pantalla está asociado con al menos un nombre de etiqueta de datos, que a su vez está asociado a puntos de datos (bits o palabras) en el PLC mediante un archivo de base de datos de nombres de etiquetas residente en la HMI.
    Los objetos gráficos en la pantalla de la HMI aceptan (leen) datos del PLC para presentar información útil al operador, envían (escriben) datos al PLC desde la entrada del operador, o ambas cosas.
    La tarea de programar una unidad HMI consiste en crear una base de datos de nombres de etiquetas y luego dibujar pantallas para ilustrar el proceso con el mejor nivel de detalle que los operadores necesitarán para ejecutarlo.
    Aquí se muestra un ejemplo de captura de pantalla de una tabla de base de datos de nombres de etiquetas para una HMI moderna:

    Se accede a la base de datos de nombres de etiquetas y se edita utilizando el mismo software para crear imágenes gráficas en la HMI.
    Según este ejemplo, puede ver varios nombres de etiquetas (por ejemplo, BOTÓN DE INICIO, TEMPORIZADOR DE MARCHA DEL MOTOR, MENSAJE DE ERROR, VELOCIDAD DEL MOTOR) asociados con puntos de datos dentro de la memoria del PLC (en este ejemplo, las direcciones del PLC se muestran en formato de registro Modbus).
    En muchos casos, el editor de nombres de etiquetas podrá mostrar los puntos de memoria del PLC correspondientes de la misma manera en que aparecen en el software del editor de programación del PLC (por ejemplo, I:5/10, SM0.4, C11, etc.).
    Un detalle importante a tener en cuenta en esta visualización de la base de datos de nombres de etiquetas son los atributos de lectura/escritura de cada etiqueta.
    Observe en particular cómo cuatro de las etiquetas mostradas son de solo lectura: esto significa que la HMI solo tiene permiso para leer los valores de esas cuatro etiquetas desde la memoria del PLC, y no para escribir (alterar) esos valores.
    La razón de esto en el caso de estas cuatro etiquetas es que esas etiquetas hacen referencia a puntos de datos de entrada del PLC. La etiqueta START PUSHBUTTON, por ejemplo, hace referencia a una entrada discreta en el PLC activada por un interruptor de botón pulsador real.
    Como tal, este punto de datos obtiene su estado de la activación del terminal de entrada discreta. Si se le diera permiso de escritura a la HMI para este punto de datos, probablemente habría un conflicto.
    Supongamos que el terminal de entrada en el PLC se activa (estableciendo el bit START PUSHBUTTON en un estado "1") y la HMI intentara simultáneamente escribir un estado "0" en la misma etiqueta.
    Una de estas dos fuentes de datos ganaría y la otra perdería, lo que posiblemente daría como resultado un comportamiento inesperado del programa del PLC.
    Por este motivo, los puntos de datos en el PLC vinculados a entradas del mundo real siempre deben estar limitados como permiso de "solo lectura" en la base de datos de la HMI, de modo que la HMI no pueda generar un conflicto.
    Sin embargo, también existe la posibilidad de que se produzcan conflictos de datos en algunos de los otros puntos de la base de datos.
    Un buen ejemplo de esto es el bit MOTOR RUN, que es el bit dentro del programa del PLC que le indica al motor del mundo real que funcione.
    Se supone que este bit obtiene sus datos de una bobina en el programa del diagrama de escalera del PLC. Sin embargo, dado que también aparece en la base de datos de la HMI con permiso de lectura/escritura, existe la posibilidad de que la HMI sobrescriba (es decir, entre en conflicto) ese mismo bit en la memoria del PLC.
    Supongamos que alguien programó un objeto de pantalla de “botón pulsador” de alternancia en la HMI vinculada a esta etiqueta: al presionar este “botón” virtual en la pantalla de la HMI se intentaría establecer el bit (1), y al presionarlo nuevamente se intentaría restablecer el bit (0).
    Sin embargo, si una bobina del programa del PLC escribe en este mismo bit, existe la posibilidad de que el objeto de “pulsador” de la HMI y la bobina del PLC entren en conflicto, y uno intente indicarle al bit que sea un “0” mientras que el otro intente indicarle que sea un “1”.
    Esta situación es bastante similar al problema que se experimenta cuando varias bobinas de un programa de diagrama de escalera se dirigen al mismo bit.
    La regla general que se debe seguir aquí es no permitir nunca que más de un elemento escriba en ningún punto de datos. En mi experiencia enseñando programación de PLC y HMI, este es uno de los errores más comunes que cometen los estudiantes cuando aprenden a programar HMI por primera vez: intentarán que tanto la HMI como el PLC escriban en las mismas ubicaciones de memoria, con resultados extraños.
    Una de las lecciones que aprenderá al programar sistemas grandes y complejos es que es muy beneficioso definir todos los nombres de etiquetas necesarios antes de comenzar a diseñar gráficos en una HMI.
    Lo mismo ocurre con la programación de PLC: hace que todo el proyecto avance más rápido y con menos confusión si se toma el tiempo de definir todos los puntos de E/S necesarios (y los nombres de las etiquetas, si el software de programación de PLC admite nombres de etiquetas en el entorno de programación) antes de comenzar a crear cualquier código que especifique cómo se relacionarán entre sí esas entradas y salidas.
    También es importante mantener una convención consistente para los nombres de las etiquetas. Por ejemplo, es posible que desee comenzar el nombre de la etiqueta de cada punto de E/S cableado como ENTRADA o SALIDA (por ejemplo, INTERRUPTOR DE PRESIÓN DE ENTRADA ALTO, MOTOR DEL AGITADOR DE SALIDA EN MARCHA, etc.).
    El motivo para mantener una convención de nombres estricta no es obvio al principio, ya que el objetivo de los nombres de las etiquetas es dar al programador la libertad de asignar nombres arbitrarios a los puntos de datos del sistema.
    Sin embargo, verá que la mayoría de los editores de nombres de etiquetas enumeran las etiquetas en orden alfabético, lo que significa que una convención de nombres organizada de esta manera presentará todas las etiquetas de entrada de manera contigua (adyacente) en la lista, todas las etiquetas de salida de manera contigua en la lista, y así sucesivamente.
    Otra forma de aprovechar la lista alfabética de nombres de etiquetas a su favor es comenzar cada nombre de etiqueta con una palabra que describa su asociación con un equipo importante.
    Tomemos como ejemplo este proceso con varios puntos de datos definidos en un sistema de control PLC y mostrados en una HMI:

    Si enumeramos todas estas etiquetas en orden alfabético, la asociación es inmediatamente obvia:
    Bomba de efluente del intercambiador Temperatura de salida del efluente del intercambiador Bomba de precalentamiento del intercambiador Temperatura de entrada del precalentamiento del intercambiador Válvula de precalentamiento del intercambiador Temperatura del lecho del reactor Flujo de alimentación del reactor Temperatura de alimentación del reactor Válvula de la camisa del reactor Como puede ver en esta lista de nombres de etiquetas, todas las etiquetas asociadas directamente con el intercambiador de calor se encuentran en un grupo contiguo, y todas las etiquetas asociadas directamente con el reactor se encuentran en el siguiente grupo contiguo.
    De esta manera, la denominación juiciosa de las etiquetas sirve para agruparlas de manera jerárquica, lo que facilita que el programador las localice en cualquier momento futuro en la base de datos de nombres de etiquetas.
    Notará que todos los nombres de etiquetas que se muestran aquí carecen de caracteres de espacio entre palabras (por ejemplo, en lugar de “Temperatura del lecho del reactor”, un nombre de etiqueta debe usar guiones o marcas de subrayado como caracteres de espaciado: “Temperatura del lecho del reactor”), ya que los lenguajes de programación de computadoras generalmente asumen que los espacios son delimitadores (separadores entre diferentes nombres de variables).
    Al igual que los propios controladores lógicos programables, las capacidades de las HMI han aumentado de manera constante mientras que su precio disminuye.
    Las HMI modernas admiten tendencias gráficas, archivo de datos, alarmas avanzadas e incluso capacidad de servidor web, lo que permite que otras computadoras accedan fácilmente a ciertos datos a través de redes de área amplia.
    La capacidad de las HMI de registrar datos durante largos períodos de tiempo libera al PLC de tener que realizar esta tarea, que consume mucha memoria.
    De esta manera, el PLC simplemente “sirve” datos actuales a la HMI, y la HMI puede mantener un registro de datos actuales y pasados utilizando sus reservas de memoria mucho más grandes.
    Si la HMI se basa en una plataforma de computadora personal (por ejemplo, Rockwell RSView, Wonderware, software FIX/Intellution), incluso puede estar equipada con una unidad de disco duro para almacenar enormes cantidades de datos históricos.
    Algunos paneles HMI modernos incluso tienen un PLC integrado dentro de la unidad, lo que proporciona control y monitoreo en el mismo dispositivo.
    Estos paneles proporcionan puntos de conexión de regleta de terminales para E/S discretas e incluso analógicas, lo que permite que todas las funciones de control e interfaz se ubiquen en una sola unidad de montaje en panel.

    leizuofa
    La documentación del PLC es un registro de ingeniería muy importante de los pasos de control del proceso y, como ocurre con todas las descripciones técnicas, es esencial contar con registros de ingeniería detallados y precisos.
    Sin planos precisos, los cambios y modificaciones necesarios para la actualización y el diagnóstico son extremadamente difíciles o imposibles.
    Documentación del sistema PLC

    Todos los cables que van desde el PLC hasta el equipo de control y monitoreo deben estar claramente marcados y numerados en ambos extremos, y registrados en el diagrama de cableado.
    El PLC debe tener diagramas de escalera completos y actualizados (u otro lenguaje aprobado), y cada peldaño debe estar etiquetado con una descripción completa de su función.
    Los documentos esenciales en un sistema PLC son:
    1. Descripción general del sistema y descripción completa de la operación de control;
    2. Diagrama de bloques de las unidades del sistema;
    3. Lista completa de cada entrada y salida, destino y número;
    4. Diagrama de cableado de los módulos de E/S, identificación de la dirección para cada punto de E/S y ubicaciones de los bastidores;
    5. Diagrama de escalera con descripción, número y función de los escalones.
    También es necesario tener la capacidad de simular el programa de escalera sin conexión en una computadora personal o en modo de fondo en el PLC, de modo que se puedan realizar cambios, actualizaciones y simulaciones de fallas sin interrumpir el funcionamiento normal del PLC, y se puedan evaluar los efectos de los cambios y las actualizaciones antes de incorporarlos.

    leikang
    Desarrolle ejemplos de programación de PLC en automatización industrial de acuerdo con la lógica que se detalla a continuación:
    Una sierra, un ventilador y una bomba de aceite se encienden cuando se presiona un botón de inicio. Si la sierra ha funcionado menos de 20 s, la bomba de aceite debe apagarse cuando se apaga la sierra y el ventilador debe funcionar durante 5 s adicionales después de apagar la sierra. Si la sierra ha funcionado durante más de 20 s, el ventilador debe permanecer encendido hasta que se restablezca con un botón de reinicio del ventilador independiente y la bomba de aceite debe permanecer encendida durante 10 s adicionales después de que se apague la sierra. Escriba un programa de PLC que implemente este proceso. Ejemplos de programación de PLC

    Descripción del programa:
    Rung 0000:
    PB de inicio/parada de emergencia bloqueado con memoria B3:0/0.
    Rung 0001:
    B3:0/0 habilitado para encender la sierra (O: 0/0), el ventilador (O: 0/1) y la bomba de aceite (O: 0/2).
    El contacto normalmente cerrado del interruptor de parada está en serie con la salida de la sierra para apagarla.
    El interruptor de reinicio del ventilador y el temporizador T4:0 están conectados para apagar el ventilador cuando se cumple la condición.
    El temporizador T4:2 se detiene un poco y el bit de memoria es para apagar la bomba de aceite.
    Rung 0002:
    Cuando se presiona el botón de parada, de acuerdo con la lógica mencionada en el punto 2, la salida del ventilador (O: 0/2) debe apagarse después de 5 s.
    El bloque comparador restringe el temporizador T4:0 para que funcione después de los 20 s de funcionamiento de la sierra.
    Rung 0003:
    El temporizador T4:1 funciona cuando se presiona el botón de inicio. Cuando se presiona el botón de parada en cualquier momento después de los 20 s, la salida de la sierra se apagará.
    Después de 10 s, se apagará la bomba de aceite. Esta operación la realiza el temporizador T4:2. El bit de finalización del temporizador T4:0 se utiliza para restringir la operación del temporizador T4:1 cuando T4:0 está activado.
    Renglón 0004:
    Se utiliza menos de un bloque comparador para realizar la lógica mencionada en el punto 2, para apagar el ventilador cuando la operación de salida de la sierra fue inferior a 20 s.
    Salida del programa:
    Ahora vemos la simulación de la lógica de escalera anterior para diferentes condiciones, como se menciona a continuación.
    Cuando se presiona el PB de inicio

    Cuando se presiona el interruptor de parada antes de los 20 s

    Cuando se presiona el interruptor de parada después de los 20 s

    Cuando se presiona el interruptor de reinicio del ventilador

    Conclusión:
    Podemos usar este ejemplo para comprender la lógica de programación en el PLC Allen Bradley.

    leizuofa
    Ejemplo de programación de PLC sobre control de múltiples motores para principiantes con el software de PLC Schneider Electric EcoStruxure Machine Expert Basic.
    Tenga en cuenta que este ejemplo de PLC es para estudiantes de ingeniería que estén interesados en aprender y practicar los ejercicios de PLC. Los programas de PLC industriales en tiempo real se diseñarán con más funciones de seguridad y protección.
    Ejemplo de programación de PLC sobre múltiples motores
    Diseñe una lógica de escalera de PLC para la siguiente aplicación.
    Estamos usando tres interruptores de palanca para controlar tres motores.
    Si el interruptor 1 está encendido, entonces el motor I, el motor II y el motor III estarán encendidos. Si el interruptor 2 está encendido, entonces el motor I y el motor II estarán encendidos. Si el interruptor 3 está encendido, entonces el motor I, el motor II y el motor III estarán apagados. Entradas digitales
    Las siguientes entradas digitales (DI) son necesarias en este programa de ejemplo. También se mencionan las direcciones DI del PLC asignadas.
    Interruptor 1: I0.0
    Interruptor 2: I0.1
    Interruptor 3: I0.2
    Salidas digitales
    En este programa de ejemplo se requieren las siguientes salidas digitales (DO). También se mencionan las direcciones DO del PLC asignadas.
    Motor 1: Q0.0
    Motor 2: Q0.1
    Motor 3: Q0.2
    Diagrama de escalera para control de múltiples motores

    Descripción del programa
    Para esta aplicación, utilizamos el software Ecostruxure Machine Expert Basic v1.2 para la programación. En el programa anterior, hemos utilizado un contacto normalmente abierto para el interruptor 1 (I0.0), contactos normalmente cerrados para el interruptor 2 (I0.1) y el interruptor 3 (I0.2) El interruptor 1 y el interruptor 3 están conectados en serie para el motor 1 y el motor 2, implementando así la compuerta lógica AND. Para el motor 3, el interruptor 1, el interruptor 2 y el interruptor 3 están conectados en serie, implementando así la compuerta lógica AND. Para que el motor 1 y el motor 2 estén encendidos, el interruptor 1 debe estar encendido y el interruptor 3 debe estar apagado. Cuando el interruptor 1 está encendido, el interruptor 2 y el interruptor 3 están apagados, el motor 3 estará encendido. Al encender el interruptor 3, se apagarán todos los motores, es decir, el motor 1, el motor 2 y el motor 3 estarán apagados. El motor 3 se apagará cuando se encienda el interruptor 2. Cuando se enciende el interruptor 1, todos los motores se encenderán porque la corriente también pasará por el interruptor 2 y el interruptor 3, ya que estos son contactos normalmente cerrados. Sin apagar el interruptor 1, el motor 1 y el motor 2 seguirán encendidos, pero el motor 3 se apagará cuando se encienda el interruptor 2. Al encender el interruptor 2, no pasará corriente al motor 3. Todos los motores se apagarán cuando se encienda el interruptor 3, incluso si los demás interruptores están encendidos. Cuando el interruptor 1 está encendido
    La corriente fluye a través del interruptor 1 ya que está en estado verdadero. En estado falso, el interruptor 3 y el interruptor 4 también pasan corriente a las salidas.

    Cuando el interruptor 2 está encendido
    La corriente no fluye a través del interruptor 2 cuando está encendido. En estado verdadero, el contacto normalmente cerrado interrumpe el circuito.

    Cuando el interruptor 3 está encendido
    El interruptor 3 es un contacto normalmente cerrado. Cuando está encendido, no permitirá que pase corriente a través de él. Como resultado, ninguna de las salidas estará encendida.


    leikang
    Este es un programa PLC para el control de entrada y salida de aparcamientos subterráneos o en sótanos.
    Aparcamiento de coches con PLC
    Descripción del problema
    Debido a las zonas concurridas, nos enfrentamos a muchos problemas de aparcamiento de vehículos en sótanos o subterráneos en centros comerciales, hoteles, complejos, etc. Esto sucede debido a la contradicción entre el número de vehículos en rápido crecimiento y los espacios de aparcamiento limitados en centros comerciales, tiendas y complejos en las ciudades, lo que da como resultado el fenómeno de "aparcamiento difícil y aparcamiento desordenado". El problema actual del aparcamiento tiene graves repercusiones en la calidad de vida de las personas y en el funcionamiento de las carreteras.
    Diagrama del problema

    Solución del problema
    Con una automatización sencilla podemos reducir el problema del aparcamiento en sótanos o subterráneos en centros comerciales, hoteles, complejos, etc. La entrada y salida en el sótano es un paso de un solo carril y necesita semáforos para controlar los coches. Aquí consideramos la indicación de dos luces para el control de los coches. Las luces rojas prohíben la entrada y salida de vehículos, mientras que las luces verdes permiten la entrada y salida de vehículos. Cuando un vehículo entra por el pasillo desde la entrada de la planta baja, ambas luces rojas (planta baja y sótano) estarán encendidas. Se prohíbe la entrada y salida de otros vehículos durante el proceso hasta que el vehículo pase por el pasillo único. Cuando el pasillo esté despejado, ambas luces verdes (planta baja y sótano) estarán encendidas y permitirán la entrada de otros vehículos desde la planta baja o el sótano.
    Inicialmente mantendremos las luces verdes ENCENDIDAS y la luz roja APAGADA
    Lista de entradas y salidas
    Lista de entradas
    INTERRUPTOR principal: I0.0 Sensor S1 para entrada/salida de planta baja: I0.1 Sensor S2 para entrada/salida de sótano: I0.2 Lista de salidas
    Luz verde (Entrada/salida de planta baja): Q0.0 Luz verde (Entrada/salida de sótano): Q0.1 Luz roja (Entrada/salida de planta baja): Q0.2 Luz roja (Entrada/salida de sótano): Q0.3 Lista de bobinas de memoria M
    M10.0: Estará ENCENDIDO cuando el automóvil pase el sensor S1 M10.3: Estará ENCENDIDO cuando el automóvil pase el sensor S2 M0.0: Borde positivo del sistema ENCENDIDO M0.1 y M11.0: Borde positivo del sensor S1 M0.3 y M11.1: Borde positivo del sensor S2 M11.2: borde negativo del sensor S2 M11.3: borde negativo del sensor S1 Diagrama de escalera de PLC para control de entrada/salida de estacionamiento de automóviles








    Descripción del programa
    En esta aplicación hemos utilizado el PLC Siemens S7-300 y el software TIA Portal para la programación.
    Red 1:
    Según la explicación anterior, en la primera red, cuando el sistema está ENCENDIDO (I0.0), inicialmente ambas luces verdes (planta baja (Q0.0) y sótano (Q0.1)) estarán ENCENDIDAS. Se ejecuta la instrucción SET y se activarán las salidas Q0.0 y Q0.1.
    Red 2:
    Según la explicación anterior en la segunda red, cuando el sistema está encendido (I0.0), inicialmente ambas luces rojas (planta baja (Q0.2) y sótano (Q0.3)) estarán apagadas. Se ejecuta la instrucción RESET y se restablecerán las salidas Q0.2 y Q0.3.
    Red 3:
    Cuando el automóvil ingresa al pasaje vacío desde la planta baja, se activará el sensor S1 (I0.1) y con este disparador, se activará la bobina de memoria M10.0.
    Red 4:
    Cuando el automóvil ingresa al pasaje vacío desde el sótano, se activará el sensor S2 (I0.2) y con este disparador, se activará la bobina de memoria M10.3.
    Red 5:
    Ambas luces rojas se activarán mediante el disparador positivo del sensor S1 o del sensor S2, ya que cuando el automóvil ingresa en un pasaje vacío, ambas luces rojas (Q0.2 y Q0.3) prohibirán la entrada o salida del automóvil desde ambos lados.
    Red 6:
    Aquí hemos tomado el disparador negativo de ambos sensores S1 (I0.1) y S2 (I0.2), por lo que cuando se activan, las luces rojas (Q0.2 y Q0.3) se APAGARÁN. Cuando el automóvil pase completamente el pasaje vacío, las luces rojas (Q0.2 y Q0.3) deben APAGARSE.
    Red 7:
    En esta red, las luces verdes (Q0.0 y Q0.1) se encenderán cuando las luces rojas estén APAGADAS. Las luces verdes (Q0.0 y Q0.1) permiten que otros automóviles ingresen o salgan.
    Red 8:
    Si las luces rojas (Q0.2 y Q0.3) están ENCENDIDAS en ese momento, las luces verdes (Q0.0 y Q0.1) deben estar APAGADAS. Por lo tanto, en esta red, cuando las luces rojas (Q0.2 y Q0.3) estén ENCENDIDAS en ese momento, se ejecutará la instrucción de reinicio y las luces verdes (Q0.0 y Q0.1) estarán APAGADAS.
    Red 9:
    Si el sistema está ENCENDIDO (I0.0) y el INTERRUPTOR está APAGADO, todas las memorias deben estar a 0. Aquí hemos tomado la instrucción MOVE para mover el cero en todas las memorias (MB0, QB0 y MB10).
    Este ejemplo es solo para explicar el concepto; no se consideran todos los parámetros en este ejemplo (como el sistema de apertura/cierre de puertas, alarmas, etc.).
    Resultado

    Nota: La lógica de PLC anterior proporciona una idea básica sobre la aplicación del PLC en el control de estacionamiento de automóviles de las puertas de entrada/salida. La lógica es limitada y no es una aplicación completa.

Apply for friendship links:WhatsApp or E-mail: admin@plchmis.com
×
×
  • Create New...