SPS Seminar
-
Upload
hubertus-ryll -
Category
Documents
-
view
160 -
download
4
Transcript of SPS Seminar
Steuerungstechnikmit SIMATIC S7-300 2006, Rolf Oeberst
Programmverwirklichung (1)
S t e u e r e i n r i c h t u n gSignaleingabe Eingabe Verarbeitung Ausgabe Stellglieder
S1
S2Programm
S1
S2E 0.0 E0.1
K1E0.2 E0.3
K2 2006, Rolf Oeberst
SteuerungA0.0 A0.1 A0.2 A0.3
K1
K1
Verbindungsprogrammierte Steuerung (VPS)
Speicherprogrammierbare Steuerung (SPS)
1
Programmverwirklichung (2)
Verbindungsprogrammierte Steuerung Bei der Schtztechnik wird die Steuerlogik dadurch aufgebaut, dass die Schtzkontakte in Reihen- und/oder Parallelschaltung durch Leitungen verbunden sind.
2006, Rolf Oeberst
Hauptstromkreis
Steuerstromkreis
Programmverwirklichung (3)
Speicherprogrammierbare Steuerung Bei der SPS wird die Steuerungslogik durch eine Software, dem SPS-Programm, realisiert. Das Softwareprogramm ist in der SPS gespeichert.
F2
S0
S1
S11
S12
S13
E 0.0
E0.1
E0.2
E0.3
E0.4
E0.5
SPSA0.0 A0.1 A0.2 A0.3 A0.4 A0.5
2006, Rolf Oeberst
K2 K1 K2
K1 H1 H2
Hauptstromkreis
Steuerstromkreis
2
Was ist eine SPS ?
Unter einer SPS (Speicherprogrammierbare Steuerung) bzw. PLC (programmable logic controller) versteht man nach DIN 61131-1 ein digital arbeitendes elektronisches System mit einem programmierbaren Speicher zur internen Speicherung der anwenderorientierten Steuerungsanweisungen zur Implementierung spezifischer Funktionen wie z.B. Verknpfungssteuerung, Ablaufsteuerung, Zeit-, Zhl- und arithmetische Funktionen, um durch digitale oder analoge Eingangs- und Ausgangssignale verschiedene Arten von Maschinen und Prozessen zu steuern.
SPS: S7-200 SPS-Ausgang Spannungsversorgung 2006, Rolf OeberstSF I0.0 Q0.0
Micro PLC 212
SIEMENS
RUN
I0.1
Q0.1
STOP
I0.2
Q0.2
I0.3
Q0.3
I0.4
Q0.4
I0.5
Q0.5
~SPS-Eingang
SIMATIC S7-200
I0.6
I0.7
SPSEingang
Aufbau einer SPS (1)Energieversorgung
Eingabe E I N G N G Ebinr / digital / analog
Verarbeitung
Ausgabe A U S G N G Ebinr / digital / analog
Umsetzung physikalisch logisch(Signalanpassung/ -umformung)
Mikrocomputer mit SPS-Firmware
Umsetzung logisch physikalisch(Signalumformung/ -verstrkung)
Kommunikation 2006, Rolf Oeberst
3
Aufbau einer SPS (2)
Speicher: Der Speicher enthlt u.a. das SPS-Programm. Steuerwerk: Das Steuerwerk bernimmt die Initialisierung (Nullsetzen aller Zhler, Zeitglieder und Merker sowie Akku). Die Hauptaufgabe besteht in der sequentiellen Abarbeitung der Anweisungen, die im ProgrammSpeicher abgelegt sind. Merker: Dienen zur Zwischenspeicherung von Signalzustnden (Hilfsschtz). Zeitglieder: Mit Hilfe von Zeitgliedern lassen sich Ereignisse zu bestimmten Zeitpunkten auslsen. Prozessabbild: Enthlt die Signalzustnde der Ein- und Ausgnge zu einem bestimmten Zeitpunkt. 2006, Rolf Oeberst
Zhler: Zhler ermglichen ein Zhlen von Ereignissen. Akku: Der Akku ist der Zwischenspeicher, in dem Berechnungen ausgefhrt werden.
Arbeitsweise einer SPS (1)
Eine SPS arbeitet nicht direkt mit den digitalen Ein- und Ausgngen, sondern mit dem so genannten Prozessabbild. Das Prozessabbild ist der konsistente Satz von Ein- und Ausgangsgren zu einem bestimmten Zeitpunkt.
Am Anfang der Programmbearbeitung werden die Signalzustnde aller Eingnge gleichzeitig zum Prozessabbild der Eingnge (PAE) bertragen. Falls sich Eingangsgren whrend der Programmbearbeitung ndern, so hat dies keinen Einfluss auf das Berechnungsergebnis. Signalwechsel whrend der Programmbearbeitung werden erst im nchsten Zyklus bercksichtigt. Es wird also stets mit den Signalwerten gerechnet, die zu Beginn eines Berechnungszyklusses eingelesen wurden. Aus der Programmbearbeitung resultierende nderungen der Signalzustnde fr die jeweiligen Ausgnge werden im Prozessabbild der Ausgnge (PAA) zwischengespeichert. Am Ende der Programmbearbeitung wird das Prozessabbild der Ausgnge zu den Ausgngen transferiert.
2006, Rolf Oeberst
4
Arbeitsweise einer SPS (2)
Schritt 1: Abfrage aller Eingnge auf ihren Signalzustand und im PAE ablegenEingangsbaugruppe PAE Register PAA Register Ausgangsbaugruppe
Programmliste
1. Anweisung 2. Anweisung 3. Anweisung 4. Anweisung 5. Anweisung Schritt 1 6. Anweisung 7. Anweisung
2006, Rolf Oeberst
Programmende
Arbeitsweise einer SPS (3)
Schritt 2: sequentielle ProgrammbearbeitungEingangsbaugruppe PAE Register PAA Register Ausgangsbaugruppe
Programmliste
1. Anweisung 2. Anweisung 3. Anweisung Schritt 2 4. Anweisung 5. Anweisung 6. Anweisung 7. Anweisung
2006, Rolf Oeberst
Programmende
5
Arbeitsweise einer SPS (4)
Schritt 3: Die Ergebnisse aus den Anweisungen werden nun in das PAA geschrieben.Eingangsbaugruppe PAE Register PAA Register Ausgangsbaugruppe
Programmliste
1. Anweisung 2. Anweisung 3. Anweisung 4. Anweisung 5. Anweisung 6. Anweisung 7. Anweisung Schritt 3
2006, Rolf Oeberst
Schritt 3
Programmende
Arbeitsweise einer SPS (5)
Schritt 4: das PAA wird in die Ausgabebaugruppe geschrieben.Eingangsbaugruppe PAE Register PAA Register Ausgangsbaugruppe
Programmliste
1. Anweisung 2. Anweisung 3. Anweisung 4. Anweisung 5. Anweisung 6. Anweisung 7. Anweisung Schritt 4
2006, Rolf Oeberst
Programmende
6
Arbeitsweise einer SPS (6)
Ein Zyklus umfasst das Lesen der Eingnge, die Bearbeitung des SPS-Programms vom ersten bis zum letzten Befehl und das Schreiben der Ausgnge. Dieser Vorgang wiederholt sich in der CPU stndig.
Eingnge lesen
Programmbearbeitung Ausgnge schreiben
2006, Rolf Oeberst
Meldungen bearbeiten Selbstdiagnose
Aufbau einer SPS
Unter den Herstellern von SPS-Steuerungen findet man in der Regel zwei Gertelinien:
Kompaktsteuerungen Das Gehuse beinhaltet alle wesentlichen Grundkomponenten durch zustzliche Baugruppenmodule erweiterbar fr den unteren bis mittleren Leistungsbereich in der Anlagenautomatisierung
Modularsteuerungen Bestehen aus verschiedenen Einzelkomponenten wie Baugruppentrger, Spannungsversorgung, CPU, Ein- und Ausgabebaugruppen Fr den mittleren bis oberen Leistungsbereich in der Anlagenautomatisierung
2006, Rolf Oeberst
S7-200
S7-300
7
Modularer Aufbau
Die S7-300 ist modular aufgebaut. Sie knnen sich aus dem umfassenden Baugruppenspektrum die S7-300 individuell zusammenstellen. Alle Baugruppen der S7-300 sind durch ein Gehuse in der Schutzart IP 20 geschtzt, d. h. sie sind gekapselt und lfterlos betreibbar.
Das Baugruppenspektrum umfasst: CPUs fr unterschiedliche Leistungsbereiche Signalbaugruppen fr digitale und analoge Ein-/Ausgabe Funktionsbaugruppen fr Technologiefunktionen CPs fr Kommunikationsaufgaben Laststromversorgungen zum Anschluss der S7-300 an eine Versorgungsspannung von AC 120/230V 2006, Rolf Oeberst
Anschaltungsbaugruppen zur Verbindung der Baugruppentrger bei einem Aufbau auf mehrere Baugruppentrger
Komponenten einer S7-300
Komponenten Profilschiene (Rack) Stromversorgung (PS)
Funktion ... ist der Baugruppentrger fr eine S7-300 ... setzt Netzspannung (AC 120/230V) in DC 24V Betriebsspannung um Versorgung der S7-300 sowie Laststromversorgung fr DC 24V-Laststromkreise; kurzschluss- und leerlauffest ... fhrt das Anwenderprogramm aus; versorgt den S7300 Rckwandbus mit 5V; kommuniziert ber die MPISchnittstelle mit anderen Teilnehmern eines MPINetzes. ... nehmen Feldsignale (Sensor-/ Aktorsignale) auf und passen sie an die Signalpegel der S7-300 an (digitale und analoge Ein-/Ausgabebaugruppen) ... fr zeitkritische und speicherintensive Prozesssignalverarbeitungsaufgaben, z.B. Positionieren oder Regeln ... entlasten die CPU von Kommunikationsaufgaben und ermglichen die Vernetzung z.B. PROFIBUS / Ethernet / Punkt-zu-Punkt-Kopplung ... verbindet die einzelnen Zeilen (Racks) miteinander.
Prozessorbaugruppe (CPU)
Signalbaugruppe (SM)
Funktionsbaugruppen (FM) Kommunikationsprozessor (CP) 2006, Rolf Oeberst
Anschaltungsbaugruppe (IM)
8
Anordnung der Baugruppen
Anordnung der Baugruppen auf einen Baugruppentrger
Rack
PS
CPU
SM/FM/CP
MPI 2006, Rolf Oeberst
Maximalausbau einer S7-300
Baugruppentrger 3
PS IM
SMs
Baugruppentrger 2
PS
IM
SMs
Baugruppentrger 1
PS
IM
SMs max. 10 m
2006, Rolf Oeberst
Baugruppentrger 0
PS
CPU
IM
SMs
Rack
9
Adressieren der S7-Baugruppen
Adressierung
Steckplatzorientierte AdressvergabeSTEP7 ordnet jeder Steckplatznummer eine festgelegte Baugruppen-Anfangsadresse (Defaultadresse) zu.
Freie AdressvergabeBei der freien Adressvergabe knnen Sie jeder Baugruppe eine beliebige Adresse innerhalb des von der CPU mglichen Adressbereiches zuordnen. Die freie Adressvergabe ist bei der S7-300 nur mglich mit der CPU 315-2 DP.
2006, Rolf Oeberst
Steckpltze bei S7-300
IM3 4 5 6 7 8 9 10 11
IM3 4 5 6 7 8 9 10 11
IM3 4 5 6 7 8 9 10 11
PS1 2006, Rolf Oeberst
CPU2
IM3
SM4
SM5
SM6
SM7
SM8
SM9
SM10
SM11
10
Baugruppenadressierung
Baugruppentrger
BaugruppenAnfangsadresse Digital Analog Digital Analog Digital Analog Digital Analog
Steckplatznummer 1 PS 2 CPU 3 IM 4 0 256 32 384 64 512 96 640 5 4 272 36 400 68 528 100 656 6 8 288 40 416 72 544 104 672 7 12 304 44 432 76 560 108 688 8 16 320 48 448 80 576 112 704 9 20 336 52 464 84 592 116 720 10 24 252 56 480 88 608 120 736 11 28 368 69 496 92 624 124 752
0
1
IM
2
IM
3
IM
2006, Rolf Oeberst
Nicht bei CPU 314 IFM Nicht bei CPU 312 IFM/313
Adressierung
7
6
5
4
3
2
1
0
Bitadresse .7 ....... .0
EB0 AB4
EB1 AB5
EB2 AB6
EB3 AB7
Byteadresse (8 Bit)
EW0 AW4
EW2 AW6
Wortadresse (16 Bit)
2006, Rolf Oeberst
ED0 AD4
Doppelwortadresse (32 Bit)
11
Automatisierungssystem S7-300: CPU 314
Status- und Fehleranzeigen:SF: BATF: DC5V: FRCE: RUN: STOP: Sammelfehler Batteriefehler interne 5V-Versorgung Forcen (Zwangssteuern) aktiv Betriebszustand RUN Betriebszustand STOPRUN-P RUN SF BATF DC5 FRCE RUN STOP CPU 314
Betriebsartenschalter:RUN-P: RUN: STOP: MRES: Programmbearbeitung und -korrektur Programmbearbeitung mit Schreibschutz CPU im Stop Urlschfunktion (Memory Reset)STOP MRES
Schacht fr Memory Card
M L+ M 2006, Rolf Oeberst
Fach fr Pufferbatterie
Anschlu fr Spannungsversorgung
Mehrpunktfhige MPI-Schnittstellle
Automatisierungssystem S7-300: CPU 314
Die CPU 314 zeichnet sich durch folgende Eigenschaften aus: 24 KByte Arbeitsspeicher (RAM) 40 KByte Ladespeicher (RAM); Geschwindigkeit ca. 0,3 ms pro 1000 Binranweisungen Digitalein-/ausgnge: Analogein-/ausgnge: Prozeabbild (PAE/PAA): Merker (M0.0 ... M255.7): Zhler (Z0 .... Z63): Zeiten (T0 ... T127): 1024 256 128 Byte (E0.0 bis E127.7 / A0.0 bis A127.7) 2048 64 128
2006, Rolf Oeberst
12
Programmbearbeitung (1)
Lineare Programmbearbeitung Bei der linearen Programmbearbeitung werden die Anweisungen von der SPS in der Reihenfolge bearbeitet, in der sie im Programmspeicher hinterlegt sind. Wenn das Programmende erreicht ist beginnt die Programmbearbeitung wieder von vorne. Man spricht von zyklischer Bearbeitung. Die lineare Programmbearbeitung wird meist fr einfache, nicht zu umfangreiche Steuerungen verwendet und kann im OB1 realisiert werden. OB11. Anweisung 2. Anweisung 3. Anweisung
...
2006, Rolf Oeberst
Programmende
Programmbearbeitung (2)
Strukturierte Programmbearbeitung Das Programm unterteilt man bei umfangreichen Steuerungsaufgaben in kleine, berschaubare und nach Funktionen geordnete Programmbausteine. FB1 OB1Anweisung Aufruf FB1 Anweisung Anweisung Aufruf FC2 Anweisung Anweisung. . .
FC21 DB11 DB 10
Rcksprung
FC2Anweisung. . .
2006, Rolf Oeberst
. . .Anweisung
Rcksprung
OB = Organisationsbaustein FB = Funktionsbaustein FC = Funktion DB = Datenbaustein
13
Programmbearbeitung (3)
Anwenderbausteine Organisationsbaustein (OB): Funktionsbaustein (FB): Funktion (FC): Datenbaustein (DB): Anwender-Schnittstelle zum Betriebssystem OB1 zyklische Programmbearbeitung Baustein mit Speicher und Mglichkeit zur Parameterbergabe Baustein ohne Speicher, Mglichkeit zur Parameterbergabe Baustein zur Ablage von Anwenderdaten
Systembausteine Systemdatenbaustein (SDB): 2006, Rolf Oeberst
Datenbaustein zur Ablage von systeminternen Daten vom Anwender aufrufbarer Systembaustein vorprogrammierte Funktion, im Betriebssystem integriert
System-Funktionsbaustein (SFB): Systemfunktion (SFC):
Phasen der Softwareentwicklung einer SPS
Spezifikation der Steuerungsaufgabe
Aufgaben der SPS Funktionsbeschreibung Auswahl der Steuerungshardware Programmstrukturierung Wiederverwendung Entwurf der Programmmodule Anweisungsliste (AWL) Kontaktplan (KOP) Funktionsplan (FUP) Manuelle Programmanalyse Debugging Simulation Programmdokumentation Erweiterungen Korrekturen
Programmentwurf
Programmierung
Programmtest 2006, Rolf Oeberst
Wartung und Pflege
14
Spezifikation der Steuerungsaufgabe
Was soll gesteuert werden?
Welche Teilaufgaben sind zu erfllen?
Welche Sicherheitsanforderungen gibt es?
Welche sonstigen Anforderungen gibt es?
2006, Rolf Oeberst
Welche Operanden werden bentigt?
Beschreibungsformen logischer Funktionen
Die Funktion einer logische Schaltung lsst sich auf fnf verschiedene Arten eindeutig beschreiben und zwar durch: 1. eine Beschreibung in Worten (verbale Beschreibung) 2. ein Schaltzeichen 3. eine Wahrheitstabelle (Wertetabelle, Funktionstabelle) 4. eine Funktionsgleichung oder 5. einen Signal-Zeit-Plan (Zeitablaufdiagramm)
Y = A & /B
B0 0 1 Y 1
A0 1 0 1
Y0 1 0 0
A B Y
1 0 1 0 1 0
2006, Rolf Oeberst
A B
&
15
Rechenregeln der booleschen Algebra
x 0=x x 1=1 x 0=0 x 1=xGeorge Boole (02.11.1815 - 08.12.1864)englischer Mathematiker und Philosoph
x x=x x x=x x x=1 x x=0 x=x
2006, Rolf Oeberst
Der Englnder George Boole fhrte 1853 als erster logische Verknpfungen in algebraischen Gleichungen ein. Er geht vom dualen Zahlensystem aus, wie es Gottfried Wilhelm Leibniz entwickelt und am 15.03.1679 als dyadisches Zahlensystem verffentlich hatte. Boole deutet die 1 im Dualsystem als Ja oder richtig, die 0 als Nein oder falsch und fhrt die logischen Operationen AND, OR und NOT ein. Variablen mit den Zustnden 0 und 1 bezeichnet man als boolesche Variable.
Rechenregeln der booleschen Algebra
Augustus de Morgan (27.06.1806 - 18.03.1871)englischer Mathematiker
(a b) = a b 2006, Rolf Oeberst
oder
(a b) = a b (a b) = a b
(a b) = a b
16
Wahrheitstabelle (1)
Die vollstndige Wahrheitstabelle (Wertetabelle, Funktionstabelle) enthlt alle Kombinationen der Eingangsvariablen und die dazugehrigen Ausgangsvariablen. Die Wahrheitstabelle beschreibt vollstndig eine kombinatorische logische Schaltung.
x 0 0 0 0 1 1 1 2006, Rolf Oeberst
y 0 0 1 1 0 0 1 1
z 0 1 0 1 0 1 0 1
f 0 1 1 0 1 0 0 1
g 0 0 0 1 0 1 1 1
1
Wahrheitstabelle (2)
Zur Ermittlung der Schaltung stellt man bei unbersichtlichen Schaltbedingungen zunchst die vollstndige Wahrheitstabelle auf und bildet dann entweder die ODERNormalform (Disjunktive Normalform DNF) oder die UND-Normalform (Konjunktive Normalform KNF). Bei der DNF werden alle Minterme miteinander ODER und bei der KNF alle Maxterme mit UND verknpft.
b 0 0 1 1
a 0 1 0 1
x 0 1 1 0
Maxterm1 Minterm1 Minterm2 Maxterm2
x = Minterm1 Minterm2 oder x = Maxterm1 Maxterm2 bzw. x = Maxterm1 Maxterm2
2006, Rolf Oeberst
DNF:
x = (a b) (a b)
KNF:
x = (a b) (a b) x = (a b) (a b)
17
Wahrheitstabelle (3)
x 0 0 0 0 1 1 1 1
y 0 0 1 1 0 0 1 1
z 0 1 0 1 0 1 0 1
f 0 1 1 0 1 0 0 1
g 0 0 0 1 0 1 1 1
Zeile 2 Zeile 3 Zeile 4 Zeile 5 Zeile 6 Zeile 7 Zeile 8
Zeile 8
f = Zeile2 Zeile3 Zeile5 Zeile8 2006, Rolf Oeberst
f = (x y z) (x y z) (x y z) (x y z)
g = (x y z) (x y z) (x y z) (x y z)
Elementare Gatter
Inverter (Negation)
Konjunktion (AND) a b &
Disjunktion (OR) a b 1
a
1
x
x
x
x=a
x=ab
x=ab
a 0 1 2006, Rolf Oeberst
x 1 0
b 0 0 1 1
a 0 1 0 1
x 0 0 0 1
b 0 0 1 1
a 0 1 0 1
x 0 1 1 1
18
Elementare Gatter
NAND a b & a b
NOR
x
1
x
x=abb 0 0 2006, Rolf Oeberst
x=abb 0 0 1 1 a 0 1 0 1 x 1 0 0 0
a 0 1 0 1
x 1 1 1 0
1 1
Elementare Gatter
Antivalenz (EXOR, XOR, exklusives Oder) a b =1 x
quivalenz (EXNOR, XNOR, Gleichheit) a b =1 x
x = a b = (a b) (a b)
x = a b = (a b) (a b) x=abb 0 0 1 1 a 0 1 0 1 x 1 0 0 1
b 0 0 2006, Rolf Oeberst
a 0 1 0 1
x 0 1 1 0
1 1
19
bung: Aufstellen einer Wahrheitstabelle
Geben Sie folgende Schaltung als Wahrheitstabelle an.
a b c 1 e
&
d
1
x
&
g d=ab
a b 2006, Rolf Oeberst
1
f
e=c f=a g=bef= abc x=dg
x = (a b) (a b c)
bung: Aufstellen einer Wahrheitstabelle
c0 0 0 0 1 1 1 1
b0 0 1 1 0 0 1 1
a0 1 0 1 0 1 0 1
d ab0 0 0 1 0 0 0 1
e /c1 1 1 1 0 0 0 0
f /a1 0 1 0 1 0 1 0
g bef0 0 1 0 0 0 0 0
x dg0 0 1 1 0 0 0 1
2006, Rolf Oeberst
x = (a b c) (a b c) (a b c)
20
Vereinfachen der Schaltfunktionen (Minimierung)
Bei der direkten Umsetzung einer Wahrheitstabelle in ein SPS-Programm muss unter Umstnden ein erheblicher Programmieraufwand betrieben werden. Mit Hilfe von algebraischer, tabellarischer und grafischer Minimierung knnen die Schaltfunktionen umgewandelt und vereinfacht werden.
1. Rechenregeln und Gesetze der Schaltalgebra (Algebraisches Verfahren) Kommutativgesetz (Vertauschungsgesetz) Assoziativgesetz (Verbindungsgesetz / Zuordnungsgesetz) Distributivgesetz (Verteilungsgesetz) De Morgansches Theorem (Negationsgesetz / Inversionsgesetz) Absorptionsgesetz (Verschmelzungsgesetz)
2006, Rolf Oeberst
2. Verfahren nach Quine und McCluskey (tabellarisches Verfahren)
3. Karnaugh-Veitch-Diagramm / Karnaugh-Tafel (grafisches Verfahren)
Gesetze der Booleschen Algebra (1)
Involutionsgesetz: Kommutativgesetze: Assoziativgesetze: Idempotenzgesetze: Absorbtionsgesetze: Distributivgesetze: De Morgan'sche Gesetze: 2006, Rolf Oeberst
a=a ab=ba ab=ba (a b) c = a (b c) = a b c (a b) c = a (b c) = a b c aa=a aa=a a (a b) = a a (a b) = a a (b c) = (a b) (a c) a (b c) = (a b) (a c) (a b) = ( a) ( b) (a b) = ( a) ( b) a (b b) = a a (b b) = a
Neutralittsgesetze:
21
Gesetze der Booleschen Algebra (2)
Beispiel: x = (a b c) (a b c) ( a b c) ( a b c) erweitern mit
( a b c)
(a b c) ( a b c) (a b c) ( a b c) ( a b c) ( a b c)
(a b) ( c c)
(a c) ( b b)
(b c) ( a a)
2006, Rolf Oeberst
x=
(a b)
(a c)
(b c)
Quine/McCluskey-Verfahren
Dieses tabellarisches Verfahren zur Minimierung erhlt als Eingabe alle Minterme der entsprechenden DNF und berechnet daraus die optimale Normalform. Es wird nach Mintermen gesucht, die bis auf eine Variable bereinstimmen. Diese beiden werden abgehakt und der um diese Variable gekrzte Ausdruck als neuer Minterm eingetragen. Dieser Vorgang wiederholt sich solange, bis sich keine Mglichkeiten zur Zusammenfassung und Streichung ergeben.
Beispiel:
x = (a b c) (a b c) ( a b c) ( a b c)
Minterme abc abc abc 2006, Rolf Oeberst
Krzungen X X X X X X
neuer Minterm ab ac bc
abc
x = (a b) (a c) ( b c)
22
KV-Diagramme (1)
Dieses Verfahren ist nach dessen Entwicklern (Karnaugh / Veitch) benannt und dient der Vereinfachung (Minimierung) von Schaltnetzen.d 0 0 0 0 0 0 0 0 1 1 1 1 2006, Rolf Oeberst 1 1 1 1 c 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 a 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Zeile 0 1 2 3 4 5 6 7 8 9 10 11 11 13 14 15
Das KV-Diagramm fr 2,3 und 4 Variable hat 22 = 4 , 23 = 9 bzw. 24 = 16 Felder. Jedes Feld des KV-Diagramms entspricht einer Zeile der Wahrheits- bzw. Wertetabelle.
2 Variable /a a /b b 0 2 1 3 /a 3 Variable /a /b b 0 2 /c a 1 3 /c a 5 7 c /a 4 6 c /b b b /b 0 2 10 8 /c 4 Variable a 1 3 11 9 /c a 5 7 15 13 c /a 4 6 14 12 c /d /d d d
KV-Diagramme (2)
Zur Vereinfachung von logischen Schaltnetzen mit KV-Diagramm wird folgende Vorgehensweise empfohlen: 1. 2. 3. Wahrheitstabelle mit n Variablen oder Gleichungen in Normalform (DNF/ KNF) erstellen In die einzelnen Felder des KV-Diagramms wird eine 1 eingetragen, wenn ein Minterm der Funktion vorliegt, andernfalls eine 0. Man versucht, mglichst viele horizontal und vertikal benachbarte Felder, die eine 1 enthalten (Minterme) zu zusammenhngenden 2er-, 4er, 8er oder 16erBlcken (Pckchen) zusammenzufassen. Dabei drfen sich die Gruppierungen berschneiden Mglichst alle 1-Felder in Blcken zusammenfassen Gegenstzliche Variable, die von den Blcken berhrt werden, werden gekrzt Felder innerhalb der Blcke sind UND-verknpft Blcke untereinander sind ODER-verknpft
4. 5. 2006, Rolf Oeberst
6. 7.
23
KV-Diagramme (3)
/a /b b b /b /c 1 1
a 1
a 1
/a /d 1 1 /d d d c x = (a b) ( a b)
1 /c
1 c
/a /b b b 2006, Rolf Oeberst
a 1 1
a 1
/a 1 /d /d d x = ( b c) (b c)
1 1 /c
/b /c
1 c
1 c
d
KV-Diagramme (4)
/a /b b b /b 1 1 /c
a
a 1 1
/a 1 1 /d /d d d x = (c d) ( c d)
1 1 /c c c
/a /b b b 2006, Rolf Oeberst
a
a
/a /d /d
1 1 /c
1 1 /c
1 1 c
1 1 c
d d
x=d
/b
24
KV-Diagramme (5)
Beispiel: x = (a b c) (a b c) ( a b c) ( a b c)
/a /b b /c
a 1 /c
a 1 1 c
/a 1 c
/a /b 2006, Rolf Oeberst
a 1
a 1 1 c
/a x = (a c) (a b) (b c) 1 c
b /c
/c
STEP7 - SIMATIC Manager (1)
Der SIMATIC Manager ist eine grafische Benutzeroberflche fr alle STEP7-Anwendungen:
Einrichten und Verwalten von Projekten Konfigurieren und Parametrieren der Hardware Konfigurieren von Netzwerken und Verbindungen (MPI/ Profibus) Programmierung der Anwenderprogramme (AWL, FUP, KOP) Laden von Programmen auf Zielsysteme Test und Diagnose
2006, Rolf Oeberst
25
STEP7 - SIMATIC Manager (2)
Titelleiste
Menleiste
Schaltflchen
Funktionsleiste
Arbeitsbereich 2006, Rolf Oeberst
Statusleiste
STEP7 - SIMATIC Manager (3)
Die Dateiverwaltung erfolgt mit dem SIMATIC Manager. Im STEP 7 wird jedes Projekt in einer fest vorgegebenen Struktur angelegt. Die Programme sind in den folgenden Verzeichnissen abgespeichert:Projekt: Dieses Verzeichnis enthlt die Hardware (z.B. SIMATIC 300 Stationen) und die Subnetze (z.B. MPI und PROFIBUS). SIMATIC 300 Stationen: Hier werden die entsprechenden Hardwarekonfigurations- und CPU-Daten abgespeichert. Quellen: Hier werden Quellen (z.B. STEP5Quellen) abgelegt, die durch bersetzen in ablauffhige Programme umgewandelt werden knnen. Bausteine: Hier werden die Programmbausteine ( OB, FB, FC, SFB, SFC, DB etc. ) abgespeichert. 2006, Rolf Oeberst
CPU: Hier wird das S7- Programm und die vernetzten Verbindungspartner eingetragen.
S7-Programm: Hier werden die Anwenderprogramme (Bausteine), Symboltabellen (Symbole) und Quellen (Quellen) verwaltet.
Symbole: Hier werden die Symbollisten zur Symbolischen Adressierung gespeichert.
26
Hardwarekonfiguration
Anordnen der Baugruppen in der Konfigurationstabelle
Parametrierung der Baugruppen
Speichern der Konfiguration
bertragen der Konfiguration zur CPU 2006, Rolf Oeberst
Programmdarstellung
Bei der SPS wird die Steuerlogik durch eine Software, dem SPS-Programm, realisiert. Das Softwareprogramm wird mit einer Programmiersprache erstellt, die das Programm grafisch oder als Liste darstellt. Man unterscheidet hierbei drei unterschiedliche Darstellungsarten: 1. 2. 3. KOP FUP Kontaktplan Funktionsplan Grafische Darstellung Grafische Darstellung Mnemotechnische Darstellung (Text)
AWL Anweisungsliste
Diese drei Programmdarstellungen untersttzen nur den Programmierer bei der Erstellung des Programms. In der SPS-Steuerung liegt das kompilierte Programm im Maschinencode vor. 2006, Rolf Oeberst
27
Kompatibilittsprobleme
zu viele Hersteller, jeder hat eigene Standards, die Vor- und Nachteile bieten Ein Anwender muss auf SPS-Systemen verschiedener Hersteller gleichzeitig arbeiten knnen Kommunikation verschiedener SPS-Systeme untereinander nur bedingt mglich immer grer werdende Automatisierungsaufgaben
LSUNG des PROBLEMS
herstellerunabhngige Programmierung 2006, Rolf Oeberst
Programmierung von Steuerungen nach IEC 1131-3
Um eine herstellerunabhngige Programmierung zu ermglichen, wurde von der PLCopen Group, eine Zusammenschluss von SPS-Herstellern, der Standard IEC 1131-3 (IEC = International Electrotechnical Commission) ins Leben gerufen. Folgende Programmiersprachen bzw. grafische Entwurfswerkzeuge sieht die IEC vor:
SPS-Programmiersprachen (DIN EN 61131-3 bzw. IEC 1131-3)
Anweisungsliste (AWL) Instruction List (IL)
Kontaktplan (KOP) Ladder Diagram (LD)
2006, Rolf Oeberst
Strukturierter Text (ST) Structured Text (ST)
Funktionsbausteinsprache (FBS) Function Block Diagram (FBD)
Ablaufsprache (AS) Sequentiell Function Chart (SFC)
28
Programmierung einer SPS
Anweisungsliste (AWL) Diese Programmiersprache ist eine maschinennahe textuelle Sprache. Die einzelnen Anweisungen entsprechen den Arbeitsschritten, mit denen die CPU die sequentielle Abarbeitung des Programms durchfhrt. Mehrere Anweisungen knnen zu Netzwerken zusammengefgt werden.START: U( O( U UN ) O ON ) UN = BE Kennzeichen Parameter E 0.1 E 0.2 E 0.3 E 0.4 E 0.0 A 4.0
2006, Rolf Oeberst
Marke
Operation
Operand
Programmierung einer SPS
Funktionsplan (FUP) Die logischen Funktionen werden grafisch mit DIN 40900-Symbolen dargestellt. Auerdem knnen komplexe Funktionen, wie z.B. mathematische Funktionen, direkt in Verbindung mit den logischen Boxen dargestellt werden. Diese Art von Programmierung erscheint sehr einfach. Bei komplexen Steuerungen wird die grafische Darstellung jedoch sehr unbersichtlich.
E0.1 E0.2
& >=1E0.3 E0.4
2006, Rolf Oeberst
&E0.0 A4.0
29
Programmierung einer SPS
Kontaktplan (KOP) Die Darstellung ist Stromlaufplnen nachempfunden und eignet sich besonders fr Personen, die bereits Erfahrung mit Schtzsteuerungen haben. Die Elemente eines Stromlaufplanes, wie z.B. ffner oder Schlieer, werden zu Netzwerken zusammengefgt. Ein oder mehrere Netzwerke ergeben den gesamten Anweisungsteil eines Codebausteins.E0.1 E0.2 E0.0 A4.0
E0.3
2006, Rolf Oeberst
E0.4
Grundschaltungen (1)
unbettigter Schlieer
bettigter Schlieer
S1
K1
K2
unbettigter ffner
S1
K2
S1
H1
K3
2006, Rolf Oeberst
S1
&
K1
S1
&
H1
S1
&
K3
30
Grundschaltungen (2)
bettigter ffner
Reihenschaltung
S2
K4
H2
K5
2006, Rolf Oeberst
S1
&
H2
S1 S2
&
Parallelschaltung
S1
K4
S1
S1
S2
K6
K5
S1 S2
1 K6
Grundschaltungen (3)
S1
S2
S1
S2
S3 S3 K7 K8
S4
S1 2006, Rolf Oeberst
1 & 1 K8
S1 S2
1 & S3 K7
S2 S3 S4
31
Grundschaltungen (4)
S1 S1 S2 S5 S2 S3 S4
1 & 1 S5 1 K9
S3
S4
K9
H3
K9
&
H3
2006, Rolf Oeberst
Grundschaltungen (5)
S1
S2
K10
S1 S2
1 & S3 K10
S3
K10
H4
K10
&
H4
2006, Rolf Oeberst
32
Grundschaltungen (6)
S1Wechselschaltung
S1
Kreuzschaltung
S2 S3 H6
S2 H5
S1 2006, Rolf Oeberst
& 1 & H5 H6 = (S1S2S3) (S1S2S3) (S1S2S3) (S1S2S3)
S2 S1 S2
Merker
Fr Verknpfungen innerhalb der Steuerung, bei denen keine Signalabgabe auerhalb der Steuerung erforderlich ist, werden Merker eingesetzt. Merker sind elektronische Speicherelemente (R-S-Speicherglieder), mit denen die beiden Signalzustnde 0 und 1 abgespeichert werden knnen. Merker werden wie Ausgnge programmiert.
Remanente Merker behalten beim Ausschalten der Betriebsspannung den letzten Zustand behalten beim Wechsel der Betriebsart RUN Stop ihren letzten Zustand knnen auer durch das Anwenderprogramm mit URLSCHEN rckgesetzt werden
Nichtremanente Merker bei Ausfall der Betriebsspannung geht der gespeicherte Inhalt verloren werden beim Wechsel der Betriebsart RUN STOP zurckgesetzt.
2006, Rolf Oeberst
33
Speicher (1)
Bei logischen Schaltnetzen sind die Ausgnge eine logische Funktion aller Eingnge. Bei komplexen Steuerungen hngt der Ausgang nicht nur von den Eingngen ab, sondern auch von den so genannten internen Zustnden (Automat).
Selbsthaltung S1 S1 K1 S2 S2 2006, Rolf Oeberst
Flip-Flop S R Q K1
K1
Speicher (2)
S1SF I0.0
S2 0Q0.0
1Micro PLC 212Q0.1 Q0.2
S1 S2
S R Q K1
SIEMENS
RUN
I0.1
STOP
I0.2
I0.3
Q0.3
I0.4
Q0.4
I0.5
Q0.5
SIMATIC
I0.6
S7-200
I0.7
K1
S1 K1
1 & S2 K1
2006, Rolf Oeberst
Achtung: Programmtechnisch erfolgt nicht die Abfrage nach dem angeschlossenem Betriebsmittel, sondern nach den Signalzustnden am Eingang der SPS.
34
Zeitfunktionen (1)
Fr die Realisierung von Steuerungsaufgaben mssen sehr hufig verschiedene Zeitfunktionen eingesetzt werden. Diese Zeitfunktionen sind in der Zentralbaugruppe der SPS integriert. Die Einstellung der gewnschten Laufzeit (10ms bis 9990s) und das Starten der Zeitfunktion muss ber das Anwenderprogramm erfolgen. Sie knnen unter fnf verschiedenen auswhlen:
2006, Rolf Oeberst
Impuls Verlngerter Impuls Einschaltverzgerung Speichernde Einschaltverzgerung Ausschaltverzgerung
Zeitfunktionen (2)
Bei Signalwechsel am Starteingang (positive Flanke) wird das Zeitglied gestartet. Ein Zeitglied soll immer eine bestimmte Zeit ablaufen. Die Zeitdauer TW kann entweder als vordefinierte Konstante im Programm fest vergeben werden oder als 16BIT-WORT (u.a als Eingangswort EW, als Ausgangswort AW oder als Merkerwort MW) vorgegeben werden. Ein Signal am Rcksetzeingang beendet die Bearbeitung des Zeitgliedes. Der aktuelle Zeitwert wird gelscht, der Ausgang Q der Zeitzelle zurckgesetzt. Der aktuelle Zeitwert kann an den Ausgngen DUAL und DEZ abgefragt werden.Der Zeitwert an Ausgang DUAL ist binr-kodiert, der Zeitwert am Ausgang DEZ ist BCDkodiert. Eine Zeit kann am Ausgang Q auf ihren Signalzustand (0 oder 1) abgefragt und fr weitere Verknpfungen verwandt werden.
2006, Rolf Oeberst
35
Zeitwert
Mit der folgenden Syntax knnen Sie einen vordefinierten Zeitwert laden:
S5T# aH_bbM_ccS_dddMSStunden Minuten Sekunden Millisekunden
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
x
x
1
0
0
0
0
1
0
0
1
0
0
1
1
1
2006, Rolf Oeberst
Zeitbasis 00 01 10 11 10ms 100ms 1s 10s
Zeitwert im BCD-Format (1 bis 999)
Impuls
2006, Rolf Oeberst
36
Verlngerter Impuls
2006, Rolf Oeberst
Einschaltverzgerung
2006, Rolf Oeberst
37
Speichernde Einschaltverzgerung
2006, Rolf Oeberst
Ausschaltverzgerung
2006, Rolf Oeberst
38
Taktgeber
T1 T2 S5T#250ms S_IMPULS TW DUAL DEZ R Q S5T#250ms T2 S_IMPULS TW DUAL DEZ R QT1 = T2 Frequenz 1 Hz 2 Hz 5 Hz 10 Hz
T 2006, Rolf Oeberst1
500 ms 250 ms
T1 T2
0 1 0
f=
1 T1 + T2
100 ms 50 ms
2006, Rolf Oeberst
39