SPS Programmierung
am Beispiel eines Bioreaktors
SIMATIC S7/300 von Siemens
Eine SPS ist meist modular aufgebaut. So auch die SIMATIC S7/300 von Siemens. Sie ist obligat mit einem Netzteil ausgestattet und einer CPU. Sie besitzt Signaleingänge (E) und Signalausgänge (A). Die E/A-Baugruppen haben die Aufgabe, Singale für die interne Verarbeitung zur Verfügung zu stellen und Signale an die Ausgänge zu legen. Die CPU arbeitet mit einer Versorgungspannung von 5 V. Binärsignale arbeiten auf einem anderen Spannungsniveau, meist 24 V. Neben binär arbeitenden Baugruppen, die nur mit 1 Bit belegt werden können, gibt es analoge Ein- und Ausgabegruppen mit einer Datenbreite zwischen 8 und 15 Bit.
Der Systembus verbindet die Ein- und Ausgabebaugruppen mit der CPU. Daneben besitzen moderne SPS meist noch weitere Bussysteme, die es ermöglichen, weit entfernte Baugruppen oder mehrere SPS zu einem System zusammenzuschließen.
Adressierung Eingänge/Ausgänge
Die Adressierung der Ein- und Ausgänge ist davon abhängig, ob es sich um eine Digitalbaugruppe oder Analogbaugruppe handelt und auf welchem Steckplatz die Baugruppe plaziert ist. Die Zuweisung der Adressen erfolgt automatisch.
PS = Spannungsversorgung, IM = Anschaltungsbaugruppen, die Baugruppenträger untereinander verbindet
MPI-Schnittstelle
Die für dieses Praktikum verwendete SPS kommuniziert mit dem PC über eine MPI-Schnittstelle (Multipoint-Interface). Die MPI-Adresse für die SIMATIC S7/300 ist mit dem Wert 2 belegt, der PC hat die MPI-Adresse 0. Daneben besteht die Möglichkeit, mit Profibus oder Ethernet zu arbeiten.
CPU
Die Zentraleinheit besteht aus einem RAM Speicher, in dem das fertige Anwenderprogramm gespeichert wird. Die CPU ist der eigentliche Mikroprozessor, der die Signalverarbeitung bzw. Verknüpfung der digitalen Signale durchführt. Dabei fragt der Adressenzähler den Programmspeicher Anweisung für Anweisung nacheinander ab und überträgt die Daten vom Programmspeicher in das Anweisungsregister. Als Register bezeichnet man alle Speicherbausteine eines Prozessors. Das Steuerwerk erhält seine Anweisungen vom Anweisungsregister. Während einer Bearbeitung einer Anweisung durch das Steuerwerk, schiebt der Adresszähler die nächste Anweisung in das Anweisungsregister.
Zykluszeit
Ein wesentliches Kennzeichen einer SPS ist die über das Betriebssystem gesteuerte zyklische Programmbearbeitung. Das Programm wird sequentiell durchlaufen und immer wieder von neuem abgearbeitet. Innerhalb einer vorgegebenen Zeit muss ein Zyklus durchlaufen worden sein. Typische Zykluszeiten liegen im Bereich von etwa 100 ms.
Prozessabbild
Aktualisierung von PAA und PAE bei jedem Zyklus
PAA und PAE werden während eines Zyklus nicht geändert
PAE = Prozessabbild der Eingänge
PAA = Prozessabbild der Ausgänge
Globaldaten in Symboltabelle
STEP7 unterscheidet zwischen Globaldaten und Lokaldaten. Die globalen Daten sind die bekannten SPS-Eingänge, Ausgänge, Merker, Zeiten und Zähler und sind in allen Bausteintypen bekannt und gültig. Globale Daten können mit einem symbolischen Namen versehen werden, die Deklaration erfolgt in der Symboltabelle. Globale und lokale Daten sind Variablen, die mit einem Wert belegt werden können. Unter STEP7 heißen Variablen „Operanden“. Eine Variable wird über einen Namen angesprochen und verweist auf einen Speicherplatz, der im Anwenderprogramm als Platzhalter für Daten fungiert, die sich zur Laufzeit des Programmes ändern können. Durch die Festlegung auf einen bestimmten Datentyp erhält der Speicherplatz die passende Größe für die zu speichernden Daten.
Wichtige elementare Datentypen in STEP7
Ein wichtiges Kriterium für die Zuordnung zur Gruppe ist die benötigte Speicherplatzgröße. Die Obergrenze ist 32 Bit, was auch gleichzeitig die Obergrenze eines Akkumulators einer S7-CPU ist.