Jump to content

leigehong

Subscription group
  • Content Count

    168
  • Joined

Everything posted by leigehong

  1. 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
  2. Estudie el ejemplo de programación de PLC para el control de LED utilizando el diagrama de lógica en escalera y aprenda la descripción del programa. 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 proporcionarán con más funciones de seguridad. Programación de PLC para el control de LED Diseñe una lógica en escalera de PLC para la siguiente aplicación. Usamos tres interruptores de palanca para controlar tres LED Si el interruptor de palanca 1 y el interruptor de palanca 2 están encendidos, entonces el LED 1 y el LED 2 estarán encendidos. Si el interruptor de palanca 2 y el interruptor de palanca 3 están encendidos, entonces el LED 2 estará apagado y el LED 3 estará encendido. Entradas digitales Las entradas requeridas se enumeran a continuación. Interruptor basculante 1: I0.0 Interruptor basculante 2: I0.1 Interruptor basculante 2: I0.1 A continuación, llamaremos a estos interruptores basculantes simplemente "Interruptor", pero recuerde que son interruptores basculantes. Entradas digitales Las salidas requeridas se enumeran a continuación. LED 1: Q0.0 LED 2: Q0.1 LED 3: Q0.2 Diagrama de escalera para control de LED Descripción del programa PLC Para esta aplicación, utilizamos el software EcoStruxure Machine Expert Basic v1.2 para la programación. En el programa anterior, hemos utilizado contactos normalmente abiertos para el interruptor 1 (I0.0), el interruptor 2 (I0.1) y el interruptor 3 (I0.2). También hemos utilizado contactos normalmente cerrados para el interruptor 3 (I0.2). El interruptor 1 y el interruptor 2, presentes en el escalón 0, están conectados en serie para el LED 1 y el LED 2, implementando así la compuerta lógica AND. Con el interruptor 1 y el interruptor 2, el interruptor 3 está conectado al LED 3 como contacto normalmente cerrado. Para el LED 3, el interruptor 2 y el interruptor 3 presentes en el escalón 1 están conectados en serie, implementando así la compuerta lógica AND. Para que el LED 1 esté encendido, el interruptor 1 y el interruptor 2 deben estar encendidos. Cuando el interruptor 1 y el interruptor 2 están encendidos y el interruptor 3 está apagado, el LED 2 estará encendido. Cuando el interruptor 2 y el interruptor 3 están encendidos, el LED 3 estará encendido. Al encender el interruptor 3, se apagará el LED 2. Cuando el interruptor 1 y el interruptor 2 están encendidos En el escalón 0, la señal pasa por el interruptor 1 y el interruptor 2 cuando se enciende. Como resultado, el LED 1 y el LED 3 se encenderán. El interruptor 3 se utiliza como un contacto normalmente cerrado para el interruptor 3; cuando está en un estado falso, permitirá que la señal encienda el LED 2. Cuando el interruptor 2 y el interruptor 3 están encendidos La señal a través del interruptor 2 y el interruptor 3 en el escalón 1, que enciende el LED 3. En el escalón 0, el interruptor 3 se toma como contacto normalmente cerrado; cuando está en el estado verdadero, no permitirá que la señal pase a través de él. Como resultado, el LED 2 se apagará. El interruptor 3 está conectado al LED 1 y, por lo tanto, permanecerá encendido.
  3. 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.
  4. In früheren Artikeln haben wir verschiedene Arten von Organisationsblöcken besprochen, wie den Haupt-OB1, der der wichtigste zyklische Programmblock ist. In diesem Artikel werden wir uns mit einem anderen zyklischen Organisationsblock befassen. Dem OB30 oder zyklischen Interrupt-OB. Inhalt: Was ist ein zyklischer Interrupt OB30? Was ist der Haupt-OB1-Zyklus? Warum brauche ich OB30? Wie konfiguriere ich zyklische Interrupts? Was ist, wenn ich mehr als einen zyklischen Interrupt habe? Fazit. Was ist ein zyklischer Interrupt OB30? Ein zyklischer Interrupt OB30 ist ein Organisationsblock, der in festgelegten und genauen Zeitintervallen aufgerufen und ausgeführt wird. Im Gegensatz zum zyklischen Haupt-OB1, der kontinuierlich aufgerufen und ausgeführt wird, wird der zyklische Interrupt in Zeitintervallen aufgerufen, die Sie beim Erstellen eines zyklischen Interrupt-OB konfigurieren sollten. Wenn ich beispielsweise einen OB30 mit einem Zeitintervall _auch Zykluszeit genannt_ von 20 ms erstellt habe, bedeutet dies, dass das Betriebssystem den Hauptzyklus-OB1 unterbricht und den OB30 alle 20 ms aufruft. Sie müssen sicherstellen, dass die Laufzeit eines zyklischen Interrupt-OB kleiner als sein Zeitintervall ist. Andernfalls kann es passieren, dass der nächste Aufruf des OB30 eintrifft, während dieser Aufruf des OB30 noch ausgeführt wird. In diesem Fall generiert das Betriebssystem einen Zeitfehler, der dazu führen kann, dass die SPS in den STOP-Modus wechselt. Was ist der Hauptzyklus-OB1? Der Hauptzyklus-OB1 ist der Organisationsbaustein, der für die zyklische Ausführung Ihrer Logik durch die SPS verantwortlich ist. Immer wenn Sie ein neues Projekt erstellen und eine SPS hinzufügen, wird der Haupt-OB1 automatisch von der Software erstellt. Die wesentliche Grundlage Ihres SPS-Codes ist das zyklische Verhalten, d. h. Ihr Code muss kontinuierlich ausgeführt werden. Wenn die Verarbeitung Ihrer Logik abgeschlossen ist, beginnt das Betriebssystem erneut mit der Verarbeitung. Dies geschieht durch die Verwendung des Haupt-OB1. Sie platzieren und rufen Ihre gesamte Logik und Ihren Code in diesem OB1 auf und das Betriebssystem sorgt dafür, dass diese kontinuierlich ausgeführt werden. Die Zykluszeit des Haupt-OB1 bezieht sich auf die Laufzeit des zyklischen Programms, einschließlich der Laufzeit aller verschachtelten Programmteile wie FCs, FBs und OBs mit höherer Priorität. Wenn Sie mehrere Programmzyklus-OBs erstellt haben, trägt jeder Programmzyklus-OB zur Zykluszeit bei. Das Betriebssystem überwacht, ob die Zykluszeit kleiner bleibt als die konfigurierte maximale Zykluszeit. Wenn sie die maximale Zykluszeit überschreitet, wechselt die SPS je nach Ihrer Programmierung entweder in den STOP-Modus oder ruft OB80 auf. Warum brauche ich OB30? Jemand könnte argumentieren, dass ich jede beliebige Funktionalität innerhalb des OB30 im Haupt-OB1 platzieren und versuchen kann, damit durchzukommen, abhängig von der sehr schnellen Leistung der meisten SPS heutzutage. Das kann manchmal in Ordnung sein, aber nicht immer. Abhängig von der Leistung Ihrer SPS kann die Hauptzykluszeit zwischen 1 und 150 ms liegen. Sie kann unterschiedlich sein, aber dies ist die Standardkonfiguration. Diese Zykluszeit hängt von vielen Faktoren ab, wie der Größe Ihres SPS-Programms und Interrupts in Ihrer Logik und anderen Faktoren, die die Laufzeit Ihres Zyklus höchstwahrscheinlich instabil machen. Wenn Sie nun bestimmte Funktionen genau alle 10 ms ausführen müssen, nicht alle 9 ms und nicht alle 11 ms, können Sie sich nicht auf den Haupt-OB1 verlassen, da das Ergebnis möglicherweise nicht wie gewünscht ist. In diesem Fall verwenden Sie den zyklischen Interrupt OB30, konfigurieren ihn auf die gewünschten 10 ms und das Betriebssystem stellt sicher, dass diese Funktion genau alle 10 ms aufgerufen und ausgeführt wird. Aus diesem Grund wird er Interrupt genannt, da er die Ausführung des Haupt-OB1 unterbricht, um Ihren OB30 aufzurufen und auszuführen. Beispiele für Funktionen, die OB30 benötigen PID-Reglerverarbeitung. Überwachung von Sicherheitskreisen. Überwachung der Kommunikation zwischen Maschinen. In allen vorherigen Beispielen müssen Sie Ihre Parameter zu bestimmten Zeiten kontinuierlich überwachen und überprüfen, da sie sich auf reale physikalische Größen oder auf die Maschinensicherheit beziehen. Die Ausführung solcher Funktionen sollte nicht verzögert werden, da sie die Sicherheit und Kontinuität Ihres Prozesses beeinträchtigen. Wie konfiguriere ich zyklische Interrupts? Wenn Sie einen zyklischen Interrupt erstellen, müssen Sie einige Parameter konfigurieren. Siehe Abbildung 1 zum Hinzufügen eines neuen OB30. Abbildung 1 – Neuen zyklischen Interrupt OB30 hinzufügen Wenn Sie einen zyklischen Interrupt erstellen, finden Sie viele Parameter, die Sie in den Eigenschaften des Blocks festlegen können, siehe Abbildung 2. Abbildung 2 – Eigenschaften von OB30 Die wichtigsten Parameter, die Sie berücksichtigen müssen, sind folgende: Zykluszeit Verwenden Sie den Parameter „Zykluszeit“, um den Zeitraum zwischen zwei Aufrufen des zyklischen Interrupt-OB festzulegen. Er ist ein ganzzahliges Vielfaches von 1 µs. Phasenversatz Hier stellen Sie die Zeitspanne ein, um die die Startzeitpunkte gegenüber dem Vielfachen der Zykluszeit verschoben werden. Siehe Abbildung 3 für die Konfiguration von Zykluszeit und Phasenversatz. Abbildung 3 – Einstellen der Zykluszeit und des Versatzes von OB30 Priorität des Weckalarm-OB Dies ist ein weiterer wichtiger Parameter, den Sie beim Konfigurieren eines zyklischen Interrupts berücksichtigen müssen, da Sie möglicherweise mehr als einen zyklischen Block haben. Wenn zwei verschiedene OBs gleichzeitig aufgerufen werden müssen, ruft das Betriebssystem den Block mit einer höheren Prioritätsnummer auf und führt ihn aus. Sie sollten wissen, dass der SPS-Hauptprogrammzyklus OB1 die Prioritätsnummer 1 hat, die niedrigste Prioritätsstufe, die ein Block haben kann. Deshalb kann OB1 durch jeden anderen Blockaufruf unterbrochen werden. Siehe Abbildung 4. Abbildung 4 – Festlegen der Priorität von OB30 Was passiert, wenn ich mehr als einen zyklischen Interrupt habe? Es ist nicht ungewöhnlich, dass Sie mehr als einen zyklischen Interrupt in Ihrer Logik haben. Wenn Sie zwei PID-Regler in Ihrer SPS-Logik haben, benötigen Sie möglicherweise zwei zyklische Interrupts, um jeden PID zu verarbeiten. In diesem Fall müssen Sie sicherstellen, dass sich der Aufruf und die Ausführung verschiedener zyklischer Interrupts nicht überschneiden. Wenn Sie beispielsweise OB30 mit einer Intervallzykluszeit von 5 ms und OB31 mit einem Zyklusintervall von 10 ms haben, bedeutet dies, dass der zweite Aufruf von OB30 auch die Zeit für den Aufruf von OB31 ist. Dies kann zu Logikfehlern führen, selbst wenn Sie die Priorität eines der beiden höher als die des anderen einstellen, wird Ihre Zykluszeit für den Block mit der niedrigeren Priorität durcheinandergebracht. Siehe Abbildung 5. Abbildung 5 – Überlappung des Aufrufs verschiedener zyklischer Interrupts In diesem Fall kann ein Phasenversatz ratsam sein, wenn Sie mehrere zyklische Interrupt-OBs verwenden. Wenn ihre Zykluszeiten gemeinsame Vielfache haben, können Sie einen Phasenversatz verwenden, um gleichzeitige Startzeiten zu verhindern. Siehe Abbildung 6. Abbildung 6 – Versatz zwischen verschiedenen OB-Aufrufen Um diese Überlappung zu vermeiden, setzen wir die Versatzzeit von OB31 auf 1 ms. Das bedeutet, dass die Zählung für das OB31-Zeitintervall um 1 ms gegenüber der Startzeit von OB30 verschoben wird. Siehe Abbildung 7. Abbildung 7 – Offset-Einstellung von OB31 Fazit Zyklische Interrupts sind sehr nützlich für zeitkritische Aufgaben, bei denen es zu keinen Verzögerungen kommen sollte. Sie können mehr als einen zyklischen Interrupt in Ihrer Logik haben. Verwenden Sie die Offset-Einstellung der zyklischen Interrupts, um gleichzeitige Startzeiten zu vermeiden. Verwenden Sie die Prioritätseinstellung, um die Reihenfolge der Ausführung verschiedener zyklischer Interrupts zu steuern.
  5. Dieser Artikel handelt von einem Verkehrskontrollsystem für T-Kreuzungen mit Hilfe einer SPS-Leiterlogik, die einen Komparator für den Ampelbetrieb verwendet. Verkehrskontrollsystem für T-Kreuzungen Die Funktion des Verkehrskontrollsystems für T-Kreuzungen besteht aus drei Segmentgruppen. Durch die Logik des Komparatorbetriebs steuern wir das Ampelsystem. Erstes Segment: Im ersten Segment ist der Verkehr auf Spur 1 erlaubt und die Spur 2 und Spur 3 sind angehalten. Hier in diesem Segment leuchtet das grüne Licht (Grün 1) der Spur 1 und die roten Lichter (Rot 2) der Spur 2 und (Rot 3) der Spur 3 leuchten. Dieser Zeitraum dauert fünfzehn Sekunden. Zweites Segment: Im zweiten Segment ist der Verkehr auf Spur 2 erlaubt und die Spur 1 und Spur 3 sind angehalten. In diesem Abschnitt leuchtet das grüne Licht (Grün 2) der Spur 2 und die roten Lichter (Rot 1) der Spur 1 und (Rot 3) der Spur 3 leuchten. Dieser Zeitraum dauert 15 Sekunden. Dritter Abschnitt: Im dritten Abschnitt ist der Verkehr auf Spur 3 erlaubt und Spur 1 und Spur 2 sind angehalten. In diesem Abschnitt leuchtet das grüne Licht (Grün 3) der Spur 3 und die roten Lichter (Rot 1) der Spur 1 und (Rot 2) der Spur 2 leuchten. Dieser Zeitraum dauert 15 Sekunden. Nach der Ausführung aller drei Abschnitte beginnt die Abfolge der Vorgänge erneut und wiederholt sich kontinuierlich. Beschreibung der Ein- und Ausgänge In diesem SPS-Projekt haben wir 2 Eingänge, 6 Ausgänge, 2 Speicher und 1 Einschaltverzögerungstimer verwendet. S.Nr. Symbol Beschreibung 1 I 0.0 START 2 I 0.1 STOP 3 M 0.0 MEMORY 4 M 0.1 MEMORY 1 5 Q 0.0 GRÜN 1 6 Q 0.1 ROT 1 7 Q 0.2 GRÜN 2 8 Q 0.3 ROT 2 9 Q 0.4 GRÜN 3 10 Q 0.5 ROT 3 11 DB1 EIN VERZÖGERUNGSTIMER SPS-Programmierung und ihre Erklärung 1. Wenn die START-Taste (I 0.0) gedrückt wird, wird MEMORY (M 0.0) aktiviert. Dieser M 0.0 ist der Hauptspeicher, der zum Ausführen aller Prozesse im Programm verwendet wird. Da er verriegelt ist, wird er nur im aktivierten Zustand sein. Wenn STOP (I 0.1) gedrückt wird, wird der gesamte Prozess jederzeit gestoppt. 2. Sobald MEMORY aktiviert ist, wird der TIMER DB1 eingeschaltet, der die Zeitsteuerung der Verkehrskreuzung steuert. In diesem Timer stellen wir die voreingestellte Zeit von 45 Sekunden ein. Sobald der Timer die voreingestellte Zeit erreicht, wird MEMORY 1 (M 0.1) aktiviert und dieser M 0.1 setzt den Timer gemäß der Logik zurück und lässt den Zyklus kontinuierlich laufen. 3. Als nächstes spielt der Komparator eine wichtige Rolle bei der Steuerung der Verkehrskreuzung. Zuerst wird der Ausgang GRÜN 1 (Q 0.0) gemäß der Logik eingeschaltet. Hier haben wir Kleiner als oder Gleich für den Komparator verwendet. In dieser Logik befindet sich Q0.0 von 0 Sekunden bis 15 Sekunden im EIN-Zustand. Danach wechselt er in den AUS-Zustand. 4. Als nächstes haben wir für den Ausgang ROT 1 (Q0.1) die Funktion Größer als oder Gleich verwendet. Q0.1 befindet sich von 15 bis 45 Sekunden im EIN-Zustand. Es befindet sich im AUS-Zustand, wenn Q0.0 im EIN-Zustand ist. 5. Dann haben wir für Ausgang GRÜN 2 (Q0.2) sowohl Kleiner als oder gleich als auch Größer als oder gleich für diesen Ausgang verwendet. Beide Komparatorfunktionen wurden in serieller Logikschaltung mit dem Ausgang verbunden. Dabei befindet sich Q0.2 je nach Bedingung von 16 bis 30 Sekunden im EIN-Zustand. 6. Als nächstes haben wir für Ausgang ROT 2 (Q0.3) auch sowohl die Funktion Kleiner als oder gleich als auch Größer als oder gleich verwendet, um den Vorgang auszuführen. Komparatoren wurden in Parallelschaltung mit dem Ausgang verbunden. Dieser Ausgang befindet sich von 0 bis 15 Sekunden und von 30 bis 45 Sekunden im EIN-Zustand. Zwischen 15 Sekunden befindet er sich nur im AUS-Zustand, da sich Q0.2 zu diesem Zeitpunkt im EIN-Zustand befindet. 7. Dann haben wir für den letzten GRÜNEN 3-Ausgang (Q0.4) die Funktion „Größer als oder gleich“ verwendet. Gemäß der bedingten Logik befindet er sich 30 bis 45 Sekunden lang im EIN-Zustand. Vor diesem Zeitpunkt befindet er sich im AUS-Zustand. 8. Schließlich der ROT 3-Ausgang (Q0.5). Hier haben wir die Funktion „Kleiner als oder gleich“ verwendet, um die SPS-Logik auszuführen. Er befindet sich 0 bis 30 Sekunden lang im EIN-Zustand, danach befindet er sich im AUS-Zustand. Fazit Auf diese Weise wird die Verkehrssteuerung der gegebenen T-Kreuzung durch die Komparatorfunktion mit der SPS-Logik ausgeführt. Wir können die Verkehrslogik mithilfe der SPS-Logik auf viele Arten steuern, und dies ist auch eine der Möglichkeiten dazu.
  6. Die Steuerung eines Prozesses in einer Maschine oder einem System war schon immer eine Fantasie für Ingenieure. Dank des technologischen Fortschritts wurden viele Controller entwickelt, um einen Prozess flexibel und zuverlässig zu steuern. Bei Controllern gibt es zwei allgemeine Typen, die in vielen Prozessen weit verbreitet sind, von klein bis groß. Das sind Mikrocontroller und SPS. Sie können jede Operation ausführen, von kleinen Berechnungen bis hin zu komplexen Algorithmen, Logikleistung und Datenverarbeitung. Dies erleichtert die Aufgabe durch Automatisierung des Prozesses. In diesem Beitrag werden wir den Unterschied zwischen Mikrocontroller und SPS betrachten. Was ist ein Mikrocontroller? Lassen Sie uns zunächst die Grundlagen verstehen. Sie haben einen Druckknopf und eine Lampe. Sie werden aufgefordert, die Lampe 5 Sekunden nach dem Drücken des Druckknopfs einzuschalten. Was davon benötigen wir, um diese Aufgabe auszuführen? Sie benötigen einen Eingang (Druckknopf), einen Ausgang (Lampe), einen Controller zur Ausführung dieser Aufgabe (Prozessortyp), eine Stromversorgung zur Stromversorgung der Schaltkreise und einen Speicher zum Speichern dieser Logik und des Status der Ein- und Ausgänge. Kombiniert in einem einzigen Paket ergibt dies einen Mikrocontroller. Kurz gesagt ist ein Mikrocontroller eine Art kleiner Computer, der physische Eingaben entgegennimmt, die Logik entsprechend verarbeitet und die physischen Ausgaben ein- oder ausschaltet. Es handelt sich um ein kleines chipartiges Gerät, das alle diese Schaltkreise wie ein kleines Paket enthält und die gesamte Verarbeitungs- und Steuerungsarbeit übernimmt. Ein Mikrocontroller verarbeitet eine kleine Anzahl von Ein- und Ausgaben. Betrachten Sie beispielsweise einen kleinen Anzeigeschaltkreis wie LED oder LCD, der auf einem Handgerät montiert ist. Wenn Sie einen Druckknopf darauf drücken, wird die entsprechende Zahl auf dem Display angezeigt. Und wenn Sie einen anderen Druckknopf drücken, wird eine andere Zahl angezeigt, die gemäß der Logik im Prozessor geschrieben ist. Dies bedeutet, dass er zuerst so programmiert wurde, dass er eine Zahl anzeigt, und dann, wenn Sie den zweiten Knopf drücken, wird eine berechnete Zahl angezeigt. Alle diese Berechnungen, die Speicherverwaltung von Variablen und die IO-Verarbeitung werden innerhalb dieses Mikrocontrollerchips durchgeführt. Was ist eine SPS? Lassen Sie uns nun zu einer höheren Verarbeitungsebene übergehen. Sie haben 50 Sensoren, entweder 4-20 mA oder Thermoelementtypen. Sie haben 20 verschiedene Arten von Ausgängen, entweder 0-10 V DC-Aktuatoren oder Relaisausgänge. Ihnen wurde dieselbe Aufgabe zugewiesen, Eingänge zu akzeptieren und Ausgänge gemäß der darin geschriebenen Logik zu steuern. Es werden dieselben Komponenten wie IOs, Stromversorgung, Prozessor und Speicher benötigt. Aber Sie sehen, dass all diese IO-Karten/Pins mit Speicher und Prozessor nicht auf einem kleinen Einzelchip eingebettet werden können. Hier kommt die SPS ins Spiel. Die SPS ist im Grunde eine Erweiterung des Mikrocontrollers. Es ist ein schrankartiges Gerät mit IO-Karten, Speicher und einem Prozessor; alle auf verschiedenen Chips miteinander verbunden. Alle diese Chips bilden ein einzelnes SPS-Gehäuse. Die IOs können unterschiedlicher Art sein, von einfachen digitalen Signalen bis hin zu komplexen analogen Signalen. Sie verfügen über spezielle Kommunikationskarten, die mit realen Protokollen wie Ethernet, Modbus, CAN Open, Profibus, Profinet usw. kommunizieren können. Auch Mikrocontroller verfügen über Kommunikationskarten, diese haben jedoch kleine Schnittstellen und eine eingeschränkte Konnektivität. Die IO-Module sind entweder in die Haupt-SPS eingebettet oder über Kommunikation mit Remote-Modulen verbunden. Dies ermöglicht eine einfache Erweiterung der IOs. Verschiedene hochwertige industrielle Sensoren und Aktoren können problemlos mit der SPS verbunden werden. Unterschied zwischen Mikrocontroller und SPS Nachdem wir nun ihre Bedeutung verstanden haben, schauen wir uns ihre Unterschiede an: Nur in der Definition haben wir erfahren, dass eine SPS eine große Anzahl von Prozessen und Zyklen verarbeiten kann. Aus diesem Grund eignet sie sich am besten für industrielle Anwendungen. Mikrocontroller können keine große Anzahl von IOs mit komplexen Verdrahtungs- und Kommunikationsanforderungen bedienen. Sie eignen sich am besten für Anwendungen im kleinen Maßstab. Die Signalverarbeitung ist in einer SPS im Vergleich zu einem Mikrocontroller viel flexibler. Das bedeutet, dass Analog-Digital-Umwandlung, Hochgeschwindigkeitszähler-Eingänge und -Ausgänge in einer SPS einfacher konfiguriert werden können als in einem Mikrocontroller. Mikrocontroller sind aufgrund der begrenzten Anzahl an Funktionen, die sie bieten, günstiger als SPS. Der Hauptvorteil einer SPS ist ihre Robustheit und Stabilität. Aufgrund ihrer hohen Temperaturbeständigkeit und Umweltresistenz ist sie das am besten geeignete Produkt für kritische, riskante und raue Umgebungen. Eine SPS ist gegenüber elektromagnetischen Störungen und anderen Störungen viel weniger anfällig als ein Mikrocontroller. Die Programmierung ist in einer SPS viel einfacher als in einem Mikrocontroller. Mikrocontroller verwenden komplexe Software wie C und C++ zur Programmierung, was in einer SPS viel einfacher ist, da sie über Sprachen verfügt, die sich leicht mit dem Verständnis elektrischer Zeichnungen verbinden lassen. Für die Entwicklung von Mikrocontrollern sind Kenntnisse über eingebettete Systeme, VLSI und Software erforderlich, während für die Entwicklung von SPS-Programmierern Kenntnisse über industrielle Automatisierung, Instrumentierung und Vernetzung erforderlich sind.
  7. Dies ist ein SPS-Programm für den Betrieb pneumatischer Ventile im Sequenzmodus. Sequentielle SPS-Programmierung für pneumatische Ventile Schreiben Sie eine Leiterlogik für die sequentielle SPS-Programmierung für pneumatische Ventile, um Zylinder im Sequenzmodus zu betreiben. Lösung: Hier in diesem System gibt es zwei Zylinder und zwei Druckknöpfe, die mit der SPS verbunden sind. Die Druckknöpfe sind mit den SPS-Eingängen verbunden und die Zylinder mit den Ausgängen der SPS. Damit das System funktioniert, müssen folgende Bedingungen erfüllt sein: – Wenn START PB gedrückt wird, sollte Zylinder A starten und Zylinder B sollte nach 5 Sekunden von Zylinder A starten. Wenn STOP PB gedrückt wird, müssen beide Zylinder A und B gestoppt werden. Um nun die folgenden Bedingungen zu erfüllen, müssen wir einen Timer verwenden, der den Betrieb von Zylinder B verzögert. Liste der Ein-/Ausgänge Eingänge: X1 -START PB X2 -STOP PB Ausgänge: Y0 -Zylinder A Y1 -Zylinder B Leiterdiagramm für den sequentiellen Betrieb von Zylindern Programmerklärung: In Sprosse 1 haben wir STRAT PB (X1) verwendet, um Zylinder A (Y0) zu starten. Hier haben wir den NC-Kontakt von STOP PB (X2) verwendet, um Zylinder A (Y0) zu stoppen. Parallel zum X1-Kontakt haben wir den NO-Kontakt von Y0 verwendet, um den Ausgang zu verriegeln. In Sprosse 2 haben wir den Timer T0 verwendet, um die Verzögerung für Zylinder B (Y1) zu zählen. In Sprosse 3 haben wir den NO-Kontakt von T0 verwendet, sodass eine Zeitverzögerung über Zylinder B (Y1) eingeschaltet wird.
  8. In diesem Artikel erfahren Sie, wie Sie das SPS-Datenblatt lesen, und erhalten wichtige Hinweise zu SPS-Spezifikationen, die für Automatisierungsingenieure nützlich sind. Außerdem sprechen wir darüber, welche unterschiedlichen Informationen in einem SPS-Datenblatt enthalten sind und wie diese für mich als Programmierer oder Installationsingenieur nützlich sein können. Inhalt: Welche Informationen enthält ein Datenblatt? Beispiele für die Informationen in einem SPS-Datenblatt Strom- und Spannungsnennwert SPS-Speicher Adressierung verschiedener Blöcke und Datenbereiche Spezifikationen für Ein- und Ausgänge Kommunikationsschnittstellen und -protokolle Umgebungsbedingungen Wichtige Hinweise zum Lesen des Datenblatts. Welche Informationen enthält ein Datenblatt? Das Datenblatt einer SPS enthält viele Informationen. Diese Informationen decken fast alle Funktionen ab, die die SPS bieten kann. Einige dieser Informationen sind für Sie jedoch nicht so wichtig wie andere. Dies hängt davon ab, welchen Anwendungsbereich Sie mit der SPS haben. Wenn Sie der Installationsingenieur sind, konzentrieren Sie sich auf die technischen Daten der SPS wie Versorgungsspannung, Art der Ein- und Ausgänge und Nennleistung dieser IO-Punkte. Sie achten auch mehr auf die Abmessungen der SPS und die Umgebungsbedingungen während des SPS-Betriebs, um die Größe des Schaltschranks zu bestimmen, den Sie für die SPS verwenden, sowie die Kühlmethoden, die für die SPS verwendet werden. Wie liest man das SPS-Datenblatt? Wenn Sie andererseits nur der SPS-Programmierer sind, sind die Informationen aus der Vergangenheit für Sie möglicherweise nicht so wichtig. Stattdessen konzentrieren Sie sich auf Daten, die sich beispielsweise auf den SPS-Speicher, die Anzahl der verfügbaren IOs und die Möglichkeit zum Hinzufügen neuer Module beziehen. Sie achten auch auf einige andere Informationen wie die von dieser SPS unterstützten Programmiersprachen, da nicht alle SPS alle Programmiersprachen unterstützen. Kommunikation und Vernetzung sind weitere wichtige Punkte, die Ihnen als Programmierer wichtig sind. Das Datenblatt einer SPS beginnt immer mit einer allgemeinen Übersichtsbeschreibung der SPS. Einfache Beispiele für S7-1200 und S7-1500 finden Sie in den Bildern 1 und 2. Bild 1 – 1. Seite eines S7-1500-SPS-Datenblatts. Bild 2 – 1. Seite eines S7-1200-SPS-Datenblatts. Wie Sie sehen, wird am Anfang des Datenblatts eine allgemeine Beschreibung der SPS gegeben. Diese allgemeine Beschreibung gibt Ihnen eine grundlegende Vorstellung von der SPS und davon, ob sie für Ihre Anwendung geeignet ist oder nicht. Beispiele für die Informationen in einem SPS-Datenblatt In diesem Artikel verwenden wir das Datenblatt einer S7-1200-SPS, um einige der darin enthaltenen Informationen zu zeigen. Strom- und Spannungswerte In einem bestimmten Abschnitt des Datenblatts müssen Informationen zu den Spannungs- und Stromwerten der SPS enthalten sein. Manche SPS benötigen eine Gleichstromversorgung, während andere eine Wechselstromversorgung benötigen. Auch die Ein- und Ausgänge der SPS können unterschiedliche Werte haben, was bei unserer SPS genau der Fall ist, bei der die Spannungsversorgung der SPS 220 AC beträgt, die Werte für die IOs jedoch Gleichstrom sind. Siehe Bild 3. Bild 3 – Spannungs- und Stromwerte. SPS-Speicher Im Datenblatt werden unterschiedliche Speicherkapazitäten der SPS angegeben. Dies zeigt, wie viel Arbeitsspeicher Sie haben und ob Sie ihn erweitern können oder nicht, siehe Bild 4. Bild 4 – Speicherbeschreibung der SPS Adressierung verschiedener Blöcke und Datenbereiche In diesem Abschnitt erfahren Sie mehr über die verschiedenen Blöcke, die Sie mit Ihrer SPS verwenden können, wie Timer, Zähler, FCs usw., sowie über die maximale Anzahl der Blöcke, die Sie verwenden können. Sie erhalten außerdem Informationen zum Speicher der Datenbereiche und ihrer Remanenz. Siehe Abbildung 5. Abbildung 5 – CPU-Blöcke sind verfügbar. Ein- und Ausgangsspezifikationen Dies sind weitere wichtige Daten, die angegeben werden sollten. Durch diese Informationen erfahren Sie, wie viele IOs mit Ihrer SPS bereitgestellt werden und wie Sie jedes IO verbinden und verwenden. Siehe Abbildungen 6 und 7. Abbildung 6 – Digitale Eingänge der SPS. Wie Sie sehen, haben wir 8 DI-Punkte in unserer SPS, von denen 6 für HSC-Eingänge (High-Speed Counting) wie Encoder verwendet werden können. Es zeigt Ihnen auch, dass die Eingangsspannung 24 VDC beträgt, was bedeutet, dass Sie AC-Sensoren von Eingängen nicht direkt an die SPS anschließen können. Bild 7 – In unserer SPS sind digitale Ausgänge verfügbar. Wenn die SPS analoge IOs hat, wird dies auch im Datenblatt erwähnt. Siehe Bild 8 Bild 8 – Beschreibung der analogen IOs. Kommunikationsschnittstellen und -protokolle Die in Ihrer SPS verfügbaren Kommunikationsschnittstellen sowie die von ihr unterstützten Kommunikationsprotokolle werden auch im Datenblatt erwähnt. Siehe Bild 9. Bild 9 – Die Kommunikationsschnittstelle der SPS. Wie Sie sehen, hat unsere SPS nur eine Kommunikationsschnittstelle, nämlich eine PROFINET-Schnittstelle, die als RJ-45-Anschluss bereitgestellt wird. Die SPS selbst kann jedoch viele Kommunikationsprotokolle wie PROFIBUS und AS-Interface unterstützen. Siehe Bild 10. Bild 10 – Unterstützte Kommunikationsprotokolle. Umgebungsbedingungen Dies sind weitere sehr wichtige Daten, die Sie über Ihre SPS wissen sollten, da sie Ihnen dabei helfen, zu entscheiden, welche Art von Gehäuse und Kühlung am besten für Ihre SPS geeignet ist. Siehe Abbildung 11. Abbildung 11 – Umgebungsbedingungen der SPS. Wichtige Hinweise zum Lesen des Datenblatts einer SPS Nicht alle SPS-Datenblätter enthalten dieselben Informationen, da unterschiedliche SPS unterschiedliche Funktionen und Fähigkeiten haben und daher unterschiedliche Informationen anzeigen müssen. Nicht alle Informationen im Datenblatt werden für Sie wichtig sein, das hängt davon ab, ob Sie, wie bereits erwähnt, ein SPS-Programmierer oder ein Installationstechniker sind. Es ist in Ordnung, wenn Sie einige der Informationen im Datenblatt nicht verstehen, denn wie gesagt enthält das Datenblatt Informationen zu fast allen von Ihrer SPS unterstützten Funktionen. Einige dieser Funktionen kennen Sie möglicherweise nicht und müssen sie möglicherweise nie verwenden. Beispielsweise die OPC UA- oder Webserverfunktionen. Wenn Sie also Daten finden, die Sie nicht verstehen, bedeutet das nicht unbedingt, dass Ihre SPS nicht zu Ihrem Projekt passt. Fazit Das Lesen des SPS-Datenblatts ist wichtig, um zu entscheiden, ob die SPS für Ihre Anwendung geeignet ist oder nicht. Es ist auch wichtig zu entscheiden, mit welchen IO-Typen und Spannungsversorgungswerten Sie arbeiten können. Versuchen Sie, das Datenblatt verschiedener SPS-Modelle zu lesen und prüfen Sie, ob Sie die darin enthaltenen grundlegenden Informationen verstehen.
  9. In diesem SPS-Programm wird der automatische Türbetrieb mithilfe einer SPS-Programmierung so gestaltet, dass die Tür beim Erkennen eines Objekts geöffnet oder geschlossen wird. Das Objekt ist hier nichts anderes als ein Auto. Automatischer Türbetrieb Die folgende Simulation zeigt den Betrieb des automatischen Türsystems. Ein- und Ausgänge Typ Geräte-Nr. Gerätename Betrieb Eingang X0 Untergrenze EIN, wenn Tür Untergrenze erreicht. Eingang X1 Obergrenze EIN, wenn Tür Obergrenze erreicht. Eingang X2 Eingangssensor EIN, wenn Objekt sich der Tür nähert. Eingang X3 Ausgangssensor EIN, wenn Objekt die Tür verlässt. Eingang YO Tür auf Bewegt sich nach oben, wenn YO eingeschaltet ist. Ausgang Y1 Tür runter Bewegt sich nach unten, wenn Y1 eingeschaltet ist. Ausgang Y6 Licht Leuchtet, wenn Y6 eingeschaltet ist. Ausgang Y7 Summer ertönt Ertönt, wenn Y7 eingeschaltet ist (Lampe auf dem Bildschirm leuchtet). Programmbeschreibung Wenn sich das Auto dem Eingang nähert, bewegt sich die Tür nach oben. Ein In-Gate-Sensor X2 wird verwendet, um die Anwesenheit des Autos am Eingang zu erkennen. Sobald das Auto durchfährt, bewegt sich die Tür nach unten. Ein Out-Gate-Sensor X3 wird verwendet, um die Anwesenheit des Autos nach dem Durchqueren der Tür zu erkennen. Die Aufwärtsbewegung der Tür stoppt, wenn der obere Endschalter (X1) aktiviert wird. Ebenso stoppt die Abwärtsbewegung der Tür, wenn der untere Endschalter (X0) aktiviert wird. Die Tür bleibt oben, solange das Auto im Bereich des Eingangs (In-Gate-Sensor X2) und des Ausgangs (Out-Sensor X3) erkannt wird. Ein Summer (Y7) summt als Signal für die Bewegung der Tür. Während sich das Auto im Erkennungsbereich befindet, leuchtet zwischen dem In-Gate-Sensor (X2) und dem Out-Sensor (X3) ein Licht (Y6). Der Status der Türbewegung wird durch das Aufleuchten oder Erlöschen von vier Kontrollleuchten auf dem Bedienfeld angezeigt. Eine manuelle Steuerung der Tür ist möglich. Mit den Tasten auf dem Bedienfeld können Sie die Tür entweder öffnen (⬆Tür auf) oder schließen (⬇Tür ab). SPS-Programmierung
  10. Zähler sind ein sehr wichtiger Befehl in der SPS-Programmierung. Sie werden in fast jeder Logik benötigt. Ob es darum geht, etwas zu zählen oder Ereignisse zu zählen, Zähler sind ein wichtiger Teil der SPS-Programmierung. Da die Ereigniszählung in vielen Anwendungen verwendet wird und SPS-Programmierern hilft, Zeit beim Schreiben umständlicher Codes zu sparen. Aber oft ist es immer erforderlich, eine Ersatzlösung für einen Plan zu finden, wenn dieser nicht funktioniert. Auch bei Zählern muss ein SPS-Programmierer eine Ersatzlogik kennen, wenn sie nicht richtig funktioniert. Dafür können zwei Befehle kombiniert und geschrieben werden – Move und Addition. In diesem Beitrag lernen wir, wie man Zähler in der SPS-Programmierung mit einem Move- und Add-Befehl entwirft. Zähler Zunächst sehen wir uns an, wie ein Zählerbefehl geschrieben wird. Siehe das folgende Bild. Wie Sie sehen können, hat ein Zähler drei Eingänge – Zählen, Zurücksetzen und Wert festlegen; und zwei Ausgänge – Fertig und aktueller Wert. Ein Zähleingang ist erforderlich, um dem Zähler einen Impuls zum Zählen zu liefern, ein Rücksetzeingang ist erforderlich, um den Zähler zurückzusetzen, und ein Sollwert ist erforderlich, um dem Zähler Sollwerte zuzuführen. Ein Fertigausgang wird verwendet, um anzuzeigen, dass der Zähler mit dem Zählen fertig ist, und der aktuelle Wert zeigt den aktuellen Wert der Zählungen an, die der Zähler bis jetzt gezählt hat. Wenn ein Zähleingang empfangen wird, erhöht sich der Zähler um einen Wert. Der Zähleingang arbeitet impulsbasiert und nicht kontinuierlich. Wenn der Zähler seinen Sollwert erreicht, wird das Fertigausgangsbit eingeschaltet. Die einzige Möglichkeit, es dann auszuschalten, besteht darin, den Rücksetzeingang zu geben. Der Zählwert wird an diesem Eingang Null und der Zähler wird dadurch zurückgesetzt. Es ist zu beachten, dass der Zählwert auch dann weiter erhöht wird, wenn der Zählwert erreicht wurde und Sie immer noch einen Zähleingang geben. Sie können auch sehen, dass nach dem Zählerausgang ein Vergleichsblock verwendet wird, der es ermöglicht, zum letzten einzuschaltenden Bit zu gelangen. Dies verhindert, dass das letzte Bit unnötigerweise eingeschaltet wird, wenn der eingestellte Zähler null ist. Zähler in SPS mit einem Move-Befehl entwerfen Jetzt werden wir sehen, wie man dieselbe Codierung mithilfe von Move- und Additionsbefehlen schreibt. Siehe das folgende Bild. Im ersten Sprosse wird der Zähleingang durch einen Additionsbefehl ersetzt. Die Addition erfolgt, wenn die Eingangsbedingung erfüllt ist, und zwar auch mit einem Impuls. Es muss ein Impuls verwendet werden, sonst wird die kontinuierliche Addition fortgesetzt und es besteht keine Kontrolle darüber. Im zweiten Sprosse wird verglichen, ob die eingestellten Zählwerte erreicht wurden oder nicht. Außerdem wird geprüft, ob der eingestellte Zählerwert größer als null ist oder nicht. Wenn diese Bedingungen erfüllt sind, wird der Ausgang eingeschaltet. Im dritten Sprosse wird der Zählerwert beim Empfang der entsprechenden Eingänge null. Dies entspricht dem Vorgang des Reset-Eingangs. Diese drei Sprosse reichen aus, um die Funktion eines Zählers zu replizieren. Sie können je nach Bedarf entweder einen Zähler oder diese SPS-Logik verwenden. Es ist jedoch zu beachten, dass wir einen Zähler auch auf diese Weise programmieren können. Auf diese Weise haben wir gesehen, wie man Zähler in der SPS-Programmierung mit einer Move-and-Add-Anweisung schreibt.
  11. SPS ist ein sehr wichtiger Teil der industriellen Automatisierung. Sie ist die Grundlage der Automatisierung und jeder SPS-Programmierer oder Automatisierungsingenieur muss sie richtig entwickeln, damit sie richtig funktioniert. Es geht nicht nur um die Programmierung, sondern letztendlich darum, wie Sie das SPS-System entwickeln. Sicherheitsaspekte bei der Entwicklung von SPS-Systemen Wir alle denken, dass unser SPS-System einsatzbereit ist, wenn wir ein Programm mit allen Verriegelungen, Sequenzen und Abläufen richtig schreiben. Es muss jedoch beachtet werden, dass einer der wichtigsten Parameter bei der Entwicklung eines Systems die Sicherheit ist. Daher muss ein SPS-System unter Berücksichtigung der Sicherheit entwickelt werden. In diesem Artikel erfahren wir, welche Sicherheitsaspekte bei der Entwicklung eines SPS-Systems zu berücksichtigen sind. Stromversorgung Dies ist der erste und wichtigste Parameter bei der Entwicklung von SPS-Systemen. Es gibt zwei Arten von Stromversorgungen im Panel – Gleichstrom und Wechselstrom. Gleichstrom ist normalerweise 12–24 V Gleichstrom und Wechselstrom ist normalerweise 110 V Wechselstrom oder 230 V Wechselstrom. Die SPS wird von einer der beiden Stromversorgungen mit Strom versorgt und auch die Feldinstrumente werden von einer der beiden Stromversorgungen mit Strom versorgt. Wenn ein Panel über ein einzelnes SMPS oder eine einzelne 230-V-Sammelschiene verfügt, ist es für Designer einfach, das System zu verdrahten. Wenn ein Panel über mehrere Stromversorgungen verfügt, besteht die Möglichkeit, dass Sie versehentlich ein Pluskabel von einer Stromversorgung und ein Minuskabel von einer anderen Stromversorgung anschließen. Dies macht Ihr System komplizierter und erschwert die Fehlersuche. Eine einzelne Stromversorgung minimiert daher auch Leitungsstörungen und verhindert fehlerhafte Eingangssignale von einer stabilen Wechselstromquelle an die Stromversorgung und CPU. Mehrere Stromversorgungen sind unerwünscht und erhöhen auch die Wahrscheinlichkeit von Kurzschlüssen und häufigen Ausfällen. Daher ist das Design der Stromversorgung ein sehr wichtiger Faktor für den sicheren Betrieb des SPS-Systems. Erdung Wie wir alle wissen, ist eine Erdung erforderlich, um jeglichen Leckstrom zur Erde abzuleiten. Dies verhindert Stromschläge, Lärm und elektromagnetische Störungen. Die Standardspannung zwischen Neutralleiter und Erdung muss in Industriebereichen unter 0,5 V liegen. Ein etwas höherer Wert als 1 V ist akzeptabel, aber wenn er darüber liegt, bedeutet dies, dass die Erdung nicht richtig ist und Leckagen in elektrischen Signalen die Leistung beeinträchtigen. Die SPS-Stromversorgung und die IO-Kanäle müssen richtig geerdet und mit der Erdungsschiene im Panel verbunden sein. Außerdem müssen Instrumentenerdung und Stromerdung getrennt sein, da sonst jede Zusammenführung der Erdung Kurzschlüsse oder Signalstörungen verursacht. Kritische digitale Eingangssignale Jedes SPS-System muss kritische Eingänge wie Not-Aus, Panel-Stromausfall und Luftdruck haben. Außerdem müssen alle diese Signale im NC-Format (normalerweise geschlossen) angeschlossen sein. Der Not-Aus wird verwendet, um das System plötzlich anzuhalten, wenn ein Bediener diese Taste drückt, der Panel-Stromausfall wird verwendet, um das System anzuhalten, wenn ein Problem mit der Phasenstromversorgung vorliegt, und das Luftdrucksignal gibt an, ob Luft zum Betätigen von Ventilen oder anderen pneumatischen Ausgängen erforderlich ist oder nicht. Alle Aktionen sollten sofort angehalten werden, wenn einer dieser Eingänge ausfällt. Bei einigen großen Systemen wird auch beobachtet, dass bei Drücken der Nottaste nicht das gesamte System gestoppt wird, sondern ein Nothalt für einzelne Ausgänge mit hoher Nennleistung bereitgestellt wird. Dadurch kann der Bediener jedes System problemlos isolieren und andere Systeme bedienen, anstatt das gesamte System zu stoppen. Sperren im manuellen Modus Programmierer nehmen die Logik im manuellen Modus immer auf die leichte Schulter. Sie schalten lediglich die Ausgänge ein oder aus. Es muss jedoch beachtet werden, dass jede unregelmäßige manuelle Bedienung der Ausgänge die Leistung des Systems beeinträchtigen kann. Wenn das System sehr kritisch ist, kann dies lebensbedrohliche Probleme für das Personal in der Nähe verursachen. Daher wird empfohlen, auch im manuellen Modus Alarme oder andere kritische Sperren anzuwenden. Dies verhindert, dass der Bediener das System willkürlich bedient. Außerdem wird durch diese Logik die Sicherheit des SPS-Systems gewährleistet. Alarme Alle in einem Steuerlogikdokument angegebenen Alarme werden normalerweise von den Programmierern im Programm übernommen. SPS-Programmierer müssen jedoch einige zusätzliche Sicherheitsalarme im System bereitstellen, je nach den in der SPS übernommenen IOs. Dabei handelt es sich normalerweise um Laufrückmeldungsalarme, Auslöserückmeldungsalarme, Über- oder Unterlaufalarme, Sensorfehleralarme, SPS-Kanalfehleralarme, thermische Überlastungsalarme, Thermostatalarme, Über- oder Unterspannungsalarme usw. Diese Alarme variieren von System zu System, basierend auf den tatsächlich erfassten Eingaben. Wenn jedoch eine dieser Eingaben nicht vorhanden ist, wird Programmierern empfohlen, den Kunden dies zur Berücksichtigung vorzuschlagen. Dadurch wird verhindert, dass das System fehlerhaft funktioniert. Auf diese Weise haben wir einige allgemeine Sicherheitsüberlegungen beim Entwurf eines SPS-Systems gesehen.
  12. Im vorherigen Artikel haben wir darüber gesprochen, was ein UDT ist, wie man benutzerdefinierte Datentypen (UDT) erstellt und welche Vorteile die Verwendung von UDTs in Ihrem Projekt bietet. In diesem Artikel zeigen wir eine Möglichkeit, UDT in Ihrer SPS-Programmierung zu verwenden. Inhalt: Alter Tanksimulator-Funktionsblock. Neuer Tanksimulations-FB mit UDT. Aufrufen des neuen Tanksimulations-FB. Hinzufügen eines neuen Tags zum UDT. Schlussfolgerungen. UDT in der SPS-Programmierung In unseren letzten Artikeln haben wir dasselbe Tanksimulatorsystem verwendet, um viele Konzepte zu erklären, wie z. B. Regelung und PID-Regler. In diesem Artikel verwenden wir denselben Tanksimulator, um zu zeigen, wie wir das Konzept von UDTs in unserer Programmierung verwenden können. Alter Tanksimulator-Funktionsblock Im alten Tanksimulatorsystem haben wir einige interne Parameter definiert, um den Funktionsblock beliebig oft wiederverwenden zu können. Siehe Bild 1. Bild 1. Tanksimulator-FB. Wie Sie auf dem Bild sehen, haben wir in der Funktionsblockschnittstelle einige Eingänge und einige InOuts definiert. Diese Parameter sollten bereitgestellt werden, wenn der FB aufgerufen wird. Wenn wir beispielsweise den FB aufgerufen haben, um Tank 1 zu simulieren, und ihn erneut aufgerufen haben, um Tank 2 darzustellen, müssen wir dem zugehörigen aufgerufenen Funktionsblock die Parameter für jeden Tank bereitstellen. Siehe Bild 2. Bild 2. Simulation von Tank 1 und Tank 2. Sie können sehen, dass wir für jeden FB-Aufruf die zugehörigen Tags zuweisen müssen. Für die Simulation von Tank 1 sollten wir dem aufgerufenen FB Tags von Tank 1 zuweisen. Und dasselbe gilt für die Simulation von Tank 2. Neuer Tanksimulations-FB mit UDT: Jetzt möchten wir den UDT „Tank“, den wir im letzten Artikel definiert haben, verwenden, um unsere Tanks zu simulieren. Wir werden einen neuen Simulationsfunktionsblock erstellen. Siehe Abbildung 3. Abbildung 3. Neuen Tanksimulations-FB hinzufügen. Der neue Simulationsfunktionsblock hat dieselbe Logik wie der alte FB, aber in dieser Simulationsfunktion verwenden wir den definierten UDT „Tank“ als internen InOut-Tag, wie Sie auf der Abbildung sehen. Anstatt Ihre Funktionsblockparameter in den verschiedenen Bereichen der FB-Schnittstelle zu deklarieren, gibt es jetzt nur noch einen Tag, der alle erforderlichen Informationen zum Tank enthält. Aufrufen des neuen Tanksimulations-FB: Um die neue Simulationsfunktion aufzurufen, wählen wir, sie innerhalb eines zyklischen Interrupt-OB aufzurufen, um sicherzustellen, dass die Ausführung des Funktionsblocks nicht von der Zykluszeit des Hauptlogik-OB1 beeinflusst wird, wie wir es bei PIDs erklärt haben. Wir müssen also zuerst einen neuen zyklischen Interrupt-OB erstellen. Siehe Bild 4. Bild 4. Hinzufügen eines zyklischen Interrupts zum Aufrufen der Tanks 3 und 4. Sie können die zyklische Zeit nach Belieben wählen, in unserem Fall haben wir sie auf 3000 Mikrosekunden oder 3 Millisekunden eingestellt. Jetzt können Sie Ihren FB „Tank Simulator mit UDT“ per Drag & Drop in Ihren zyklischen Interrupt ziehen, um den FB aufzurufen. Ein Fenster mit Aufrufoptionen wird angezeigt, in dem Sie der FB-Dateninstanz einen beliebigen Namen geben können. Siehe Bild 5. Bild 5. Rufen Sie Ihren FB auf. Nach dem Aufruf des FB müssen Sie nun die Parameter für den Tank zuweisen, den Sie simulieren möchten. Siehe Bild 6. Bild 6. Weisen Sie dem FB-Aufruf Tankparameter zu. Beachten Sie, dass Sie für den Funktionsblock nur einen Parameter ausfüllen müssen. Und zwar das UDT-Tag, das Sie erstellt haben. Enthält bereits alle Tankparameter, die der Funktionsblock benötigt. Wir möchten Tank_03 simulieren, also weisen wir dem FB-Aufruf das Tag zu. Siehe Abbildung 7. Abbildung 7. Ziehen Sie Ihr Tag per Drag & Drop. Der Funktionsblockaufruf für Tank 3 sieht einfacher aus als der Aufruf von Tank 1 mit dem alten Simulator-FB ohne UDTs. Siehe Abbildung 8. Abbildung 8. Unterschiede beim Aufruf von Tank 1 und Tank 3. Erkennen Sie den Unterschied zwischen den beiden Tankaufrufen? Im Fall ohne UDTs müssen Sie alle Parameter des Funktionsblocks angeben. Stellen Sie sich vor, Sie müssen mit diesem Simulator 50 Tanks simulieren. Es wäre sehr langweilig und zeitaufwändig, all diese Parameter zuzuweisen, ganz zu schweigen davon, sie zuerst für jeden Tank zu deklarieren. Aber im Fall des Simulators mit UDTs können Sie so viele aufrufen, wie Sie möchten, und es wird nicht viel Zeit oder Mühe kosten. Siehe Bild 9. Bild 9. Aufrufen vieler anderer Tanks. Stellen Sie sich nun vor, Sie müssen Ihrer Simulation eine neue Variable hinzufügen. Sie möchten beispielsweise ein Ausflusswarnsignal hinzufügen. Mit dem alten Simulatorfunktionsblock ohne UDT bedeutet dies, dass Sie dieses neue Tag für jeden Tank deklarieren und es bei jedem Tankaufruf einzeln hinzufügen müssen. Aber mit UDTs müssen Sie nur das von Ihnen erstellte UDT aktualisieren und das gewünschte neue Tag hinzufügen. Siehe Bild 10. Bild 10. Hinzufügen eines neuen Tags zum UDT. Wenn Sie Änderungen am UDT vornehmen, müssen Sie nicht einmal den Funktionsaufruf aktualisieren. Da der Aufrufparameter derselbe ist, wurden die Änderungen innerhalb des Parameters selbst vorgenommen. Siehe Bild 11. Bild 11. Der FB muss nicht erneut aufgerufen werden. Sie müssen Ihr SPS-Projekt oder zumindest den Datenblock jedoch noch einmal neu kompilieren, damit die Änderungen am UDT aktualisiert werden können. Siehe Abbildung 12. Abbildung 12. Neu kompilieren, um die Änderungen am UDT zu aktualisieren. Nachdem Sie alle Änderungen am UDT kompiliert haben, werden alle deklarierten Tags dieses UDT automatisch aktualisiert. Siehe Abbildung 13. Abbildung 13. Alle Tags sind jetzt aktualisiert. Fazit Sie können die UDTs in Ihrem Projekt verwenden, um Ihre Programmierung schneller und einfacher nachvollziehbar zu machen. Die Verwendung von UDTs erleichtert auch das Vornehmen von Änderungen an Ihren Funktionen und Funktionsblöcken.
  13. Wenn Sie in einem SPS-System arbeiten, müssen Sie wissen, welche Fehler in den SPS-Modulen auftreten. Wenn ein SPS-Programmierer nicht weiß, welcher Fehler in der SPS auftritt und wie er ihn beheben kann, wird er sehr lange brauchen, um das System zu beheben. Jede SPS und ihre Module verfügen über LEDs zur visuellen Vereinfachung und Fehlerbehebung. Eine detaillierte Beschreibung finden Sie auch in den Benutzerhandbüchern. Daher ist es wichtig zu verstehen, wie diese LEDs funktionieren, denn wenn Sie sie erst einmal verstanden haben, wird die Fehlerdiagnose für SPS-Programmierer zu einer sehr einfachen Aufgabe. In diesem Beitrag lernen wir das Konzept der Fehlerdiagnose in SPS kennen. SPS-Fehlerdiagnose Sehen wir uns einige der häufigsten Fehlertypen an, die mit SPS-LEDs identifiziert werden können: Die Run-LED zeigt an, ob das Modul ordnungsgemäß funktioniert oder nicht. Wenn sie dauerhaft leuchtet, bedeutet dies, dass das Modul ordnungsgemäß funktioniert. Wenn diese LED aus ist, ist das Modul fehlerhaft oder ausgeschaltet. Die Err-LED zeigt an, ob das Modul einen Fehler aufweist oder nicht. Wenn sie dauerhaft leuchtet, handelt es sich um einen internen Modulfehler. Wenn sie blinkt, ist das Modul entweder nicht richtig konfiguriert oder es liegt ein Problem mit der angeschlossenen SPS-Hardware vor. Wenn sie aus ist, liegt kein Fehler im Modul vor. Die I/O-LED zeigt den genauen Status der mit dem Modul verbundenen SPS-IOs an. Wenn sie dauerhaft leuchtet, liegt ein Versorgungsspannungsfehler oder Kurzschluss vor. Wenn sie aus ist, liegt kein Fehler in den angeschlossenen IOs vor. Die Kanal-LED zeigt den Status einzelner Kanäle an. Wenn die LED dauerhaft leuchtet, funktioniert der Kanal ordnungsgemäß. Wenn sie blinkt, liegt ein Fehler vor (Kabelbruch oder Wert außerhalb des zulässigen Bereichs). Wenn sie aus ist, ist der Kanal überhaupt nicht konfiguriert. Einige Kommunikationsmodule wie Modbus RTU verfügen über eine Wahrheitstabelle der LEDs, die jeden Wert derselben anzeigt. LED-Anzeigen in der SPS Sie sind meist wie in der folgenden Tabelle: Hinweis: Die LED-Anzeigen können je nach SPS-Modell und Marke variieren. Die obige Tabelle ist ein Beispiel für eines der SPS-Modelle auf dem Markt. Einige Kommunikationsmodule wie Modbus TCP/IP haben etwas kompliziertere LED-Diagnosen. Es ist jedoch wichtig, sie für die Fehlerbehebung zu verstehen. Das Modul läuft, wenn die Run-LED leuchtet, und wird gestoppt, wenn die LED aus ist. Wenn die Err-LED blinkt, bedeutet dies, dass das Modul einen Fehler aufweist, und wenn sie blinkt, bedeutet dies, dass das Modul entweder nicht richtig konfiguriert ist oder ein Problem mit der Backplane vorliegt, wenn sie angeschlossen ist. Wenn die Netzwerkstatus-LED aus ist, bedeutet dies, dass das Modul mit keinem Gerät kommuniziert; wenn sie leuchtet, kommuniziert es mit mindestens einem Gerät; wenn sie blinkt, bedeutet dies, dass eine doppelte IP-Adresse erkannt wurde oder ein Timeout-Fehler aufgetreten ist. Auf diese Weise haben wir einige allgemeine Fehlerdiagnosen in der SPS gesehen.
  14. Bei speicherprogrammierbaren Steuerungen (SPS) und verteilten Steuerungssystemen (DCS) ist die Auswahl zwischen festverdrahteten E/A und seriellen E/A aufgrund der Echtzeitnatur dieser Systeme und der damit verbundenen Komplexität industrieller Prozesse besonders kritisch. Im Folgenden erläutere ich die Eigenschaften der einzelnen Systeme in diesen spezifischen Systemen. Festverdrahtete E/A Die wichtigsten Punkte, die wir zu den festverdrahteten E/A besprechen müssen, sind unten aufgeführt. Direkte Verbindung Echtzeitreaktion Verdrahtungskomplexität Begrenzte Flexibilität Zuverlässigkeit Signalintegrität Eignung Sicherheitskritische Anwendungen 1. Direkte Verbindung Festverdrahtete E/A sind direkt mit der SPS oder dem DCS verbunden. Jedes Eingabe- oder Ausgabegerät verfügt über eine dedizierte Leitung, die zurück zum Controller führt. 2. Echtzeitreaktion Diese E/A sind im Allgemeinen für Echtzeitsteuerungsaufgaben ausgelegt. Sie werden insbesondere in zeitkritischen Anwendungen wie Prozesssteuerung, Verriegelungen und Notabschaltungen verwendet, bei denen sofortiges Handeln erforderlich ist. 3. Komplexität der Verdrahtung Bei großen Systemen mit zahlreichen E/A-Punkten können festverdrahtete Lösungen umständlich werden, da umfangreiche Verkabelung und größere Schaltschränke erforderlich sind. 4. Eingeschränkte Flexibilität Das Ändern oder Erweitern eines festverdrahteten Systems kann aufgrund der erforderlichen physischen Neuverdrahtung arbeitsintensiv sein. 5. Zuverlässigkeit Festverdrahtete E/As werden aufgrund ihrer unkomplizierten Punkt-zu-Punkt-Natur oft als zuverlässiger für kritische Aufgaben angesehen, wodurch das Risiko von Kommunikationsfehlern verringert wird. 6. Signalintegrität Die Signalintegrität ist bei festverdrahteten Verbindungen im Vergleich zur seriellen Kommunikation normalerweise besser, insbesondere in Umgebungen mit vielen elektromagnetischen Störungen (EMI). 7. Eignung Am besten geeignet für kleinere Systeme oder in Szenarien, in denen Zuverlässigkeit und Geschwindigkeit von größter Bedeutung sind. 8. Sicherheit Festverdrahtete I/Os werden meist in sicherheitskritischen Anwendungen wie industriellen Prozesssteuerungsanwendungen verwendet, bei denen die Regelkreise kritisch sind. Serielle I/Os Die wichtigsten Punkte, die wir über die seriellen I/Os diskutieren müssen, sind unten aufgeführt. Datenserialisierung Protokollbasierte Kommunikation Skalierbarkeit Netzwerkfähigkeit Datenverarbeitung Entfernung Schwachstelle Kosten Sicherheit 1. Datenserialisierung Serielle I/Os übertragen Daten jeweils ein Bit, normalerweise über eine einzige Datenleitung. Dies steht im Gegensatz zu parallelen Systemen, die mehrere Bits gleichzeitig senden. Wir haben einzelne Drähte für jedes Signal in festverdrahteten I/Os, aber die seriellen I/Os haben im Allgemeinen ein einziges Kabel zum Senden/Empfangen aller Daten. 2. Protokollbasierte Kommunikation Sie verlassen sich normalerweise auf etablierte Industrieprotokolle wie Modbus, PROFIBUS oder Ethernet/IP für die Kommunikation, die den Datenaustausch zwischen Geräten standardisieren. 3. Skalierbarkeit Serielle E/A-Systeme sind im Allgemeinen skalierbarer. Das Hinzufügen weiterer E/A-Punkte erfordert häufig nur die Konfiguration des vorhandenen Netzwerks, ohne dass zusätzliche Kabel zum Controller zurückverlegt werden müssen. 4. Netzwerkfähigkeit Serielle E/A-Systeme können problemlos vernetzt werden und verfügen häufig über integrierte Diagnosefunktionen, was sie vielseitiger macht, aber auch komplexer macht. 5. Datenverarbeitung Serielle E/A-Systeme sind vielseitiger, wenn es um die Datenverarbeitung geht. Sie können komplexere Datentypen, einschließlich reeller Zahlen und Zeichenfolgen, über das Netzwerk übertragen. 6. Entfernung Sie eignen sich besser für Anwendungen, bei denen sich E/A-Punkte weit vom SPS- oder DCS-Controller entfernt befinden. In einigen Fällen benötigen wir möglicherweise spezielle Geräte wie Repeater, Gateways usw. 7. Anfälligkeit Da sie protokollbasiert sind, können serielle E/A-Systeme anfälliger für Probleme wie Datenkollisionen, Latenz und andere netzwerkbezogene Probleme sein. 8. Kosten Während die anfänglichen Einrichtungskosten aufgrund der Netzwerkhardware höher sein können, können die langfristigen Kosten niedriger sein, insbesondere bei Systemen, die häufige Änderungen oder Skalierungen erfordern. 9. Sicherheit Serielle E/As werden nie in sicherheitskritischen Anwendungen verwendet, da eine Beschädigung des Hauptkabels zu einem vollständigen Datenausfall führen kann. Wahl zwischen festverdrahteten und seriellen E/As Die Wahl zwischen den beiden hängt oft von verschiedenen Faktoren ab, wie z. B. Systemgröße, erforderliche Betriebsgeschwindigkeit, Sicherheit, Datenkomplexität und Kostenüberlegungen. Ingenieure führen normalerweise eine detaillierte Analyse durch und verwenden manchmal sogar beide Typen in verschiedenen Abschnitten eines einzelnen SPS- oder DCS-Systems, um die Vorteile beider zu nutzen. Beispielsweise können festverdrahtete E/As für sicherheitskritische Anwendungen verwendet werden, während serielle E/As für Datenerfassungs- und Überwachungsaufgaben verwendet werden können. Vergleich zwischen festverdrahteten E/As und seriellen E/As Die folgende Tabelle zeigt die Unterschiede zwischen festverdrahteten E/As und seriellen E/As. Parameter Festverdrahtete E/As Serielle E/As Verbindungstyp Direkte Punkt-zu-Punkt-Verbindung Protokollbasiert, normalerweise vernetzt Datenübertragungsgeschwindigkeit Im Allgemeinen schnellere Echtzeitverarbeitung Kann aufgrund der Serialisierung langsamer sein (je nach Protokoll) Komplexität Kann aufgrund der Serialisierung langsamer sein (je nach Protokoll) Überschaubarere Komplexität Skalierbarkeit Schwierig und teuer zu skalieren Einfacher und weniger teuer zu skalieren Zuverlässigkeit Höher aufgrund weniger Fehlerpunkte Kann mehr Fehlerpunkte haben Verdrahtung Umfangreiche Verkabelung erforderlich Weniger Verkabelung, oft nur eine einzige Datenleitung Signalintegrität Besser in Umgebungen mit hoher elektromagnetischer Störung Kann anfällig für elektromagnetische Störungen sein Unterstützte Datentypen Im Allgemeinen 4-20 mA Analogsignale, 24 V DC für Digitalsignale. Dies kann aufgrund der Netzwerkhardware höher sein. Entfernung Geeignet für kürzere Entfernungen Kann längere Entfernungen bewältigen. Kosten (Anfangskosten) Niedriger für kleine Systeme und höher für größere Systeme Hoch (hängt vom Protokoll ab) Kosten (Wartung) Höher aufgrund der Komplexität der Fehlerbehebung Im Allgemeinen niedriger. Flexibilität Begrenzt; schwer zu ändern Sehr flexibel; leicht zu ändern. Redundanz Schwierig und teuer zu implementieren Einfacher und weniger kostspielig zu implementieren. Sicherheitsanwendungen Häufig für sicherheitskritische Aufgaben verwendet Weniger häufig für sicherheitskritische Aufgaben verwendet. Netzwerkdiagnose Begrenzt oder nicht vorhanden Häufig integriert. Wenn es um die Sicherheit in SPS- und DCS-Systemen geht, haben festverdrahtete E/A und serielle E/A unterschiedliche Eigenschaften, die die Sicherheit eines industriellen Prozesses entweder verbessern oder potenziell gefährden können. Nachfolgend finden Sie eine Vergleichstabelle, die sich ausschließlich auf den Sicherheitsaspekt dieser beiden Arten von E/A-Systemen konzentriert. Sicherheitsaspekt Festverdrahtete E/A Serielle E/A Zuverlässigkeit Generell höhere Zuverlässigkeit aufgrund direkter Verbindungen und weniger Fehlerquellen. Protokoll- und netzwerkbasiert, was zu mehr potenziellen Fehlerquellen führt. Reaktionsfähigkeit in Echtzeit Hervorragend für Echtzeitreaktionen geeignet, wird häufig bei Notabschaltungen und Sicherheitsverriegelungen verwendet. Kann aufgrund von Netzwerküberlastung oder Protokollbeschränkungen zu Latenzen führen, was sie für sofortige Maßnahmen weniger ideal macht. Systemkomplexität Eine geringere Komplexität erleichtert im Allgemeinen die Identifizierung und Behebung von Sicherheitsproblemen. Die Komplexität von Netzwerken und Protokollen kann es schwierig machen, die Grundursache von Sicherheitsbedenken zu identifizieren. Signalintegrität Weniger anfällig für elektromagnetische Störungen (EMI), wodurch Signalqualität und -zuverlässigkeit verbessert werden. Potenziell anfälliger für EMI und Signalverschlechterung, was die Sicherheit beeinträchtigen könnte. Datenintegrität Da es sich im Allgemeinen um Punkt-zu-Punkt-Verbindungen handelt, ist eine Datenbeschädigung weniger wahrscheinlich. Anfälliger für Datenintegritätsprobleme aufgrund von Netzwerken, wodurch das Risiko sicherheitsrelevanter Fehler steigt. Menschliches Versagen Aufgrund der Einfachheit weniger anfällig für Konfigurationsfehler, die die Sicherheit beeinträchtigen. Größere Wahrscheinlichkeit menschlicher Fehler während der Konfiguration oder Wartung, die die Systemsicherheit beeinträchtigen. Notsituationen Aufgrund der schnellen Reaktionszeit oft die bevorzugte Wahl für sicherheitskritische Systeme wie Notabschaltungen. Aufgrund möglicher Latenz und anderer netzwerkbezogener Probleme normalerweise nicht für Aufgaben mit sofortiger Wirkung verwendet. Sicherheit Geringere Anfälligkeit für Cyberangriffe, da sie im Allgemeinen nicht vernetzt sind. Aufgrund der Vernetzung anfälliger für Cyberbedrohungen, die die Sicherheit gefährden können. Eingebaute Sicherheitsfunktionen Sicherheitsfunktionen sind oft fest verdrahtet und unkompliziert, was sie robust macht. Verfügen möglicherweise über eingebaute Sicherheitsprotokolle, die jedoch durch Netzwerkprobleme beeinträchtigt werden können. Zertifizierungen Aufgrund der geringeren Komplexität und höheren Zuverlässigkeit einfacher für sicherheitskritische Anwendungen zu zertifizieren. Aufgrund der Netzwerk- und Protokollkomplexität sind möglicherweise umfangreichere Tests und Zertifizierungen erforderlich. Bei der Wahl zwischen festverdrahteten und seriellen E/A-Geräten aus Sicherheitsgründen fällt die Wahl bei kritischen Sicherheitsanwendungen häufig auf festverdrahtete E/A-Geräte, da diese über eine hohe Zuverlässigkeit und sofortige Reaktionsfähigkeit verfügen. Die Gesamtsicherheit eines Systems wird jedoch nicht nur durch die Art der verwendeten E/A-Geräte bestimmt, sondern auch durch Faktoren wie Design, Wartungspraktiken und die Kompetenz des Betriebspersonals.
  15. Wir alle wissen, wie wichtig SPSen im heutigen Automatisierungszeitalter sind. Es gibt so viele beliebte SPS-Marken, z. B. Siemens, Yokogawa, AB, ABB, GE usw. Auf diesen SPS-Steuerungen sind so viele LED-Anzeigen vorhanden, um die verschiedenen Zustände der Steuerung zu verstehen, aber um den Status zu kennen, müssen wir zuerst die Bedeutung dieser Anzeigen verstehen. LED-Anzeigen von SPSen von GE In diesem Artikel werden wir die LED-Anzeigen einer der GE-SPSen verstehen, insbesondere der CPL-Serie. Außerdem werden wir die Funktionsweise der verschiedenen auf der Steuerung verfügbaren Ports verstehen. In diesem Artikel werden wir die LED-Anzeigen des CPL-410-Modells der SPS von GE erklären. Über das Modell CPL 410 Dieses PAC-System (Programmable Automation Controller) mit der Bezeichnung RX3iCPL410 verfügt über einen integrierten Linux-Server und unterstützt Programmiersprachen wie Kontaktplanlogik, strukturierten Text, Funktionsblockdiagramm und C. Enthält 64 MB konfigurierbaren Daten- und Programmspeicher, 32 KB für diskrete Ein- und Ausgänge und 32 KB für analoge Ein- und Ausgänge. Massenspeicher wird auch für den Datenaustausch unterstützt. Es unterstützt bis zu 768 Programmblöcke, wobei ein Block 128 KB groß ist. Außerdem werden 4 unabhängige Ethernet-LANs (10\100\1000) unterstützt. Bis zu 32 Modbus TCP IP-Clients sind zulässig, 48 SRTP (Service Request Transport Protocol) können gleichzeitig ausgeführt werden und 16 gleichzeitige Modbus TCP IP-Serververbindungen. Diese SPS kann Betriebstemperaturen von bis zu -40 bis 70 Grad C bewältigen, ist ein Gerät zur DIN-Schienenmontage, unterstützt eine 18-30 VDC-Versorgung und benötigt keine spezielle Stromversorgung. Sie ist mit fünf Ethernet-Ports an der Vorderseite und einem RJ45-Anschluss an der Unterseite ausgestattet. Ein OLED-Display ist verfügbar, um verschiedene Zustände der CPU zu navigieren und zu überwachen, außerdem sind viele Schalter mit LED-Anzeigen verfügbar, um den Status zu überwachen und die Einstellungen durchzugehen. Wir können die CPU mit der Proficy Machine Edition-Software programmieren und konfigurieren, dieses System kann problemlos ein redundantes System mit einer Umschaltzeit von 100 ms zur sekundären SPS erstellen. Okay, jetzt werden wir die LED-Anzeigen für dieses spezielle GE-SPS-Modell CPL-410 besprechen. Im folgenden Bild können wir viele Anzeigen und Kommunikationsanschlüsse sehen, in Abb. 1 ist die SPS ohne Verbindungen und in Abb. 2 mit laufenden Kommunikationskanälen. Abb. 1 (links) und Abb. 2 (rechts) Beginnen wir also in der oberen rechten Ecke. µSD: In diesen Steckplatz wird eine Micro-SD-Karte eingesetzt. Die Micro-SD-Karte wird für externe Speicherung oder zum Laden von Programmen verwendet. Sie verfügt über eine Schutzabdeckung, um Schäden zu vermeiden. DISP: Sie können auf die Menünavigation des OLED-Displays zugreifen und je nach Bedarf Änderungen vornehmen. Mit dieser Schaltfläche können Sie auf LAN-Einstellungen, Steuerungsstatus, E/A-Status, Geräteinformationen, Linux-Betriebssystemeinstellungen, Redundanzinformationen und Redundanzbefehle zugreifen. Wir können die konfigurierte IP jeder LAN-Verbindung überprüfen. SEL: Mit dieser Anzeige- und Schaltfläche können Sie die Auswahl für jede Einstellungsänderung steuern und je nach Bedarf durch die Optionen navigieren. RUN: Wird verwendet, um Befehle an die SPS auszuführen. Es aktiviert das OLED-Menü, um den Modus „RUN aktiviert“ oder „RUN deaktiviert“ von der SPS auszuwählen. Im Run-Zustand leuchtet die grüne Anzeige direkt unter der Run-Schaltfläche. STOP: Wird verwendet, um einen Stoppbefehl an die SPS zu senden. Sie können mit dieser Schaltfläche für die SPS „Stop aktiviert“ oder „Stop deaktiviert“ auswählen. PHY PRES: TPM (Trusted Platform Module) Anzeige der physischen Anwesenheit mit Auswahl, dies lässt das grüne Licht bei einwandfreiem Zustand leuchten. SSD: Solid State Disk Activity, grüne Anzeige bei einwandfreiem Zustand. Dies dient zur Überprüfung der Funktionstüchtigkeit der Solid State Disk oder des Laufwerks, auf dem Daten gespeichert werden. TEMP: Dies zeigt an, dass der Controller eine Übertemperatur festgestellt hat. Es wird eine gelbe LED-Anzeige angezeigt, wenn die Temperatur den Grenzwert überschreitet. OK: Dieses Signal zeigt an, dass die CPU in Ordnung und in einwandfreiem Zustand ist. OE: Ausgang aktiviert, grüne Anzeige, wenn er in Ordnung ist. FRC: Wenn wir Kraft auf ein Modul oder Gerät anwenden, leuchtet eine gelbe Anzeige, die anzeigt, dass das Kraftsignal aktiviert ist. FLT: Diese Anzeige leuchtet rot, wenn ein Systemfehler vorliegt. Ein Systemfehler tritt bei einem Problem mit einem Modul auf. IO: Diese LED zeigt den Funktionstüchtigkeitsstatus des IO-Netzwerks an. Die grüne Anzeige leuchtet bei einwandfreiem Zustand. RACT: Ein redundantes System ist ein Muss, um Prozessausfälle bei Problemen mit dem primären Steuersystem zu vermeiden. Außerdem muss das redundante System genau überwacht werden, um die Verfügbarkeit jederzeit sicherzustellen. Die RACT-LED-Anzeige zeigt an, dass die Redundanz aktiv ist oder die redundante Einheit aktiv ist. Die Anzeige leuchtet grün, wenn redundante Geräte aktiv sind. Diese LED wird aktiviert, sobald der Hot Stand durch die redundante CPU bereit ist. RBOK: Dies zeigt an, dass die redundante Backup-Einheit in Ordnung ist. Die Anzeige leuchtet grün. GPOK: Nachdem Linux erfolgreich gebootet und die CPU neu gestartet wurde, blinkt diese LED-Anzeige grün und zeigt damit an, dass der allgemeine Zweck in Ordnung ist, d. h. ein Betriebssystem in einwandfreiem Zustand oder bereit für Benutzeranmeldungen, oder wir können sagen, dass Linux ausgeführt wird. PWR: Strom ist EIN, außerdem können wir den Controller mit dieser Taste zurücksetzen. Wir müssen die PWR-Taste gedrückt halten, um die SPS zurückzusetzen. In einwandfreiem Zustand leuchtet sie grün. Kommunikationsanschlüsse in der SPS Lassen Sie uns etwas über Kommunikationsanschlüsse erfahren: USB1: Dieser Anschluss ist Linux zugewiesen und kann verwendet werden, um auf Tastaturen, Memory Sticks, USB-Sticks und andere Speichergeräte mit ordnungsgemäß installierten Treibern zuzugreifen. USB2: Dieser Anschluss ist der Controller-Laufzeit PACS (Programmable Automation Controller) zugewiesen. LAN: LAN-Anschlüsse werden verwendet, um Anlagenkommunikationspakete und Hot-Standby-Redundanz zu konfigurieren, wobei zwei LAN3-Gruppenanschlüsse zu diesem Zweck verwendet werden. Sie bieten eine Hochgeschwindigkeits-Datensynchronisierungsverbindung zwischen den beiden CPUs. Verbinden Sie den oberen LAN3-Port der primären CPU mit dem oberen LAN3-Port der sekundären CPU und verbinden Sie den unteren LAN3-Port der primären CPU mit dem unteren LAN3-Port der sekundären CPU. LAN auf der Vorderseite: -LAN-1: Dieser Port ist nicht umschaltbar und wird mit dem obersten RJ45-Anschluss verbunden. -LAN-2: Wird mit den beiden mittleren RJ45-Anschlüssen verbunden und kann intern umgeschaltet werden. -LAN-3: Wird mit den beiden unteren RJ45-Anschlüssen verbunden. Diese Ports können auch intern umgeschaltet werden. Dieser Port wird verwendet, um dem System Hot-Standby-Redundanz bereitzustellen. LAN auf der Unterseite: -RJ45: Dieser Port unterstützt das Serial IO-Protokoll und ist auch dem Linux-System selbst zugewiesen. Die Geschwindigkeit und die Integrität der Verbindung des LAN-Ports sind für eine ordnungsgemäße Kommunikation von entscheidender Bedeutung. Sehen wir uns die oberen und unteren Anzeigen des LAN-Ports und die Bedeutung dieser Anzeigen an. LAN-Ports-Status (obere Anzeige): Grüne Anzeige: Die entsprechende Verbindung wurde hergestellt, Blinkendes Grün: Datenverkehr erkannt, Aus, Keine Verbindung. LAN-Ports-Geschwindigkeit (untere Anzeige): Grün Ein: Datengeschwindigkeit ist 1 Gbps oder 100 Mbps, Aus: Netzwerkdatengeschwindigkeit ist 10 Mbps Siehe die folgende Abbildung, um die Anzeigen für LAN-Ports zu verstehen. Abb. 3 Weitere verfügbare Ports auf der Unterseite der SPS RJ45: Dies ist ein serieller COM-Port, an den wir einen Kommunikationskanal mit einem RJ45-Stecker anschließen können. Wir können diesen Port für eine direkte Ethernet-Verbindung verwenden oder wir können Modbus oder einen seriellen Kommunikationskanal mithilfe eines TCP-IP-Konverters (Seriell zu Ethernet) kommunizieren. Bitte beachten Sie, dass der RJ-Stecker mit 8 Pins ausgestattet ist und mit Drähten verbunden wird, die in einem Twisted Pair kombiniert sind. Dieses Twisted Pair trägt dazu bei, Übersprechen zu verringern und elektromagnetische Störungen zu beseitigen. Die folgenden Anschlüsse sind auf der Unterseite der SPS verfügbar (Abb. 4) Abb. 4 Display-Anschluss: Dies ist ein Video-Display-Anschluss. Wir können diesen Anschluss verwenden, um Video und Audio gleichzeitig oder separat zu übertragen. DP kann Signale in einer Geschwindigkeit von 144 Hz bis 4k übertragen. EFA: Dies ist ein IICS-Cloud-Anschluss (Informatica Intelligent Cloud Services). Dies ist ein Cloud-basierter Dienst für Integration und Datenverwaltung. Mit dieser Plattform können Sie Verbindungen konfigurieren, Benutzer erstellen, Aktivitäten oder Aufgaben ausführen, planen und überwachen. EPCSS: Energy Pack Control & Status Signal, dies ist ein Klemmenblock mit 5 Verdrahtungsklemmen. Obwohl EPCSS optional ist, ermöglicht es dem SPS-Controller, seinen aktuellen Status bei Stromausfall zu speichern. 24DC IN: Dreiadriger Klemmenblock für 24-V-Gleichstromversorgung der SPS. Schauen wir uns die Zusammenfassung aller LED-Anzeigen in Abb. 5 an. Abb. 5 Das war also ein grundlegendes Verständnis der LED-Anzeigen und verschiedener Ports der SPS von GE.
  16. Bei der SPS-Programmierung gibt es fünf Arten von Sprachen: Kontaktplanlogik, Anweisungsliste, strukturierter Text, Funktionsblockdiagramm und sequentielles Flussdiagramm. Jede Art von SPS-Sprache hat ihre eigenen Vor- und Nachteile. Während einige Sprachen optisch gut aussehen und sich leicht Fehler beheben lassen, verbrauchen andere Sprachen weniger Speicher und haben eine höhere Verarbeitungsgeschwindigkeit. Eine der am häufigsten verwendeten SPS-Sprachen ist die Anweisungsliste. Sie ist nicht so bekannt wie andere Sprachen und wird aufgrund veralteter Technologie nur von wenigen SPS-Programmierern verwendet, ist aber dennoch in fast allen Softwareprogrammen von SPS-Herstellern verfügbar. In diesem Beitrag werden wir uns das Konzept der Anweisungslistensprache in der SPS ansehen. Was ist eine Anweisungsliste? Ein in der Anweisungslistensprache geschriebenes SPS-Programm besteht aus einer Reihe von Anweisungen, die vom Logikcontroller nacheinander ausgeführt werden. Jeder Befehl wird durch eine einzelne Programmzeile dargestellt und besteht aus den folgenden Komponenten: Zeilennummer Aktueller Wert (nur im Onlinemodus) Befehlsoperator Operand(en) Optionaler Kommentar Wenn Sie schon einmal die traditionelle Assemblersprache in Mikroprozessoren gesehen haben, können Sie sich mit dieser Sprache leicht identifizieren. Sie kann auch als eine Mischung aus Kontaktplanlogik und strukturiertem Text bezeichnet werden. Kontaktplanlogik in dem Sinne, dass Befehle linear geschrieben werden müssen, und strukturierter Text in dem Sinne, dass Mnemonik in Worten verwendet wird. Weitere Informationen finden Sie im folgenden Bild. Das erste Bild zeigt eine in Kontaktplansprache geschriebene SPS-Logik. Die Logik lautet: %M3 wird eingeschaltet, wenn %M0 eingeschaltet ist und %M1 eingeschaltet ist oder %M2 eingeschaltet ist. Sehen Sie sich nun die folgende Logik für die Befehlsliste an. Sie können sehen, dass jede Zeile nur eine Komponente hat – die erste Zeile hat %M0 und die zweite Zeile hat %M1, das eine UND-Logik mit der nächsten Zeile ausführt. In der dritten Zeile führt %M2 eine ODER-Logik mit der vorherigen Zeile aus, die vierte Zeile schließt die Befehle und die fünfte Zeile schaltet den Ausgang %M3 ein. Es handelt sich also um eine Darstellung sowohl der Kontaktplanlogik als auch des strukturierten Textes. Komponenten der Anweisungsliste Die Hauptkomponenten einer SPS-Anweisungsliste sind unten aufgeführt. Zeilennummer – Vierstellige Zeilennummern werden generiert, wenn Sie eine neue Programmzeile erstellen, und werden automatisch von der Software verwaltet. Sie sind in der obigen Abbildung als 0000 bis 0004 zu sehen. Aktuelle Werte – Im Onlinemodus können Sie die aktuellen Werte jedes Elements sehen, wie in der folgenden Abbildung gezeigt. Während der Online-Animation wird dies im folgenden Bild als wahr oder falsch angezeigt. Anweisungsoperatoren – Dieser Operator ist eine Art Befehl zum Ausführen einer Anweisung. Er kann auch als Eingabe- und Ausgabeseite der geschriebenen Logik bezeichnet werden. Es handelt sich um ein mnemonisches Symbol, das verwendet wird, um die Art des Befehls zu bezeichnen, der auf der Ausgabeseite ausgeführt werden soll, und auch, wie die Ausgabeseite ihn ausführen wird. Im obigen Bild beispielsweise steht LD für „Load“, wodurch die Ausführung durch Laden des Werts des ersten Bits gestartet wird, AND/OR bezeichnet logische Anweisungen und ST bezeichnet das Speichern von Ergebniswerten im Zielbit. Kommentar – Dies ist optional. Der Programmierer kann damit Kommentare schreiben, die ihm bei der einfachen Fehlerbehebung der Logik helfen. Anweisungsliste bei der SPS-Programmierung Einige der Anweisungslisten der SPS sind unten aufgeführt. LD – Lädt den Booleschen Wert des Operanden in den Akkumulator. LDN – Lädt den negierten Booleschen Wert des Operanden in den Akkumulator. LDR – Lädt den Booleschen Wert des Operanden in den Akkumulator, wenn sich der Wert von 0 auf 1 ändert (steigende Flanke). LDF – Lädt den Booleschen Wert des Operanden in den Akkumulator, wenn sich der Wert von 1 auf 0 ändert (fallende Flanke). AND – Führt eine UND-Operation zwischen dem vorherigen Ergebnis und dem aktuellen Operanden aus. ANDN – Führt eine UND-Operation zwischen dem vorherigen Ergebnis und der Inversen des aktuellen Operanden aus. ANDR – Führt eine UND-Operation zwischen dem vorherigen Ergebnis und der steigenden Flanke des aktuellen Operanden aus. ANDF – Führt eine UND-Operation zwischen dem vorherigen Ergebnis und der fallenden Flanke des aktuellen Operanden aus. OR – Führt eine ODER-Operation zwischen dem vorherigen Ergebnis und dem aktuellen Operanden aus. NOT – Führt die Inversoperation des Operanden aus. ST – Nimmt den Wert des generierten Ergebnisses. STN – Nimmt den Inversen des generierten Ergebnisses. S – Führt die Setzoperation des Operanden aus. R – Führt die Rücksetzoperation des Operanden aus. Abgesehen davon gibt es auch andere Anweisungen wie Sprung, Unterprogramm, Ende, UND mit, ODER mit usw., je nach SPS-Hersteller. Auf diese Weise haben wir das Konzept der Anweisungsliste in der SPS-Programmierung kennengelernt.
  17. Bei jeder PLC ist es wichtig zu verstehen, wie die Anweisungen geschrieben wurden. Das grundlegende Verständnis ist in allen Sprachen gleich; der Unterschied liegt in der Darstellung. Wenn wir die Anweisungen verstehen, können wir mit jeder Art von PLC-Software arbeiten. Eine der am häufigsten verwendeten Marken in der Automatisierung ist Rockwell. Es gibt viele verschiedene Arten von Anweisungen für die Programmierung. Dabei gibt es zwei Anweisungen, die in jeder PLC-Logik am häufigsten benötigt werden. Sie sind – einmalige steigende Flanke und einmalige fallende Flanke. In diesem Beitrag werden wir die Funktionsweise dieser beiden Anweisungen sehen. Einmalige steigende Flanke (OSR) Bei der PLC-Programmierung haben Sie sicherlich von zwei gängigen Objekttypen gehört – positive Spitze und negative Spitze. Eine positive Spitze bedeutet, dass sie nur dann ausgelöst wird, wenn die Variable von 0 auf 1 wechselt. Die Ausgabe dieses Objekts erfolgt in Form eines Triggerimpulses. Anstelle des Variablenzustands gibt es jetzt in PLCs eine zusätzliche Anweisung, mit der Sie die Triggerausgabe der gesamten Sprosse erhalten. Das bedeutet, dass, wenn die gesamte Sprosse oder Bedingung ihren Zustand von 0 auf 1 ändert, der Ausgang in einem impulsartigen Triggerzustand kommt. Dies ist eine steigende Triggeranweisung in der SPS. In der Rockwell-SPS wird dies als einmalige steigende Flankenanweisung bezeichnet. Zum Verständnis siehe das folgende Bild. Wie Sie sehen können, nimmt die Anweisung in ihrer Bedingung zwei Eingaben an. Beide sind als NO-Logik geschrieben; das heißt, wenn beide eingeschaltet sind, ist nur die Bedingung erfüllt. Wenn dies geschieht, enthält die Anweisung zwei Variablen – Speicherbit und Ausgabebit. Die Funktion des Speicherbits besteht darin, den Zustand der Bedingung zu speichern. Wenn beide Bits eingeschaltet werden und die Bedingung von 0 auf 1 wechselt, wird das Speicherbit als 1 aktualisiert und gibt diesen Wert an das Ausgabebit weiter. Das Ausgabebit wird für eine sehr kurze Zeitdauer, in Millisekunden, eingeschaltet. Diese Impulsausgabe kann dann vom SPS-Programmierer in seiner Logik verwendet werden. Solange die Bedingung erfüllt ist, ändert sich das Speicherbit nicht. Sobald die Bedingung falsch wird, wird das Speicherbit mit 0 aktualisiert. Wenn die Bedingung wieder wahr wird, wird das Ausgabebit als Impuls eingeschaltet. Dies zeigt, dass dieser Befehl sehr nützlich ist, wenn Sie einen Ausgang nur durch einen Impuls einschalten möchten, und dieser Impuls darf nur generiert werden, wenn die gesamte Bedingung wahr ist, und nicht, wenn eine einzelne Variable wahr wird. One Shot Falling Edge (OSF) Nehmen wir nun ein Beispiel, bei dem eine Aktion erforderlich ist, wenn das System angehalten wird. Dies bedeutet, dass eine Aktion ausgeführt werden muss, wenn die Bedingung von wahr zu falsch wird. Und die Aktion muss als Triggertyp ausgeführt werden; sie darf nicht kontinuierlich eingeschaltet sein. Dies wird als negative Spitze bezeichnet. Um diese Funktion auszuführen, muss entweder eine negative Spitze von der Variablen oder die negative Spitze von der gesamten Bedingung genommen werden, wie zuvor besprochen. Für den zweiten Typ wird in Rockwell PLC der One-Shot-Falling-Edge-Befehl verwendet. Siehe das obige Bild. Es gibt 2 NO-Bedingungen in der Sprosse, und der Ausgang dieser Sprosse ist mit dem OSF-Block verbunden. Der Block hat zwei Bits – Speicher und Ausgang. Das Speicherbit wird verwendet, um den Zustand der Sprosse zu speichern. Wenn der Zustand wahr wird, wird das Speicherbit auf 1 aktualisiert. Wenn der Zustand von wahr zu falsch wird, wird das Speicherbit auf 0 aktualisiert und das Ausgangsbit wird in Impulsform 1. Der Zyklus wiederholt sich erneut, wenn der Zustand erneut wahr wird. Das Ausgangsbit ist in Impulsform und ist für eine sehr kurze Zeit, in Millisekunden, eingeschaltet. Dies zeigt, dass dieser Befehl sehr nützlich ist, wenn Sie einen Ausgang nur durch einen Impuls einschalten möchten, und dieser Impuls darf nur generiert werden, wenn der gesamte Zustand falsch ist, und nicht, wenn eine einzelne Variable falsch wird. Auf diese Weise haben wir die Anweisungen für einmalige steigende Flanke und einmalige fallende Flanke in Rockwell PLC gesehen.
  18. In diesem Artikel sprechen wir über dezentrale Peripheriegeräte oder verteilte IOs. Wir werden uns nicht mit dem TIA-Portal befassen, sondern nur diskutieren, was verteilte IOs sind und warum wir sie brauchen. Inhalt: Was sind externe Peripheriegeräte oder verteilte IOs? Ein einfaches Beispiel, um die Notwendigkeit verteilter IOs zu erklären. o 1 Maschine mit einer SPS auf der Maschine. o 1 Maschine mit der SPS ist weit weg an einem sicheren Ort. o 2 oder mehr Maschinen mit derselben SPS o eine bereits installierte Maschine mit unterschiedlichen IO-Modulen (GSD-Dateien) Fazit Externe Peripheriegeräte Verteilte IO-Geräte sind Geräte, die in Automatisierungs- und Steuerungssystemen verwendet werden. Sie fungieren als Vermittler zwischen der zentralen Steuerung (SPS) und verschiedenen Sensoren und Aktoren, die in Ihrem Automatisierungsprozess installiert sind. Stellen Sie sie sich als Boten vor, die Informationen von Sensoren sammeln und Befehle an Aktoren übermitteln. Verteilte IO Dieser verteilte Ansatz vereinfacht die Verkabelung. Anstatt alle Kabel direkt zur SPS zu führen, installieren Sie diese verteilten IO-Geräte auf der Maschinenseite. Sie sammeln Informationen von Sensoren (wie Temperatur oder Bewegung) und senden Befehle an Aktuatoren (wie Motoren oder Ventile). Dadurch funktioniert das gesamte System reibungslos, mit weniger Verkabelung, und es ist auch einfacher zu verwalten und zu erweitern, was zu einer verbesserten Systemflexibilität führt. Im nächsten Abschnitt werden wir anhand einiger Beispiele die Idee und die Notwendigkeit der verteilten IO auf einfachere Weise erklären. Einfaches Beispiel zur Erklärung der Notwendigkeit der verteilten IO Nehmen wir an, wir haben eine Produktionsmaschine, die über eine SPS gesteuert wird, egal welchen Typs, siehe Bild 1. Bild 1. Produktionsmaschine, die über eine SPS gesteuert wird. Wie Sie sehen, ist die SPS, die die Maschine steuert, vor Ort auf der Maschinenseite installiert. Wie wir wissen, sind SPS für den Betrieb in rauen Umgebungen ausgelegt. Daher ist es keine schlechte Idee, die SPS auf der Maschinenseite zu installieren, da sie den unterschiedlichen Betriebsbedingungen der Maschine standhalten kann, sei es hohe Umgebungstemperatur, Feuchtigkeit, Vibration usw. Was ist nun, wenn wir unseren Prozess ändern und die Kontrolle über die Maschine erhöhen müssen, d. h. wir müssen die Anzahl der Ein- und Ausgänge der Maschine erhöhen? Dies bedeutet, dass wir eine größere SPS mit einer höheren Anzahl von IOs benötigen oder zumindest IO-Module zur aktuellen SPS hinzufügen müssen. Sie sollten wissen, dass das Hinzufügen zusätzlicher IO-Module zur aktuellen SPS von der SPS abhängt, die Sie für Ihr Projekt ausgewählt haben, da jede SPS eine maximale Anzahl von IOs hat, die Sie der SPS hinzufügen können. Wenn also die zusätzliche Anzahl von IOs, die wir benötigen, die maximale Anzahl von IOs übersteigt, die ich der SPS hinzufügen kann, muss ich eine größere SPS besorgen, und das bedeutet, dass ich Ihre Software für die neue SPS neu schreiben oder zumindest Ihr Projekt migrieren muss. Siehe Bild 2. Bild 2. Größere SPS für neue Maschinenerweiterung. Also mussten wir mit der neuen Erweiterung eine größere SPS besorgen. JETZT haben wir gesagt, dass die SPS vor Ort installiert werden kann und für raue Umgebungen ausgelegt ist, aber normalerweise wird das nicht gemacht, und normalerweise wird die SPS weit weg an einem gut klimatisierten und geschützten Ort wie einem MCC-Raum installiert. Das bedeutet, dass jedes Eingangs- oder Ausgangssignal unseres Prozesses von der Maschinenseite mit der SPS im MCC-Raum verbunden werden muss, also wenn ich 100 IO-Signale habe, muss ich 100 Signalkabel zwischen der Maschine und der SPS ziehen. Und wenn ich in Zukunft eine Erweiterung vornehmen muss, muss ich die zusätzlichen neuen Kabel verlegen. Siehe Bild 3. Bild 3. Installation der SPS im MCC-Raum. Wie Sie sehen, müssen wir jetzt für jedes IO-Signal, das wir in unserem Prozess haben, ein Kabel zwischen der SPS und der Maschine verlegen. Dies kann bei einer kleinen Maschine mit einer geringen Anzahl von IOs akzeptabel sein, aber nicht so sehr bei einem großen Prozess mit vielen IOs. Da dies das Verlegen einer großen Anzahl von Kabeln beinhaltet, erhöht dies die Kosten dieses Prozesses und führt auch zu neuen Problemen, die berücksichtigt werden müssen, wie Kabelkanäle, EMV-Kompatibilität, Kabelkanäle und weitere zusätzliche Überlegungen. Und hier werden die externen Peripheriegeräte oder verteilten IO-Module sehr nützlich. Siehe Bild 4. Bild 4. Verwenden eines verteilten IO-Geräts Ein verteiltes IO-Modul ist einfach ein IO-Modul, das auf der Maschinenseite installiert werden kann, um alle Eingaben des Prozesses zu sammeln und an die SPS zu senden. Außerdem erhält es das Ausgabesignal von der SPS und sendet es an zugehörige Betätigungsgeräte. Wie Sie auf dem Bild sehen können, wird die Verbindung zwischen der SPS und der Maschine jetzt hergestellt, indem ein Kommunikationskabel zwischen dem verteilten IO-Gerät und der SPS gezogen wird. Verteilte IO-Geräte verfügen über viele Kommunikationsmöglichkeiten. In unserem Beispiel haben wir eine Profinet-Kommunikation angenommen, daher die grüne Farbe. Die Verwendung eines Distributed-IO-Geräts bietet Ihnen den Vorteil, dass Sie Ihre Prozess-IOs erweitern können, ohne eine größere SPS installieren zu müssen. Sie fügen einfach die neuen IOs zu Ihrem Gerät hinzu und die Kommunikation zwischen der SPS bleibt über Profinet oder eine andere Kommunikationsmethode dieselbe. Sie können sogar eine komplett neue Maschine mit derselben SPS steuern, Sie müssen nur ein neues Kommunikationskabel von der SPS zur neuen Maschine ziehen. Siehe Bild 5. Bild 5. Steuerung von 2 Maschinen mit derselben SPS. Wie Sie sehen, würde ich zur Steuerung einer komplett neuen Maschine mit meiner SPS nur ein zusätzliches Kommunikationskabel von der SPS und der Maschine benötigen. Natürlich müssen Sie sicherstellen, dass Ihre SPS-Funktionen die Verarbeitung und Steuerung der beiden Maschinen bewältigen können. Und noch etwas: Distributed-IOs können mit verschiedenen SPS-Marken verwendet werden, d. h. ich kann verschiedene Marken von Distributed-IOs mit einer Siemens-SPS verwenden. Siehe Bild 6. Bild 6. Verwendung von Distributed IOs verschiedener Marken. Wie Sie im Bild sehen können, verwendet eine Maschine ein Distributed IO-Gerät von SIEMENS und die andere Maschine ein Distributed IO-Gerät von Schneider und beide werden über dieselbe SPS gesteuert. Fazit Distributed IO-Geräte werden verwendet, um die Reichweite eines Steuerungssystems zu erweitern und den Anschluss einer großen Anzahl von Sensoren und Aktoren über große Entfernungen zu ermöglichen. Distributed IOs reduzieren den Verkabelungsaufwand im Vergleich zu einer herkömmlichen Signalverbindung zwischen Maschine und SPS. In einem Distributed IO-System können problemlos Geräte hinzugefügt oder entfernt werden, was es hochgradig skalierbar und zuverlässig macht.
  19. In this article, we will discuss yet another way of communicating between two PLCs, whether they are in the same project or two different SPS projects. In this article, we will talk about the PUT command in Siemens SPS which can be used to send or put data from one SPS into a second SPS. What is the PUT Command? In general, the PUT command is a TIA Portal built-in function block FB that is used exclusively for S7-Family CPUs to put data from a local SPS to a remote partner SPS. When using the PUT command, I would have two PLCs, where I need to send data from one SPS called local to another SPS called partner. Some configurations must be done to the partner SPS, to enable it to be accessed by the other SPS. In addition to a Profinet connection between the PLCs. We will create a sample project to show how to use the PUT command. PUT Command in Siemens SPS We will assume a sample project where we have two PLCs in the same project, PLC_1 which will act as the local SPS and PLC_2 which is the partner SPS. We want to write an integer from the local to the partner SPS. Sample SPS project First, let’s create a new project and add the two PLCs. See picture 1. picture 1. Add the local and partner PLCs. What I need now is to configure PLC_2, the one that will receive the data to be able to receive this data. And PLC_1 will be used with the PUT command. The 1st thing I need to do is allow the access of the PUT command to the PLC_2 that will receive the data. See picture 2. picture 2. Allow PUT command access. As you see from the picture, we allow the PUT command to access the PLC_2 from the Properties of the PLC_2, in the Protection and Security option, click on the “Permit access with PUT/GET communication from the remote partner” Now, I am allowed to put data from any remote partner to PLC_2 using the PUT command. The 2nd thing is to prepare a space or memory in PLC_2 to the data that will be put in it. We will assume that we want to PUT an integer value into that SPS, so I will prepare a memory according to that. See picture 3. picture 3. Prepare area to receive data. And that is it; this is the entire configuration you need to prepare from the PLC_2 side to be able to receive data through PUT command. Next, we set up the data being sent from the PLC_1. We will create a data block to hold the data sent to PLC_2 and inside this data block, we will define an integer tag to be PUT into PLC_2. See picture 4. picture 4. Create a data block to hold the sent data. We defined an integer tag “SendMeToPLC_2” that we want to send to PLC_2. See picture 5. picture 5. Define the data to be sent. Note that, for PLC_1, we don’t need to allow the access with PUT command option. We activate this feature in the SPS that will receive data, not the SPS that will send it. Now, let’s use the PUT command in our programming, in the main OB1 we will drag and drop the PUT command FB. See picture 6. picture 6. Add the PUT command to OB1. Note that, the PUT command is found in the S7 communication folder, as it is an exclusive function for S7 family SPS, because it involves safety issues. Remember in picture 2 when we allowed the use of PUT command it was in the Security and Protection attribute of the SPS properties as it is related to SPS safety and protection. The PUT command is essentially a function block, so when adding it to my logic I will be asked to create a data instance. See picture 7. picture 7. Create a data instance for the PUT command. After you press OK, the PUT command is now added to your SPS logic. See picture 8. picture 8. PUT command After we added the PUT command, now we need to configure it, we have two parameters to configure for the PUT command. The connection between PLCs The block that will be PUT from PLC_1 to PLC_2 To go to the configuration view of the PUT command, press the small blue icon shown in last picture. In the connection parameter, you will set the communication between the local (PLC_1) and partner (PLC_2) PLCs. See picture 9. picture 9. Connection parameter. As you can see, the Local PLC is set to PLC_1 which is the PLC where the PUT command is used. The partner side is still empty and that is where we should assign PLC_2. If you click on the drop-down list you will have two options for a partner. See picture 10. picture 10. Partner connection The partner is the SPS that will receive the data; you will find that you have two options to select from: PLC_2 [CPU 1516-3 PN/DP] Unspecified Because both PLCs are in the same project, when I choose the PLC_2 option, all connection parameters will be automatically filled in. see picture 11. picture 11. PLC_2 as a partner Wenn die Partner-SPS hingegen aus einem anderen Projekt stammt, wähle ich die Option „Nicht angegeben“ und muss in diesem Fall einige Daten wie die IP-Adresse der Partner-SPS eingeben. Siehe Abbildung 12. Abbildung 12. Nicht angegebener Partner Wie Sie sehen, muss ich in diesem Fall einige Daten wie die IP-Adresse eingeben und außerdem ein Subnetz für PLC_1 hinzufügen. Um ein Subnetz für PLC_1 hinzuzufügen, gehen wir zu den Profinet-Eigenschaften von PLC_1 und wählen die Option „Subnetz hinzufügen“. Siehe Abbildung 13. Abbildung 13. Subnetz hinzufügen. Sobald dies erledigt ist, ist die Konfiguration der Verbindungsparameter abgeschlossen. Siehe Abbildung 14. Der Verbindungsname sollte für jeden PUT-Befehl eindeutig sein. TIA Portal gibt ihm automatisch einen neuen Namen, aber es ist vielleicht besser, wenn Sie der Verbindung in Ihrem Projekt einen passenderen Namen zuweisen. Wir haben es hier so gelassen, wie es ist. Abbildung 14. Verbindungsparameter sind fertig Der nächste Schritt in der PUT-Befehlskonfiguration ist die Einrichtung der Blockparameter. In diesen Parametern geben wir den Auslöser für den PUT-Befehl an, d. h. welches Signal die PUT-Befehlsaktion startet. Und auch, welche Daten von PLC_1 gesendet werden und wo sie in PLC_2 gespeichert werden. Siehe Abbildung 15. Abbildung 15. Einrichtung der Blockparameter Für das Startanforderungssignal (REQ) haben wir ein Eingabetag (SendData %I0.0) definiert. Und wie bereits erwähnt, haben wir bereits das Tag definiert, das an PLC_2 gesendet wird und wo es in der SPS gespeichert wird. Mit dem Abschluss der Blockparameterkonfiguration wird die Konfiguration des PUT-Befehls abgeschlossen. Siehe Abbildung 16. Abbildung 16. Aufruf eines PUT-Befehls Zusammenfassend lässt sich also sagen, dass bei Auslösen des REQ-Signals die Daten in SD_1 an ADDR_1 gesendet werden.
  20. Dies ist ein SPS-Programm zur Regelung des Füllstands paralleler Tanks. Lernen Sie die SPS-Programmierung anhand dieses Beispiels. Parallele Tankfüllstandsregelung Problembeschreibung Zwei Tanks sind parallel geschaltet. Wir müssen das in die Tanks einlaufende Material erhitzen und kühlen und gleichzeitig den Füllstand der Tanks regeln. Implementieren Sie das SPS-Programm für diese Anwendung. Problemdiagramm Problemlösung Der Heizprozess wird verwendet, um das Material im Tank zu erhitzen, und der Kühlprozess wird verwendet, um das Material abzukühlen. Hier wird davon ausgegangen, dass beide Materialien gleich sind wie in der Abbildung gezeigt, das Einlassventil führt Material in beide Tanks. Hier können wir Füllstandsschalter verwenden, um die niedrigen und hohen Füllstände für beide Tanks zu erkennen. Verwenden Sie zwei Temperatursensoren, um die Temperatur beider Tanks zu messen. Auslassventile werden am Boden der Tanks verwendet, um die Materialien für den weiteren Prozess abzulassen. Wir werden ein SPS-Programm für diese Anwendung schreiben. Liste der Ein- und Ausgänge Digitale Eingänge Zyklus START :- I0.0 Zyklus STOP :- I0.1 Niedriger Füllstand Tank 1 (LL1) :- I0.3 Niedriger Füllstand Tank 2 (LL2) :- I0.4 Hocher Füllstand Tank 1 (LH1) :- I0.5 Hocher Füllstand Tank 2 (LH2) :- I0.6 Digitale Ausgänge Einlassventil V2 für Heiztank :- Q0.0 Einlassventil V3 für Kühltank :- Q0.1 Auslassventil V4 für Heiztank :- Q0.2 Auslassventil V5 für Kühltank :- Q0.3 M-Speicher Zyklus EIN-Bit :- M0.0 Register für Temperatur Heiztank :- MD10 Register für Temperatur Kühltank :- MD14 Auslassventil V5 für Kühltank :- Q0.3 SPS-Programm zur Niveauregelung von parallele Tanks Programmerklärung Für diese Anwendung haben wir S7-300 PLC und TIA-Portalsoftware zur Programmierung verwendet. Wir können diese Logik auch mit anderen PLCs implementieren. Netzwerk 1: Dieses Netzwerk ist für den Verriegelungskreis. Immer wenn die START-Taste gedrückt wird (I0.0), ist das Zyklus-EIN-Bit (M0.0) EIN. Der Zyklus kann durch Drücken von STOP PB (I0.1) gestoppt werden. Netzwerk 2: Wenn ein niedriger Füllstand im Heiztank (I0.3) erkannt wird, ist das Einlassventil V2 (Q0.0) EIN. Wenn kein hoher Füllstand im Tank 1 (I0.5) erkannt wird und die START-Taste (I0.0) gedrückt wird, ist das Einlassventil V2 (Q0.0) EIN. Netzwerk 3: Wenn ein niedriger Füllstand von Tank 2 (I0.4) erkannt wird, wird das Einlassventil V3 (Q0.1) eingeschaltet. Wenn die START-Taste gedrückt wird und kein hoher Füllstand von Tank 2 (I0.6) erkannt wird, wird das Einlassventil V3 (Q0.1) eingeschaltet. Netzwerk 4: Wenn der Zyklus eingeschaltet ist und die tatsächliche Temperatur des Heiztanks (MD10) größer oder gleich der eingestellten Temperatur (70 °C) ist, wird das Auslassventil V4 (Q0.2) eingeschaltet. Netzwerk 5: Wenn der Zyklus eingeschaltet ist und die tatsächliche Temperatur des Kühltanks (MD14) kleiner oder gleich der eingestellten Temperatur (20 °C) ist, wird das Auslassventil V5 (Q0.3) eingeschaltet. Hinweis: Dieses Beispiel dient nur zu Erklärungszwecken. Wir können diese Logik in jeder SPS oder mithilfe einer Relaislogik implementieren. Die obige Anwendung kann von der tatsächlichen Anwendung abweichen oder Teil der Anlagenlogik sein. Ergebnis
  21. Entwerfen Sie ein SPS-Programm für einen alternativen Ausgangskreis mit verriegelter Funktion und erklären Sie die Kontaktplanlogik mit einer Lösung. Alternativer Ausgangskreis Problembeschreibung Schalten Sie das Licht ein, indem Sie einen SCHALTER das erste, dritte, fünfte usw. Mal drücken, und schalten Sie dasselbe Licht aus, indem Sie den SCHALTER das zweite, vierte, sechste usw. Mal drücken. Stellen Sie den Ausgangsstatus auf „0“ zurück, wenn das System oder der Zyklus hochgefahren wird. Der Ausgang kann gestartet werden, indem Sie eine TASTE eine UNGERADE Anzahl von Malen drücken, und kann gestoppt werden, indem Sie dieselbe TASTE eine GERADE Anzahl von Malen drücken. Problemdiagramm Problemlösung Wir können dieses Problem lösen, indem wir eine einfache Kontaktplanlogik verwenden. Dabei betrachten wir ein einfaches Beispiel für den alternativen LED-Betrieb. Hier betrachten wir eine LED und eine TASTE. Drücken Sie abwechselnd die TASTE und der Ausgang sollte abwechselnd EIN/AUS sein. Wenn Sie hier die Taste ungerade oft drücken, sollte der Ausgang EIN sein und wenn Sie die Taste gerade oft drücken, sollte der Ausgang AUS sein. Liste der SPS-Ein- und Ausgänge Eingabeliste SCHALTER: I0.0 Ausgabeliste LED: Q0.0 M-Speicher M0.0 für LED-Reset-Zustand M0.1 für Zähler-Reset M11.0 & M11.1 – Positive Flanke Kontaktplan für alternativen Ausgangskreis (mit verriegelter Funktion) SPS-Programmbeschreibung In dieser Anwendung haben wir Siemens S7-300 PLC und TIA Portal Software zur Programmierung verwendet. Netzwerk 1: In Netzwerk 1 haben wir die SET-Anweisung verwendet, um die LED (Q0.0) einzustellen. Hier haben wir den NO-Kontakt der TASTE (I0.0) verwendet, damit die LED (Q0.0) durch Drücken der TASTE (I0.0) aktiviert werden kann. Netzwerk 2: Hier haben wir einen Zähler verwendet, der die Schaltzeiten der TASTE (I0.0) zählt. Dieser Zähler gibt an, wie oft die Taste gedrückt wird, ob sein Wert eine GERADE oder eine UNGERADE Zahl ist. Netzwerk 3: Wenn der Zähler seinen voreingestellten Wert (2) oder eine GERADE Anzahl von Malen erreicht, setzt der NO-Kontakt des Zählers M0.0 (LED-Reset-Zustand). Netzwerk 4: In diesem Netzwerk setzt der NO-Kontakt von M0.0 die LED und den Zähler zurück. Hier setzt M0.1 (Zähler-Reset-Speicher) den Zähler zurück. Netzwerk 5: Wenn M0.0 eingeschaltet ist und ein negativer Übergang (von 1 auf 0) der Taste (I0.0) ausgelöst wird, ist der RESET-Zustand der LED ausgeschaltet. Hinweis: Dieses Beispiel dient dem Verständnis des Grundkonzepts eines alternativen Ausgangsschaltkreises. Es ist keine vollständige Anwendung, aber wir können dieses Konzept in jeder Automatisierungsanwendung oder jedem System verwenden. Testfälle
  22. Dies ist das SPS-Programm für das sequentielle Motorbetriebssystem. Sequentielle Motorsteuerung Problembeschreibung In vielen Branchen werden viele Motoren verwendet. Manchmal müssen wir in einer Anwendung mehr als einen Motor starten. Wenn wir eine niedrige Eingangsstromversorgung haben, besteht die Möglichkeit, dass der eingehende MCB auslöst, wenn ein oder mehrere Motoren parallel starten, da sie mehr Strom verbrauchen. Hier betrachten wir ein ähnliches Beispiel, bei dem wir jeden Motor einzeln starten. Problemdiagramm Problemlösung Das Problem kann durch Verwendung von SPS-Programmierung oder Relaislogik gelöst werden. In diesem Fall müssen wir die Motoren sequentiell betreiben. Es gibt insgesamt 3 Motoren, die sequentiell gesteuert werden müssen. So startet jeder Motor sequentiell, sagen wir, Motor 1 startet, dann nach einer gewissen Verzögerung, dann startet Motor 2 und nach einer gewissen Verzögerung startet Motor 3. Der gesamte Vorgang dauert also 10 Sekunden, um alle Motoren sequentiell zu starten. Durch diese Verzögerung können wir das Problem vermeiden, dass die Motoren beim ersten Hochfahren viel Strom verbrauchen. Alle Motoren werden nacheinander betrieben und zwischen den einzelnen Motorvorgängen muss eine Zeitverzögerung von 5 Sekunden eingehalten werden. Hier wird die Logik für den sequentiellen Betrieb von Motoren mit SPS geschrieben. Liste der Ein- und Ausgänge Eingabeliste Start PB: I0.0 Stop PB: I0.1 Ausgabeliste Zyklus ein: Q0.0 Motor 1: Q0.1 Motor 2: Q0.2 Motor 3: Q0.3 SPS-Kontaktplandiagramm für sequentielle Motorsteuerung Kontaktplanlogik erklärt In dieser Anwendung haben wir Siemens S7-1200 PLC und TIA Portal Software zur Programmierung verwendet. Wir können diese Logik auch mit Relaisschaltung entwerfen. Netzwerk 1: In Netzwerk 1 haben wir die Logik für den Zyklus-EIN-Zustand geschrieben. Hier zeigt die Lampe Zyklus EIN (Q0.0) den Zyklusstatus an. Der Zyklus kann durch Drücken der Taste START PB (I0.0) gestartet und durch Drücken der Taste STOP PB (I0.1) gestoppt werden. Wenn der Zyklus eingeschaltet ist, wird gleichzeitig Motor 1 (Q0.1) gestartet. Gleichzeitig wird die Timeranweisung ausgeführt. Netzwerk 2: In Netzwerk 2 startet der Schließerkontakt von Motor 1 den Timer T1 und wenn der Timer für Motor 2 (Q0.1) den eingestellten Wert von 5 Sekunden erreicht, startet der Schließerkontakt von T1 den Motor 2 (Q0.1). Netzwerk 3: In Netzwerk 3 haben wir die Logik für Motor 3 übernommen. Hier haben wir den Schließerkontakt von Motor 2 zum Starten des Timers von Motor 3 angegeben. Wenn T2 den eingestellten Wert von 5 s erreicht, startet der Schließerkontakt von T2 den Motor 3 (Q0.0). Wenn STOP PB (I0.1) gedrückt wird, wird der NC-Kontakt aktiviert, der den Zyklus (Q0.0) ausschaltet. Außerdem hören Motor 2 und 3 auf zu arbeiten. Laufzeittestfälle Hinweis: Die obige SPS-Logik liefert eine grundlegende Vorstellung der Anwendung von SPS in der sequentiellen Motorsteuerung. Die Logik ist begrenzt und stellt keine vollständige Anwendung dar.
  23. Dies ist ein SPS-Programm für Zweiwege-Schaltlogik für Treppenhausbeleuchtung im Haus. SPS-Zweiwege-Schaltlogik In einem Doppelhaus gibt es Erdgeschoss und ersten Stock und manchmal auch zweiten Stock. Manchmal müssen Menschen vom Erdgeschoss in den ersten Stock oder vom ersten Stock ins Erdgeschoss über eine Treppe im Haus gelangen. Aber im Treppenhaus gibt es kein Sonnenlicht, also brauchen die Menschen eine Lampe/ein Licht, um die Stufen der Treppe gut sehen zu können. Hier verwenden wir eine einfache SPS, um diese Lampe mit zwei Schaltern zu steuern, einen Schalter im Erdgeschoss und einen zweiten Schalter im ersten Stock, um eine Lampe zu steuern, wie in der Abbildung unten gezeigt. Hinweis: Wir können die Schaltung auch mit einfachen Relais/Schaltern aufbauen. Dieser Artikel dient nur dazu, das Grundkonzept eines Zweiwegeschalters mit einer SPS-Kontaktplanlogik zu verstehen. Bild Lösung Wir werden dieses Problem durch einfache Automatisierung lösen. Wie in der Abbildung gezeigt, betrachten wir ein einfaches Haus mit einem Stockwerk und einer Treppe im Haus. Hier stellen wir das Beleuchtungssystem so ein, dass die Benutzer das Licht ein- und ausschalten können, egal ob sie sich unten oder oben auf der Treppe befinden. Wir stellen für jede Etage einen separaten Schalter bereit, wie in der obigen Abbildung gezeigt. SPS-E/A-Anforderungen Digitale Eingänge SW1: I0.1 SW2: I0.2 Digitale Ausgänge Lampe: Q0.0 SPS-Programm für Zweiwegeschalter Programm erklärt Für diese Anwendung haben wir S7-1200 PLC und TIA-Portalsoftware zur Programmierung verwendet. Im obigen Programm haben wir zwei Schließerkontakte von SW 1 (I0.1) und SW 2 (I0.2) in Reihe und Öffnerkontakte von SW1 (I0.1) und SW2 (I0.2) parallel zu dieser Reihe von Schließerkontakten SW1 und SW2 hinzugefügt. Wenn der Status des unteren Schalters (SW1) und des oberen Schalters (SW2) gleich sind, ist die Lampe eingeschaltet. Und wenn der Status des unteren oder oberen Schalters von dem der anderen abweicht, ist die Lampe (Q0.0) AUS. Wenn die Lampe (Q0.0) AUS ist, kann der Benutzer die Lampe einschalten, indem er den Status eines beliebigen Schalters ändert. Der Benutzer kann die Lampe auch ausschalten, indem er den Status eines der beiden Schalter ändert. Ergebnis Hinweis: Die obige SPS-Logik lieferte eine grundlegende Vorstellung von der Anwendung der SPS für die Zweiwegeschalterlogik. Die Logik ist begrenzt und keine vollständige Anwendung.
  24. JSR-, SBR- und RET-Anweisungen werden verwendet, um den Controller anzuweisen, eine separate Unterprogrammdatei innerhalb des Kontaktplanprogramms auszuführen und zur Anweisung nach der JSR-Anweisung zurückzukehren. Allen Bradley SPS-Unterprogramme Die SBR-Anweisung muss die erste Anweisung auf der ersten Sprosse in der Programmdatei sein, die das Unterprogramm enthält. Verwenden Sie ein Unterprogramm, um wiederkehrende Abschnitte der Programmlogik zu speichern, die von mehreren Punkten innerhalb Ihres Anwendungsprogramms aus ausgeführt werden müssen. Ein Unterprogramm spart Speicher, da Sie es nur einmal programmieren. Aktualisieren Sie kritische E/A innerhalb von Unterprogrammen mithilfe von Anweisungen für die sofortige Eingabe und/oder Ausgabe (IIM, IOM), insbesondere wenn Ihre Anwendung verschachtelte oder relativ lange Unterprogramme erfordert. Andernfalls aktualisiert der Controller die E/A erst, wenn er das Ende des Hauptprogramms erreicht (nach Ausführung aller Unterprogramme). Innerhalb eines Unterprogramms gesteuerte Ausgänge bleiben in ihrem letzten Zustand, bis das Unterprogramm erneut ausgeführt wird. Wenn der JSR-Befehl ausgeführt wird, springt der Controller zum Unterprogrammbefehl (SBR) am Anfang der Zielunterprogrammdatei und setzt die Ausführung an diesem Punkt fort. Sie können in keinen anderen Teil eines Unterprogramms springen als in den ersten Befehl in dieser Datei. Das Zielunterprogramm wird durch die Dateinummer identifiziert, die Sie im JSR-Befehl eingegeben haben. Der SBR-Befehl dient als Bezeichnung oder Kennung für eine Programmdatei als reguläre Unterprogrammdatei. Der Befehl muss als erster Befehl des ersten Sprosses eines Unterprogramms programmiert werden. Der RET-Befehl markiert das Ende der Unterprogrammausführung oder das Ende der Unterprogrammdatei. Der Sprosse, der den RET-Befehl enthält, kann bedingt sein, wenn dieser Sprosse dem Ende des Unterprogramms vorangeht. Auf diese Weise lässt der Controller den Rest eines Unterprogramms nur aus, wenn seine Sprossebedingung erfüllt ist.
  25. leigehong

    SPS-Timerprogramm

    Schreiben Sie ein SPS-Timerprogramm für das folgende SPS-Beispiel. SPS-Timer Konstruieren Sie eine SPS-Zeitschaltung, die (mit Ausgang O:2/0) alle zwei Sekunden einen 0,5-Sekunden-Impuls ausgibt (d. h. 0,5 s an, dann 2 s aus). Wenn ein Schalter (mit I:1/0) geschlossen ist, und alle zwei Sekunden einen 1-Sekunden-Impuls, wenn der Schalter geöffnet ist. Kontaktplanlogik
Apply for friendship links:WhatsApp or E-mail: admin@plchmis.com
×
×
  • Create New...