Was ist eine SPS ? SPS = Speicherprogrammierbare Steuerung PLC = Programmable Logic Control Ursprünglich elektronischer Ersatz von Relais- steuerungen (Schützsteuerung)
Relais-Steuerung
( Warten auf nächsten Zyklus) Was ist eine SPS ? Typischer zyklischer Ablauf Reaktionszeit wird durch Zykluszeit bestimmt Eingangsdaten lesen Daten verknüpfen Ergebnis ausgeben ( Warten auf nächsten Zyklus)
Hardware-SPS z.B. S7 Beispiele zu HardSPS Eigene Hardware CPU + IO-Module Direkte Ankopplung der Prozesspunkte
Beispiele zu HardSPS Omron-SPS CP1H
Beispiele zu HardSPS Allen Bradley PLC-5
Was ist Soft-SPS Die Funktionen einer SPS werden vollständig in Software nachgebildet, die Hardwareplattform ist meist ein üblicher PC mit Windows-Betriebssystem. Inzwischen existiert Soft-SPS auf Linux oder auf Mikrocontroller-Plattform ohne Betriebsystem In der Vorlesung wird das PC-System 4Control der Fa. Softing verwendet
Vorteile Volle grafische Benutzeroberfläche Sehr hoher Bedienkomfort, d. h. benutzerfreundlich Hardware und Betriebssystem quasi standardisiert und sehr weit verbreitet. File-System, Netzanbindung, leistungsstarke CPU, großer Speicher automatisch vorhanden
Nachteile Das PC-Betriebssystem ist nur eingeschränkt echtzeitfähig (Taskzyklus < 10 ms) Zuverlässigkeit der Steuerung hängt direkt an der Zuverlässigkeit des Windows-Systems
Programmierung nach IEC 61131-3 Vorschriften zur Definition von Variablen und Datentypen (* lokal gültige Variable*) VAR error: BOOL := TRUE; anzahl : DINT; (* Double Integer mit 32 Bit *) END_VAR (* global in allen Programmen und Unterprogrammen gültige Variable*) VAR_GLOBAL glob_bool : BOOL ; END_VAR (* Verweis auf globale Variable*) VAR_EXTERNAL glob_bool:BOOL; (*Hier darf die Variable nicht initialisiert werden*) END_VAR
Programmiersprachen Es gibt in der Norm 5 Programmiersprachen, die je nach Anwendung und Kenntnis des Programmierers eingesetzt werden Kontaktplan (KOP) oder Ladder-Diagram (LD) Funktionsblocksprache (FBS) oder Function Block Diagram Anweisungsliste (AWL) oder Instruction Language (= Assembler) Structured Text (ST) (= Hochsprache ähnlich Pascal) Sequential Function Chart (SFC) ( = Zustandsmaschine)
Strukturierung Konfiguration Ressource Zur hierarchischen Strukturierung von SPS Projekten wurden folgende Strukturelemente eingeführt: Konfiguration = Projekt Resource1 Target = PC1 Target = PC2 Resource2 Task3 Program3 Program1 Task1 Program2 Task2 Konfiguration Ressource Task / Laufzeitsystem
Project „Sprachen“ mit 4C Beispiel mit 4C Project „Sprachen“ mit 4C
OPC OPC = Openness, Productivity, Collaboration (vormals für: OLE for Process Control). OPC ist eine standardisierte Software-Schnittstelle, die es Anwendungen unterschiedlichster Hersteller ermöglicht, Daten auszutauschen. Basis ist die in Windows integrierte Fähigkeit von Applikationen, untereinander Daten auszutauschen (Object Linking and Embedding)
Object Linking and Embedding (OLE) OLE steht für Object Linking & Embedding und bezeichnet die Fähigkeit, Objekte in ein Dokument zu integrieren, entweder eingebettet (Embedding) oder mit der objekterzeugenden Anwendung verknüpft (Linking). Notwendig ist für beide Varianten die Kommunikation zwischen den Anwendungen. Auf dieser genormten Kommunikation setzt OPC auf
OPC-Client/Server OPC-Client greift auf Daten des Servers zu TCP/IP OPC-Client OPC-Server Feldbus Druck Temp Motor OPC-Server stellt Daten zur Verfügung
OPC-Objekt Kommunikation erfolgt über genormte Verbindung, die vom Client initiiert wird. Vorstellbar als „Software-Stecker“, der mit den drei Element eines OPC-Objects Server Group Item spezifiziert wird OPC-Client OPC-Server OPC-Client
Bedingung für den Übergang in den Folgezustand Zustandsdiagramm Z1 Ausgangssignale für Zustand 1 Bedingung für den Übergang in den Folgezustand Z2 Ausgangssignale für Zustand 2
SFC Aufbau von SFC-Programmteilen Die tragenden syntaktischen Einheiten von SFC sind: Schritt (STEP) Aktion (ACTION) Transition (TRANSITION)
SFC- Cycle Zyklischer Ablauf Step 0 ist der Initialisierungs- schritt
SFC- Verzweigung Verzweigungen Abhängig von Condition1 oder Condition2 folgt auf Step0 Step1 oder Step2
Aufgabenstellung Es soll ein Programm zur Steuerung einer Schranke entwickelt werden. LS Induktionsschleife Schranke_ist_zu Schranke_ist_auf Die Schranke wird von einem Motor angetrieben, dessen Motorelektronik mit drei Steuerwerten angesprochen wird: 1 : Schranke geht auf, 0: Schranke stoppt, -1: Schranke geht zu Desweiteren verfügt die Schranke über 4 Sensoren: · zwei Schalter mit den Bezeichnungen „Schranke_ist_zu“ und „Schranke_ist_auf“ · eine Lichtschranke „LS“, die den Wert 1 liefert, falls sich ein Hindernis in der Lichtstrecke befindet, sonst 0 · eine Induktionsschleife vor der Schranke, die einen analogen Wert zwischen 0 und 1023 liefert, abhängig von der Fahrzeuggröße. Werte unterhalb von 300 werden als Störungen betrachtet
Vorgabe in SFC
OPC-Objekt Kommunikation erfolgt über genormte Verbindung, die vom Client initiiert wird. Vorstellbar als „Software-Stecker“, der mit den drei Element eines OPC-Objects Server Group Item spezifiziert wird OPC-Client OPC-Server OPC-Client