Prozessleitsystem PCS7 Entwicklungswerkzeug SIMATIC-Manager 1
Die Komponenten der Industrieautomatisierung formen ein homogenes Leitsystem: SIMATIC PCS 7 SIMATIC S7 400 ET 200M SIMATIC Net HMI auf SIMATIC WinCC basierend SIMATIC PC STEP 7 SCL CFC SFC SIMATIC PCS 7 beinhaltet: Integrierte Systemleistungen (Diagnose, Alarme,...) Zusatzpakete (Bibliotheken, BATCH flexible, Warehouse,...) Vorkonfektionierte Bestelleinheiten (AS, OS, ES) 2
SIMATIC PCS 7 Systemstruktur des verteilten Leitsystems Kommunikation mit anderen Systemen SAP R/3 etc. OS OS zentrales Bedienen und Beobachten OS ES lokales Bedienen und Beobachten Standard Ethernet PROFIBUS oder Industrial Ethernet SIMATIC NET prozeßnahe Informationsverarbeitung S7-400 S7-400 PROFIBUS DP DP / PA - LINK dezentrale Peripherie ET 200M ET 200M intelligente Sub-Systeme S7-300 PROFIBUS PA PROFIBUS-DP ET 200M 3
Aufbau des Automatisierungssystems S7 SIMATIC S7- Steuerungen 4
Aufbau des Automatisierungssystems S7 Beispiele für SIMATIC S7-300 Steuerungen 5
Aufbau des Automatisierungssystems S7 Beispiele für SIMATIC S7-400 Steuerungen 6
Baugruppenträger (Rack) nehmen die Baugruppen auf und verbinden sie untereinander - Peripheriebus (P-Bus) ist für den schnellen Signalaustausch von Ein- und Ausgabesignalen ausgelegt - Kommunikationsbus (K-Bus) verbindet die CPU und die Programmierschnittstelle (MPI) mit den Funktions- und Kommunikationsbaugruppen Stromversorgung (PS) liefert die internen Versorgungsspannungen Zentralbaugruppe (CPU) speichert und bearbeitet das Anwenderprogramm Anschaltungsbaugruppen (IM) verbinden die Baugruppenträger untereinander Signalbaugruppen (SM) passen die Signale der Anlage an den internen Signalpegel an oder steuern Stellgeräte über digitale und analoge Signale Funktionsbaugruppen (FM) bearbeiten komplexe oder zeitkritische Prozesse unabhängig von der Zentralbaugruppe Kommunikationsbaugruppe stellen den Anschluß zu Subnetzen her Subnetze verbinden die Automatisierungssysteme untereinander oder mit anderen Geräten Aufbau des Automatisierungssystems S7 Komponenten 7
IM 360 IM 361 Aufbau des Automatisierungssystems S7 Erweiterung einer S7-300 Station 8
IM 463-2 IM 460-3 IM 460-0 IM 460-1 IM 461-1 Nahbereich bis 1.5 m mit 5V-Übertragung IM 461-0 Nahbereich bis 3 m ohne 5V-Übertragung IM 461-3 Fernbereich bis 100 m ohne 5V-Übertragung IM 314 Fernbereich bis 600 m S5-Erweiterungsgeräte Aufbau des Automatisierungssystems S7 Erweiterung einer S7-400 Station 9
RAM Memory Card - Erweiterung des Ladespeichers - Anwenderprogramm kann online geändert werden - RAM verliert Informationen, wenn er gezogen wird Flash EPROM Memory Card - hält das Anwenderprogramm und die Konfigurationsdaten ohne Pufferbatterie spannungsausfallsicher - das gesamte Programm wird im Programmiergerät in die Flash EPROM Memory Card geladen Aufbau des Automatisierungssystems S7 Memory-Card 10
Das Anwenderprogramm steht im Lade- und im Arbeitsspeicher Ladespeicher - ist in der CPU integriert oder als steckbare Memory Card ausgeführt - er enthält das gesamte Anwenderprogramm einschließlich Konfigurationsdaten Arbeitsspeicher - in vollem Umfang in der CPU integriert, schneller RAM-Speicher das Programmiergerät überträgt das komplette Anwenderprogramm einschließlich der Konfigurationsdaten in den Ladespeicher Aufbau des Automatisierungssystems S7 Speicherbereiche (Ladespeicher) 11
Systemspeicher er enthält die Operanden (Variablen), die zu Operandenereichen zusammengefasst werden Operandenbereiche: Eingänge (E) sie sind ein Abbild (Prozessabbild ) der Digitaleingabebaugruppen Ausgänge (A) sie sind ein Abbild (Prozessabbild) der Digitalausgabebaugruppen Merker (M) Informationsspeicher, die im gesamten Programm ansprechbar sind Zeitfunktionen (T) Zeitglieder, mit denen Warte- und Überwachungszeiten realisiert werden Zählfunktionen (Z) Softwarezähler, die vorwärts und rückwärts zählen können temporäre Lokaldaten (L) dynamische Zwischenspeicher während der Bausteinbearbeitung; temporäre Lokaldaten stehen im L-Stack, den die CPU während der Programmbearbeitung dynamisch belegt Aufbau des Automatisierungssystems S7 Speicherbereiche (Systemspeicher) 12
Aufbau des Automatisierungssystems S7 Speicherbereiche (Gesamtkonzept) 13
DP-Master Er ist der aktive Teilnehmer am PROFIBUS und tauscht zyklisch Daten mit seinen Slaves aus. - CPU mit integriertem Master-Schnittstellenmodul (z.b. CPU 414-2DP) - eine Anschaltbaugruppe in Verbindung mit einer CPU (z.b. IM 467) - eine CP-Baugruppe in Verbindung mit einer CPU (z.b. CP 443-5) Klasse 1-Master Datenaustausch im Prozessbetrieb Klasse 2-Master für Service und Diagnose Aufbau des Automatisierungssystems S7 Dezentrale Peripherie (Profibus-DP[Master]) 14
DP-Slave Sie sind passive Teilnehmer am PROFIBUS Bei Simatic S7 wird unterschieden zwischen: kompakte DP-Slaves sie verhalten sich wie eine einzige Baugruppe gegenüber dem Master modulare Slaves sie setzen sich aus mehreren Baugruppen zusammen intelligente DP-Slaves sie enthalten ein Steuerprogramm, das die untergelagerten /eigenen) Baugruppen steuert Aufbau des Automatisierungssystems S7 Dezentrale Peripherie (Profibus-DP[Slave]) 15
- Datenaustausch zwischen programmierbaren Baugruppen - ist integrierter Bestandteil bei SIMATIC S7 Verbindungsressourcen Busschnittstelle der Baugruppe Verbindung Subnetz - bereits ohne zusätzliche Baugruppen (also nur mit einem Verbindungskabel zwischen den CPU s) können Daten ausgetauscht werden - CP-Baugruppen erhöhen die Leistungsfähigkeit eines Netzes (höherer Datendurchsatz, andere Protokolle - der Datenaustausch wird über eine Verbindung nach einem bestimmten Ablaufschema ( Kommunikationsdienst ) ausgeführt, dem u.a. ein bestimmtes Koordinierungsverfahren ( Protokoll ) zugrunde liegt. Aufbau des Automatisierungssystems S7 Kommunikation 16
Netz - Verbund von mehreren Geräten zum Zwecke der Kommunikation - es besteht aus einem oder mehreren miteinander verbundenen Subnetzen gleicher oder unterschiedlicher Art Subnetz Zusammenfassung aller Kommunikationsteilnehmer, die durch eine Hardware-Verbindung mit einheitlichen physikalischen Eigenschaften und Übertragungsparametern (Übertragungsrate) miteinander verbunden sind und über ein gemeinsames Übertragungsverfahren Daten austauschen MPI (Multi Point Interface) - kostengünstige Vernetzungsmöglichkeit von wenigen SIMATIC-Geräten mit kleinen Datenmengen - jede CPU besitzt eine MPI-Schnittstelle - sie ermöglicht den Aufbau eines Subnetzes, in dem Zentralbaugruppen, Bedien- und Beobachtungsgeräte und Programmiergeräte untereinander Daten über ein Siemens-eigenes Protokoll austauschen - Bussegmentlänge ca. 50 m - Übertragungsrate 187,5 kbit/s - max. Teilnehmerzahl beträgt 32 - Zugriffsverfahren Token Passing, d.h. ein Teilnehmer erhält nur eine bestimmte Zeit Zugriff auf den Bus Aufbau des Automatisierungssystems S7 Kommunikation (Grundbegriffe I) 17
PROFIBUS - Leitungslänge ist abhängig von der Übertragungsrate sie beträgt 100 m bei 12 Mbit/s und 1000 m bei 9,6 kbit/s Repeater und OLM (Optical Link Modul) vergrößern die Netzausdehnung - in einem Segment können sich max. 32 Stationen befinden die Gesamtzahl der Slaves im gesamten Netz beträgt 127 - Zugriffsverfahren Token Passing, d.h. ein Master erhält nur eine bestimmte Zeit Zugriff auf den Bus Industrial Ethernet - wird für den Verbund von Rechnern und Automatisierungsgeräten mit dem Einsatzschwerpunkt im industriellen Bereich eingesetzt - Übertragungsrate: 10 Mbit/s - Zugriffsverfahren: CSMA/CD - alle der mehr als 1000 Teilnehmer sind gleichberechtigt AS-Interface (Aktor/Sensor-Interface) - vernetzt entsprechend ausgelegte Sensoren und Aktoren nach der AS-Interface-Spezifikation IEC TG 178 - Übertragungsmedium ist eine spezielle ungeschirmte Zweidrahtleitung, die die Aktoren und Sensoren sowohl mit Daten als auch mit Spannung versorgt. - Netzausdehnung bis 300 m - die Übertragungsrate beträgt 167 kbit/s Aufbau des Automatisierungssystems S7 Kommunikation (Grundbegriffe II) 18
Kommunikationsdienst - legt fest, wie die Daten zwischen den Kommunikationsteilnehmern ausgetauscht werden - basiert auf einem Protokoll, das u.a. das Koordinierungsverhalten zwischen den Kommunikationsteilnehmern beschreibt S7-Funktionen - zentraler Kommunikationsdienst bei SIMATIC - sind weitgehend im Betriebssystem der CPU integriert - steuern die Kommunikation zwischen Zentralbaugruppen, Bedien- und Beobachtungsgeräten und Programmiergeräten Globaldaten-Kommunikation - Ermöglicht den Austausch von kleinen Datenmengen zwischen mehreren CPU s ohne zusätzlichen Programmieraufwand - zyklische oder ereignisgesteuerte Übertragung - Broadcast-Verfahren, der Empfang der Daten wird nicht quitiert PROFIBUS-DP (Dezentrale Peripherie) - Datenaustausch erfolgt zwischen einem Master und einem Slave - über ein PROFIBUS-Subnetz können SIMATIC S7-Slaves und DP-Norm-Slaves angesprochen werden Aufbau des Automatisierungssystems S7 Kommunikation (Grundbegriffe III Kommunikationsdienste) 19
Verbindung - definiert die Kommunikationsbeziehung zwischen zwei Kommunikationsteilnehmern - sie ist die logische Zuordnung zweier Teilnehmer zur Ausführung eines bestimmten Kommunikationsdienstes und beinhaltet auch spezielle Eigenschaften wie z.b. Art der Verbindung (dynamisch oder statisch) und wie sie zustande kommt dynamische Verbindungen - werden nicht projektiert - Auf- und Abbau geschieht ereignisgesteuert ( Kommunikation über nichtprojektierte Verbindungen ) - es kann nur eine nichtprojektierte Verbindung zu einem Kommunikationspartner bestehen statische Verbindung - werden in der Verbindungstabelle projektiert - bleiben während der gesamten Programmbearbeitung bestehen ( Kommunikation über projektierte Verbindungen ) - es können zu einem Partner mehrere Verbindungen parallel aufgebaut werden Verbindungsressource - jeder Verbindung benötigt auf den beteiligten Kommunikationspartnern Verbindungsressourcen für den Endpunkt der Verbindung bzw. für den Übergangspunkt in einer CP-Baugruppe - jede CPU hat eine spezifizierte Anzahl von Verbindungen - auch für nichtprojektierte Verbindungen bei der SFC-Kommunikation werden temporäre Verbindungsressource benötigt Aufbau des Automatisierungssystems S7 Kommunikation (Grundbegriffe IV Verbindung) 20
Kommunikationsfunktionen - sind die Schnittstelle im Anwenderprogramm zum Kommunikationsdienst - für SIMATIC S7-interne Kommunikation sind die Kommunikationsfunktionen im Betriebssystem der CPU integriert und werden über Systembausteine aufgerufen - für die Kommunikation zu Fremdgeräten über Kommunikationsprozessoren stehen ladbare Bausteine zur Verfügung Aufbau des Automatisierungssystems S7 Kommunikation (Grundbegriffe V Kommunikationsfunktionen) 21
+HP01 -S10 Signalweg - Mit der Verdrahtung wird ein Eingangssignal auf eine Eingabebaugruppe an eine bestimmte Klemme geführt und erhält somit eine Peripherieadresse (z.b. Byte 5 Bit 2) - vor der Programmabarbeitung kopiert die CPU das Signal von der Eingabebaugruppe in das Eingangs-Prozess-Abbild und kann als Operand Eingang unter der absoluten Adresse (hier E5.2) angesprochen werden - dieser Adresse kann in der Symboltabelle eine symbolische Adresse (z.b. Motor ein ) zugeordnet werden Aufbau des Automatisierungssystems S7 Signalweg 22
+HP01 -S10 Steckplatzadresse - jeder Steckplatz in einer S7-Station hat eine feste Adresse, welche sich aus Nummer des Baugruppenträgers und der Nummer des Einbauplatzes des Baugruppe zusammensetzt (geographische Adresse) - bei der Dezentralen Peripherie ersetzen die Nummer des DP-Mastersystems und die Stationsnummer die Nummer des Baugruppenträgers - der Hardware-Aufbau einer S7-Station wird mit den Werkzeug Hardware-Konfiguration entsprechend der physikalischen Anordnung der Baugruppen geplant Aufbau des Automatisierungssystems S7 Steckplatzadresse 23
+HP01 -S10 Baugruppenanfangsadresse - jede Baugruppe besitzt eine Anfangsadresse - bei Digitalbaugruppen werden jeweils 8 E/A-Bits zu einem Byte zusammengefaßt und pro Baugruppe gibt es meist mehrere solcher E/A-Bytes - diese besitzen die Relativadresse 0, 1, 2,... - erhält die Baugruppe nun die Anfangsadresse 16, so erhalten die E/A-Bytes die Adressen 16, 17, 18,... - bei Analogbaugruppen werden die Analogsignale (Spannungen, Ströme) Kanäle genannt, die jeweils 2 Byte beanspruchen. - somit belegen Baugruppen mit 2, 4, 8 oder 16 Kanälen 4, 8, 16 oder 32 Bytes Adressbereich - Digitalbaugruppen werden adressmäßig im Prozessabbild angeordnet und somit automatisch durch die CPU aktualisiert Aufbau des Automatisierungssystems S7 Baugruppenanfangsadresse 24
+HP01 -S10 Diagnoseadresse - entsprechend ausgelegte Baugruppen können Diagnosedaten liefern - bei Baugruppen mit einer Nutzdatenadresse können die Diagnosedaten über diese gelesen werden - ansonsten erhält die Baugruppe eine Adresse im Peripherie-Eingangsbereich, die ein Byte lang ist - Diagnosedaten können mit speziellen Systemfunktionen gelesen werden Aufbau des Automatisierungssystems S7 Diagnoseadresse 25
Nutzdatenbereich - bei Signalbaugruppen: digitale oder analoge Ein- bzw. Ausgangssignale - bei Funktions- und Kommunikationsbaugruppen: Steuer- bzw. Statusinformationen Peripherie-Eingänge (PE) - Operandenbereich PE wird benutzt, wenn von den Eingabebaugruppen Werte aus dem Nutzdatenbereich gelesen werden. - ein Teil des Operandenbereiches PE führt auf das Prozessabbild, dieser Teil fängt immer mit der Adresse 0 an, die Länge ist CPU-spezifisch - alle Baugruppen können direkt gelesen werden Peripherie-Ausgänge (PA) - Operandenbereich PA wird benutzt, wenn Werte zum Nutzdatenbereich einer Ausgabebaugruppe geschrieben werden - ein Teil des Operandenbereiches PA führt auf das Prozessabbild, dieser Teil fängt immer mit der Adresse 0 an, die Länge ist CPU-spezifisch - alle Baugruppen können direkt geschrieben werden Aufbau des Automatisierungssystems S7 Operandenbereiche (Nutzdatenbereich) 26
Prozessabbild - enthält das Abbild der Digitaleingabe- und Digitalausgabe-Baugruppen - das Eingangsprozessabbild wird über den Operandenbereich E angesprochen - das Ausgangsprozessabbild wird über den Operandenbereich A angesprochen - das Prozessabbild kann in Teilprozessabbilder aufgeteilt werden Eingänge - ein Eingang ist das Abbild des entsprechenden Bits auf der Digitaleingabe-Baugruppe - Eingänge können bitweise abgefragt werden, Peripheriebits können nicht direkt adressiert werden - das Abfragen eines Einganges geht wesentlich schneller vor sich als das Ansprechen einer Eingabebaugruppe - der Signalzustand eines Eingangs ist während des gesamten Programmzyklusses konstant - Eingänge können auch gesetzt und rückgesetzt werden, da sie in einem Schreib-/Lesespeicher abgelegt sind Ausgänge - ein Ausgang stellt das Abbild des entsprechenden Bits auf der Digitalausgabe-Baugruppe dar - Ausgänge können bitweise gesetzt und rückgesetzt werden, Peripheriebits können nicht direkt adressiert werden - das Setzen eines Ausganges geht wesentlich schneller als das Ansprechen einer Ausgabebaugruppe - ein mehrfacher Wechsel des Signalzustandes während eines Programmzyklusses wirkt sich nicht auf das Bit auf der Baugruppe aus - Ausgänge können auch abgefragt werden, da sie sich in einem Schreib-/Lesespeicher befinden Aufbau des Automatisierungssystems S7 Operandenbereiche (Prozessabbild) 27
Merker - Merker sind spezielle Speicherzellen im Systemspeicher der CPU - die Anzahl der Merker ist CPU-spezifisch - Merker werden verwendet, um Zwischenergebnisse über Bausteingrenzen hinweg verfügbar zu haben remanente Merker - ein Teil der Merker kann remanent eingestellt werden - diese behalten ihre Informationen auch im spannungslosen Zustand - die Remanenz beginnt immer mit dem Merkerbyte 0 und endet an der eingestellten Obergrenze Taktmerker - periodische Signale können mit Zeitfunktionen (Taktgeber), Weckalarmen (zeitgesteuerte Programmbearbeitung oder mit Taktmerkern realisiert werden - Taktmerker sind Merker, deren Signalzustand sich periodisch in einem - Puls-Pausen-Verhältnis 1:1 ändert Aufbau des Automatisierungssystems S7 Operandenbereiche (Merker) 28
Komponenten - Basispaket enthält die Programmiersprachen Anweisungsliste (AWL) Kontaktplan (KOP) Funktionsplan (FUP) - als Option gibt es außerdem Structured Control Language (SCL) Ablaufkettenprojektierung (GRAPH) Zustandsgraph (HiGraph) - das Softwarepaket PCS7 verfügt noch über die Projektierungswerkzeuge Sequential Function Chart (SFC) Continuous Function Chart (CFC) Autorisierung - ist zum Betreiben von STEP7 notwendig - wird auf einer Diskette geliefert und lässt sich auch wieder deinstallieren Programmiersoftware STEP7 Komponenten 29
SIMATIC-Manager - ist das zentrale Werkzeug in STEP7 - ein Projekt-Assistent hilft beim Anlegen eines neuen Projektes - ein Projekt enthält die gesamte Anlage - eine Station entspricht einem Automatisierungssystem (eine CPU) Programmiersoftware STEP7 SIMATIC_Manager 30
Programmiersoftware STEP7 Beispiel für den SIMATIC_Manager 31
SIMATIC-Manager - ist das zentrale Werkzeug in STEP7 - ein Projekt-Assistent hilft beim Anlegen eines neuen Projektes - ein Projekt enthält die gesamte Anlage - eine Station entspricht einem Automatisierungssystem (eine CPU) - die CPU enthält das S7-Programm - in dem Behälter Bausteine befinden sich u.a. die übersetzten Quellen - ein Projekt kann mehrere Stationen enthalten, die durch ein Subnetz miteinander verbunden sind - die STEP 7-Objekte sind durch eine Baumstruktur miteinander verbunden Programmiersoftware STEP7 SIMATIC_Manager II 32
Programmiersoftware STEP7 Objekthierarchie in einem STEP-7-Projekt 33
SIMATIC-Manager - ist das zentrale Werkzeug in STEP7 - ein Projekt-Assistent hilft beim Anlegen eines neuen Projektes - ein Projekt enthält die gesamte Anlage - eine Station entspricht einem Automatisierungssystem (eine CPU) - die CPU enthält das S7-Programm - in dem Behälter Bausteine befinden sich u.a. die übersetzten Quellen - ein Projekt kann mehrere Stationen enthalten, die durch ein Subnetz miteinander verbunden sind - die STEP 7-Objekte sind durch eine Baumstruktur miteinander verbunden - der SIMATIC-Manager unterscheidet die offline-ansicht hier stehen alle Objekte zur Verfügung, die sich im Programmiergerät auf der Festplatte befinden online-ansicht befindet sich des Projekt in der online-ansicht, werden die Objekte angezeigt, die sich auf dem Zielgerät befinden; d.h. die in Abb. kursiv gedruckten Objekte werden nicht angezeigt Programmiersoftware STEP7 SIMATIC_Manager III 34
Projekte sie dienen der geordneten Ablage aller Daten und Programme - Konfigurationsdaten über den Hardwareaufbau - Parametrierdaten für die Baugruppen - Projektierungsdaten für die Kommunikation über Netze - die Programme (Code und Daten, Symbolik, Quellen) Bibliotheken - dienen zur Ablage von wiederverwendbaren Programmkomponenten - Bibliotheken können hierarchisch gegliedert sein System Function Blocks enthält die Aufrufschnittstellen der in der CPU integrierten Systembausteine Communication Blocks enthält ladbare Funktionen für die Ansteuerung von CP-Baugruppen PID Control Blocks enthält ladbare Funktionsbausteine für Regelungsaufgaben Organization Blocks enthält die Vorlagen für die Organisationsbausteine (im wesentlichen die Variabelendeklaration für die Startinformation) Programmiersoftware STEP7 SIMATIC_Manager IV 35
Programmiersoftware STEP7 SIMATIC_Manager Gesamtübersicht 36
Projekt anlegen in der Regel wird ein Projekt mit Hilfe des STEP 7 Assistenten angelegt Station konfigurieren - mit der Hardware-Konfiguration wird der Hardware-Aufbau des Automatisierungssystems geplant - die Baugruppen werden hier angeordnet, adressiert und parametriert - mit Station Konsistenz prüfen wird die Fehlerfreiheit geprüft - mit dem Übersetzen der Konfigurationstabelle werden die Konfigurationsdaten im Objekt Systemdaten des Offline-Behälters Bausteine abgelegt und können mit Zielsystem Laden in Baugruppe zur angeschlossenen CPU übertragen werden - das Objekt Systemdaten im Online-Behälters Bausteine repräsentiert die aktuellen Konfigurationsdaten auf der CPU Hardwarekatalog er enthält alle verfügbaren Baugruppenträger, Baugruppen und Schnittstellenmodule Konfigurationstabelle zeigt die Steckplätze mit den darin angeordneten Baugruppen deren Bestellnummer und die Adressen Programmiersoftware STEP7 Hardware konfigurieren 37
Netz projektieren - Grundlage der Kommunikation ist die Vernetzung der S7-Stationen - den Kommunikationsschnittstellen der entsprechenden CPU- oder CP-Baugruppen werden Subnetze zugeordnet - die Verbindungen -Kommunikationsbeziehungen zwischen diesen Baugruppen- werden in der Verbindungstabelle mit der Netzprojektierung festgelegt - die Netzparameter anpassen - die Widerspruchsfreiheit der Netzkonfiguration wird mit Netz Konsistenz prüfen getestet - die übersetzten Verbindungsdaten sind ebenfalls Bestandteil der Systemdaten im Behälter Bausteine Programmiersoftware STEP7 Netzprojektierung 38
S7-Programm erstellen quellorientierte Programmerstellung - es werden ein oder mehrere Programmquellen erstellt und im Behälter Quellen abgelegt - diese ASCII-Textdateien enthalten die Programmanweisungen für einen oder mehrere Bausteine - diese Quellen müssen übersetzt werden - die übersetzten Bausteine stehen dann im Behälter Bausteine inkrementale Programmerstellung - das Programm wird direkt bausteinweise eingegeben - die Syntax wird sofort überprüft - beim Speichern werden die Programme sofort übersetzt und im Behälter Bausteine abgelegt, d.h. nur fehlerfreie Programme können abgespeichert werden - Bausteine können direkt online in der CPU editiert werden Programmiersoftware STEP7 Programmerstellung I 39
Symboltabelle - in der Symboltabelle kann z.b. einem Operanden (absolute Adresse z.b. A 4.3) ein Name (symbolische Adresse z.b. Zulaufventil) zugeordnet werden - symbolische Adressierung ist möglich für Eingänge E, Ausgänge A, Peripherie-Eingänge PE und Peripherie-Ausgänge PA Merker M, Zeitfunktionen T und Zählfunktionen Z Codebausteine OB, FB, FC, SFC, SFB und Datenbausteine DB anwenderdefinierten Datentypen UDT Variablentabellen VAT - Symboltabellen können importiert und exportiert werden - weiterhin können Attribute eingestellt werden, die Verwendung finden bei Bedienen und Beobachten für die Überwachung mit WinCC Kommunikationsprojektierung Meldeprojektierung Programmiersoftware STEP7 Programmerstellung II 40
AWL-Programmeditor - dient zur Erstellung von Anwenderprogrammen in den Programmiersprachen AWL, KOP und FUP - quellorientierte Programmierung mit symbolischer Adressierung wird empfohlen, da z.b. bei jeder Übersetzung neue absolute Adressen vergeben werden können - der Bausteinschutz KNOW_HOW_PROTECT ist nur bei der quellorientierten Programmerstellung möglich Programmiersoftware STEP7 AWL-Programmeditor 41
SCL-Programmeditor - ist Optionssoftware, gehört also nicht zur Grundausstattung des SIMATIC-Managers - in einer SCL-Quelle können bereits übersetzte Bausteine aufgerufen werden - aus einem übersetzten Baustein kann keine SCL-Quelle generiert werden Programmiersoftware STEP7 SCL-Programmeditor 42
Online-Betrieb - um die mit einem Engineering-System (ES) im Offline-Betrieb erstellten Programme in die CPU zu übertragen, sind beide über die MPI-Schnittstelle miteinander zu verbinden - befinden sich mehrere CPU s im MPI-Subnetz, müssen sie eindeutige Teilnehmernummern (MPI-Adressen) bekommen; diese wird bei der Parametrierung vergeben - die MPI-Adresse einer CPU lässt sich ändern - MPI-Parameter bleiben beim Urlöschen erhalten Schutz des Anwenderprogramms - Anwenderprogramme lassen sich durch Passwort schützen (CPU abhängig) - Kenntnis des Passwortes ermöglicht uneingeschränkten Zugriff Schutzstufe 1: Schlüsselschalterstellung - Schlüsselschalter befindet sich an der CPU - in den Stellungen RUN-P und STOP besteht uneingeschränkter Zugang zum Anwenderprogramm - in der Stellung RUN besteht nur lesender Zugriff - die Schutzstufe RUN lässt sich durch die Option Durch Passwort aufhebbar umgehen Schutzstufe 2: Schreibschutz unabhängig von der Schlüsselschalterstellung kann das Anwenderprogramm nur gelesen werden Schutzstufe 3: Schreib-/Leseschutz unabhängig von der Schlüsselschalterstellung besteht kein Zugriff auf des Anwenderprogramm Programmiersoftware STEP7 Online-Betrieb 43
CPU-Informationen Hardware diagnostizieren - Übersicht über die gestörten Baugruppen - ausführliche Diagnoseinformationen liefert die Hardware-Konfiguration in der Online-Ansicht Baugruppenzustand - Diagnosepuffer - Speicher (aktuelle Belegung von Arbeits- und Ladespeicher) - Zyklusdauer (Zykluszeit letzter, längster und kürzester Zyklus) - Zeitsystem (Eigenschaften der CPU-Uhr, Uhrensynchronisation, Betriebsstundenzähler) - Leistungsdaten (Speicherausbau, Größe der Operandenbereiche, Anzahl der verfügbaren Bausteine, vorhandene SFC s und SFB s) - Kommunikation (Baudrate und Kommunikationsverbindungen) Betriebszustand - es wird der aktuelle Betriebszustand der CPU angezeigt - dieser kann geändert werden Urlöschen Urlöschen der CPU im STOP-Zustand Programmiersoftware STEP7 CPU-Informationen I 44
Forcewerte anzeigen; Variablen beobachten - in Abhängigkeit von eingestellten Triggerbedingungen werden die in einer Variablentabelle stehenden Variablen beobachtet - Variable können über die VAT aktualisiert (gesteuert) werden - bei speziellen CPU s können bestimmten Variablen feste Werte vorgegeben werden, die vom Anwenderprogramm nicht geändert werden können (forcen) - mit Forcewerten können versehen werden Eingänge E (Prozessabbild) Ausgänge A (Prozessabbild) Peripherieeingänge PE Peripherieausgänge PA Merker M Programmiersoftware STEP7 CPU-Informationen II 45
Bausteinhantierung Bausteine übertragen - bei einem RAM-Ladespeicher kann das gesamte Programm online geladen werden aber auch einzelne Bausteine können unter Berücksichtigung der Ladereihenfolge online geändert, gelöscht oder nachgeladen werden - eine Zurückübertragung von SCL-Programmen von der CPU auf die Festplatte macht wenig Sinn, da übersetzte Programme vom SCL-Editor nicht bearbeitet werden können Bausteine online ändern um einer Dateninkonsistenz vorzubeugen, sollten online geänderte Bausteine immer offline auf der Festplatte gespeichert werden Bausteine löschen Komprimieren Datenbausteine offline/online - die Datenoperanden in den Datenbausteinen besitzen einen Anfangswert und einen Aktualwert - der Anfangswert wird in den Ladespeicher, der Aktualwert in den Arbeitsspeicher transferiert - Programme ändern den Aktualwert Programmiersoftware STEP7 Bausteinhantierung 46
Programm testen Hardware diagnostizieren - einholen von Diagnoseinformationen der gestörten Baugruppe - ausführliche Informationen liefert die Online-Sicht der Hardware-Konfiguration STOP-Ursache ermitteln in den Diagnosepuffer trägt die CPU alle Meldungen ein, die als Stop-Ursache gelten bzw. Fehler, die dazu geführt haben Variablen beobachten Variablen forcen Peripherieausgänge freischalten - Ausgabebaugruppen sind normalerweise im Stop-Zustand gesperrt - mit der Funktion PA freischalten und einer VAT können diese aber gesteuert werden AWL-Programmstatus - ein in der CPU befindlicher Baustein wird im Online-Fenster des SIMATIC-Managers beobachtet - es werden die Operandenstati, das Verknüpfungsergebnis und die Registerbelegung angezeigt - durch Haltepunkte kann das Programm an jeder gewünschten Stelle angehalten und anschließend schrittweise getestet werden SCL-Programme testen Programmiersoftware STEP7 Programm testen 47
Das Gesamtprogramm einer Zentralbaugruppe (CPU) besteht aus dem Betriebssystem und dem Anwenderprogramm. Betriebssystem - ist die Gesamtheit aller Anweisungen und Vereinbarungen geräteinterner Betriebsfunktionen - ist fester Bestandteil der CPU - kann vom Anwender nicht geändert werden Anwenderprogramm Gesamtheit aller vom Anwender programmierten Anweisungen und Vereinbarungen für die Signalverarbeitung, durch die eine zu steuernde Anlage (Prozess) gemäß der Steuerungsaufgabe beeinflusst wird. SIMATIC S7-Programm Programmbearbeitung 48
das Anwenderprogramm kann sich aus mehreren Programmteilen (Organisationsbausteinen) zusammensetzen, die bestimmten Ereignissen (Anlauf des Automatisierungssystems, Alarm, Erkennen eines Programmfehlers) zugeordnet sind SIMATIC S7-Programm Programmbearbeitungsarten I 49
- die Ereignisse sind in Prioritätsklassen eingeteilt - das Hauptprogramm, das von der CPU zyklisch bearbeitet wird, besitzt die niedrigste Priorität und kann nach jeder Anweisung unterbrochen werden - jedem Ereignis ist ein Organisationsbaustein (OB) zugeordnet - tritt ein Ereignis ein, ruft des Betriebssystem den entsprechenden OB auf - ein OB ist ein Bestandteil des Anwenderprogramms und wird vom Anwender programmiert - vor Bearbeitung des Hauptprogramms durchläuft die S7 ein Anlaufprogramm - ein Anlauf wird durch Einschalten der Betriebsspannung, den Betriebsartenschalter oder durch Bedienung am Programmiergerät ausgelöst - das Hauptprogramm steht im OB 1 - nach Abarbeitung des OB 1 verzweigt die CPU ins Betriebssystem und bearbeitet verschiedene Betriebssystemfunktionen (z.b. Prozessabbildaktualisierung) - anschließend wird der OB 1 erneut gestartet - tritt ein Alarm oder Fehler auf, wird die Bearbeitung des aktuellen OB s unterbrochen und entsprechend der Prioritätsklassen die Bearbeitung fortgesetzt SIMATIC S7-Programm Programmbearbeitungsarten II 50
Organisationsbaustein wird aufgerufen bei Priorität voreingestellt veränderbar freier Zyklus zyklischer Aufruf durch das Betriebssystem OB 1 1 nein Uhrzeitalarme OB 10 bis OB 17 bei einer bestimmten Zeit oder in periodischen Abständen (z.b. monatlich) 2 2 bis 24 Verzögerungsalarme nach einer einstellbaren Zeit, gesteuert durch das Anwenderprogramm OB 20 bis OB 23 3 bis 4 2 bis 24 Weckalarme periodisch in einstellbaren Zeitintervallen (z.b. alle 100 ms) OB 30 bis OB 38 7 bis 15 2 bis 24 Prozessalarme Alarmsignale von Peripheriebaugrup- 16 bis 23 2 bis 24 OB 40 bis OB 47 Mehrprozessoralarm OB 60 Redundanzfehler OB 70, OB 72 Asynchronfehler OB 80 OB81 bis OB84, 86, 87 OB 85 Hintergrundbearbeitung OB 90 Anlauf OB 100, OB 101, OB 102 Synchronfehler OB 121, OB 122 pen ereignisgesteuert durch das Anwenderprogramm im Mehrprozessorbetrieb Redundanzverlust durch Peripheriefehler CPU-Redundanz-Fehler Fehler, die nicht im Zusammenhang mit der Programmbearbeitung stehen (z.b. Zeitfehler, SV-Fehler, Diagnosealarm, Ziehen/Stecken-Alarm, Baugruppenträger-/Stationsausfall wenn die Mindestzykluszeit noch nicht erreicht ist Anlauf des Automatisierungssystems Fehler, die im Zusammenhang mit der Programmbearbeitung stehen (z.b. Peripheriezugriffsfehler 25 nein 25 28 26 26 26 2 bis 26 2 bis 28 26 2 bis 26 24 bis 26 29 nein 27 nein Priorität des verursachenden OB s SIMATIC S7-Programm Organisationsbausteine 51
- die Zeit zwischen zwei Starts des OB1 wird Zykluszeit genannt - ist eine Mindestzykluszeit projektiert, wird in der Zeit zwischen der tatsächlichen Zykluszeit und der Mindestzykluszeit der OB 90 (Hintergrundbearbeitung) aufgerufen SIMATIC S7-Programm Zykluszeit 52
Jede CPU hat eine für sie spezifische Anzahl an Einstellungen. Bei STEP7 sind folgende Parametrierungen möglich Anlauf Festlegung der Anlaufart (Kaltstart, Neustart, Wiederanlauf); zeitliche Überwachung der Fertigmeldungen bzw. des Parametrierens der Baugruppen; maximale Unterbrechungszeit, nach der noch ein Wiederanlauf möglich ist Zyklus/Taktmerker Zyklische Aktualisierung des Prozessabbildes ein-/ausschalten; Einstellung der Zyklusüberwachungszeit und der Mindestzykluszeit; prozentuale Zyklusbelastung durch Kommunikation; Nummer des Taktmerkerbytes; Größe der Prozessabbilder Remanenz Speicher Alarme Anzahl der remanenten Merkerbytes, Zeit- und Zählfunktionen; Festlegung der Remanenzbereiche bei Datenbausteinen max. Anzahl an temporären Lokaldaten in den Prioritätsklassen (Organisationsbausteinen); max. Größe des L-Stacks und der Anzahl der Kommunikationsaufträge Einstellung der Priorität der Prozessalarme, Verzögerungsalarme, Asynchronfehler und Kommunikationsalarme SIMATIC S7-Programm CPU-Einstellungen I 53
Uhrzeitalarme Einstellung der Priorität; Festlegung des Startzeitpunktes und der Periodizität Weckalarme Einstellung der Priorität, des Zeittaktes und der Phasenverschiebung Diagnose/Uhr Schutz STOP-Ursache anzeigen; Art und Zeitintervall der Synchronisation der Uhr, Korrekturfaktor Einstellung der Schutzstufe; Festlegung eines Passwortes Multicomputing Festlegung der CPU-Nummer Integrierte Peripherie Aktivierung und Parametrierung der integrierten Peripherie SIMATIC S7-Programm CPU-Einstellungen II 54
Ein Programm kann nach Belieben in einzelne Abschnitte aufgeteilt werden, wobei jeder Abschnitt ein abgeschlossener Programmteil sein soll Ein solcher Programmteil, der auch Baustein genannt wird, ist ein durch Funktion, Struktur oder Verwendungszweck abgegrenzter Teil des Anwenderprogramms Anwenderbausteine Bausteine mit Anwenderprogramm und Anwenderdaten Organisationsbausteine OB stellen die Schnittstelle zwischen Betriebssystem und Anwenderprogramm dar. Das Betriebssystem ruft die OB s bei bestimmten Ereignissen auf; das Hauptprogramm steht im OB 1; die anderen OB s haben entsprechend ihres Aufrufereignisses andere Nummern Funktionsbausteine FB - sind Baustein mit Gedächtnis - sie sind beim Aufruf über Bausteinparameter parametrierbar - ein FB verfügt über einen ihm zugeordneten Datenbaustein (Instanz-Datenbaustein) Funktionen FC - sind Bausteine ohne Gedächtnis - sie sind parametrierbar und liefern einen Rückgabewert (Funktionswert) an das aufrufende Programm zurück - FC s können neben dem Funktionswert noch andere Ausgangsparameter haben SIMATIC S7-Programm Bausteine (Bausteinarten) I 55
Datenbausteine DB enthalten die Daten des Programms Global-Datenbaustein freier Datenbaustein, d.h. er ist keinem Codebaustein zugeordnet Instanz-Datenbaustein - ist fest einen Funktionsbaustein zugeordnet; in ihm sind die Aktualparameter und die statischen Daten des FB s gespeichert - die im FB deklarierten Variablen bestimmen die Struktur des Instanz-Datenbausteins Systembausteine sind Bestandteil des Betriebssystems Systemfunktionen SFC Systemfunktionsbausteine SFB Systemdatenbausteine SDB machen wichtige Systemfunktionen (Handhabung der CPU-internen Uhr; Kommunikationsfunktionen) zugänglich sie können vom Anwender nicht geändert werden Standardbausteine sind fertige Bausteine, die mit STEP 7 geliefert werden (z.b. IEC-Funktionen) SIMATIC S7-Programm Bausteine (Bausteinarten) II 56
Codebausteine bestehen im wesentlichen aus Bausteinkopf Deklarationsteil Programmteil Inkrementelle Programmierung Quellenorientierte Programmierung SIMATIC S7-Programm Bausteine (Bausteinstruktur Codebaustein) 57
Datenbausteine gliedern sich in Bausteinkopf Deklarationsteil Initialisierungsteil Inkrementelle Programmierung Quellenorientierte Programmierung SIMATIC S7-Programm Bausteine (Bausteinstruktur Datenbaustein) 58
absolute Adressierung - alle Variablen mit elementaren Datentyp lassen sich absolut adressieren - die Absolutadresse ergibt sich aus der Baugruppenadresse (Konfigurationstabelle) und dem Anschluss des Signals an der Baugruppe Binärsignale - enthalten als Information 1 Bit - sind Eingangssignale der Digitaleingabebaugruppen bzw. Ausgangssignale von Digitalausgabebaugruppen Analogsignale - enthalten als Information 16 Bit - Analogsignale werden auf Analogeingabebaugruppen geführt, digitalisiert und der Steuerung als 16 Bit breite Information angeboten bzw. werden 16 Bit Informationen ausgegeben und in einer Analogausgabebaugruppe in einen Analogwert umgewandelt SIMATIC S7-Programm Variablen-Adressierung (absolut) I 59
- in STEP 7 gibt es 4 Informationsbreiten, die absolut adressiert werden können 1 Bit Datentyp BOOL der Datentyp BOOL wird durch ein Operandenkennzeichen, einer Bytenummer und getrennt durch einen Punkt einer Bitnummer adressiert, z.b. E3.6, A23.3, DB10.DBX2.0 8 Bit Datentyp BYTE oder ein anderer Datentyp mit 8 Bits adressiert wird dieser Datentyp durch ein um ein B erweitertes Operandenkennzeichen und die Nummer des Bytes, z.b. EB4, AB5, DB11.DBB14 16 Bit Datentyp WORD oder ein anderer Datentyp mit 16 Bits die Adresse eines Wortes ergibt sich aus einem um ein W erweitertes Operandenkennzeichen und die Nummer des niedrigeren Bytes, z.b. MW6, AW14, DB 20.DBW20 32 Bit Datentyp DWORD oder ein anderer Datentyp mit 32 Bits die Absolutadresse ergibt sich aus dem um ein D erweitertem Operandenkennzeichen und der Nummer des niedrigsten Bytes, z.b. ED4, MD32, DB24.DBD10 SIMATIC S7-Programm Variablen-Adressierung (absolut) II 60
indirekte Adressierung - die Adresse wird erst zur Laufzeit berechnet - die Adresse wird erst zur Laufzeit berechnet SIMATIC S7-Programm Variablen-Adressierung (indirekt) 61
Variablen symbolisch adressieren - wird anstelle der absoluten Adressierung verwendet - Name beginnt mit einem Buchstaben und kann bis zu 24 Zeichen lang sein - dem symbolischen Namen muss eine absolute Adresse zugeordnet werden globale Symbole - sind in der Symboltabelle vereinbart - sind programmweit eindeutig - symbolische Namen können für Datenbausteine und Codebausteine Eingänge, Ausgänge, Peripherie-Eingänge und Peripherie-Ausgänge Merker, Zeitfunktionen und Zählfunktionen anwenderdefinierte Datentypen Variablentabellen vergeben werden bausteinlokale Symbole - sind im Deklarationsteil des Bausteins festgelegt - ihre Gültigkeit beschränkt sich auf den entsprechenden Baustein SIMATIC S7-Programm Variablen-Adressierung (symbolisch) 62
Realisierung zeitlicher Abläufe - Warte- und Überwachungszeiten - Messung einer Zeitspanne - Bildung von Impulsen folgende Zeitoperationen sind möglich: Starten einer Zeit - SI: Impulsbildung - SV: verlängerter Impuls - SE: Einschaltverzögerung - SS: speichernde Einschaltverzögerung - SA: speichernde Ausschaltverzögerung R: Rücksetzen einer Zeit FR: Freigabe einer Zeit Laden einer Zeit U, UN, O, ON, X, XN: Signalzustandsabfrage einer Zeit, Verknüpfen des Ergebnisses SIMATIC S7-Programm Zeitfunktionen 63
Starten einer Zeitfunktion eine Zeitfunktion startet (die Zeit läuft an), wenn das Verknüpfungsergebnis (VKE) vor der Startoperation wechselt VKE 0 1: Ausschaltverzögerung VKE 1 0: alle anderen Zeitfunktionen SIMATIC S7-Programm Zeitfunktionen (Start) 64
Vorgabe der Zeitdauer - die Zeitfunktion übernimmt beim Start den im AKKU1 stehenden Wert als Zeitdauer - die Zeitdauer kann vorgegeben werden als Konstante definierte Zahlenbereich geht von S5TIME#10ms bis S5TIME#2h46m30s Variable Aufbau der Zeitdauer SIMATIC S7-Programm Zeitfunktionen (Zeitdauer) 65
Zähler setzen ein Zähler wird gesetzt, wenn das VKE vor der Setzoperation von 0 nach 1 wechselt - Vorgabe des Zählwertes Konstante Variable - Zählwert rücksetzen - Vorwärtszählen - Rückwärtszählen - Freigeben einer Zählfunktion mit dem Freigeben einer Zähloperation wird das Setzen und das Zählen auch ohne positive Flanke vor einer entsprechenden Operation ausgeführt SIMATIC S7-Programm Zählfunktionen 66