Beruflich Dokumente
Kultur Dokumente
W353-DE1-02
SYSMAC CPM1(A)/CPM2_/SRM1(-V2)
SYSMAC CPM1(A)/CPM2_/SRM1(-V2)
Bedienerhandbuch
Bedienerhandbuch
Kurzübersicht
1 SPS-Konfiguration
159 Erweiterungsbaugruppen
285 Speicherbereiche
337 Befehlssatz
OMRON EUROPE B.V. – Wegalaan 67-69 – 2132 JD Hoofddorp – The Netherlands
phone: + 31 - 23 56 81 300 – fax: + 31 - 23 56 81 388 – www.europe.omron.com
Advanced Industrial Automation
i
E Copyright by OMRON, Langenfeld, Januar 2002
Alle Rechte vorbehalten. Kein Teil dieser Veröffentlichung darf in irgendeiner
Form, wie z. B. Druck, Fotokopie oder einem anderen Verfahren, ohne schriftliche
Genehmigung der Firma OMRON, Langenfeld, reproduziert, vervielfältigt oder
veröffentlicht werden.
Änderungen vorbehalten.
ii
Vorwort
In diesem Bedienerhandbuch der SPS CPM1/CPM1A/CPM2A/SRM1(–V2)
finden Sie detaillierte Informationen über die Programmierung der SPS ein-
schließlich der Speicherstruktur, der Speicherbereiche und der Kontaktplan–
Programmierung. Weitere Informationen über die Hardware und den Einsatz
der Programmierkonsole finden Sie in den Technischen Handbüchern der
jeweiligen Steuerung. Die Programmiersoftware SYSWIN ist im SYSWIN–Be-
dienerhandbuch dargestellt.
Es werden nur die CPM1/CPM1A/CPM2A/SRM1(–V2)–spezifischen Befehle
und Anweisungen in diesem Bedienerhandbuch vorgestellt. Für alle anderen
OMRON–Steuerungen müssen separate Bedienerhandbücher angefordert
werden.
Die englischsprachige Version dieses Handbuches kann unter der Kat–Nr.
W353–E1–3 bestellt werden.
Um die Arbeit mit diesem Handbuch für Sie besonders effizient zu gestalten,
beachten Sie bitte folgendes:
– Das Gesamt–Inhaltsverzeichnis finden Sie im direkten Anschluß an das
Vorwort.
– Die eingesetzten Symbole und deren Bedeutungen sind nachfolgend dar-
gestellt.
! Gefahr Ein Nichtbeachten hat mit hoher Wahrscheinlichkeit den Tod oder schwere
Personenschäden zur Folge.
Hinweis Gibt besondere Hinweise für den effizienten und sachgerechten Umgang mit
dem Produkt.
iii
Inhalt
KAPITEL 1 – SPS–Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1-1 SPS–Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-1-1 Änderung der SPS–Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-1-2 CPM1–/CPM1A–SPS–Konfigurationseinstellungen . . . . . . . . . . . . . . 3
1-1-3 CPM2A–/CPM2C–SPS–Konfigurationseinstellungen . . . . . . . . . . . . . 8
1-1-4 SRM1(–V2) SPS–Konfigurationseinstellungen . . . . . . . . . . . . . . . . . . 15
1-2 SPS–Basisoperationen und E/A–Verarbeitungen . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1-2-1 Start–Betriebsart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1-2-2 Systemhaftmerker–Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1-2-3 Programmspeicher–Schreibschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1-2-4 RS–232C–Schnittstellen–Servicezeit
(nur CPM2A/CPM2C/SRM1(–V2)) . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-5 Servicezeit der Peripherieschnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-6 Zyklusüberwachungszeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-7 Minimum–Zykluszeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1-2-8 Eingangs–Zeitkonstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1-2-9 |Fehlerprotokoll–Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
KAPITEL 2 – Besonderheiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2-1 CPM2A/CPM2C–Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2-1-1 Eingangsgesteuerte Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2-1-2 Intervall–Zeitgeber–gesteuerter Interrupt . . . . . . . . . . . . . . . . . . . . . . . 34
2-2 CPM2A/CPM2C Schneller Zähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2-2-1 Anwendung des Schnellen Zählers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2-2-2 Eingangsgesteuerte Interrupts im Zählmodus . . . . . . . . . . . . . . . . . . . . 61
2-3 CPM1/CPM1A–Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2-3-1 Arten von Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2-3-2 Eingangs–Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2-3-3 Maskierung aller Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2-3-4 Intervall–Zeitgeber–gesteuerte Interrupts . . . . . . . . . . . . . . . . . . . . . . 78
2-3-5 Schnelle Zähler–Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2-4 SRM1(–V2) Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-4-1 Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-4-2 Intervall–Zeitgeber–Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-5 CPM2A/CPM2C–Impulsausgabefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2-5-1 Einsatz von einphasigen Impulsausgaben ohne Beschleunigung und Bremsung
(festes Tastverhältnis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2-5-2 Verwendung der Impulsausgänge mit variablem Tastverhältnis . . . . . . 106
2-5-3 Impulsausgaben mit trapezförmiger Beschleunigung and Abbremsung 111
2-6 CPM1A–Impulsausgabefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
2-6-1 Programmbeispiel für die Betriebsart Ununterbrochen . . . . . . . . . . . . 126
2-6-2 Programmbeispiel in der Betriebsart Unabhängig . . . . . . . . . . . . . . . . 126
2-6-3 Verwendung der Impuls–Ausgabebefehle . . . . . . . . . . . . . . . . . . . . . . . 126
2-6-4 Ändern der Frequenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2-6-5 Anhalten der Impulsausgabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2-7 Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) . . . . . . . . . . . . . . . . . . . 129
2-8 Toleranzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-8-1 Impulsausgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-8-2 Synchronisierte Impulssteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-9 Analoge E/A–Funktionen (nur CPM1/CPM1A/CPM2A/CPM2C) . . . . . . . . . . . . 142
2-10 Temperaturfühler–Eingangsfunktionen (nur CPM1A/CPM2A/CPM2C) . . . . . . . 142
2-11 CompoBus/S–E/A–Slavefunktionen (nur CPM1A/CPM2A/CPM2C) . . . . . . . . . 143
2-12 CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) . . . . . . . . . . . . . . . . . . 143
2-13 Einstellschaltungen (nur CPM1/CPM1A/CPM2A) . . . . . . . . . . . . . . . . . . . . . . . . 145
2-14 Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2-14-1 CPM1/CPM1A–Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . . 147
2-14-2 CPM2A/CPM2C–Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . 148
2-15 Makrofunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
v
Index
vi
Index
vii
Index
viii
Index
ix
Index
x
Index
Anhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
A – Programmierbefehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
B – Fehler– und arithmetischen Merker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
C – Speicherbereiche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
D – E/A–Zuweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
E – Programm–Codierblatt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
F – Liste der FAL– Nummern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575
G – Erweiteter ASCII–Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
xi
KAPITEL 1
SPS–Konfiguration
Dieser Abschnitt beschreibt die SPS–Konfiguration der SPS der Serien CPM1, CPM1A, CPM2A, CPM2C und SRM1(–V2).
Die SPS–Konfiguration wird zur Steuerung des SPS–Betriebs verwendet. Sehen Sie für eine Änderung der SPS–Konfigura-
tion mit der Programmierkonsole das technische Handbuch der SPS.
Sehen Sie bitte das Bedienerhandbuch W 501 für die SYSWIN–Programmiersoftware für SPS–Systeme der C–Serie. Sehen
Sie das CX-Programmer–Handbuch(W 02–CXPM1) für die CX-Programmer–Programmiersoftware für alle lieferbaren
SPS–Systeme.
Lesen Sie den Abschnitt 1-1 SPS–Konfiguration als Übersicht über die für die CPM1/CPM1A, CPM2A/CPM2C und SRM1
(–V2) verfügbaren Betriebsparameter, wenn Sie nicht mit OMRON SPS–Systemen oder der Kontaktplan–Programmierung
vertraut sind. Des Weiteren würden wir Ihnen empfehlen, die folgenden Kapitel zu lesen: Speicherbereiche, Kontaktplan–
Programmierung und Befehle in Befehlssatz.
1-1 SPS–Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-1-1 Änderung der SPS–Konfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-1-2 CPM1–/CPM1A–SPS–Konfigurationseinstellungen . . . . . . . . . . . . . . 3
1-1-3 CPM2A–/CPM2C–SPS–Konfigurationseinstellungen . . . . . . . . . . . . . 8
1-1-4 SRM1(–V2) SPS–Konfigurationseinstellungen . . . . . . . . . . . . . . . . . . 15
1-2 SPS–Basisoperationen und E/A–Verarbeitungen . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1-2-1 Start–Betriebsart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1-2-2 Systemhaftmerker–Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1-2-3 Programmspeicher–Schreibschutz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1-2-4 RS–232C–Schnittstellen–Servicezeit
(nur CPM2A/CPM2C/SRM1(–V2)) . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-5 Servicezeit der Peripherieschnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-6 Zyklusüberwachungszeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1-2-7 Minimum–Zykluszeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1-2-8 Eingangs–Zeitkonstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1-2-9 |Fehlerprotokoll–Einstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1
SPS–Konfiguration Abschnitt 1-1
1-1 SPS–Konfiguration
Bei der Konfiguration werden verschiedene Parameter festgelegt, die den SPS-
Betrieb steuern. Um die SPS–Systeme bei der Verwendung von Interrupt-Ver-
arbeitungs- und Kommunikationsfunktionen optimal zu nutzen, können die Pa-
rameter an die anwendungsspezifischen Betriebsbedingungen angepaßt wer-
den.
Vor dem Versand wurde die SPS–Systeme werksseitig auf die Vorgabewerte für
allgemeine Betriebsbedingungen eingestellt; die Systeme können daher ohne
Änderung der Einstellungen verwendet werden. Die Vorgabewerte müssen je-
doch vor dem Betrieb überprüft werden.
Standardwerte Der Standardwert für die SPS–Konfiguration beträgt 0000 für alle Worte (bis auf
den Batteriespannung niedrig–Fehler, dessen Erkennung in DM 6655 Bit 12 bis
15 für CPM2A CPU–Baugruppen aktiviert ist). Die Standardwerte können jeder-
zeit zurückgesetzt werden, indem SR 25210 in der PROGRAM–Betriebsart ein-
geschaltet wird.
! Vorsicht Wird der Datenwortbereich (DM) über ein Programmiergerät gelöscht, werden
die Konfigurationseinstellungen ebenfalls auf Null zurückgesetzt.
2
SPS–Konfiguration Abschnitt 1-1
1-1-2 CPM1–/CPM1A–SPS–Konfigurationseinstellungen
Die SPS–Konfiguration ist in vier Kategorien eingeteilt: 1. Einstellungen in Be-
zug auf Basis–SPS Betrieb– und E/A–Vorgänge, 2. Einstellungen bezüglich der
Zykluszeit, 3. Interrupt–Einstellungen und 4. Kommunikationseinstellungen. In
diesem Abschnitt werden die Einstellungen, entsprechend dieser Klassifikation,
erläutert.
Die folgende Tabelle zeigt die Einstellungen für die CPM1/CPM1A–SPS in nu-
merischer Reihenfolge. Weitere Informationen finden Sie unter den angegebe-
nen Seiten.
Wort(e) Bit(s) Funktion Seite
Einschaltverarbeitung (DM 6600 bis DM 6614)
Die folgenden Einstellungen sind erst nach der Übertragung in die SPS und nach dem erneuten Einschalten der SPS
wirksam.
DM 6600 00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden) 19
00: PROGRAM
01: MONITOR
02: RUN
08 bis 15 Spezifikation der Start–Betriebsart
00: Programmierkonsolenschalter
01: Fortsetzen der vor dem Ausschalten verwendeten Betriebsart (sehen Sie den
Hinweis 1)
02: Einstellung in 00 bis 07
DM 6601 00 bis 07 Nicht verwendet. 20
08 bis 11 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen
1: Beibehalten (sehen Sie den Hinweis 3)
12 bis 15 Zwangssetzungsstatus–Systemmerker(SR 25211)–Status beim Einschalten
0: Rücksetzen
1: Beibehalten (sehen Sie den Hinweis 3)
DM 6602 00 bis 03 Programmspeicher–Schreibschutz 20
0: Programmspeicher ohne Schreibschutz
1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07 Programmierkonsolen–Display–Sprache
0: Englisch
1: Japanisch
08 bis 15 Nicht verwendet
DM 6603 00 bis 15 Nicht verwendet
DM 6604 00 bis 07 00: Kein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
(AR 1314 EIN) nullspannungssicher gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
(AR 1314 EIN) nullspannungssicher gespeichert werden konnten
08 bis 15 Nicht verwendet
DM 6605 bis 00 bis 15 Nicht verwendet
DM 6614
Zykluszeit–Einstellungen (DM 6615 bis DM 6619)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR-
Betriebs wirksam.
DM 6615, 00 bis 15 Nicht verwendet.
DM 6616
3
SPS–Konfiguration Abschnitt 1-1
4
SPS–Konfiguration Abschnitt 1-1
5
SPS–Konfiguration Abschnitt 1-1
Hinweis 1. Wird die Start–Betriebsart eingestellt, um den zu letzt vor dem Ausschalten
verwendeten Betrieb fortzusetzen, erfolgt die Nullspannungssicherung
über den integrierten Kondensator. Die Daten können verlorengehen,
wenn die Versorgungsspannung für eine die Sicherungszeit des Kondensa-
tors übersteigende Zeit ausgeschaltet bleibt. (Sehen Sie das CPM1A oder
CPM1–Programmierhandbuch für eine genauere Beschreibung der Spei-
cherzeit.)
2. Stellen Sie keinen Wert zwischen “05” bis “07” ein. Wird dieser Wert einge-
stellt, arbeitet die CPM1/CPM1A nicht richtig und der SPS–Konfigurations–
Fehlermerker (AR 1302) wird nicht aktiviert.
3. Beibehaltung des E/A–Speicher–Haltemerker(SR 25212)–Status
Wird der “E/A–Speicher–Haltemerker–Status beim Einschalten (”DM 6601,
Bit 08 bis 11) auf ”Beibehalten” – bei aktiviertem E/A–Speicher–Haltemer-
ker (SR 25212) – gesetzt, kann der Betrieb mit dem E/A–Speicherhaltesta-
tus (E/A, IR, LR) fortgesetzt werden, der anlag, bevor die Versorgungsspan-
nung ausgeschaltet wurde. (Der Eingangsbereich wird jedoch beim Ein-
schalten aufgefrischt, d. h. er wird von dem neuesten aktualisierten Ein-
gangsstatus überschrieben.)
Beibehaltung des Zwangssetzungs–Haftmerkerstatus (SR 25211)
Wird der “Zwangssetzungs–Haftmerker–Status beim Einschalten (”DM
6601, Bit 12 bis 15) auf ”Beibehalten” – bei aktiviertem Zwangssetzungs–
Haftmerker (SR 25211) – gesetzt, wird der Zwangssetzungs–/Rückset-
zungsbetrieb fortgesetzt, der anlag, bevor die Versorgungsspannung aus-
geschaltet wurde. (Beim Einschalten in der RUN–Betriebsart wird jedoch
der Zwangssetzungs–/Rücksetzungsstatus gelöscht.)
Auch wenn der “E/A–Speicher–Haltemerker–Status beim Einschalten”
oder der “Zwangssetzungsstatus–Haftmerker–Status beim Einschalten”
auf “Beibehalten” eingestellt wird, kann der E/A–Speicher–Haltemer-
ker(SR 25212)– oder Zwangssetzungsstatus–Haftmerker(SR 25211)–Sta-
tus gelöscht werden, falls die Versorgungsspannung für eine die Siche-
rungszeit des integrierten Kondensators übersteigende Zeit ausgeschaltet
bleibt. (Sehen Sie das CPM1A– oder CPM1–Programmierhandbuch für
eine genauere Beschreibung der Sicherungszeit.) Zu diesem Zeitpunkt
wird auch der E/A–Speicher gelöscht; konfigurieren Sie das System des-
halb so, dass das Löschen des E/A–Speichers keine Probleme verursacht.
4. Die Übertragungsverzögerung ist die Verzögerung zwischen der vorherge-
henden Übertragung und der folgenden Übertragung.
6
SPS–Konfiguration Abschnitt 1-1
7
SPS–Konfiguration Abschnitt 1-1
1-1-3 CPM2A–/CPM2C–SPS–Konfigurationseinstellungen
Die SPS–Konfiguration ist in vier Kategorien eingeteilt: 1) Einstellungen für
SPS–Basisbetrieb und E/A–Verarbeitungen, 2) Einstellungen für Impulsausga-
befunktionen, 3) Interrupt–Einstellungen und 4) Kommunikationseinstellungen.
In diesem Abschnitt werden die Einstellungen, entsprechend dieser Klassifika-
tion, erläutert.
Die folgende Tabelle zeigt die Einstellungen der CPM2A in numerischer Reihen-
folge. Weitere Informationen finden Sie unter den angegebenen Seiten.
Wort(e) Bit(s) Funktion Seite
Einschaltverarbeitung (DM 6600 bis DM 6614)
Die folgenden Einstellungen sind erst nach der Übertragung in die SPS und nach dem erneuten Einschalten der SPS
wirksam.
DM 6600 00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden) 19
00: PROGRAMM
01: MONITOR
02: RUN
08 bis 15 Spezifikation der Start–Betriebsart
00: Entsprechend dem Kommunikationsschnittstellen–DIP–Schalter und
Peripherieschnittstellen–Anschluss
(sehen Sie die Tabelle unten auf dieser Seite)
01: Fortsetzung der vor dem Ausschalten verwendeten Betriebsart.
02: Einstellung in 00 bis 07
DM 6601 00 bis 07 Nicht verwendet. 20
08 bis 11 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
12 bis 15 Zustand des Zwangssetzungsstatus–Haftmerkers (SR 25211) beim Einschalten
0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
DM 6602 00 bis 03 Programmspeicher–Schreibschutz 20
0: Programmspeicher ohne Schreibschutz
1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07 Programmierkonsolen–Display–Sprache
0: Englisch
1: Japanisch
08 bis 11 Codezuweisungen für erweiterte Befehle 156
0: Standardeinstellungen
1: Anwenderzuweisungen
12 bis 15 Nicht verwendet
DM 6603 00 bis 15 Nicht verwendet
DM 6604 00 bis 07 00: Kein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
nullspannungssicher gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
nullspannungssicher gespeichert werden konnten
08 bis 15 Nicht verwendet
DM6605 bis 00 bis 15 Nicht verwendet
DM 6614
Hinweis Die SPS–Betriebsart nach dem Einschalten entspricht der in der folgenden Ta-
belle gezeigten, falls Bits 08 bis 15 von 6600 DM auf 00 gesetzt werden.
Peripherieschnitt– Kommunikationsschnittstellen–DIP–Schalter
stelle verbunden
verb nden
mit Schalter 2 AUS Schalter 2 EIN
Frei Programm RUN
Programmier– Betriebsart mit dem PROGRAM (die CPM2C wird
konsole Betriebsartenschalter der nicht mit der
Programmierkonsole Programmierkonsole
eingestellt kommunizieren können.)
Anderes PROGRAM (die CPM2C wird PROGRAM
Programmiergerät nicht mit einem
Programmiergerät
kommunizieren können.)
8
SPS–Konfiguration Abschnitt 1-1
9
SPS–Konfiguration Abschnitt 1-1
10
SPS–Konfiguration Abschnitt 1-1
11
SPS–Konfiguration Abschnitt 1-1
12
SPS–Konfiguration Abschnitt 1-1
13
SPS–Konfiguration Abschnitt 1-1
14
SPS–Konfiguration Abschnitt 1-1
15
SPS–Konfiguration Abschnitt 1-1
16
SPS–Konfiguration Abschnitt 1-1
17
SPS–Konfiguration Abschnitt 1-1
18
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
Hinweis Wird ein außerhalb des Bereiches liegender Wert eingestellt, so ergeben sich
die folgenden Kommunikationsbedingungen. Setzen Sie in diesem Fall den
Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsbetriebsart: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Startbit, 7 Datenbits; gerade Parität,
2 Stopbits, 9.600 Baud
Übertragungsverzögerungszeit: keine
Teilnehmernummer: 00
1-2-1 Start–Betriebsart
Die nach dem Einschalten der SPS aktivierte Betriebsart wird, wie nachfolgend
dargestellt, eingestellt.
Bit 15 0
DM 6600
Start-Betriebsart
00: Betriebsarten-Wahlschalter der Programmierkonsole
(falls keine Programmierkonsole angeschlossen ist: RUN-Betriebsart
01: Betriebsart, die vor dem Ausschalten der SPS aktiviert war
02: Einstellung der Betriebsart über die Bits 00 bis 07
Start-Betriebsart (Bits 08 bis 15: Gültig,
wenn Bits 00 bis 07 auf 02 gesetzt werden)
00: PROGRAM–Betriebsart
01: MONITOR–Betriebsart
02: RUN–Betriebsart
Hinweis Wird die “Einschaltbetriebsart” auf 00 eingestellt und Schalter 2 des DIP–Schal-
ters der CPM2C CPU–Baugruppe auf EIN gesetzt, startet die CPM2C in der
RUN–Betriebsart automatisch, wenn keine Programmierkonsole oder kein
CIF–Konverter angeschlossen ist.
19
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
1-2-2 Systemhaftmerker–Status
Die folgenden Einstellungen spezifizieren, ob der Zwangssetzungsstatus-Haft-
merker (SR 25211) und/oder der E/A–Speicher–Haltemerker (SR 25212) beim
Einschalten der SPS den Zustand beibehalten, der beim letzten Ausschalten
der SPS gültig war oder ob der vorhergehende Zustand zurückgesetzt wird.
Bit 15 0
DM 6601 0 0
Hinweis 1. Die Speicherzeit des internen Kondensators ist von der Umgebungstempe-
ratur abhängig, beträgt aber 20 Tage bei 25 C. Sehen Sie die Hardware–
spezifikationen zwecks weiterer Informationen.
2. Die Speicherzeit setzt voraus, dass der interne Kondensator voll geladen
wird, bevor die Stromversorgung ausgeschaltet wird. Der Kondensator ist
voll aufgeladen, wenn die Stromversorgung der CPU–Baugruppe minde-
stens 15 Minuten lang eingeschaltet war.
1-2-3 Programmspeicher–Schreibschutz
In den SPS–Systemen der Serien CPM1, CPM1A, CPM2A und CPM2C kann
der Programmspeicher geschützt werden, indem die Bits 00 bis 03 von
DM 6602 auf 1 gesetzt werden. Bits 04 bis 07 bestimmen, ob die Programmier-
konsolen–Meldungen auf Englisch oder Japanisch angezeigt werden sollen.
Bit 15 0
DM 6602 0 0
Immer 00
Programmierkonsolen–Meldungen
0: Englisch
1: Japanisch
Programmspeicher
0: Nicht schreibgeschützt
1: Schreibgeschützt
20
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
Hinweis DM 6602 selbst kann noch geändert werden, nachdem der Programmspeicher
durch Setzen der Bits 00 bis 03 von DM 6602 auf 1, mit Schreibschutz versehen
wurde.
DM 6616
Beispiel:
Wird DM 6616 auf 0110 gesetzt, wird 10% der Zykluszeit für den Service der
RS-232C-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
DM 6617
Beispiel:
Wird DM 6617 auf 0115 gesetzt, wird 15% der Zykluszeit für den Service der Pe-
ripherie-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
1-2-6 Zyklusüberwachungszeit
Bit 15 0
DM 6618
Zykluszeitüberwachung
00: Einstellung deaktiviert (Zeit auf 120 ms fest eingestellt)
01: Einstellung in 00 bis 07 aktiviert; Einheit: 10 ms
02: Einstellung in 00 bis 07 aktiviert; Einheit: 100 ms
03: Einstellung in 00 bis 07 aktiviert; Einheit: 1 s
21
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
1-2-7 Minimum–Zykluszeit
Die folgenden Einstellungen dienen zur Spezifikation der Standard-Zykluszeit
und verhindern Schwankungen der E/A-Ansprechzeit durch Einstellung der mi-
nimalen Zykluszeit.
Bit 15 0
DM 6619
Ist die tatsächliche Zykluszeit kürzer als die minimale Zykluszeit, erfolgt die Aus-
führung erst nach Ablauf der Mindestzeit. Ist die tatsächliche Zykluszeit länger
als die minimale Zykluszeit, wird der Betrieb entsprechend der tatsächlichen Zy-
kluszeit fortgesetzt. Bei Überschreitung der minimalen Zykluszeit wird AR 1305
gesetzt.
1-2-8 Eingangs–Zeitkonstanten
Die folgenden Einstellungen spezifizieren die Zeit, in der die tatsächlichen Ein-
gänge der DC-Eingangsbaugruppe auf AUS oder EIN gesetzt werden bis zur
Auffrischung der entsprechenden Eingangsbits (d.h. bis zur Änderung des EIN/
AUS-Zustandes). Diese Einstellungen dienen zur Spezifikation der Zeit, in der
die Eingänge stabilisiert werden.
Das Vergrößern der Eingangs–Zeitkonstante kann die Wirkungen von prellen-
den und externen Störungen reduzieren.
22
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
Zeitkonstante für IR 00007 bis IR 00011 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00005 bis IR 00006 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00003 bis IR 00004 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00000 bis IR 00002 (BCD, einstellig; sehen Sie unten)
Vorgabe: 0000 (8 ms für alle)
Zeitkonstante für IR 00007 bis IR 00011 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00005 bis IR 00006 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00003 bis IR 00004 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00000 bis IR 00002 (BCD, einstellig; sehen Sie unten)
Vorgabe: 0000 (10 ms für alle)
23
SPS–Basisoperationen und E/A–Verarbeitungen Abschnitt 1-1
1-2-9 |Fehlerprotokoll–Einstellungen
Fehlererkennung und Fehlerprotokollierung (DM 6655)
Die folgenden Einstellungen spezifizieren, ob ein ”geringfügiger” Fehler gene-
riert wird, wenn die Zykluszeit 100 ms überschreitet oder die Spannung der inte-
grierten Batterie sinkt (nur CPM2A/CPM2C). Darüber hinaus wird das Verfah-
ren für die Speicherung von Datensätzen in dem Fehlerprotokoll beim Auftreten
von Fehlern spezifiziert.
Bit 15 0
DM 6655 0
24
KAPITEL 2
Besonderheiten
Dieser Abschnitt beschreibt Besonderheiten der CPM1, CPM1A, CPM2A, CPM2C und SRM1 (V2).
2-1 CPM2A/CPM2C–Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2-1-1 Eingangsgesteuerte Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2-1-2 Intervall–Zeitgeber–gesteuerter Interrupt . . . . . . . . . . . . . . . . . . . . . . . 34
2-2 CPM2A/CPM2C Schneller Zähler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2-2-1 Anwendung des Schnellen Zählers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2-2-2 Eingangsgesteuerte Interrupts im Zählmodus . . . . . . . . . . . . . . . . . . . . 61
2-3 CPM1/CPM1A–Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2-3-1 Arten von Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2-3-2 Eingangs–Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2-3-3 Maskierung aller Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2-3-4 Intervall–Zeitgeber–gesteuerte Interrupts . . . . . . . . . . . . . . . . . . . . . . 78
2-3-5 Schnelle Zähler–Interrupt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2-4 SRM1(–V2) Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-4-1 Interrupt–Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-4-2 Intervall–Zeitgeber–Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
2-5 CPM2A/CPM2C–Impulsausgabefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2-5-1 Einsatz von einphasigen Impulsausgaben ohne Beschleunigung und Bremsung
(festes Tastverhältnis) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2-5-2 Verwendung der Impulsausgänge mit variablem Tastverhältnis . . . . . . 106
2-5-3 Impulsausgaben mit trapezförmiger Beschleunigung and Abbremsung 111
2-6 CPM1A–Impulsausgabefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
2-6-1 Programmbeispiel für die Betriebsart Ununterbrochen . . . . . . . . . . . . 126
2-6-2 Programmbeispiel in der Betriebsart Unabhängig . . . . . . . . . . . . . . . . 126
2-6-3 Verwendung der Impuls–Ausgabebefehle . . . . . . . . . . . . . . . . . . . . . . . 126
2-6-4 Ändern der Frequenz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2-6-5 Anhalten der Impulsausgabe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2-7 Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) . . . . . . . . . . . . . . . . . . . 129
2-8 Toleranzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-8-1 Impulsausgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-8-2 Synchronisierte Impulssteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
2-9 Analoge E/A–Funktionen (nur CPM1/CPM1A/CPM2A/CPM2C) . . . . . . . . . . . . 142
2-10 Temperaturfühler–Eingangsfunktionen (nur CPM1A/CPM2A/CPM2C) . . . . . . . 142
2-11 CompoBus/S–E/A–Slavefunktionen (nur CPM1A/CPM2A/CPM2C) . . . . . . . . . 143
2-12 CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) . . . . . . . . . . . . . . . . . . 143
2-13 Einstellschaltungen (nur CPM1/CPM1A/CPM2A) . . . . . . . . . . . . . . . . . . . . . . . . 145
2-14 Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2-14-1 CPM1/CPM1A–Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . . 147
2-14-2 CPM2A/CPM2C–Eingänge mit Impulsspeicherung . . . . . . . . . . . . . . . 148
2-15 Makrofunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2-16 Berechnungen mit vorzeichenbehafteten Binärdaten . . . . . . . . . . . . . . . . . . . . . . . 153
2-16-1 Definition vorzeichenbehafteter Binärdaten . . . . . . . . . . . . . . . . . . . . . 153
2-16-2 Arithmetische Merker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2-16-3 Eingabe vorzeichenbehafteter Binärdaten unter Verwendung
von Dezimalwerten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2-17 Flankenüberwachung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2-18 Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) . . . . . . . . . . . . . . . . . . . 154
2-18-1 Erweiterte Befehle der CPM2A/CPM2C . . . . . . . . . . . . . . . . . . . . . . . 156
2-18-2 Erweiterte Befehle der SRM1(-V2) . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
2-19Verwendung der CPM2A/CPM2C–Uhrfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2-19-1 Datenbereichs–Worte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2-19-2 Einstellung der Zeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
25
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
2-1 CPM2A/CPM2C–Interrupt–Funktionen
Arten von Interrupts Die CPM2A und CPM2C bieten folgende Arten der Interrupt–Verarbeitung. In-
terrupts können temporär deaktiviert werden, wenn die Online–Editierung wäh-
rend des Betriebs durchgeführt oder STUP(––) ausgeführt wird, um Einstellun-
gen zu ändern.
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vor-
handen. In diesen CPU–Baugruppen sind die Interrupt–Unterprogrammnum-
mern 000 und 001 den Eingängen 00003 und 00004 zugeordnet.
Eingangsgesteuerte Interrupts
Interrupt–Programme werden ausgeführt, wenn CPU–Baugruppen–integrierte
Eingänge (00003 bis 00006*) von AUS nach EIN wechseln. Interrupt–Unterpro-
grammnummern 000 bis 003* sind den Eingängen 00003 bis 00006* zugeord-
net.
Intervall–Zeitgeber–gesteuerte Interrupts
Interrupt–Programme der Intervall–Zeitgeber werden mit einer Genauigkeit von
0,1 ms ausgeführt. Die Interrupt–Unterprogrammnummern 000 bis 049 werden
über Befehle zugewiesen.
Auf–/Abwärtszählungs–gesteuerte Interrupts über Interrupt–Eingänge
(Zählmodus)
Eingangssignale an den in die CPU–Baugruppe–integrierten Eingänge (00003
bis 00006*) werden mit großer Geschwindigkeit (2 kHz) gezählt; das normale
Programm wird unterbrochen und ein Interrupt–Programm ausgeführt. Inter-
rupt–Unterprogrammnummern 000 bis 003* sind den Eingängen 00003 bis
00006* zugeordnet.
Zählsollwert erreicht–gesteuerte Interrupts unter Anwendung des schnel-
len Zählers
An die Eingängen der CPU–Baugruppe (00000 bis 00002) angelegte Impulse
werden mit großer Geschwindigkeit gezählt (20 kHz/5 kHz) und ein Interrupt–
Programm wird ausgeführt, wenn der Istwert dem Sollwert entspricht oder in-
nerhalb eines spezifizierten Bereichs fällt. Interrupt–Unterprogrammnummern
000 bis 049 werden über Befehle zugewiesen.
Schreiben von Interrupt–Programme werden als Interrupt–Unterprogramme innerhalb des An-
Interrupt–Programmen wenderprogramms programmiert. Wie bei normalen Unterprogrammen wird
auch ein Interrupt–Unterprogramm durch SBN(92) und RET(93) definiert. Es
wird an das Ende des normalen Programms platziert.
Normales
Programm
Interrupt– Unterprogramm
Programm
26
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
27
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Interrupt–Signal
Normales
Programm
Interrupt–
Unter–
Programm
programm
28
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Eingänge
E–gest. Interrupt 1
(93)
E–gest. Interrupt 2
E–gest. Interrupt3
SPS–Konfigur.
DM 6628
Zuordnung der Interrupt– Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In-
Unterprogramme terrupt–Eingängen fest zugeordnet.
Eingang Interrupt– Unterprogramm–
Nummer nummer
00003 0 000
00004 1 001
00005 2 002
00006 3 003
Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funktio-
nen konfiguriert werden: als Interrupt–Eingang, als Interrupt–Eingang (Zählmo-
dus) oder als Eingang mit Impulsspeicherung.
29
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Verdrahtung der Verdrahten Sie, bei einer CPM2A, die Eingangsklemmen wie in der folgenden
Eingänge Abbildung gezeigt.
Eingang 00003
Eingang 00004
Eingang 00005
Eingang 00006
Verdrahten Sie die Eingänge einer CPM2C, wie in der folgenden Abbildung ge-
zeigt.
Eing.–klemmen E–Steckverbind.
00004
00003
00006
00005
00004
00003
Hinweis Sehen SIe das technische Handbuch der CPU–Baugruppe für Informationen
über die Verdrahtung.
30
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Kontaktplan– Die folgende Tabelle zeigt die sich auf Interrupts beziehenden Befehlsfunktio-
Programmierung nen.
Befehl Steuerung Betrieb
(@)INT(89) Maskierung/Demaskie- Sperrt oder gibt spezifizierte Interrupts
rung der eingangsge- frei.
steuerte Interrupts.
Eingangsgesteuerte In- Löscht einen maskierten (gesperrten) ein-
terrupts löschen gangsgesteuerten Interrupt.
Liest den gegenwärtigen Liest den Freigabe/Gesperrt–Status eines
Maskenstatus eingangsgesteuerten Interrupts.
Maskierung aller Inter- Sperrt alle Interrupts, einschließlich ein-
rupts gangsgesteuerte Interrupts, Intervall–Zeit-
geber–gesteuerte Interrupts, zählerge-
steuerte Interrupts, usw.
Demaskierung aller Gibt alle Interrupts, einschließlich ein-
Interrupts gangsgesteuerte Interrupts, Intervall–Zeit-
geber–gesteuerte Interrupts, zählerge-
steuerte Interrupts, usw. frei.
Spezifiziert/speichert 0.
Spezifiziert eingangsgesteuerten Interrupt 3 (Eingang 00006)
Spezifiziert eingangsgesteuerten Interrupt 2 (Eingang 00005)
Spezifiziert eingangsgesteuerten Interrupt 1 (Eingang 00004)
Spezifiziert eingangsgesteuerten Interrupt 0 (Eingang 00003)
31
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
(@)INT(89)
Interrupt–Steuercode (001: Interrupt löschen)
001
000 Fest auf 000 (keine Funktion)
C2 Steuerdaten–Wort
Spezifiziert 0
0: Interrupt beibehalten
1: Interrupt löschen
(@)INT(89)
002 Interrupt–Steuercode (002: Lesen des gegenwärtigen Maskenstatus)
000 Fest auf 000 (keine Funktion)
C2 Steuerdaten–Wort
0 spezifizieren
Spezifiziert eingangsgesteuerten Interrupt 3 (Eingang 00006)
Spezifiziert eingangsgesteuerten Interrupt 2 (Eingang 00005)
Spezifiziert eingangsgesteuerten Interrupt 1 (Eingang 00004)
Spezifiziert eingangsgesteuerten Interrupt 0 (Eingang 00003)
(@)INT(89)
100 Interrupt–Steuercode (100: Maskierung aller Interrupts)
000 Fest auf 000 (keine Funktion)
000 Fest auf 000 (keine Funktion)
32
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
(@)INT(89)
200 Interrupt–Steuercode (200: Demaskierung aller Interrupts)
000 Fest auf 000 (keine Funktion)
000 Fest auf 000 (keine Funktion)
Die Maskierung oder Demaskieren aller Interrupt kann nicht innerhalb eines In-
terrupt–Unterprogrammes ausgeführt werden.
Treten Interrupts–Signale auf, während alle Interrupts maskiert sind, werden die
Interrupt–Signale aufgezeichnet aber es wird keine Interrupt–Verarbeitung
durchgeführt. Wird “Alle Interrupts demaskieren” ausgeführt, wird die Verarbei-
tung entsprechend dem Interrupt–Maskenstatus jedes Eingangs durchgeführt.
Interrupt–Masken können nicht einfach durch Ausführung von “Alle Interrupts
demaskieren” gelöscht werden. Die Ausführung von “Alle Interrupts demaskie-
ren” stellt lediglich den Status wieder her, der vor der Ausführung von ”Alle Inter-
rupts maskieren“ wirksam war.
Hinweis INT(89) muss in der Reihenfolge ”Maskierung aller Interrupts“ gefolgt von ”De-
maskierung aller Interrupts“ ausgeführt werden.
Programmbeispiel
Erläuterung In diesem Beispiel wird ein Interrupt–Unterprogramm ausgeführt, indem Ein-
gang 00003 von AUS nach EIN wechselt. Das Interrupt–Unterprogramm inkre-
mentiert den Inhalt von DM 0000 um 1.
Verdrahtung Das folgende Diagramm zeigt die Eingangsverdrahtung der CPM2A.
Eingabegerät
Eing.–klemmen E–Steckverbind.
Eingabe-
gerät
Eingabe-
gerät
33
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
SPS–Konfiguration
15 0
DM 6628 0 0 0 1
Programmierung
EIN für 1 Zyklus am Anfang
des RUN/MONITOR–
Betriebs
(89)
Immer EIN
25313
Intervall–Zeitgeber–Interrupt
Normales
Programm
Interrupt– Unter–
Programm programm
34
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Monoflop–Interrupt–Modus Zeitgesteuerter
Interrupt–Modus
Vorgang Der Interrupt wird einmal aus- Interrupts werden in normalen
geführt, wenn die Zeit abge- Intervallen ausgeführt.
laufen ist.
Zeiteinstellung 0,5 bis 319.968 ms (Einheit: 0,1 ms)
Interrupt– 0,3 ms (beginnend mit dem Moment des Ablaufs der Zeit bis
Ansprechzeit zur Ausführung des Interrupt–Programms)
Kontaktplan–Programmierung STIM(69)
Interrupt wird
Intervall-Zeitgeber ausgeführt.
Spezifiziertes Unterprogramm
Kontaktplan–Programmierung wird ausgeführt.
STIM(69)
INTERVALL–ZEIT- SBN(92)
GEBER–Befehl
Zeitgeber starten
Monoflop–Betrieb
Zeitgest. Interrupt–Betrieb RET (93)
Lesen der abgelaufen. Zeit
Auswählen des Modus Wählen Sie entweder den Monoflop– oder den zeitgesteuerten Interrupt–
Modus aus.
35
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Monoflop–Modus
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
Zeitgesteuerter Interrupt–Modus
Normales Programm
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
36
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Monoflop–Modus
(@)STIM(69)
000 Steuerbezeichnung (000: Einschaltwischer starten)
C2 Erstes Wort des Zeitgeber–Sollwertes
C3 Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
Zeitgesteuerte Interrupt–Modus
(@)STIM(69)
003 Steuercode (003: zeitgesteuert. Interrupt–Zeitgeber starten
C2 Erstes Wort des Zeitgeber–Sollwertes
C3 Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spezifi-
zierten Zeit wird folgendermaßen berechnet:
(Inhalt des Wortes C2) x (Inhalt der Worte C2 + 1) x 0,1 ms
(0,5 bis 319.968 ms)
Wird für C2 eine Konstante spezifiziert, wird der Sollwert des Abwärtszählers auf
diesen Wert gesetzt und das Dekrementierungs-Zeitintervall beträgt 10 (1 ms).
(Der Sollwert wird spezifiziert wie er ist, in ms–Einheiten.)
Lesen der Zeitgeber–Istwerte
Diese Funktion liest die Intervall–Zeitgeber–Istwerte.
(@)STIM(69)
006 Steuercode (006: Zeitgeber–Istwert lesen)
C2
C3
Anzahl der Male, die ein Abwärtszähler herun-
C2 tergezählt werden soll (4–stelliger Hex–Wert)
C2+1 Zeitintervall jeder Dekrementierung
(4-stelliger BCD-Wert; Einheit: 0,1 ms)
Abgelaufene Zeit seit der vorhergehenden Dekre-
C3
mentierung (4-stelliger BCD-Wert; Einheit: 0,1 ms)
(@)STIM(69)
010 Steuercode (010: Zeitgeber anhalten)
000 Fest: 000
000 Fest: 000
37
CPM2A/CPM2C–Interrupt–Funktionen Abschnitt 2-1
Programmbeispiel
Monoflop–Interrupt–Modus
Beschreibung
In diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedin-
gung (00005) von AUS nach EIN umschaltet. Wenn die Zeit (ca. 1 s) abgelaufen
ist, wird das Interrupt–Unterprogramm einmal ausgeführt. Wird das Interrupt–
Unterprogramm ausgeführt, wird der Inhalt von DM 0000 um 1 inkrementiert.
Abgelaufene Zeit 100 x 100 x 0,1 = 1.000 ms
Programmierung
EIN für 1 Zyklus am
Anfang des Betriebs
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999 BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms
(0005 bis 0320 BCD–Wert)
Immer EIN
38
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Zeitgesteuerter Interrupt–Modus
Beschreibung
In diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedin-
gung (00005) von AUS nach EIN umschaltet. Dann wird das Interrupt–Unterpro-
gramm jedes Mal ausgeführt, nachdem die festgesetzte Zeit (ca. 1 s) abgelau-
fen ist. Der Inhalt von DM 0000 jedesmal um 1 inkrementiert, wenn das Inter-
rupt–Unterprogramm ausgeführt wird.
Abgelaufene Zeit 100 x 100 x 0,1 = 1.000 ms
Programmierung
EIN für 1 Zyklus am
Anfang des Betriebs
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999, BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung:
10 ms (0005 bis 0320, BCD–Wert)
Immer EIN
Führt den Interrupt jedes Mal aus, wenn die
festgesetzte Zeit abgelaufen ist.
Keine
Schnelle Zähler Schneller Zähler
Interrupts
Zielwert–Ver-
1 Eingang gleich–Interrupts
Istzählwert–
Interrupts Bereichsver-
gleich–Interrupts
4 Eingänge:
Aufwärtszähl–
(2 Eingänge in CPM2C CPU– Interrupts
Baugruppen mit 10 E/A)
Arten von Schnellen Die CPM2A/CPM2C verfügt über einen integrierten Schnellen Zähler und inte-
Zählern grierte Interrupt–Eingänge.
39
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Schneller Zähler
Der eingebaute schnelle Zähler verwendet die eingebauten Eingänge 00000 bis
00002 der CPU–Baugruppe. Der schnelle Zähler kann entweder zum Inkre-
mentieren/Dekrementieren oder nur zum Inkrementieren, je nach Betriebsart-
einstellung, verwendet werden.
Eingangs– Ansprech– Eingangsmodus (Zählwert) Steuerverfahren
Nr. (sehen frequenz
Sie den
Hinweis)
00000 5 kHz Differentialphasen Zielwertvergleich–
00001 (–8388608 bis 8388607) Interrupts
00002 20 kHz Impuls und Richtung Bereichsvergleich–
(–8388608 bis 8388607) Interrupts
Auf–/Abwärts–Impulse
(–8388608 bis 8388607)
Inkremental
(0 bis 16777215)
Hinweis Nicht als Zählereingänge verwendet Eingänge können als gewöhnliche Ein-
gänge verwendet werden.
Interrupt–Eingänge (Zählmodus)
Im Zählmodus werden die eingebauten Eingänge 00003 bis 00006 (00003 und
00004 in CPM2C–CPU–Baugruppen mit 10 Ein–/Ausgängen) der CPU–Bau-
gruppe verwendet. Zähler verwenden vier Eingänge und können den Zählwert,
je nach der Betriebsarteinstellung, entweder inkrementieren oder dekrementie-
ren. Da diese Funktion Interrupt–Eingänge zum Zählen verwendet, ist es nicht
möglich, die belegten Eingänge für andere Zwecke zu verwenden.
Eingangs– Ansprech– Eingangsmodus Steuerverfahren
Nr. (sehen frequenz (Zählwert)
Sie den
Hinweis)
00003 2 kHz Aufwärtszähler Zählergesteuerte
g
00004 (0000 bi
bis FFFF) I
Interrupts
00005 Abwärtszähler
(0000 bis FFFF)
00006
Hinweis 1. Nicht als Zähleingänge verwendete Eingänge können als gewöhnliche Ein-
gänge verwendet werden.
2. Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht
vorhanden.
Schnelle Zähler–Interrupts
Vom Schnellen Zähler generierte Interrupts (Zählsollwert erreicht–Inter-
rupts)
Zielwertvergleich–Interrupts
Der aktuelle Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, in
der diese in der Tabelle gespeichert wurde. Ein Interrupt–Unterprogramm wird
ausgeführt, wenn der Istwert dem aktuellen Zielwert entspricht. Bis zu 16 Ziel-
40
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Zielwerte in inkrementierender
Richtung
Zielwerte in dekrementierender
Richtung
Bereichsvergleich–Interrupts
Eine Bereichsvergleich–Tabelle enthält bis zu acht Bereiche, wobei jeder Ein-
trag aus einem unteren und einem oberen Grenzwert sowie der entsprechen-
den Unterprogrammnummer gebildet wird. Das entsprechende Unterpro-
gramm wird aufgerufen und ausgeführt, wenn der Zähl–Istwert innerhalb eines
beschriebenen Bereichs liegt.
Zähler–Istwert
Oberer Grenzw. 1:
Unterer Grenzw. 1:
Oberer Grenzw. 2:
Unterer Grenzw. 2:
41
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Zählereingänge
Rücksetzeingang
Sensor Inkremental–Drehgeber
Angabe
g Eingangsmodus
Differentialphase Impuls plus Aufwärts/Abwärts Inkremental
Richtung
Eingangs–
g g 00000 Eingang Phase–A Impulseingang Rechtslaufeingang Impulseingang
nummer 00001 Eingang Phase–B Richtungseingang Linkslaufeingang (Sehen Sie den
Hinweis 1)
00002 Eingang Phase–Z (Rücksetzeingang) (sehen Sie Hinweis 1)
Eingangs– Differentialphasen Phaseneingänge Phaseneingänge Phaseneingänge
methode –eingänge (4X)
Ansprechfrequenz 5 kHz 20 kHz 20 kHz 20 kHz
Zählwert –8388608 bis 8388607 0 bis 16777215
Zähleristwert–Speicherziel Worte SR 248 (äußerst rechte Ziffern) und SR 249 (äußerst linke Ziffern)
(sehen Sie den Hinweis 2)
Interrupts Zielwertvergleich Bis zu 16 Zielwerte und Interrupt–Unterprogrammnummern können in der
inkrementierenden oder dekrementierenden Richtung gespeichert werden.
Bereichsvergleich Bis zu acht Bereiche (mit oberen und unteren Grenzen) und
Unterprogrammnummern können gespeichert werden.
Zählerrückstellverfahren Z–Phasensignal + Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn IR
00002 einschaltet, während SR 25200 gesetzt ist.
Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn SR 25200
eingeschaltet wird.
42
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Programmbeispiel
Wählen Sie den Eingangsmodus Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang,
und das Rücksetzverfahren aus Auf–/Abwärtseingang oder Inkremental
Rücksetzverfahren: Z–Phase und Software–Rücksetzung oder nur Software–Rücksetzung
Keine Interrupts (Lesen des schnellen Zähler–Istwerts oder Lesen der Bereichs–Vergleichsergebnisse)
Wählen Sie die zuverwendenden
Interrupts aus Zielwertvergleichs–Interrupts
Bereichswertvergleichs–Interrupts
Schnelle Zählereinstellung
SPS–Konfiguration (DM 6642) Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang,
Auf–/Abwärtseingang oder Inkrement
Rücksetzverfahren: Z–Phase und Software–Rücksetzung oder Software–Rücksetzung
43
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Geber– Zahlungsprüfungs–
Eingangsmodus Zählen
eingänge Interrupt generiert
Differential–
Phasenbetrieb
Impuls– u. Richtungs- Kontaktplan–Programm
eingang Spezifiziertes Unterprogramm wird
ausgeführt (wenn Zählungsprü-
Auf/Ab–Betrieb
REGISTERVERGLEICH- fungs–Interrupts verwendet werden).
Inkrementaleingang CTBL (63)
STABELLEN–Befehl
Registervergleichs– SBN(92)
tabelle
Auffrischung
EIN
Phase B
AUS
Zählwert
1,000
Nms → Frequenz =
Nx4
44
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
EIN
Richtungs-
eingang
AUS
Zählwert
1,000
Nms → Frequenz =
N
Auf–/Abwärts–Impuls
In dem Auf–/Abwärts–Impulseingangsmodus werden Rechtslauf– (Aufwärts–
impulse) und Linkslauf–Signale (Abwärtsimpulse) angelegt und der Zählwert
wird entsprechend inkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
a
EIN
Rechtslauf–
eingang
AUS
EIN
Linkslauf–
eingang AUS
Zählwert
Inkrementierung Dekrementierung
1,000
Nms → Frequenz =
N
Inkremental
Im Inkrementalmodus werden Impulssignale angelegt und der Zählwert wird mit
jedem Impuls inkrementiert. IR 00001 kann als gewöhnlicher Eingang verwen-
det werden.
Maximalfrequenz: 20 kHz
EIN
Impuls–
eingänge
AUS
Zählwert
1,000
Nms → Frequenz =
N
45
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
oder FFFFFFFF, wenn ein Unterlauf vorkommt; der Vergleich wird anschlie-
ßend abgebrochen.
Differentialphasen–
Eingangsmodus
Impuls– u. Richtungs–
Eingangsmodus Unterlauf (FFFFFFFF) Überlauf (0FFFFFFF)
Auf–/Abwärts–
Impuls–Eingangsmodus
Inkrementalmodus
Überlauf (0FFFFFFF)
Setzen Sie den Istwert zurück, um die Zählung nach einem Über– oder Unter-
lauf neuzustarten. (Der Istwert wird automatisch zurückgesetzt, wenn der Be-
trieb gestartet wird.)
Rücksetzverfahren
Eines der beiden folgenden Verfahren kann gewählt werden, um den Zählerist-
wert auf 0 zurückzusetzen.
Z–Phasen–Signal (Rücksetzeingang) + Software–Rücksetzung
Der Istwert wird zurückgesetzt, wenn ein Z–Phasen–Signal (d.h. ein Rücksetz–
eingang) eingeschaltet wird, während der Rücksetzmerker (25200) des Schnel-
len Zählers aktiviert ist.
1 Abfrage
Z–Phase
Software–Rücksetzung
Der Istwert wird zurückgesetzt, wenn der Rücksetzmerker (25200) des Schnel-
len Zähler gesetzt wird.
1 Abfrage
Der Rücksetzmerker (25200) des Schnellen Zählers wird mit jedem Zyklus auf-
gefrischt; somit bleibt er für mindestens eine Zyklusdauer aktivert und kann si-
cher gelesen werden.
Auch nach der Rücksetzung des Istwertes werden Vergleichstabellen–Spei-
cherstatus, Vergleichausführungszustand und Bereichsvergleich–Ergebnisse
beibehalten, wie sie vor dem Rücksetzen des Istwertes bestanden. (War ein
Vergleichsvorgang vor der Istwert–Rücksetzung aktiv, wird dieser Vergleich
nach der Rücksetzung ohne Änderung fortgesetzt.)
Nach dem Rücksetzen muss der Rücksetzmerker (25200) des Schnellen Zäh-
lers ausgeschaltet werden, damit die nächste Rücksetzung ausgeführt werden
kann. Um sicher zu sein, dass er ausgeschaltet ist, muss er für mindestens ei-
nen Zyklus ausgeschaltet bleiben.
46
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Methoden (d.h., Zielwert– oder Bereichsvergleich), durch. Ein Interrupt wird ge-
neriert, wenn die Bedingungen erfüllt sind.
Sehen Sie Abschnitt 2-1 Interrupts ”Reihenfolge der Priorität für Interrupts” für
Einzelheiten über Interrupt–Prioritäten.
Wird ein Interrupt während der Ausführung eines Steuerbefehls für den Schnel-
len Zähler generiert, d.h. CTBL(63), INI(61) oder PRV(62), werden diese Be-
fehle nicht innerhalb des Interrupt–Programms ausgeführt.
Zielwertvergleich–Interrupts
Bis zu 16 Kombinationen von Vergleichsbedingungen (Zielwert und Zählrich-
tung) und Interrupt–Unterprogrammnummern können in der Vergleichstabelle
eingetragen werden. Das spezifizierte Unterprogramm wird ausgeführt, wenn
der Zähler–Istwert einem Zielwert in der Vergleichstabelle entspricht.
Vergleichstabelle Istwert
Zähleristwert: 5.000
Zählrichtung: Inkrement
Unterprogrammnummer:
10
Inkrement–
richtung Dekrement–
Zähleristwert: 1.000 richtung
Zählrichtung: Inkrement
Unterprogrammnummer:
8
Inkrement–
Zähleristwert: 3.000
Zählrichtung: Dekrement richtung
Unterprogrammnummer:
9 Zeit
Interrupt Interrupt Interrupt
Unterprogramm Unterprogramm Unterprogramm
8 ausgeführt 10 ausgeführt 9 ausgeführt
Vergleichstabelle Istwert
Zeit
Interrupt Interrupt Interrupt Interrupt
Unterprogramm Unterprogramm Unterprogramm Unterprogramm
10 ausgeführt 9 ausgeführt 9 ausgeführt 10 ausgeführt
47
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Ein Interrupt–Unterprogramm wird durch SBN(92) und RET(93), wie ein norma-
les Unterprogramm definiert.
Eine “SBS UNDEFD”–Warnung wird während einer Interrupt–Unterprogramm-
definition bei der Programmprüfung generiert, aber die Ausführung läuft normal
weiter.
Verdrahtung der Verdrahten Sie die Eingänge, wie es in den folgenden Abbildungen gezeigt wird,
Eingänge entsprechend des Eingangsmodus und des Rücksetzverfahrens.
CPM2A–Eingänge
Differentialphasen–Eingangsmodus Auf–/Abwärts–Impuls–Eingangsmodus
00000: Eingang Phase A 00000: Rechtsl.–eingang
00001: Eingang Phase B 00001: Linksl.–eingang
00002: Eingang Phase Z 00002: Rücksetzeingang
48
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
CPM2C–Eingänge
Differentialphasen–Eingangsmodus
E.–klemmen E–steckverbind.
Auf–/Abwärts–Impuls–Eingangsmodus
Eing.–klemmen E–steckverbind.
00002: Rücksetzeingang
00001: Linkslaufeingang
00000: Rechtslaufeingang
00002: Rücksetzeing.
00001: Linkslaufeing.
00000: Rechtslaufeingang.
Impuls– u. Richtungs–Eingangsmodus
Eing.–klemmen E–steckverbind.
00002: Rücksetzeingang
00001: Richtungseingang
00000: Impulseingang
00002: Rücksetzeing.
00001: Richtungseing.
00000: Impulseing.
49
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Inkremental–Eingangsmodus
Eing.–klemmen E–steckverbind.
00002: Rücksetzeingang
00000: Impulseingang
00002: Rücksetzeing.
00000: Impulseing.
Werden Phase–Z– und Rücksetzeingang nicht verwendet, kann 00002 als ge-
wöhnlicher Eingang verwendet werden.
SPS–Konfiguration Stellen Sie die SPS–Konfigurationsbereiche für den Schnellen Zähler wie folgt
ein:
Die neuen Einstellungen der Systemeinstellung werden wirksam, wenn der Be-
trieb beginnt (Wechsel von der PROGRAM–Betriebsart in die MONITOR– oder
RUN–Betriebsart) oder nach Erneutem Einschalten der Versorgungsspannung
der CPM2A/CPM2C.
50
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Kontaktplan– Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung bezie-
Programmierung henden Befehle.
Befehl Steuerung Betrieb
(@)CTBL(63) Zielwertvergleichsta- Speichert die Zielwertvergleichstabelle
belle speichern
Bereichsvergleichsta- Speichert die Bereichsvergleichstabelle
belle speichern
Zielwertvergleichsta- Speichert die Zielwertvergleichstabelle
belle speichern und und beginnt den Vergleich
Vergleich beginnen
Bereichsvergleichsta- Speichert die Bereichsvergleichstabelle
belle speichern und und beginnt den Vergleich
Vergleich beginnen
(@)INI(61) Vergleich starten Startet den Vergleich mit der gespeicher-
ten Vergleichstabelle.
Vergleich beenden Bricht den Vergleich ab.
Istwert ändern Ändert den schnellen Zähler–Istwert.
((@)PRV(62)
) ( ) Istwert lesen Liest Istwert des Schnellen Zählers.
Status lesen Liest den Status des Schnellen Zählers.
Bereichsvergleichs– Liest die Bereichsvergleichs–Ergebnisse
Ergebnisse lesen
(@)INT(89) Maskierung aller Sperren aller Interrupts, einschließlich
Interrupts eingangsgesteuerte Interrupts, Intervall–
Zeitgeber–gesteuerte Interrupts, zähler-
gesteuerte Interrupts, usw.
Demaskierung aller Freigabe aller Interrupts, einschließlich
Interrupts eingangsgesteuerte Interrupts, Intervall–
Zeitgeber–gesteuerte Interrupts, zähler-
gesteuerte Interrupts, usw.
Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung bezie-
hende Datenbereiche.
Wort Bits Name Inhalt
248 00 bis 15 Schneller Zähler-Istwert Liest den Istwert des
249 00 bis 15 S h ll Zählers.
Schnellen Zähl
252 00 Schneller Zähler– Wird dieses Bit eingeschal-
Rücksetzung tet, wird eine Software–
Rücksetzung für den schnel-
len Zähler ausgelöst.
AR11 00 bis 07 Schneller Zähler– EIN:Bedingung erfüllt
Bereichsvergleichs– AUS: Bedingung nicht erfüllt
Ergebnisse
08 Schneller Zähler–Vergleich EIN:Vergleich aktiv
AUS: Vergleich abgebrochen
09 Schneller Zähler–Istwert– EIN:Überlauf/Unterlauf
Überlauf/Unterlauf AUS: Normal
Zielwertvergleichstabelle speichern
Zielwertvergleichstabelle speichern und Vergleich beginnen
Diese Funktionen speichern für den Zielwertvergleich eine Vergleichstabelle
zur Zählwertüberprüfung in der CPM2A/CPM2C . Es ist auch möglich, den Ver-
gleich zusammen mit der Speicherung zu beginnen.
Zielwertvergleichstabelle speichern
(@)CTBL(63)
000 Schnittstellenbezeichner (000: Schneller Zähler)
002 Modusbezeichnung (002: Nur Zielwertvergleichstabelle speichern)
S Anfangswort der Vergleichstabelle
51
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
(@)CTBL(63)
000
Schnittstellenbezeichner (000: Schneller Zähler)
Modusbez. (000: Zielw.–vergleichstab. speichern/Vergleich beg.)
000
Zielwertvergleichstabelle
Es ist nicht möglich, mehr als eine Vergleichs–Richtungsbedingung für den glei-
chen Zielwert in der Vergleichstabelle zu spezifizieren.
Sobald eine Vergleichstabelle erstellt wurde, wird sie in der CPM2A/CPM2C ge-
speichert, falls noch keine andere Vergleichstabelle gespeichert wurde und die
Betriebsart nicht auf PROGRAM geändert wird (und solange die Versorgungs-
spannung nicht ausgeschaltet wird).
Bereichsvergleichstabelle speichern
Speichern der Bereichsvergleichstabelle und Vergleich beginnen
Diese Funktionen speichern eine Vergleichstabelle in der CPM2A/CPM2C für
die Zählwertüberprüfung des Bereichsvergleichs. Es ist auch möglich, den Ver-
gleich zusammen mit der Speicherung zu beginnen.
Bereichsvergleichstabelle speichern
(@)CTBL(63)
000 Schnittstellenbezeichner (000: Schneller Zähler)
003 Modusbezeichnung (003: Nur Bereichsvergleichstabelle speichern)
S Anfangswort der Vergleichstabelle
(@)CTBL(63)
000 Schnittstellenbezeichner (000: Schneller Zähler)
Modusbezeichnung (001: Bereichsvergleichstabelle speichern und
001
Vergleich beginnen)
S Anfangswort der Vergleichstabelle
52
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Bereichsvergleichstabelle
Untere Grenze 1
(niederwertige 4 Ziffern) Acht Bereichsvergleichsbedingungen, bestehend aus
Untere Grenze 1 oberen und unteren Grenzen und Unterprogrammnum-
(höherwertige 4 Ziffern) mern müssen spezifiziert werden.
Bereichsvergleichs– Obere und untere Grenzen (niederwertig, höherwertig)
Obere Grenze 1
(niederwertige 4 Ziffern)
Bedingung 1.
Obere und untere Grenzen speichern.
Obere Grenze 1
(höherwertige 4 Ziffern) Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Unterprogrammnummer Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impulseingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Unterprogrammnummer
Untere Grenze 8
(niederwertige 4 Ziffern) Speichern der Unterprogrammnummer, die ausgeführt wird,
Untere Grenze 8 wenn die Bereichsvergleichsbedingung erfüllt ist.
(höherwertige 4 Ziffern)
0000 bis 0049
Obere Grenze 8 Bereichsvergleichs–
(niederwertige 4 Ziffern) Bedingung 8. Werden weniger als 8 Vergleichsbereiche verwendet,
Obere Grenze 8
muss FFFF für den Rest spezifiziert werden.
(höherwertige 4 Ziffern)
Unterprogrammnummer
(@)INI(61)
000 Schnittstellenbezeichner (000: Schneller Zähler)
000 Steuerbezeichnung (000: Vergleich beginnen)
000 Fest: 000
Vergleich beenden
(@)INI(61)
000 Schnittstellenbezeichner (000: Schneller Zähler)
001 Steuerbezeichnung (001: Vergleich beenden)
000 Fest: 000
53
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Istwert ändern
Diese Funktion ändert den Istwert des schnellen Zählers.
(@)INI(61)
000 Schnittstellenbezeichner (000: Schneller Zähler)
002 Steuerbezeichnung (002: Istwert ändern)
C2 Anfangswort der zu ändernden Istwertdaten
Während eines Zielwertvergleichs tritt kein Interrupt auf, auch wenn der in der
Vergleichstabelle eingetragene Zielwert durch INI(61) geändert wird.
Zeitgeber–Istwert lesen
Diese Funktion liest den Istwert des schnellen Zählers.
Einsatz eines Befehls
(@)PRV(62)
000 Schnittstellenbezeichner (000: Schneller Zähler)
000 Steuerbezeichnung (000: Istwert lesen)
C2 Anfangswort zur Speicherung des Istwerts
Die Worte 248 und 249 werden mit jedem Zyklus aufgefrischt, somit kann zu ei-
ner bestimmten Zeit eine Diskrepanz zum genauen Istwert auftreten.
Wird der Schnelle Zähler nicht verwendet, können die Worte 248 und 249 als
Arbeitsworte eingesetzt werden.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte
248 und 249 zum gleichen Zeitpunkt aufgefrischt.
54
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Status lesen
Diese Funktion liest den schnellen Zählerstatus, unabhängig davon ob ein Ver-
gleich stattfindet oder ob ein Über– oder Unterlauf aufgetreten ist.
Einsatz eines Befehls
(@)PRV(62)
000 Schnittstellenbezeichner (000: Schneller Zähler)
001 Steuerbezeichnung (001: Status lesen)
D Wort zur Speicherung des Status
Überlauf/Unterlauf Vergleich
0: Normal 0: Beendet;
1: Überlauf/Unterlauf 1: Verarbeitung findet
statt
Überlauf/Unterlauf Vergleich
0: Normal 0: Beendet;
1: Überlauf/Unterlauf 1: Verarbeitung findet statt
AR 1108 und 1109 werden mit jedem Zyklus aufgefrischt, somit kann zu einer
bestimmten Zeit eine Diskrepanz zum genauen Status auftreten.
Wird der Status durch Ausführung von PRV(62) gelesen, werden AR 1108 und
AR 1109 gleichzeitig aufgefrischt.
Bereichsvergleichs–Ergebnis lesen
Diese Funktion liest das Ergebnis eines Bereichsvergleichs, der anzeigt, ob der
Istwert innerhalb eines Bereichs liegt oder nicht.
Einsatz eines Befehls
(@)PRV(62)
000 Schnittstellenbezeichner (000: Schneller Zähler)
002 Steuerbezeichnung (002: Bereichsvergleichs–Ergebnis lesen)
D Anfangswort zur Speicherung des Bereichsvergleich–Ergebnisses
55
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
AR 1100 bis AR 1107 werden bei jedem Zyklus aufgefrischt, somit kann eine
Diskrepanz zum genauen Istwert des Bereichsvergleich–Ergebnisses zu einem
bestimmten Zeitpunkt auftreten.
Wird das Bereichsvergleich–Ergebnis durch Ausführung von PRV(62) gelesen,
werden AR 1100 bis AR 1107 zum gleichen Zeitpunkt aufgefrischt.
Maskieren/demaskieren aller Interrupts
Sehen Sie Abschnitt 2-1-1 Interrupt–Eingänge für Einzelheiten bezüglich der
Maskierung und Demaskierung aller Interrupts.
Anwendungsbeispiele
Zielwertvergleich
Beschreibung
In diesem Beispiel werden spezifizierte Interrupt–Unterprogramme ausgeführt,
indem der Istwert des schnellen Zählers mit fünf Werten, die als Zielwertver-
gleichstabelle eingerichtet werden, verglichen wird. Mit jedem Interrupt werden
die Daten in 0000 DM bis 0004 DM um Eins inkrementiert.
Verdrahtung (CPM2A)
E6B2–CWZ6C Orange
Inkremental–
Drehgeber Weiß
Schwarz
Blau
Braun
56
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Verdrahtung (CPM2C)
Eing.–klemmen
Blau
Inkremental–
Drehgeber
Braun
Orange
Weiß
Schwarz
E–steckverbind.
Blau Inkremental–
Drehgeber
Braun
Orange
Weiß
Schwarz
SPS–Konfiguration
15 0
DM 6642 0 1 0 0
0: Differentialphasen–Betrieb
0: Durch Z–Phasen–Signal + Software–Rücksetzung
zurückgesetzt
01: Verwendung als Schneller Zähler
57
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Programmierung
EIN für 1 Zyklus am
Anfang des Betriebs
(71)
(93)
(92)
Immer EIN
(38) Vergleich 5
(93)
(92)
Immer EIN
(38)
Vergleich 1
(93)
(92)
Immer EIN
(38)
Vergleich 3
(93)
(01)
58
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Bereichsvergleich:
Beschreibung
In diesem Beispiel werden spezifizierte Interrupt–Unterprogramme ausgeführt,
indem der Istwert des schnellen Zählers mit fünf Bereichen, die als Bereichsver-
gleichstabelle eingerichtet werden, verglichen wird. Mit jedem Interrupt werden
die Daten in DM 0000 bis DM 0004 um Eins inkrementiert.
Verdrahtung (CPM2A)
E6B2–CWZ6C Orange
Inkremental–
Drehgeber Weiß
Schwarz
Blau
Braun
Verdrahtung (CPM2C)
Eing.–klemmen
Blau
Inkremental–
Drehgeber
Braun
Orange
Weiß
Schwarz
E–steckverbind.
Blau
Inkremental–
Drehgeber
Braun
Orange
Weiß
Schwarz
59
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
SPS–Konfiguration
15 0
DM 6642 0 1 0 0
0: Differentialphasen–Betrieb;
0: Durch Z–Phasen–Signal + Software–Rücksetzung
zurückgesetzt
01: Verwendung als Schneller Zähler
60
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Programmierung
EIN für 1 Zyklus am Anfang
des RUN/MONITOR–Betriebs
(71)
Unt. Grenze:
(92) 9.000
Vergleich 1
Immer EIN
Ober. Grenze:
10.000
(38) Vergleich 1
Unterprogr. 040
Unt. Grenze:
(93) 7.000
Vergleich 2
Ober. Grenze:
8.000
(92)
Unterprogr. 041
Immer EIN
Unt. Grenze:
–3.000
(38)
Vergleich 2 Vergleich 3
Ober. Grenze:
3.000
(93)
Unterprogr. 010
Unt. Grenze:
–8.000
(92) Vergleich 4
Immer EIN
Ober. Grenze:
–7.000
(38)
Vergleich 3 Unterprogr. 042
Unt. Grenze:
–10.000
(93) Vergleich 5
Ober. Grenze:
–9.000
(92) Unterprogr. 043
Immer EIN
(38)
Vergleich 4 Vergleich 6 Nicht verwendet.
(93)
(92)
Immer EIN Vergleich 7 Nicht verwendet.
(38) Vergleich 5
(93)
Vergleich 8 Nicht verwendet.
(01)
61
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
zu 2 kHz verwendet werden. Diese Eingänge können als Aufwärts– oder Ab-
wärtszähler verwendet werden, die einen Interrupt auslösen (d.h. Ausführung
eines Interrupt–Unterprogrammes), wenn der Zählwert dem Sollwert ent-
spricht.
Intterupt–
Eingänge
(Zählmodus)
Zähl–Interrupt
Normales
Programm
Interrupt– Unter–
Programm programm
62
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
63
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Eingänge
Zähler (2 kHz) 0 Eingangsgesteuerte Interrupt wird
Interrupts im Zählmodus generiert.
Kontaktplan–Programm
SBN(92)
INT(89)
INTERRUPT–
Verarbeitungsbefehl
Zähler (2 kHz) 1
RET (93)
Zähler (2 kHz) 2
Zähler–Sollwert
Zähler 0 SR 240
Zähler 1 SR 241
Zähler (2 kHz) 3
Zähler 2 SR 242
Zähler 3 SR 243
SPS–Konfiguration
BETRIEBSARTEN-
INI (61) STEUERUNGS–Befehl
DM 6628
Istwert ändern
Auffrischung
Einmal pro Zyklus Sofort
Zuordnung der Interrupt– Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In-
Unterprogramme terrupt–Eingängen fest zugeordnet.
Eingang Interrupt– Unterprogramm–
Nummer nummer
00003 0 000
00004 1 001
00005* 2 002
00006* 3 003
64
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Zeit
Interrupt Interrupt
Return
Unterprogramm wird ausgeführt Unterprogramm wird ausgeführt
Dekrementierender Zählmodus
Nachdem der Sollwert gelesen wurde, wird der Zählwert in Richtung 0 dekre-
mentiert und das Interrupt–Unterprogramm ausgeführt, wenn der Istwert 0 er-
reicht.
Istwert Das Unterprogramm wird ausgeführt, wenn
die Zählung beendet ist; der Istwert wird auf
Sollwert zurückgesetzt.
Soll–
wert
Dekrementieren Dekrementieren
Zeit
Interrupt Interrupt
Verdrahtung der Verdrahten Sie die Eingangsklemmen einer CPM2A wie in der folgenden Abbil-
Eingänge dung gezeigt.
Eingang 00003: Eing.–Interrupt (Zählmodus) 0
Eingang 00004: Eing.–Interrupt (Zählmodus) 1
Eingang 00005: Eing.–Interrupt (Zählmodus) 2
Eingang 00006: Eing.–Interrupt (Zählmodus) 3
65
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Verdrahten Sie die Eingangsklemmen einer CPM2C wie in der folgenden Abbil-
dung gezeigt.
Eing.–klemmen
E–.steckverbind.
66
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Kontaktplan– Die folgende Tabelle enthält die Befehlsfunktionen, die sich auf die eingangsge-
Programmierung steuerte Interrupts (Zählmodus) beziehen.
Befehl Steuerung Betrieb
(@)INT(89) Sollwert des Aufwärts- Frischt den Sollwert des Zählers auf und
zählers auffrischen beginnt die Aufwärtszählung.
Sollwert des Abwärts- Frischt den Sollwert des Zählers auf und
zählers auffrischen beginnt die Abwärtszählung.
Alle Interrupts Sperrt alle Interrupts, einschließlich ein-
maskieren gangsgesteuerte Interrupts, Intervall–Zeit-
geber–gesteuerte Interrupts, zählerge-
steuerte Interrrupts, usw.
Alle Interrupts Gibt alle Interrupts, einschließlich ein-
demaskieren gangsgesteuerte Interrupts, Intervall–Zeit-
geber–gesteuerte Interrupts, zählerge-
steuerte Interrrupts, usw. frei.
(@)INI(61) Istwert ändern Ändert den Istwert des Zählers.
(@)PRV(62) Istwert lesen Liest den Istwert des Zählers.
67
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
(@)INT(89)
004 Interrupt–Steuercode (004: Sollwert des Aufwärtszählers auffrischen)
000 Fest: 000
C2 Steuerdaten–Wort
Abwärtszähler
(@)INT(89)
003 Interrupt–Steuercode (003: Sollwert des Abwärtszählers auffrischen)
000 Fest: 000
C2 Steuerdaten–Wort
0: Sollwert auffrischen
1: Sollwert nicht auffrischen
(@)INI(61)
P Schnittstellenbezeichner (100, 101, 102, 103: eingangsgesteuerte Interrupts (Zählmodus) 0 bis 3)
002 Steuerbezeichnung (002: Istwert ändern)
C2 Spezifiziert das Quellwort, das den neuen Istwert enthält
Istwert lesen
Diese Funktion liest den Istwert des Zählers.
Einsatz eines Befehls
(@)PRV(62)
P Schnittstellenbezeichner (100, 101, 102, 103: eingangsgest. Interrupt (Zählmodus) 0 bis 3)
000 Steuerbezeichnung (000: Istwert lesen)
D Wort zur Speicherung des Istwerts
D Istwertdaten lesen
Der gelesene Istwert wird hier gespeichert.
0000 bis FFFF
68
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
Die Worte SR 244 bis SR 247 werden in jedem Zyklus aufgefrischt, somit kann
zu einem bestimmten Zeitpunkt eine Diskrepanz zum genauen Istwert auftre-
ten.
Die Worte SR 244 bis SR 247 können nicht als Arbeitsworte verwendet werden,
auch wenn keine eingangsgesteuerten Interrupts (Zählmodus) verwendet wer-
den.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte
244 und 247 zum gleichen Zeitpunkt aufgefrischt.
Maskieren/demaskieren aller eingangsgesteuerte Interrupts
Sehen Sie Abschnitt 2-1-1 Eingangsgesteuerte Interrupts für Einzelheiten be-
züglich der Maskierung und Demaskierung aller Interrupts.
Anwendungsbeispiel
Erläuterung In diesem Beispiel wird der Istwert jedes Mal dekrementiert, wenn Eingang
00003 eingeschaltet wird, und DM 0000 wird bei jedem hundertsten (64 hex)
Einschalten von Eingang 00003 um Eins durch ein Interrupt–Unterprogramm
inkrementiert.
Verdrahtung Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2A.
Eingabegerät
Eing.–klemmen E.–steckverbind.
Eingabegerät
Eingabegerät
69
CPM2A/CPM2C Schneller Zähler Abschnitt 2-2
SPS–Konfiguration
15 0
DM 6628 0 0 0 1
Programmierung
EIN für 1 Zyklus am
Anfang des Betriebs
Zählereinstellung dekrementieren
Zähler–Sollwert: 64 hex (100 dez.)
Speichert den Sollwert in Wort 240.
Startet den Zähler mit Eingang 00003 als Inter-
(89) rupt–Eingang (Zählmodus).
Frischt den Zähler–Sollwert (Abwärtszähler) auf.
immer 000
Spezifiziert Eingang 00003.
(Andere werden ausmaskiert.)
70
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
2-3 CPM1/CPM1A–Interrupt–Funktionen
In diesem Abschnitt werden die Einstellungen und Verfahren für die Verwen-
dung der CPM1/CPM1A–Interrupt–Funktionen beschrieben.
71
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Verfahren 1
Die gesamte Interrupt–Verarbeitung kann während der Befehlsauführung mas-
kiert werden.
@INT(89)
100
000
000
INI (61)
000
000
000
@INT(89)
200
000
000
Verfahren 2
Führen Sie den Befehl wieder im Hauptprogramm aus.
1, 2, 3... 1. In der nachfolgenden Abbildung ist der Programmabschnitt des Hauptpro-
gramms dargestellt.
@PRV(62)
000
002
DM 0000
LR 0000
CTBL (63)
000
000
DM 0000
RSET LR 0000
SBN(92) 000
25313
@CTBL(63)
000
000
DM 0000
25503
LR
0000
72
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
2-3-2 Eingangs–Interrupts
Die CPU–Baugruppen mit 10 Ein–/Ausgängen (CPM1–10CDRj und
CPM1A–10CDRj) verfügen über zwei Interrupt–Eingänge (00003 und 00004).
Die CPU–Baugruppen mit 20, 30 und 40 Ein–/Ausgängen (CPM1–20CDRj,
CPM1A–20CDRj, CPM1–30CDRj(–V1), CPM1A–30CDRj und
CPM1A–40CDRj) verfügen über vier Interrupt–Eingänge (00003 bis
00006).
Es gibt zwei Betriebsarten für die Verarbeitung von eingangsgesteuerte Inter-
rupts: den eingangsgesteuerten Interrupt–Modus und den Zählmodus.
CPM1 SPS
CPU–Baugruppen mit 10 Ein–/Ausgängen CPU–Baugruppen mit 20 und 30 Ein–/
(CPM1–10CDRj) Ausgängen (CPM1–20CDRj und
CPM1–30CDRj(–V1))
00003
00004
00005
00006
00003
00004
NC
24VDC
CPM1A SPS
CPU–Baugruppen mit 20, 30 und 40
CPU–Baugruppen mit 10 Ein–/Ausgängen (CPM1A–20CDRj und
Ein–/Ausgängen CPM1A–30CDRj) CPM1A–40CDRj)
(CPM1A–10CDRj)
CPU–Baugruppe
g pp Ein– Interrupt–
p Ansprechzeit
gang nummer Interrupt– Zählmodus
Modus
CPM1-10CDR-j
j 00003 00 max. 0,3
, ms 1 kHz
CPM1A 10CDj j
CPM1A-10CDj-j 00004 01 (Zeit bis zur
CPM1-20CDR-j 00003 00 Ausführung des
CPM1A 20CDj j
CPM1A-20CDj-j Interrupt–
00004 01 Programms)
g )
CPM1-30CDR-j(-V1)
CPM1 30CDR j( V1)
CPM1A-30CDj-j
CPM1A 30CDj j 00005 02
CPM1A-40CDj-j 00006 03
Hinweis Werden keine eingangsgesteuerte Interrupts verwendet, können Sie die Ein-
gänge 00003 bis 00006 als normale Eingänge verwenden.
Interrupt–Eingangs– Eingänge 00003 bis 00006 müssen als Interrupt–Eingänge in DM 6628 einge-
Einstellungen stellt werden, falls sie für eingangsgesteuerte Interrupts in der CPM1/CPM1A
benutzt werden sollen. Die entsprechende Stelle muss auf 1 eingestellt werden,
wenn der Eingang als Interrupt–Eingang (eingesteuerter Interrupt oder Zählmo-
dus) verwenden werden soll; bei einer Verwendung als normaler Eingang muss
0 eingestellt werden.
73
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Wort Einstellung
DM 6628 0: Normaler Eingang
(Grundeinstellung)
g g
1: Interrupt–Eingang
2:
2 Schneller
S h ll Eingang
Ei
Bit 15 0
DM 6628
Interrupt–Unterprogramme Die Interrupts der Eingänge 00003 bis 00006 sind den Interrupt–Nummern 00
bis 03 und den Unterprogrammen 000 bis 003 zugeordnet. Werden keine ein-
gangsgesteuerten Interrupts verwendet, können die Unterprogramme 000 bis
003 als normale Unterprogramme verwendet werden.
Eingang Interrupt– Unterprogramm–
Nummer nummer
00003 0 000
00004 1 001
00005 2 002
00006 3 003
Eingangsauffrischung Wird keine Eingangsauffrischung über den IORF–Befehl durchgeführt, ist der
Eingangssignal-Zustand innerhalb des Interrupt-Unterprogramms nicht ein-
deutig festgelegt. Je nach Eingangs–Zeitkonstante können bei der Eingangs–
Auffrischung die Eingangssignale nicht auf EIN gesetzt werden. Dies gilt auch
für den Status des Interrupt-Eingangsbits, das den Interrupt aktiviert hat.
In dem Interrupt-Unterprogramm für den Eingangs-Interrupt 0 wird IR 00000
beispielsweise erst nach der Auffrischung der E/A gesetzt. In diesem Fall kann
der ständig gesetzte Systemmerker SR 25313 anstelle der Eingangs-Adresse
IR 00000 verwendet werden.
Eing–gest. Interrupt–Modus Wird ein Interrupt–Eingangssignal empfangen, wird das Hauptprogramm unter-
brochen und das Interrupt–Programm sofort ausgeführt, unabhängig davon, in
welchem Zyklus der Interrupt empfangen wird. Das Signal muss für 200 µs oder
länger anliegen, um erfasst zu werden.
Hauptprogramm Hauptprogramm
Interrupt–Programm
Interrupt–Eingangssignal
(@)INT(89) Die Einstellungen erfolgen über die D-Bits 0 bis 3, die den ein-
000 gangsgesteuerten Interrupts 0 bis 3 entsprechen.
0: Löschen der Maskierung (Interrupt aktiviert)
000
1: Setzen der Maskierung (Interrupt deaktiviert)
D
74
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Programmbeispiel
Ist der Eingang 00003 (Interrupt 0) auf EIN gesetzt, wird sofort das Interrupt–
Programm mit der Unterprogrammnummer 000 aufgerufen. Eingänge werden
in DM 6628 auf 0001 gesetzt.
Interrupt–Programm
RET (93)
Zählmodus Externe Eingangssignale werden mit hoher Geschwindigkeit gezählt und ein In-
terrupt wird generiert, wenn der Zähler den Sollwert erreicht. Wird ein Interrupt
generiert, wird das Hauptprogramm unterbrochen und das Interrupt–Programm
wird ausgeführt. Es können Signale bis zu 1 kHz gezählt werden.
Hauptprogramm Hauptprogramm
Interrupt–Programm
Interrupt–Eingangssignal
Sollwert
75
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
76
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Interrupt Wort
Eingangsgesteuerter Interrupt 0 SR 244
Eingangsgesteuerter Interrupt 1 SR 245
Eingangsgesteuerter Interrupt 2 SR 246
Eingangsgesteuerter Interrupt 3 SR 247
Beispiel:
Der Istwert für einen Interrupt, dessen Sollwert 000A beträgt, wird unmittelbar
nach der Ausführung des INT(89)-Befehls als 0009 gespeichert.
Hinweis Auch wenn keine eingangsgesteuerte Interrupts in der Zähler-Betriebsart ver-
wendet werden, können diese SR–Systemmerker nicht als Hilfsbits verwendet
werden.
Programmbeispiel
Wird der Eingang 00003 (Interrupt–Nummer 0) 10 mal auf EIN gesetzt, wird so-
fort das Interrupt–Programm mit der Unterprogrammnummer 000 aufgerufen.
Die folgende Tabelle zeigt, wo die Sollwerte und Istwerte –1 des Zählers gespei-
chert werden. Eingänge wurden in DM 6628 auf 0001 gesetzt.
Interrupt Wort mit Wort mit
Sollwert Istwert–1
Eingang 00003 (eingangsgesteuerter Interrupt 0) SR 240 SR 244
Eingang 00004 (eingangsgesteuerter Interrupt 1) SR 241 SR 245
Eingang 00005 (eingangsgesteuerter Interrupt 2) SR 242 SR 246
Eingang 00006 (eingangsgesteuerter Interrupt 3) SR 243 SR 247
Interrupt–Programm
RET (93)
77
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Maskierung von Interrupts Der INT(89)-Befehl dient zur Deaktivierung aller Interrupts.
(@)INT(89)
100
000
000
Wird während der Maskierung ein Interrupt generiert, erfolgt keine Interrupt-
Verarbeitung, sondern der Interrupt (für eingangsgesteuerte Interrupts, Inter-
vall-Zeitgeber–gesteuerte Interrupts und zählergesteuerte Interrupts) wird ge-
speichert. Interrupts werden unmittelbar nach der Demaskierung abgearbeitet.
Ausmaskierung von Mit Hilfe des INT(89)-Befehls können Interrupts folgendermaßen ausmaskiert
Interrupt–Signalen werden:
(@)INT(89)
200
000
000
(@)STIM(69)
C1: Intervall–Zeitgeber, Monoflop–Modus (000)
C1
C2: Zeitgeber-Sollwert (erste Wortadresse)
C2
C3: Unterprogramm-Nummer
C3
(4-stelliger BCD-Wert): 0000 bis 0049
78
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Zeitgeber-Start im zeitgesteuerten(SCHEDULED)–Interrupt-Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber
im zeitgesteuerten Interrupt–Modus.
(@)STIM(69)
C1: Intervall–Zeitgeber, zeitgesteuerter Interrupt–Modus (003)
C1
C2: Zeitgeber-Sollwert (erste Wortadresse)
C2
C3: Unterprogrammnummer (4-stelliger BCD-Wert): 0000 bis 0049
C3
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C1
C2: Führendes Wort von Parameter 1
C2
C3: Parameter 2
C3
(@)STIM(69)
C1
C1: Anhalten des Intervall–Zeitgebers (010)
000
000
79
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Anwendungsbeispiel In diesem Beispiel wird 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 auf EIN
(Monoflop–Modus) gesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung der In-
terrupt–Unterprogrammnummer 23 aus.
MOV(21)
#0006
Setzt das Dekrementierungs–Zeitgeber–
Intervall auf 0,6 ms. (BCD–Wert: 0005 bis
DM 0011 0320)
00005
@STIM(69)
Startet den Intervall–Zeitgeber im Monoflop–
000 Modus.
DM 0010 Spezifiziert das erste Wort, das den Sollwert enthält.
#0023 Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
RET (93)
Anwendungsbeispiel In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005
(zeitgesteuerter Modus) auf EIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitung
der Interrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0010 Setzt das Dekrementierungs–Zeitgeber–
DM 0011 Intervall auf 1,0 ms. (BCD–Wert: 0005 bis
00005 0320)
@STIM(69)
003 Startet den Intervall–Zeitgeber im zeitgesteuerten
DM 0010
Modus.
#0023 Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
RET (93)
80
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
CPM1–SPS
00000
00001
00002
N.C.
24VDC
CPM1A–SPS
Hinweis Im Inkrementmodus kann der Eingang 00001 als normaler Eingang verwendet
werden. Bei der Software–Rücksetzung kann Eingang 00002 als normaler Ein-
gang verwendet werden. Wird der Eingang für das Z–Phasensignal und die
Software–Rücksetzung verwendet, wird der Eingangsstatus von 00002 auch im
E/A–Speicher reflektiert.
Einstellungen des Die folgenden Einstellungen müssen in DM6642 erfolgen, wenn die Schnelle
Schnellen Zählers Zähler–Funktion der CPM1/CPM1A verwendet wird.
DM 6642 Funktion Einstellungen
Bi
Bits Inkremen– Aufwärts/ Nicht
tierung Abwärts verwen–
det
00 bis 03 Zählermodus: 4 0 0 oder 4
0: Aufwärts/Abwärts
4: Inkrementierung
04 bis 07 Gewählte Rücksetzung: 0 oder 1 0 oder 1 0 oder 1
0: Z–Phase + Software–
Rücksetzung
1: Software–Rücksetzung
08 bis 15 Verwendung des Zählers: 01 01 00
0: Nicht verwendet
1: Verwendet
81
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Zählbereich Der Schnelle Zähler der CPM1/CPM1A arbeitet im Linearbetrieb und der Zähl-
wert (Istwert) wird in SR 248 und SR 249 gespeichert. (Die oberen vier Stellen
werden in SR 249 und die unteren vier Stellen in SR 248 gespeichert).
Modus Zähl–
bereich
Aufwärts/Abwärts F003 2767 bis 0003 2767 (–32.767 bis 32.767)
Die äußerste linke Stelle in SR 248 enthält das Vorzeichen. “F”
bedeutet negativ, “0” positiv.
Inkrementierung 0000 0000 bis 0006 5535 (0 bis 65.535)
Ein Überlauf tritt auf, wenn der Zählwert die obere Grenze im Zählbereich über-
schreitet und ein Unterlauf tritt auf, wenn der Zählwert unter der unteren Grenze
im Zählbereich liegt.
Fehler Inkrementierung Aufwärts/Abwärts Istwert
Überlauf Tritt ein, wenn der Tritt ein, wenn der 0FFF FFFF
Zählerstand bei 65.535 Zählerstand bei 32.767
inkrementiert wird. inkrementiert wird.
Unterlauf --- Tritt ein, wenn der FFFF FFFF
Zählerstand bei –32.767
dekrementiert wird.
Verarbeitung Zwei Signalarten eines Impuls–Encoders können angelegt werden. Der für den
Schnellen Zähler verwendete Zählmodus wird von dem Signaltyp bestimmt. Der
Zähl– und Rücksetz–Modus werden in DM6642 spezifiziert; diese Einstellun-
gen werden beim Einschalten der Spannungsversorgung oder des SPS–Be-
triebs wirksam.
Auf–/Abwärts–Zählmodus:
Ein phasenverschobenes 4x Zweiphasen-Signal (Phase A und B) und ein
Z-Signal werden mit den Eingängen verbunden. Der Zähler wird entspre-
chend dem Unterschied zwischen den Phasen A und B inkrementiert bzw.
dekrementiert.
Inkrementier–Zählmodus:
Ein einphasiges Impulssignal und ein Zähler-Rücksetzsignal werden ver-
wendet. Der Zähler wird entsprechend des einphasigen Signals inkremen-
tiert.
Aufwärts/Abwärtsmodus Inkrementiermodus
EIN EIN
Impuls–
Phase A eingang
AUS AUS
EIN
Phase B
AUS
Zählen 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 0 –1 –2 Zählen 1 2 3 4
Hinweis Eines der folgenden Verfahren sollte immer zur Rücksetzung des Zählers bei
einem Neustart verwendet werden. Der Zähler wird am Anfang bzw. Ende einer
Programmausführung automatisch zurückgesetzt.
Die folgenden Signalübergänge werden als Vorwärts-Zählimpulse (Inkremen-
tierung) ausgewertet: ansteigende Flanke Phase A - ansteigende Flanke Phase
B - fallende Flanke Phase A - fallende Flanke Phase B. Die folgenden Signal-
übergänge werden als Rückwärts-Zählimpulse (Dekrementierung) ausgewer-
tet: ansteigende Flanke Phase B - ansteigende Flanke Phase A - fallende
Flanke Phase B - fallende Flanke Phase A.
Im Aufwärts–/Abwärts-Modus wird immer ein 4× phasenverschobenes Ein-
gangssignal verwendet. Die Anzahl der Zählimpulse für jede Encoder-Umdre-
82
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
hung entspricht der vierfachen Zählerauflösung. Wählen Sie einen Encoder auf
der Grundlage des zählbaren Bereiches.
Rücksetz–Modus
Zur Rücksetzung des Zähler-Istwertes (d.h. Istwert auf 0) kann eines der beiden
folgenden Verfahren verwendet werden.
Z–Phasensignal + Software–Rücksetzung:
Der Istwert wird zurückgesetzt, wenn das Z-Phasensignal (Rücksetz-Ein-
gang) nach dem Setzen des SCHNELLER ZÄHLER(0)-RÜCKSETZ-Sy-
stemmerkers (SR 25200) auf EIN gesetzt wird.
Software–Rücksetzung:
Der Istwert wird beim Setzen des SCHNELLER-ZÄHLER(0)-RÜCKSETZ-
Systemmerkers (SR 25200) zurückgesetzt.
Z–Phasensignal + Software–Rücksetzung
E/A–Auffrischung
Allgemeine Verarbeitung
1 Zyklus Kommunikationsservice, usw.
CPU–Verarbeitung Progr–
Ausführg
Progr–
Ausführg
Progr–
Ausführg
Progr–
Ausführg
Progr.–
Ausführg
Progr.–
Ausführg
25200
83
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Zählen
Interrupts
Vergleichstabelle
Zielwert 1
Zielwert 2
Zielwert 3
Zielwert 4
Zielwert 5
Vorgabewert
Zielwert
1 2 3 4 5
Bereichsvergleiche Der Ist–Zählwert wird auf zyklische Art gleichzeitig mit allen Bereichen vergli-
chen, und, basierend auf den Ergebnissen der Vergleiche, werden Interrupts
generiert.
Vergleichstabelle
0 Bereichseinstellung 1
Zählwert Bereichseinstellung 2
Bereichseinstellung 3
1 3 Bereichseinstellung 4
2 4
Hinweis Bei der Durchführung von Zielwertvergleichen darf der INI–Befehl nicht wieder-
holt verwendet werden, um den Ist–Zählwert zu ändern und den Vergleichsvor-
gang zu beginnen. Die Interrupt–Funktion arbeitet evtl. nicht richtig, wenn der
Vergleich sofort nach der Änderung des Istwertes durch das Programm begon-
nen wird. (Der Vergleich kehrt automatisch zum ersten Zielwert zurück, sobald
ein Interrupt für den letzten Zielwert generiert wurde. Eine wiederholende Abar-
beitung ist möglich, indem lediglich der aktuelle Wert geändert wird.)
Programmierung Verwenden Sie die folgenden Schritte, um den schnellen Zähler zu program-
mieren.
Der Zählbetrieb des Schnellen Zählers 0 beginnt nach der richtigen Einstellung
im Setup. Vergleiche mit Hilfe der Vergleichstabelle und die Generierung von
Interrupts erfolgen erst nach dem CTBL(63)-Befehl.
Der Schnelle Zähler wird beim Einschalten der SPS und zu Beginn des Betriebs
auf ”0” zurückgesetzt.
Der Istwert des Schnellen Zählers wird in SR 248 und SR 249 gespeichert.
84
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
(@)CTBL(63)
P C: (3-stelliger BCD-Wert)
000: Die Zieltwertetabelle wird erstellt und der
C
Vergleich gestartet.
TB 001: Die Bereichstabelle wird erstellt und der
Vergleich gestartet.
002: Nur die Zielwertetabelle wird erstellt
003: Nur die Bereichstabelle wird erstellt
TB: Anfangswort der Vergleichstabelle
(@)INI(61)
000
001
000
Hinweis 1. Diese Worte werden nur einmal pro Abfragezyklus aufgefrischt. Daher be-
steht möglicherweise ein Unterschied zu dem tatsächlichen Istwert.
2. Wird der Schnelle Zähler nicht verwendet, können die Bits in diesen Worten
als Hilfsbits eingesetzt werden.
85
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
(@)PRV(62)
P1: Führendes Wort des Istwertes
000
000
P1
Der Istwert des Schnellen Zählers besitzt folgendes Speicherformat. Bei negati-
ven Werten ist die äußerst linke Stelle auf F gesetzt.
Äußerst linke Äußerst rechte Aufwärts/Abwärts– Inkrementier–
4 Ziffern 4 Ziffern modus modus
P1+1 P1 F0032767 bis 00032767 00000000 bis 00065535
(-32767)
Zur Spezifikation einer negativen Zahl setzen Sie die äußerst linke Stelle auf F.
Anwendungsbeispiel Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zäh-
(Inkrementiermodus) lers mit einem Eingang im Inkrementiermodus. Vergleiche erfolgen nach dem
Zielwertübereinstimmungs-Verfahren.
Die Vergleichsbedingungen (Zielwerte und Zählrichtungen) werden in der Ver-
gleichstabelle mit den Unterprogrammnummern gespeichert. Es können bis zu
16 Zielwerte gespeichert werden. Das entsprechende Unterprogramm wird
ausgeführt, wenn der Istwert des Zählers dem Zielwert entspricht.
Die folgenden Daten werden für die Vergleichstabelle gespeichert:
DM 0000 0002 Anzahl der Vergleichsbedingungen: 2
DM 0001 1000 Zielwert 1: 1000
DM 0002 0000
DM 0003 0030 Interrupt–Unterprogramm–Nr. für Vergleich 1: 30
DM 0004 2000 Zielwert 2: 2000
DM 0005 0000
DM 0006 0031 Interrupt–Unterprogramm–Nr. für Vergleich 2: 31
86
CPM1/CPM1A–Interrupt–Funktionen Abschnitt 2-3
Das folgende Beispiel zeigt einen Kontaktplan. DM 6642 muss auf 01j4 ge-
setzt werden, wobei j dem Rücksetzverfahren entspricht, das mit 0 oder 1 spe-
zifiziert wird.
25315 (für den ersten Zyklus auf EIN)
CTBL(63)
000
Speicher–Vergleichstabelle,
000 Zielwertverfahren
DM 0000 Erstes Wort der Vergleichstabelle
Interrupt–Programm 30
RET (93)
Interrupt–Programm 31
RET (93)
Anwendungsbeispiel Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zäh-
(Aufwärts/Abwärts–Betrieb) lers mit einphasigen Eingängen in der Aufwärts–/Abwärts-Zählmodus. Verglei-
che erfolgen über das Bereichsvergleichs–Verfahren.
Die Vergleichsbedingungen (oberen/unteren Beleihungsgrenzen) werden in
der Vergleichstabelle mit den Unterprogrammnummern gespeichert. Es kön-
nen bis zu 8 Bereiche spezifiziert werden. Das entsprechende Unterprogramm
wird ausgeführt, wenn der Istwert des Zählers innerhalb des Bereiches liegt.
Hinweis Spezifizieren Sie immer 8 Bereiche. Werden weniger als 8 Bereiche benötigt,
setzen Sie die verbleibenden Unterprogrammnummern auf FFFF. Ein Wert von
FFFF zeigt an, dass kein Unterprogramm ausgeführt wird.
Die folgenden Daten werden für die Vergleichstabelle gespeichert:
DM 0000 1500
DM 0001 0000 Untere Grenze 1: 1.500 Zählimpulse
DM 0002 3000
DM 0003 0000 Obere Grenze 1: 3.000 Zählimpulse
DM 0004 0040 Interrupt–Unterprogramm–Nr.: 40
DM 0005 7500
DM 0006 0000 Untere Grenze 2: 7.500 Zählimpulse
DM 0007 0000
DM 0008 0001 Obere Grenze 2: 10.000 Zählimpulse
DM 0009 0041 Interrupt–Unterprogramm–Nr.: 41
DM 0010 0000
DM 0011 0000
DM 0012 0000
DM 0013 0000
DM 0014 FFFF Nicht ausgeführt. Interrupt–Unterprog. Bereich 3
. .
. . .
. . .
. . .
. . .
DM 0035 0000
DM 0036 0000
DM 0037 0000
DM 0038 0000
DM 0039 FFFF Nicht ausgeführt. Interrupt–Unterprogr. Bereich 8
87
SRM1(–V2) Interrupt–Funktionen Abschnitt 2-4
Das folgende Beispiel zeigt einen Kontaktplan. DM 6642 muss auf 01j0 ge-
setzt werden, wobei j dem Rücksetzverfahren entspricht, das mit 0 oder 1 spe-
zifiziert werden kann.
25315 (für den ersten Zyklus auf EIN)
CTBL (63)
000
000 Speicher–Vergleichstabelle, Ziel-
wertverfahren
DM 0000
Erstes Wort der Vergleichstabelle
Interrupt–Programm 40
RET (93)
Interrupt–Programm 41
RET (93)
2-4-1 Interrupt–Funktionen
Die SRM1 (–V2) verfügt wie nachstehend beschrieben, nur über eine Interrupt–
Funktion.
Intervall–Zeitgeber–Interrupts
Die Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einen
Intervall–Zeitgeber ausgelöst.
2-4-2 Intervall–Zeitgeber–Interrupts
Die SRM1(–V2) ist mit einem Intervall–Zeitgeber ausgerüstet. Ist der Intervall–
Zeitgeber abgelaufen, wird das Hauptprogramm unterbrochen und das Inter-
rupt–Programm unabhängig von der Position im Zyklus ausgeführt.
Für den Intervall-Zeitgeberbetrieb stehen zwei Modi zur Verfügung. Im ONE
SHOT(Monoflop)-Interrupt–Modus wird nach Ablauf der Zeit nur ein Interrupt
ausgelöst. Im SCHEDULED(zeitgesteuerten) Interrupt–Modus wird das Inter-
rupt–Unterprogramm in einem festen Zeit–Intervall wiederholt.
Der Sollwert des Intervall–Zeitgebers kann zwischen 0,5 und 319.968 ms in 0,1
ms–Schritten eingestellt werden.
Betrieb Der folgende Befehl dient zur Aktivierung und Steuerung des Intervall-Zeitge-
bers.
Zeitgeber-Start im ONE–SHOT(Monoflop)-Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber
im Monoflop–Interrupt–Modus.
(@)STIM(69)
C1 C1: Intervall–Zeitgeber,
C2
Monoflop–Interrupt–Modus (000)
C3
C2: Zeitgeber-Sollwert (erste Wortadresse)
C3: Unterprogrammnummer
(4-stelliger BCD-Wert): 0000 bis 0049
88
SRM1(–V2) Interrupt–Funktionen Abschnitt 2-4
(@)STIM(69)
C1: Intervall–Zeitgeber,
C1 zeitgesteuerter Interrupt–Modus (003)
C2 C2: Zeitgeber-Sollwert (erste Wortadresse)
C3
C3: Unterprogrammnummer (4-stelliger BCD-Wert):
0000 bis 0049
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C1
C2: Führendes Wort von Parameter 1
C2
C3: Parameter 2
C3
89
SRM1(–V2) Interrupt–Funktionen Abschnitt 2-4
(@)STIM(69)
C1
C1: Anhalten des Intervall–Zeitgebers (010)
000
000
Anwendungsbeispiel In diesem Beispiel wird nach 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 auf
(Monoflop–Modus) EIN gesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung der
Interrupt–Unterprogrammnummer 23 aus.
MOV(21)
#0006
Setzt das Dekrementierungs–Zeitgeber–
Intervall auf 0,6 ms. (BCD–Wert: 0005 bis
DM 0011 0320)
00005
@STIM(69)
Startet den Intervall–Zeitgeber im Monoflop–Inter-
000 rupt–Modus.
DM 0010 Spezifiziert das erste Wort, das den Sollwert enthält.
#0023 Spezifiziert die Unterprogrammnummer (nur die un-
teren Bytes sind wirksam).
Interrupt–Programm
RET (93)
Anwendungsbeispiel In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005 auf
(zeitgesteuerter Modus) EIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitung der
Interrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0010 Setzt das Dekrementierungs–Zeitgeber–
DM 0011 Intervall auf 1,0 ms. (BCD–Wert: 0005 bis
00005 0320)
@STIM(69)
003 Startet den Intervall–Zeitgeber im zeitgesteuerten
DM 0010
Interrupt–Modus.
#0023 Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
RET (93)
90
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
2-5 CPM2A/CPM2C–Impulsausgabefunktionen
Die CPM2A/CPM2C verfügt über zwei Impulsausgänge. Durch spezielle Im-
pulsausgabebefehle können diese Ausgänge als zwei einphasige Ausgänge
ohne Beschleunigung und Bremsung, als Impulsausgänge mit variablen Tast-
verhältnis oder als Impulsausgänge mit trapezförmiger Beschleunigung/Brem-
sung (ein Impuls– + ein Richtungsausgang oder ein Auf–/Abwärts–Impulsaus-
gang) konfiguriert werden. Das Impulsausgabe–Koordinatensystem kann in
der SPS–Konfiguration als relativ oder absolut spezifiziert werden.
Zwei Impulsausgabe–Betriebsarten stehen zur Verfügung: die Unabhängig–
Betriebsart, bei der die Ausgaben nach einer vorher eingestellten Anzahl von
Impulsen gestoppt werden und die Ununterbrochen–Betriebsart, in der Ausga-
ben über einen Befehl gestoppt werden.
Hinweis Zur Impulsausgabe ist es erforderlich, eine CPU–Baugruppe mit Transistoraus-
gängen zu verwenden, d.h. entweder eine CPM2AjjCDT–D oder
CPM2AjjCDT1–D.
Das folgende Diagramm zeigt die Konfiguration für eine CPM2A; die Konfigura-
tion für eine CPM2C ist identisch.
Schrittmotor
Motor–
treiber
Impulsausgänge
91
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
92
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Impulse werden mit der eingestellten Frequenz weiter ausgegeben, bis die
Ausgabe über einen Befehl gestoppt wird.
93
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
• Ausgabebetriebsart Ununterbrochen
• Befehl: PWM(––)
Mit PWM(––) werden Impulse mit einem variablen Tastverhältnis ausgege-
ben.
tEIN
Befehlsausführung: PWM(––)
01000
Impulsausgaben
01001
Richtungsausgänge (AUS: Rechtslauf; EIN: Linkslauf)
Aufwärts/Abwärts–Impulsausgaben
• Für Rechtslauf–Ausgabe:
Impulsausgabe über Ausgang 01000 (Wort 010, Bit 00).
• Für Linkslauf–Ausgabe:
Impulsausgabe über Ausgang 01001 (Wort 010, Bit 01).
01000
Rechtslauf
01001
Linkslauf
94
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Unabhängige Betriebsart
Impuls–Ausgabefrequenz Befehlsausführung: PULS(65) + ACC(––) (Inabhängig–Betriebsart)
In der Unabhängig–Betriebs–
art wird die Abbremsung mit
Ziel– der beim Start gültigen Be-
frequenz schleunigungs–/Bremsge-
schwindigkeit durchgeführt.
Anfangs–
frequenz
0 Hz Zeit
Beschleunigung Abbremsung
Start
ACC(––)
Ununterbrochen–Betriebsart
Impuls–Ausgabefrequenz Befehlsausführung: ACC(––) (Ununterbrochen–Betriebsart)
Zielfrequenz 2
Zielfrequenz 3
Zielfrequenz 1
0 Hz Zeit
95
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Einphasige Impulsausgaben
SET
PULS (65) PUL- SPED (64) SPEED Impulsausgang 0
SES– OUTPUT–
Befehl Impulsausgang 1
Befehl
Relative oder absolute Ausgabebetriebsart Ununterbrochen
Impulse spezifizieren. oder Unabhängig
Impulsausgabe Soll-
Zielfrequenz: 10 Hz bis 10 kHz
wert (8–stelliger BCD–
Wert) Impulsausgaben beginnen
BETRIEBS– Auffrischung
ARTEN-
INI (61) Einmal/Zyklus Einmal/Zyklus Sofort
STEUE-
RUNGS–
Befehl SCHNELLER ZÄHLER–
Impulsausgabe–Zustand Impulsausg.–Istw. PRV(62)
ISTWERT LESEN–Befehl
Impulsausgaben beenden AR 11 AR 12 SR 228 SR 229 Impulsausg.–Istw. lesen
Impulsausgabe–Istw. ändern
SR 230 SR 231 Impulsausg.abe–Status
lesen
SPS–Konfig.
DM 6629,
Bits 00 bis 03,
Bits 04 bis 07
Verdrahtung der Verdrahten Sie die CPM2A–Ausgänge, wie es in der folgenden Abbildung ange-
Ausgänge zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-
gegeben werden.)
96
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ange-
zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-
gegeben werden.)
A.–steckverbinder
Stellen Sie sicher, das absolute Koordinatensystem (1) zu einstellen, wenn ab-
solute Impulse mit PULS(65) spezifiziert werden.
Eine synchronisierte Impulssteuerung kann nicht gleichzeitig verwendet wer-
den.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von
PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der
CPM_A/CPM_C eingeschaltet wird.
Kontaktplan– Die folgende Tabelle enthält Befehlsfunktionen, die sich auf Impulsausgaben
Programmierung ohne Beschleunigung und Abbremsung (festes Tastverhältnis) beziehen.
97
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Die folgende Tabelle zeigt, welche Befehle für die Impulsausgabe ohne Be-
schleunigung und Abbremsung ausgeführt werden können.
PULS (65) SPED (64) INI (61) PRV(62) ACC(––) PWM(––)
Ununterbrochen– Nein Ja (sehen Sie Ja (Sehen Sie Ja Nein Nein
Betriebsart Hinweis 2) Hinweis 1)
Unabhängige Ja Ja (sehen Sie Ja (Sehen Sie Ja Nein Nein
Betriebsart Hinweis 2) Hinweis 1)
Hinweis 1. Dieser Befehl kann nur zum Ändern des Istwertes ausgeführt werden, wäh-
rend Impulsausgaben gestoppt sind. Der Istwert kann nicht geändert wer-
den, während Impulse ausgegeben werden. Stellen Sie sicher, die Impuls-
ausgabe zuerst zu beenden, wenn der Istwert geändert werden muss.
2. Dieser Befehl kann nur für die Änderung der Frequenz und das Beenden
der Impulsausgabe verwendet werden. Er kann nicht für das Umschalten
zwischen der Unabhängig– und der Ununterbrochen–Betriebsart verwen-
det werden.
Die folgende Tabelle enthält Worte und Bits, die sich auf Impulsausgaben ohne
Beschleunigung und Abbremsung (festes Tastverhältnis) beziehen.
Wort Bits Name Inhalt
228 00 bis Impulsausgabe–Istwert 0, Kann nicht als Arbeitsmerker
15 äußerst rechte 4 Stellen verwendet werden,, auch wenn
229 00 bis Impulsausgabe–Istwert 0, k i Impulsausgänge
keine I l ä
15 äußerst linke 4 Stellen verwendet werden.
98
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
(@)PULS(65)
S Schnittstellenbezeichner (000: Impulsausgang 0; 010: Impulsausgang 1)
D Art der Impulsausgabe (000: rel. Impulse; 001: abs. Impulse) (sehen Sie den Hinweis)
A Anfangswort der Einstellung für die Anzahl der Impulse
n Äußerst rechte Anzahl der Impulse (äußerst rechte, äußerst linke Stellen)
4 Ziffern
Äußerst linke Speichern der Anzahl der einzustellenden Impulse.
n+1
4 Ziffern 96,777,215 bis 16,777,215
Negative Werte werden durch Setzen des äußerst linken Bits
ausgedrückt.
Art der Impulsausgabe
000: Relative Impulse (Sollwert der Anzahl der Impulse = Anzahl der übertragenen Impulse)
001: Absolute Impulse (Sollwert der Anzahl der Impulse = gegenwärtiger Istwert auf dem absoluten
Koordinatensystem, d.h. Impulsausgabe–Istwert + Anzahl der übertragenen Impulse)*
*Absolute Impulse können nur über PULS(65) spezifiziert werden, wenn das Istwert–Koordi–
natensystem in der SPS–Konfiguration auf Absolutes Koordinatensystem eingestellt wird.
(@) SPED(64)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
M Betriebsart (000: Unabhängig; 001: Ununterbrochen)
Z Zielfrequenz–Datenwort
Z Zielfrequenz
Einstellen der Zielfrequenzdaten.
#0001 bis #1000 (4–stelliger BCD–Wert):
10 Hz bis 10 kHz
#0000: Stoppen der Impulsausgabe
99
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Impulsausgabe–Istwert ändern)
Rücksetzen des Impulsausgabe–Istwertes
Diese Funktion ändert den Impulsausgabe–Istwert. Der Istwert kann über SR
25204 und SR 25205 auch gelöscht werden.
(@)INI(61)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
004 Steuerfunktion (004: Impulsausgabe–Istwert ändern)
C2 Anfangswort der zu ändernden Istwert–Daten
(@) SPED(64)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
M Betriebsart (000: Unabhängig; 001: Ununterbrochen)
Z Zielfrequenz–Datenwort
Mit INI(61)
(@)INI(61)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
003 Steuerbezeichnung (003: Impulsausgaben beenden)
000 Fest: 000
Neben der Ausführung der oben aufgeführten Befehle ist es ebenfalls möglich,
die Impulsausgaben durch den Abbruch des Betriebs (PROGRAM–Betriebsart)
zu beenden.
Impulsausgabe–Istwert lesen
Diese Funktion liest den Impulsausgabe–Istwert.
Einsatz eines Befehls
(@)PRV(62)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
003 Steuerbezeichnung (003: Impulsausgabe–Istwert lesen)
Z Anfangswort zur Speicherung des Impulsausgabe–Istwertes
100
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Impulsausgang 0 Impulsausgang 1
Wort 228 Istwert (äußerst rechtes Wort) Wort 230 Istwert (äußerst rechtes Wort)
Wort 229 Istwert (äußerst linkes Wort) Wort 231 Istwert (äußerst linkes Wort)
Die Worte 228 bis 231 werden in jedem Zyklus aufgefrischt, somit kann zu einer
bestimmten Zeit eine Diskrepanz zum genauen Istwert auftreten.
Die Worte 228 bis 231 können nicht als Arbeitsworte eingesetzt werden, auch
wenn keine Impulsausgänge verwendet werden.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte
228 bis 231 zum gleichen Zeitpunkt aufgefrischt.
Impulsausgabe–Status lesen
Diese Funktion liest den Impulsausgabe–Status.
Einsatz eines Befehls
(@)PRV(62)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
001 Steuerbezeichnung (001: Impulsausgabe–Status lesen)
Z Wort zur Speicherung des Impulsausgabe–Status
Impulsausgabe–Status
0: Konst. Geschw.; Anzahl der Impulse
1: Beschl./Abbremsen 0: Nicht eingestellt
Impulsausg.–Istwert Über–/Unterlauf 1: Eingestellt
0: Normal 1: Unter– o. Überlauf aufgetreten Impulsausgabe beendet
Impulsausgabe aktiv 0: Nicht beendet
0: Beendet 1: Beendet
1: Ausgabe aktiv
AR 11:Impulsausgang 0
AR 12:Impulsausgang 1
Impulsausgabe–Status:
Impulsausgabe aktiv 0: Konstante Geschwindigkeit;
0: Beendet 1: Beschleunigen/Abbremsen
1: Ausgabe aktiv Impulsausgabe–Istwert–Über–/Unterlauf
Impulsausgabe beendet 0: Normal
0: Nicht beendet 1: Unter– oder Überlauf ist aufgetreten
1: Beendet Anzahl der Impulse
0: Nicht eingestellt
1: eingestellt
Hinweis Die Merker in AR 11 und AR 12 werden nur einmal in jedem Zyklus aufgefrischt;
somit können die Werte in diesen Worten nicht dem eigentlichen Status in jedem
Zyklus widerspiegeln, aber die Merker in AR 11 und AR 12 werden aufgefrischt,
wenn der Status mit PRV(62) gelesen wird.
101
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Zeit
PULS(65)–Ausführung
SPED(64)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Ununterbrochen–Betriebsart
Frequenz
Zeit
SPED(64)–Ausführung
INI(61)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
PULS(65)–Ausführung
SPED(64)–Ausführung
INI(61)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
102
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Anwendungsbeispiele
Positionierung
Beschreibung
In diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviert
wird, 100 Impulse über Ausgang 01000 (Impulsausgang 0) mit einer Frequenz
von 60 Hz ausgegeben.
Frequenz
60 Hz
Ausführungsbedingung (00005)
Verdrahtung
Verbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird.
Motortreiber
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden
Abbildung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit
NPN–Transistorausgängen verwendet.
A.–steckverbinder
Motortreiber
24 VDC
103
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
SPS–Konfiguration
15 0
DM 6629 0 Stellt das Koordinatensystem für Impulsausgang 0
auf Relativ ein.
DM 6642 0 0 Auf eine andere außer einer synchronisierten Im-
pulssteuerung einstellen.
(Auf 01jj einstellen, wenn ein schneller Zähler
verwendet wird.)
Programmierung
00005 (Ausführungsbedingung)
(13) Erfasst die Aktivierung der Ausführungsbedingung
Tipp–Betrieb
Beschreibung
In diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviert
wird, Tippimpulse mit einer Frequenz von 100 Hz ausgegeben, entweder von
Ausgang 01000 (Impulsausgang 0) oder 01001 (Impulsausgang 1). Die Aus-
gabe wird gestoppt, wenn die Ausführungsbedingung (00005) deaktiviert wird.
Die Umschaltung zwischen Ausgang 01000 (Impulsausgang 0) und 01001 (Im-
pulsausgang 1) wird mittels des Richtungseingangs (00006) ausgeführt.
Frequenz
(Richtung)
Zeit
Ausführungsbedingung (00005)
Richtungsspezifikationseingang (00006)
Verdrahtung
Verbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird.
Motortreiber
104
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit NPN–Trans-
istorausgängen verwendet.
A.–steckverbinder
Motortreiber
24 VDC
Hinweis Sehen Sie das technische Handbuch für Einzelheiten über die Verkabelung der
Ausgänge.
SPS–Konfiguration
15 0
DM 6629 0 0 Stellt das Koordinatensystem der Impulsausgänge 0 und 1
auf Relativ ein.
DM 6642 0 0 Auf eine andere Betriebsart außer einer synchronisierten
Impulssteuerung einstellen.
(Auf 01jj einstellen, wenn ein schneller Zähler verwendet
wird.)
Programmierung
00005 (Ausführungsbedingung)
(13) Erfasst die Aktivierung der Ausführungsbedingung.
(14) Erfasst die Deaktivierung der Ausführungsbedingung.
(Richtungsspez.eingang)
INI (61)
105
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verdrahtung der Verdrahten Sie die CPM2A Ausgänge, wie es in der folgenden Abbildung ge-
Ausgänge zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-
gegeben werden.)
106
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ange-
zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-
gegeben werden.)
A.–steckverbinder
Die folgende Tabelle zeigt, welche Befehle für die PWM–Impulsausgabe ohne
Beschleunigung und Abbremsung ausgeführt werden können.
107
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Hinweis 1. Dieser Befehl kann nur zum Beenden der Impulsausgabe verwendet wer-
den.
2. Dieser Befehl kann nur zur Änderung des Tastverhältnisses verwendet wer-
den. Die Frequenz kann nicht geändert werden, während Impulse ausgege-
ben werden. Stellen Sie sicher, die Impulsausgabe zuerst zu beenden,
wenn die Frequenz geändert werden muss.
Die folgende Tabelle enthält die Worte und Bits, die mit der Impulsausgabe mit
variablem Tastverhältnis zusammenhängen.
Wort Bit Funktion Inhalt
AR 11 15 Impulsausgabe für EIN: Aktiv (durch SPED(64),
Impulsausgang 0 aktiv ACC(––) oder PWM(––))
AUS: Beendet
AR 12 15 Impulsausgabe für EIN: Aktiv (durch SPED(64),
Impulsausgang 1 aktiv ACC(––) oder PWM(––))
AUS: Beendet
(@PWM(––)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
F Zielfrequenz–Datenwort
T Tastverhältnis–Datenwort
F Zielfrequenz
Einstellen der Zielfrequenzdaten.
#0001 bis #9999 (4–stelliger BCD–Wert): 0,1 bis 999,9 Hz
T Ausgabemerker
Einstellen des Tastverhältnisses
#0000 bis #0100 (4–stelliger BCD–Wert): 0 bis 100%
Die Frequenz kann nicht geändert werden, während Impulse ausgegeben wer-
den.
Impulsausgabe beenden
Diese Funktion beendet die Impulsausgabe.
(@)INI(61)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
003 Steuerbezeichnung (003: Impulsausgabe beenden)
000 Fest: 000
Hinweis Impulsausgaben können ebenfalls beendet werden, indem die SPS in die PRO-
GRAM–Betriebsart umgeschaltet wird.
Impulsausgabe–Status lesen
Diese Funktion liest den Impulsausgabe–Status.
108
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
(@)PRV(62)
A Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
001 Steuerbezeichnung (001: Impulsausgabe–Status lesen)
D Wort zur Speicherung des Impulsausgabe–Status
Impulsausgabe aktiv
0: Beendet
1: Ausgabe aktiv
Impulsausgabe aktiv
0: Beendet
1: Ausgabe aktiv
Hinweis Die Merker in AR 1115 und AR 1215 werden nur einmal in jedem Zyklus aufge-
frischt; somit können die Werte in diesen Worten nicht den eigentlichen Status in
jedem Zyklus widerspiegeln, aber die Merker in AR 1115 und AR 1215 werden
aufgefrischt, wenn der Status mit PRV(62) gelesen wird.
Zeit
PWM(––)–Ausführung
INI(61)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Anwendungsbeispiel
Beschreibung
In diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviert
wird, Impulse mit variablem Tastverhältnis über Ausgang 01000 (Impulsaus-
gang 0) mit einer Frequenz von 100 Hz ausgegeben. Das Tastverhältnis kann
jetzt mit dem Daumenradschalter 0 geändert werden.
109
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verdrahtung
Verdrahten Sie die CPM2A mit Motortreiber und Daumenradschalter, wie es in
der folgenden Abbildung gezeigt wird.
Motortreiber
A.–steckverbinder E.–steckverbind.
Motortreiber
Daumenrad-
schalter
24 VDC
Hinweis Sehen Sie das technische Handbuch für Einzelheiten zur Verkabelung.
SPS–Konfiguration
15 0
DM 6642 0 0 Ein Schneller Zähler wird nicht verwendet.
(Auf eine andere außer einer synchronisierten
Impulssteuerung einstellen.)
110
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Programmierung (CPM2A–Beispiel)
00005 (Ausführungsbedingung)
(14) Aktiviert bei fallender Flanke der Ausführungsbedingung.
DIV(33) Halbiert den Wert des Werteingabe–Potis 0 auf einen Wert zwischen 0 und 100.
Wert in SR 250 (Werteingabe–Poti 0 in der Serie CPM2A) (sehen Sie den Hinweis)
Den Wert durch 2 dividieren.
Tastverhältnis–Einstellung
111
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Relative/absolute Im-
pulse spezifizieren. Betriebsartenbezeichnung
Spez. Anzahl der Ausg.– Anfangsfreq.: 0 Hz bis 10 kHz
impulse
Sollwert (8–stell. BCD) Zielfrequenz: 10 Hz bis 10 kHz
Beschleunigungs–/Bremsgeschwin-
digkeit: 10 ms Erhöhung/Reduzie-
rung 10 Hz bis 10 kHz
INI (61) BETRIEBSAR-
TENSTEUE- Impulsausgaben beginnen
RUNGS–Befehl
Verdrahtung der Verdrahten Sie die CPM2A Ausgänge, wie es in der folgenden Abbildung ange-
Ausgänge zeigt wird.
Impuls– und Richtungsausgänge Aufwärts/Abwärts–Impulsausgänge
112
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ge-
zeigt wird.
Impuls– und Richtungsausgänge Aufwärts/Abwärts–Impulsausgänge
A.–steckverbinder A.–steckverbinder
01000: Impuls 01000: Rechtslauf
01001: Richtung 01001: Linkslauf
Stellen Sie sicher, das absolute Koordinatensystem (1) zu einstellen, wenn ab-
solute Impulse mit PULS(65) spezifiziert werden.
Eine synchronisierte Impulssteuerung kann nicht gleichzeitig verwendet wer-
den.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von
PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der
CPMA/CPMC eingeschaltet wird.
113
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Kontaktplan– Die folgende Tabelle enthält Befehlsfunktionen, die sich auf Impulsausgaben
Programmierung mit trapezförmiger Beschleunigung und Abbremsung (festes Tastverhältnis)
beziehen.
Befehl Steuerung Funktion
(@)PULS(65) Einstellen der Anzahl Spezifiziert die Anzahl der Impulse, die
der Impulse in der Unabhängig–Betriebsart
ausgegeben werden sollen.
(@)ACC(––) Spezifiziert die Frequenz Stellt die Zielfrequenz, Startfrequenz
und beginnt die und Beschleunigungs–/Abbrems–
Impulsausgabe geschwindigkeit für Ausgänge in der
Unabhängig– oder Ununterbrochen–
Betriebsart ein und beginnt die
Impulsausgaben.
Frequenzänderung Ändert die Frequenz während der
Impulsausgabe in der Ununterbrochen–
Betriebsart durch Beschleunigung oder
Abbremsung entsprechend der
spezifizierten Beschleunigungs–/
Abbremsgeschwindigkeit.
Impulsausgaben Verlangsamt die Impulsausgaben bis zu
beenden einem Halt entsprechend der spezifi–
zierten Beschleunigungs–/ Abbrems–
geschwindigkeit.
(@)INI(61) Beendet die Impuls– Beendet die Impulsausgaben.
ausgabe (abgebremster
Stopp)
Impulsausgabe–Istwert Ändert den Impulsausgabe–Istwert.
ändern
(@)PRV(62) Impulsausgabe–Istwert Liest den Impulsausgabe–Istwert.
lesen.
Impulsausgabe–Status Liest den Impulsausgabe–Status.
lesen
Die folgende Tabelle zeigt die Befehle, die für die Impulsausgabe mit trapezför-
miger Beschleunigung und Abbremsung ausgeführt werden können.
Betriebsart PULS (65) SPED (64) INI (61) PRV(62) ACC(––)# PWM(––)
Ununterbrochen Nein Nein Ja (sehen Sie Ja Ja Nein
Hinweis 1)
Unabhängig Ja Nein Ja (sehen Sie Ja Ja (sehen Sie Nein
Hinweis 1) Hinweis 2)
Hinweis 1. Dieser Befehl zur Istwertänderung kann nur ausgeführt werden, während
die Impulsausgabe gestoppt ist. Der Istwert kann nicht geändert werden,
während Impulse ausgegeben werden. Stellen Sie sicher, die Impulsaus-
gabe zuerst zu beenden, wenn der Istwert geändert werden muss.
2. Dieser Befehl kann nur für die Änderung der Frequenz und das Beenden
der Impulsausgabe verwendet werden. Er kann nicht für das Umschalten
zwischen der Unabhängig– und der Ununterbrochen–Betriebsart verwen-
det werden. Zusätzlich kann ACC(––) nicht während der bereits laufenden
Beschleunigung oder Abbremsung abgearbeitet werden.
Die folgende Tabelle enthält Worte und Bits, die sich auf Impulsausgaben mit
trapezförmiger Beschleunigung und Abbremsung (festes Tastverhältnis) bezie-
hen.
114
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
(@)PULS(65)
000 Fest auf 000: Ausgang 0
D Art der Impulsausgabe (000: relative Impulse; 001: absolute Impulse) (sehen Sie den Hinweis)
A Anfangswort der Einstellung für die Anzahl der Impulse
A äußerst rechte Anzahl der Impulse (äußerst rechte, äußerst linke Stellen)
4 Ziffern
A+1 äußerst linke Speichern der Anzahl der einzustellenden Impulse.
4 Ziffern 96.777.215 bis 16.777.215
Negative Werte werden durch Setzen des
äußerst linken Bits ausgedrückt.
000: Relative Impulse (Sollwert der Anzahl der Impulse = Anzahl der übertragenen Impulse)
001: Absolute Impulse (Sollwert der Anzahl der Impulse = gegenwärtiger Istwert auf dem absol. Koordinatensystem
d.h. Impulsausgabe–Istwert + Anzahl der übertragenen Impulse)*
*Absolute Impulse können nur über PULS(65) spezifiziert werden, wenn das Istwert–Koordinaten-
system in der SPS–Konfiguration auf Absolutes Koordinatensystem eingestellt wird.
115
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
(@)ACC(––)
000 Fest auf 000: Impulsausgang 0
M Ausgabebetriebsart
A Anfangswort der Einstellungstabelle
M Ausgabebetriebsart
Spezifikation der Ausgabebetriebsart.
000: Aufwärts/Abwärts–Impulsausgaben, Betriebsart Unabhängig
002: Impuls– und Richtungsausgänge, Betriebsart Unabhängig
A Beschleunigungs–/Abbremsgeschwindigkeit
(#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)
A+1 Zielfrequenz (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz
Zielfrequenz
0 Hz Zeit
In der Betriebsart Unabhängig werden die Beschleuni-
gungs– und Bremspunkte durch die Anzahl der Impulse,
die Beschleunigungs–/Abbremsgeschwindigkeit, die Ziel-
frequenz und die Startfrequenz bestimmt.
116
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
(@)ACC(––)
000 Fest auf 000: Impulsausgang 0
M Ausgabebetriebsart
A Anfangswort der Einstellungstabelle
M P
Spezifikation der Ausgabebetriebsart.
010: Aufwärts/Abwärts–Impuls, Rechtslauf, Betriebsart Ununterbrochen
011: Aufwärts/Abwärts–Impuls, Linkslauf, Betriebsart Ununterbrochen
012: Impuls– und Richtung, Rechtslauf, Betriebsart Ununterbrochen
013: Impuls– und Richtung, Linkslauf, Betriebsart Ununterbrochen
A Beschleunigungs–/Abbremsgeschwindigkeit
(#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)
A+1 Zielfrequenz (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz
Impuls–Ausgabefrequenz
Zielfrequenz
Anfangs–
frequenz
0 Hz Zeit
In der Betriebsart Ununterbrochen werden Impulse bis zum Abbruch mit
der Zielfrequenz ausgegeben. Der nächste ACC(––)–Befehl kann nicht
während der laufenden Beschleunigung oder Abbremsung abgearbeitet
werden
(@)INI(61)
000 Fest auf 000: Impulsausgang 0
004 Steuerbezeichnung (004: Impulsausgabe–Istwert ändern)
A2 Anfangswort der zu ändernden Istwert–Daten
Hinweis Der Impulsausgabe–Istwert kann nur geändert werden, während die Impuls-
ausgabe gestoppt ist.
117
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Impulsausgabe beenden
Impulsausgabefrequenz herunterfahren und beenden
Diese Funktionen beenden die Impulsausgaben.
Impulsausgaben beenden
(@)INI(61)
000 Fest auf 000: Impulsausgang 0
003 Steuerbezeichnung (003: Impulsausgabe beenden)
000 Fest auf 000
(@)ACC(––)
000 Fest auf 000: Schnittstellendefinition
000 Betriebsart
A Anfangswort der Einstellungstabelle
A Beschleunigungs–/Abbremsgeschwindigkeit
(#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)
A+1 Zielfrequenz (#0000 bis #1000 BCD–Wert: 0 Hz bis 10 kHz)
Hinweis Die Impulsausgaben können ebenfalls beendet werden, indem die SPS in die
PROGRAM–Betriebsart umgeschaltet wird.
Impulsausgabe–Istwert lesen
Diese Funktion liest den Impulsausgabe–Istwert.
Einsatz eines Befehls
(@)PRV(62)
000 Fest auf 000: Impulsausgang 0
003 Steuerbezeichnung (003: Impulsausgabe–Istwert lesen)
Z Anfangswort zur Speicherung des Impulsausgabe–Istwertes
Hinweis SR 228 und SR 229 werden einmal in jedem Zyklus aufgefrischt; somit entspre-
chen die Werte in diesen Worten nicht dem eigentlichen Status während jedes
Zyklus; SR 228 und SR 229 werden jedoch sofort aufgefrischt, wenn ihr Status
mit PRV(62) eingelesen wird.
118
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Impulsausgabe–Status lesen
Diese Funktion liest den Impulsausgabe–Status.
Einsatz eines Befehls
(@)PRV(62)
000 Fest auf 000: Impulsausgang 0
001 Steuerbezeichnung (001: Impulsausgabe–Status lesen)
D Wort zur Speicherung des Impulsausgabe–Status
AR 11: Impulsausgang 0
Impulsausgabe–Zustand
Impulsausgabe aktiv 0: Konstantrate
1: Beschleunigen oder Abbremsen
0: Beendet
1: Ausgabe aktiv Impulsausgabe–Istwert–Über–/Unterlauf
Impulsausgabe beendet 0: Normal
0: Nicht beendet 1: Unter– oder Überlauf ist aufgetreten
1: Beendet Anzahl der Impulse
0: Nicht eingestellt
1: Eingestellt
Hinweis AR 1111 bis AR 1115 werden einmal in jedem Zyklus aufgefrischt; somit entspre-
chen die Werte in diesen Worten nicht dem eigentlichen Status während jedes
Zyklus; diese Merker werden jedoch sofort aufgefrischt, wenn ihr Status mit
PRV(62) eingelesen wird.
Zeit
PULS(65)–Ausführung
ACC(––)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand
(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
119
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Zeit
ACC(––)–Ausführung (1)
ACC(––)–Ausführung (2)
INI(61)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand
(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
Zeit
ACC(––)–Ausführung (Halt)
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand
(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
Zeit
PULS(65)–Ausführung
ACC(––)–Ausführung
INI(61)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand
(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
120
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Zeit
PULS(65)–Ausführung
ACC(––)–Ausführung
ACC(––)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand
(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
Anwendungsbeispiel
Positionierung
Beschreibung
In diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviert
wird, 1000 Impulse über Ausgang 01000 (Impulsausgang 0) in einem trapezoi-
dal Beschleunigungs–/Abbremsmuster ausgegeben, wie es im folgenden Dia-
gramm dargestellt ist.
Frequenz (Hz) Beschleunigungs–/
Abbremsgeschwindigkeit
500
10 Hz
200 10 ms
Verdrahtung
Verbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird.
Motortreiber
121
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit NPN–Transis–
torausgängen verwendet.
A–steckverbinder
Motortreiber
24 VDC
Hinweis Sehen Sie das technische Handbuch für Einzelheiten der Verkabelung.
SPS–Konfiguration
15 0
DM 6629 0 Stellt das Koordinatensystem für Impulsausgang 0
auf Relativ ein.
DM 6642 0 0 Der Schnelle Zähler wird nicht verwendet.
(Auf eine andere außer einer synchronisierten
Impulssteuerung einstellen.)
Programmierung
00005 (Ausführungsbedingung)
(13) Erfasst die Aktivierung der Ausführungsbedingung.
122
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Tipp–Betrieb
Beschreibung
In diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviert
wird, Tippimpulse mit einer Frequenz von 100 Hz ausgegeben, entweder von
Ausgang 01000 (Rechtlauf) oder 01001 (Linkslauf). Die Ausgabe wird gestoppt,
wenn die Ausführungsbedingung (00005) deaktiviert wird. Wie im folgenden
Diagramm gezeigt, wird die Tippfrequenz beim Starten und Stoppen des Be-
triebs erhöht und reduziert. Die Umschaltung zwischen Ausgang 01000
(Rechtslauf) und 01001 (Linkslauf) wird mittels des Richtungseingangs (00006)
ausgeführt.
Frequenz (Hz)
Beschleunigungs–/
Abbremsgeschwindigkeit
Zeit 10 Hz
10 ms
Ausführungs–
bedingung (00005)
Richtungs–
bezeichner (00006)
Verdrahtung
Verbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-
dung gezeigt wird.
Motortreiber
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden
Abbildung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit
NPN–Transistorausgängen verwendet.
A.–steckverbinder
Motortreiber
24 VDC
123
CPM2A/CPM2C–Impulsausgabefunktionen Abschnitt 2-5
Hinweis Sehen Sie das technische Handbuch für Einzelheiten der Verkabelung.
SPS–Konfiguration
15 0
DM 6629 0 Stellt das Koordinatensystem für Impulsausgang 0 auf Relativ ein.
Programmierung
00005 (Ausführungsbedingung)
(13) Erfasst die Aktivierung der Ausführungsbedingung.
(14)
124
CPM1A–Impulsausgabefunktionen Abschnitt 2-6
2-6 CPM1A–Impulsausgabefunktionen
CPM1A–SPS–Systeme mit Transistorausgängen besitzen eine Impulsausga-
befunktion, die Impulse von 20 Hz bis 2 kHz (einphasig) ausgeben können. IR
01000 oder IR 01001 können für eine Impulsausgabe ausgewählt werden und
der Impuls kann entweder in der Betriebsart Ununterbrochen ausgegeben wer-
den, in der die Ausgabe durch einen Befehl gestoppt werden kann oder in der
Betriebsart Unabhängig, bei der die Ausgabe nach einer vorher eingestellten
Anzahl von Impulse gestoppt wird (1 bis 16.777.215).
Sehen Sie das Technische Handbuch der CPM1A für weitere Informationen
über die Ausgangs– und Schnittstellenverdrahtung.
Impulse werden mit einer spezifizierten Frequenz ausgegeben, bis die
Ausgabe gestoppt wird.
Ununterbrochen–
Betriebsart
Unabhängig–
Betriebsart Spezifizierte Anzahl der Impulse
Schrittmotor Steuereingang
Motor–
regelung
Impulsausgabe Rechts–/Linkslauf–Steuerausgang
(einphasige Ausgabe)
IR 01000 oder IR 01001
125
CPM1A–Impulsausgabefunktionen Abschnitt 2-6
001 Ununterbrochen–Betriebsart
000
003
000
000
000
@PULS(65)
000
000
126
CPM1A–Impulsausgabefunktionen Abschnitt 2-6
Beginn der Legen Sie mit SPED(64) den Ausgang für die Impulsausgabe fest (IR 01000
Impulsausgabe oder IR 01001), die Betriebsart (Unabhängig/Ununterbrochen) und die Impuls-
frequenz.
@SPED(64)
@SPED(64)
127
CPM1A–Impulsausgabefunktionen Abschnitt 2-6
Verwendung von INI(61) Die zweite Methode besteht in der Verwendung von INI(61), um die Impulsaus-
gabe wie folgt anzuhalten:
@INI(61)
000
003
000
128
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Zählereingabe
Impulseingang
00000 oder 00001 Hauptmotor Inkremental–Drehgeber
Motor-
treiber
Impulsausgabe 01000
oder 01001 (einphasige
Ausgabe)
Angabe
g Eingangsmodus
Differential– Impuls– u. Auf–/Abwärts– Inkrementmodus
phasen– Richtungs– Impulseingangs–
Eingangsmodus Eingangsmodus modus
Eingangs–
g g 00000 Eingang Phase A Zähleingang Rechtslaufeingang Zähleingang
N
Nummer 00001 Eingang Phase B Richtungseingang Linkslaufeingang (sehen Sie den
Hinweis 1)
Eingangsart Differential– Einphasiger Einphasiger Einphasiger
phasen– Eingang Eingang Eingang
Eingang (4X)
Eingangsfrequenzbereich 10 bis 500 Hz (Genauigkeit ±1 Hz)
20 Hz bis 1 kHz (Genauigkeit ±1 Hz)
300 Hz bis 20 kHz (Genauigkeit ±25 Hz) (sehen Sie Hinweis 2)
Ausgangs– 01000 Impulsausgang 0
nummer
(sehen Sie 01001 Implusausgang 1
Hinweis 3)
Ausgabemethode Einphasige Impulsausgabe
Ausgangsfrequenzbereich 10 Hz bis 10 kHz (Genauigkeit 10 Hz)
Frequenzverhältnis 1% bis 1.000% (kann in 1%–Schritten spezifiziert werden)
Synchronisierter 10 ms
Steuerungszyklus
129
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
20 Hz bis 1 kHz Ein Wert größer als 10 kHz wird als 10 kHz angesehen.
Frequenz
Zeit
130
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Verdrahten Sie die Ein– und Eingangsnummer: 00000, 00001 und 0002
Ausgänge Ausgangsadressen: 01000 und 01001
SPS–Konfiguration (DM 6642) Einstellung der synchronisierten Impulssteuerung, der Eingangsmodus, der Eingangsfrequenz
SYNC(––): Start der synchronisierten Impulssteuerung und zur Änderung des Skalierfaktors
Erstellen Sie ein Kontaktplan–
Programm INI(61): Anhalten der synchronisierten Impulssteuerung
PRV(62): Lesen der schnellen Zählerfrequenz und des synchronisierten Impulssteuerungs–Status
Synchronisierte SPS–Konfiguration
Impulssteuerung
DM 6642, Bits 08 bis 15
10 bis 500 Hz
20 Hz bis 1 kHz
300 Hz bis 20 kHz
Entweder
Impulsausgang 0
Geber– Eingangsmodus Zählen
Impulsausgang 1
eingänge
Differentialphase
:
Impuls– u. Richtung Kontaktplan–Programm
Auf–/Abwärt SYNCHRONISIERTE
SYNC(––) IMPULSSTEUERUNG–
Inkremental Befehl
Synchr. Impuls–
steuerung beginnen
Skalierfaktor ändern
SPS–Konfigur.
DM 6642, Bits BETRIEBSARTEN-
00 bis 03 INI (61) STEUERUNGS–Befehl
Synchro. Impuls–
steuerung abbrech.
Synchronisierten Impuls-
steuerungs–Status lesen
131
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Auswahl der Wählen Sie einen der nachfolgend aufgeführten als Eingangsfrequenz–Be-
Impulssynchronisations– reich: 10 Hz bis 500 Hz, 20 Hz bis 1 kHz oder 300 Hz bis 20 kHz. Sehen Sie die
Eingangsfrequenz. folgenden Diagramme für weitere Informationen über Eingangsfrequenzen.
Differentialphasen–Eingangsmodus
Im Differentialphasen–Eingangsmodus wird der Zählwert, entsprechend den
zwei Differentialphasen–Signalen, mit einem Multiplikator von 4 inkrementiert
oder dekrementiert (Phase A und Phase B).
EIN
Phase A
AUS
EIN
Phase B
AUS
1,000
Nms → Frequenz =
N
Impuls– u. Richtungs–Eingangsmodus
Im Impuls– u. Richtungseingangsmodus werden Impuls– und Richtungssignal
angelegt und der Zählwert wird entsprechend dem Richtungssignals–Zustand
inkrementiert oder dekrementiert.
EIN
Impuls–
eingänge AUS
EIN
Richtungs-
eingänge
AUS
1,000
Nms → Frequenz =
N
Auf–/Abwärts–Impulseingangsmodus
In dem Auf–/Abwärts–Impulseingangsmodus werden Rechtslauf– (Aufwärt-
simpulse) und Linkslauf–Signale (Abwärtsimpulse) angelegt und der Zählwert
wird entsprechend inkrementiert oder dekrementiert.
EIN
Rechtslauf–
eingänge AUS
EIN
Linkslauf–
Eingänge AUS
Inkrementierung Dekrementierung
1,000
Nms → Frequenz =
N
Inkrementmodus
Im Inkrementalmodus werden Impulssignale angelegt und der Zählwert wird mit
132
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
1,000
Nms → Frequenz =
N
133
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
00001: Richtungseingang
00000: Impulseingang 00000: Impulseingang
Ausgangsverdrahtung
Verdrahten Sie die CPM2A–Ausgänge, wie es in der folgenden Abbildung dar-
gestellt ist.
Ausgangsverdrahtung
01000: Impulsausgang 0
01001: Impulsausgang 1
134
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
A.–steckverbinder
01000: Impulsausgang 0
01001: Impulsausgang 1
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von
PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der
CPM_A/CPM_C eingeschaltet wird.
135
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Kontaktplan– Die folgende Tabelle zeigt die sich auf die synchronisierte Eingangssteuerung
Programmierung beziehenden Befehlsfunktionen.
Befehl Steuerung Betrieb
(@)SYNC(––) Beginn der Spezifiziert Frequenzskalierfaktor und
synchronisierten Ausgangsanschluss und gibt Impulse
Impulssteuerung aus.
Frequenzskalierfaktor Ändert den Frequenzskalierfaktor
ändern während der Impulsausgabe.
(@)INI(61) Synchronisierte Beendet die Impulsausgaben.
Impulssteuerung
beenden
((@)PRV(62)
) ( ) Eingangsfrequenz lesen Liest die Eingangsfrequenz.
Synchronisierten Liest den synchronisierten
Impulssteuerungs– Steuerungsstatus.
Status lesen
Die folgende Tabelle zeigt die Worte und Bits, die mit der synchronisierten Im-
pulssteuerung zusammenhängen.
Wort Bits Name Inhalt
248 00 bis Eingangsfrequenz–Istwert, äußerst Liest den
15 rechte Stellen Eingangsfrequenz–
g g q
249 00 bis Eingangsfrequenz–Istwert, äußerst I t
Istwert.
t
15 linke Stellen
AR 11 15 Impulsausgabe für Impulsausgang EIN: Aktive Ausgabe
0 aktiv AUS: Beendet
AR 12 15 Impulsausgabe für Impulsausgang
1 aktiv
Frequenzsteuerung starten
Diese Funktion spezifiziert die Ausgänge für die Impulsausgaben (01000,
01001) sowie den Frequenzskalierfaktor (1% bis 1.000%) und beginnt die Im-
pulsausgabe.
(@)SYNC(––)
000 Impulseingangsanschluss (000: Schneller Zähler)
S2 Impulsausgangsanschluss (000: Impulsausg. 0; 010: Impulsausg. 1)
S Frequenzskalierfaktor–Einstellung
S Frequenzskalierfaktor
Spezifizieren Sie den gewünschten Frequenzskalenfaktor:
#0001 bis #1000 (4–stelliger BCD–Wert): 1 bis 1,000%
Hinweis Seien Sie bei Einsatz von SYNC(––) zur Spezifikation eines Frequenzskalier-
faktors vorsichtig, damit die Impulsausgabefrequenz 10 kHz nicht überschreitet.
Frequenzskalierfaktor ändern
Diese Funktion ändert den Frequenzskalierfaktor während der synchronisierten
Steuerung (während der Impulsausgabe), indem sie die Ausgänge für die Im-
pulsausgaben (01000, 01001) und den Frequenzskalierfaktor (1% bis 1.000%)
spezifiziert sowie SYNC(––) ausführt.
Synchronisierte Steuerung anhalten
Diese Funktion beendet die Impulsausgaben.
(@)INI(61)
000 Schnittstellenbezeichner (000: Schneller Zähler)
005 Steuerbezeichnung (005: Synchronisierte Steuerung anhalten)
000 Fest: 000
Hinweis Die Impulsausgabe kann ebenfalls beendet werden, indem die SPS in die PRO-
GRAM–Betriebsart umgeschaltet wird.
136
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Eingangsfrequenz lesen
Diese Funktion liest den Eingangsfrequenz–Istwert.
Einsatz eines Befehls
(@)PRV(62)
000 Fest: 000
000 Steuerbezeichnung (000: Schnelle Zähler–Eingangsfrequenz lesen)
Z Anfangswort zur Speicherung des Eingangsfrequenz–Istwerts
Z äußerst rechte
4 Ziffern 00000000 bis 00020000 (8-stelliger BCD-Wert)
Z+1 äußerst linke
4 Ziffern
Die Worte 248 und 249 werden mit jedem Zyklus aufgefrischt, somit kann zu ei-
ner bestimmten Zeit eine Diskrepanz zum genauen Istwert auftreten.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte
248 und 249 zum gleichen Zeitpunkt aufgefrischt.
Synchronisierten Steuerungsstatus lesen
Diese Funktion liest den synchronisierten Steuerungsstatus.
Einsatz eines Befehls
(@)PRV(62)
000 Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
001 Steuerbezeichnung (001: Synchr. Impulssteuerungs–Status lesen)
Z Anfangswort zur Speicherung des synchronisierten Steuerungsstatus
• Schnittstellenbezeichner: 000
• Schnittstellenbezeichner: 010
137
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
AR 11
AR 12
AR 1115 und AR 1215 werden nur einmal in jedem Zyklus aufgefrischt; deshalb
kann zu einem bestimmten Zeitpunkt eine Diskrepanz zum genauen Istwert auf-
treten.
Wird der Istwert durch Ausführung von PRV(62) gelesen, werden AR 1112 und
AR 1212 sofort aufgefrischt.
Eingangsimpulse
Zeit
Frequenz
Ausgangsimpulse
Zeit
SYNC(––)–Ausführung
INI(61)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Anwendungsbeispiel
Beschreibung
In diesem Beispiel wird durch Aktivieren der Ausführungsbedingung (00005) die
synchronisierte Impulssteuerung gestartet, und Impulse werden, entsprechend
den an den Schnellen Zähler angelegten Impulsen, über Ausgang 01000 (Im-
pulsausgang 0) ausgegeben. Jetzt kann der Frequenzskalierfaktor mittels
Werteingabe–Poti 0 geändert werden. Wird die Ausführungsbedingung (00005)
deaktiviert, wird die synchronisierte Impulssteuerung abgebrochen.
138
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
|Verdrahtung
Verdrahten Sie die CPM2A, wie es in der folgenden Abbildung dargestellt ist.
Orange
Weiß
Schwarz
Blau
Inkremental–
Drehgeber
Braun
Motortreiber
Verdrahten Sie die CPM2C, wie es in der folgenden Abbildung dargestellt ist. In
diesem Fall wird eine CPU–Baugruppe mit NPN–Transistorausgängen verwen-
det.
E.–steckverbinder A.–steckverbinder
Motortreiber
Blau
Inkremental–Drehgeber
Braun
COM
Orange
24 VDC
Weiß
Schwarz
139
Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) Abschnitt 2-7
Programmierung
00005 (Ausführungsbedingung)
DIFD (14) 20000 Erfasst die Deaktivierung der Ausführungsbedingung.
MOV(21)
250 Verschiebt den Wert des Werteingabe–Potis 0 auf DM 0000.
DM0000
CMP(20)
Stellt DM 0000 auf “1” ein, wenn Werteingabe–Poti 0 auf “0”
eingestellt wird.
MOV(21) (Die Werteingabe–Potis sind in CPM2A SPS–Systemen
integriert, aber nicht in CPM2C–SPS–Systemen.)
140
Toleranzen Abschnitt 2-8
2-8 Toleranzen
In diesem Abschnitt wird die Fehlerrate und Leistung der Impulsausgänge und
der synchronisierten Impulssteuerung beschrieben.
2-8-1 Impulsausgaben
Verzögerungen der Eine Verzögerung tritt ein, bevor eine Änderung der Frequenz während der Im-
Frequenzänderungen pulsausgabe am Ausgang sichtbar wird, wie es nachfolgend dargestellt ist.
Frequenz geändert
Verzögerung
Impuls–
ausgabe
Frequenzfehler Bedingt durch einen internen Verarbeitungsfehler tritt ein Fehler von weniger als
± 1% zwischen der Frequenz des Ausgabeimpulses und der eingestellten Fre-
quenz auf.
Verzögerung
Maximalverzögerung (ms) = eine Periode der Impulseingabe x 2 + 16,25
Verzögerungen der Wie nachfolgend dargestellt ist, tritt eine Verzögerung auf, bevor bei der syn-
Frequenzänderungen chronisierten Impulssteuerung eine Änderung der Frequenz während der Im-
pulsausgabe tatsächlich auf die Ausgabe erfolgt.
Verzögerung
Impuls–
eingabe
Impuls–
ausgabe
Verzögerung beim Das folgende Diagramm zeigt die Verzögerung, die während des Abbruchs der
Anhalten der synchronisierten Impulssteuerung (0 Hz) und dem Ende der eigentlichen Im-
Impulsausgabe pulsausgabe während der synchronisierten Impulssteuerung auftritt.
Verzögerung
Impuls–
eingabe
Impuls–
ausgabe
Maximalverzögerung (ms) = Einstellung in DM 6642 (sehen Sie nachfolgend) + eine Periode der aktuellen Impulsausgabe B 2 + 10
141
Analoge E/A–Funktionen Abschnitt 2-9
Frequenzfehler Wie nachfolgend beschrieben, tritt ein Fehler zwischen der Frequenz des Ein-
gabe– und der des Ausgabeimpulses auf. Dieser wird durch einen Fehler in der
Eingabeimpulsfrequenz–Messung und einen Fehler in der Ausgabeimpulsfre-
quenz verursacht.
Eingabeimpulsfrequenz–Messfehler
Wie nachfolgend gezeigt, hängt der Fehler beim Messen der Frequenz des Ein-
gabeimpulses von der Einstellung in DM 6642 ab. Wird ein Multiplikationsfaktor
für die synchronisierte Impulssteuerung spezifiziert, muss der in der Tabelle be-
schriebene Fehler ebenfalls mit dem gleichen Faktor multipliziert werden.
Einstellung von Frequenzbereich Fehler
DM 6642 Bit 08 bis 15
02 10 bis 500 Hz ±1 Hz
03 20 Hz bis 1 kHz ±1 Hz
04 300 Hz bis 20 kHz ±10 Hz
Ausgabeimpuls–Frequenzfehler
Bedingt durch einen internen Verarbeitungsfehler tritt ein Fehler von weniger
als± 1% zwischen der Frequenz des Ausgabeimpulses und der eingestellten
Frequenz auf.
Beispiel
DM 6642, Bits 08 bis 15 4 (Frequenzbereich: 300 Hz bis 20 kHz)
Multiplikationsfaktor: 300%
Eingangsfrequenz: 1 kHz (Fehler: 0%)
Wird eine synchronisierte Impulssteuerung unter den obenstehenden Bedin-
gungen durchgeführt, tritt ein Fehler von±10 Hz beim Messen des Frequenzbe-
reichs des Eingabeimpulses auf. Die Eingangsfrequenz beträgt somit 990 bis
1010 Hz. Der Multiplikationsfaktor von 300% würde jedoch aus diesem Wert
2970 bis 3030 Hz erzeugen. Zusätzlich würde es auch einen Fehler von±1% in
der Frequenz des Ausgabeimpulses geben; deshalb würde die Ausgabe im Be-
reich von 2940 bis 3060 Hz liegen.
2-10 Temperaturfühler–Eingangsfunktionen
(nur CPM1A/CPM2A/CPM2C)
Temperaturfühler–Baugruppen können direkt angeschlossen werden, um die
SPS um Temperaturfühlereingänge zu erweitern. Temperaturfühler–Baugrup-
pen stehen für Thermokoppler– oder Platin–Widerstandsthermometer–Ein-
gänge zur Verfügung.
An die CPM1A oder CPM2A können bis zu drei–CPM1A–TS001/101– oder eine
CPM1ATS002/102 Temperaturfühler–Baugruppe angeschlossen werden. Bis
zu 6 Temperatureingänge sind bei einer SPS möglich.
Bei der CPM2C können bis zu vier CPM2C–TS001/101–Temperaturfühler–
Baugruppen angeschlossen werden, wodurch bis zu 8 Temperatureingänge für
eine SPS zur Verfügung stehen.
2-11 CompoBus/S–E/A–Slavefunktionen
(nur CPM1A/CPM2A/CPM2C)
Die SPS kann als Slave einer CompoBus/S– (oder einer SRM1–Compo-
Bus/S)–Master–Baugruppe arbeiten, wenn eine CompoBus/S–E/A–Link–Bau-
142
CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) Abschnitt 2-12
Slave–E/A–Zuweisung Die Eingangsbits in IR 000 bis IR 007 und die Ausgangsbits in IR 010 bis IR 017
werden für CompoBus/S–E/A–Module verwendet. Die CompoBus/S–E/A
(EINGANG 0 bis 15 und AUSGANG 0 bis 15) besitzen gemäß nachstehender
Tabelle die folgenden Zuweisungen.
EING0 bis EING15 sind die Geräteadressen für Eingangsmodule und AUSG0
bis AUSG15 sind die Teilnehmeradressen für Ausgangsmodule.
Wort Bit
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Ein- IR 000 EING 1 EING 0
gang IR 001 EING 3 EING 2
IR 002 EING 5 EING 4
IR 003 EING 7 EING 6
IR 004 EING 9 EING 8
IR 005 EING 11 EING 10
IR 006 EING 13 EING 12
IR 007 EING 15 EING 14
Aus- IR 010 AUSG 1 AUSG 0
gang IR 011 AUSG 3 AUSG 2
IR 012 AUSG 5 AUSG 4
IR 013 AUSG 7 AUSG 6
IR 014 AUSG 9 AUSG 8
IR 015 AUSG 11 AUSG 10
IR 016 AUSG 13 AUSG 12
IR 017 AUSG 15 AUSG 14
143
CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) Abschnitt 2-12
Hinweis 1. Wird die maximale Anzahl von CompoBus/S–Geräten auf 16 gesetzt, kön-
nen EIN8 bis EIN15 und AUSG 8 bis AUG 15 als Hilfsbits verwendet wer-
den.
2. CompoBus/S–Module mit weniger als 8 Anschlüssen werden die Bitadres-
sen von entweder 0 oder 8 zugewiesen.
3. CompoBus/S–Module mit 16 Anschlüssen können nur auf Adressen mit ge-
raden Nummern eingestellt werden.
4. Analoge Anschlüsse können nur auf Adressen mit geraden Nummern ein-
gestellt werden.
Statusmerker Der Kommunikationszustand zwischen CompoBus/S–Module wird durch die
Slave registriert–Merker und Slave–Kommunikations–Fehlermerker AR04 bis
AR07 ausgegeben.
Wort Obere Bits: Slave–Kommunikations–Fehlermerker Untere Bits: Slave registriert–Merker
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
AR 04 AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
AR 05 EING EING EING EING EING EING EING EING EING EING EING EING EING EING EING EING
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
AR 06 AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG AUSG
15 14 13 12 11 10 9 8 15 14 13 12 11 10 9 8
AR07 EING EING EING EING EING EING EING EING EING EING EING EING EING EING EING EING
15 14 13 12 11 10 9 8 15 14 13 12 11 10 9 8
Hinweis 1. EING 0 bis EING 15 sind Feldbus–Eingangs– und AUSG 0 bis AUSG 15
sind Feldbus–Ausgangsmodule.
2. Wird die maximale Anzahl der CompoBus/S–Geräte auf 16 gesetzt, können
EING 8 bis EING 15 und AUSG 8 bis AUSG 15 nicht verwendet werden.
3. Der Slave registriert–Merker wird auf EIN gesetzt, wenn ein Slave–Gerät
zum Kommunikationsverbund hinzugefügt wird. Wird die Stromversorgung
zur CPU–Baugruppe aus– und wieder eingeschaltet, so werden alle Bits auf
AUS gesetzt.
4. Der Slave–Kommunikations–Fehlermerker wird auf EIN gesetzt, wenn ein
im Netz befindlicher Slave vom Netz getrennt wird. Das Bit wird auf AUS ge-
setzt, wenn der Slave wieder an das Netz angeschlossen wird.
144
Einstellschaltungen (nur CPM1/CPM1A/CPM2A) Abschnitt 2-13
CPM1
CPM1A/CPM2A
Hinweis In der obenstehenden Zeichnung ist die CPM2A dargestellt, die CPM1A besitzt
aber die gleichen Einstellungmöglichkeiten.
145
Einstellschaltungen (nur CPM1/CPM1A/CPM2A) Abschnitt 2-13
Einstellverfahren
Verwenden Sie für die Einstellungen einen
Nehmen Sie Werteingaben vor Kreuzschlitz–Schraubendreher.
Schließen Sie ein Programmiergerät wie eine
Programmierkonsole an und überprüfen Sie die
in SR 250 und SR 251 gespeicherten Werte.
Erstellen Sie ein Kontaktplan– Werten Sie die in SR 250 und SR 251 gespei-
Programm cherten Werte mit dem Kontaktplan–Programm
aus.
Werteingabe–Poti 0 Werteingabe–Poti 1
Werteingabe–Poti 0 Werteingabe–Poti 1
Kontaktplan– Die folgende Tabelle enthält die Worte und Bits, in denen die Werteingaben ge-
Programmierung speichert werden.
Wort Bits Name Wert
SR 250 00 bis 15 Werteingabe–Poti 0–Sollwertbereich 0000 bis
SR 251 00 bis 15 Werteingabe–Poti 1–Sollwertbereich 0200 (BCD)
Startmerker
Spezifiziert SR 250 für den Zeitgeber–Sollwert.
146
Eingänge mit Impulsspeicherung Abschnitt 2-14
Eingangs-
signal
(00003)
IR 00003
1 Zyklus
Einstellung der Eingänge Die Eingangsbits in der obigen Tabelle können gemäß folgender Tabelle als Ein-
mit Impulsspeicherung gänge mit Impulsspeicherung in DM 6628 eingestellt werden.
Wort Einstellungen
DM 6628 0: Normaler Eingang
1: Interrupt–Eingang
g g
2 Schneller Eingang (Impulsspeicher)
2:
(G d i t ll
(Grundeinstellung: 0)
Bit 15 0
DM 6628
Programmbeispiel
In diesem Beispiel wurde 6628 DM auf 0002 eingestellt.
147
Eingänge mit Impulsspeicherung Abschnitt 2-14
Eingang
(00003)
00003
1 Zyklus
Hinweis 1. Eingänge 00003 bis 00006 können als Interrupt–Eingänge, schnelle Zäh-
ler–Eingänge mit 2 kHz oder Eingänge mit Impulsspeicherung verwendet
werden. Anderenfalls können sie als gewöhnliche Eingänge eingesetzt
werden.
2. Eingang 00006 ist in CPM2C–CPU–Baugruppen mit 10 E/A nicht vorhan-
den.
Die folgende Tabelle zeigt die Beziehungen zwischen Eingängen mit Impuls-
speicherung und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
Funktion Eingänge mit Impulsspeicherung
Synchronisierte Impulssteuerung Kann gleichzeitig verwendet werden
Eingangsgestuerte Interrupts Sehen Sie Hinweis 1
Intervall–Zeitgeber–Interrupts Kann gleichzeitig verwendet werden
Schneller Zähler Kann gleichzeitig verwendet werden
E–gesteuerte Interrupts (Zählmodus) Sehen Sie Hinweis 2
Impulsausgänge Kann gleichzeitig verwendet werden
Eingänge mit Impulsspeicherung Sehen Sie Hinweis 3
Eingangs–Zeitkonstante Sehen Sie Hinweis 4
Uhr Kann gleichzeitig verwendet werden
Hinweis 1. Eingänge mit Impulsspeicherung verwenden die Interrupt–Eingangsfunk-
tion; somit können die Eingänge 00003 bis 00006 in der SPS–Konfiguration
nicht gleichzeitig als Eingänge mit Impulsspeicherung und als Interrupt–
Eingänge zugewiesen werden.
2. Ein Eingang mit Impulsspeicherung und ein Interrupt im Zählmodus kann in
der SPS–Konfiguration nicht dem gleichen Eingang zugewiesen werden.
3. Eingänge, die als Eingänge mit Impulsspeicherung zugewiesen werden
können, sind 00003 bis 00006.
4. Eingangszeit–Konstanten werden für alle Eingänge deaktiviert, die als Ein-
gänge mit Impulsspeicherung spezifiziert werden.
148
Eingänge mit Impulsspeicherung Abschnitt 2-14
SPS–Konfigur.
DM 6628
Verdrahtung der Verdrahten Sie die CPM2A–Eingänge, wie es in der folgenden Abbildung dar-
Eingänge gestellt ist.
149
Eingänge mit Impulsspeicherung Abschnitt 2-14
Eingang E.–steckverbind.
00004:
Eingang mit Impuls–
speicherung 1
00003:
Eingang mit Impuls–
speicherung 0
E.–steckverbind.
SPS–Konfiguration Um Eingänge mit Impulsspeicherung mit der CPM2A oder CPM2C zu verwen-
den, müssen Sie die folgenden Einstellungen im Systemeinstellbereich (DM
6628) über ein Programmiergerät vornehmen.
Wort Bits Funktion Ein–
stellung
DM 6628 00 bis Interrupt–Einstellung für 0: Normaler Eingang 2
03 Eingang 3 Interrupt–Eingänge
1: Interru t–Eingänge
04 bis Interrupt–Einstellung für (Interrupt–Eingangs–
07 Eingang 4 oder Zählmodus))
08 bis Interrupt–Einstellung für 2: Schneller Eingang
11 Eingang 5
12 bis Interrupt–Einstellung für
15 Eingang 6
150
Makrofunktion Abschnitt 2-15
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von
PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der
CPM_A/CPM_C eingeschaltet wird.
2-15 Makrofunktion
Die Makrofunktion wird als ein einfaches Unterprogramm eingesetzt, das mit
wechselnden E/A–Worten mehrfach ausgeführt werden kann. Eine Anzahl ähn-
licher Programmabschnitte kann durch nur ein Unterprogramm ersetzt werden.
Dies führt zu einer Reduzierung der Programmschritte und somit zu einem
transparenteren Programm.
Anwendung der Ein Makro wird zum Aufruf eines Unterprogramms mit dem Befehl MCRO(99)
Makrofunktion verwendet, anstatt mit SBS(91) (UNTERPROGRAMM–EINSPRUNG), wie
nachfolgend dargestellt ist.
MCRO (99)
Unterprogramm–Nr
Erstes Eingangswort
Erstes Ausgangswort
151
Makrofunktion Abschnitt 2-15
Anwendungsbeispiel Wird ein Makro verwendet, kann das Programm wie nachstehend dargestellt,
vereinfacht werden.
Ohne Makro Mit Makro
25313 (Immer EIN)
00000 20001 MCRO (99)
20000
030
20000 000
200
MCRO (99)
20500
030
00501 00502
SBN (92) 030
21001
23200 23601
00100 22001
23600
22000
23600
22000
152
Berechnungen mit vorzeichenbehafteten Binärdaten Abschnitt 2-16
153
Flankenüberwachung Abschnitt 2-17
2-17 Flankenüberwachung
Der CPM1/CPM1A, CPM2A//CPM2C und SRM1(–V2) unterstützen die Flan-
kenüberwachung über die Programmierkonsole oder CX–Programmer/SYS-
WIN. Die EIN/AUS– oder AUS/EIN–Statusänderung eines spezifizierten Bits
kann erfaßt werden. Eine Statusänderung wird auf dem Display angezeigt und
ein Summer ertönt.
Sehen Sie die technischen Handbücher der CPM1, CPM1A, CPM2A und
CPM2C oder der SRM1–Master–Baugruppe und und das CX–Programmer/
SYSWIN–Programmierhandbuch für weitere Informationen über die Flanke-
nauswertung.
154
Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) Abschnitt 2-18
SPED SPED
MAX MAX
SUM SUM
Zum Zeitpunktes der Auslieferung werden Werden keine Impulsausgaben verwendet,
die Funktions-Codes, wie vorstehend darge- aber Maximal-, Minimal- und Summenwerte
stellt, zugewiesen. (In diesem Beispiel bezie- benötigt, kann der SET-Befehl dazu verwen-
hen sich alle Befehle auf Impulsausgaben.) det werden, Befehle in der Befehlstabelle neu
zuzuweisen (wie vorstehend dargestellt).
Hinweis 1. Stellen Sie das SPS–Modell auf “CPM2” oder “SRM1” ein, wenn Sie die Er-
weiterte Befehle für die SRM1(–V2) oder CPM2A/CPM2C über CX–Pro-
grammer/SYSWIN spezifizieren.
2. Die SPS–Konfiguration muss auf benutzerdefinierte Erweiterte Befehls–
Funktionscodes eingestellt werden, damit Funktionscodes zugewiesen
werden können. Setzen Sie die Bits 08 bis 11 von DM 6602 auf 1.
155
Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) Abschnitt 2-18
156
Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) Abschnitt 2-18
Hinweis *SCL(66), NEG(––), PID(––) und ZCP (––) werden nur von den SRM1–C0j–
V2–CPUs unterstützt.
157
Verwendung der CPM2A/CPM2C–Uhrfunktion Abschnitt 2-19
2-19-1 Datenbereichs–Worte
Diese folgende Abbildung verdeutlicht die Konfiguration der mit der Uhr verwen-
deten Worte (AR 17 bis AR 21). Diese können, wie erforderlich, gelesen und ver-
wendet werden. (AR 17 ermöglicht einen schnellen Zugriff auf die Stunden– und
Minuten–Angaben.)
15 8 7 0
AR 17 Stunde Minute
Jeweils 2–stelliger BCD–Wert
AR 18 Minute Sekunde (Nur die letzten beiden Stellen des
AR 19 Datum Stunde Jahres stehen zur Verfügung.)
AR 20 Jahr Monat
AR 21 Wochentag 00 bis 06: Sonntag bis Samstag
AR 2115 Uhr–Einstellungsmerker
AR 2114 Uhr–Stoppmerker
AR 2113 30 Sekunden–Stellmerker
158
KAPITEL 3
Anschluss von Erweiterungsbaugruppen
Dieser Abschnitt beschreibt, wie die analogen E/A–Baugruppen CPM1A–MAD01– und CPM2C–MAD11, Temperaturfüh-
ler–Baugruppen CPM1A–TS001/002/101/102 und CPM2C–TS001/101 sowie CompoBus/S–E/A–Link–Baugruppen
CPM1A–SRT21 und CPM2C–SRT21 verwendet werden.
159
Analoge E/A–Funktionen Abschnitt 3-1
2 Analogausg.
1 Analogausg.
160
Analoge E/A–Funktionen Abschnitt 3-1
Spannungs–E/A Strom–E/A
Analog–ein–
a og e Anzahl der Eingänge 2
gangs– Eingangssignalbereich 0 bis 10 V/1 bis 5 V 4 bis 20 mA
teil
Max. Nenneingangswert ±15 V ±30 mA
Eingangsimpedanz min. 1 MΩ 250Ω bei Nennstrom
Auflösung 1/256
Genauigkeit 1,0% bei Vollausschlag
A/D–Konvertierungsdaten 8 Bit binär
Analo–
ao Anzahl der Ausgänge 1
ger Aus–
A Ausgangssignalbereich 0 bis 10 V oder 4 bis 20 mA
gangs– –10 bis 10 V
teil (sehen Sie
Hinweis 1) Max. externer Ausgangsstrom 5 mA ---
Zulässiger externer Ausgangs–Lastwiderstand --- 350 Ω
Auflösung 1/256
(1/512 bei Wahl des Ausgangssignalbereichs –10 bis 10 V)
Genauigkeit 1,0% bei Vollausschlag
Einstelldaten 8 Bit, vorzeichenbehafteter Binärwert
Konvertierungszeit max. 10 ms pro Baugruppe (sehen Sie Hinweis 2)
Galvanische Trennung Galvanische Trennung über Optokoppler zwischen
E/A–Klemmen und SPS–Signalen. Keine galvanische Trennung
zwischen den analogen E/A–Signalen.
Hinweis 1. Bei analogen Ausgängen können sowohl Spannungs– als auch Stromaus-
gänge gleichzeitig verwendet werden. In diesem Fall darf der gesamte Aus-
gangsstrom 21 mA jedoch nicht überschreiten.
2. Die Konvertierungszeit ist die Gesamtzeit für 2 Analogeingänge und 1 Ana-
logausgang.
Analoge E/A–Signalbereiche
Analog–Eingangssignalbereiche
0 bis 10 V–Eingänge 1 bis 5 V–Eingänge 4 bis 20 mA–Eingänge
Konvertierungswert Konvertierungswert Konvertierungswert
1V 3V
Eingangssignal Eingangssignal Eingangssignal
161
Analoge E/A–Funktionen Abschnitt 3-1
Analog–Ausgangssignalbereiche
Sollwert
Sollwert
4 bis 20 mA–Ausgänge
Sollwert
162
Analoge E/A–Funktionen Abschnitt 3-1
Analogeingänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–Programm
Wort (n + 1) Bereichscode
Analoge Geräte
Temperaturfühler
Hierbei entspricht “m” den letzten Eingangswort
und “n” dem letzten Ausgangswort, das der CPU–, Drucksensor
vorhergehenden Erweiterungsbaugruppe oder der Drehzahlsensor
E/A–Erweiterungsbaugruppe zugewiesen ist. Flusssensor
Spann.–/Strommeter
Analoge Ausgänge
CPU–Baugruppe Analoge E/A–Baugruppe
Analoge Geräte
Justiergeräte
Hierbei entspricht “n” dem letzten Ausgangswort, Servoregler
das der CPU–, vorhergehenden Erweiterungs– Frequenzumrichter
oder E/A–Erweiterungsbaugruppe zugewiesen
Andere
ist.
Hinweis Wort (n + 1) kann für den Bereichscode oder den analogen Ausgabesollwert
verwendet werden.
163
Analoge E/A–Funktionen Abschnitt 3-1
Einstellung des E/A– Der E/A–Signalbereich wird eingestellt, indem der Bereichscode in das Aus-
Signalbereichs gangswort der Analog–E/A–Baugruppe geschrieben wird.
E/A–Klemmenanordnung
V OUT Spannungsausgang
I OUT Stromausgang
COM Ausgang, gemeinsamer
V IN1 Spannungseingang 1
I IN1 Stromeingang 1
COM1 Eingang, gemeinsamer
V IN2 Spannungseingang 2
I IN2 Stromeingang 2
COM2 Eingang, gemeinsamer 2
Bereichscode
Um Daten zu konvertieren muss der Bereichscode für die analoge E/A–Bau-
gruppe eingestellt werden.
Die 8 Bereichscode–Einstellungen erlauben 8 Kombinationen von Signalberei-
chen für die Analogein– und –ausgänge, wie es in der folgenden Tabelle darge-
stellt ist.
Bereichs– Analogeingang 1– Analogeingang 2– Analog–Ausgangs–
code Signalbereich Signalbereich signalbereich
FF00 0...10 V 0 bis 10 V 0...10 V oder 4...20 mA
FF01 0...10 V 0 bis 10 V –10...10 V oder
4...20 mA
FF02 1...5 V oder 4...20 mA 0 bis 10 V 0...10 V oder 4...20 mA
FF03 1...5 V oder 4...20 mA 0 bis 10 V –10...10 V oder
4...20 mA
FF04 0...10 V 1...5 V oder 4...20 mA 0...10 V oder 4...20 mA
FF05 0...10 V 1...5 V oder 4...20 mA –10...10 V oder 4...
20 mA
FF06 1...5 V oder 4...20 mA 1...5 V oder 4...20 mA 0...10 V oder 4...20 mA
FF07 1...5 V oder 4...20 mA 1...5 V oder 4...20 mA –10...10 V oder 4...
20 mA
(n + 1)
164
Analoge E/A–Funktionen Abschnitt 3-1
Anschluss der analogen Dieser Abschnitt beschreibt, wie eine analoge E/A–Baugruppe an die CPU–
E/A–Baugruppe Baugruppe angeschlossen wird.
Maximal 3 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlich
analoger E/A–Baugruppen, können mit einer SPS verbunden werden. Es be-
stehen keine Vorschriften für die Anschlussreihenfolge, wenn die analoge E/A–
Baugruppe zusammen mit anderen Erweiterungs– oder E/A–Erweiterungsbau-
gruppen verwendet wird.
CPM1–/CPM1A–/CPM2A– Analoge E/A–Baugruppe
CPU–Baugruppe
E/A–Zuweisung
Ein–/Ausgänge werden für die analoge E/A–Baugruppe auf die gleiche Weise
zugewiesen, wie bei anderen Erweiterungs– oder E/A–Erweiterungsbaugrup-
pen; die Zuweisung beginnt mit dem nächsten Wort, das dem zu letzt zugewie-
senen Wort der CPU–Baugruppe oder das der vorhergehenden Erweiterungs-
baugruppe oder E/A–Erweiterungsbaugruppe zugewiesen wurde, folgt. Die Zu-
weisung ist wie folgt, wenn “m” das letzte zugewiesene Eingangswort und “n”
das letzte zugewiesene Ausgangswort auf der CPU–Baugruppe oder der vor-
hergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe ist:
Analoge E/A–Baugruppe
(m + 1)
(m + 2)
2 Analogeingänge
1 Analogausgang
(n + 1)
165
Analoge E/A–Funktionen Abschnitt 3-1
Stromaus-
gang für 250 Ω
analoges
Ausgabe-
gerät
10 kΩ
Analoge Ausgangsverdrahtung
Spannungsausgänge
Analoge E/A–Baugruppe 2–adrig abgeschirmtes,
paarweise verdrilltes Kabel
Spannungs–
eingang ei-
nes Analog–
gerätes
Stromausgänge
Analoge E/A–Baugruppe 2–adrig abgeschirmtes,
paarweise verdrilltes Kabel
Strom–
eingang ei-
nes Analog–
gerätes
166
Analoge E/A–Funktionen Abschnitt 3-1
Kontaktplan–Programm
Spezifizieren des Bereichscodes
Spezifizieren Sie den E/A–Signalbereich, indem Sie den Bereichscode im er-
sten Zyklus der Programmausführung über den Kontaktplan in das Ausgangs-
wort der analogen E/A–Baugruppe schreiben. Die Analog–E/A–Baugruppe be-
ginnt erst mit der Wandlung der analogen E/A–Werte, nachdem der Bereich-
scode spezifiziert wurde. (Sehen Sie Seite 164.)
Schreiben Sie im ersten Zyklus der Programmausführung den Bereichscode in
das Ausgangswort der analogen E/A–Baugruppe; das Ausgangswort der ana-
logen E/A–Baugruppe ist “n+1”, wenn “n” das letzte Wort ist, das der CPU–Bau-
gruppe oder einer vorhergehenden Erweiterungs– oder E/A–Erweiterungsbau-
gruppe in der E/A–Konfiguration zugewiesen wurde.
Lesen gewandelter Analog–Eingangswerte
Ein Kontaktplan kann zum Lesen der Speicherbereiche verwendet werden, in
dem die gewandelten Werte gespeichert sind. Werte werden an die nächsten
zwei Worten (m + 1, m + 2), die dem letzten, der CPU–Baugruppe, einer vorher-
gehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewiesenen
Eingangswort (m) folgen, ausgegeben.
(m + 1) 0 0 0 0 0 0 0
(m + 2) 0 0 0 0 0 0 0
0: Normal
1: Offene Schaltung (Drahtbruch)
(n + 1) 0 0 0 0 0 0 0
Vorzeichenbit
(bei einem Ausgangssignal– Sollwert (hex: (00 bis FF)
bereich –10 bis 10 V)
1, 2, 3... 1. Der Sollwertbereich ist 0000 bis 00FF, wenn der Ausgangssignalbereich 0
bis 10 V/4 bis 20 mA beträgt.
2. Der Sollwertbereich wird in zwei Teile unterteilt: 80FF bis 8000 (–10 bis 0 V)
und 0000 bis 00FF (0 bis 10 V) bei einem Ausgangssignalbereich von –10
bis 10 V.
167
Analoge E/A–Funktionen Abschnitt 3-1
IR 000 IR 002
Eingangsworte IR 001 IR 003
CPU–Baugruppen Analoge
mit 30 E/A– E/A–Bau-
Anschlüssen gruppe
IR 010
Ausgangsworte IR 012
IR 011
Masse (–)
Spannungsausgang (+)
Analoge E/A–Einstellungen
Eingang 1–Signalbereich: 0 bis 10 V
Eingang 2–Signalbereich: 4 bis 20 mA
Ausgangssignalbereich: 0 bis 10 V
Bereichscode–Einstellung: FF04
IR 012
Bereichscode: FF04
168
Analoge E/A–Funktionen Abschnitt 3-1
Programm
SR 25315
(Erster Zyklus–EIN–Merker)
(21)
4
Schreibt den Bereichscode (FF04) in die Baugruppe.
Ausführungsbedingung
(21)
Ausführungsbedingung
(21)
Ausführungsbedingung
(21)
169
Analoge E/A–Funktionen Abschnitt 3-1
Spannungs–E/A Strom–E/A
Analogein–
a oge Anzahl der Eingänge 2 Eingänge (2 zugewiesene Worte)
gangsteil
t il Eingangssignalbereich 0 bis 5 VDC, 1 bis 5 VDC, 0 bis 20 mA oder 4 bis 20 mA
0 bis 10 VDC oder –10 bis 10 VDC
Max. Nenneingangswert ±15 V ±30 mA
Eingangsimpedanz min. 1 MΩ 250 Ω
Auflösung 1/6000 (Vollausschlag)
Gesamtgenauigkeit
Gesa ge au g e 25°C 0,3% bei Vollausschlag 0,4% bei Vollausschlag
0 bis 55°C 0,6% bei Vollausschlag 0,8% bei Vollausschlag
A/D–Konvertierungsdaten 16–Bit binär (4–stelliger Hexadezimalwert)
Messbereich bei –10 bis 10 V: F448 bis 0BB8 hex.
Messbereich für andere Bereiche: 0000 bis 1770 hex.
Mittelwertfunktion wird unterstützt (einstellbar für individuelle Eingänge über DIP–Schalter)
Drahtbruch–Erfassungsfunktion wird unterstützt
Analogaus–
a ogaus Anzahl der Ausgänge 1 Ausgang (1 zugewiesenes Wort)
gangsteil
t il Ausgangssignalbereich 1 bis 5 VDC, 0 bis 10 VDC oder 0 bis 20 V oder 4 bis 20 mA
–10 bis 10 VDC
Zulässiger externer min. 1 kΩ 600 Ω max.
Ausgangs–Lastwiderstand
Externe Ausgangsimpedanz 0,5 Ω max. ---
Auflösung 1/6000 (Vollausschlag)
Gesamtgenauigkeit
Gesa ge au g e 25 C° 0,4% bei Vollausschlag
0 bis 55°C 0,8% bei Vollausschlag
Ausgangswerte (D/A–Wandlung) 16–Bit binär (4–stelliger Hexadezimalwert)
Messbereich bei –10 bis 10 V: F448 bis 0BB8 hex.
Messbereich für andere Bereiche: 0000 bis 1770 hex.
Konvertierungszeit 2 ms/Punkt (6 ms/alle Punkte)
Galvanische Trennung Optokoppler–Isolierung zwischen analogen E/A Klemmen und internen
Schaltungen. Keine galvanische Trennung zwischen den analogen
E/A–Signalen.
Analoge E/A–Signalbereiche
Analoge E/A–Signalbereich werden digital gewandelt, wie es in diesem Ab-
schnitt beschrieben wird.
Analogeingangs– Die analoge E/A–Baugruppe wandelt Analogeingangsdaten in digitale Werte.
signalbereiche Die digitalen Werte hängen von den Eingangssignalbereichen ab, wie es in der
folgenden Abbildung gezeigt wird. Über–/unterschreitet die Eingabe den spezi-
fizierten Bereich, befinden sich die gewandelten A/D–Daten fest auf dem un-
teren oder oberen Grenzwert.
–10 bis 10 V
Der –10 V bis 10 V–Bereich entspricht dem hexadezimalen Wert F448 bis
0BB8 (–3000 bis 3000). Der gesamte Datenbereich ist F31C bis 0CE4 (–3300
bis 3300). Eine negative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
0CE4 (3300)
0BB8 (3000)
F448 (–3000)
F31C (–3300)
170
Analoge E/A–Funktionen Abschnitt 3-1
0 bis 10 V
Der 0 bis 10 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis
6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Eine ne-
gative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
189C (6300)
1770 (6000)
0000 (0)
–0,5 V
10 V 10,5 V
FED4 (–300) 0V
0 bis 5 V
Der 0 bis 5 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis
6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Eine ne-
gative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
189C (6300)
1770 (6000)
0000 (0)
–0,25 V
1 bis 5 V
Der 1 bis 5 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis
6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Ein-
gangssignale zwischen 0,8 und 1 V werden als 2er–Komplemente ausgedrückt.
Fällt die Eingabe unter 0,8 V, wird die Drahtbruch–Erfassung aktiviert und der
Wert der gewandelten Daten beträgt 8000.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
189C (6300)
1770 (6000)
0 bis 20 mA
Der 0 bis 20 mA–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0
171
Analoge E/A–Funktionen Abschnitt 3-1
bis 6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Eine
negative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
189C (6300)
1770 (6000)
0000 (0)
–1 mA
FED4 (–300) 0 mA 20 mA 21 mA
4 bis 20 mA
Der 4 bis 20 mA–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0
bis 6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Ein-
gangssignale zwischen 3,2 und 4 mA werden als 2er–Komplemente ausge-
drückt. Fällt die Eingabe unter 3,2 mA, wird die Drahtbruch–Erfassung aktiviert
und der Wert der gewandelten Daten beträgt 8000.
Gewandelte Daten
Hexadezimal (Dezimalzahl)
189C (6300)
1770 (6000)
3,2 mA
0000 (0)
4 mA 20 mA 20,8 mA
FED4 (–300)
0 mA
11 V
10 V
F31C F448
8000 (–3300) (–3000) 0000 (0) Gewandelte Daten
Hexadezimal (De-
0BB8 0CE4
0V
(3000) (3300) 7FFF zimalzahl)
–10 V
–11 V
172
Analoge E/A–Funktionen Abschnitt 3-1
0 bis 10 V
Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-
gen Spannungsbereich von 0 bis 10 V. Der gesamte Ausgabebereich umfasst
–0,5 bis 10,5 V. Spezifizieren Sie eine negative Spannung als 2er–Komplement.
10,5 V
10 V
0V
Gewandelte
8000 FED4 (–300) Daten
Hexadezimal
1770 189C (Dezimalzahl)
–0,5 V 0000 (0) (6000) (6300) 7FFF
1 bis 5 V
Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-
gen Spannungsbereich von 1 bis 5 V. Der gesamte Ausgabebereich beträgt 0,8
bis 5,2 V.
5,2 V
5V
1V
0,8 V Gewandelte
0V Daten
1770 189C Hexadezimal
8000 FED4 0000 (0) 7FFF (Dezimalzahl)
(–300) (6000) (6300)
0 bis 20 mA
Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-
gen Strombereich von 0 bis 20 mA. Der gesamte Ausgabebereich umfasst 0 bis
21 mA.
21 mA
20 mA
0000
(0) Gewandelte
Daten
8000 0 mA 1770 189C Hexadezimal
7FFF
(6000) (6300) (Dezimalzahl)
173
Analoge E/A–Funktionen Abschnitt 3-1
4 bis 20 mA
Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-
gen Strombereich von 4 bis 20 mA. Der gesamte Ausgabebereich umfasst 3,2
bis 20,8 mA.
20,8 mA
20 mA
4 mA
3,2 mA Gewandelte
0 mA Daten
FED4 0000 (0) Hexadezimal
8000 1770 189C 7FFF (Dezimalzahl)
(–300) (6000) (6300)
Mittelwertfunktion für Die Mittelwertfunktion für die Eingänge wird über den DIP–Schalter aktiviert. Die
Analogeingangssignale Mittelwertfunktion speichert den Mittelwert (ein gleitender Mittelwert) der letzten
acht Eingangswerte als gewandelte Wert. Verwenden Sie diese Funktion, um
Eingangswerte zu glätten, die in einem kurzen Intervall schwanken.
Drahtbruch– Die Drahtbruch–Erfassungsfunktion wird aktiviert, wenn der Eingangsbereich
Erfassungsfunktion für auf 1 bis 5 V eingestellt wurde und die Spannung unter 0,8 V abfällt oder wenn
Analogeingänge der Eingangsbereich auf 4 bis 20 mA eingestellt wird und der Strom unter 3,2 mA
sinkt. Wird die Drahtbruch–Erfassungsfunktion aktiviert, werden die gewandel-
ten Daten auf 8000 gesetzt.
Die Drahtbruch–Erfassungsfunktion wird aktiviert oder gesperrt, wenn Daten
gewandelt werden. Liegt das Eingangssignal wieder in einem wandelbaren Be-
reich, wird die Drahtbruch–Erfassung automatisch gesperrt und die Ausgabe
kehrt zum normalen Wert zurück.
174
Analoge E/A–Funktionen Abschnitt 3-1
Analogeingänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–Programm
Wort (n + 1) Bereichscode
Wort (m + 1) Gewandelter Wert von
(21) MOVE–Befehl Analogeingang 0
Wort (m + 2) Gewandelter Wert
Schreibt den Bereich- von Analogeingang 1
scode. Liest die ge-
wandelten Werte.
Analoge Geräte
Hierbei entspricht “m” den letzten Eingangswort Temperaturfühler
und “n” dem letzten Ausgangswort, das der CPU–, Drucksensor
vorhergehenden Erweiterungsbaugruppe oder der Geschwindigkeitssensor
Flusssensor
E/A–Erweiterungsbaugruppe zugewiesen ist. Spann.–/Strommeter
Andere
Analogausgänge
CPU–Baugruppe Analoge E/A–Baugruppe
Analoge Geräte
Justiergeräte
Hierbei entspricht “n” dem letzten Ausgangswort, Servoregler
das der CPU–, vorhergehenden Erweiterungs– Frequenzumrichter
oder E/A–Erweiterungsbaugruppe zugewiesen
Andere
ist.
Hinweis Wort (n + 1) kann für den Bereichscode oder den analogen Ausgabesollwert
verwendet werden.
Anschluss der analogen Dieser Abschnitt beschreibt, wie eine analoge E/A–Baugruppe an die CPU–
E/A–Baugruppe. Baugruppe angeschlossen wird.
Maximal 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlich
von bis zu 4 analogen E/A–Baugruppen, können mit einer CPM2C–SPS ver-
bunden werden. Es bestehen keine Vorschriften für die Anschlussreihenfolge,
wenn die analoge E/A–Baugruppe zusammen mit anderen Erweiterungs– oder
E/A–Erweiterungsbaugruppen verwendet wird.
E/A–
CPU– Analoge E/A–Baugruppen Erweiterungs–
Baugruppe CPM2C–MAD11 baugruppe
175
Analoge E/A–Funktionen Abschnitt 3-1
E/A–Zuweisung
Ein–/Ausgänge werden der analogen E/A–Baugruppe auf die gleiche Weise zu-
gewiesen, wie anderen Erweiterungs– oder E/A–Erweiterungsbaugruppen; die
Zuweisung beginnt mit dem nächsten Wort, das dem zu letzt zugewiesenen
Wort der CPU–Baugruppe folgt oder das der vorhergehenden Erweiterungs-
baugruppe oder E/A–Erweiterungsbaugruppe zugewiesen wurde. Die Zuwei-
sung ist wie folgt, wenn “m” das letzte zugewiesene Eingangswort und “n” das
letzte zugewiesene Ausgangswort auf der CPU–Baugruppe oder der vorherge-
henden Erweiterungs– oder E/A–Erweiterungsbaugruppe ist:
Analoge E/A–Baugruppe CPM2C–MAD11
CPU–Baugrp.eing.: IR 000
Analogeingang 0: IR 001
Analogeingang 1: IR 002
CPU–Baugrp.ausg.: IR 010
Analogausgang: IR 011
Einstellung des E/A– E/A–Signalbereiche werden durch Einstellung des DIP–Schalters für analoge
Signalbereichs Spannungen konfiguriert und indem ein Bereichscode ins Ausgangswort der
analogen E/A–Baugruppe geschrieben wird. E/A–Signalbereiche werden
durch Einstellung des DIP–Schalters für analoge Ströme konfiguriert.
E/A–Erweiterungs–
steckverbinder
E/A–Erweiterungs–
steckverbinder DIP–Schalter
Aktiviert die Mittelwertfunktion für
die Eingänge und das Umschalten
zwischen Spannungs– und Stro-
meingängen
Analog–Eingangsklemmen Analog–Ausgangsklemmen
DIP–Schaltereinstellungen
Stellen Sie den DIP–Schalter wie nachfolgend gezeigt ein. Alle Schalter sind
werksseitig auf OFF gesetzt.
---
176
Analoge E/A–Funktionen Abschnitt 3-1
! Vorsicht Stellen Sie sicher, die Schalter des DIP–Schalters zum Auswählen des Ein-
gangstyps auf OFF zu setzen, wenn ein Spannungseingang gewünscht wird.
Diese Schalter werden nur für einen Stromeingang auf ON gestellt.
Hinweis Berühren Sie den DIP–Schalter nicht während des Betriebs. Statische Elektrizi-
tät könnte Verarbeitungssfehler verursachen.
Bereichscode
Um Daten zu konvertieren muss der Bereichscode für die analoge E/A–Bau-
gruppe eingestellt werden.
Die Bereichscode–Einstellungen ermöglichen kombinierte Signalbereiche für
Analogein– und –ausgänge, wie es in der folgenden Tabelle dargestellt ist.
Bereichs– Analogeingang 1 Analogeingang 2 Analog–
code Signalbereich Signalbereich Ausgangs–
signalbereich
000 –10 bis 10 V –10 bis 10 V
001 0 bis 10 V 0 bis 10 V
010 1 bis 5 V oder 4 bis 20 mA 1 bis 5 V
(wird über DIP–Schalter ausgewählt)
011 1 bis 5 V oder 0 bis 20 mA 0 bis 20 mA
(wird über DIP–Schalter ausgewählt)
100 --- 4 bis 20 mA
Beispiel
Die folgenden Befehle stellten Analogeingang 0 auf 4 bis 20 mA, Analogeingang
1 auf 0 bis 10 V und den Analogausgang auf –10 bis 10 V ein.
SR 25315
(Erster Zyklus–EIN–Merker)
MOV(21)
#800A Analogeingang 0: 4 bis 20 mA
011 Analogeingang 1: 0 bis 10 V
Analogausgang: –10 bis 10 V
177
Analoge E/A–Funktionen Abschnitt 3-1
510 kΩ 0+ V+
Interne Schaltungen
Interne Schaltungen
Eingang 0
250 Ω
0– – Ausgang
510 kΩ
1+
510 kΩ I+
Eingang 1
250 Ω
1–
510 kΩ N.v.
AM
N.v.
Anschlussbelegungen
Analogeingangs– Analogausgangs–
klemmen klemmen
EIN EIN
Analogeing. 0 + 0+ V+ Analog. Span.–ausg.
Analogeing. 0 – 0– – Ausgang, Masse
Analogeing. 1 + 1+ I+ Analog. Stromausg.
Analogeing. 1 – 1– NC Nicht verwendet
Analoge Masse AG NC Nicht verwendet
Analogeingangsverdrahtung
Analoges + +
Analoge
Ausgabe-
E/A–Bau-
gerät
– – gruppe
Analoge Ausgangsverdrahtung
V+ + Analoges I+ + Analoges
Analoge Gerät mit Analoge Gerät mit
E/A–Bau- Spannungs- E/A–Bau- Strom–
gruppe – – eingang gruppe – – eingang
Hinweis 1. Verwenden Sie abgeschirmtes, verdrilltes Kabel, schließen Sie aber die Ab-
schirmung nicht an.
2. Verlegen Sie die Verkabelung getrennt von Versorgungsspannungsleitun-
gen (AC–Spannungsversorgungskabel, Versorgungsspannungsleitungen,
usw.)
3. Schließen Sie die Klemmen + und – kurz, wenn ein Eingang nicht verwendet
wird.
4. Verlegen Sie die Verkabelung getrennt von Versorgungsspannungsleitun-
gen (AC–Spannungsversorgung, Hochspannung, usw.)
5. Installieren Sie bei Störungen in der Spannungsversorgung einen Entstör-
filter am Eingangsteil und an der Spannungsversorgung–Baugruppe.
178
Analoge E/A–Funktionen Abschnitt 3-1
Referenzinformationen
Beachten Sie die folgenden Informationen über offene Eingangskreise, wenn
Sie Spannungseingänge verwenden.
Wird die gleiche Spannungsversorgung verwendet, wie es im folgenden Dia-
gramm dargestellt ist und tritt eine offene Schaltung an Eingang A oder B auf,
fließt ein unerwünschter Strom, wie es von den gestrichelten Linien in der Abbil-
dung dargestellt wird, wodurch eine Spannung von ca. 33% bis 50% am ande-
ren Eingang erzeugt wird. Wird der 5 V–Bereich verwendet, arbeitet die Draht-
bruch–Erfassungsfunktion nicht. Tritt eine offene Schaltung an Punkt C auf, ar-
beitet die Drahtbruch–Erfassungsfunktion ebenfalls nicht, da die negativen Sei-
ten gleich sind.
A
Gerät
mit
Analo-
gaus-
gang 1 B C
Gerät
mit
Analo-
gaus-
gang 2
24 VDC
Gibt, z. B. ein analoges Gerät 2 5 V aus und wird die gleiche Spannungsversor-
gung verwendet, wie es oben dargestellt ist, liegen ca. 33% oder 1,6 V an dem
Eingang für Eingabegerät 1 an.
Um das obenstehende Problem zu beheben, müssen entweder separate Span-
nungsversorgungen verwendet oder eine galvanische Trennung an jedem Ein-
gang installiert werden. Dieses Problem tritt nicht bei Stromeingängen auf, auch
wenn die gleiche Spannungsversorgung verwendet wird.
Hinweis Wird Spannung angelegt (bei der Einstellung des Bereichscodes) oder tritt eine
Versorgungsspannungsunterbrechung auf, kann eine impulsförmige Ausgabe
am Analogausgang mit einer Dauer von bis zu 1 ms generiert werden.
Sie müssen die nachfolgend beschriebenen Gegenmaßnahmen vorsehen, falls
dies Probleme beim Betrieb verursacht wird.
• Schalten Sie die Spannungsversorgung der CPM2C–CPU–Baugruppe zuerst
ein und dann, nachdem Sie sichergestellt haben, dass eine einwandfreie Re-
aktion erfolgt, die Spannungsversorgung der Last.
• Schalten Sie die Spannungsversorgung der Last aus, bevor Sie die Span-
nungsversorgung der CPM2C–CPU–Baugruppe ausschalten.
Kontaktplan–Programm
Spezifizieren des Bereichscodes
Spezifizieren Sie den E/A–Signalbereich, indem Sie den Bereichscode im er-
sten Zyklus der Programmausführung über den Kontaktplan in das Ausgangs-
179
Analoge E/A–Funktionen Abschnitt 3-1
SR 25313
(Immer–EIN–Merker)
TIM 005 TIM 005 wird ausgeführt, sobald die
#0002 Spannung eingeschaltet wird. Nach
0,1 bis 0,2 s (100 bis 200 ms) schal-
T005 tet sich der Fertigmerker für TIM 005
MOV(21) ein und die gewandelten Daten des
Analog–eingangs werden von IR 001
001 gelesen und in DM 0000 gespei-
DM 0000 chert.
Handhabungsprobleme
Tritt ein Fehler in einer analogen E/A–Baugruppe auf, werden die Fehlermerker
in AR 0200 bis AR 0204 gesetzt. Die Adressen der Fehlermerker werden in der
Reihenfolge aktiviert, in der die Erweiterungs– und E/A–Erweiterungsbaugrup-
pen an die SPS angeschlossen sind, wobei AR 0200 für die Erweiterungs– oder
E/A–Erweiterungsbaugruppe verwendet wird, die der CPU–Baugruppe am
nächsten ist. Verwenden Sie diese Merker im Programm, falls eine Fehleraus-
wertung erfolgen soll.
Tritt ein Fehler in der analogen E/A–Baugruppe auf, beträgt der Wert der Ana–
logeingangsdaten 0000 und 0 V/0 mA wird als analoge Ausgabe ausgegeben.
Tritt ein CPU–Fehler oder E/A–Busfehler (schwerwiegender Fehler) in der
CPU–Baugruppe auf und ist die Analogausgabe auf 1 bis 5 V oder 4 bis 20 mA
eingestellt, wird 0 V oder 0 mA ausgegeben. Bei anderen schwerwiegenden
Fehlern an der CPU–Baugruppe wird 1 V oder 4 mA ausgegeben.
180
Temperaturfühler–Baugruppen Abschnitt 3-2
Programmbeispiel)
In diesem Programmbeispiel werden die folgenden Bereiche verwendet:
Analogeingang 0: 0 bis 10 V
Analogeingang 1: 4 bis 20 mA
Analogausgang: 0 bis 10 V
25315
(Erster Zyklus EIN–Merker)
MOV(21)
#8051
011
25313 Schreibt den Bereichscode (8051) in die Baugruppe.
(Immer–EIN–Merker)
TIM 005
Ausführungs- #0002
Ausführungs- DM 0000
Liest den gewandelten Wert von Analogeingang 0.
TIM 005 bedingung
CMP (20)
002
#8000
25506(=)
01000 Drahtbruch–Alarm
Ausführungs-
bedingung
TIM 005
MOV(21)
002
3-2 Temperaturfühler–Baugruppen
3-2-1 Temperaturfühler–Baugruppen der CPM1A/CPM2A
Bis zu drei Erweiterungsbaugruppen oder E/A–Erweiterungsbaugruppen kön-
nen mit der CPU–Baugruppe der CPM1A oder CPM2A verbunden werden.
Eine, zwei oder alle drei dieser Baugruppen können CPM1A–TS001 oder
CPM1A–TS101 Temperaturfühler–Baugruppen sein. Wird ein CPM1A–TS002
oder CPM1A–TS102 Temperaturfühler–Baugruppe mit der CPU–Baugruppe
verbunden, dann kann nur eine andere Erweiterungs– oder E/A–Erweiterungs-
baugruppe angeschlossen werden. Die andere Baugruppe kann eine
CPM1A–TS001/TS101–Temperaturfühler–Baugruppe sein.
Jede CPM1A–TS001/TS101–Temperaturfühler–Baugruppen bietet 2 Ein-
gänge und jede CPM1A–TS002/TS102 Temperaturfühler–Baugruppen bietet 4
Eingänge; hierdurch stehen bis zu 6 Temperaturfühler–Eingänge für eine
181
Temperaturfühler–Baugruppen Abschnitt 3-2
Thermoelemente
oder Platin–Wider-
standsthermometer Temperaturfühler–Eingänge
Technische Daten
CPM1A–TS001 CPM1A-TS002 CPM1A-TS101 CPM1A-TS102
Temperaturfühler Thermoelemente Platin–Widerstandsthermometer
Umschaltbar zwischen K und J, aber der Umschaltbar zwischen Pt100 und JPt100,
gleiche Typ muss für alle Eingänge aber der gleiche Typ muss für alle
verwendet werden. Eingänge verwendet werden.
Anzahl der Eingänge 2 4 2 4
Zugewiesene Eingangsworte 2 4 2 4
Max. Anzahl der Baugruppen 3 1 3 1
(Sehen Sie den Hinweis 1)
Genauigkeit (Der größere von±0,5% des gewandelten (Der größere von±0,5% des gewandelten
Wertes oder max. ±2_C) ±1 Ziffer (sehen Wertes oder max. ±1_C) ±1 Ziffer
Sie Hinweis 2).
Konvertierungszeit 250 ms für 2 oder 4 Eingänge
Gewandelte 16 Bit–Binärdaten (4–stelliger Hexadezimal–Wert)
Temperaturdaten
Galvanische Trennung Optokoppler zwischen allen Temperatureingangssignalen
182
Temperaturfühler–Baugruppen Abschnitt 3-2
Thermoelemente
oder Platin–Wider-
standsthermometer Temperaturfühler–Eingänge
max. 8 Eingänge
Technische Daten
CPM2C-TS001 CPM2C-TS101
Temperaturfühler Thermoelemente Platin–Widerstands–
Umschaltbar zwischen K thermometer
und J, aber der gleiche Umschaltbar zwischen
Typ muss für alle Pt100 und JPt100, aber
Eingänge verwendet der gleiche Typ muss für
werden. alle Eingänge verwendet
werden.
Anzahl der Eingänge 2
Zugewiesene Eingangsworte 2
Max. Anzahl der Baugruppen 4 4
(Sehen Sie den Hinweis 1)
Genauigkeit (Der größere von±0,5% (Der größere von±0,5%
des gewandelten Wertes des gewandelten Wertes
oder max. ±2_C) ±1 oder max. ±1_C) ±1
Ziffer (sehen Sie den Ziffer
Hinweis).
Konvertierungszeit 250 ms für 2 Eingänge
Gewandelte 16 Bit–Binärdaten (4–stelliger Hexadezimal–Wert)
Temperaturdaten
Galvanische Trennung Optokoppler zwischen allen
Temperatureingangssignalen
Hinweis 1. Die Genauigkeit für ein Element des Typs K beträgt bei –100°C oder weni-
ger max. ±4_C ± 1 Ziffer.
2. Die Fehlerabweichung für Temperaturen in °F entspricht dem doppelten
von °C.
183
Temperaturfühler–Baugruppen Abschnitt 3-2
CPM1A/CPM2A–Temperaturfühler–Baugruppenzuweisungen
Temperaturfühler–Baugruppen werden auf die gleiche Weise Worte zugewie-
sen, wie anderen Erweiterungs– und E/A–Erweiterungsbaugruppen: in der Rei-
henfolge, in der die Baugruppen angeschlossen werden. Einer Temperaturfüh-
ler–Baugruppe werden somit die nächsten Eingangsworte nach der Baugruppe
zugewiesen, mit der sie verbunden ist (CPU– oder andere Baugruppe).
Hinweis Nur eine Temperaturfühler–Baugruppe mit 4 Eingängen (CPM1A–TS002 oder
CPM1A–TS102, 4 zugewiesene Worte) kann direkt an die CPU–Baugruppe an-
geschlossen werden. Es bestehen jedoch keine Einschränkungen in der An-
schlussreihenfolge.
184
Temperaturfühler–Baugruppen Abschnitt 3-2
Wortzuweisungen
Der CPM1A–TS001 und CPM1A–TS101 werden jeweils zwei Worte (eines für
jeden Eingang) zugewiesen. Ausgangsworten werden nicht zugewiesen.
CPM1A–TS001/101
CPU–Baugruppe mit E/A–Erweiterungsbau- Erweiterungsbaugruppe Temperaturfühler–Bau-
40 Anschlüssen gruppe mit 20 E/A mit 8 Eingängen gruppe
Wortzuweisungen
Der CPM1A–TS002 und CPM1A–TS102 werden jeweils vier Worte (eines für
jeden Eingang) zugewiesen. Ausgangsworten werden nicht zugewiesen.
IR 000 IR 004
Eingangswort–Adressen IR 001 IR 003 IR 005
IR 002 IR 006
IR 007
IR 010
Ausgangswort–Adressen IR 011 IR 013
Kein
IR 012
CPM2C–Temperaturfühler–Baugruppenzuweisungen
Bis zu vier CPM2CTS001/101–Temperaturfühler–Baugruppen können ange-
schlossen werden. Bis max. fünf Erweiterungs– und E/A–Erweiterungsbau-
gruppen können angeschlossen werden (einschließlich Temperaturfühler–
185
Temperaturfühler–Baugruppen Abschnitt 3-2
Wortzuweisung
Temperaturfühler–Baugruppen werden auf die gleiche Weise Worte zugewie-
sen, wie anderen Erweiterungs– und E/A–Erweiterungsbaugruppen: in der Rei-
henfolge, in der die Baugruppen angeschlossen werden. Einer CPM2C–
TS001– oder CPM2C–TS101–Temperaturfühler–Baugruppe werden somit die
nächsten zwei Eingangsworte nach der Baugruppe, an die diese angeschlos-
sen ist (CPU– oder andere Baugruppe), zugewiesen. Ausgangsworten werden
nicht zugewiesen.
CPM2C–TS001 CPM2C–TS001 CPM2C–TS101 CPM2C–TS101 CPM2C–24EDTC–
CPU–Baugruppe Temperaturfüh- Temperaturfüh- Temperaturfüh- Temperaturfüh- E/A–Erweiterungs-
mit 20 Anschlüssen ler–Baugruppe ler–Baugruppe ler–Baugruppe ler–Baugruppe baugruppe
186
Temperaturfühler–Baugruppen Abschnitt 3-2
CPM1A/CPM2A–Temperaturfühler–Baugruppen
CPM1A–TS001/002/101/102
DIP–Schalter Drehschalter
Wird verwendet, um die Wird verwendet,
Temperaturmasseinheit um den Tempera-
und die Anzahl der ver- turbereich einzu-
wendeten Dezimalstel- stellen.
len einzustellen.
Temperatureingänge
CPM2C–Temperaturfühler–Baugruppen
CPM2C–TS001/101
E/A–Erweiterungssteck–
verbinder (Ausgang)
E/A–Erweiterungs–
steckverbinder (Eingang)
Cold–Junction–
Kompensation
(nur TS001) Temperatureingänge
DIP–Schalter
Wird verwendet, um die Tempe-
raturmasseinheit und die An-
zahl der verwendeten Dezimal-
stellen einzustellen.
Drehschalter
Wird verwendet, um den
Temperaturbebereich einzu-
stellen.
DIP–Schalter– Der DIP–Schalter wird dazu verwendet, die Temperaturmasseinheit (°C oder
einstellungen °F) und die Anzahl der verwendeten Nachkommastellen einzustellen.
CPM1A-TSjjj CPM2C-TSjjj
---
SW 1
--- F C
---
1 2
1
2
Schalter 1 Einstellung
1 Temperaturmasseinheit
e e a u asse e AUS °C
EIN °F
2 Anzahl verwendeter AUS Normal (0 oder 1 Ziffer nach dem
Nachkommastellen Komma, je nach Eingabebereich)
EIN 2–Dezimalstellen–Betriebsart
(z.B., 0.01)
Hinweis Sehen Sie für Einzelheiten über die 2–Dezimalstellen–Betriebsart 3-2-8 Zwei–
Dezimalstellen–Betriebsart.
187
Temperaturfühler–Baugruppen Abschnitt 3-2
! Vorsicht Stellen Sie den Temperaturbereich entsprechend dem mit der Baugruppe ver-
bundenen Temperaturfühler ein. Temperaturdaten werden nicht richtig gewan-
delt, wenn der Temperaturbereich nicht dem Fühler entspricht.
! Vorsicht Stellen Sie den Temperaturbereich nicht auf einen anderen Wert ein als den, der
in der folgenden Tabelle für den Temperaturbereich aufgeführt ist. Eine falsche
Einstellung kann Funktionsfehler verursachen.
Temperatureingang 0
Temperatureingang 1 Cold–Junction–Kompensation
188
Temperaturfühler–Baugruppen Abschnitt 3-2
CPM1A-TS002
K– oder J–Thermoelemente können angeschlossen werden, aber alle vier
Thermoelemente müssen vom gleichen Typ sein und der gleiche Eingabebe-
reich muss für alle verwendet werden.
Temperatur– Temperatur–
eingang 0 eingang 2
Cold–Junction–
Temperatur– Kompensation Temperatur–
eingang 1 eingang 3
Hinweis Beachten Sie beim Einsatz einer Temperaturfühler–Baugruppe mit einem Ther-
moelementeingang die folgenden Vorsichtsmaßnahmen:
• Entfernen Sie nicht den Cold–Junction–Kompensator, der zum Zeitpunkt
der Lieferung befestigt ist. Wird dieser entfernt, ist die Baugruppe nicht in
der Lage, die Temperaturen richtig zu messen.
• Jeder der Eingangskreise wurde mit dem an die Baugruppe angeschlos-
senen Cold–Junction–Kompensator kalibriert. Deshalb kann die Bau-
gruppe auch nicht mit einem Cold–Junction–Kompensator einer anderen
Baugruppe verwendet werden, da dann ebenfalls die Temperaturen nicht
richtig gemessen werden.
• Berühren Sie den Cold–Junction–Kompensator nicht. Hierdurch können
ebenfalls falsche Temperaturmessung entstehen.
Platin–Widerstands–
thermometer CPM1A-TS101
Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossen
werden, aber beide Thermometer müssen vom gleichen Typ sein und der glei-
che Eingabebereich muss für beide verwendet werden.
Pt Pt
Temperatureingang 0 Temperatureingang 1
CPM1A-TS102
Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossen
189
Temperaturfühler–Baugruppen Abschnitt 3-2
werden, aber alle vier Thermometer müssen vom gleichen Typ sein und der glei-
che Eingabebereich muss für alle verwendet werden.
Pt Pt Pt Pt
Hinweis Legen Sie keine Verkabelungen an den Klemmen auf, die nicht als Eingänge
verwendet werden.
0+
0–
Temperatureingang 0
NC
1+
1–
Temperatureingang 1 NC
Cold–Junction–
Kompensation
Hinweis Beachten Sie beim Einsatz einer Temperaturfühler–Baugruppe mit einem Ther-
moelementeingang die folgenden Vorsichtsmaßnahmen:
• Berühren Sie den Cold–Junction–Kompensator nicht. Hierdurch können
ebenfalls falsche Temperaturmessung entstehen.
CPM2C–TS101 (Platin–Widerstandsthermometer)
Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossen
werden, aber beide Thermometer müssen vom gleichen Typ sein und der glei-
che Eingangsbereich muss für beide verwendet werden.
0A
Pt 0B
Temperatureingang 0 0B
1A
Pt 1B
Temperatureingang 1 1B
190
Temperaturfühler–Baugruppen Abschnitt 3-2
3-2-7 Kontaktplanprogrammierung
Gewandelte Die Temperaturdaten werden als 4–stelliger Hexadezimalwert in den der Tem-
Temperaturdaten peraturfühler–Baugruppe zugewiesenen Eingangsworten gespeichert.
CPM1A-TS001/TS101 und CPM2C-TS001/TS101
“m” ist das letzte Wort, das der CPU–, Erweiterungs– oder E/A–Erweiterungs-
baugruppe, die unmittelbar vor der Temperaturfühler–Baugruppe angeschlos-
sen ist, zugewiesen wurde.
Wort
m+1 Konvertierte Temperaturdaten von Eingang 0
m+2 Konvertierte Temperaturdaten von Eingang 1
CPM1A-TS002/TS102
“m” ist das letzte Wort, das der CPU–, Erweiterungs– oder E/A–Erweiterungs-
baugruppe, die unmittelbar vor der Temperaturfühler–Baugruppe angeschlos-
sen ist, zugewiesen wurde.
Wort
m+1 Konvertierte Temperaturdaten von Eingang 0
m+2 Konvertierte Temperaturdaten von Eingang 1
m+3 Konvertierte Temperaturdaten von Eingang 2
m+4 Konvertierte Temperaturdaten von Eingang 3
Alle Temperaturfühler–Baugruppen
Negative Werte werden als 2er–Komplemente gespeichert. Daten für
Bereichscodes, die eine Ziffer nach dem Komma beinhalten, werden ohne das
Komma gespeichert, d.h. das 10–fache des tatsächlichen Wertes wird
gespeichert. Einige Beispiele sind in der folgenden Tabelle aufgeführt.
Eingang Datenwandlungs–Beispiele
Einheit: 1° K oder J 850° → 0352 Hex
–200° → FF38 Hex
Einheit: 0,1° K, J, Pt oder JPt 10 x 500,0° → 5000 → 1388 Hex
–20,0° → –200 → FF38 Hex
–200,0° → –2000 → F830 Hex
25313
(Immer–EIN–Merker)
CMP (20)
001 Dieser Wert zeigt an, dass die Temperatur-
datenumwandlung begonnen hat.
#7FFE
25506 (=)
02000 Anwenderdefinierter Merker, der anzeigt,
dass die Initialisierung beendet wurde
Hinweis Die Temperarurdaten werden auf den Wert 7FFE gesetzt, bis die tatsächlichen
Werte vorliegen.
191
Temperaturfühler–Baugruppen Abschnitt 3-2
Handhabungsprobleme Tritt ein Fehler in einer Erweiterungsbaugruppe auf, werden die Fehlermerker in
AR 0200 bis AR 0204 aktiviert (AR 0200 bis AR 0202 für die CPM1A/CPM2A).
Sehen Sie Seite 554 für weitere Information. Die Adressen der Fehlermerker lie-
gen in der Reihenfolge, in der die Erweiterungsbaugruppen an die SPS ange-
schlossen sind, wobei AR 0200 für die Erweiterungsbaugruppe verwendet wird,
die der CPU–Baugruppe am nächsten ist. Verwenden Sie diese Merker im Pro-
gramm, falls eine Fehlerauswertung erfolgen soll.
Tritt ein Fehler in einer Temperaturfühler–Baugruppe auf, besitzen die gewan-
delten Temperaturdaten den Wert 7FFF.
Hinweis Der Status von AR 0200 bis AR 0204 ändert sich nicht bei einer Drahtbruch–Er-
fassung.
Programmierbeispiel 1 Das folgende Programmierbeispiel zeigt, wie die Eingabedaten von 2 Tempera-
turfühler–Eingänge in BCD–Werte umgewandelt werden und das Ergebnis in
DM 0000 und DM 0001 abgespeichert wird. Die folgende Systemkonfiguration
wird verwendet.
CPU–Baugruppe mit Temperaturfühler–
20 Anschlüssen Baugruppe
Eingänge Eingänge
IR 000 IR 001
IR 002 Temperaturfühler–Baugrp.einstellung: AUS (°C)
Zwei–Dezimalstellen–Betriebsart: AUS (normal)
Eingabebereichs–Einstellung: 1 (K2, 0,0 bis 500,0°C)
Speicherwort Temperatureingang 0: IR 001
Ausgänge Ausgänge Speicherwort Temperatureingang 1: IR 002
IR 010 Kein
192
Temperaturfühler–Baugruppen Abschnitt 3-2
25313
(Immer–EIN–Merker)
CMP (20) Erfasst den Abschluss der Initialisierung von Eingang 0.
001
#7FFE
25506(=)
02000 EIN, wenn Eingang 0 initialisiert wurde
25313
(Immer–EIN–Merker)
CMP (20) Erfasst den Abschluss der Initialisierung von Eingang 1.
002
#7FFE
25506
02001 EIN, wenn Eingang 1 initialisiert wurde
02000 Ausführungsbedingung
CMP (20) Erkennt einen Drahtbruch–Alarm oder einen Bau-
001
gruppenfehler und setzt die Temperaturdaten auf den
Fehlercode 7FFF.
#7FFF
25506(=)
01000 EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-
penfehler für Eingang 0 erkannt wurde.
25505(>)
01001 Ein, für einen Eingang 0–Temperaturfehler
25507(<)
BCD (24) Konvertiert den Inhalt von IR 001 (Temperaturdaten
001
für Eingang 0) in einen BCD–Wert und speichert
das Ergebnis in DM 0000.
DM 0000
02001 Ausführungsbedingung
CMP (20) Erkennt einen Drahtbruch–Alarm oder einen Bau-
002 gruppenfehler und setzt die Temperaturdaten auf den
Fehlercode 7FFF.
#7FFF
25506(=)
01002
EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-
penfehler für Eingang 1 erkannt wurde.
CMP (20)
Überprüft, ob die Temperaturdaten in IR 002 500,0 °C
002 (1388 hex., ohne Komma) überschritten haben.
#1388
25505(>)
01003 Ein, für einen Eingang 1–Temperaturfehler
25507(<)
BCD (24) Konvertiert den Inhalt von IR 002 (Temperaturdaten
für Eingang 1) in einen BCD–Wert und speichert
002
das Ergebnis in DM 0001.
DM 0001
Programmierbeispiel 2 Das folgende Programmierbeispiel zeigt, wie die Eingabedaten von Tempera-
turfühler–Eingang 0 in BCD–Werte umgewandelt werden und das Ergebnis in
DM 0000 und DM 0001 abgespeichert wird. “0001” wird in DM 0001 gespei-
chert, wenn die Eingabedaten einen negativen Wert darstellen. Die folgende
193
Temperaturfühler–Baugruppen Abschnitt 3-2
Eingänge Eingänge
IR 000 IR 001
IR 002 Temperaturfühler–Baugrp.–einstell.: AUS (°C)
Zwei–Dezimalstellen–Betriebsart: AUS (normal)
Eingabebereichs–Einstellung: 1 (Pt100, –200.0 bis 650.0°C)
Speicherwort von Temperatureingang 0: IR 001
Ausgänge Ausgänge
IR 010 Kein
25313
(Immer–EIN–Merker)
25606 (=)
02000 EIN, wenn Eingang 0 initialisiert wurde
02000 Ausführungsbedingung
CMP (20) Erkennt einen Drahtbruch–Alarm oder einen Bau-
gruppenfehler und setzt die Temperaturdaten auf den
001
Fehlercode 7FFF.
#7FFF
25506(=)
01000 EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-
penfehler für Eingang 0 erkannt wurde.
25506(=) 00115
BCD (24) Sind die Eingabetemperaturdaten nicht negativ,
001 wird der Inhalt von IR 001 (Temperaturdaten für
Eingang 0) in einen BCD–Wert konvertiert und das
DM 0000
Ergebnis in DM 0000 gespeichert.
MOV(21)
Speichert #0000 in 0001
#0000 DM.
DM 0001
00115
CLC(41)
SBB (51)
Sind die Eingabetemperaturdaten negativ, wird der
#0000 Inhalt von IR 001 in den absoluten Wert der Isttem-
001 peratur konvertiert und das Ergebnis in DM 0010
gespeichert.
DM 0010
BCD (24)
Konvertiert den Inhalt von DM 0010 (absoluter Wert
der negativen Temperaturdaten für Eingang 0) in
DM 0010 einen BCD–Wert und speichert das Ergebnis in
DM 0000 DM 0000.
194
Temperaturfühler–Baugruppen Abschnitt 3-2
25313
(Immer–EIN–Merker)
CMP (20) Erkennt den Abschluss der Initialisierung.
001
#7FFE
25506(=)
02000 EIN, wenn die Initialisierung abgeschlossen ist.
02000 Ausführungsbedingung
CMP (20) Erfasst einen Drahtbruch–Alarm.
001
#7FFF
25506(=)
01000 EIN, wenn ein Drahtbruch–Alarm erkannt wurde.
25506(=)
SCL2 (–)
001
Parametereinstellungen
DM 0010 für Datenumwandlung:
DM 0000 DM 0010 #0000 Offset
DM 0011 #0001 ∆X (hex.)
DM 0012 #0001 ∆Y (BCD)
25504 (CY)
MOV(21) Speichert #0000 in DM 0001, wenn der konver-
tierte Wert nicht negativ ist.
#0000
DM 0001
25504 (CY)
MOV(21) Speichert #0001 in DM 0001, wenn der konver-
tierte Wert negativ ist.
#0001
DM 0001
Betrieb
Binär–zu–BCD–Konvertierung
IR 001 163 162 161 160
Zur Anzeige eines negativen
Ergebnisses auf EIN gesetzt. DM 0000 CY (bei Einsatz des SCL2–Befehls)
0 0 0 1/0 103 102 101 100 1/0
195
Temperaturfühler–Baugruppen Abschnitt 3-2
3-2-8 Zwei–Dezimalstellen–Betriebsart
Wird Schalter 2 des DIP–Schalters eingeschaltet, werden Werte als zweistellige
Dezimalwerte gespeichert. In diesem Fall werden Temperaturdaten als 6–stel-
lige Hexadezimal(binär)–Daten mit 4 Stellen im ganzzahligen Teil und 2 Stellen
nach dem Komma gespeichert. Die tatsächlichen, im Speicher abgelegten Da-
ten entsprechen dem 100–fachen des Istwertes, d.h. das Komma wird nicht an-
gezeigt. In diesem Abschnitt werden Verfahren für die Anwendung dieser Daten
beschrieben.
Hinweis Nach der Einstellung zur Speicherung von Werten mit zwei Dezimalstellen wer-
den Temperaturdaten mit bis zu zwei Stellen nachdem das Komma in 6–stellige
Binärdaten konvertiert; die eigentliche Auflösung beträgt jedoch nicht 0,01°C
(°F). Aus diesem Grund können Sprünge und Ungenauigkeiten in der ersten Zif-
fer nach dem Komma (0,1) auftreten. Betrachten Sie jede höhere Auflösung des
normalen Datenformats als Referenzdaten.
Datenstruktur Die Struktur der im Speicher abgelegten Daten wird nachfolgend angezeigt. Der
Wert entspricht dem 100–fachen der Isttemperatur.
jjjjjj
Links–/rechtsliegend–Merker Zeigt an, ob die äußerst linken oder äußerst rechten 3 Stellen
zur Verfügung gestellt werden.
Temperatureinheit–Merker Zeigt an, ob die Temperatur in °C oder °F verarbeitet wird.
Drahtbruch–Merker Wird eingeschaltet(1), wenn ein Drahtbruch erfasst wird. Die
Temperaturdaten sind 7FF FFF, wenn dieser Merker aktiviert
ist.
196
Temperaturfühler–Baugruppen Abschnitt 3-2
Datenwandlungs– Einige Beispiele von für diverse Temperaturwerte gespeicherten Daten sind
Beispiele nachfolgend dargestellt.
Beispiel 1
Temperatur: 1.130,25°C
×100: 113025
Temperaturdaten : 01B981 hex.
Linksliegende 3 Stellen und Merker
Beispiel 2
Temperatur: –100,12°C
×100: –10012
Temperaturdaten : FFD8E4 (hex., für –10012)
Linksliegende 3 Stellen und Merker
197
Temperaturfühler–Baugruppen Abschnitt 3-2
Beispiel 3
Temperatur: –200,12°F
×100: –20012
Temperaturdaten: FFB1D4 (hex. für –20012)
Linksliegende 3 Stellen und Merker
Beispiel 4
Temperatur: Drahtbruch (°F)
Temperaturdaten: 7FFF FFFF
Linksliegende 3 Stellen und Merker
Fehler
Temperatur-
°F Merker
daten
Rechtsliegend
Hinweis 1. Äußerst linke Stellen werden auf den unteren Speicheradressen gespei-
chert. Verarbeiten Sie die Daten bei der Programmierung auf den unteren
Speicheradressen wie die äußerst linken Stellen.
2. Stellen Sie sicher, dass die Daten mindestens alle 125 ms gelesen werden,
um die CPU–Baugruppenzyklus– und Kommunikationszeit zu berücksichti-
gen. Korrekte Daten stehen möglicherweise nicht zur Verfügung, wenn der
Lesezyklus größer als 125 ms ist.
198
Temperaturfühler–Baugruppen Abschnitt 3-2
Temperaturfühler–Baugrup-
Eingänge Eingänge Eingänge peneinstellung:
IR 000 IR 001 IR 002 OFF (°C)
IR 003
Zwei–Dezimalstellen–Be-
triebsart ON (2 Stellen wer-
Ausgänge Ausgänge Ausgänge den nach dem Komma ge-
IR 010 IR 011 Kein speichert)
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DM 0100 X 163 X 162 X 161 X 160
DM 0101 X 167 X 166 X 165 X 164
199
Temperaturfühler–Baugruppen Abschnitt 3-2
25315
(Erster–Zyklus–Merker)
MOV(21) (1)
#0000
Stellt DM 0103 auf #0100 und
DM 0102 auf #0000 ein.
DM 0102
MOV(21)
#0100
25313 DM 0103
(Immer–EIN–Merker)
CMP (20)
002 Erfasst den Abschluss der Initialisierung
von Eingang 0.
#7FFE
25506(=)
02000 EIN, wenn Eingang 0 initialisiert wurde
201
202
RSET 02001
200
Temperaturfühler–Baugruppen Abschnitt 3-2
HR01
DM 0101
SET 02002
Hinweis Der BCDL(59)Befehl steht nur in der CPM2A und CPM2C zur Verfügung.
Die den Nummern im obenstehenden Kontaktplanbeispiel entsprechenden Da-
tenbewegungen werden im folgenden Diagramm veranschaulicht.
IR 002: Äußerst linke 3 Stellen der Temperaturdaten IR 002: Äußerst rechte 3 Stellen der Temperaturdaten
0 165 164 163 1 162 161 160
(2)
(3)
IR 200 0 165 164 163
(4)
(5)
(9) (8)
Sind Temperaturdaten negativ,wird hier “8” eingetragen (d.h. Sind die Temperaturdaten negativ, werden die
“1” wird in das Bit, das negative Daten anzeigt, geschrieben). Binärdaten in HR 01 und HR 00 in einen
(1) #0100 BCD–Wert konvertiert und in DM 0101 und
(1) #0000
DM 0100 gespeichert.
DM 0103 0 1 0 0 DM 0102 0 0 0 0
(7)
Die 2er–Komplementdaten in IR 202 und IR 201 werden als Binärdaten von den Daten
in DM 0103 DM und DM 0102 subtrahiert und in HR 01 und HR 00 gespeichert.
201
CompoBus/S–E/A–Link–Module Abschnitt 3-3
3-3 CompoBus/S–E/A–Link–Module
Eine SPS der Serie CPM1A, CPM2A oder CPM2C kann als Slave in einer Com-
poBus/S– (oder einer SRM1–CompoBus/S–)Master–Feldbussteuerung arbei-
ten, wenn ein CompoBus/S–E/A–Link–Modul angeschlossen wird. Das Com-
poBus/S–E/A–Link–Modul stellt eine E/A–Verbindung mit 8 Eingangs– und 8
Ausgangsmerkern zwischen der Master–Feldbussteuerung und der SPS her.
Hinweis Für die CPM1A muss eine CPM1A–CPU–Baugruppe mit 30 oder 40 Ein–/Aus-
gängen mit der CompoBus/S–E/A–Link–Baugruppe verbunden werden. Sie
kann nicht mit einer CPM1A–CPU–Baugruppe mit 10 oder 20 Ein–/Ausgängen
verbunden werden.
CompoBus/S–Master–Feldbus-
steuerung (oder SRM1 CompoBus/
S–Master–Feldbussteuerung) CPM1A-SRT21 CPM2C– CPM2C–SRT21
CPM1A/CPM2A– CompoBus/S– CPU– –CompoBus/S–
CPU–Baugruppe E/A–Link–Baugruppe Bau- E/A–Link–Modul
gruppe
202
CompoBus/S–E/A–Link–Module Abschnitt 3-3
Anwendungsverfahren
Legen Sie die Teilnehmeradresse des Die Teilnehmernummer sollte eine einmalige Nummer zwischen 0
CompoBus/S–E/A–Link–Moduls fest und 15 sein.
und stellen Sie den DIP–Schalter ent-
sprechend ein Verwenden Sie den DIP–Schalter, um die die CompoBus/S–Teil-
nehmernummer der E/A–Link–Baugruppe, den Kommunikations-
modus und den Status der Ausgabedaten bei einem Kommunika-
tionsfehler zu spezifizieren.
E/A–Zuweisung
E/A–Worte werden dem CompoBus/S–E/A–Link–Modul auf die gleiche Weise
wie Erweiterungs– und E/A–Erweiterungsbaugruppen zugewiesen: die näch-
sten verfügbaren Ein– und Ausgangsworte werden zugewiesen. Hierbei ist “m”
das letzte zugewiesene Eingangswort und “n” das letzte zugewiesene Aus-
gangswort; dem CompoBus/S–E/A–Link–Modul wird ”m+1” als Eingangswort
und“ ”n+1” als Ausgangswort zugewiesen.
CompoBus/S–E/A–Link–Modul
Wort m+1
Bit 00 bis 07
8 Eingänge
8 Ausgänge
Wort n+1
Bit 00 bis 07
203
CompoBus/S–E/A–Link–Module Abschnitt 3-3
IR 000 IR 002
Eingangsworte IR 001
CPU–Baugrup- CompoBus/S–
pen mit 30 E/A E/A–Link–Mod.
Ausgangsworten IR 010
IR 011 IR 012
15 09 08 07 00
Wort m +1 0 0 0 0 0 0
204
CompoBus/S–E/A–Link–Module Abschnitt 3-3
DIP–Schaltereinstellungen
Verwenden Sie den DIP–Schalter, um die CompoBus/S–Teilnehmernummer
der E/A–Link–Baugruppe, den Kommunikationsmodus und den Status der Aus-
gabedaten bei einem Kommunikationsfehler zu spezifizieren.
CPM1A-SRT21
DIP–Schalter
CPM2C-SRT21
Schalter–
bezeich–
nung
1, 2, 4 und 8 Teilnehmer–Adresseneinstellung
Schalter Schalter
Adresse 8421Adresse 8421
0 0000 8 1000
1 0001 9 1001
2 0010 10 1010
3 0011 11 1011
4 0100 12 1100
5 0101 13 1101
6 0110 14 1110
7 0111 15 1111
1 = ON, 0 = OFF
DR ON Long-Distance–Kommunikationsmodus (sehen Sie Hinweis 2)
OFF High-speed–Kommunikationsmodus
HOLD
O ON Eingänge nach einem Kommunikationsfehler beibehalten
OFF Eingänge nach einem Kommunikationsfehler löschen
Hinweis 1. Schalten Sie immer die Spannungsversorgung aus, bevor Sie die DIP–
Schaltereinstellungen ändern.
2. Berühren Sie nie den DIP–Schalter, wenn die Baugruppe arbeitet. Statische
Elektrizität könnte Verarbeitungssfehler verursachen.
3. Der Long-Distance–Kommunikationsmodus ist nur einsetzbar, wenn eine
der folgenden Master–Feldbussteuerungen angeschlossen wird:
C200HW–SRM21–V1, CQM1–SRM21–V1 oder SRM1–C0j–V2.
205
CompoBus/S–E/A–Link–Module Abschnitt 3-3
(BS –)
Anschluss an das
CompoBus/S–Kom-
munikationskabel.
CPM2C-SRT21
Von der CompoBus/S–
Kommunikations–
verkabelung
BD L BD H
BD H
BD H
BD L
BD L
NC
Zur CompoBus/S–
Kommunikations–
verkabelung
206
KAPITEL 4
Kommunikationsfunktionen
Dieser Abschnitt beschreibt dieVerwendung der Kommunikationsfunktionen der SPS–Systeme CPM1, CPM1A, CPM2A,
CPM2C und SRM1(–V2).
4-1 Einführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
4-1-1 Übersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
4-1-2 Schnittstellenverdrahtung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
4-2 CPM1–/CPM1A–Kommunikationsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
4-2-1 Host–Link–Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
4-2-2 1:1–NT–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . 211
4-2-3 1:1–PC–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . . 212
4-3 CPM2A–/CPM2C–Kommunikationsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . 214
4-3-1 Host–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
4-3-2 Ohne Protokoll–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . 231
4-3-3 1:1–NT–Link–Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
4-3-4 1:1–PC–Link–Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
4-4 SRM1(–V2)–Kommunikationsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
4-4-1 Host–Link–Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
4-4-2 Ohne Protokoll–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . 251
4-4-3 1:1–NT–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . 256
4-4-4 1:n–NT–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . 257
4-4-5 1:1–PC–Link–Kommunikationsmodus . . . . . . . . . . . . . . . . . . . . . . . . . 258
4-5 Host–Link–Befehle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
4-5-1 IR/SR–Bereich lesen – RR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
4-5-2 LR–Bereich lesen – RL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
4-5-3 HR–Bereich lesen – RH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
4-5-4 Istwert lesen – RC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
4-5-5 TC–Status lesen – RG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
4-5-6 DM–Bereich lesen – RD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
4-5-7 AR–Bereich lesen – RJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
4-5-8 IR/SR–Bereich schreiben – WR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
4-5-9 LR–Bereich schreiben – WL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
4-5-10 HR–Bereich schreiben – WH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
4-5-11 Istwert schreiben – WC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
4-5-12 TC–Status schreiben – WG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
4-5-13 DM–Bereich schreiben – WD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
4-5-14 AR–Bereich schreiben – WJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
4-5-15 Sollwert lesen 1 – R# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
4-5-16 Sollwert lesen 2 – R$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
4-5-17 Sollwert ändern 1 – W# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
4-5-18 Sollwert ändern 2 – W$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
4-5-19 Status lesen – MS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
4-5-20 Status schreiben – SC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
4-5-21 Fehler lesen – MF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
4-5-22 Zwangsweises setzen – KS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
4-5-23 Zwangsweises rücksetzen – KR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
4-5-24 Mehrfaches zwangsweises setzen/rücksetzen – FK . . . . . . . . . . . . . . . 277
4-5-25 Zwangsweises Setzen/Rücksetzen aufheben – KC . . . . . . . . . . . . . . . . 278
4-5-26 SPS–Typ lesen – MM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
4-5-27 Test – TS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
4-5-28 Programm lesen – RP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
4-5-29 Programm speichern – WP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
4-5-30 Zusammengefaßte Lesedaten – QQ . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
4-5-31 Abbruch – XZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
4-5-32 Initialisieren – :: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
4-5-33 TXD–Antwort – EX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
4-5-34 Nicht definierter Befehl – IC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
207
Einführung Abschnitt 4-1
4-1 Einführung
4-1-1 Übersicht
CPM1/CPM1A– Die CPM1/CPM1A kommuniziert über ihre Peripherieschnittstelle mittels eines
Kommunikation RS–232C– oder eines RS–422–Adapters.
Host–Link–Kommunikationsmodus
Die CPM1/CPM1A–SPS–Systeme sind mit dem Host–Link–System kompati-
bel. Dies ermöglicht den Anschluss von bis zu 32 SPS an einen Host–Computer.
Ein RS–232C–Adapter wird für die1:1–Kommunikation und ein RS–422–Adap-
ter und ein B500–AL004–Link–Adapter werden für die 1:n–Kommunikation ver-
wendet.
Eine mit einem RS–232C–Adapter ausgerüstete CPM1/CPM1A kann über
Host–Link–Befehle auch mit einem programmierbaren Terminal (NT) von
OMRON kommunizieren.
Sehen Sie Abschnitt 4-2-1 CPM1/CPM1A–Host–Link in diesem Handbuch und
Abschnitt 1–2–2 Host–Link in den Technischen Handbüchern der CPM1 und
der CPM1A für weitere Informationen.
1:1–PC–Link–Kommunikationsmodus
Eine Datenverbindung kann mit einem Datenbereich in einer anderen CPM1–,
CPM1A–, CPM2A–, CPM2C–, CQM1–, C200HX/HG/HE– oder C200HS–SPS
erstellt werden. Für die 1:1–Verbindung wird ein RS–232C–Adapter benötigt.
Sehen Sie Abschnitt 4-2-3 CPM1/CPM1A 1:1–Link in diesem Handbuch und
Abschnitt 1–2–3 1:1–Links in den Technischen Handbüchern der CPM1 und der
CPM1A für weitere Informationen.
1:1–NT–Link–Kommunikationsmodus
Über die 1:1–NT–Link–Verbindung kann die CPM1–/CPM1A–SPS über einen
RS–232C–Adapter mit einem OMRON NT–Terminal (NT–Link–Schnittstelle)
kommunizieren.
Sehen Sie Abschnitt 4-2-2 CPM1/CPM1A–Host–Link in diesem Handbuch und
Abschnitt 1–2–2 Host–Link in dem Technischen Handbuch der CPM1 und der
CPM1A für weitere Informationen.
CPM2A/CPM2C– Die folgenden Kommunikationsmodi werden von den Schnittstellen der
Kommunikation CPM2A/CPM2C unterstützt.
• Host–Link–Kommunikation mit einem Host–Computer
• Aktive (RS–232C)Kommunikation mit einem Computer oder einem anderen
Gerät
• 1:1–PC–Link–Kommunikation mit einer anderen SPS
• 1:1–NT–Link–Kommunikation mit NT–Terminals von OMRON
Dieses Kapitel erläutert die erforderlichen Konfigurationseinstellungen und die
Verfahren zur Verwendung dieser Kommunikationsmodi.
SRM1(–V2)–Kommuni– Die folgenden Kommunikationsmodi werden von den Schnittstellen der
kationsfunktionen SRM1(-V2) ünterstützt.
• Host–Link–Kommunikation mit einem Host–Computer
• Aktive (RS–232C)Kommunikation mit einem Computer oder einem anderen
Gerät
• 1:1–PC–Link–Kommunikation mit einer anderen SPS
• 1:1–NT–Link–Kommunikation mit NT–Terminals von OMRON
Hinweis Die 1:1–NT–Link–Kommunikation ist mit der SRM1–C01 nicht möglich, da
diese nur über eine Peripherieschnittstelle verfügt. Die SRM1–C01 kann im
Host–Link–Modus über einen RS–232C–Adapter an ein programmierbares
Terminal angeschlossen werden.
208
Einführung Abschnitt 4-1
4-1-2 Schnittstellenverdrahtung
Informationen über die Verdrahtung der Kommunikationsschnittstellen finden
Sie in den Technischen Handbüchern der CPM1, CPM1A, CPM2A, CPM2C und
der SRM1–Master–Steuerung.
209
CPM1–/CPM1A–Kommunikationsfunktionen Abschnitt 4-2
4-2 CPM1–/CPM1A–Kommunikationsfunktionen
4-2-1 Host–Link–Kommunikation
Die Host-Link-Kommunikation wird zum Anschluss einer oder mehrerer SPS–
Systeme an einen Host-Computer über ein RS-232C-Kabel eingesetzt. Die
Kommunikation wird hierbei von dem Host–Computer gesteuert. Normaler-
weise gibt der Host-Computer einen Befehl an eine SPS aus, die wiederum au-
tomatisch eine Empfangsbestätigung zurückgibt. Daher wird die Kommunika-
tion ohne aktive Beteiligung der SPS ausgeführt. Einige SPS–Systeme können
ebenfalls Datenübertragungen einleiten, wenn eine direkte Beteiligung erfor-
derlich ist.
Im Allgemeinen stehen zur Implementation des Host–Link–Kommunikations-
modus zwei Verfahren zur Verfügung. Eines basiert auf den C-Modus– und das
andere auf den FINS(CV-Modus)–Befehlen. Die CPM1/CPM1A unterstützt nur
C-Modus–Befehle. Einzelheiten über die zur Verfügung stehenden Host–Link–
Befehle finden Sie im Abschnitt 4-5.
SPS–Konfigurations– Stellen Sie die CPM1/CPM1A–Peripherieschnittstelle für den Host–Link–Kom-
einstellung munikationsmodus entsprechend der folgenden Tabelle ein.
Wort Bit Funktion Einstellung
DM 6650 00 bis 07 Kommunikationsformat1 00
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)
01: Einstellungen im Datenwort DM 6651
08 bis 11 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle 0 (Jeder Wert ist
0: LR 00 bis LR 15 zulässig)
12 bis 15 Kommunikationsmodus1 0
0: Host–Link;
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
DM 6651 00 bis 07 Baudrate1 00 (Jeder Wert
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2 ist zulässig)
08 bis 15 Rahmenformat1 00 (Jeder Wert
ist zulässig)
Start Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade
01: 1 Bit 7 Bits 1 Bit Ungerade
02: 1 Bit 7 Bits 1 Bit Kein
03: 1 Bit 7 Bits 2 Bits Gerade
04: 1 Bit 7 Bits 2 Bits Ungerade
05: 1 Bit 7 Bits 2 Bits Kein
06: 1 Bit 8 Bits 1 Bit Gerade
07: 1 Bit 8 Bits 1 Bit Ungerade
08: 1 Bit 8 Bits 1 Bit Kein
09: 1 Bit 8 Bits 2 Bits Gerade
10: 1 Bit 8 Bits 2 Bits Ungerade
11: 1 Bit 8 Bits 2 Bits Kein
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)1 0000
0000 bis 9999: In ms.
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)1 00 bis 31
00 bis 31 (BCD)
08 bis 15 Nicht verwendet. 00 (Jeder Wert
ist zulässig)
Hinweis 1. Bei einer falschen Einstellung tritt ein geringfügiger Fehler auf. AR 1302
wird auf EIN gesetzt und die Grundeinstellung (0, 00 oder 0000) verwendet.
2. Weitere Informationen über Host–Link–Einstellungen finden Sie in den je-
weiligen Technischen Handbüchern der SPS–Systeme.
210
CPM1–/CPM1A–Kommunikationsfunktionen Abschnitt 4-2
4-2-2 1:1–NT–Link–Kommunikationsmodus
Mit Hilfe dieses Kommunikationsmodus kann die CPM1–/CPM1A–SPS über ei-
nen RS–232C–Adapter mit einem OMRON NT–Terminal (NT–Link–Schnitt-
stelle) kommunizieren.
CPM1–SPS
Programmierbares NT–Terminal RS–232C–Adapter CPM1 CPU–Baugruppe
CPM1 CPU
RS–232C–Kabel
211
CPM1–/CPM1A–Kommunikationsfunktionen Abschnitt 4-2
CPM1A–SPS
RS–232C–
Adapter
Programmierbares NT–Terminal CPM1A CPU–Baugruppe
RS–232C–Kabel
SPS–Konfigurations– In der folgenden Tabelle sind die auf die 1:1–NT–Link–Kommunikation bezoge-
einstellung nen Einstellungen aufgeführt.
Wort Bit Funktion Einstellung
DM 6650 00 bis 07 Kommunikationsformat1 00 oder 01
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)
01: Einstellungen im Datenwort DM 6651
08 bis 11 Einstellung für den 1:1–NT–Link–Kommunikationsmodus unerheblich 0
12 bis 15 Kommunikationsmodus1 4
0: Host–Link;
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.
AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) verwen-
det.
2. Sehen Sie für weitere Informationen über die NT–Link–Einstellungen ande-
rer OMRON–SPS–Systeme das entsprechende Programmierhandbuch
der jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fall
den Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud)
Übertrag.verzöger.–zeit Keine
Teilnehmernummer: 00
4-2-3 1:1–PC–Link–Kommunikationsmodus
Bei einer 1:1–PC–Link–Kommunikation wird eine SPS der Serie CPM1/CPM1A
über einen RS–232C–Adapter und ein Standard–RS–232C–Kabel mit einer an-
deren CPM1/CPM1A, CPM2A/CPM2C, CQM1, C200HX/HG/HE oder C200HS
verbunden. Ein SPS–System dient als Master und das andere als Slave. Über
den 1:1–PC–Link können bis zu 256 Bits (LR 0000 bis LR 1515) in zwei SPS–
Systemen miteinander ausgetauscht werden.
212
CPM1–/CPM1A–Kommunikationsfunktionen Abschnitt 4-2
RS–232C– RS–232C–
Adapter Adapter
CPM1 CPU–Baugruppe CPM1 CPU–Baugruppe
Master Slave
LR 00 LR 00
Daten Schreibbe- Lesebereich Daten
schreiben LR 07 reich LR 07 lesen
LR 08 LR 08
Daten Lesebereich Schreibbereich Daten
lesen LR 15 LR 15 schreiben
1:1–PC–Link– In der CPM1/CPM1A können nur die16 LR–Worte von LR 00 bis LR 15 zur Kom-
Beschränkungen mit einer munikation benutzt werden. Verwenden Sie also nur diese16 Worte in der
CPM1/CPM1A CQM1 oder C200HS, wenn Sie einen 1:1–PC–Link mit einer CPM1/CPM1A
aufbauen. Ein 1:1–PC–Link kann nicht mit einer CPM1–/CPM1A–SPS über
LR 16 bis LR 63 in einer CQM1, C200HX/HG/HE oder C200HS erstellt werden.
SPS–Konfigurations– In der folgenden Tabelle sind die auf die 1:1–PC–Link–Kommunikation bezoge-
einstellung nen Einstellungen aufgeführt.
Wort Bit Funktion Einstellung Einstellung
(Master) (Slave)
DM 6650 00 bis 07 Kommunikationsformat1 00 oder 01 00 oder 01
00: Standard (1 Start–, 7 Daten– und 2 Stopbits,
gerade Parität, 9.600 Baud)
01: Einstellungen im Datenwort DM 6651
08 bis 11 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle 0 0 (Jeder Wert ist
0: LR 00 bis LR 15 zulässig)
12 bis 15 Kommunikationsmodus1 3 2
0: Host–Link;
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.
AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-
wendet.
2. Weitere Informationen über die 1:1–PC–Link–Kommunikation mit einer an-
deren SPS finden Sie im jeweiligen Handbuch dieser SPS.
3. Weitere Informationen über die Anschlussbelegung bei der 1:1–PC–Link–
Kommunikation mit der CPM1/CPM1A finden Sie im Abschnitt 3–4–7 im
Technischen Handbuch der CPM1/CPM1A oder im Abschnitt 3–4–4 des
Technischen Handbuchs der SRM1–Master–Steuerung.
4. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fall
den Wert zurück, damit dieser innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
213
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beispielprogramm Dieses Beispiel zeigt ein Programm, in dem der Zustand von IR 0000 einer
CPM1/CPM1A nach SR 200 in der anderen CPM1/CPM1A kopiert wird.
MOV(21) MOV(21)
LR08 LR00
200 200
LR 00 LR 00
IR 000 Schrei- Schreibbereich Lesebereich Lesen SR 200
ben LR 07 LR 07
LR 08 LR 08
SR 200 Lesen Lesebereich Schreibbereich Schrei– IR 000
ben
LR 15 LR 15
4-3 CPM2A–/CPM2C–Kommunikationsfunktionen
Dieser Abschnitt beschreibt den Einsatzbereich der Kommunikationsfunktio-
nen der CPM2A/CPM2C. Lesen Sie diesen Abschnitt, wenn Sie eine Kommuni-
kation ohne Protokoll, die Host–Link–, 1:1–NT–Link– oder 1:1–PC–Link–Kom-
munikation verwenden möchten.
4-3-1 Host–Link–Kommunikationsmodus
Das in der Host–Link–Kommunikation verwendete Kommunikationsprotokoll ist
ein dialogartiges Protokoll, in dem die SPS Antworten auf Befehle sendet, die
von einem Host–Computer gesendet wurden; es kann dazu verwendet werden,
Daten in Datenbereichen der SPS zu lesen oder in diese zu schreiben und ei-
nige SPS–Vorgänge zu steuern. Ein Kommunikationsprogramm in der SPS ist
nicht erforderlich. Die Host–Link–Kommunikation kann über die Peripherie-
schnittstelle oder die RS–232C–Schnittstelle der CPM2A /CPM2C erfolgen.
CPM2A
Befehle
Host–Computer
Antworten
214
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2A 1:1–Kommunikation
Programmierbares NT–
Terminal
Befehle
Befehle
Antworten
Antworten
Anschluss an die CPM2A–RS–232C– Anschluss an die CPM2A–RS–232C–
Schnittstelle (sehen Sie den Hinweis) Schnittstelle (sehen Sie den Hinweis)
Hinweis Für den Anschluss an die Peripherieschnittstelle ist ein RS–232C–
Adapter oder ein Computer–Anschlusskabel (CQM1–CIF01 oder
CQM1–CIF02) erforderlich.
CPM2C–1:1–Kommunikation
RS–232C–Schnittstelle
Anschlusskabel (Sub–D, 9–polig) CPM2C–CPU–Baugruppe
CBL–209–2M (2 m)
CBL–209–5M (5 m)
CPM2C–CN111 (0,15 m)
CPM2C-CIF01
CPM2C–
CPU–
Bau-
gruppe
CPM2C-CIF11
215
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2A–1:n–Kommunikation
B500–AL004
IBM PC/AT oder Schnittstellen–
Adapter
Befehle
kompatibel
Anschluss an die
Antworten
216
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2C–1:n–Kommunikation
CPM2-CIF01
Bis zu 32 SPS–Systeme
217
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
FCS-Prüfzeich. FCS-Prüfzeich.
Endezeichen Endezeichen
Nächste Rahmenübertragung
aktiviert (d.h. Übertragungsrecht
übergeben)
Teilnehmer–Nr. Teilnehmer–Nr.
Befehlscode Befehlscode
Endecode Endecode
CPM2A/CPM2C
Text Text
FCS-Prüfzeich. FCS-Prüfzeich.
Endezeichen Endezeichen
Rahmen (Antwort) Rahmen (Antwort)
Slave–initiierte Datenübertragungen von der SPS zum Host–Computer können von der CPU–
Kommunikation Baugruppe mit TXD(48) veranlasst werden.
Teilnehmer–Nr.
Befehlscode
CPM2A/CPM2C Text
FCS-Prüfzeich.
Endezeichen
Rahmen (Antwort)
218
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
@ 1
X 10 X 10
0 * ↵
@
Ein ”@”–Symbol muss die Sequenz einleiten.
Teilnehmer–Nr.
Identifiziert die CPM2A/CPM2C–SPS, die mit dem Host–Computer kommuni-
ziert.
Spezifiziert die Teilnehmernummer der CPM2A/CPM2C in der SPS–Konfigura-
tion (DM 6648, DM 6653).
Befehlscode
Angabe eines 2 Zeichen umfassenden Befehlscodes.
Text
Angabe der Befehlsparameter.
FCS-Prüfzeichen
Spezifikation einer 2–Zeichen umfassenden Rahmenprüfsumme. Sehen Sie
Seite 221.
Endezeichen
Spezifizieren Sie zwei Zeichen,“*” und Carriage–Return (CHR$ (13)), um das
Ende des Befehls zu kennzeichnen.
Antwortformat Die Antwort von der CPM2A/CPM2C wird im nachfolgenden Format zurückge-
geben. Erstellen Sie ein Programm, mit dem die Anwortdaten ausgewertet und
verarbeitet werden können.
@ 1
X 10 X 10
0 1
x 16
0
x 16 * CR
@, Teilnehmer–Nr., Befehlscode
Der Inhalt entspricht dem des zurückgegeben Befehls.
Endecode
Der Ausgeführt–Zustand des Befehls (z.B., ob ein Fehler aufgetreten ist oder
nicht) wird zurückgegeben.
Text
Text wird nur bei Daten, z.B. gelesenen Daten, zurückgegeben.
FCS-Prüfzeichen
Die spezifizierte 2 Zeichen Rahmprüfsequenz wird zurückgegeben.
Endezeichen
Spezifizieren Sie zwei Zeichen,“*” und Carriage–Return (CHR$ (13)), um das
Ende der Antwort zu kennzeichnen.
219
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Unterteilende Befehle Nachdem jeder Rahmen vom Host–Computer gesendet wurde, wartet dieser
auf den von der CPM2A/CPM2C gesendeten Begrenzer. Nachdem Empfang
des Begrenzers wird der nächste Rahmen übertragen. Dieser Vorgang wird so-
lange wiederholt, bis der gesamte Befehl übertragen wurde.
Text
FCS-Prüfzeich.
Endezeichen
Rahmen (Antwort)
Unterteilende Antworten Nach dem Empfang der Rahmen vom Host–Computer wird ein Begrenzer an
die CPM2A/CPM2C gesendet. Nach dessen Empfang sendet die CPM2A/
CPM2C den nächsten Rahmen. Dieser Vorgang wird solange wiederholt, bis
alle Antwortrahmen übertragen sind.
Rahmen (Befehl)
Teilnehmer–Nr.
Befehlscode
Host–
Computer Text
FCS–Prüfzeich.
Endezeichen Begrenzer Begrenzer
Teilnehmer–Nr.
Befehlscode Text Text
Endecode
FCS-Prüfzeich. FCS-Prüfzeich.
CPM2A/CPM2C Begrenzer Endezeichen
Text
Rahmen 2 (Antwort) Rahmen 3 (Antwort)
FCS–Prüfzeich.
Begrenzer
Rahmen 1 (Antwort)
220
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Vorsichtsmaßnahmen bei Stellen Sie bei der Aufteilung von Befehlen wie WR, WL, WC, oder WD, die
langen Übertragungen Schreiboperationen ausführen, sicher, dass Daten, die in ein Wort geschrieben
werden, nicht in verschiedene Rahmen aufgeteilt werden. Teilen Sie den Inhalt
der Rahmen so auf, dass diese Unterteilung mit der Unterteilung der Worte
übereinstimmt. Dies wird in der folgenden Abbildung gezeigt.
Daten * ↵
FCS (Blockprüfsumme)
Bei der Übertragung eines Rahmens wird die an Blockprüfsumme (FCS) vor
dem Begrenzer oder Abschlusszeichen positioniert, um zu überprüfen, ob bei
der Übertragung ein Datenfehler aufgetreten ist. Der FCS–Code wird durch
zwei in ASCII–Zeichen konvertierte 8 Bit–Daten ausgedrückt. Die 8 Bit–Daten
sind das Ergebnis einer EXKLUSIV ODER–Funktion, die sequentiell mit jedem
Zeichen, beginnend mit dem ersten Zeichen des Rahmens bis zum letzten Zei-
chen des Textes innerhalb dieses Rahmens, ausgeführt wird. Fehlerhafte Daten
im Rahmen können festgestellt werden, indem die FCS jedes Mal, nachdem ein
Rahmen empfangen wurde, berechnet und das Ergebnis mit der im Rahmen
eingeschlossenen FCS verglichen wird.
@ 1 0 R R 0 0 0 1 4 2 * CR
@ → 40 → 0100 0000
XOR
1 → 31 → 0011 0001
XOR
0 → 30 → 0011 0000
XOR
R → 52 → 0101 0010
XOR
0 → 30 → 0011 0000
XOR
0 → 30 → 0011 0000
XOR
bis
0 → 30 → 0011 0000
XOR
1 → 31 → 0011 0001
Berechnungsergebnisse 0100 0010
↓ ↓ Hexadezimal–Konvertierung.
4 2 Werden wie ASCII–Zeichen be-
handelt.
221
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Beispielprogramm für In diesem Beispiel wird ein einfaches BASIC–Unterprogramm für die
FCS Berechnung und Überprüfung einer FCS–Prüfsumme eines vom Host–PC
empfangenen Rahmens dargestellt.
Die empfangenen Daten beinhalten FCS, Begrenzer oder Endezeichen usw.
Tritt ein Fehler bei der Übertragung auf, können FCS oder andere Daten nicht
übertragen werden. Berücksichtigen Sie dies bitte bei der Programmierung.
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
400 *FCSCHECK
410 L = LEN ( RESPONSE$ ) ’.................Übertragene und empfangene Daten
420 Q = 0 : FCSCK$ = ” ”
430 A$ = RIGHT$ ( RESPONSE$ , 1)
440 PRINT RESPONSE$ , A$ , L
450 IF A$ = ”*” THEN LENGS = LEN ( RESPONSE$ ) – 3
ELSE LENGS = LEN ( RESPONSE$ ) – 2
460 FCSP$ = MID$ ( RESPONSE$ , LENGS + 1 , 2 ) ’.........FCS–Daten empfangen
470 FOR I = 1 TO LENGS ’........................Anzahl der Zeichen in FCS
480 Q = ASC ( MID$ ( RESPONSE$ , I , 1 ) ) XOR Q
490 NEXT I
500 FCSD$ = HEX$ ( Q )
510 IF LEN ( FCS0$ ) = 1 THEN FCSD$ = ” 0 ” + FCSD$ ’........FCS–Ergebnis
520 IF FCSD$ < > FCSP$ THEN FCSCK$ = ” ERR ”
530 PRINT ” FCSD$ = ” ; FCSD$ , ” FCSP$ = ” ; FCSP$ , ” FCSCK$ = ” ; FCSCK$
540 RETURN
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
222
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Befehle
Befehls–c
ee s c CPM2A/CPM2C–Betriebsart Name
a e Seite
Se e
d
ode RUN MONITOR Program
RR Gültig Gültig Gültig IR/SR–Bereich lesen 260
RL Gültig Gültig Gültig LR–Bereich lesen 261
RH Gültig Gültig Gültig HR–Bereich lesen 261
RC Gültig Gültig Gültig TC–Istwert lesen 261
RG Gültig Gültig Gültig TC–Status lesen 262
RD Gültig Gültig Gültig DM–Bereich lesen 263
RJ Gültig Gültig Gültig AR–Bereich lesen 263
WR Ungültig Gültig Gültig IR/SR–Bereich schreiben 264
WL Ungültig Gültig Gültig LR–Bereich schreiben 265
WH Ungültig Gültig Gültig HR–Bereich schreiben 265
WC Ungültig Gültig Gültig TC–Istwert schreiben 266
WG Ungültig Gültig Gültig TC–Status schreiben 266
WD Ungültig Gültig Gültig DM–Bereich schreiben 267
WJ Ungültig Gültig Gültig AR–Bereich schreiben 268
R# Gültig Gültig Gültig Sollwert 1 lesen 268
R$ Gültig Gültig Gültig Sollwert 2 lesen 269
W# Ungültig Gültig Gültig Sollwert 1 ändern 270
W$ Ungültig Gültig Gültig Sollwert 2 ändern 271
MS Gültig Gültig Gültig Status lesen 272
SC Gültig Gültig Gültig Status speichern 273
MF Gültig Gültig Gültig Fehler lesen 274
KS Ungültig Gültig Gültig Zwangsweises setzen 275
KR Ungültig Gültig Gültig Zwangsweises rücksetzen 276
FK Ungültig Gültig Gültig Mehrfaches zwangsweises setzen/rücksetzen 277
KC Gültig Gültig Gültig Zwangsweises setzen und rücksetzen aufheben 278
MM Gültig Gültig Gültig SPS–Modell lesen 279
TS Gültig Gültig Gültig Test 279
RP Gültig Gültig Gültig Programm lesen 280
WP Ungültig Ungültig Gültig Programm speichern 280
QQ Gültig Gültig Gültig E/A–Registrierung 281
XZ Gültig Gültig Gültig Abbruch (nur Befehl) 283
** Gültig Gültig Gültig Initialisierung (nur Befehl) 283
EX Gültig Gültig Ungültig TXD–Antwort (nur Antwort) 283
IC --- --- --- Nicht definierter Befehl (nur Antwort) 284
223
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Antwort–Codes
Ende- Inhalt Vermutlicher Grund Abhilfe
code
00 Normale Beendigung --- ---
01 Nicht in der RUN–Betriebsart ausführ- Der gesendete Befehl kann nicht aus- Überprüfen Sie die Abhängigkeit von
bar geführt werden, wenn die SPS in der Befehl und SPS–Betriebsart.
RUN–Betriebsart ist.
02 Nicht in der MONITOR–Betriebsart aus- Der gesendete Befehl kann nicht aus-
führbar geführt werden, wenn die SPS in der
MONITOR–Betriebsart ist.
04 Adresse überschritten Die höchste Adresse des Anwenderpro- Überprüfen Sie das Programm.
grammbereichs wurde überschritten.
0B Nicht in der PROGRAM– Der gesendete Befehl kann nicht aus- Dieser Code wird gegenwärtig nicht ver-
Betriebsart ausführbar geführt werden, wenn sich die SPS in wendet.
der PROGRAM–Betriebsart befindet.
13 FCS–Fehler Die FCS ist fehlerhaft. Entweder ist die Überprüfen Sie das FCS–Berechnungs-
FCS–Berechnung fehlerhaft oder Stö- verfahren. Übertragen Sie bei Störun-
rungen üben eine ungünstigen Einfluß gen den Befehl erneut.
aus.
14 Formatfehler Das Befehlsformat ist falsch. Überprüfen Sie das Format und übertra-
gen Sie den Befehl erneut.
15 Ziffern–Eingabefehler Die Lese–/Schreibbereichsspezifikation Korrigieren Sie den Bereich und über-
ist fehlerhaft. tragen Sie den Befehl erneut.
16 Befehl wird nicht unterstützt Der spezifizierte Befehl ist auf der spe- Überprüfen Sie die Adresse und den
zifizierten Adresse nicht vorhanden. Befehl.
(Lesen des Sollwertes, usw.)
18 Rahmenlängen–Fehler Die maximale Rahmenlänge wurde Unterteilen Sie den Befehl in mehrere
überschritten. Rahmen.
19 Nicht ausführbar Lesen von Angaben, die nicht im zu- QQ ausführen, um Angaben zu spei-
sammengesetzten Befehl (QQ) spezifi- chern, bevor diese gelesen werden.
ziert sind.
23 Anwenderspeicher mit Schreibschutz Der Speicher ist in der SPS–Konfigura- Ändern Sie die Einstellung in der SPS–
versehen tion schreibgeschützt. Konfiguration (DM 6602).
A3 Abbruch wegen eines FCS–Fehlers in Der Fehler wurde generiert, während Überprüfen Sie die Daten auf fehler-
den Sendedaten ein sich über mehrere Rahmen vertei- hafte Rahmen,, korrigieren
g Sie diese
l d B
lender f hl ausgeführt
Befehl füh t wurde.
d f und
ggf. d nehmen
h Si i erneute
Sie eine t Üb
Über-
A4 Abbruch wegen eines Formatfehlers in
tragung vor.
den Sendedaten Hinweis: Die Daten wurden bis zu die-
sem Punkt
P kt schon
h ini den
d entsprechen-
t h
A5 Abbruch wegen eines Eingabefehlers
den Bereich der CPU–Baugruppe ge-
von Zifferndaten in den Sendedaten
schrieben.
A8 Abbruch wegen eines Rahmenlängen-
fehlers in den Sendedaten
A5 --- Störungen beeinflussten den Empfang. Übertragen Sie den Befehl erneut.
Applikationsverfahren
Einstellung der Kommunikations– Stellen Sie den Kommunikationsschalter der CPM2A
schalter der CPU–Baugruppe CPU–Baugruppe oder den DIP–Schalter der CPM2C
CPU–Baugruppe ein.
Kontaktplan
Vom Host–Computer ausgesendete (von der CPM2A/CPM2C initiierte
Befehle. Kommunikation)
Kommunikations–DIP– Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf der
Schaltereinstellungen Vorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den auf
der Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
224
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2A–Kommunikationsschaltereinstellung
Wird der Kommunikationsschalter auf OFF eingestellt, wird die Kommunikation
der Peripherie– und RS–232C–Schnittstelle von den Einstellungen in der SPS–
Konfiguration bestimmt.
Wird der Kommunikationsschalter auf ON eingestellt, wird die Kommunikation
der Peripherie– und RS–232C–Schnittstelle von den Standard–Host–Link–Ein-
stellungsparametern bestimmt (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Pari-
tät und eine Baudrate von 9.600 Bits/Sek.).
Hinweis Wird eine Programmierkonsole mit der Peripherieschnittstelle verbunden, er-
folgt die Kommunikation mit der Programmierkonsole natürlich unabhängig von
den Einstellungen des Kommunikationsschalters oder der SPS–Konfiguration.
Kommunikationsschalter
Peripherie-Schnittstelle RS–232C–Schnittstelle
DIP–Schalter
225
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Wird Schalter 2 auf ON eingestellt, legt die Einstellung von Schalter 1 fest, ob die
Kommunikation über die Peripherie– und RS–232C–Schnittstelle durch die Ein-
stellungen in der SPS–Konfiguration oder die Standard–Einstellungen beein-
flusst wird (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität und eine Baudrate
von 9.600 Bits/Sek.).
Schalterein– Peripherieschnittstellen– RS–232C–Schnittstellen–
stellungen Kommunikation Kommunikation
Schalter Schalter
1 2
OFF OFF Programmierkonsolen– Von der SPS–Konfiguration be-
Protokoll stimmt
bi DM 6649)
(DM 6645 bis
OFF ON Von der SPS–Konfiguration be-
stimmt
(DM 6650 bis DM 6654)
ON OFF Programmierkonsolen– Von Standard–Einstellungen be-
Protokoll stimmt
ON ON Von Standard–Einstellungen be-
stimmt
Gehäuse
1:n–Anschlüsse
Stellen Sie den DIP–Schalter des NT–AL001 RS232C/RS–422 Adapter ein.
Normalerweise auf ON
Auf ON, wenn sich die Baugruppe am Ende des Übertragungspfades befindet. OFF in allen anderen Fällen.
226
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Gehäuse
Hinweis Schließen Sie keine anderen externen Geräte als den Adapter NT–AL001 an
die 5 VDC Spannungsversorgung (Stiftnummer 6) der RS–232C–Schnittstelle
der CPM2A/CPM2C an. In diesen Fällen können Schäden an der CPM2A/
CPM2C oder an dem externen Gerät entstehen.
227
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Peripherieschnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6650 00 bis 03 Kommunikationsformat Entsprechend
00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host– den Host– Para-
Link–Baugruppennummer: 0) metern
01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstellung
(00) wird verwendet und AR 1302 wird auf EIN gesetzt).
04 bis 11 Nicht verwendet 0
12 bis 15 Kommunikationsmodus 0
00: Host–Link oder Toolbus;
01: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstel-
lung (00) wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6651 00 bis 07 Baudrate Entsprechend
den Host– Para-
00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek.; 02: 4.800 Bits/Sek.; 03: 9.600 Bits/Sek.; 04:
metern
19.200 Bits/Sek.
08 bis 15 Rahmenformat
Start Länge Stop Parität
00: 1 7 1 Gerade
01: 1 7 1 Ungerade
02: 1 7 1 Kein
03: 1 7 2 Gerade
04: 1 7 2 Ungerade
05: 1 7 2 Kein
06: 1 8 1 Gerade
07: 1 8 1 Ungerade
08: 1 8 1 Kein
09: 1 8 2 Gerade
10: 1 8 2 Ungerade
11: 1 8 2 Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung
(03) wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link) 0000 bis 9999
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstellung
(0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
228
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
00 bis FF (hexadezimal)
08 bis 15 Anzahl der empfangenen Datenbytes Beliebige Ein-
(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 0 gesetzt wird.) stellung
00: 256 Bytes
01 bis FF: 1 bis 255 Bytes
Endecode (00 bis FF)
(Peripherieschnittstelle, wirksam, wenn, Bit 12 bis 15 von DM 6653 auf 1 gesetzt wird.)
Ausgabe von Befehlen Dieses Beispiel zeigt ein BASIC–Programm, das den Zustand der CPM2A/
über einen CPM2C–Eingänge in IR 000 liest. Sehen Sie für weitere Einzelheiten Abschnitt
Host–Computer 4-5 Host–Link–Befehle.
Eine FCS–Prüfung (Rahmen–Überprüfungsfolge) wird bei den empfangenen
Antwortsdaten in diesem Programm nicht durchgeführt.
Vergewissern Sie sich vor Durchführung des Programms, dass die RS–232C–
Schnittstelle des Host–Computers richtig konfiguriert ist.
1000 ’ –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
1010 ’ CPM2A/CPM2C Beispielsprogramm in BASIC
1020 ’
1050 ’ –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
1060 ’ ––RS–232C Baudrate:9.600 Bits/Sek,Parität:gerade,Datenbits:7,Stopbits:2––
1070 OPEN ”COM:E73” AS #1
1080 *REPEAT
1090 –––Übertragungsdateneingabe–––––––––––––––––––––––––––––––––––––––––––––––
1100 INPUT ” send data : ”,send$
1110 ’ –––FCS–Berechnung––––––––––––––––––––––––––––––––––––––––––––––––––––––––
1120 FCS=0
1130 FOR IFCS = 1 TO LEN ( send$ )
1140 FCS = FCS XOR ASC( MID$ ( SEND$ , IFCS , 1 ) )
1150 NEXT
1160 FCS$ = RIGHT$ ( ”0” + HEX$ ( FCS ) , 2 )
1170 ’ –––Kommunikationsausführung––––––––––––––––––––––––––––––––––––––––––––––
1180 ZZZ$ = SEND$ + FCS$ + ”*” + CHR$(13)
1190 PRINT #1 , ZZZ$ ;
1200 ’ –––Antworttest–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
1210 RECCNT = 0 : TMP$ – ””
1220 *DRECLOOP
1230 IF LOC ( 1 ) < > 0 THEN *DREC1
1240 RECCNT = RECCNT + 1
1250 IF RECCNT = 5000 THEN *DRECERR ELSE *DRECLOOP
1260 *DREC1
1270 TMP$ = TMP$ + INPUT$ ( LOC (1 ) , #1 )
1280 IF RIGHT$ ( TMP$ , 1 ) = CHR$ (13) THEN *DRECEND ELSE RECCNT = 0 : GOTO *
DRECLOOP
1290 *DRECERR
1300 TMP$ = ” No response !! ” + CHR$ ( 13 )
1310 *DRECEND
1320 PRINT ” Empfangsdaten: ” ; RECV$
1340 ’ –––Gehe zu Übertrage Dateneingabe––––––––––––––––––––––––––––––––––––––––
1350 GOTO *REPEAT
1360 ’ –––Verarbeitung abgeschlossen––––––––––––––––––––––––––––––––––––––––––––
229
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
1370 CLOSE #1
1380 END
Unangeforderte Kommunikation
Eine Datenübertragung zum Host–Computer wird von der SPS initiiert.
(@)TXD
S S: Anfangsadresse der zu sendenden Daten
C C: Steuerdaten
N N: Anzahl der zu sendenden Bytes (BCD: 0001 bis 0061)
Kommunikationsschnittstelle
0: RS–232–Schnittstelle
1: Peripherie-Schnittstelle
In ASCII konvertiert.
n–Bytes
230
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
(48)
Anfangsadresse der zu sendenden Daten
RS–232C–Schnittstellenepezifikation
10 Bytes
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
RS–232C–Schnittstelle
CPM1–CIF01 RS–232C–Adapter
(Die CTS–Handshake–Steuerung CPM2A–CPU–Baugruppe
kann nicht verwendet werden.)
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
Peripherieschnittstelle
Peripherieschnittstelle
231
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2C–Anschlüsse
CPM2C–CPU–Baugruppe
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
Hinweis Ein CPM1–CIF01 RS–232C–Adapter kann auch für eine Kommunikation ohne
Protokoll über die Peripherieschnittstelle verwendet werden oder für eine
CPM2C kann ein CPM2C–CIF01 Peripherie–/RS–232C Adapter zum An-
schluss externer Geräte eingesetzt werden. Sehen Sie das CPM2C Program-
mierhandbuch für weitere Einzelheiten.
Übertragungsdaten–Konfiguration
Wird die Ohne Protokoll–Kommunikation verwendet, werden Daten mit dem
TXD(48)–Befehl gesendet und mit dem RXD(47)–Befehl empfangen. Die maxi-
male Datenanzahl einschließlich des Start–/Endecodes beträgt hierbei 256 By-
tes.
Kein Start– und Endecode:
Nur Startcode:
Nur Endecode:
CR, LF–Endecode:
Hinweis 1. Die Start– und Endecodes werden in DM 6648 bis DM 6649 (RS–232C)
oder DM 6653 bis DM 6654 (Peripherieschnittstelle) in der SPS–Konfigura-
tion spezifiziert.
2. Befinden sich verschiedene Start– oder Endecodes in der Übertragung, ist
jeweils der erste wirksam.
3. Ist der Endecode zufällig in den Übertragungsdaten vorhanden und bricht
die Übertragung vorzeitig ab, so verwenden Sie CR und LF als Endecode.
4. Der Start– und Endecodes selbst werden nicht gesendet und empfangen.
232
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Übertragungsmerker
Werden Daten von der CPM2A/CPM2C gesendet, muss für die Ausführung des
TXD(48)–Befehls der Übertragung bereit–Merker auf einen EIN–Zustand gete-
stet werden. Während der Datenübertragung wird der Sendebereit–Merker auf
AUS und nach Beendigung der Übertragung wieder auf EIN gesetzt.
Nachdem die CPM2A/CPM2C Daten empfangen hat, wird der Empfang akti-
viert–Merker eingeschaltet. Wird der RXD(47)–Befehl ausgeführt, werden die
empfangenen Daten in die spezifizierten Worte geschrieben und der Empfang
beendet–Merker wird auf AUS gesetzt.
Merker Peripherie- RS–232C–Schnittstelle
schnittstelle
Sendebereit–Merker AR 0813 AR 0805
Empfang beendet–Merker AR 0814 AR 0806
Hinweis Die CPM2A/CPM2C beginnt und beendet den Datenempfang unter den folgen-
den Umständen:
Empfangsstart:
Startcode deaktiviert: Ständig auf Empfang
Startcode aktiviert: Nach Empfang des Startcodes.
Empfang beendet:
Wenn entweder der Endecode, die spezifizierte Anzahl von Zeichen oder 256
Zeichen empfangen wurden.
Applikationsverfahren
Anschliessen der Kabel Stellen Sie den RS–232C–Anschluss mit dem seriellen Gerät her.
Kontaktplan–Programm
Kommunikations–DIP– Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf der
Schaltereinstellungen Vorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den auf
der Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–Kommunikationsschaltereinstellung
Schalten Sie den Kommunikationsschalter auf OFF, wenn Sie die Ohne Proto-
233
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Kommunikationsschalter
Peripherieschnittstelle RS–232C–Schnittstelle
Hinweis Ein RS–232C–Adapter ist für eine Ohne Protokoll–Kommunikation über die Pe-
ripherieschnittstelle erforderlich.
CPM2C–DIP–Schaltereinstellungen
Schalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die Ohne Protokoll–
Kommunikation verwenden, damit die Kommunikation über die RS–232C–
Schnittstelle durch die Einstellungen in der SPS–Konfiguration (DM 6645 bis
DM 6649) bestimmt werden. Schalten bei der Ohne Protokoll–Kommunikation
über die Peripherieschnittstelle Schalter 2 ebenfalls ein.
Kommunikationsschnittstellen–DIP–Schalter
Hinweis Ein RS–232C–Adapter wird für die Ohne Protokoll–Kommunikation über die
Peripherieschnittstelle benötigt.
234
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
235
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
236
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Peripherieschnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6650 00 bis 03 Kommunikationsformat Applikations-
00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host– abhängig
Link–Baugruppennummer: 0)
01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)
wird verwendet und AR 1302 wird auf EIN gesetzt).
04 bis 11 Nicht verwendet 0
12 bis 15 Kommunikationsmodus 1
0: Host–Link oder Toolbus;
1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstellung
wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6651 00 bis 07 Baudrate Applikations-
00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek.; 02: 4.800 Bits/Sek.; 03: 9.600 Bits/Sek.; 04: abhängig
19.200 Bits/Sek.
08 bis 15 Rahmenformat
Start Länge Stop Parität
00: 1 7 1 Gerade
01: 1 7 1 Ungerade
02: 1 7 1 Kein
03: 1 7 2 Gerade
04: 1 7 2 Ungerade
05: 1 7 2 Kein
06: 1 8 1 Gerade
07: 1 8 1 Ungerade
08: 1 8 1 Kein
09: 1 8 2 Gerade
10: 1 8 2 Ungerade
11: 1 8 2 Keine
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (03)
wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link) 0000 bis 9999
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung
(0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6653 00 bis 07 00 bis 31 (BCD): Teilnehmernummer (Host–Link) Applikations-
abhängig
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)
wird verwendet und AR 1302 wird auf EIN gesetzt).
08 bis 11 Startcode (Peripherieschnittstelle) 0 oder 1
0: deaktiviert
1: Startcode in DM 6654 verwenden.
12 bis 15 Endecode (Peripherieschnittstelle) 0 bis 2
00: deaktiviert (Anzahl der empfangenen Bytes)
01: Endecode in DM 6654 verwenden.
02: CR. LF
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)
wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6654 00 bis 07 Startcode (00 bis FF) 00 bis FF
(Peripherieschnittstelle, wirksam, wenn, Bit 8 bis 11 von DM 6653 auf 1 gesetzt wird.)
08 bis 15 Anzahl der empfangenen Datenbytes 00 bis FF
(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 0 gesetzt wird.)
00: 256 Bytes
01 bis FF: 1 bis 255 Bytes
Endecode (00 bis FF) 00 bis FF
(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 1 gesetzt wird.)
237
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Ohne Protokoll–Datenübertragung
TXD(48) wird zum Senden von Daten an RS–232C–Geräte verwendet.
(@)TXD
S S: Anfangsadresse der zu sendenden Daten
C C: Steuerdaten
N N: Anzahl der zu sendenden Bytes (BCD: 0001 bis 0256)
C
Speicherreihenfolge
0: Äußerst linke Bytes zuerst 1: Äußerst rechte Bytes zuerst
Kommunikationsschnittstelle
0: RS–232–Schnittstelle; 1: Peripherieschnittstelle
238
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
(@)RXD(47)
S S: Erste Adresse zum Speichern der Empfangsdaten
C C: Steuerdaten
N N: Anzahl der zu empfangenden Bytes (BCD: 0001 bis 0256)
Speicherreihenfolge
0: Äußerst linke Bytes zuerst
1: Äußerst rechte Bytes zuerst
Kommunikationsschnittstelle
0: RS–232–Schnittstelle
1: Peripherieschnittstelle
Das folgende Programm ist ein Beispiel für die Ohne Protokoll–Schnittstellen-
kommunikation über eine RS–232C–Schnittstelle und unter Verwendung des
TXD(48)– und RXD (47)–Befehls.
Ist AR 0805 (der RS–232C–Sendebereit-Merker) auf EIN gesetzt, wenn 00100
auf EIN gesetzt wird, werden die Datenbytes (DM0100 bis DM 0104), begin-
nend mit den äußerst linken Bytes, übertragen. Wird AR 0806 (Empfang been-
det–Merker) aktiviert, werden 256 Bytes der empfangenen Daten gelesen und
in DM 0200, beginnend mit den äußerst linken Bytes zu den äußerst rechten By-
tes) gespeichert.
00100
DIFU (13)
Ohne Protokoll–Kommunikation starten
00101
00101 AR 0805
TXD(48)
DM 0100 Erstes Wort mit den gesendeten Daten.
#0000 RS–232C–Schnittstelle verwenden; Da-
ten von den äußerst linken Bytes zu den
#0010 äußerst rechten Bytes senden.
AR 0806 10 Bytes senden.
@RXD(47)
DM 0200 Erstes Wort zur Speicherung der Empfangsdaten.
RS–232C–Schnittstelle verwenden; empfangene
#0000 Daten (beginnend bei den äußerst linken Bytes
#0256 zu den äußerst rechten Bytes) speichern.
256 Bytes empfangen.
239
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
4-3-3 1:1–NT–Link–Kommunikation
Der NT–Link ermöglicht die direkte Verbindung einer CPM2A/CPM2C–SPS mit
einem OMRON NT–Terminal. Ein Kommunikationsprogramm in der SPS ist
nicht erforderlich. Der RS–232C–Anschluss kann für NT–Link verwendet wer-
den.
CPM2A–Anschluss
CPM2A–CPU–Baugruppe
RS–232C–Kabel
Programmierbares NT–Terminal
RS–232C–Schnittstelle
CPM2C–1:1–NT–Link–Anschluss
RS–232C–Schnittstelle
Anschlusskabel CPM2C–CPU–
(Sub–D, 9–polig) RS–232C– Baugruppe
CBL–405C–2M (2 m) Schnittstelle
CBL–405C–5M (5 m)
RS–232C–Anschluss
CPM2C–CN111 (0,15 m)
Programmierbares
NT–Terminal
CS1W–CN118 (0,1 m)
RS–232C ← Peripherieschnittstelle
RS–422–Anschluss
RS–232C–Schnittstelle
CPM2C-CIF01
RS-422 ← Peripherieschnittstelle
NT-AL001
RS-232C–Adapter
RS–232C–Schnittstelle
240
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Applikationsverfahren
Verwenden Sie die Einstellungen in der SPS–Konfiguration
Kommunikationseinstellungen (DM6645 bis DM 6649) für die RS–232C–Kommunikation.
(Schalten Sie den Kommunikationsschalter auf der CPU–
Baugruppe der CPM2A oder Schalter 1 des DIP–Schalters
auf der CPU–Baugruppe der CPM2C aus.)
Kommunikations–DIP– Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf der
Schaltereinstellungen Vorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den auf
der Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–Kommunikationsschalter–Einstellung
Schalten Sie den Kommunikationsschalter aus, wenn Sie die 1:1–NT–Link
Kommunikation verwenden. Eine 1:1–NT–Link–Kommunikation ist nicht mög-
lich, wenn der Kommunikationsschalter eingeschaltet ist.
Kommunikationsschalter
ON
OFF
RS–232C–Schnittstelle
241
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2C–DIP–Schaltereinstellungen
Schalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die 1:1–NT–Link
Kommunikation verwenden, damit die Kommunikation über die RS–232C–
Schnittstelle durch die Einstellungen in der SPS–Konfiguration bestimmt wer-
den (DM 6645 bis DM 6649).
DIP–Schalter
242
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Empfohlene Kabel:
CBL–405C–2M: 2m
CBL–405C–5M: 5m
Gehäuse Gehäuse
4-3-4 1:1–PC–Link–Kommunikation
Ein 1:1–PC–Link mit bis zu 256 Bits (LR0000 bis LR1515) kann im Datenbereich
einer anderen CPM2A/CPM2C, CQM1, CPM1, CPM1A, SRM1(–V2) oder einer
C200HX/HG/HE erstellt werden, wobei eine SPS als Master dient und die ande-
ren als Slave. Ein Kommunikationsprogramm in der SPS ist nicht erforderlich.
Der 1:1–PC–Link erfolgt über die RS–232C–Schnittstelle.
1:1–PC–Link
CPM2A–CPU–Baugruppe CPM2A–CPU–Baugruppe
RS–232C–Schnittstelle RS–232C–Schnittstelle
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2C, OMRON–SPS (CQM1, CPM1, CPM1A, CPM2C,
SRM1(–V2), C200HS oder C200HX/HG/HE) SRM1(–V2), C200HS oder C200HX/HG/HE)
243
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
1:1–Link–Master
1:1–Link–Slave
CPM2C–CPU– RS–232C–Schnittstelle RS–232C–Schnittstelle
CPM2C–CPU–
Baugruppe (Sub–D, 9–polig) (Sub–D, 9–polig)
Baugruppe
CPM2C–CN111
(0,1 m) CPM2C–CN111 (0,1 m)
Anschlusskabel
CBL–405C–2M (2 m)
CBL–405C–5M (5 m)
CS1W–CN118 CS1W–CN118 (0,1 m)
(0,1 m)
CPM2C-CIF01 CPM2C-CIF01
CPM2C-CIF11 CPM2C-CIF11
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2A, OMRON–SPS (CQM1, CPM1, CPM1A, CPM2A,
SRM1(–V2), C200HS oder C200HX/HG/HE) SRM1(–V2), C200HS oder C200HX/HG/HE)
Master Slave
Link–Merker Link–Merker
LR 00 LR 00
Schreiben Schreib- Lese-
bereich Lesen
bereich
LR07 LR07
LR08 Schreib- LR08
Lese- Schreiben
Lesen bereich bereich
LR 15 LR 15
Hinweis Auch wenn die Peripherieschnittstelle des CPM2C–CIF01 RS–232C–Signale ausgeben kann, kann diese
Schnittstelle nicht für eine 1:1–Kommunikationsverbindung verwendet werden.
244
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Applikationsverfahren
Verwenden Sie die Einstellungen in der SPS–
Konfiguration (DM6645 bis DM 6649) für die
Kommunikationseinstellungen RS–232C–Kommunikation.
(Schalten Sie den Kommunikationsschalter auf
der CPU–Baugruppe der CPM2A oder Schalter 1
des DIP–Schalters auf der CPU–Baugruppe der
CPM2C aus.)
Anschliessen der Kabel Schließen Sie eine SPS über den 1:1–PC–Link an
eine andere an.
Kommunikations–DIP– Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf der
Schaltereinstellungen Vorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den auf
der Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–Kommunikationsschalter–Einstellung
Schalten Sie den Kommunikationsschalter aus, wenn Sie die 1:1–PC–Link
Kommunikation verwenden. Eine 1:1–PC–Link–Kommunikation ist nicht mög-
lich, wenn der Kommunikationsschalter eingeschaltet ist.
Kommunikationsschalter
ON
OFF
RS–232C–Schnittstelle
245
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
CPM2C–DIP–Schaltereinstellungen
Schalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die 1:1–PC–Link
Kommunikation verwenden, damit die Kommunikation über die RS–232C–
Schnittstelle durch die Einstellungen in der SPS–Konfiguration bestimmt wer-
den (DM 6645 bis DM 6649).
DIP–Schalter
SPS–Konfiguration Verwenden Sie bei der Erstellung eines 1:1–PC–Links mit einer CPM2A/
CPM2C–SPS ein Programmiergerät, um die folgende SPS–Einstellung (DM
6645) im Master und Slave vorzunehmen.
Wort Bit Funktion Ein– Ein–
stellung stellung
(Master) (Slave)
DM 6645 00 bis 03 Kommunikationsformat Beliebige Beliebige
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) Einstel- Einstel-
01: Einstellungen in DM 6646 lung lung
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstel-
lung (00) wird verwendet und AR 1302 wird auf EIN gesetzt).
04 bis 07 CTS–Handshake–Einstellungen 0 0
0: Deaktiviert
1: Einstellung aktiviert
08 bis 11 Link–Bereich für den 1:1–PC–Link 0 0
0: LR 00 bis LR 15
(Andere Einstellungen: deaktiviert)
12 bis 15 Kommunikationsmodus 3 2
0: Host–Link
1: Ohne Protokoll (RS–232C);
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–
Einstellung wird verwendet und AR 1302 wird auf EIN gesetzt).
246
CPM2A–/CPM2C–Kommunikationsfunktionen Abschnitt 4-3
Empfohlene Kabel
CBL–405C–2M: 2m
CBL–405C–5M: 5m
Gehäuse
247
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
4-4 SRM1(–V2)–Kommunikationsfunktionen
4-4-1 Host–Link–Kommunikation
Die Host-Link-Kommunikation wurde von OMRON zur Verbindung einer oder
mehrerer SPS mit einem Host-Computer über ein RS-232C-Kabel entwickelt.
Die Kommunikation wird hierbei von dem Host–Computer gesteuert. Normaler-
weise gibt der Host-Computer einen Befehl an eine SPS aus, die wiederum au-
tomatisch eine Empfangsbestätigung ausgibt. Daher wird die Kommunikation
ohne aktive Beteiligung der SPS ausgeführt. Einige SPS–Systeme können
ebenfalls Datenübertragungen einleiten, wenn eine direkte Beteiligung erfor-
derlich ist.
Im Allgemeinen stehen zur Implementation der Host–Link–Kommunikation
zwei Arten zur Verfügung. Eine baisert auf den C-Modus– und die andere auf
den FINS(CV-Modus)–Befehlen. Die SRM1(-V2) unterstützt nur C-Modus–Be-
fehle. Einzelheiten über die zur Verfügung stehenden Host–Link–Befehle finden
Sie im Kapitel 4-5.
SPS–Konfigurations– Die Einstellungen der SRM1(–V2)–Peripherieschnittstelle müssen richtig vor-
einstellung genommen werden, um die in der folgenden Tabelle dargestellte Host–Link–
Kommunikation zu verwenden.
Wort Bit Funktion Ein–
stellung
Einstellungen der Peripheriegeräte–Schnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6650 00 bis 03 Kommunikationsformat Anpassung
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) an Host–
01: Einstellungen im Datenwort DM 6651 Parameter
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)
wird verwendet und AR 1302 wird auf EIN gesetzt).
04 bis 07 Nicht verwendet. 0
08 bis 11 Nicht verwendet. 0
12 bis 15 Kommunikationsmodus 0: Host-
0: Host–Link; Link
1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (0)
wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6651 00 bis 07 Baudrate Anpassung
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2 an Host–
Parameter
08 bis 15 Rahmenformat Anpassung
Start Länge Stop Parität an Host–
00: 1 Bit 7 Bits 1 Bit Gerade Parameter
01: 1 Bit 7 Bits 1 Bit Ungerade
02: 1 Bit 7 Bits 1 Bit Kein
03: 1 Bit 7 Bits 2 Bits Gerade
04: 1 Bit 7 Bits 2 Bits Ungerade
05: 1 Bit 7 Bits 2 Bits Kein
06: 1 Bit 8 Bits 1 Bit Gerade
07: 1 Bit 8 Bits 1 Bit Ungerade
08: 1 Bit 8 Bits 1 Bit Kein
09: 1 Bit 8 Bits 2 Bits Gerade
10: 1 Bit 8 Bits 2 Bits Ungerade
11: 1 Bit 8 Bits 2 Bits Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)
wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link) Anpassung
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms. an Host–
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (0000) Parameter
wird verwendet und AR 1302 wird auf EIN gesetzt).
248
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich die
folgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-
rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stop–, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Wort Bit Funktion Ein–
stellung
RS–232C Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 00 bis 03 Kommunikationsformat Host–
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) Parameter
01: Einstellungen in DM 6646
04 bis 07 CTS–Handshake–Einstellungen 0
0: Deaktiviert;
1: Einstellung aktiviert
08 bis 11 Bei Einsatz einer 1:1–PC–Link–Verbindung: stellt den Schnittstellenbereich auf 1:1–PC–Link
ein.
0: LR 00 bis LR 15
Ungleich 0: deaktivieren
Bei Einsatz einer 1:n–NT–Link–Verbindung: spezifiziert die höchste Bedien–Terminal–Teil-
nehmernummer.
1 bis 7
12 bis 15 Kommunikationsmodus 0
0: Host–Link;
1: Ohne Protokoll (RS–232C); 2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1 –NT–Link; 5: 1:n–NT–Link
(Alle anderen Einstellungen spezifizieren den Host–Link–Modus, verursachen einen gering-
fügigen Fehler und aktivieren AR 1302.)
249
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich die
folgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-
rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beispielprogramm Dieses Beispiel zeigt ein BASIC–Programm, das den Zustand der
SRM1(-V2)–Eingänge in IR 000 liest. Sehen Sie für weitere Einzelheiten Ab-
schnitt 4-5 Host–Schnittstellenbefehle.
Eine FCS–Prüfung (Rahmen–Überprüfungsfolge) der empfangenen Antwort-
daten wird in diesem Programm nicht durchgeführt. Vergewissern Sie sich vor
der Ausführung des Programms, dass die RS–232C–Schnittstelle des Host–
Computers richtig konfiguriert ist.
1000 ’ ––––––––––––––
1010 ’SRM1 Beispielprogramm in BASIC
1020 ’
1050 ’ –––––––––––––
1060 ’ Eingest. RS-232C–Werte Baudrate: 9,6Kb/Sek,PARITÄT:GERADE,DATEN:7,STOP:2
1070 OPEN ”COM:E73” AS #1
1080 *REPEAT
1090 ’ Einlesen der Übertragungsdaten –––––––––––––
1100 INPUT ”send data:”,SEND$
1110 ’ FCS–Berechnung –––––––––––––
250
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
1120 FCS=0
1130 FOR IFCS=1 TO LEN(SEND$)
1140 FCS=FCS XOR ASC(MID$(SEND$;IFCS,1)
1150 NEXT
1160 FCS$=RIGHT$(”0”+HEX$(FCS),2)
1170 ’ Ausführung der Kommunikation ––––––––––––
1180 ZZZ$=SEND$+FCS$+”*”+CHR$(13)
1190 PRINT #1,ZZZ$;
1200 ’ Antworttest ––––––
1210 RECCNT=0:TMP$=””
1220 *DRECLOOP
1230 IF LOC(1)<>0 THEN *DREC1
1240 RECCNT=RECCNT+1
1250 IF RECCNT=5000 THEN *DRECERR ELSE *DRECLOOP
1260 *DREC1
1270 TMP$=TMP$+INPUT$(LOC(1),#1)
1280 IF RIGHT$(TMP$,1)=CHR$(13) THEN *DRECEND ELSE RECCNT=0:GOTO *DRECLOOP
1290 *DRECERR
1300 TMP$=”No response!!”+CHR$(13)
1310 *DRECEND
1320 RECV$=TMP$
1330 PRINT ”Empfangene Daten:”;RECV$
1340 ’ gehe zum Einlesen der Übertragungsdaten ––––––––––––
1350 GOTO *REPEAT
1360 ’ Bearbeitung abgeschlossen ––––––––––––
1370 CLOSE #1
1380 END
Von der Ausführung dieses Befehls bis zum Ende der Datenübertragung ist AR
0805 (oder AR 0813 für die Peripherieschnittstelle) auf AUS gesetzt. Nach Ab-
schluss der Datenübertragung wird er wieder auf EIN gesetzt.
251
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Bei der Spezifikation der Anzahl der zu übertragenden Bytes werden die Start–
und Endecodes nicht berücksichtigt. Bei der größten Übertragung mit oder ohne
Start– und Endecodes in 256 Bytes liegt N, abhängig von den Start– und Ende-
codes, zwischen 254 und 256. Wird die Anzahl der zu sendenden Bytes auf
0000 gesetzt, werden nur die Start– und Endecodes gesendet.
max. 256 Zeichen
(@)RXD(47)
S: Erste zu speichernde Wort–Nr. der Empfangsdaten
S
C: Steuerdaten
C Bits 00 bis 03
N 0: Äußerst linke Bytes zuerst
1: Äußerst rechte Bytes zuerst
Bits 12 bis 15
0: RS-232C-Schnittstelle
1: Peripherieschnittstelle
N: Anzahl der gespeicherten Bytes (4–stelliger BCD–
Wert), 0000 bis 0256
252
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich die
folgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-
rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
253
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Teilnehmernummer: 00
RS–232C–Schnittstellen– Wird die RS–232C–Schnittstelle als aktive Schnittstelle (ohne Protokoll) ver-
einstellungen wendet, müssen die folgenden Einstellungen über ein Peripheriegerät in
DM 6645 bis DM 6649 der SRM1(–V2) vorgenommen werden.
Wort Bit Funktion Ein–
stellung
RS–232C Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 00 bis 03 Kommunikationsformat Applikations-
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) abhängig
01: Einstellungen in DM 6646
04 bis 07 CTS–Handshake–Einstellungen
0: Deaktiviert;
1: Einstellung aktiviert
08 bis 11 Bei Einsatz einer 1:1–PC–Link–Verbindung: Stellt den Schnittstellenbereich auf 1:1–PC– 0
Link ein.
0: LR 00 bis LR 15
Ungleich 0: Deaktiviert
12 bis 15 Kommunikationsmodus 1
0: Host–Link
1: Ohne Protokoll (RS–232C)
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
5: 1:n–NT–Link
(Alle anderen Einstellungen spezifizieren den Host–Link–Modus, verursachen einen ge-
ringfügigen Fehler und aktivieren AR 1302.)
DM 6646 00 bis 07 Baudrate Applikations-
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2 abhängig
08 bis 15 Rahmenformat Applikations-
Start Länge Stop Parität abhängig
00: 1 Bit 7 Bits 1 Bit Gerade
01: 1 Bit 7 Bits 1 Bit Ungerade
02: 1 Bit 7 Bits 1 Bit Kein
03: 1 Bit 7 Bits 2 Bits Gerade
04: 1 Bit 7 Bits 2 Bits Ungerade
05: 1 Bit 7 Bits 2 Bits Kein
06: 1 Bit 8 Bits 1 Bit Gerade
07: 1 Bit 8 Bits 1 Bit Ungerade
08: 1 Bit 8 Bits 1 Bit Kein
09: 1 Bit 8 Bits 2 Bits Gerade
10: 1 Bit 8 Bits 2 Bits Ungerade
11: 1 Bit 8 Bits 2 Bits Kein
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link) Applikations-
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001 gleich abhängig
10 ms
DM 6648 00 bis 07 Teilnehmernummer (Host–Link, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 0 gesetzt Applikations-
werden.) abhängig
00 bis 31 (BCD)
08 bis 11 Startcode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 1 Applikations-
gesetzt werden). abhängig
0: deaktiviert;
1: Einstellung aktiviert
12 bis 15 Endecode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf
1 gesetzt werden).
0: deaktiviert (Anzahl der empfangenen Bytes)
1: Einstellung aktiviert (spezifizierter Endecode)
2: CR, LF
DM 6649 00 bis 07 Startcode (aktive Schnittstelle)
00: 256 Bytes
01 bis FF: 1 bis 255 Bytes
08 bis 15 Endecode aktiviert (aktive Schnittstelle)
00 bis FF (BIN)
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich die
folgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-
rück, damit dieser innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
254
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Übertragungsdaten– Wird die Ohne Protokoll–Kommunikation verwendet, werden Daten mit dem
Konfiguration TXD(48)–Befehl gesendet und mit dem RXD(47)–Befehl empfangen. Die maxi-
male Datenanzahl einschließlich des Start–/Endecodes beträgt hierbei 256 By-
tes.
Ohne Start– und Endecode:
Nur Startcode:
Nur Endecode:
Hinweis 1. Die Start– und Endecodes werden in DM 6648 bis DM 6649 und DM 6653
bis DM 6654 der SPS–Konfiguration spezifiziert.
2. Sind mehrere Start– und Endecodes vorhanden, ist jeweils der erste Teil
wirksam.
3. Verwenden Sie CR oder LF als Endecode, wenn der Endecode in den Über-
tragungsdaten enthalten ist und die Übertragung hierdurch teilweise ab-
bricht.
4. Die Start– und Endecodes werden nicht gespeichert.
Werden Daten von der SRM1(–V2) gesendet, muss für die Ausführung des
TXD(48)–Befehls der Sendebereit–Merker auf den EIN–Zustand getestet wer-
den. Während der Datenübertragung wird der Sendebereit–Merker auf AUS
und nach Beendigung der Übertragung wieder auf EIN gesetzt.
Übertragungsmerker Nachdem die SRM1(–V2) die Daten empfangen hat, wird der Sendebereit–Mer-
ker auf EIN gesetzt. Wird der RXD–Befehl ausgeführt, werden die empfange-
nen Daten in die spezifizierten Worte geschrieben und der Empfang beendet–
Merker wird auf AUS gesetzt.
Merker Peripherieschnittstelle RS–232C–Schnittstelle
Sendebereit–Merker AR 0813 AR 0805
Empfang beendet–Merker AR 0814 AR 0806
255
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis Der Zeitverlauf vom Start des Datenempfangs bis zur Beendigung ist nachfol-
gend für die SRM1(–V2) dargestellt.
Empfangsstart:
Ohne Startcode: Normaler Empfangsstatus
Mit Startcode: Nach Empfang des Startcode.
Empfang beendet:
Nachdem entweder der Endecode, die spezifizierte Anzahl von Zeichen oder
256 Zeichen empfangen wurden.
Programmbeispiel Im folgenden Programmbeispiel wird die Ohne Protokoll–Kommunikation über
eine RS–232C–Schnittstelle und unter Verwendung des TXD(48)– und RXD
(47)–Befehls durchgeführt.
Ist AR 0805 (Sendebereit–Merker) auf EIN gesetzt, wenn 00100 auf EIN gesetzt
wird, werden Daten von DM 0100 bis DM 0104 übertragen, beginnend mit den
höheren zu den niedrigen Werten. Wird AR 0806 (Empfang beendet–Merker)
auf EIN gesetzt, werden 256 Bytes empfangener Daten gelesen und von den
höheren zu den niedrigen Werten nach DM 0200 und folgende geschrieben.
00100
DIFU (13)
Ohne Protokoll–Kommunikation starten
00101
00101 AR 0805
TXD
DM 0100 Erstes Wort der gesendeten Daten
Über die RS–232C–Schnittstelle werden
#0000 die Daten gelesen und von den höheren
bis zu den niedrigen Werten gespeichert
#0010
10 übertragene Zeichen
AR 0806
@RXD
Erstes Wort zur Speicherung der
DM 0200 Empfangsdaten
#0000 Über die RS–232C–Schnittstelle werden
die Daten gelesen von den höheren bis
#256 zu den niedrigen Werten gespeichert
256 übertragene Zeichen
4-4-3 1:1–NT–Link–Kommunikationsmodus
Wird 1:1–NT–Link verwendet, kann die SPS SRM1(–V2) mit einem NT–Termi-
nal (NT–Link–Schnittstelle) verbunden werden. Die RS–232C–Schnittstelle
wird für den 1:1–NT–Link verwendet.
SRM1
Programmierbares NT–Terminal
1:1–NT–Link ist nur mit der SRM1–C02–V1/V2 möglich, die über eine
RS–232C–Schnittstelle verfügt.
SPS–Konfigurations– In der folgenden Tabelle sind die auf den 1:1–NT–Link–Kommunikationmodus
einstellung bezogenen Einstellungen aufgeführt.
256
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.
AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-
wendet.
2. Sehen Sie für weitere Informationen über die 1:1–NT–Link–Einstellungen
einer anderen OMRON–SPS das entsprechende Programmierhandbuch
dieser jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fall
den Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
4-4-4 1:n–NT–Link–Kommunikationsmodus
1:n–NT–Link ermöglicht die direkte, schnelle Kommunikation einer SRM1(–V2)
SPS mit bis zu 8 OMRON NT–Terminals. 1:n–NT–Link wird mit der RS–232C–
Schnittstelle verwendet.
SRM1
Programmierbares NT–Terminal
1:n–NT–Link ist nur mit SPS–Systemen der Serie SRM1–C02–V2 möglich, die
über eine RS–232C–Schnittstelle verfügen.
Kabelanschlüsse Sehen Sie das SRM1 Master–Steuerungs–Bedienerhandbuch für Informatio-
nen über Kabelanschlüsse für eine 1:n–NT–Link–Kommunikation.
SPS–Konfigurations– In der folgenden Tabelle sind die auf den 1:n–NT–Link–Kommunikationmodus
einstellung bezogenen Einstellungen aufgeführt.
257
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.
AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-
wendet.
2. Sehen Sie für weitere Informationen über die 1:n–NT–Link–Einstellungen
einer anderen OMRON–SPS das entsprechende Programmierhandbuch
dieser jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fall
den Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
4-4-5 1:1–PC–Link–Kommunikationsmodus
In einem 1:1–PC–Link wird eine SPS der Serie SRM1 über ein Stan-
dard–RS–232C–Kabel mit einer anderen SRM1, CPM1A, CPM2A, CPM2C,
CQM1, C200HS oder C200HX/HG/HE verbunden. Eine der SPS–Systeme
dient als Master und ein anderes als Slave. Über 1:1–PC–Link können bis zu
256 Bits (LR 0000 bis LR 1515) von zwei SPS–Systemen miteinander ausge-
tauscht werden.
1:1–SRM1(–V2) In der folgenden Abbildung ist eine 1:1–PC–Link–Verbindung zwischen zwei
PC–Link–Verbindungen SRM1(–V2)–Systemen dargestellt.
SRM1 SRM1
RS–232C–Schnittstelle RS–232C–Schnittstelle
258
SRM1(–V2)–Kommunikationsfunktionen Abschnitt 4-4
Master Slave
LR 00 LR 00
Daten Schreibbereich Lesebereich Daten
schreiben LR 07 LR 07 lesen
LR 08 LR 08
Daten Lesebereich Schreibbereich Daten
lesen LR 15 LR 15 schreiben
Beschränkungen der Ein 1:1–PC–Link ist nur mit der SRM1–C02–V1/V2 SPS–möglich, die mit einer
1:1–PC–Link– RS–232C–Schnittstelle ausgestattet ist.
Kommunikation mit einer
SRM1(–V2) In der SRM1 können nur die16 LR–Worte von LR 00 bis LR 15 zur Kommunika-
tion verwendet werden. Verwenden Sie also nur diese16 Worte in der CQM1
oder C200HS, wenn Sie einen 1:1–PC–Link mit einer dieser SPS–Systeme rea-
lisieren. Ein 1:1–Link–Verbund einer SRM1–SPS über LR 16 bis LR 63 in der
CQM1 oder C200HS ist nicht möglich.
Kabelanschlüsse Sehen Sie das SRM1 Technische Handbuch für Informationen über Kabelan-
schlüsse für die 1:1–PC–Link–Kommunikation.
SPS–Konfigurations– Nehmen Sie die folgenden SPS–Konfigurationseinstellungen mit einem Pro-
einstellung grammiergerät vor, wenn eine SRM1(–V2) in einem 1:1–PC–Link verwendet
wird.
Wort Bit Funktion Einstel- Einstel-
lung lung
(Master) (Slave)
DM 6645 00 bis 03 Kommunikationsformat1 00 oder 00 oder
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) 01 01
01: Einstellungen im Datenwort DM 6651
04 bis 07 CTS–Handshake–Einstellungen 0 0
0: Deaktiviert
1: Einstellung aktiviert
08 bis 11 Stellt den Schnittstellenbereich auf 1:1–PC–Link ein 0 0
0: LR 00 bis LR 15
Ungleich 0: deaktiviert
12 bis 15 Kommunikationsmodus1 3 2
0: Host–Link
1: Ohne Protokoll (RS–232C)
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: 1:1–NT–Link
5: 1:n–NT–Link
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.
AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-
wendet.
2. Weitere Informationen über die 1:1–PC–Link–Kommunikation mit einer an-
deren SPS finden Sie im jeweiligen Handbuch dieser entsprechenden SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fall
den Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen
(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität
9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
259
Host–Link–Befehle Abschnitt 4-5
Beispielprogramm Dieses Beispiel zeigt ein Kontaktplanprogramm, in dem der Zustand von IR
0000 in jeder SRM1 nach IR 200 in die jeweils andere SRM1 kopiert wird.
LR 00 LR 00
IR 000 Schrei- Schreibbereich Lesebereich Lesen IR 200
ben LR 07 LR 07
LR 08 LR 08
IR 200 Lesen Lesebereich Schreibbereich Schrei- IR 000
LR 15 LR 15 ben
4-5 Host–Link–Befehle
Nachfolgend werden die für die Host–Link–Kommunikation (Host–PC zur SPS)
notwendigen Befehle dargestellt.
@ 1
X 10 X 10
0 R R x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
Hinweis *Anfangswort: 0000 bis 0049 und 0200 bis 0255 in CPM2A/CPM2C–SPS–Sy-
stemen, 0000 bis 0019 und 0200 bis 0255 in CPM1/CPM1A/SRM1(–V2)–SPS–
Systemen.
(Eine Antwort von “0000” wird für nichtvorhandene IR– und SR–Worte zurück-
gegeben.)
@ 1
X 10 X 10
0 R R x 16
1 x 160 3
x 16
2
x 16 x 16
1 x 160 : ↵
Hinweis 1. In CPM2A/CPM2C SPS–Systemen können nicht die Worte 0050 bis 0199
spezifiziert werden und in CPM1/CPM1A/SRM1(–V2) SPS–Systemen
nicht die Worte 0020 bis 0199. Wird versucht, diese Worte zu lesen, erhal-
ten Sie als Antwort 0000.
2. Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesen
werden.
Parameter Daten lesen (Antwort)
Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei der
260
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 R L x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
@ 1
X 10 X 10
0 R L x 16
1 x 160 x 16
3 x 16
2 x 16
1 x 160 : ↵
@ 1
X 10 X 10
0 R H x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
@ 1
X 10 X 10
0 R H 1 x 160
x 16
3
x 16
2
x 16
1 x 160
x 16 : ↵
261
Host–Link–Befehle Abschnitt 4-5
Befehlsformat
@ 1
X 10 X 10
0 R C x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
@ 1
X 10 X 10
0 R C x 16
1 x 160 x 10
3 2
x 10
1
X 10 X 10
0 : ↵
Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesen wer-
den.
Parameter Daten lesen (Antwort)
Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei der
Antwort als Hexadezimalwerte ausgegeben. Die empfangenen Istwerte werden
in gleicher Reihenfolge beginnend mit dem spezifiziertem Zeitgeber/Zähler aus-
gegeben.
@ 1
X 10 X 10
0 R G x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
@ 1
X 10 X 10
0 R G x 16
1 x 160 EIN/ : ↵
AUS
Daten lesen
(Anzahl von Zeitgebern/Zählern)
Die Antwort wird beim Lesen von mehr als 123 Zeitgeber/Zähler aufgeteilt.
Parameter Daten lesen (Antwort)
Der Status der Fertigmerker, die über diesen Befehl spezifiziert wurden, wird bei
der Antwort übertragen. “1” bedeutet, dass der Status der Fertigmerker auf EIN
gesetzt ist.
262
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 R D 3 x 102 X 101 X 100
x 10
3 x 102 X 101 X 100
x 10 : ↵
Hinweis Anfangswort:
DM 0000 bis DM 1023 und DM 6144 bis DM 6655 in CPM1/CPM1A–SPS–Sy-
stemen
DM 0000 bis DM 2047 und DM 6144 bis DM 6655 in CPM2A/
CPM2C/SRM1(–V2)–SPS–Systemen (Eine Antwort von “0000” wird für nicht-
vorhandene DM–Worte zurückgegeben.)
@ 1
X 10 X 10
0 R D x 16
1 x 160 3
x 16
2
x 16 x 16
1 x 160 : ↵
Hinweis 1. Die Worte DM 1024 bis DM 6143 in CPM1/CPM1A–SPS und DM 2048 bis
DM 6143 in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen können nicht
spezifiziert werden. Wird versucht, diese Worte zu lesen, wird 0000 als Ant-
wort zurückgegeben.
2. Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesen
werden.
Parameter Daten lesen (Antwort)
Der Inhalt der Worte, die über den Befehl spezifiziert wurden, wird bei der Ant-
wort als Hexadezimalwert ausgegeben. Die empfangenen Worte werden in
gleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
Hinweis Achten Sie bei der Spezifikation des DM–Bereichs darauf, dass der DM–Be-
reich bei den verschiedenen CPU–Modellen unterschiedlich ist.
@ 1
X 10 X 10
0 R J x 10
3 x 102 X 101 X 100 x 10
3 x 102 X 101 X 100 : ↵
263
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 R J x 16
1 x 160 3
x 16 x 16
2 1 x 160
x 16 : ↵
@ 1
X 10 X 10
0 W R x 10
3 x 102 X 101 X 100 x 16
3 x 162 1
x 16
0
x 16 : ↵
Hinweis 1. Anfangswort: 0000 bis 0049 und 0200 bis 0252 in CPM2A/CPM2C–SPS–
Systemen, 0000 bis 0019 und 0200 bis 0252 in
CPM1/CPM1A/SRM1(–V2)–SPS–Systemen.
2. Sollen mehr als 30 Datenworte geschrieben werden, muss der Befehl unter-
teilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ 1
X 10 X 10
0 W R x 16
1 x 160 : ↵
Hinweis In CPM2A/CPM2C SPS–Systemen können nicht die Worte 0050 bis 0199 spe-
zifiziert werden und in CPM1/CPM1A/SRM1(–V2) SPS–Systemen nicht die
Worte 0020 bis 0199. Wird versucht, in diese Worte zu schreiben, wird der
Schreibvorgang nicht ausgeführt und eine normale Fertig–Meldung wird zu-
rückgegeben.
264
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 W L x 10
3 x 102 X 101 X 100 x 16
3 x 162 x 16
1 x 16
0 : ↵
@ 1
X 10 X 10
0 W L x 16
1 x 160 : ↵
@ 1
X 10 X 10
0 W H 3 x 102 X 101 X 100
x 10 x 16
3 x 162 1
x 16
0
x 16 : ↵
@ 1
X 10 X 10
0 W H x 16
1 x 160 : ↵
265
Host–Link–Befehle Abschnitt 4-5
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird ein
Fehler generiert und der Schreibvorgang nicht ausgeführt. Soll bspw. ein aus 3
Worten bestehendes Datenpaket mit dem Anfangswort 18 in den HR–Bereich
geschrieben werden, belegt das letzte Wort 20. Der Schreibvorgang wird abge-
brochen, da für die Speicherung HR 20 jenseits des beschreibbaren Bereichs
liegen würde.
@ 1
X 10 X 10
0 W C 3 x 102 X 101 X 100
x 10 x 10
3 x 102 X 101 X 100 : ↵
Daten schreiben
(entsp. der Anzahl Istwerte)
@ 1
X 10 X 10
0 W C 1 x 160
x 16 : ↵
@ 1
X 10 X 10
0 W G 3 x 102 X 101 X 100 EIN/
x 10 : ↵
AUS
Daten schreiben
(entspr. der Wortanzahl)
266
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 W G x 16
1 x 160 : ↵
@ 1
X 10 X 10
0 W D 3 x 102 X 101 X 100
x 10 x 16
3 x 162 1
x 16
0
x 16 : ↵
Hinweis 1. Anfangswort:
DM 0000 bis DM 1023 und DM 6144 bis DM 6655 in CPM1/CPM1A–SPS–
Systemen
DM 0000 bis DM 2047 und DM 6144 bis DM 6655 in CPM2A/
CPM2C/SRM1(–V2)–SPS–Systemen
2. Sollen mehr als 30 Datenworte geschrieben werden, muss der Befehl unter-
teilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ 1
X 10 X 10
0 W D x 16
1 x 160 : ↵
Hinweis Die Worte DM 1024 bis DM 6143 in CPM1/CPM1A– und DM 2048 bis DM 6143
in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen können nicht spezifiziert wer-
den. Wird versucht, in diese Worte zu schreiben, wird der Schreibvorgang für
diese Worte nicht ausgeführt und der Befehl wird mit einer normalen Fertigmel-
dung abgeschlossen.
267
Host–Link–Befehle Abschnitt 4-5
Hinweis 1. Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird
ein Fehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. ein
aus 3 Worten bestehendes Datenpaket mit dem Anfangswort DM 1022 in
eine CPM1 geschrieben werden, belegt das letzte Wort DM 1024. Der
Schreibvorgang wird abgebrochen, da für die Speicherung DM 1024 jen-
seits des beschreibbaren Bereichs liegen würde.
2. Achten Sie bei der Spezifikation des DM–Bereichs darauf, dass dieser bei
den verschiedenen CPU–Modellen unterschiedlich ist.
@ 1
X 10 X 10
0 W J x 10
3 x 102 X 101 X 100 x 16
3 x 162 x 16
1 0
x 16 : ↵
@ 1
X 10 X 10
0 W J x 16
1 x 160 :: ↵
@ 1
X 10 X 10
0 R # OP
1 2
OP OP
3 4
OP x 10
3 2 X 101 X 100
x 10 : ↵
268
Host–Link–Befehle Abschnitt 4-5
Antwortformat
@ 1
X 10 X 10
0 R # x 16
1 x 160 x 10
3 2 X 101 X 100
x 10 : ↵
@ 1
X 10 X 10
0 R $ x 10
3 x 102 X 101 X 100 OP1 OP2 OP3 OP4 x 10
3 2
x 10 X 10
1 X 100 : ↵
@ 1
X 10 X 10
0 R $ x 16
1 x 160 OP1 OP2 OP3 OP4 x 10
3 x 102 X 101 X 100 : ↵
269
Host–Link–Befehle Abschnitt 4-5
Hinweis Spezifizieren Sie den Befehlsnamen in ”Name”. Verwenden Sie für diese Ein-
stellung 4 Zeichen. Füllen Sie evtl. Lücken mit Leerzeichen, um den Befehl auf 4
Zeichen zu vervollständigen.
@ 1
X 10 X 10
0 W # OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100 x 103 x 102 X 101 X 100 : ↵
@ 1
X 10 X 10
0 W # 1 x 160
x 16 : ↵
270
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 W $ 3 x 102 X 101 X 100 OP1 OP2 OP3 OP4
x 10 x 10
3 x 102 X 101 X 100
@ 1
X 10 X 10
0 W $ 1 x 160
x 16
: ↵
271
Host–Link–Befehle Abschnitt 4-5
Hinweis *Bei der SRM1(–V2) umfasst der DM–Bereich 0000 bis 2047.
@ 1
X 10 X 10
0 M S : ↵
@ 1
X 10 X 10
0 M S 1 x 160
x 16 x 16
3 x 16
2 x 16
1 0 16 Zeichen
x 16 : ↵
272
Host–Link–Befehle Abschnitt 4-5
x 16
3 x 16
2
Bit 15 14 13 12 11 10 9 8
0 0 0 0
Bit Betriebsart
1: schwerwiegender 9 8
Fehler
1: FALS generiert 0 0 PROGRAM Dieser Bereich un-
1 0 RUN terscheidet sich von
dem Bereich des Be-
1 1 MONITOR fehls “Status spei-
chern –– SC”
x 16
1 x 16
0
Bit 7 6 5 4 3 2 1 0
1 0 0 0
Schreibgeschützter Programmbereich
0: Schreibschutz aktiviert
Bit Programm– 1: Nicht schreibgeschützt
6 5 4 bereich
0 0 0 Kein
0 0 1 4 kB
0 1 0 8 kB
@ 1
X 10 X 10
0 S C x 16
1 x 160 : ↵
@ 1
X 10 X 10
0 S C x 16
1 x 160 : ↵
273
Host–Link–Befehle Abschnitt 4-5
Byte). Mit den rechten Stellen wird die Betriebsart festgelegt. Setzen Sie alle
verbleibenden Stellen auf “00”.
x 16
1 x 16
0
Bit 7 6 5 4 3 2 1 0
0 0 0 0 0 0
Bit Betriebsart
1 0
0 0 PROGRAM
Dieser Bereich unter-
1 0 MONITOR scheidet sich von dem
1 1 RUN Bereich des Befehls
“Status lesen –– MS”
@ 1
X 10 X 10
0 M F 1
X 10 X 10
0 : ↵
@ 1
X 10 X 10
0 M F x 16
1 x 160 x 16
3 x 162 x 16
1 x 160 x 16
3 x 162 1 x 160
x 16 : ↵
274
Host–Link–Befehle Abschnitt 4-5
CPM1/CPM1A/CPM2A–CPM2C–SPS–Systeme
1. Wort
x 16
3 x 16
2 x 16
1 x 16
0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0
2. Wort
x 16
3 x 16
2 x 16
1 x 16
0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0
SRM1(–V2)–SPS–Systeme
1. Wort
x 16
3 x 16
2 x 16
1 x 16
0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 0 0
2. Wort
x 16
3 x 16
2 x 16
1 x 16
0
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0
275
Host–Link–Befehle Abschnitt 4-5
Befehlsformat
@ 1
X 10 X 10
0 K S OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100 X 101 X 100 : ↵
@ 1
X 10 X 10
0 K S 1 x 160
x 16 : ↵
Hinweis Für die Eingabe unter “Name” müssen vier Zeichen verwendet werden. Sind nur
zwei Zeichen vorgesehen, müssen die restlichen Zeichen durch Leerzeichen
(Leerz.) ergänzt werden.
@ 1
X 10 X 10
0 K R OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100 X 101 X 100 : ↵
276
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 K R x 16
1 x 160 : CR
Hinweis Für die Eingabe unter “Name” müssen vier Zeichen verwendet werden. Sind nur
zwei Zeichen vorgesehen, müssen die restlichen Zeichen durch Leerzeichen
(Leerz.) ergänzt werden.
@ 1
X 10 X 10
0 F K OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100
FCS– Ende–
Bit 15 14 13 12 11 10 1 0 Prüfzeichen zeichen
@ 1
X 10 X 10
0 F K x 16
1 x 160 : ↵
277
Host–Link–Befehle Abschnitt 4-5
Die Bits, die lediglich gesetzt oder rückgesetzt werden, ändern ihren Status bei
der nächsten Programmausführung. Die zwangsweise gesetzten/rückgesetz-
ten Bits jedoch behalten ihren Status solange, bis der Status aufgehoben wird.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ 1
X 10 X 10
0 F K 1 x 160
x 16 : ↵
278
Host–Link–Befehle Abschnitt 4-5
Befehlsformat
@ 1
X 10 X 10
0 K C : ↵
@ 1
X 10 X 10
0 K C x 16
1 x 160 : CR
@ 1
X 10 X 10
0 M M : ↵
@ 1
X 10 X 10
0 M M x 16
1 x 160 1 x 160
x 16 : ↵
Parameter SPS–Modellcodes
Der gelesene Code der eingesetzten SPS ist ein 2–stelliger Hexadezimalwert.
SPS– Code Modell
01 C250
02 C500
03 C120
0E C2000
10 C1000H
11 C2000H/CQM1/CPM2A/CPM2C/CPM1/CPM1A/SRM1(-V2)
12 C20H/C28H/C40H/C200H/C200HS
20 CV500
21 CV1000
22 CV2000
40 CVM1-CPU01-E
41 CVM1-CPU11-E
42 CVM1-CPU21-E
4-5-27 Test – TS
Mit diesem Befehl wird eine Anzahl von Zeichen (max. 122) vom Host–PC über-
tragen.
Befehlsformat
@ 1
X 10 X 10
0 T S 122 Zeichen max. : ↵
279
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 T S 122 Zeichen max. : ↵
@ 1
X 10 X 10
0 R P : ↵
@ 1
X 10 X 10
0 R P x 16
1 x 160 x 16
1 x 160 : ↵
@ 1
X 10 X 10
0 W P x 16
1 x 160 : CR
@ 1
X 10 X 10
0 W P x 16
1 x 160 : CR
280
Host–Link–Befehle Abschnitt 4-5
@ 1 0 Q Q M R OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100 OP1 OP2
X 10 X 10 ,
OP1 OP2 OP3 OP4 x 103 x 102 X 101 X 100 OP1 OP2 : ↵
,
@ 1
X 10 X 10
0 Q Q M R 1 x 160
x 16 : ↵
281
Host–Link–Befehle Abschnitt 4-5
Hinweis *Bei der SRM1(–V2) umfasst der DM–Bereich 0000 bis 2047.
(S): Leerzeichen.
Trennzeichen (Befehl)
Die auszulesende Informationen werden nacheinander, getrennt durch ein
Trennzeichen (,) spezifiziert. Es können max.128 Lesebereiche spezifiziert wer-
den. (Werden Istwerte von Zeitgebern/Zählern spezifiziert, wird auch der Status
des Fertig–Bits übertragen, deshalb handelt es sich hier um zwei Leseberei-
che).
(QQIR) Leseaufforderung
Bit–, Wort– und Zeitgeber–/Zähler–Werte werden entsprechend ihrer Registrie-
rung gruppenweise gelesen und in einer Antwort zurückgesendet, wie es im
QQMR–Befehls spezifiziert war.
Befehlsformat
@ 1
X 10 X 10
0 Q Q I R : ↵
282
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 Q Q I R 1 x 160 EIN/
x 16
3 2 1 0 ,
AUS x 10 x 10 X 10 X 10
EIN/
, , , x 16
3 x 162 x 16
1 x 160 : ↵
AUS
4-5-31 Abbruch – XZ
Mit dem Befehl “Abbruch” wird ein innerhalb der Host–Link–Schnittstelle ablau-
fender Prozess abgebrochen und die Freigabe zum Empfang des nächsten Be-
fehles bewirkt. Auf den ABBRUCH–Befehl erfolgt keine Antwort.
Befehlsformat
@ 1
X 10 X 10
0 X Z : CR
4-5-32 Initialisieren – ::
Durch den Befehl Initialisierung wird die Übertragungssteuerung aller an den
Host–PC angeschlossenen Steuerungen initialisiert. Dieser Befehl benötigt
keine Angabe der Stationsnummer oder FCS. Auf diesen Befehl erfolgt keine
Antwort.
Befehlsformat
@ : : ↵
4-5-33 TXD–Antwort – EX
Dieser Befehl wird von nur den SPS–Systemen CPM2A/CPM2C unterstützt.
Dies ist das verwendete Antwortsformat, wenn der TXD(48)–SPS–Befehl in
dem Host–Link–Kommunikationsmodus ausgeführt wird. EX besitzt keinen Pa-
rameter.
TXD(48) wandelt die spezifizierten Daten in ASCII um und sendet diese in dem
Format zum Host–Computer. Die Antwort kann bis zu 122 ASCII–Zeichen ent-
halten. (TXD (48) unterstützt keine Mehrfachrahmen.)
283
Host–Link–Befehle Abschnitt 4-5
@ 1
X 10 X 10
0 E X In TXD(48) spezifizierte Daten : ↵
@ X 101 X 100 I C : ↵
284
KAPITEL 5
Speicherbereiche
Dieses Kapitel beschreibt die Struktur der SPS–Speicherbereiche und deren Anwendung.
285
Speicherbereichsfunktionen Abschnitt 5-1
5-1 Speicherbereichsfunktionen
5-1-1 Speicherbereichsstruktur
CPM1/CPM1A Die folgenden Speicherbereiche können mit der CPM1/CPM1A verwendet wer-
den.
Datenbereich Worte Bits Funktion
IR– Eingangsbe- IR 000 ... IR 009 IR 00000 ... IR 00915 Diese Bits sind den physikalischen Ein– und Aus-
Bereich1 reich (10 Worte) (160 Bits) g g zugewiesen.
gängen g
Ausgangsbe- IR 010 ... IR 019 IR 01000 ... IR 01915
reich (10 Worte) (160 Bits)
Arbeits– IR 200 ... IR 231 IR 20000 ... IR 23115 Arbeitsmerker können beliebig innerhalb des Pro-
bereich (32 Worte) (512 Bits) gramms verwendet werden.
SR(Systemmerker)– SR 232 ... SR 255 SR 23200 ... SR 25515 Diese Systemmerker besitzen spezifische Funk-
Bereich (24 Worte) (384 Bits) tionen, z.B. als Merker- und Steuerbits.
TR (Temporärer --- TR 0 ... TR 7 Diese Merker dienen zur temporären Speiche-
Merker)–Bereich (8 Bits) rung des EIN/AUS-Zustands in Programmver-
zweigungen.
HR–Bereich2 HR 00 ... HR 19 HR 0000 ... HR 1915 Diese Bits speichern Daten und behalten ihren
(20 Worte) (320 Bits) EIN/AUS–Zustand, nachdem die Spannungsver-
sorgung ausgeschaltet wurde o. der Betrieb ge-
startet oder gestoppt wird. Sie werden wie Ar-
beitsmerker eingesetzt.
AR–Bereich AR 00 ... AR 15 AR 0000 ... AR 1515 Diese Systemmerker besitzen spezifische Funk-
(16 Worte) (256 Bits) tionen, z.B. als Merker- und Steuerbits.
LR(Schnittstellen– LR 00 ... LR 15 LR 0000 ... LR 1515 Wird bei 1:1–PC–Link mit einer anderen SPS ver-
merker)–Bereich1 (16 Worte) (256 Bits) wendet.
Zeitgeber/Zähler– TC 000 ... TC 127 Zeitgeber und Zähler verwenden den Befehl TIM,
Bereich2 (Zeitgeber/Zähler–Nummern) 3 TIMH(15), CNT und CNTR(12). Für Zeitgeber
und Zähler werden dieselben Nummern verwen-
det.
DM Lesen/ DM 0000 ... DM 0999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten– Speichern2 DM 1022 ... DM 1023 weise. Die Daten werden auch beim Ausschalten
Merker)– (1002 Worte) der Spann.versorgung oder bei Betriebsbeginn/–
Bereich ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-
nerhalb des Programms gelesen und in diese ge-
schrieben werden.
Fehler– DM 1000 ... DM 1021 --- Speichert Zeitpunkt und Fehlercode. Diese Worte
protokoll (22 Worte) können als gewöhnliche Lese/Schreib–DM–
Worte verwendet werden, wenn die Fehlerproto-
koll–Funktion nicht verwendet wird.
Nur Lesen4 DM 6144 ... DM 6599 --- Können vom Programm nicht überschrieben wer-
(456 Worte) den.
SPS–Konfi- DM 6600 ... DM 6655 --- Speichert verschiedene Steuerparameter der
guration4 (56 Worte) SPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, können
als Arbeitsmerker verwendet werden.
2. Ein Kondensator dient zur Datensicherung des HR–, AR–, Zähler– und Le-
se/Schreib–DM–Bereiches. Die Datensicherungszeit variiert mit der Umge-
bungstemperatur, aber bei 250C hält der Kondensator den Speicherinhalt
20 Tage lang aufrecht. Ist die Spannungsversorgung über einen die Siche-
rungszeit überschreitenden Zeitraum ausgeschaltet, wird der Speicherin-
halt gelöscht und AR1314 aktiviert (wird aktiviert, wenn keien Daten mehr
über die Kondensatorspannung aufrechterhalten werden.) Ein Diagramm
mit einem Vergleich der Datensicherungszeit/Temperatur finden Sie im
Technischen Handbuch der CPM1/CPM1A (Abschnitt 2−1−2 Merkmale).
3. Beim Zugriff auf einen Istwert werden TC-Worte als Wortdaten und beim Zu-
griff auf den Fertigmerker als Bitdaten verwendet.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben
aber über ein Programmiergerät geändert werden.
286
Speicherbereichsfunktionen Abschnitt 5-1
HR–Bereich2 HR 00 ... HR 19 HR 0000 ... HR 1915 Diese Bits speichern Daten und behalten ihren
(20 Worte) (320 Bits) EIN/AUS–Zustand, nachdem die Spannungsver-
sorgung ausgeschaltet wurde oder der Betrieb
gestartet oder gestoppt wird. Sie werden wie Ar-
beitsmerker eingesetzt.
AR–Bereich2 AR 00 ... AR 23 AR 0000 ... AR 2315 Diese Merker besitzen spezifische Funktionen,
(24 Worte) (384 Bits) z.B. als Systemmerker und Steuerbits.
LR(Schnittstellenmer- LR 00 ... LR 15 LR 0000 ... LR 1515 Wird für einen 1:1–PC–Link mit einer anderen
ker)–Bereich1 (16 Worte) (256 Bits) SPS verwendet.
Zeitgeber/Zähler– TC 000 ... TC 255 Zeitgeber und Zähler verwenden die TIM–,
Bereich2 (Zeitgeber/Zähler–Nummern) 3 TIMH(15)–, CNT–, CNTR(12)–, TMHH(––)– und
TIML(––)–Befehle. Für Zeitgeber/Zähler werden
dieselben Nummern verwendet.
DM Lesen/ DM 0000 ... DM 1999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten– Speichern2 DM 2022 ... DM 2047 weise. Die Worte werden auch beim Ausschalten
Merker)– (2,026 Worte) der Spannungsversorgung oder bei Betriebsbe-
Bereich ginn oder –ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-
nerhalb des Programms gelesen und geschrie-
ben werden.
Fehlerprotokoll DM 2000 ... DM 2021 --- Speichert Zeitpunkt und Fehlercode. Diese Worte
(22 Worte) können als gewöhnliche Lese/Schreib–DM–
Worte verwendet werden, wenn die Fehlerproto-
koll–Funktion nicht verwendet wird.
Nur Lesen4,5 DM 6144 ... DM 6599 --- Können vom Programm nicht überschrieben wer-
(456 Worte) den.
SPS–Konfigu- DM 6600 ... DM 6655 --- Speichert verschieden Steuerparameter von
ration4,5 (56 Worte) SPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, können
als Arbeitsmerker verwendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Lese/Schreibbereichs wird über
die Batterie der CPU–Baugruppe abgesichert. Wird die Batterie entfernt
oder fällt diese aus, geht der Inhalt dieser Bereiche verloren und wird auf die
Standardwerte zurückgesetzt. (In CPM2C–CPU–Baugruppen ohne Batte-
rie werden diese Bereiche über die in einem Kondensator gespeicherte
Spannung abgesichert.)
3. Wird eine TC–Nummer als ein Wortoperand verwendet, wird auf den Zeit-
geber oder Zähler–Istwert zugegriffen; wird er als Bitoperand verwendet,
wird auf den Fertigmerker zugegriffen.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben
aber von einem Programmiergerät geändert werden.
5. Das Programm und die Daten in 6144 DM bis DM 6655 werden im Flash–
Speicher abgelegt.
287
Speicherbereichsfunktionen Abschnitt 5-1
SRM1(–V2) Die folgenden Speicherbereiche können mit der SRM1(–V2) verwendet wer-
den.
Datenbereich Worte Bits Funktion
IR– Eingangsbe- IR 000 ... IR 007 IR 00000 ... IR 00715 Diese Bits sind den externen Ein–/Ausgängen
Bereich1 reich (8 Worte) (128 Bits) zugewiesen. Der EIN/AUS–Zustand der E/A–Bits
enspricht dem der Ein–/Ausgänge
Bit Betriebsart
(Wird der CompoBus/S in der 128 Bit–Betriebsart
Ausgangsbe- IR 010 ... IR 017 IR 01000 ... IR 01715 verwendet, können IR 004 bis IR 007 und IR 014
reich (8 Worte) (128 Bits) bis IR 017 auch als Arbeitsmerker verwendet
werden.)
Arbeits– IR 008 bis IR 009 IR 00800 bis IR 00915 Arbeitsmerker können beliebig innerhalb des Pro-
bereich IR 018 bis IR 019 IR 01800 bis IR 01915 gramms verwendet werden. IR 232 bis IR 239
IR 200 bis IR 239 IR 20000 bis IR 23915 werden jedoch als MAKRO–Eingangsbereich ver-
(44 Worte) (704 Bit) wendet, wenn MCRO(99) verwendet wird.
SR (Systemmerker)– SR 240 ... SR 255 SR 24000 ... SR 25507 Diese Systemmerker besitzen spezifische Funk-
Bereich (16 Worte) (248 Bits) tionen, z.B. als Merker- und Steuerbits.
TR (Temporärer Mer- --- TR 0 ... TR 7 Diese Merker dienen zur temporären Speiche-
ker)–Bereich (8 Bits) rung des EIN/AUS-Zustands in Programmver-
zweigungen.
HR–Bereich2 HR 00 ... HR 19 HR 0000 ... HR 1915 Diese Bits speichern Daten und behalten ihren
(20 Worte) (320 Bits) EIN/AUS–Zustand, nachdem die Spannungsver-
sorgung ausgeschaltet wurde o. der Betrieb ge-
startet oder gestoppt wird. Sie werden wie Ar-
beitsmerker eingesetzt.
AR–Bereich2 AR 00 ... AR 15 AR 0000 ... AR 1515 Diese Systemmerker besitzen spezifische Funk-
(16 Worte) (256 Bits) tionen, z.B. als Merker- und Steuerbits. AR 04 bis
07 werden für Slave–Funktionen verwendet. Se-
hen Sie den AR–Bereich.
LR–Bereich1 LR 00 ... LR 15 LR 0000 ... LR 1515 Wird für einen 1:1–PC–Link mit einer anderen
(16 Worte) (256 Bits) SPS verwendet.
Zeitgeber/Zähler– TC 000 ... TC 127 Zeitgeber und Zähler verwenden den Befehl TIM,
Bereich2 (Zeitgeber/Zähler–Nummern)3 TIMH(15), CNT und CNTR(12). Für Zeitgeber
und Zähler werden dieselben Nummern verwen-
det.
DM Lesen/ DM 0000 ... DM 1999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten- Speichern2 (2.000 Worte) weise. Die Worte werden auch beim Ausschalten
merker)– der Spannungsversorgung, bei Betriebsbeginn/–
Bereich ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-
nerhalb des Programms gelesen und geschrie-
ben werden.
Fehler– DM 2000 ... DM 2021 --- Speichert Zeitpunkt und Fehlercode. Diese Worte
protokoll (22 Worte) können als gewöhnliche Lese/Schreib–DM–
Worte verwendet werden, wenn die Fehlerproto-
koll–Funktion nicht verwendet wird.
Nur Lesen4 DM 6144 ... DM 6599 --- Können vom Programm nicht überschrieben wer-
(456 Worte) den.
SPS–Konfi- DM 6600 ... DM 6655 --- Speichert verschieden Steuerparameter von
guration4 (56 Worte) SPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, können
als Arbeitsmerker verwendet werden.
2. Ein Kondensator oder eine Batterie dient zur Datensicherung des HR–,
AR–, Zähler– und Lese/Schreib–DM–Bereiches. Ein Diagramm mit der Ge-
genüberstellung der Datensicherungszeit/Temperatur finden Sie im Techni-
schen Handbuch der SRM1 Master–Steuerungsbaugruppe in Abschnitt
2-1-2 Technische Daten.
3. Beim Zugriff auf einen Istwert werden TC-Worte als Wortdaten und beim Zu-
griff auf Fertigmerker als Bitdaten verwendet.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben
aber über ein Programmiergerät geändert werden.
288
Speicherbereichsfunktionen Abschnitt 5-1
5-1-2 Funktionen
IR–Bereich Die Funktionen der verschiedenen Bereiche werden im folgenden erklärt.
Bei den CPM1–, CPM1A–, CPM2A– und CPM2C–SPS–Systemen sind die
E/A–Adressbereichs–Bits von IR 00000 bis IR 01915 den Klemmen auf der
CPU–Baugruppe und denen der E/A–Erweiterungsbaugruppen zugewiesen.
Bei der SRM1(–V2) sind die E/A–Adressbereichs–Bits von IR 00000 bis IR
00715 und IR 01000 bis IR 01715 CompoBus/S–Slaves zugewiesen. Sie geben
den EIN/AUS-Zustand der Eingangs– und Ausgangssignale wieder. Eingangs-
bits beginnen bei IR 00000 und Ausgangsbits bei IR 01000.
IR Worte, die nicht Ein– oder Ausgängen zugewiesen sind, können als Arbeits-
worte verwendet werden. Zusätzlich können nicht verwendete Bits in IR–Wor-
ten, die Ausgängen zugewiesen sind, als Arbeitsmerker verwendet werden.
Arbeitsmerker Die Arbeitsmerker können innerhalb eines Programmes frei verwendet werden,
jedoch nur für Funktionen innerhalb des Programms und nicht zur Adressierung
physikalischer Ein–/Ausgänge.
Hinweis 1. Die in den folgenden Tabellen aufgeführten CPU–Eingänge können als nor-
male Eingänge arbeiten oder diesen können in der SPS–Konfiguration be-
sondere Funktionen zugewiesen werden.
Besondere Funktionen für die Bits IR 00000 bis IR 00002 werden in DM
6642 spezifiziert:
Bit– SPS–Konfigurationseinstellung (DM 6642 Bits 08 bis 15)
adresse
d 00 01 02, 03 oder 04
IR 00000 Werden als Werden als schnelle Werden als Eingänge für eine
normale Zählereingänge synchronisierte
IR 00001 g g
Eingänge verwendet. Impulssteuerung verwendet.
verwendet.
d t
IR 00002 Wird als normaler Eingang
verwendet.
Besondere Funktionen für die Bits IR 00003 bis IR 00006 werden in
DM 6628 spezifiziert:
Bit– Bits
s in SPS–Konfigurationseinstellung (in DM 6628)
adresse
d DM 6628 0 1 2
IR 00003 00 bis 03 Werden als Werden als Werden als
normale Eingänge Interrupt
Interrupt– Eingänge mit
IR 00004 04 bis 07 verwendet. Eingänge Im uls
Impuls–
IR 00005* 08 bis 11 (einschließlich speicherung
Zählbetriebsart) verwendet
verwendet.
IR 00006* 12 bis 15 verwendet.
Hinweis *Eingang 00006 ist nicht vorhanden und Eingang 00005 muss als
normaler Eingang in CPM2C–CPU–Baugruppen mit 10 Ein–/Aus-
gängen verwendet werden.
2. Ausgangsbits IR 01000 und IR 01001 können als normale Ausgänge arbei-
ten oder sie können mit PULS(65), SYNC(––) oder PWM(––) als Impuls–
ausgänge verwendet werden. (Verwenden Sie eine CPU–Baugruppe mit
Transistorausgänge für Impulsausgabefunktionen.)
Befehl Funktion
PULS (65) Mit SPED(64):
Einphasige Impulsausgaben ohne Beschleunigung und Abbremsung
Mit ACC(––):
Einphasige Impulsausgaben mit trapezförmiger
Beschleunigung/Abbremsung
SYNC(––) Synchronisierte Impulssteuerung
PWM(––) Impulsausgabe mit variablem Tastverhältnis
SR–Bereich Diese Bits dienen hauptsächlich als Merker für den SPS-Betrieb oder enthalten
Ist– und Sollwerte für diverse Funktionen. Einzelheiten über die diversen Bit-
funktionen finden Sie in den relevanten Kapiteln dieses Handbuches oder im
Anhang C Speicherbereiche.
289
Speicherbereichsfunktionen Abschnitt 5-1
290
Speicherbereichsfunktionen Abschnitt 5-1
Speicherbereichs–Änderung Beachten Sie beim erstmaligen Betrieb der SRM 1 nach erfolgten Änderungen
im UM–, DM–Nur–Lese– (DM 6144 bis DM 6599) und SPS–Konfigurationsbe-
reich (DM 6600 bis DM 6655) die Effekte, die sich durch die SRM1–Verzögerung
beim Betrieb mit anderen Geräten ergeben.
Der erste Betrieb der SRM1 nach den oben genannten Änderungen setzt maxi-
mal 850 ms später als bei einem normalen Einschalten ohne Änderungen ein.
SRM1–Zykluszeiten Eine Zykluszeit–Überlaufwarnung wird nicht ausgegeben, wenn jede der fol-
genden Operationen in der MONITOR–Betriebsart ausgeführt wird. Seien Sie
vorsichtig mit der Wirkung der On–line–Editierung in bezug auf die SRM1–E/A–
Ansprechzeit.
• Änderungen im Programm, wobei die On–line–Editierung verwendet wird.
• Änderungen im DM–Nur–Lese–Bereich (DM 6144 bis DM 6599).
• Änderung im SPS–Konfigurationsbereich (DM 6600 bis DM 6655).
Wird eine der zuvor beschriebenen Operationen durchgeführt, wird die
SRM1–Zykluszeit um maximal 850 ms verlängert. Während dieser Zeitspanne
werden Interrupts während des Speicherns des Programms oder des Speicher-
inhalts deaktiviert.
291
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
20
0 CPM1–20CDRj
C 0C j Eingang 12 Eingänge: 00000 ... 00011 1 (sehen
(se e Sie
Se 40
0
Ausgang 8 Ausgänge: 01000 ... 01007 Hi
Hinweis
i 1)
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-
halten auch die E/A von E/A–Erweiterungsbaugruppen.
2. Beim Einsatz einer anderen CPM1–CPU–Baugruppe als der
CPM1–30CDRj–V1 kann eine der folgenden E/A–Erweiterungsbaugrup-
pen mit 20 Anschlüssen an die SPS angeschlossen werden:
• CPM1–20EDR (Relaisausgänge)
• CPM1A–20EDT (NPN–Transistorausgänge)
• CPM1A–20EDT1 (PNP–Transistorausgänge)
3. Beim Einsatz einer CPM1–30CDRj–V1 können bis zu drei 3
CPM1/CPM1A–E/A–Erweiterungs– oder CPM1A-MAD01 Analog–E/A–
Baugruppen an die SPS angeschlossen werden.
CPM1A
Anzahl der E/A Modell– E/A Zugewiesene Bits Max. Anzahl der Max. Anzahl
(auf der CPU– nummer E/A– der E/A
Baugruppe) Erweiterungs– (sehen Sie
baugruppen Hinweis 1)
10 CPM1A-10CDR-j Eingang 6 Eingänge: 00000 ... 00005 Kein 10
CPM1A-10CDT-D
CPM1A-10CDT1-D Ausgang 4 Ausgänge: 01000 ... 01003
20 CPM1A-20CDR-j Eingang 12 Eingänge: Kein 20
CPM1A-20CDT-D 0000 bis 00011
CPM1A 20CDT1 D
CPM1A-20CDT1-D
Ausgang 8 Ausgänge: 01000 ... 01007
30 CPM1A-30CDR-j Eingänge 18 Eingänge: 3 (sehen Sie den 90
CPM1A-30CDT-D 00000 bis 00011 Hinweis)
CPM1A-30CDT1-D 00100 bis 00105
Ausgang 12 Ausgänge:
01000 bis 01007
01100 bis 01103
40 CPM1A-40CDR-j Eingänge 24 Eingänge: 3 (sehen Sie den 100
CPM1A-40CDT-D 00000 bis 00011 Hinweis)
CPM1A-40CDT1-D 00100 bis 00111
Ausgang 16 Ausgänge:
01000 bis 01007
01100 bis 01107
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-
halten auch die E/A von E/A–Erweiterungsbaugruppen.
292
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-
halten auch die E/A von E/A–Erweiterungsbaugruppen.
2. Beim Einsatz einer CPM2A–CPU–Baugruppe können bis zu 3 Erweite-
rungsbaugruppen oder E/A–Erweiterungsbaugruppen an die SPS ange-
schlossen werden.
CPU–Baugruppenzuweisung
• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsbits werden von IR 00000 an beginnend zugeordnet.
• Ausgangsbits werden von IR 01000 an beginnend zugeordnet.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,
können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,
können nicht als Arbeitsmerker verwendet werden.
CPU–Baugruppen mit 10 E/A–Anschlüssen
6 Eingänge CPM1-10CDR-j
IR 00000 bis IR 00005 CPM1A-10CDjj
4 Ausgänge
IR 01000 bis IR 01003
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
293
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
12 Eingänge
CPM1-20CDR-j
IR 00000 bis IR 00011
CPM1A-20CDj-j
CPM2A-20CDj-j
8 Ausgänge
IR 01000 bis IR 01007
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000
Eingänge
IR 001 Bitte nicht verwenden
IR 010
Ausgänge
IR 011
16 Ausgänge
IR 01000 bis IR 01007
IR 01100 bis IR 01107
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000
Eingänge Bitte nicht verwenden
IR 001
IR 010
Ausgänge
IR 011
294
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
24 Ausgänge
IR 01000 bis IR 01007
IR 01100 bis IR 01107
IR 01200 bis IR 01207
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000
Eingänge IR 001 Bitte nicht verwenden
IR 002
IR 010
Ausgänge IR 011
IR 012
5-2-2 E/A–Erweiterungsbaugruppen
Anzahl der Modell– E/A Zugewiesene Bits Kompatible
E/A nummer CPU–Baugruppen
8 CPM1A-8ED Eingang 8 Eingänge: Wort (m+1), Bit 00 bis 07 CPM1
CPM1A-30/40
Ausgang --- CPM2A
8 CPM1A-8ER Eingang --- CPM1
CPM1A-8ET CPM1A-30/40
CPM1A-8ET1 Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07 CPM2A
20 CPM1A-20EDR Eingang 12 Eingänge: Wort (m+1), Bit 00 bis 11 CPM1
CPM1A-20EDR1
CPM1A 20EDR1 CPM1A-30/40
CPM1A 30/40
CPM1A-20EDT Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07 CPM2A
CPM1A-20EDT1
20 CPM1A-20EDR Eingang 12 Eingänge: Wort (m+1), Bit 00 bis 11 CPM1
CPM1A-30/40
Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07 CPM2A
Hinweis “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird , falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, falls diese angeschlossen ist.
E/A–Erweiterungsbaugruppenzuweisung
• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort
(m+1) zugewiesen, wobei “m” das letzte Eingangswort ist, das der CPU–, der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, fall diese bereits angeschlossen ist.
• Ausgangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort
(n+1) zugewiesen, wobei “n” das letzte Eingangswort ist, das der CPU–, der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, fall diese bereits angeschlossen ist.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,
können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,
können nicht als Arbeitsmerker verwendet werden.
295
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
8 Eingänge
CPM1A-8ED
Wort (m+1), Bits 00 bis 07
Keine Ausgänge
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
8 Ausgänge
Wort (n+1), Bits 00 bis 07
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge n+1
12 Eingänge CPM1-20EDR
Wort (m+1), Bits 00 bis 11
CPM1A-20EDR
CPM1A-20EDR1
CPM1A-20EDT
8 Ausgänge CPM1A-20EDT1
Wort (n+1), Bits 00 bis 07
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge m+1 Bitte nicht verwenden
Ausgänge n+1
5-2-3 Erweiterungsbaugruppen
Baugruppe Modell– E/A Zugewiesene Worte Max. Anzahl der Kompatible
nummer Baugruppen CPU–
Baugruppen
Analoge E/A– CPM1A-MAD01 Eingang 2 Eingänge: m+1, m+2 3 (sehen Sie CPM1
Baugruppe Hinweis 2) CPM1A
Ausgang 1 Ausgang: n+1 CPM2A
Temperaturfühler–Bau
e eau ü e au C
CPM1A–TS001
S00 Eingang 2 Eingänge: m+1, m+2 3 C
CPM1A
gruppen CPM1A TS101
CPM1A–TS101 Ausgang --- CPM2A
CPM1A-TS002
C S00 Eingang 4 Eingänge: m+1 bis m+4 1 CPM1A
C
CPM1A TS102
CPM1A-TS102 Ausgang --- CPM2A
Co o us/S /
CompoBus/S–E/A–Lin CPM1A-SRT21
C S Eingang 1 Eingang: m + 1 3 C
CPM1A
k B
k–Baugruppe Ausgang 1 Ausgang: n+1 CPM2A
Hinweis 1. “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder
der vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-
gewiesen wird, falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder
der vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-
gewiesen wird, falls diese angeschlossen ist.
296
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
CPM1A-MAD01
2 Analogeingänge
Eingang 0: Wort (m+1)
Eingang 1: Wort (m + 2)
1 analoge Ausgang
Ausgang 0: Wort (n + 1)
Temperaturfühler–Baugruppen
CPM1A-TS001/TS101 CPM1A-TS002/TS102
2 Temperatureingänge 4 Temperatureingänge
Eingang 0: Wort (m+1) Eingang 0: Wort (m+1)
Eingang 1: Wort (m + 2) Eingang 1: Wort (m+2)
Eingang 2: Wort (m+3)
Eingang 3: Wort (m+4)
CompoBus/S–E/A–Link–Baugruppen
CPM1A-SRT21
8 Eingänge
Eingang: Wort (m + 1)
8 Ausgänge
Ausgang: Wort (n + 1)
Hinweis Eingangsbits 00 bis 07 des Wortes (m+1) sind Ausgänge des Masters. Aus-
gangsbits 00 bis 07 des Wortes (n+1) sind Eingänge des Masters.
297
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
8 Ausgänge 8 Ausgänge
IR 01000 bis IR 01007 IR 01100 bis IR 01107
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
Eingänge
IR 001 Bitte nicht verwenden
IR 010
Ausgänge
IR 011
• IR 00000 bis IR 00011 und IR 00100 bis IR 00111 werden als Eingangsbits zu-
gewiesen. IR 00012 bis 00015 können nicht verwendet werden.
• IR 01000 bis IR 01007 und IR 01100 bis IR 01107 werden als Ausgangsbits
zugewiesen. IR 01108 bis IR 01115 können als Arbeitsmerker verwendet wer-
den.
• IR 002 bis IR 009 der Eingangsworte und IR 012 bis IR 019 der Ausgangsworte
können alle als Arbeitsworte verwendet werden.
Beispiel: CPU–Baugruppe mit 30 Ein–/Ausgängen mit 3 zusätzlichen E/A–Erweiterungsbaugruppen
mit 20 E/A
CPU–Baugruppe mit E/A–Erweiter.–baugruppe E/A–Erweiter.–baugruppe E/A–Erweiter.–baugruppe
30 E/A–Anschlüssen (20 E/A–Anschlüssen) (20 E/A–Anschlüssen) (20 E/A–Anschlüssen)
18 Eingänge
12 Eingänge 12 Eingänge 12 Eingänge
IR 00000 bis IR 00011
IR 00100 bis IR 00105 IR 00200 bis IR 00211 IR 00300 bis IR 00311 IR 00400 bis IR 00411
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001 Bitte nicht verwenden
298
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
24 Ausgänge
IR 01000 bis IR 01007 8 Ausgänge 8 Ausgänge 8 Ausgänge
IR 01100 bis IR 01107 IR 01300 bis IR 01307 IR 01400 bis IR 01407 IR 01500 bis IR 01507
IR 01200 bis IR 01207
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001 Bitte nicht verwenden
Eingänge IR 002 Bitte nicht verwenden
IR 003 Bitte nicht verwenden
IR 004 Bitte nicht verwenden
IR 010
IR 011
Ausgänge IR 012
IR 013
IR 014
IR 015
299
E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme Abschnitt 5-2
24 Ausgänge
IR 01000 bis IR 01007
IR 01100 bis IR 01107 1 analoger Ausgang Keine Ausgänge 8 Ausgänge
IR 01200 bis IR 01207 Ausgang 1: IR 013 IR 01400 bis IR 01407
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001 Bitte nicht verwenden
Eingänge IR 002 Bitte nicht verwenden
IR 003 Für Eingang 0 der Analog–E/A–Baugruppe verwendet
IR 004 Für Eingang 1 der Analog–E/A–Baugruppe verwendet
IR 005 Für Eingang 2 der Temperaturfühler–Baugruppe verwendet
IR 006 Für Eingang 3 der Temperaturfühler–Baugruppe verwendet
IR 007 Bitte nicht verwenden
IR 010
IR 011
Ausgänge IR 012
IR 013 Für den Ausgang der Analog–E/A–Baugruppe verwendet
IR 014
300
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
24 Ausgänge
IR 01000 bis IR 01007
IR 01100 bis IR 01107 8 Ausgangsbits
IR 01200 bis IR 01207 Keine Ausgänge IR 01300 bis IR 01307
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001 Bitte nicht verwenden
Eingänge IR 002 Bitte nicht verwenden
IR 003 Für Eingang 0 der Temperaturfühler–Baugruppe verwendet
IR 004 Für Eingang 1 der Temperaturfühler–Baugruppe verwendet
IR 005 Für Eingang 2 der Temperaturfühler–Baugruppe verwendet
IR 006 Für Eingang 3 der Temperaturfühler–Baugruppe verwendet
IR 007 Bitte nicht verwenden
IR 010
IR 011
Ausgänge
IR 012
IR 013
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-
halten auch E/A von E/A–Erweiterungsbaugruppen.
2. Obwohl nur bis zu 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen mit
einer CPM2C–SPS verbunden werden können, können nicht mehr als 10
Eingangs– und 10 Ausgangsworten zugewiesen werden.
301
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
CPU–Baugruppenzuweisung
• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsbits werden von IR 00000 an beginnend zugeordnet.
• Ausgangsbits werden von IR 01000 an beginnend zugeordnet.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,
können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,
können nicht als Arbeitsmerker verwendet werden.
CPU–Baugruppe mit 10 E/A–Anschlüssen
6 Eingänge CPM2C-10CjDjj-j
IR 00000
bis
IR 00005
4 Ausgänge
IR 01000
bis
IR 01003
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge IR 000 Bitte nicht verwenden
AusgängeIR 010
12 Eingänge CPM2C-20CjDjj-j
IR 00000
bis
IR 00011
8 Ausgänge
IR 01000
bis
IR 01007
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
5-3-2 E/A–Erweiterungsbaugruppen
Anzahl der E/A Modellnummer E/A Zugewiesene Bits Max. Anzahl der
Baugruppen
8 CPM2C-8EDC
C C8 C Eingang 8 Eingänge: Wort (m+1), Bit 00 bis 07 5
Ausgang ---
16
6 CPM2C-16EDC
C C 6 C Eingang 16 Eingänge: Wort (m+1), Bits 00 bis 15 5
Ausgang ---
8 CPM2C-8ER Eingang --- 5
CPM2C-8ETC
CPM2C-8ET1C Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07
16
6 C
CPM2C-16ETC
C 6 C Eingang --- 5
CPM2C 16ET1C
CPM2C-16ET1C Ausgang 16 Ausgänge: Wort (n+1), Bits 00 bis 15
10
0 CPM2C-10EDR
C C 0 Eingang 6 Eingänge: Wort (m+1), Bits 00 bis 05 5
Ausgang 4 Ausgänge: Wort (n+1), Bits 00 bis 03
24 CPM2C-24ETC
C C C Eingang 16 Eingänge: Wort (m+1), Bits 00 bis 15 5
CPM2C 24ET1C
CPM2C-24ET1C Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07
302
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
Hinweis “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, falls diese schon angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, falls diese schon angeschlossen ist.
E/A–Erweiterungsbaugruppenzuweisung
• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort
(m+1) zugewiesen, wobei “m” das letzte Eingangswort ist, das der CPU–, der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, fall diese angeschlossen ist.
• Ausgangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort
(n+1) zugewiesen, wobei “n” das letzte Eingangswort ist, das der CPU–, der
vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-
sen wird, fall diese angeschlossen ist.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,
können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,
können nicht als Arbeitsmerker verwendet werden.
E/A–Erweiterungsbaugruppe mit 8 Eingängen
8 Eingänge CPM2C-8EDC
Wort (m+1) Bit 00
bis
Wort (m+1) Bit 07
Keine Ausgänge
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge m+1 Bitte nicht verwenden
16 Eingänge CPM2C-16EDC
Wort (m+1), Bit 00
bis
Wort (m+1), Bit 15
Keine Ausgänge
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge m+1
303
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
CPM2C-8ER
Keine Eingänge CPM2C-8ETC
CPM2C-8ET1C
8 Ausgänge
Wort (n+1), Bit 00
bis
Wort (n+1), Bit 07
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge n+1
CPM2C-16ETC
Keine Eingänge CPM2C-16ET1C
16 Ausgänge
Wort (n+1), Bit 00
bis
Wort (n+1), Bit 15
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge n+1
6 Eingänge CPM2C-10EDR
Wort (m+1), Bit 00
bis
Wort (m+1), Bit 05
4 Ausgänge
Wort (n+1), Bit 00
bis
Wort (n+1), Bit 03
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge m+1 Bitte nicht verwenden
Ausgänge n+1
16 Eingänge CPM2C-24ETC
Wort (m+1), Bit 00 CPM2C-24ET1C
bis
Wort (m+1), Bit 15
8 Ausgänge
Wort (n+1), Bit 00
bis
Wort (n+1), Bit 07
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Eingänge m+1
Ausgänge n+1
304
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
5-3-3 Erweiterungsbaugruppen
Baugruppe Modell– E/A Zugewiesene Worte Max. Anzahl der
nummer Baugruppen
Analoge
a oge E/A–Baugruppe
/ aug u e CPM2C-MAD11
C C Eingang 2 Eingänge: m+1, m+2 4
Ausgang 1 Ausgang: n+1
Temperaturfühler–Baugruppe
e eau ü e aug u e C
CPM2C-TS001
C S00 Eingang 2 Eingänge: m+1, m+2 4
CPM2C TS101
CPM2C-TS101 Ausgang ---
Co o us/S /
CompoBus/S–E/A–Link– CPM2C-SRT21
C CS Eingang 1 Eingang: m + 1 5
B
Baugruppe Ausgang 1 Ausgang: n+1
Hinweis 1. “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder
der vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-
gewiesen wird, falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder
der vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-
gewiesen wird, falls diese angeschlossen ist.
2. Da die CPM2C–MAD11–Analog–E/A–Baugruppe und die CPM2C–
TS001/101–Temperaturfühler–Baugruppe jeweils 2 E/A–Worte benötigen,
können nur vier dieser Baugruppen an die SPS angeschlossen werden.
(Die CPU–Baugruppe selbst benötigt ein Eingangswort und ein Ausgangs-
wort.) Eine andere Baugruppe, wie eine E/A–Erweiterungsbaugruppe oder
CPM2C–SRT21–CompoBus/S–E/A Link–Baugruppe kann jedoch zusätz-
lich zu den 4 Analog–E/A–Baugruppen oder Temperaturfühler–Baugrup-
pen angeschlossen werden.
Analog–E/A–Baugruppe
CPM2C-MAD11
2 Analogeingänge
Eingang 0:
Wort (m+1)
Eingang 1:
Wort (m + 2)
1 analoger
Ausgang
Ausgang 0:
Wort (n + 1)
Temperaturfühler–Baugruppe
CPM2C-TS001/TS101
2 Temperatur–
eingänge
Eingang 0:
Wort (m+1)
Eingang 1:
Wort (m + 2)
Keine Ausgänge
CompoBus/S–E/A–Link–Baugruppe
CPM2C-SRT21
8 Eingangsmerker
Eingang: Wort (m + 1)
8 Ausgangsmerker
Ausgang: Wort (n + 1)
305
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
Hinweis Eingangsmerker 00 bis 07 in Wort (m+1) sind Ausgänge des Masters. Aus-
gangsmerker 00 bis 07 in Wort (n+1) sind Eingänge des Masters.
8 Ausgänge 8 Ausgänge
IR 01000 IR 01100
bis IR bis IR
01007 01107
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
Eingänge
IR 001
IR 010
Ausgänge
IR 011
306
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001
Eingänge IR 002
IR 003
IR 004
IR 005
IR 010
IR 011
Ausgänge IR 012
IR 013
IR 014
IR 015
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
IR 001
Eingänge
IR 002
IR 003 Bitte nicht verwenden
IR 010
IR 011
Ausgänge
IR 012
IR 013
307
E/A–Zuweisung für CPM2C–SPS–Systeme Abschnitt 5-3
Bits 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
IR 000 Bitte nicht verwenden
308
Kapitel 6
Kontaktplan–Programmierung
Dieses Kapitel enthält eine Einführung in die Grundbegriffe der Kontaktplan–Programmierung. Es stellt die Befehle vor, die
dazu verwendet werden, die Basisstruktur des Kontaktplans zu erstellen und die Ausführung zu steuern. Der vollständige
Befehlssatz wird in Kapitel 7 Befehlssatz beschrieben.
309
Generelle Vorgehensweise Abschnitt 6-1
310
Befehlsterminologie Abschnitt 6-2
6-2 Befehlsterminologie
Bei der Kontaktplan–Programmierung gibt es zwei Befehlsarten. Befehle der ei-
nen entsprechen den Bedingungen im Kontaktplan und werden nur bei der Pro-
grammkonvertierung in AWL als Befehle angesehen; die andere umfasst Be-
fehle, die letztendlich entsprechend den Bedingungen im Kontaktplan ausge-
führt werden.
Die meisten Befehle besitzen mindestens einen oder mehrere Operanden, mit
denen sie verknüpft sind. Die Operanden weisen auf Daten hin bzw. übergeben
diese, mit denen der Befehl ausgeführt wird. Gelegentlich können sie als echte
numerische Werte eingegeben werden. Gewöhnlich handelt es sich aber um
Adressen von Datenbereichs–Worten oder Bits. Zum Beispiel verschiebt ein
MOVE–Befehl, dem IR 000 als Quellenoperand zugewiesen ist, den Inhalt von
IR 000 auf eine andere Adresse. Diese Zieladresse ist ebenfalls über ein Ope-
rand festgelegt. Ein Bit, dessen Adresse als Operand gekennzeichnet ist, heißt
Operandenbit; ein Wort, dessen Adresse als Operand gekennzeichnet ist, heißt
Operandenwort. Wird ein echter numerischer Wert als Konstante eingegeben,
wird ein # vorangestellt, um kenntlich zu machen, dass es sich nicht um eine
Adresse handelt.
Weitere Termini zur Befehlsbeschreibung finden Sie in Kapitel 7 Befehlssatz.
6-3 Kontaktplanstruktur
Ein Kontaktplan besteht aus einer auf der linken Seite vertikal nach unten lau-
fenden Linie, der Stromschiene, von der nach rechts horizontale Linien, die
Netzwerke, abzweigen. Entlang der Netzwerke sind die Bedingungen aufge-
führt, die zu den Befehlen auf der rechten Seite führen. Die logische Verknüfung
dieser Bedingungen bestimmt wann und wie die Befehle auf der rechten Seite
ausgeführt werden. Nachfolgend sehen Sie ein Kontaktplanbeispiel.
00100 00002 00003 HR 0500 00007 TIM 001 LR 0515 00403 00405
Befehl
Wie aus dieser Zeichnung ersichtlich ist, können die Strompfade verzweigen
und wieder zusammengeführt werden. Die vertikalen Linienpaare heißen Be-
dingungen. Bedingungen mit vertikalen Linien ohne eine Diagonale repräsen-
tieren die Schließer–Bedingung und entsprechen einem LOAD–, AND– oder
OR–Befehl. Paarweise vertikale Linien mit einer Diagonalen repräsentieren die
Öffner–Bedingung und entsprechen einem LOAD NOT–, AND NOT– oder OR
NOT–Befehl. Die Ziffer oberhalb der Bedingungen zeigt das Operandenbit für
den Befehl. Es ist der Zustand des Bits in Zusammhang mit jeder Bedingung auf
dem Strompfad, der die Ausführungsbedingung für den nachfolgenden Befehl
bestimmt. Die Art und Weise der Ausführung jedes Befehls entsprechend einer
Bedingung wird nachfolgend beschrieben. Bevor wir diese jedoch beachten,
gibt es einige zu erläuternde Basisbegriffe.
Hinweis Beim Anzeigen von Kontaktplänen mit CX–P wird (wahlweise) eine zweite
Stromschiene rechts auf dem Kontaktplan angezeigt, die mit allen Anweisun-
gen an deren rechter Seite verbunden ist. Dies ändert nicht an der Kontaktplan–
Programmausführung im funktionalen Sinn. Keine Bedingungen können zwi-
311
Kontaktplanstruktur Abschnitt 6-3
schen den Befehlen auf der rechten Seite und der rechten Stromschiene einge-
fügt werden, d.h. es müssen alle Befehle auf der rechten Seite direkt mit der
rechten Stromschiene verbunden werden. Sehen Sie bitte das CX–P–Bedie-
nerhandbuch: SPS der C–Serie für weitere Einzelheiten.
6-3-1 Basis–Begriffe
Schließer– und Abhängig von dem ihr zugewiesenen Operandenbit hat jede Bedingung entwe-
Öffner–Bedingungen der den Status EIN oder AUS. Eine Schließer–Bedingung ist EIN, wenn das
Operandenbit GESETZT ist. Eine Öffner–Bedingung ist EIN, wenn das Operan-
denbit NICHT GESETZT ist; sie ist AUS, wenn das Operandenbit GESETZT ist.
Allgemein sollte eine Schließer–Bedingung verwendet werden, wenn etwas in
Folge des Bitzustands GESETZT geschehen soll. Eine Öffner–Bedingung
sollte verwendet werden, wenn etwas in Folge des Bitzustands NICHT GE-
SETZT geschehen soll.
00000
Befehl
Der Befehl wird ausgeführt,
wenn IR Bit 00000
Schließer– GESETZT ist.
Bedingung
00000
Befehl
Der Befehl wird ausgeführt,
wenn IR Bit 00000 NICHT
Öffner– GESETZT ist.
Bedingung
Operandenbits Jedem Befehl im Kontaktplan kann jedes Bit aus den IR–, SR–, HR–, LR– oder
TC–Bereichen als Operand zugewiesen werden. Das bedeutet, dass die Bedin-
gungen im Kontaktplan über E/A–Bits, Merker, Arbeitsmerker, Zeitgeber/Zähler
usw. bestimmt werden. Die LOAD– und OUTPUT–Befehle können darüber hin-
aus Bits aus dem TR–Bereich verwenden; jedoch nur in besonderen Applikatio-
nen. Sehen Sie für weitere Informationen Abschnitt 6-3-8 Verzweigungsbe-
fehle.
Logische Blöcke Das Verhältnis der Bedingungen untereinander legt fest, wie Bedingungen und
Befehle miteinander korrespondieren. Jede Gruppe von Bedingungen, die im
Zusammenwirken ein logisches Ergebnis erzeugt, wird logischer Block ge-
nannt. Obwohl Kontaktplanprogramme geschrieben werden können, ohne den
jeweiligen logischen Block zu analysieren, ist ein Verständnis des logischen
Blocks für effizientes Programmieren notwendig und unabdingbar, wenn das
Programm als AWL erstellt werden soll.
Befehlsblock Ein Befehlsblock besteht aus allen Befehlen, die innerhalb des Kontaktplans
miteinander im Verbindung stehen, umfasst also die Befehle, zwischen denen
eine waagerechte Line quer über den Kontaktplan gezogen werden kann, ohne
eine senkrechte Line zu schneiden und den nächsten Bereich, in dem eine
gleichartige Linie gezogen werden kann.
6-3-2 AWL
Der Kontaktplan kann nicht unmittelbar über eine Programmierkonsole in die
SPS eingegeben werden. Vielmehr ist es notwendig, den Kontaktplan zunächst
in die AWL zu konvertieren. Die AWL beinhaltet exakt die gleichen Informatio-
nen wie der Kontaktplan, kann jedoch direkt in die SPS eingegeben werden. Es
kann auch direkt in AWL programmiert werden; dies ist jedoch für Anfänger oder
bei der Erstellung komplexer Programme nicht empfehlenswert. Darüberhinaus
312
Kontaktplanstruktur Abschnitt 6-3
In die Adressen– und Befehlsspalten der AWL–Tabelle werden nur Daten des
Befehlsworts eingetragen. In allen anderen Zeilen bleiben die beiden linken
Spalten frei. Sollte der Befehl keinen Zuweiser oder Bit–Operanden benötigen,
bleibt die Operanden–Spalte in der ersten Zeile leer. Es wird empfohlen, jede
leere Spalte (alle Befehlsworte, die keine Daten benötigen) durchzustreichen,
so daß die Datenspalte schnell auf eventuell ausgelassene Operanden über-
prüft werden kann.
313
Kontaktplanstruktur Abschnitt 6-3
6-3-3 Kontaktplanbefehle
Kontaktplanbefehle sind jene Befehle, die die Bedingungen des Kontaktplans
darstellen. Die Kontaktplanbefehle selbst bzw. in Verbindung mit den im wei-
teren erläuterten Befehlsblöcken gestalten die Ausführungsbedingungen, auf
denen die Ausführung aller anderen Befehle beruht.
LOAD und LOAD NOT Diese erste Bedingung steht im Kontaktplan am Anfang eines jeden logischen
Blocks und entspricht dem LOAD bzw. LOAD NOT–Befehl. Jeder dieser Be-
fehle benötigt in der AWL eine Zeile. Im nachfolgenden Beispiel wird “Befehl” als
Platzhalter für alle anderen in folgenden Kapiteln des Handbuch erläuterten Be-
fehle verwendet.
00000
Ist in dem Strompfad nur eine einzige Bedingung vorhanden, ist die Ausfüh-
rungsbedingung für den Befehl WAHR, wenn die Bedingung EIN ist. Für den
LOAD–Befehl (d.h. eine Schließer–Bedingung) wäre die Ausführungsbedin-
gung WAHR, wenn IR 00000 GESETZT ist; für den LOAD–NOT–Befehl (d.h.
eine Öffner–Bedingung) wäre sie WAHR, wenn IR 00000 NICHT GESETZT ist.
AND und AND NOT Folgen zwei oder mehr Bedingungen in einem Strompfad aufeinander, ent-
spricht die erste dem LOAD oder LOAD NOT–Befehl und die übrigen den AND–
und AND NOT–Befehlen. Das nachfolgende Beispiel zeigt drei Bedingungen,
welche in der Reihenfolge von links nach rechts einem LOAD–, einem AND
NOT und einem AND–Befehl entsprechen. Wiederum benötigt jeder dieser Be-
fehle in der AWL eine Zeile.
Die Ausführungsbedingung des Befehls würde nur dann WAHR sein, wenn alle
drei Bedingungen WAHR sind, d.h. wenn IR 00000 auf EIN, IR 00100 auf AUS
und LR 0000 auf EIN gesetzt sind.
Aufeinanderfolgende AND–Befehle können einzeln betrachtet werden, wobei
jeweils die logische AND–Verknüpfung der Ausführungsbedigung (d.h. die Ge-
samtheit aller Bedingungen bis zu diesem Punkt) und der Zustand des dem
AND–Befehl zugeordneten Operandenbits zu beachten ist. Falls beide den Zu-
stand WAHR aufweisen, folgt hieraus eine WAHR–Ausführungsbedingung mit
dem Zustand WAHR für den nächsten Befehl. Falls irgendeine Bedingung
314
Kontaktplanstruktur Abschnitt 6-3
OR und OR NOT Liegen zwei oder mehr Bedingungungen auf verschiedenen parallel zueinander
verlaufenden Strompfaden, die dann zusammengeführt werden, entspricht die
erste Bedingung einem LOAD oder LOAD NOT–Befehl, die übrigen Bedingun-
gen einem OR oder OR NOT–Befehl. Das nachfolgende Beispiel zeigt drei Be-
dingungen, die in ihrer Reihenfolge von oben nach unten einem LOAD NOT–,
OR NOT– und OR–Befehl entsprechen. Wiederum benötigt jeder dieser Be-
fehle in der AWL eine Zeile.
00000
Befehl
00100
LR 0000
Die Ausführungsbedingung des Befehls ist WAHR, wenn irgendeine der drei
Bedingungen WAHR ist, d.h. wenn IR 00000 NICHT GESETZT ist, IR 00100
NICHT GESETZT ist und LR 0000 GESETZT ist.
OR– und OR NOT–Befehle können einzeln betrachtet werden, wobei jeweils
die logische OR–Verknüpfung zwischen der Ausführungsbedingung und dem
Status des dem OR–Befehl zugeordneten Operandenbits zu beachten ist. Ist
eine der Bedingungen WAHR, folgt hieraus eine WAHR–Ausführungsbedin-
gung mit dem Zustand WAHR für den nächsten Befehl.
Verknüpfung von AND– und Sollen in einem komplizierteren Kontaktplan AND– und OR–Befehle miteinan-
OR–Befehlen der verknüpft werden, können sie im Einzelfall einzeln betrachtet werden, wobei
jeder Befehl eine logische Folge für die Ausführungsbedingung und das Ope-
randenbit bewirkt. Das folgende Beispiel veranschaulicht, dass der Kontaktplan
und die AWL der gleichen Logik folgen.
00200
315
Kontaktplanstruktur Abschnitt 6-3
Hier bestimmt die AND–Verknüpfung zwischen dem Zustand von IR 00000 und
IR 0001 die Ausführungsbedingung für OR mit dem Zustand von IR 00200. Das
Ergebnis bestimmt die Ausführungsbedingung für ein AND mit dem Status von
IR 00002, welches wiederum die Ausführungsbedingung für ein AND mit dem
invertierten (d.h. und AND NOT) Zustand von IR 00003 festlegt.
In komplizierteren Kontaktplänen ist es jedoch notwendig, sich mit den logi-
schen Blöcken auseinanderzusetzen, bevor die Ausführungsbedingung für den
endgültigen Befehl ermittelt werden kann. Hier werden die Befehle AND LOAD
und OR LOAD benötigt. Nachfolgend sollen aber zunächst die Befehle erläutert
werden, die für ein einfaches Programms erforderlich sind.
Im obigem Beispiel ist IR 01000 solange EIN, wie IR 00000 EIN ist und IR 01001
ist solange AUS, wie IR 00001 EIN ist. IR 00000 und IR 00001 sind hier Ein-
gangsbits und IR 01000 und IR 01001 Ausgangsbits, die der CPU–Baugruppe
zugewiesen sind. Dies bedeutet, dass die Signale, die an den Eingängen der
zugewiesenen IR 0000 und IR 00001 anliegen, die Ausgänge steuern, denen IR
01000 und IR 01001 zugewiesen sind.
Die Zeit, in der ein Bit gesetzt oder nicht gesetzt ist, kann durch Verknüpfung der
OUTPUT und OUTPUT NOT–Befehle mit einem Zeitgeber–Befehl gesteuert
werden. Sehen Sie für weitere Informationen Kapitel 7-15-1 Zeitgeber – TIM.
316
Kontaktplanstruktur Abschnitt 6-3
00000 00001
Befehl
END(01)
Programmende
6-3-6 Logikblock–Befehle
Logikblock–Befehle entsprechen nicht etwa bestimmten Bedingungen in dem
Kontaktplan, sondern beschreiben vielmehr die Beziehungen der logischen
Blöcke untereinander. Der AND LOAD–Befehl führt eine logische UND–Ver-
knüpfung der von zwei logischen Blöcken erzeugten Ausführungsbedingungen
durch, während der OR LOAD–Befehl diese Ausführungsbedingungen durch
ODER verknüpft.
AND LOAD Obwohl auf den ersten Blick einfach strukturiert, erfordert der nachstehende
Kontaktplan doch einen AND LOAD–Befehl.
00000 00002
Befehl
00001 00003
317
Kontaktplanstruktur Abschnitt 6-3
318
Kontaktplanstruktur Abschnitt 6-3
00000 00001
Befehl
00002 00003
Auch hier können mit der Methode auf der rechten Seite maximal acht Blöcken
verbunden werden. Es gibt keine Grenze der Anzahl der Blöcke, die mit der er-
sten Methode verknüpft werden können.
319
Kontaktplanstruktur Abschnitt 6-3
00000 00001
20001
00002 00003
00004 00005
Mit LOAD wird die erste Bedingung eines Paares samt zugewiesenem Operan-
den kodiert und dann mit der anderen AND–Bedingungen verknüpft. Die beiden
ersten Blöcke werden zuerst codiert, gefolgt von einem OR LOAD, dem letzten
Block und einem OR LOAD. Bei der zweiten Methode werden alle drei Blöcke
gefolgt von zwei OR LOADs kodiert. Beide AWL–Varianten sind nachfolgend
dargestellt.
Auch hier können mit der Methode auf der rechten Seite maximal acht Blöcken
verbunden werden. Es gibt keine Grenze der Anzahl der Blöcke, die mit der er-
sten Methode verknüpft werden können.
Verknüpfen von AND LOAD Sollen AND LOAD und OR LOAD miteinander verknüpft werden, können, so-
und OR LOAD lange es sich nicht um mehr als acht Blöcke handelt, beide oben dargestellten
Programmiermethoden verwendet werden.
Der nachfolgende Kontaktplan enthält lediglich zwei logische Blöcke. Es ist
nicht notwendig, Block b weiter zu unterteilen, da problemlos mit AND und OR
programmiert werden kann.
00201
00004
Block Block
a b
320
Kontaktplanstruktur Abschnitt 6-3
Obwohl der folgende Kontaktplan dem vorhergehenden sehr ähnlich ist, muss
Block b hier in zwei logische Blöcke aufgegliedert werden, die mit OR LOAD mit-
einander zu verknüpfen sind. In diesem Beispiel wurden die drei Blöcke zuerst
kodiert. Dann wurden mit OR LOAD die letzten beiden Blöcke verknüpft, gefolgt
von AND LOAD, um die von OR LOAD erzeugte Ausführungsbedingung mit der
Ausführungsbedingung von Block a zu verknüpfen.
Bei der Programmierung der Logikblock–Befehle am Ende der Logikblöcke, die
diese verbinden, müssen die Befehle, wie nachfolgend gezeigt wird, in umge-
kehrter Reihenfolge programmiert werden, d.h. der Logikblock–Befehl für die
letzten zwei Blöcke wird zuerst eingegeben, gefolgt von der Ausführungsbedin-
gung, die aus dem ersten Logikblock–Befehl resultiert und der Ausführungsbe-
dingung des 3. Logikblockes vom Ende aus und zurück zum ersten zu verknüp-
fenden Logikblock.
Block
b1
00004 00202
Block
b2
Block Block
a b
321
Kontaktplanstruktur Abschnitt 6-3
Der nachfolgende Kontaktplan muss in zwei Blöcke, und diese dann in zwei wei-
tere Blöcke unterteilt werden, bevor er programmiert werden kann. Wie nach-
stehend dargestellt, erfordern die Blöcke a und b AND LOAD. Vor AND LOAD
muss jedoch OR LOAD verwendet werden, um den oberen und unteren Block
auf beiden Seiten des Kontaktplans zu verknüpfen (a1 und a2 bzw. b1 und b2).
Block Block
a1 b1
Block Block
a2 b2
Block Block
a b
Der folgende Kontaktplan ist leicht zu kodieren, wenn folgende Reihenfolge ein-
gehalten wird: von oben nach unten und dann von links nach rechts. In diesem
Kontaktplan müssen die Blöcke a und b –wie oben gezeigt– mit AND LOAD ver-
knüpft werden. Dann ist Block c zu kodieren, der mit einem zweiten AND LOAD–
Befehl mit der aus dem ersten AND LOAD–Befehl folgenden Ausführungsbe-
dingung zu verknüpfen ist. Nach dem Kodieren von Block d muss mit einem drit-
ten AND LOAD–Befehl dessen Ausführungsbedingung mit der Ausführungsbe-
dingung des zweiten AND LOAD–Befehls verknüpft werden und so fort, bis zum
Erreichen des Blocks n.
20000
322
Kontaktplanstruktur Abschnitt 6-3
Das obige Programm ist ausführbar. Wird der Kontaktplan jedoch wie nachste-
hend gezeichnet, führt dies zu einer Vereinfachung des Programms und zur Ein-
sparung von Speicherplatz, da sowohl der erste OR LOAD– als auch der erste
AND LOAD–Befehl entbehrlich wird.
Beim folgenden Kontaktplan sollten Sie zunächst die fünf Blöcke programmie-
ren und dann, beginnend mit den beiden letzten, die Verknüpfungen rückwärts
mit OR LOAD– und AND LOAD–Befehlen durchführen. Der OR LOAD–Befehl
auf Adresse 00008 verknüpft die Blöcke d und e, der nachfolgende AND LOAD–
Befehl verknüpft die daraus folgende Ausführungsbedingung mit der von Block
c usw.
323
Kontaktplanstruktur Abschnitt 6-3
Das nächste und letzte Beispiel erscheint auf den ersten Blick sehr kompliziert,
kann aber, unter Verwendung von nur zwei Logikblock–Befehlen, programmiert
werden. Das Netzwerk erscheint wie folgt:
Block a
20000
Block b Block c
Der erste Logikblock–Befehl dient dazu, die aus Block a und b folgenden Aus-
führungsbedigungen zu verknüpfen, während der zweite Logikblock–Befehl die
Ausführungsbedingung von Block c mit der Ausführungsbedingung der Öffner–
Bedingung, die IR 00003 zugewiesen ist, verknüpft. Der übrige Kontaktplan
kann mit OR–, AND– und AND NOT–Befehlen kodiert werden. Die nachfol-
gende Abbildung veranschaulicht die logischen Abläufe.
Block a Block b
00000 00001 01000 01001
LD 00000 LD 01000
UND 00001 UND 01001
Adresse Befehl Operanden
OR LD 00000 LD 00000
00001 AND 00001
Block c 00002 LD 01000
20000 00004 00005 00003 AND 01001
00004 OR LD ––
OR 20000 LD 00004
AND 00005 00005 OR 20000
00006 AND 00002
00002 00003 00006 00007 AND NOT 00003
00008 LD 00004
AND 00002 OR 00006 00009 AND 00005
AND NOT 00003
00010 OR 00006
AND LD 00011 AND LD ––
00012 OUT 20000
20000
324
Kontaktplanstruktur Abschnitt 6-3
00000 00003
HR 0001
Adresse Befehl Operanden
00000 LD 00000
00001 00001 OR 00001
20000
00002 OR 00002
00003 OR HR 0000
00002 00004
20001 00004 AND 00003
00005 OUT HR 0001
HR 0000 00006 OUT 20000
00007 AND 00004
00008 OUT 20001
6-3-8 Strompfad–Verzweigungen
Bei einem mehrfach verzweigenden Strompfad kann es notwendig werden,
Verriegelungen oder TR–Bits in der AWL–Darstellung zu verwenden, um die
Ausführungsbedingung am Verzweigungspunkt zu erhalten. Die Problemstel-
lung besteht darin, dass der Strompfad zunächst von links nach rechts abgear-
beitet wird und das Programm erst nach der Ausführung des ersten Befehls zum
Verzweigungspunkt zurückkehrt, um dann den abzweigenden Strompfad abzu-
arbeiten. Sollte also eine Bedingung auf einem Strompfad hinter einem Ver-
zweigungspunkt liegen, könnte sich die Ausführungsbedingung innerhalb die-
ser Zeitspanne verändern, mit der Folge, dass eine ordnungsgemäße Pro-
grammausführung unmöglich wird. Die folgenden Abbildungen veranschauli-
chen dies. In beiden Fällen wird zunächst Befehl 1 ausgeführt, bevor das Pro-
gramm zum Verzweigungspunkt zurückkehrt und den Strompfad, der zum Be-
fehl 2 führt, abarbeitet.
Verzweigungs–
00000 punkt Adresse Befehl Operanden
Befehl 1
00000 LD 00000
00002 00001 Befehl 1
Befehl 2
00002 AND 00002
Abbildung A: Korrekter Ablauf in KOP und AWL 00003 Befehl 2
Verzweigungs-
00000 punkt 00001
Befehl 1 Adresse Befehl Operanden
00002 00000 LD 00000
Befehl 2
00001 AND 00001
00002 Befehl 1
Abbildung B: Korrektur des fehlerhaften Ablaufs in AWL–Darstellung
erforderlich 00003 AND 00002
00004 Befehl 2
325
Kontaktplanstruktur Abschnitt 6-3
TR–Bits Die TR–Bits TR 0 bis TR 7 (also insgesamt 8 Bits) können zum temporären Er-
halt der Ausführungsbedingung in der AWL–Darstellung verwendet werden.
Wird ein TR–Bit auf einen Verzweigungspunkt gesetzt, wird beim ersten Errei-
chen des Verzweigungspunktes die aktuelle Ausführungsbedingung im zuge-
wiesenen TR–Bit gespeichert. Bei Rückkehr des Programms zum Verzwei-
gungspunkt stellt das TR–Bit die ursprüngliche Ausführungsbedingung wieder
her.
Um einen korrekten Ablauf zu gewährleisten, muss der obige, unter B abgebil-
dete Kontaktplan gemäß nachfolgender Abbildung verändert werden. In der
AWL wird die Ausführungsbedingung am Verzweigungspunkt gespeichert, wo-
bei das TR–Bit als Operand des OUTPUT–Befehls verwendet wird. Bei der
Rückkehr des Programms zum Verzweigungspunkt wird die Ausführungsbedin-
gung unter Verwendung des TR–Bits als Operand des LOAD–Befehls wieder-
hergestellt.
Der obige Code wird wie folgt interpretiert: Der Zustand von IR 00000 wird gela-
den (LOAD–Befehl), um die anfängliche Ausführungsbedingung zu erzeugen.
Diese Ausführungsbedingung wird dann unter Verwendung des OUTPUT–Be-
fehls an TR 0 ausgegeben, um den Zustand am Verzweigungspunkt zu spei-
chern. Diese Ausführungsbedingung wird mit dem Zustand von IR 00001 AND–
verknüpft und der Befehl 1 entsprechend ausgeführt. Die am Verzweigungs-
punkt gespeicherte Ausführungsbedingung wird dann zurückgeladen (ein
LOAD–Befehl mit TR 0 als Operand), mit dem Zustand von IR 00002 AND–ver-
knüpft und dann Befehl 2 entsprechend ausgeführt.
Das folgende Beispiel zeigt eine Anwendung mit zwei TR–Bits.
326
Kontaktplanstruktur Abschnitt 6-3
das erste Mal für die AND–Verknüpfung mit dem Zustand von IR 00004 und das
zweite Mal für eine AND–Verknüpfung mit dem invertierten Zustand von IR
00005.
TR–Bits können so oft wie erforderlich verwendet werden, solange nicht das
gleiche TR–Bit mehr als einmal für den selben Befehlsblock verwendet wird. Ein
neuer Befehlsblock beginnt immer dann, wenn eine Rückkehr zur Stromschiene
erfolgt. Sind in einem einzelnen Befehlsblock mehr als acht Verzweigungs-
punkte mit zwischenzuspeichernden Ausführungszuständen erforderlich, müs-
sen Verriegelungen (eine Begriffserklärung befindet sich weiter hinten im Hand-
buch) verwendet werden.
Verwenden Sie beim Entwurf eines Kontaktplanes nur dann TR–Bits, wenn
diese wirklich erforderlich sind. Häufig kann ein Programm einfacher, d.h. mit
deutlich weniger Befehlen und übersichtlicher strukturiert werden, was oft dazu
führt, dass TR–Bits gar nicht benötigt werden. Die beiden nachfolgenden Bei-
spiele veranschaulichen dies. Die jeweils untere Version beinhaltet weniger Be-
fehle und keine TR–Bits. Im ersten Beispiel wird dies durch eine Neuorganisa-
tion der Teile des Befehlsblockes erreicht: durch Weglassen des zweiten OUT-
PUT–Befehls und Einfügen eines weiteren LOAD–Befehls wird eine eindeutige
Ausführungsbedingung erzeugt.
Hinweis Neben der Vereinfachung der Programmstruktur, auf die immer Wert gelegt
werden sollte, ist oft auch die Reihenfolge der Befehlsausführung wichtig. So
kann zum Beispiel ein MOVE–Befehl vor der Ausführung eines BINARY ADD–
Befehls erforderlich werden, damit dem Operanden–Wort die richtigen Daten
zugewiesen werden. Vor Überarbeitung eines Programmes sollte daher die
Reihenfolge der Ausführungs immer in die Überlegungen mit einbezogen wer-
den.
TR 0 00000 00003
00000 00001
Befehl 1
Befehl 1
Befehl 2 TR 0
00001 00002
00004
Befehl 2
00000
Befehl 2
00001
Befehl 1
00000
00001 00004
Befehl 2
Hinweis TR–Bits müssen nur bei der Programmierung in der AWL vom Anwender selbst
eingegeben werden. Bei der Kontaktplan–Programmierung über die Program-
miersoftware CX–P werden temporäre Merker (TR) automatisch verarbeitet.
Die Einschränkungen bzgl. Anzahl der TR–Bits gilt aber auch in diesem Fall.
327
Kontaktplanstruktur Abschnitt 6-3
00000
IL (02)
Adresse Befehl Operanden
00001 00000 LD 00000
Befehl 1 00001 IL (02) –––
00002 LD 00001
00002
IL (02) 00003 Befehl 1
00004 LD 00002
00003 00004
00005 IL (02) –––
Befehl 2
00006 LD 00003
00005
Befehl 3
00007 AND NOT 00004
00008 Befehl 2
00006
Befehl 4 00009 LD 00005
00010 Befehl 3
00011 LD 00006
ILC (03)
00012 Befehl 4
00013 ILC (03) ---
328
Kontaktplanstruktur Abschnitt 6-3
Ist IR 00000 im obenstehenden Kontaktplan nicht gesetzt (d.h., wenn die Aus-
führungsbedingung für den ersten INTERLOCK–Befehl FALSCH ist), werden
die Befehle 1 bis 4 mit der Ausführungsbedingung FALSCH ausgeführt. Dann
wird mit den Befehlen, die auf den INTERLOCK CLEAR–Befehl folgen, fortge-
fahren. Ist IR 00000 gesetzt, wird der Zustand von IR 00001 als Ausführungsbe-
dingung für Befehl 1 geladen und der Zustand von IR 00002 bestimmt die Aus-
führungsbedingung für den zweiten INTERLOCK–Befehl. Ist IR 00002 AUS,
werden die Befehle 2 bis 4 mit FALSCH–Ausführungsbedingungen ausgeführt.
Ist IR 00002 EIN, bestimmen IR 00003, IR 00005 und IR 00006 die erste Ausfüh-
rungsbedingung für weitere Strompfade.
6-3-9 Sprungbefehle
Mit einer entsprechenden Ausführungsbedingung können bestimmte Pro-
grammabschnitte übersprungen werden. Die Wirkung eines Sprungbefehls ist
der Wirkung eines INTERLOCK–Befehls mit der FALSCH–Ausführungsbedin-
gung ähnlich. Beim Sprung wird jedoch der Zustand der Befehlsoperanden bei-
behalten. Sprungbefehle dienen daher zur Steuerung von Geräten, die Aus-
gänge mit Selbsthaltung benötigen, wie z.B. pneumatische und hydraulische
Anlagen. Bei elektronischen Geräten, die diese Art von Ausgängen nicht erfor-
dern, wird der INTERLOCK–Befehl verwendet.
Es stehen zwei Sprungbefehle zur Verfügung, JUMP (Sprung) (JMP (04)) und
JUMP END (Sprung Ende) (JME (05)). Ist die Ausführungsbedingung für den
JUMP–Befehl EIN, läuft das Programm so ab, als gäbe es keine JUMP–Anwei-
sung. Ist die Ausführungsbedigung AUS, übergeht das Programm alle Befehle
zwischen JUMP und JUMP–END, ohne daß der Zustand der Befehlsoperanden
geändert wird.
Den JUMP– und JUMP END–Befehlen werden Sprungnummern zwischen 00
und 99 zugewiesen. Es gibt zwei Arten von Sprungbefehlen. Die verwendete
Sprungnummer trifft eine Aussage darüber, welche Art von Sprungbefehl ver-
wendet wird.
Die Sprungnummern 01 bis 99 können nur jeweils einmal verwendet werden,
d.h. jede Nummer kann einmal für einen JUMP– und einmal für einen JUMP
END–Befehl verwendet werden. Sobald das Programm einen solchen Befehl
erreicht, springt es zu dem entsprechenden JUMP END–Befehl mit der gleichen
Nummer. Im folgenden soll Abbildung B (TR–Bit und INTERLOCK–Beispiel) so
abgeändert werden, dass auch die Vorgänge beim JUMP–Befehl veranschau-
licht werden. Obwohl 01 als Sprungnummer verwendet wurde, könnte jede Zahl
zwischen 01 und 99 verwendet werden, solange diese noch nicht in einem an-
deren Teil des Programms verwendet wird. Außer der Sprungnummer benöti-
gen JUMP und JUMP END keine weiteren Operanden.
00000
JMP (04) 01 Adresse Befehl Operanden
00001 00000 LD 00000
Befehl 1
00001 JMP (04) 01
00002 00002 LD 00001
Befehl 2
00003 Befehl 1
00004 LD 00002
JME (05) 01
00005 Befehl 2
00006 JME (05) 01
Abbildung B: Korrigierter Ablauf mit Sprungbefehl
Die Version der Abbildung B würde eine kürzere Zykluszeit als irgendeine der
anderen Kontaktplanversionen besitzen.
329
Kontaktplanstruktur Abschnitt 6-3
330
Steuerung des Bitzustands Abschnitt 6-4
Hinweis SET und RSET besitzen keine Funktionscodes. Drücken Sie die FUN– und
SET–Tasten oder die FUN– und RSET–Tasten, gefolgt von der Bitadresse, um
diese Befehle über die Programmierkonsole einzugeben.
331
Steuerung des Bitzustands Abschnitt 6-4
WAHR auf FALSCH gewechselt hat. Beide Befehle erfordern in der AWL jeweils
eine Zeile.
IR 20001 wird für einen Zyklus gesetzt, nachdem IR 00000 gesetzt ist. Wird
DIFU(13) 20001 erneut ausgeführt, wird IR 20001 zurückgesetzt und zwar un-
abhängig davon, welchen Zustand IR 00000 einnimmt. Mit dem DIFFERENTIA-
TION DOWN–Befehl wird IR 20002 für einen Zyklus gesetzt, nachdem IR 00001
rückgesetzt wurde (IR 20002 wird den Zustand bis dahin beibehalten) und wird
rückgesetzt, wenn DIFD(14) 20002 erneut ausgeführt wird.
6-4-4 Selbsthaltemerker
Manchmal kann es erforderlich werden, dass Selbsthaltemerker, die in einem
verriegelten Abschnitt des Kontaktplans liegen, mit zurückgesetzt werden.
Um einen solchen Selbsthaltemerker zu erzeugen, wird das Operandenbit des
OUTPUT–Befehls als Bedingung für den gleichen OUTPUT–Befehl in einer
OR–Verknüpfung verwendet, so daß das Operandenbit des OUTPUT–Befehls
den Zustand EIN oder AUS solange beibehält, bis sich der Zustand der anderen
Bits ändert. Mindestens eine weitere Bedingung muss vor dem OUTPUT–Be-
fehl gesetzt sein, damit eine Rücksetzung erfolgen kann. Ohne diese Rückset-
zung gibt es keine Möglichkeit das Operandenbit des OUTPUT–Befehls zu
steuern.
Der obenstehende Kontaktplan kann folgendermaßen verändert werden. Le-
diglich die Programmausführung in einem verriegelten Programmabschnitt er-
folgt unterschiedlich, wenn nämlich die Ausführungsbedingung für den INTER-
LOCK–Befehl WAHR ist. Auch hier, wie im Beispiel zur Veranschaulichung des
332
Arbeitsmerker (interne Relais) Abschnitt 6-5
Vereinfachung komplexer Arbeitsmerker können die Programmierung vereinfachen, wenn eine be-
Bedingungen stimmte Kombination von Bedingungen wiederholt in Verbindung mit anderen
Bedingungen verwendet wird. Im folgenden Beispiel werden IR 00000, IR
00001, IR 00002 und IR 00003 in einem Logikblock verknüpft, der die resultie-
rende Ausführungsbedingung als Zustand von IR 21600 speichert. IR 21600
wird dann mit diversen anderen Bedingungen verknüpft, um die Ausgangsbe-
333
Arbeitsmerker (interne Relais) Abschnitt 6-5
dingungen für IR 20000, IR 20001 und IR 20002 zu bestimmen, d.h., um die die-
sen Bits zugewiesenen Ausgänge ein– und auszuschalten.
00000 00001
Adresse Befehl Operanden
21600 00000 LD 00000
00001 AND NOT 00001
00002 00002 OR 00002
00003 OR NOT 00003
00004 OUT 21600
00003 00005 LD 21600
00006 AND 00004
00007 AND NOT 00005
21600 00004 00005
20000
00008 OUT 20000
00009 LD 21600
00010 OR NOT 00004
21600 00005
00011 AND 00005
20001
00012 OUT 20001
00013 LD NOT 21600
00004
00014 OR 00006
00015 OR 00007
21600 00016 OUT 20002
20002
00006
00007
Differenzierte Bedingungen Arbeitsmerker können auch dann verwendet werden, wenn einige, aber nicht
alle Bedingungen unterschiedlich behandelt werden müssen. Im nachfolgen-
den Beispiel muss IR 20000 solange gesetzt bleiben, wie IR 00001 gesetzt ist
und sowohl IR 00002 als auch IR 00003 nicht gesetzt sind oder solange IR
00004 gesetzt ist und IR 00005 nicht gesetzt ist. IR 20000 muss jedesmal für
jeweils einen Zyklus gesetzt werden, wenn IR 00000 gesetzt wird (es sei denn,
dass eine der vorhergehenden Bedingungen IR 00000 dauerhaft setzt).
Dies wird erreicht, in dem IR 22500 als Arbeitsmerker verwendet wird, der wie-
derum als Operand des DIFFERENTIATE UP–Befehls (DIFU(13)) program-
miert wird. Wird IR 00000 gesetzt, wird IR 22500 für einen Zyklus gesetzt und
dann im nächsten Zyklus durch DIFU(13) zurückgesetzt. Vorausgesetzt, dass
die anderen, IR 20000–steuernden Bedingungen diese nicht dauerhaft gesetzt
halten, setzt der Arbeitsmerker IR 22500 IR 20000 nur für einen Zyklus.
00000
Adresse Befehl Operanden
DIFU (13) 22500
00000 LD 00000
22500 00001 DIFU(13) 22500
20000
00002 LD 22500
00001 00002 00003 00003 LD 00001
00004 AND NOT 00002
00004 00005 00005 AND NOT 00003
00006 OR LD –––
00007 LD 00004
00008 AND NOT 00005
00009 OR LD –––
00010 OUT 20000
334
Vorsichtsmaßnahmen bei der Programmierung Abschnitt 6-6
00000 00002
Befehl 1
00004
00001 00003
Befehl 2
Befehl
25313
Befehl Adresse Befehl Operanden
00000 LD 25313
Abbildung B: Korrigierte Version 00001 Befehl
Es gibt einige Ausnahmen von dieser Regel, insbesondere für die INTERLOCK
CLEAR–, JUMP END– und STEP–Befehle. Diese Befehle werden jeweils paar-
weise verwendet und von der Ausführungsbedingung des ersten Befehls ge-
steuert. Es sollten keine weiteren Bedingungen auf Strompfaden plaziert wer-
den, die zu solchen Paarbefehlen führen. Sehen Sie für weitere Informationen
Kapitel 7 Befehlssatz.
Bei der Erstellung von Kontaktplänen ist es wichtig, sich auf die wirklich notwen-
dige Anzahl von Befehlen zu beschränken. In der nachfolgenden Abbildung A
ist ein OR LOAD–Befehl erforderlich, um den oberen und unteren Strompfad-
335
Programmausführung Abschnitt 6-7
Abbildung B
6-7 Programmausführung
Bei der ersten Programmausführung durchläuft die CPU–Baugruppe das Pro-
gramm von Anfang bis Ende. Dabei werden alle Bedingungen und die Ausfüh-
rung aller Befehle überprüft. Es ist wichtig, dass die Befehle in der geeigneten
Reihenfolge angeordnet werden; z.B. sollte der gewünschte Dateninhalt tat-
sächlich in ein Datenwort verschoben werden, bevor dieses Wort als Operand
eines Befehls verwendet wird. Bedenken Sie immer, dass ein Strompfad zu-
nächst bis zum äußersten rechten Ausgangsbefehl abgearbeitet wird, bevor
Verzweigungen zu anderen Ausgangsbefehlen berücksichtigt werden.
Der Programmausführung ist nur eine der Aufgaben, die von der CPU innerhalb
der Zykluszeit abgearbeitet wird. Sehen Sie für weitere Informationen Kapitel 8
SPS–Betrieb.
336
Kapitel 7
Befehlssatz
Die CPM1, CPM1A, CPM2A, CPM2C und SRM1(–V2) verfügen über umfangreiche Befehlssätze, die das Program-
mieren auch komplizierter Steuerungsvorgänge erheblich vereinfachen. Dieses Kapitel beschreibt die Kontaktplan–Sym-
bole, Speicherbereiche und Merker und ihre sachgerechte Anwendung.
Die Befehlssätze sind nach Gruppen geordnet dargestellt: Kontaktplan–Befehle, Befehle mit festen Funktionscodes und
anwenderdefinierte Befehle.
Einige Befehle, wie Zeitgeber– und Zähler–Befehle werden verwendet, um andere Befehle zu steuern; so setzt z. B. der
Zeitgeber fertig–Merker ein Bit, wenn die für den Zeitgeber eingestellte Zeit abgelaufen ist. Obgleich diese anderen Befehle
oft dazu verwendet werden, Ausgänge über den OUTPUT–Befehl zu steuern, können diese ebenfalls zur Steuerung der Aus-
führung weiterer Befehle verwendet werden. Die in den Beispielen dieses Handbuchs verwendeten OUTPUT–Befehle
können auch durch andere Befehle ersetzt werden, um das jeweilige Programm an bestimmte Anwendungen anzuspassen,
anstatt nur Ausgänge zu steuern.
337
Abschnitt
338
Abschnitt
339
Datenbereiche, Zuweiserwerte und Merker Abschnitt 7-3
7-1 Notation
Nachfolgend werden alle in diesem Handbuch beschriebenen Befehle mit ihren
mnemonischen Namen bezeichnet. So wird z.B. der OUTPUT–Befehl OUT und
der AND LOAD–Befehl AND LD genannt. Sehen Sie Anhang A
Programmierbefehle für weitere Informationen, welcher mnemonischer Name
zu welchem Befehl gehört.
Ist einem Befehl ein Funktionscode zugewiesen, wird dieser hinter dem Befehl
in Klammern angegeben. Die in 2–stelligen Dezimalzahlen dargestellten Funk-
tionscodes dienen der Befehlseingabe in die CPU. Eine nach Funktionscodes
geordnete Tabelle ist ebenfalls Bestandteil von Anhang A Programmierbe-
fehle. Eine Tabelle aller Befehle finden Sie in Abschnitt 7-6 Befehlstabelle.
Ein @ vor einem mnemonischen Code bedeutet, dass es sich um einen Befehl
mit flankengesteuerter Ausführung handelt. Befehle mit flankengesteuerter
Ausführung werden in Abschnitt 7-4 beschrieben.
7-2 Befehlsformate
Die meisten Befehlen besitzen ein oder auch mehrere Operanden. Die Operan-
den weisen auf Daten hin bzw. übergeben diese, mit denen der Befehl ausge-
führt wird. Die Eingabe erfolgt entweder als echter numerischer Wert (z.B. bei
einer Konstanten), oder, in den meisten Fällen, durch Angabe der Adresse des
Datenwortes, dass die Daten enthält, oder von Bits. Ein Bit, dessen Adresse als
Operand gekennzeichnet ist, heißt Operandenbit; ein Wort, dessen Adresse als
Operand gekennzeichnet ist, heißt Operandenwort. In einigen Befehlen zeigt
die in einem Befehl zugewiese Wortadresse das erste von mehreren Worten
(Mehrfachwort) an, die die gewünschten Daten enthalten.
Jeder Befehl erfordert ein oder mehrere Worte im Programmspeicher. Das erste
Wort ist das Befehlswort, das den Befehl spezifiziert und das alle Zuweiser (die-
ser Begriff wird nachfolgen beschrieben) oder Operandenbits enthält, die der
Befehl benötigt. Weitere Operanden werden durch die nachfolgenden Worte
bereitgestellt, jeweils ein Operand pro Wort. Einige Befehle benötigen bis zu vier
Worte.
Ein Zuweiser ist ein Operand, der mit dem Befehl verknüpft ist und der im glei-
chen Wort enthalten ist, wie der Befehl selbst. Diese Operanden dienen mehr
der Definition des Befehls, als dass sie eine Aussage darüber treffen, welche
Daten verwendet werden. Zuweiser sind zum Beispiel die TC–Nummern, die
bei Zeitgeber– und Zählerbefehlen verwendet werden, um Zeitgeber und Zähler
zu erstellen oder auch die Sprungnummern, die angeben, welcher Sprungbe-
fehl mit welchem Sprung–Ende–Befehl korrespondiert. Bitoperanden können
im selben Wort wie der Befehl selbst enthalten sein, obwohl diese deshalb nicht
etwa als Zuweiser angesehen werden dürfen.
340
Datenbereiche, Zuweiserwerte und Merker Abschnitt 7-3
! Vorsicht Die IR– und SR–Bereiche werden als separate Speicherbereiche angesehen.
Hat ein Operand Zugriff auf den einen Bereich, bedeutet dies nicht notwendiger-
weise, dass er auch Zugriff auf den anderen Bereich hat. Die Grenze zwischen
IR– und SR–Bereich kann jedoch für einen einzelnen Operanden überschritten
werden, insofern als das letzte Bit im IR–Bereich für einen Operanden, der mehr
als ein Wort benötigt, spezifiziert werden kann, wenn dieser Operand auch im
SR–Bereich adressiert werden darf.
Im Unterabschnitt Merker sind die Merker aufgeführt, die durch Ausführung ei-
nes Befehls beeinflußt werden. Dies umfaßt auch die nachfolgenden SR–Be-
reichsmerker.
Abkürzung Name Bit
ER Befehlsausführungs–Fehlermerker 25503
CY Übertragungsmerker 25504
GR Größermerker 25505
EQ Gleichmerker 25506
LE Kleinermerker 25507
ER ist der Merker, der am häufigsten für die Überwachung einer Befehlsausfüh-
rung verwendet wird. Ist ER aktiviert, wird angezeigt, dass ein Fehler bei der ak-
tuellen Programmausführung aufgetreten ist. Im Unterabschnitt Merker sind für
jeden Befehl mögliche Gründe für eine Aktivierung des ER–Merkers dargestellt.
ER wird immer aktiviert, wenn Operanden fehlerhaft spezifiziert wurden. Be-
fehle werden bei gesetztem ER–Merker nicht ausgeführt. Sehen Sie Anhang B
Fehler– und Arithmetikmerker–Vorgänge für eine Tabelle der Befehle und Mer-
ker, die eine Beeinflussung ausüben.
Indirekte Adressierung Kann der DM–Bereich für den Operanden spezifiziert werden, kann auch eine
indirekte Adresse verwendet werden. Eine indirekte DM–Adressierung wird
durch ein Sternsymbol vor DM angezeigt: *DM.
Wird eine indirekte DM–Adresse angegeben, enthält das zugewiesene DM–
Wort die Adresse des DM–Wortes, das die Daten enthält, die als Operand des
Befehles verwendet werden sollen. Wird zum Beispiel *DM 0001 als erster und
LR 00 als zweiter Operand von MOV( 21) bestimmt, so beinhaltete DM 0001 die
Adressierung für DM 1111. DM 1111 enthält den Wert 5555, der nach LR 00
übertragen wird.
Wort Inhalt
MOV(21)
DM 0000 4C59
*DM 0001
DM 0001 1111
LR 00 Indirekte Zeigt auf
DM 0002 F35A
Adresse DM 1111.
DM 1111 5555
DM 1113 2506 5555 über-
DM 1114 D541 tragen nach
LR 00.
Bei der indirekten Adressierung muss das gewünschte Wort in BCD–Form an-
gegeben werden. Darüberhinaus muss es ein Wort innerhalb des DM–Berei-
ches spezifizieren. Im obenstehenden Beispiel muß der Inhalt von DM 0001 in
BCD–Code vorliegen und eine zu verwendende Adresse im DM–Bereich der
SPS spezifizieren. Sehen Sie Abschnitt 5 Speicherbereiche für Einzelheiten zu
den DM–Bereichen.)
Zuweisung von Konstanten Viele Operanden und alle Zuweiser werden als Konstanten eingegeben. Der
verfügbare Wertebereich für einen Zuweiser oder Operanden ist vom verwen-
deten Befehl abhängig. Konstanten müssen ebenfalls in den vom entsprechen-
den Befehl geforderten Format eingegeben werden, d.h. in BCD oder hexadezi-
mal.
341
Befehle mit flankengesteuerter Ausführung Abschnitt 7-4
HR 10
00000 LD 00000
Abbildung A
00001 MOV (21)
DM 0000
HR 10
DM 0000
00000
@MOV(21) Adresse Befehl Operanden
HR 10 00000 LD 00000
Abbildung B DM 0000 00001 @MOV(21)
HR 10
DM 0000
342
Eingabe von rechts angeordneten Befehlen Abschnitt 7-5
343
Eingabe von rechts angeordneten Befehlen Abschnitt 7-5
004
00005 AND NOT 00200
HR 00 00006 LD 01001
00007 AND NOT 01002
00008 AND NOT LR 0000
00005
00009 OR LD ––
TIM 000
00010 AND 21600
#0150
00011 BCNT (67) ––
TIM 000
# 0001
MOV (21)
004
HR 00
LR 00 HR 00
00012 LD 00005
00013 TIM 000
HR 0015
01000 # 0150
00014 LD TIM 000
00015 MOV (21) ––
HR 00
LR 00
00016 LD HR 0015
00017 OUT NOT 01000
Mehrfache Setzt ein Befehl mehrere Strompfade voraus (wie z.B. KEEP(11), werden zu-
Anweisungszeilen nächst alle Bedingungen auf dem Strompfad, jeweils beginnend mit LD oder LD
NOT, eingegeben. Die sich so ergebenden logischen Blöcke werden letztend-
lich durch den Befehl ausgewertet. Das nachstehende Beispiel veranschaulicht
dies für den Befehl SFT(10).
00000 00001
Adresse Befehl Daten
I
SFT (10) 00000 LD 00000
00002
P 00001 AND 00001
HR 00
00100 00200 21600
R
00002 LD 00002
HR 00
00003 LD 00100
01001 01002 LR 0000
00004 AND NOT 00200
HR 0015
00005 LD 01001
01001 00006 AND NOT 01002
00007 AND NOT LR 0000
00008 OR LD ––
00009 AND 21600
00010 SFT (10) HR 00
HR 00
00011 LD HR 0015
00012 OUT NOT 01001
344
Befehlstabellen Abschnitt 7-6
7-6 Befehlstabellen
In diesem Abschnitt befinden sich Tabellen mit den von den CPM1/CPM1A,
CPM2A/CPM2C und SRM1(–V2)–SPS–Systemen unterstützten Befehlen. Sie
können die ersten Tabellen dazu verwenden, die Befehle anhand des Funkti-
onscodes zu suchen. Die letzte Tabelle dient zur Auffindung der Befehle anhand
der AWL–Bezeichnung. In beiden Tabellen kennzeichnet das @–Symbol, dass
der Befehl auch als flankengesteuerte Ausführungsvariante verfügbar ist.
7-6-1 CPM1/CPM1A–Funktionscodes
In der folgenden Tabelle sind die CPM1/CPM1A–Befehle aufgeführt, die festge-
legte Funktionscodes besitzen. Sowohl der Befehlsname als auch die AWL–Be-
zeichnung sind angegeben. Verwenden Sie die Ziffern in der äußerst linken
Spalte als linke Stelle und die Ziffern in der Spaltenüberschrift als rechte Stelle
des Funktionscodes.
Linkee Rechte Stelle
Stelle
St ll 0 1 2 3 4 5 6 7 8 9
0 NOP END IL ILC JMP JME (@) FAL FALS STEP SNXT
NO INTERLOCK INTERLOCK JUMP JUMP END FAILURE SEVERE STEP STEP START
OPERATION CLEAR ALARM AND FAILURE DEFINE
RESET ALARM
1 SFT KEEP CNTR DIFU DIFD TIMH (@) WSFT (@) ASFT --- ---
SHIFT REVER- DIFFEREN- DIFFEREN- HIGH- WORD ASYNCHRO-
REGISTER SIBLE TIATE UP TIATE DOWN SPEED SHIFT NOUS SHIFT
COUNTER TIMER REGISTER
2 CMP (@) MOV (@) MVN (@) BIN (@) BCD (@) ASL (@) ASR (@) ROL (@) ROR (@) COM
COMPARE MOVE MOVE NOT BCD TO BI- BINARY TO SHIFT LEFT SHIFT ROTATE ROTATE COMPLE-
NARY BCD RIGHT LEFT RIGHT MENT
3 (@) ADD (@) SUB (@) MUL (@) DIV (@) ANDW (@) ORW (@) XORW (@) XNRW (@) INC (@) DEC
BCD ADD BCD BCD BCD LOGICAL LOGICAL OR EXCLUSIVE EXCLUSIVE INCREMENT DECRE-
SUBTRACT MULTIPLY DIVIDE AND OR NOR MENT
4 (@) STC (@) CLC --- --- --- --- (@) MSG --- --- ---
SET CARRY CLEAR MESSAGE
CARRY DISPLAY
5 (@) ADB (@) SBB (@) MLB (@) DVB (@) ADDL (@) SUBL (@) MULL (@) DIVL --- ---
BINARY ADD BINARY BINARY BINARY DOUBLE DOUBLE DOUBLE DOUBLE
SUBTRACT MULTIPLY DIVIDE BCD ADD BCD BCD BCD
SUBTRACT MULTIPLY DIVIDE
6 CMPL (@) INI (@) PRV (@) CTBL (@) SPED (@) PULS --- (@) BCNT (@) BCMP (@) STIM
DOUBLE MODE HIGH- COMPARI- SPEED SET PULSES BIT BLOCK INTERVAL
COMPARE CONTROL SPEED SON TABLE OUTPUT * * COUNTER COMPARE TIMER
COUNTER LOAD
PV READ
7 (@) XFER (@) BSET --- (@) XCHG (@) SLD (@) SRD (@) MLPX (@) DMPX (@) SDEC ---
BLOCK BLOCK SET DATA ONE DIGIT ONE DIGIT 4-TO-16 16-TO-4 7-SEGMENT
TRANSFER EXCHANGE SHIFT LEFT SHIFT DECODER ENCODER DECODER
RIGHT
8 (@) DIST (@) COLL (@) MOVB (@) MOVD (@) SFTR (@) TCMP (@) ASC --- --- (@) INT
SINGLE DATA MOVE BIT MOVE DIGIT REVER- TABLE ASCII INTERRUPT
WORD COLLECT SIBLE SHIFT COMPARE CONVERT CONTROL
DISTRIBUTE REGISTER
9 --- (@) SBS SBN RET --- --- --- (@) IORF --- (@) MCRO
SUBROU- SUBROU- SUBROU- I/O MACRO
TINE ENTRY TINE TINE REFRESH
DEFINE RETURN
345
Befehlstabellen Abschnitt 7-6
7-6-2 CPM2A/CPM2C–Funktionscodes
In der folgenden Tabelle sind die CPM2A/CPM2C–Befehle aufgeführt, die fest-
gelegte Funktionscodes besitzen. Sowohl der Befehlsname als auch die AWL–
Bezeichnung sind angegeben. Verwenden Sie die Ziffern in der äußersten lin-
ken Spalte als linke Stelle und die Nummer in der Spaltenüberschrift als rechte
Stelle des Funktionscodes.
Linkee Rechte Stelle
Stelle
St ll 0 1 2 3 4 5 6 7 8 9
0 NOP END IL ILC JMP JME (@) FAL FALS STEP SNXT
NO END INTERLOCK INTERLOCK JUMP JUMP END FAILURE SEVERE STEP STEP START
OPERATION CLEAR ALARM AND FAILURE DEFINE
RESET ALARM
1 SFT KEEP CNTR DIFU DIFD TIMH (@) WSFT (@) ASFT --- ---
SHIFT KEEP REVER- DIFFEREN- DIFFEREN- HIGH- WORD ASYNCHRO-
REGISTER SIBLE TIATE UP TIATE DOWN SPEED SHIFT NOUS SHIFT
COUNTER TIMER REGISTER
2 CMP (@) MOV (@) MVN (@) BIN (@) BCD (@) ASL (@) ASR (@) ROL (@) ROR (@) COM
COMPARE MOVE MOVE NOT BCD TO BINARY TO SHIFT LEFT SHIFT ROTATE ROTATE COMPLE-
BINARY BCD RIGHT LEFT RIGHT MENT
3 (@) ADD (@) SUB (@) MUL (@) DIV (@) ANDW (@) ORW (@) XORW (@) XNRW (@) INC (@) DEC
BCD ADD BCD BCD BCD LOGICAL LOGICAL OR EXCLUSIVE EXCLUSIVE INCREMENT DECRE-
SUBTRACT MULTIPLY DIVIDE AND OR NOR MENT
4 (@) STC (@) CLC --- --- --- --- (@) MSG (@) RXD (@) TXD ---
SET CARRY CLEAR MESSAGE RECEIVE TRANSMIT
CARRY DISPLAY
5 (@) ADB (@) SBB (@) MLB (@) DVB (@) ADDL (@) SUBL (@) MULL (@) DIVL (@) BINL (@) BCDL
BINARY ADD BINARY BINARY BINARY DOUBLE DOUBLE DOUBLE DOUBLE DOUBLE DOUBLE BI-
SUBTRACT MULTIPLY DIVIDE BCD ADD BCD BCD BCD BCD-TO- NARY-TO-
SUBTRACT MULTIPLY DIVIDE DOUBLE DOUBLE
BINARY BCD
6 CMPL (@) INI (@) PRV (@) CTBL (@) SPED (@) PULS (@) SCL (@) BCNT (@) BCMP (@) STIM
DOUBLE MODE HIGH- COMPARI- SPEED OUT- SET PULSES SCALING BIT BLOCK INTERVAL
COMPARE CONTROL SPEED SON TABLE PUT COUNTER COMPARE TIMER
COUNTER LOAD
PV READ
7 (@) XFER (@) BSET --- (@) XCHG (@) SLD (@) SRD (@) MLPX (@) DMPX (@) SDEC ---
BLOCK BLOCK SET DATA ONE DIGIT ONE DIGIT 4-TO-16 16-TO-4 7-SEGMENT
TRANSFER EXCHANGE SHIFT LEFT SHIFT DECODER ENCODER DECODER
RIGHT
8 (@) DIST (@) COLL (@) MOVB (@) MOVD (@) SFTR (@) TCMP (@) ASC --- --- (@) INT
SINGLE DATA MOVE BIT MOVE DIGIT REVER- TABLE ASCII INTERRUPT
WORD COLLECT SIBLE SHIFT COMPARE CONVERT CONTROL
DISTRIBUTE REGISTER
9 --- (@) SBS SBN RET --- --- --- (@) IORF --- (@) MCRO
SUBROU- SUBROU- SUBROU- I/O MACRO
TINE TINE TINE REFRESH
ENTRY DEFINE RETURN
346
Befehlstabellen Abschnitt 7-6
1 SFT KEEP CNTR DIFU DIFD TIMH (@) WSFT (@) ASFT --- ---
SHIFT KEEP REVER- DIFFEREN- DIFFEREN- HIGH- WORD ASYNCHRO-
REGISTER SIBLE TIATE UP TIATE DOWN SPEED SHIFT NOUS SHIFT
COUNTER TIMER REGISTER
2 CMP (@) MOV (@) MVN (@) BIN (@) BCD (@) ASL (@) ASR (@) ROL (@) ROR (@) COM
COMPARE MOVE MOVE NOT BCD TO BI- BINARY TO SHIFT LEFT SHIFT ROTATE ROTATE COMPLE-
NARY BCD RIGHT LEFT RIGHT MENT
3 (@) ADD (@) SUB (@) MUL (@) DIV (@) ANDW (@) ORW (@) XORW (@) XNRW (@) INC (@) DEC
BCD ADD BCD BCD BCD LOGICAL LOGICAL OR EXCLUSIVE EXCLUSIVE INCREMENT DECRE-
SUBTRACT MULTIPLY DIVIDE AND OR NOR MENT
4 (@) STC (@) CLC --- --- --- --- (@) MSG (@) RXD (@) TXD ---
SET CARRY CLEAR MESSAGE RECEIVE TRANSMIT
CARRY DISPLAY
5 (@) ADB (@) SBB (@) MLB (@) DVB (@) ADDL (@) SUBL (@) MULL (@) DIVL --- ---
BINARY ADD BINARY BINARY BINARY DOUBLE DOUBLE DOUBLE DOUBLE
SUBTRACT MULTIPLY DIVIDE BCD ADD BCD BCD BCD
SUBTRACT MULTIPLY DIVIDE
6 CMPL --- --- --- --- --- (@) SCL (@) BCNT (@) BCMP (@) STIM
DOUBLE SCALING BIT BLOCK INTERVAL
COMPARE COUNTER COMPARE TIMER
7 (@) XFER (@) BSET --- (@) XCHG (@) SLD (@) SRD (@) MLPX (@) DMPX (@) SDEC ---
BLOCK BLOCK SET DATA ONE DIGIT ONE DIGIT 4-TO-16 16-TO-4 7-SEGMENT
TRANSFER EXCHANGE SHIFT LEFT SHIFT DECODER ENCODER DECODER
RIGHT
8 (@) DIST (@) COLL (@) MOVB (@) MOVD (@) SFTR (@) TCMP (@) ASC --- --- ---
SINGLE DATA MOVE BIT MOVE DIGIT REVER- TABLE ASCII
WORD COLLECT SIBLE SHIFT COMPARE CONVERT
DISTRIBUTE REGISTER
9 --- (@) SBS SBN RET --- --- --- --- --- (@) MCRO
SUBROU- SUBROU- SUBROU- MACRO
TINE TINE TINE
ENTRY DEFINE RETURN
AWL–Befehl Name
(@)FCS FCS–Berechnung
(@)HEX ACII–zu–Hexadezimal
(@)NEG* 2er–Komplement
PID* PID–Regelung
(@)STUP RS–232C–Konfiguration ändern
ZCP* Bereichsgrößen vergleichen
Hinweis *SCL(66), NEG(––), PID(––) und ZCP (––) werden nur von den
SRM1–C0j–V2–CPUs unterstützt.
347
Befehlstabellen Abschnitt 7-6
348
Befehlstabellen Abschnitt 7-6
349
Kontaktplanbefehle Abschnitt 7-7
7-7 Kontaktplanbefehle
Kontaktplan– und Logik–Blockbefehle korrespondieren mit den Bedingungen
im Kontaktplan. Logikblock–Befehle dienen zur Beschreibung komplexer Ab-
schnitte des Kontaktplans.
B B: Bit
LOAD – LD IR, SR, AR, HR, TC, LR, TR
B B: Bit
LOAD NOT – LD NOT
IR, SR, AR, HR, TC, LR
B B: Bit
AND – AND IR, SR, AR, HR, TC, LR
B B: Bit
AND NOT – AND NOT IR, SR, AR, HR, TC, LR
B: Bit
OR – OR B
IR, SR, AR, HR, TC, LR
B: Bit
OR NOT – OR NOT B
IR, SR, AR, HR, TC, LR
Einschränkung Die Anzahl der verwendeten Befehle wie auch die Reihenfolge ihrer Anwen-
dung wird ausschließlich durch die Speicherkapazität der SPS beschränkt.
350
Bitsteuerungs–Befehle Abschnitt 7-8
Kontaktplansymbol
00002 00003
7-8 Bitsteuerungs–Befehle
Es gibt sieben Befehle, die allgemein zur Steuerung des individuellen Bitstatus
verwendet werden. Diese sind OUT, OUT NOT, DIFU(13), DIFD(14), SET,
RSET und KEEP(11). Diese Befehle werden dazu verwendet, Bits auf verschie-
dene Weisen zu setzen und rückzusetzen.
351
Bitsteuerungs–Befehle Abschnitt 7-8
B: Bit
B
IR, SR, AR, HR, LR, TR
B: Bit
B
IR, SR, AR, HR, LR
Einschränkung Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, der
den Zustand des Bits steuert.
Beschreibung OUT und OUT NOT steuern den Status des zugewiesenen Bits entsprechend
der Ausführungsbedingung.
Mit OUT wird das entsprechende Bit mit der Ausführungsbedingung WAHR auf
EIN gesetzt und bei der Ausführungsbedigung FALSCH auf AUS zurückge-
setzt. Bei einem zugewiesenem TR–Bit erscheint OUT an einem Verzwei-
gungspunkt anstatt am Ende des Strompfads. Sehen Sie Abschnitt 6-3-8 Ver-
zweigungen für weitere Informationen.
Mit OUT NOT wird das entsprechende Bit mit der Ausführungsbedingung
FALSCH auf EIN gesetzt und bei der Ausführungsbedigung WAHR auf AUS zu-
rückgesetzt.
OUT und OUT NOT bewirkt die Steuerung der Programmausführung durch set-
zen und rücksetzen der Bits, die den Bedingungen im Kontaktplan zugewiesen
sind. Dadurch werden die Ausführungsbedigungen für andere Befehle festge-
legt. Dies erlaubt eine komplexe Anordnung von Bedingungen zur Steuerung
des Zustands eines einzelnen Hilfsbits, das seinerseits andere Befehle steuert.
Zur Festlegung der Zeitdauer, die ein bestimmtes Bit den Zustand EIN oder AUS
einnimmt, kann OUT und OUT NOT mit dem Zeitgeberfehl TIM verknüpft wer-
den. Sehen Sie Abschnitt 7-15-1 ZEITGEBER – TIM für weitere Informationen.
B: Bit
SET B
IR, SR, AR, HR, LR
B: Bit
RSET B
IR, SR, AR, HR, LR
Beschreibung Mit SET wird das Operandenbit mit der Ausführungsbedingung WAHR auf EIN
gesetzt. Der Zustand des Bits bleibt jedoch unbeeinflußt, wenn die Ausfüh-
rungsbedingung FALSCH ist. Mit RSET wird das Operandenbit auf AUS ge-
setzt, wenn die Ausführungsbedingung WAHR ist. Der Zustand des Bits bleibt
jedoch unbeeinflußt, wenn die Ausführungsbedingung FALSCH ist.
Die Funktion von SET unterscheidet sich von der von OUT, da der OUT–Befehl
das Operandenbit ausschaltet, wenn die Ausführungsbedingung FALSCH ist.
352
Bitsteuerungs–Befehle Abschnitt 7-8
Ebenso unterscheidet sich RSET von OUT NOT, da OUT NOT das Operanden-
bit einschaltet, wenn die Ausführungsbedingung FALSCH ist.
Hinweis Geben Sie SET auf der Programmierkonsole ein, indem Sie die FUN– und SET–
Tasten drücken und RSET, indem Sie den FUN– und RESET–Tasten drücken.
Vorsichtsmaßnahmen Sollten die Operandenbits von SET und RSET zwischen IL(02) und ILC(03)
oder JMP(04) und JME(05) liegen, so wird ihr Status nicht geändert, falls die
Verriegelungs– oder Sprungbedingung erfüllt ist (Ausführung von IL(02) oder
JMP(04) mit einer FALSCH–Ausführungsbedingung).
Merker Die aufgeführten Befehle haben keine Auswirkungen auf Merker.
Beispiele Die folgenden Beispiele veranschaulichen die Unterschiede zwischen den
OUT- und SET/RSET–Befehlen. Im ersten Beispiel ( Diagramm A) wird IR
20000 immer dann gesetzt oder rückgesetzt, wenn IR 00000 gesetzt oder rück-
gesetzt wird.
Im zweiten Beispiel (Diagramm B) wird IR 20000 gesetzt, wenn IR 00001 ge-
setzt wird und bleibt gesetzt (auch wenn IR 00001 rückgesetzt wird), bis IR
00002 gesetzt wird.
00000
20000
Adresse Befehl Operanden
00000 LD 00000
Diagramm A 00001 OUT 20000
00001
SET 20000
Adresse Befehl Operanden
00002 00000 LD 00001
RSET 20000
00001 SET 20000
00002 LD 00002
Diagramm B 00003 RSET 20000
Einschränkung Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, der
den Zustand des Bits steuert.
Beschreibung KEEP(11) wird dazu verwendet, den Status des zugewiesenen Bits, und zwar
abhängig von zwei Ausführungsbedingungen, zu erhalten. Die Ausführungsbe-
digungen sind S (SETZ–Eingang) und R (RÜCKSETZ–Eingang). KEEP(11) ar-
beitet wie ein RS–Flip–Flop, das durch S ein– und durch R ausgeschaltet wird.
Wird die Ausführungsbedigung S WAHR, wird das zugewiesene Bit GESETZT
und bleibt GESETZT, völlig unabhängig davon, ob die Ausführungsbedingung
WAHR bleibt oder auf FALSCH wechselt. Wird die Ausführungsbedingung für R
WAHR, wird das zugewiesene Bit ZURÜCKGESETZT und bleibt RÜCKGE-
SETZT, völlig unabhängig davon, ob die Ausführungsbedingung WAHR bleibt
oder auf FALSCH wechselt. Das Verhältnis zwischen den Ausführungsbedin-
353
Bitsteuerungs–Befehle Abschnitt 7-8
gungen und dem durch KEEP(11) erzeugten Bitstatus ist nachfolgend darge-
stellt:
S–Ausführungs–
bedingung
R–Ausführungs–
bedingung
Bitstatus
Vorsichtsmaßnahmen Seien Sie vorsichtig, wenn ein externer Öffnerkontakt die KEEP–Rücksetzung
steuert. Verwenden Sie niemals ein Eingangsbit mit invertierter Bedingung für
die RESET(R)–Ausführungsbedingung, falls das Eingangsgerät über eine AC–
Spannungsversorgung verfügt. Die Verzögerung beim Abschalten der SPS mit
DC–Spannungsversorgung (relativ zur AC–Spannungsversorung am Ein-
gangsgerät) kann dazu führen, dass das dem KEEP(11)–Befehl zugewiesene
Bit RÜCKGESETZT wird. Dies ist nachfolgend dargestellt.
Eingangsbaugruppe
A S
KEEP (11)
NIE A B
R
Kontaktplansymbole Datenbereiche
B: Bit
DIFU(13) B
IR, SR, AR, HR, LR
B: Bit
DIFD(14) B
IR, SR, AR, HR, LR
Einschränkung Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, der
den Zustand des Bits steuert.
Beschreibung DIFU(13) und DIFD(14) werden dazu verwendet, das zugewiesene Bit für ge-
nau einen Zyklus auf EIN zu setzen.
Bei jeder Ausführung von DIFU(13) wird die aktuelle Ausführungsbedigung mit
der vorhergehenden Ausführungsbedingung verglichen. War die vorherge-
hende Ausführungsbedingung FALSCH und ist die aktuelle Ausführungsbedin-
gung WAHR, setzt DIFU(13) das zugewiesene Bit auf EIN. War die vorherge-
hende Ausführungsbedingung WAHR und die aktuelle Ausführungsbedingung
ist entweder WAHR oder FALSCH, wird DIFU(13) das entsprechende Bit entwe-
der auf AUS setzen, oder, falls es bereits den Zustand AUS hatte, in diesem Zu-
stand belassen. Unter der Voraussetzung, dass das zugewiesene Bit in jedem
Zyklus abgearbeitet wird, führt dies dazu, dass das Bit den Status EIN niemals
354
END (ENDE) – END(01) Abschnitt 7-10
länger als für einen Zyklus einnimmt (sehen Sie auch die folgenden Vorsichts-
maßnahmen).
Bei jeder Ausführung von DIFD(14) wird die aktuelle Ausführungsbedigung mit
der vorhergehenden Ausführungsbedingung verglichen. Ist die vorhergehende
Ausführungsbedingung WAHR und die gegenwärtige FALSCH, schaltet
DIFD(14) das entsprechende Bit ein. War die vorhergehende Ausführungsbe-
dingung FALSCH und ist die aktuelle Ausführungsbedingung entweder EIN
oder AUS, wird DIFD(14) das zugewiesene Bit entweder auf AUS setzen, oder,
falls es bereits den Zustand AUS hatte, in diesem Zustand belassen. Unter der
Voraussetzung, dass das zugewiesene Bit in jedem Zyklus abgearbeitet wird,
führt dies dazu, dass das Bit den Status EIN niemals länger als für einen Zyklus
einnimmt (sehen Sie auch die folgenden Vorsichtsmaßnahmen).
Die DIFU(13)– und DIFD(14)–Befehle werden verwendet, wenn für einen be-
stimmten Befehl die flankengetriggerte Form (d.h. Befehl mit @–Präfix) nicht
verfügbar ist, die Ausführung des Befehls sich aber dennoch auf nur einen Zy-
klus beschränken soll. Sie können auch dann verwendet werden, wenn eine
flankengetriggerte Form zwar verfügbar ist, die Anwendung von DIFU(13) und
DIFD(14) das Programm aber erheblich vereinfacht. Entsprechende Beispiele
werden später dargestellt.
Vorsichtsmaßnahmen Die Ergebnisse der Abarbeitung von DIFU(13) und DIFD(14) sind nicht be-
stimmbar, wenn die Befehle zwischen IL und ILC, JMP und JME oder in Unter-
programmen verwendet werden. Sehen Sie Abschnitt 7-11 INTERLOCK und
INTERLOCK CLEAR – IL(02) und ILC(03), Abschnitt 7-12 JUMP und JUMP
END – JMP(04) und JME(05), Abschnitt 7-26 Unterprogramme und Abschnitt
7-29-1 Interrupt–Steuerung – INT (89) für weitere Informationen.
Beispiel In diesem Beispiel wird IR 20014 für einen Zyklus auf EIN gesetzt, sobald IR
00000 GESETZT wird. IR 20015 wird auf EIN gesetzt, sobald IR 00000 ZU-
RÜCKGESETZT wird.
00000
DIFU(13) 20014
Adresse Befehl Operanden
00000 LD 00000
00001 DIFU(13) 20014
DIFD(14) 20015
00002 DIFD(14) 20015
355
INTERLOCK und INTERLOCK CLEAR (Verriegelungsbefehle) – IL(02) und ILC(03)Abschnitt 7-11
Merker END(01) setzt die Merker ER, CY, GR, EQ und LE zurück.
Kontaktplansymbol ILC(03)
Beschreibung IL(02) und ILC(03) werden zur Verriegelgung bestimmter Abschnitte im Kon-
taktplan verwendet. Die Funktionsweise (Erzeugung von Verzweigungen) ist
der von TR–Bits ähnlich aber die Abarbeitung der Befehle zwischen IL(02) und
ILC(03) unterscheidet sich, wenn die Ausführungsbedingung für IL(02)
FALSCH ist. Ist die Ausführungsbedingung für IL(02) WAHR, wird das Pro-
gramm zwischen IL(02) und ILC(03) wie programmiert ausgeführt. Sehen Sie
den Abschnitt 6-3-8 Verzweigungsbefehle für weitere Informationen.
Ist die Ausführungsbedigung für IL(02) FALSCH, wird der verriegelte Abschnitt
zwischen IL(02) und ILC(03) folgendermaßen abgearbeitet:
IL(02) und ILC(03) müssen nicht unbedingt paarig verwendet werden. IL(02)
kann mehrere Male hintereinander verwendet werden, wobei jedes IL(02) einen
verriegelten Abschnitt bis hin zum nächsten ILC(03) erzeugt. ILC(03)–Befehle
können nicht hintereinander verwendet werden. Zwischen zwei ILC(03)–Befeh-
len muss zumindest ein IL(02)-Befehl programmiert werden.
DIFU(13) und DIFD(14) in Befinden sich DIFU(13)– oder DIFD(14)–Befehle in einem verriegelten Ab-
verriegelten
Programmabschnitten schnitt und ist die Ausführungsbedingung für IL(02) FALSCH, werden Änderun-
gen der Ausführungsbedingungen für DIFU(13) und DIFD(14) nicht ausgewer-
tet. Befinden sich DIFU(13) oder DIFD(14) in einem verriegelten Abschnitt des
Programms und werden unmittelbar, nachdem die Ausführungsbedingung für
IL(02) WAHR wurde, ausgeführt, werden die Ausführungsbedingungen von
DIFU(13) und DIFD(14) mit der vor Aktivierung der Verriegelung existierenden
Ausführungsbedingung verglichen. Die Veränderungen im Kontaktplan und der
Bitzustände sind nachfolgend dargestellt. Die Verriegelung ist aktiviert, solange
00000 nicht gesetzt ist. Beachten Sie, dass 20000 am durch ”A” gekennzei-
356
INTERLOCK und INTERLOCK CLEAR (Verriegelungsbefehle) – IL(02) und ILC(03)Abschnitt 7-11
chenten Punkt nicht GESETZT wird, auch wenn 00001 zunächst zurückgesetzt
und dann wieder gesetzt wurde.
00000
Adresse Befehl Operanden
IL(02)
00001 00000 LD 00000
DIFU(13) 20000 00001 IL(02)
00002 LD 00001
ILC(03)
00003 DIFU(13) 20000
A 00004 ILC(03)
EIN
00000 AUS
EIN
00001 AUS
EIN
20000 AUS
Beispiel Das folgende Diagramm zeigt die zweimalige Verwendung von IL(02) mit nur
einem ILC(03)–Befehl.
Ist die Ausführungsbedingung für den ersten IL(02)–Befehl FALSCH, wird TIM
000 auf 1,5 s zurückgesetzt, der Zähler (CNT 001) ändert sich nicht und 01002
wird zurückgesetzt. Ist die Ausführungsbedingung für den ersten IL(02)–Befehl
WAHR und die Ausführungsbedigung für den zweiten IL(02)–Befehl FALSCH,
wird TIM 000 entsprechend dem Zustand von 00001 ausgeführt, CNT 001 wird
nicht geändert und 01002 zurückgesetzt. Sind beide Ausführungsbedingungen
für die IL(02)–Befehle WAHR, wird das Programm wie programmiert ausge-
führt.
357
JUMP und JUMP END (Sprungbefehle) – JMP(04) und JME(05) Abschnitt 7-12
N: Sprungnummer
JMP(04) N
#
N: Sprungnummer
JME(05) N
#
Einschränkung Die Sprungnummern 01 bis 49 können nur ein einziges Mal mit dem Befehl
JMP(04) bzw. JME(05) verwendet werden, d.h. sie definieren nur jeweils einen
einzelnen Sprung. Die Sprungnummer 00 kann beliebig oft verwendet werden.
Beschreibung JMP(04) wird immer paarweise mit JME(05) verwendet, um Sprungfunktionen
zu erzeugen, d.h. um von einem bestimmten Punkt im Kontaktplan ganze Ab-
schnitte bis zu einem anderen Punkt zu überspringen. Dabei definiert JMP(04)
den Punkt, von dem ab der Sprung ausgeführt werden soll und JME(05) das Ziel
des Sprungs. Ist die Ausführungsbedingung für JMP(04) WAHR, wird kein
Sprung durchgeführt und die Programmausführung vielmehr fortgesetzt. Ist die
Ausführungsbedingung für JMP(04) FALSCH, erfolgt ein Sprung bis hin zu dem
über die gleiche Sprungnummer definierten JME(05) und der Befehl, der auf
JME(05) folgt, wird als nächstes ausgeführt.
Liegt die Sprungnummer für JMP(04) zwischen 01 und 49, erfolgen Sprünge so-
fort zu JME(05) mit der gleichen Sprungsnummer, ohne dazwischenliegende
Befehle auszuführen. Der Status von Zeitgebern, Zählern und allen anderen
Bits, die über Befehle gesteuert werden, die den Abschnitt zwischen JMP(04)
und JME(05) belegen, wird nicht geändert. Jede der Sprungnummern zwischen
01 und 99 kann nur ein einziges Mal verwendet werden. Da alle Befehle zwi-
schen JMP(04) und JME(05) übersprungen werden, können die Sprünge 01 bis
49 dazu verwendet werden, die Zykluszeit zu reduzieren.
Sprungnummer 00
Wird die Sprungnummer 00 mit dem JMP(04)–Befehl verwendet, wird nach
dem nächsten JME(05) mit Sprungnummer 00 gesucht. Auf Grund dieses Su-
chungsvorgangs verlängert sich die Zykluszeit im Vergleich zu den anderen
Sprungbefehlen.
Der Status von Zeitgebern, Zählern und allen anderen Bits, die über Befehle ge-
steuert werden, wird nicht geändert, sollten sie im Abschnitt zwischen JMP(04)
00 und JME(05) 00 liegen. Die Sprungnummer 00 kann beliebig oft verwendet
werden. Ein Sprung von JMP(04) 00 führt immer zum nächsten JME(05) 00 im
Programm. Hierdurch ist es möglich, mehrere JMP(04) 00 nacheinander zu ver-
wenden, die dann alle das gleiche Ziel JME(05) 00 haben. Auf der anderen Seite
ist es sinnlos, mehrere JME(05) 00 nacheinander zu verwenden, da alle
Sprünge zum ersten definierten JME(05) 00 führen.
DIFU(13) und DIFD(14) in Wurden DIFU(13) und DIFD(14) so programmiert, ein entsprechendes Bit auf
Sprüngen
EIN zu setzen, so ist dies nicht notwendiger Weise der Fall, wenn die Befehle im
Bereich zwischen JMP(04) und JME(05) liegen. Hat DIFU(13) bzw. DIFD(14)
das Bit gesetzt, bleibt es gesetzt, bis der Befehl erneut abgearbeitet wird. Im
Normalfall geschieht dies im nächsten Zyklus. Wurde jedoch ein Sprungbefehl
gesetzt, kann eine Statusänderung des Bits erst erfolgen, wenn die Sprungfunk-
tion nicht ausgeführt wird. Wird nämlich ein Bit durch DIFU(13) bzw. DIFD(14)
auf EIN gesetzt und dann im nächsten Zyklus ein Sprung durchgeführt, so daß
DIFU(13) und DIFD(14) übergangen werden, wird das zugewiesene Bit solange
gesetzt bleiben, bis die Ausführungsbedigung für JMP(04) das nächste Mal auf
EIN gesetzt wird.
358
Anwenderdefinierte Fehlerbefehle Abschnitt 7-13
TIMH(15) und TMHH(––) in Wird TIMH(15) oder TMHH(––) zwischen JMP(04) und JME(05) programmiert,
Sprüngen erfogt eine Zeitnahme durch einen Interrupt, wenn die Sprungnummern 01 bis
49 verwendet werden; keine Zeitnahme erfolgt, wenn Sprungnummer 00 ver-
wendet wird.
Vorsichtsmaßnahmen Werden JMP(04) und JME(05) nicht paarig verwendet, wird bei der Programm-
überprüfung eine entsprechende Warnmeldung ausgegeben. Diese Meldung
erfolgt auch dann, wenn JMP(04) 00 und JME(05) 00 nicht paarweise eingege-
ben wurden. Die Warnmeldung hat aber auf die korrekte Programmausführung
keine Auswirkung.
n: FAL–Nummer
FAL(06) n @FAL(06) n
# (00 bis 99)
n: FAL–Nummer
FALS(07) n
# (01 bis 99)
FAL–Bereich
25307 25300
X101 X100
359
Schrittbefehle Abschnitt 7-14
7-14 Schrittbefehle
STEP DEFINE und STEP START
(Schritt und nächster Schritt) – STEP(08)/SNXT(09)
Kontaktplansymbole Datenbereiche
B: Steuerbit
STEP(08) B STEP(08)
IR, AR, HR, LR
SNXT(09) B B: Steuerbit
Einschränkung Alle Steuerbits müssen aufeinanderfolgen und im gleichen Wort enthalten sein.
Beschreibung Die Schrittbefehle STEP(08) und SNXT(09) werden paarweise dazu verwen-
det, das Programm so zu strukturieren, dass größere Abschnitte als gesonderte
Einheiten sowohl ausgeführt als auch zurückgesetzt werden können. Der Pro-
grammabschnitt wird normalerweise so definiert, dass er mit einem bestimmten
Vorgang in der Anwendung korrespondiert. (Anwendungsbeispiele werden
später in diesem Abschnitt dargestellt). Ein Schrittbefehl verhält sich wie jeder
andere Programmiercode, mit dem Unterschied, dass bestimmte Befehle (wie
z.B. END(01), IL(02)/ILC(03), JMP(04)/JME(05) und SBN (92)) in diesem Pro-
grammabschnitt nicht enthalten sein dürfen.
STEP(08) verwendet ein Steuerbit aus dem IR– oder HR–Bereich, das den An-
fang des durch den Schrittbefehl definierten Programmabschnitts kennzeich-
net. STEP(08) erfordert keine Ausführungsbedingung, wird also durch das Bit
selbst gesteuert. Die Ausführung der Schrittbefehl wird durch SNXT(09) einge-
leitet, wobei das gleiche Steuerbit wie für den STEP(08)–Befehl verwendet wer-
den muss. Der Schritt wird ausgeführt, wenn die Ausführungsbedingung für
SNXT(09) WAHR ist. Ist die Ausführungsbedingung FALSCH, wird der Befehl
ignoriert. Der SNXT(09)–Befehl muss im Programmcode vor dem Abschnitt ste-
hen, der durch den Schrittbefehl gesteuert werden soll. Er kann auch mehrfach
und verschiedentlich verwendet werden, um z. B. eine Steuerung basierend auf
zwei Ausführungsbedingungen zu ermöglichen (sehen Sie das nachfolgende
Beispiel 2). Kein Schritt, der nicht durch SNXT(09) beginnt, wird im Programm
ausgeführt.
SNXT(09) wird solange ausgeführt, bis das Programm einen STEP(08)–Befehl
ohne Steuerbit erreicht. Dabei muss dem STEP(08) ohne Steuerbit ein
SNXT(09) mit einem funktionslosen Pseudosteuerbit, z.B. ein nicht verwende-
tes Bit aus dem IR– oder HR–Bereich, vorangegangen sein. Es darf keinesfalls
das Steuerbit sein, das für den STEP(08)–Befehl verwendet wurde.
360
Schrittbefehle Abschnitt 7-14
STEP(08) LR 1005
00001
SNXT(09) 20200
STEP(08) 20200
00002
SNXT(09) 23000
361
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Merker 25407: Schrittstart–Merker: wird für einen Zyklus gesetzt, wenn STEP(08) aus-
geführt wird. Er kann zum Zurücksetzen von Zählern in Schritten ver-
wendet werden.
00000
SNXT(09) 20000 Start
20000
STEP(08) 20000
00100
CP
CNT 001
25407
25407
R #0003
1 Zyklus
362
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Beachten Sie, das “TIM 000” dazu verwendet wird, den Zeitgeberbefehl mit der
TC–Nummer 000 zu definieren, um den Fertigmerker für diesen Zeitgeber zu
bestimmen und den Istwert dieses Zeitgebers zu kennzeichnen. Die Bedeutung
des Ausdrucks geht aus dem Kontext hervor, d.h. die erste Anwendung ist im-
mer ein Befehl, die zweite ist immer ein Bitoperand und die dritte ein Wortope-
rand. Das gleiche gilt für alle anderen TC–Nummern, die mit dem Präfix TIM
oder CNT versehen werden.
Ein Sollwert kann als Konstante eingegeben werden oder als Wortadresse in
einem Datenbereich. Wird ein E/A–Adressbereichswort einer Eingangsbau-
gruppe als Wortadresse spezifiziert, kann die Eingangsbaugruppe so verdrah-
tet werden, dass der Sollwert extern über Daumenradschalter oder ähnliche
Geräte eingestellt werden kann. Dies ist nur dann möglich, wenn sich die SPS in
der RUN– oder MONITOR–Betriebsart befindet. Alle extern einzustellenden
Sollwerte müssen im BCD–Format eingegeben werden.
N: TC–Nummer
Kontaktplansymbol
#
TIM N
SV
Datenbereiche
Einschränkungen Der Sollwert kann im Bereich zwischen 000.0 und 999.9 liegen. Der Dezimal-
punkt wird nicht eingegeben.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder einen
ZÄHLERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von
000 bis 255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127
(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Wird der TIMH(15)–Befehl benötigt, sollten TC 000 bis TC 003 (TC 000 bis TC
015 bei der CPM2A/CPM2C) nicht für den normalen TIM–Befehl verwendet
werden. Sehen Sie den Abschnitt 7-15-2 SCHNELLER ZEITGEBER –
TIMH(15) für weitere Informationen.
In den SPS der CPM2A/CPM2C–Serien sollte TC 004 bis TC 007 nicht für TIM
verwendet werden, wenn TMHH(––) benötigt wird. Sehen Sie 7-15-3 SEHR
SCHNELLER ZEITGEBER – TMHH(––) für weitere Informationen.
Beschreibung Ein Zeitgeber wird aktiviert, sobald die entsprechende Ausführungsbedingung
WAHR wird. Er wird auf den Sollwert zurückgesetzt, wenn die Ausführungsbe-
dingung FALSCH wird. Ist er aktiviert, zählt er, bezogen auf den Sollwert, im
0,1–Sekundentakt abwärts.
Bleibt die Ausführungsbedingung solange WAHR, bis TIM auf Null zurückge-
zählt hat, wird der Fertigmerker für die entsprechende TC–Nummer gesetzt. Er
bleibt gesetzt, bis TIM zurückgesetzt wird, d.h. die Ausführungsbedingung
FALSCH wird.
Die folgende Abbildung veranschaulicht das Verhältnis zwischen der Ausfüh-
rungsbedingung für TIM und dem zugewiesenen Fertigmerker.
WAHR
Ausführungs–
bedingung FALSCH
WAHR
Fertigmerker FALSCH
SW SW
363
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
n: TC–Nummer
Kontaktplansymbol
#
TIMH(15) n
SW
Datenbereiche
Einschränkungen Der zulässige Sollwert liegt zwischen 00,00 und 99,99. (Auch 00,00 und 00,01
sind zulässige Werte. Die Eingabe von 00,00 führt jedoch dazu, dass der Zeitge-
ber außer Funktion gesetzt wird, da der Fertigmerker sofort gesetzt wird. Der
Wert 00,01 wird vom System nicht zuverlässig erkannt). Der Dezimalpunkt wird
nicht eingegeben.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-
LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis
255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127
(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Beschreibung TIMH(15) arbeitet in gleicher Weise wie TIM, mit dem Unterschied, dass die
Taktzeit lediglich 0,01 Sekunden beträgt. Sehen Sie Abschnitt 7-15-1 ZEITGE-
BER – TIM für weitere Informationen.
Vorsichtsmaßnahmen Zeitgeber in einem verriegelten Programmabschnitt werden zurückgesetzt,
wenn die Ausführungsbedingung für IL(02) FALSCH wird. Unterbrechungen der
Spannungsversorgung führen ebenfalls zur Rücksetzung der Zeitgeber. Soll
also der Istwert des Zeitgebers bei Auftreten eines Stromausfalls erhalten blei-
ben, muss eine Zeitgeberschaltung mit nullspannungsicherem Istwert unter
364
Zeitgeber– und Zählerbefehle Abschnitt 7-15
In den SPS der CPM2A/CPM2C–Serien sollte TC 004 bis TC 007 nicht für
TIMH(15) verwendet werden, wenn TMHH(––) benötigt wird. Sehen Sie 7-15-3
SEHR SCHNELLER ZEITGEBER – TMHH(––) für weitere Informationen.
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-
tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird je-
doch TIM000 bis TIM003 verwendet, kann eine Verzögerung auftreten, bevor
der Merker aktiviert wird.
Wird der Sollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker ir-
gendwo zwischen 0 und 0.01 s aktiviert, nachdem die Ausführungsbedingung
des Zeitgebers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt eigent-
lich die Zeit); der Fertigmerker kann auch aktivert werden, sobald die Ausfüh-
rungsbedingung des Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –0,01 s) in Anwen-
dungsprogrammen.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Beispiel Im folgenden Beispiel wird ein Zeitgeber als Konstante eingegeben. CIO 01600
wird aktiviert, nachdem CIO 00000 gesetzt wird und behält diesen Zustand für
1,5 Sekunden bei. Nach dem Rücksetzen von 00000 werden auch Zeitgeber
und CIO 01600 zurückgesetzt.
00000
TIMH(15)
Adresse Befehl Operanden
000
1.5 s 00000 LD 00000
#0150
00001 TIMH(15) 000
TIM 000 # 0150
01600
00002 LD TIM 000
00003 OUT 01600
365
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Vorsichtsmaßnahmen Sehr schnelle Zeitgeber mit anderen Zeitgebernummern als TC 004 bis TC 007
sind u. U. nicht genau, wenn die Zykluszeit 1 ms überschreitet. (Die Zykluszeit
wirkt sich nicht auf Sehr schnelle Zeitgeber aus, die mit TC 004 bis TC 007 defi-
niert sind.)
Sehr schnelle Zeitgeber in verriegelten Programmabschnitten werden (auf den
Sollwert) zurückgesetzt, wenn die Ausführungsbedingung für IL(02) FALSCH
ist.
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-
tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird je-
366
Zeitgeber– und Zählerbefehle Abschnitt 7-15
doch TIM004 bis TIM007 verwendet, kann eine Verzögerung auftreten, bevor
der Merker aktiviert wird.
Wird der Sollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker ir-
gendwo zwischen 0 und 1 ms aktiviert, nachdem die Ausführungsbedingung
des Zeitgebers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt eigent-
lich die Zeit); der Fertigmerker kann auch aktivert werden, sobald die Ausfüh-
rungsbedingung des Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –1 ms) in Anwen-
dungsprogrammen.
Beispiel Im folgenden Beispiel wird CIO 20000 eingeschaltet, nachdem CIO 00000 akti-
viert wurde und bleibt für mindestens 1,5 Sekunden eingeschaltet. Wird 00000
deaktiviert, werden auch Zeitgeber und CIO 20000 zurückgesetzt.
367
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Beispiel Im folgenden Beispiel wird CIO 20000 eingeschaltet, nachdem CIO 00000 akti-
viert wurde und bleibt für mindestens 1.500 Sekunden eingeschaltet. Wird
00000 deaktiviert, werden auch Zeitgeber und CIO 20000 zurückgesetzt.
368
Zeitgeber– und Zählerbefehle Abschnitt 7-15
n: TC–Nummer
Kontaktplansymbol
#
CP
CNT n
R SW Datenbereiche
Einschränkungen Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-
LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis
255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127
(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Beschreibung CNT arbeitet, ausgehend vom Sollwert (Zählvorgabe), als Abwärtszähler. Der
Zähler wird aktiviert, wenn bei der Ausführungsbedingung WAHR eine stei-
gende Flanke des Zähleingangsimpulses (CP) anliegt. Dies bedeutet, dass der
Istwert (Zählwert) schrittweise um 1 herabgesetzt wird, wann immer CNT mit
der Ausführungsbedingung WAHR für CP ausgeführt wird und die Ausführungs-
bedingung während der letzten Ausführung FALSCH war. Bleibt die Ausfüh-
rungsbedingung unverändert oder wechselt sie von EIN auf AUS, ändert sich
der CNT–Zählwert nicht. Der Fertigmerker für einen Zähler wird gesetzt, sobald
der Zählwert 0000 erreicht ist.
CNT wird über das Rücksetz–Eingangssignal R zurückgesetzt. Der Zähler
wechselt von seinem Istwert wieder auf den voreingestellten Sollwert, sobald er
durch ein Signal zurückgesetzt wird. Das Abwärtszählen beginnt aber erst wie-
der dann, wenn an R kein Signal mehr anliegt. In verriegelten Programmab-
schnitten oder bei Spannungsunterbrechungen wird der Istwert (Zählwert) nicht
zurückgesetzt.
Die nachfolgende Abbildung stellt die Vorgänge, bezogen auf Ausführungsbe-
dingungen, Fertigmerker und Zählwerte, dar. Die Istwert–Linienhöhe zeigt nur
Änderungen des Istwert an.
WAHR
Ausführungsbedingung
für den Zähleingangsimpuls FALSCH
(CP)
Ausführungsbedingung WAHR
für Rücksetz–Eingangs– FALSCH
signal (R)
WAHR
Fertigmerker
FALSCH
SW SW
SW – 1 0002
Zählwert (IW)
SW – 2 0001
0000
Vorsichtsmaßnahmen Die Programmausführung wird auch fortgesetzt, wenn der Sollwert nicht als
BCD–Wert eingegeben wurde. Es wird dann jedoch mit einer falschen Zählvor-
gabe gearbeitet.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
369
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Beispiel Im folgenden Beispiel wird CNT dazu verwendet, erweiterte Zeitgeber durch
Zählen von Taktimpulsbits aus dem SR–Bereich zu erzeugen.
CNT 001 zählt, wieviele Male das 1–Sekunden–Taktimpuls–Bit (SR 25502) ge-
setzt und rückgesetzt wird. Auch in diesem Beispiel wird IR 00000 als Steuerbit
für CNT verwendet.
Weil in diesem Beispiel die Zählvorgabe für CNT 001 700 ist, wird der Fertigmer-
ker für CNT 002 gesetzt, sobald 700 Mal eine Sekunde verstrichen ist (11 Minu-
ten und 40 Sekunden). Als Ergebnis wird IR 20002 auf EIN gesetzt.
00000 25502
CP Adresse Befehl Operanden
CNT
001 00000 LD 00000
00001 00001 AND 25502
R
#0700
00002 LD NOT 00001
CNT 001
00003 CNT 001
20002 # 0700
00004 LD CNT 001
00005 OUT 20002
! Vorsicht Eine kürzere Taktzeit führt nicht unbedingt zu einem genauere Zeitgeberverhal-
ten. Wenn die Zeitdauer, für die das Bit gesetzt wird, sehr kurz ist, kann es vor-
kommen, dass die Erkennung bei langen Zyklen unpräzise wird. Das bedeutet,
dass Taktzeiten zwischen 0,02–Sekunden und 0,1–Sekunden bei mit CNT–Be-
fehlen gebildeten Zeitgebern vermieden werden sollten.
N: TC–Nummer
Kontaktplansymbol
#
II
CNTR (12)
DI N
Datenbereiche
SV
R
SW: Sollwert (Wort, BCD)
Einschränkungen Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-
LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis
255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127
(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Beschreibung Der CNTR(12)–Befehl ist ein aufwärts–/abwärtszählender Ringzähler. Er zählt
von 0 bis zum Sollwert, entsprechend den Ausführungsbedingungen von zwei
Eingängen, nämlich des Inkrement– (II) und des Dekrementeingangs (DI).
Der aktuelle Wert (Istwert) wird um 1 inkrementiert, wenn am II–Eingang von
CNTR(12) ein EIN–Signal anliegt und dieses Signal im letzten Zyklus AUS war.
Der aktuelle Istwert wird um1 dekrementiert, wenn am DI–Eingang von
CNTR(12) ein EIN–Signal anliegt und dieses Signal im letzten Zyklus AUS war.
Der Istwert ändert sich nicht, wenn an beiden Eingängen (II und DI) steigende
Flanken auftraten.
Der Istwert von CNT ändert sich nicht, falls sich die Ausführungsbedingungen
nicht änderten oder nur EIN/AUS–Änderungen für II als auch DI auftraten.
Soll von 0000 ausgehend dekrementiert werden, wird der Istwert als Zählvor-
gabe (Sollwert) gesetzt und der Fertigmerker bleibt solange gesetzt, bis der Ist-
wert erneut dekrementiert wird. Wird die Zählvorgabe überschritten, wird der Ist-
wert auf 0000 gestellt und der Fertigmerker gesetzt, solange, bis der Istwert wie-
der inkrementiert wird.
370
Zeitgeber– und Zählerbefehle Abschnitt 7-15
CNTR(12) wird über den Rücksetzeingang zurückgesetzt. Der Istwert wird we-
der inkrementiert noch dekrementiert, solange ein Signal an R anliegt. Der Zähl-
vorgang beginnt wieder, wenn R auf AUS gesetzt wird. In verriegelten Pro-
grammabschnitten wird der Istwert für CNTR(12) nicht zurückgesetzt. Eine
Rücksetzung erfolgt ebenfalls nicht bei einer Spannungsunterbrechung.
Änderungen der II– und DI–Ausführungsbedingungen, des Fertigmerkers und
des Istwertes sind nachfolgend als Ausschnitt des CNTR(12)–Betriebs darge-
stellt (d.h. nach dem Rücksetzen beginnt der Zählvorgang wieder bei Null). Die
Höhe der Istwertlinie kennzeichnet nur Änderungen des Istwert.
Inkrement–Eingang EIN
(II) AUS
Dekrement–Eingang EIN
(DI) AUS
EIN
Fertigmerker AUS
SW SW
Zählwert (IW) SW – 1 SW – 1
0001
SW – 2 SW – 2
0000 0000
Vorsichtsmaßnahmen Die Programmausführung wird auch fortgesetzt, wenn der Sollwert nicht als
BCD–Wert eingegeben wurde. Der Zähler arbeitet dann jedoch mit einer fal-
schen Sollvorgabe.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
371
Zeitgeber– und Zählerbefehle Abschnitt 7-15
C CTBL(63)–Funktion
000 Erstellen einer Zielwertvergleichstabelle und Starten des Vergleichs.
001 Erstellen einer Bereichsvergleichstabelle und Starten des Vergleichs.
002 Erstellen einer Zielwertvergleichstabelle. Starten des Vergleiches mit INI(61).
003 Erstellen einer Bereichsvergleichstabelle. Starten des Vergleiches mit INI(61).
Stimmt der Istwert mit dem Zielwert überein oder liegt er innerhalb des spezifi-
zierten Bereichs, wird das spezifizierte Unterprogramm aufgerufen und ausge-
führt. Sehen Sie Abschnitt 2-3-5 Schnelle Zähler–Interrupts für weitere Informa-
tionen über Tabellenvergleiche.
Wird der Schnelle Zähler in der SPS–Konfiguration (DM6642) aktiviert, startet
dieser zu Beginn des CPM2A/CPM2C–Betriebes einen Zählvorgang von Null
beginnend. Der Istwert wird erst mit der Vergleichstabelle verglichen, nachdem
diese erstellt und der Vergleich mit INI(61) oder CTBL(63) gestartet wurde. Der
Vergleich kann beendet und gestartet oder der Istwert über INI(61) zurückge-
setzt werden.
Gemeinsamkeiten von Ein Zielwertvergleich unterscheidet sich von einem Bereichsvergleich, aber die
Zielwert– und zwei Funktionen besitzen einige Gemeinsamkeiten.
Bereichvergleichen
1, 2, 3... 1. Die Unterprogrammnummern 000 bis 049 können verwendet werden und
die gleiche Unterprogrammnummer kann mehr als einmal in der Tabelle
verwendet werden.
2. Eine undefinierte Unterprogrammnummer oder FFFF kann für die Unter-
programmnummer spezifiziert werden, wenn keine Interrupt–Verarbeitung
erforderlich ist.
3. Der Vergleich kann mit INI(61) abgebrochen werden. Ein gespeicherte Ta-
belle ist gültig, bis der SPS–Betrieb abgebrochen oder eine neue Ver-
gleichstabelle gespeichert wird.
4. CTBL(63) kann nicht ausgeführt werden, wenn der schnelle Zähler in der
SPS–Konfiguration deaktiviert ist (DM 6642). (Ein Fehler tritt in diesem Fall
auf.)
Zielwertvergleich Eine Zielwertvergleichstabelle enthält bis zu sechzehn 8–stellige Zielwerte und
eine jedem Zielwert entsprechende Unterprogrammnummer. Eine Unterpro-
grammnummer wird ebenfalls für jeden Zielwert gespeichert. Stimmt der Istwert
mit dem Zielwert überein, wird das betreffende Unterprogramm aufgerufen und
ausgeführt. (Ist eine Interrupt–Verarbeitung nicht erforderlich, kann eine undefi-
nierte Unterprogrammnummer eingegeben werden.)
• In der CPM1/CPM1A erfolgen Zielwertvergleiche wertmäßig jeweils einzeln
und in der Reihenfolge der Vergleichtabelle. Erreicht der Istwert den ersten
Zielwert in der Tabelle, wird das Interrupt–Unterprogramm ausgeführt und der
Vergleich wird mit dem nächsten Wert in der Tabelle fortgesetzt. Ist der Ver-
gleich für den letzten Tabellenwert abgeschlossen, beginnt der Vorgang von
vorn.
• In der CPM2A/CPM2C wird der Istwert jedesmal mit allen Zielwerten in der Ta-
belle verglichen, wenn CTBL(63) ausgeführt wird. Stimmt der Istwert mit dem
Zielwert überein, wird das betreffende Unterprogramm aufgerufen und ausge-
führt.
Das folgende Diagramm zeigt die Struktur einer Zielwertvergleichstabelle. Ziel-
werte müssen einmalig sein; ein Fehler tritt auf, wenn ein Zielwert mehr als ein-
mal in der Tabelle vorhanden ist.
372
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Hinweis Die Unterprogrammnummer zur Aktivierung des Unterprogramms bei der De-
krementierung kann zwischen F000 und F049 liegen und bei der Inkrementie-
rung zwischen 0000 und 0049. Ein Fehler tritt auf, wenn der schnelle Zähler auf
einen Inkrementalbetrieb eingestellt wird, aber eine dekrementierende Unter-
programmnummer (F000 bis F049) spezifiziert wird.
Hinweis 1. Der untere Grenzwert jedes Bereichs muss unterhalb des oberen Grenz-
wertes liegen. Ein Fehler tritt auf, wenn der untere Grenzwert größer ist als
der obere.
2. Die Unterprogrammnummer kann zwischen 0000 bis 0049 liegen und das
Unterprogramm wird ausgeführt, solange sich der Istwert des Zählers in-
nerhalb des angegebenen Bereichs befindet. Der Wert FFFF zeigt an, dass
kein Unterprogramm ausgeführt werden soll.
3. Stellen Sie, da der Vergleich gewöhnlich nur einmal pro Zyklus ausgeführt
wird, sicher, die Zykluszeit in Betracht zu ziehen, wenn die oberen und un-
teren Grenzen Zeitwerte darstellen.
4. Eine Unterprogrammnummer kann mehr als einmal in der Tabelle verwen-
det werden.
373
Zeitgeber– und Zählerbefehle Abschnitt 7-15
374
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Über P wird die Nummer des Schnellen Zählers oder des Impulsausgangs spe-
zifiziert, der gestartet werden soll.
P Funktion
000 Spezifiziert einen Schnellen Zähler–Eingang (Eingänge 00000, 00001 und 00002),
Einzelphasen–Impulsausgang 0 ohne Beschleunigung/Abbremsung (Ausgang
01000), Einzelphasen–Impulsausgang 0 mit trapezförmiger Beschleunigung/Ab-
bremsung (Ausgang 01000).
010* Spezifiziert den einphasigen Impulsausgang 1 ohne Beschleunigung/Abbrem-
sung(Ausgang 01001).
100* Spezifiziert eingangsgesteuerten Interrupt 0 im Zählmodus (Eingang 00003).
101* Spezifiziert eingangsgesteuerten Interrupt 1 im Zählmodus (Eingang 00004).
102* Spezifiziert eingangsgesteuerten Interrupt 2 im Zählmodus (Eingang 00005).
103* Spezifiziert eingangsgesteuerten Interrupt 3 im Zählmodus (Eingang 00006).
Anfang oder Ende des Bei C = 000 bzw. 001 beginnt bzw. beendet INI(61) den Vergleich des Schnellen
Vergleichs Zähler–Istwertes mit der über CTBL(63) erstellten Vergleichstabelle. Ein Fehler
(C=000 oder C=001) tritt auf, wenn diese Funktion ausgeführt wird, ohne zuvor eine Vergleichstabelle
mit CTBL(63) zu erstellen.
Im allgemeinen sollte @INI(61) verwendet werden, wenn C=000 ist, da der Be-
fehl nur einmal ausgeführt werden muss, um den Tabellenvergleich zu begin-
nen.
Istwert ändern Bei C=002 ändert INI(61) den Istwert des spezifizierten Schnellen Zählers oder
(C=002) eingangsgesteuerten Interrupts (Zählmodus).
Schneller Zähler–Istwert (P=000)
INI(61) ändert den Istwert des Schnellen Zählers in den auf P1 und P1+1 ge-
speicherten 8–stelligen BCD–Wert.
Der neue Istwert kann zwischen F838 8608 und 0838 8607 (Differential–Pha-
senbetrieb, Impuls– und Richtungseingangsmodus oder Aufwärts–/Abwärts–
eingangsmodus) liegen. (Das hexadezimale “F” auf der ersten Stellen kenn-
zeichnet einen negativen Wert.)
Der neue Istwert kann zwischen 0000 0000 und 1677 7215 im Inkrementalmo-
dus liegen.
Eingangsgesteuerter Interrupt–Istwert (P=100 bis 103)
INI(61) ändert den Istwert des spezifizierten eingangsgesteuerten Interrupts
(Zählermodus) in den auf P1 gespeicherten 4–stelligen Hexadezimalwert (0000
bis FFFF).
Pulsausgabe beenden Bei C = 003 beendet INI(61) die Impulsausgabe.
(C=003)
Istwert ändern INI(61) ändert den Istwert des Impulsausgangs in den auf P1 und P1+1 gespei-
(C=004) cherten 8–stelligen BCD–Wert. Der Istwert kann nicht geändert werden, wäh-
rend die Impulsausgabe stattfindet.
375
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Der neue Istwert kann zwischen –16,777,215 und 16.777.215 liegen. Bit 15 von
P1+1 kennzeichnet das Vorzeichen; der Wert ist negativ, wenn Bit 15 aktiviert
(EIN) ist, und positiv, wenn es deaktiviert (AUS) ist.
Synchronisierte Entspricht C=005, beendet INI(61) die synchronisierte Impulsausgabe.
Impulsausgabe beenden
(C=005)
Merker ER: Schnittstellenbezeichner und Steuerdaten sind nicht kompatibel.
(Zum Beispiel: P=010 und C 000)
Es liegt ein Fehler in den Operandeneinstellungen vor oder der spezifi-
zierte Istwert liegt nicht innerhalb des akzeptablen Bereichs.
Die für P1 oder P1+1 spezifizierte Adresse überschreitet die Datenbe-
reichsgrenze.
Indirekt adressierte DM–Worte sind nicht vorhanden. (Der Inhalt des
*DM–Wortes liegt nicht im BCD–Format vor oder die Datenbereichs-
grenze wurde überschritten).
Die spezifizierte Funktion ist nicht kompatibel mit dem tatsächlichen
SPS–Betrieb. Setzen Sie zum Beispiel nicht C auf 005, wenn keine syn-
chronisierte Impulssteuerung verwendet wird.
INI(61) wird ausgeführt, um den Istwert einer Impulsausgabe (C=004)
zu ändern, während die Impulsausgabe aktiv ist.
INI(61) wird in einem Interrupt–Unterprogramm ausgeführt, während
eine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),
PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oder
SYNC(––)) im Hauptprogramm ausgeführt wird.
INI(61) wird in einem Interrupt–Unterprogramm ausgeführt, während
eine Impulsausgabe oder ein Schneller Zähler–Befehl im Hauptpro-
gramm ausgeführt wird.
Kontaktplansymbol Datenbereiche
P:Schnittstellen–Spezifikation
PRV (62) @PRV(62)
000, 010, 100, 101, 102, 103
P P
C: Steuerdaten
C C
000, 001, 002, oder 003
D D
D: Erstes Zielwort
376
Zeitgeber– und Zählerbefehle Abschnitt 7-15
oder die Eingangsfrequenz für eine synchronisierte Steuerung, wie dies durch P
und C spezifiziert wird.
Über P wird die Nummer des Schnellen Zählers oder des Impulsausgangs spe-
zifiziert, der gelesen werden soll.
P Funktion
000 Spezifiziert einen Schnellen Zähler–Eingang (Eingang 00000, 00001 und 00002),
eine Eingangsfrequenz für eine synchronisierte Impulssteuerung (Eingang 00000,
00001 und 00002), eine Einzelphasen–Impulsausgabe 0 ohne Beschleunigung/Ab-
bremsung (Ausgang 01000), eine Einzelphasen–Impulsausgabe 0 mit trapezförmige
Beschleunigung/Abbremsung (Ausgang 01000) oder eine synchronisierte Impuls-
ausgabe 0 (Ausgang 01000).
010* Spezifiziert eine Einzelphasen–Impulsausgabe 1 ohne Beschleunigung/Abbremsung
(Ausgang 01001) oder eine synchronisierte Impulsausgabe 1 (Ausgang 01001).
100* Spezifiziert den eingangsgesteuerten Interrupt 0 im Zählmodus
(Eingang 00003).
101* Spezifiziert den eingangsgesteuerten Interrupt 1 im Zählmodus
(Eingang 00004).
102* Spezifiziert den eingangsgesteuerten Interrupt 2 im Zählmodus
(Eingang 00005).
103* Spezifiziert den eingangsgesteuerten Interrupt 3 im Zählmodus
(Eingang 00006).
Istwert lesen (C=000) Bei C=000 liest PRV(62) den Istwert des spezifizierten Schnellen Zählers oder
eingangsgesteuerten Interrupts (Zählmodus).
Schneller Zähler–Istwert oder Eingangsfrequenz (P=000)
Wird nur der Schnelle Zähler verwendet, liest PRV(62) den Istwert des spezifi-
zierten Schnellen Zählers und speichert den 8–stelligen BCD–Wert Wert auf D
und D+1. (Die äußerst linken 4 Stellen werden in D+1 gespeichert.)
Der neue Istwert kann zwischen F838 8608 und 0838 8607 (Differential–Pha-
senbetrieb, Impuls– und Richtungseingangsmodus oder Aufwärts–/Abwärt-
seingangsmodus) liegen. (Das hexadezimale “F” auf der ersten Stellen kenn-
zeichnet einen negativen Wert.)
Der neue Istwert kann im Inkrementalmodus zwischen 0000 0000 und
1677 7215 liegen.
Wird der Schnelle Zähler für eine synchronisierte Impulssteuerung verwendet,
liest PRV(62) die Eingangsfrequenz und speichert den 8–stelligen BCD–Wert
auf D und D+1. Die Eingangsfrequenz kann zwischen 0000 0000 und 0002 0000
liegen.
Eingangsgesteuerter Interrupt–Istwert (P=100 bis 103)
PRV(62) liest den Istwert des spezifizierten eingangsgesteuerten Interrupts
(Zählmodus) und speichert den 4–stelligen hexadezimalen Wert (0000 bis
FFFF) auf D.
Status lesen (C=001) Ist C = 001, wird der aktuelle Status des Schnellen Zählers oder des Impulsaus-
gangs gelesen und die Daten werden auf D gespeichert.
377
Zeitgeber– und Zählerbefehle Abschnitt 7-15
Lesebereich–Vergleichs– Ist C = 002, liest der PRV(62)–Befehl die Vergleichsergebnisse der Istwerte aus
ergebnisse (C=002) den 8 Bereichen und speichert diese Daten in Wort D. Die Bits 00...07 des Wor-
tes D enthalten die Vergleichsergebnismerker der Bereiche 1...8 (0: außerhalb
des Bereichs; 1: innerhalb des Bereichs).
Impulsausgabe–Istwert Ist C=003, liest PRV(62) den Impulsausgabe–Istwert und speichert den 8–stel-
lesen (C=003) ligen BCD–Wert in D und D+1. (Die äußerst linken 4 Stellen werden in D+1 ge-
speichert.)
Der Istwert kann zwischen –16,777,215 und 16.777.215 liegen. Bit 15 von D+1
kennzeichnet das Vorzeichen; der Wert ist negativ, wenn Bit 15 aktiviert (EIN)
ist, und positiv, wenn es deaktiviert (AUS) ist.
378
Schiebebefehle Abschnitt 7-16
7-16 Schiebebefehle
7-16-1 SHIFT REGISTER (Schieberegister) – SFT(10)
Kontaktplansymbol Datenbereiche
I St: Anfangswort
SFT (10)
P IR, SR, AR, HR, LR
St
R E: Endwort
E
Einschränkungen E muss größer oder gleich dem Wert für St sein und St und E müssen sich im
gleichen Datenbereich befinden.
Wird eine Bitadresse in einem der im Schieberegister verwendeten Worte auch
in einem Befehl verwendet, der den individuellen Bitzustand steuert (z.B. OUT,
KEEP(11) ), wird ein Fehler (“COIL/OUT DUPL”) erzeugt, wenn die Programm-
syntax auf der Programmierkonsole oder einem anderen Programmierungsge-
rät überprüft wird. Das Programm wird jedoch in der geschriebenen Form aus-
geführt. Sehen Sie Beispiel 2: Steuerung von Bits in Schieberegistern.
Beschreibung SFT(10) wird über die drei Eingänge I, P und R gesteuert. Wird SFT(10) ausge-
führt und ist 1) Eingang P auf EIN gesetzt und war dieser bei der letzten Ausfüh-
rung auf AUS gesetzt und ist 2) Eingang R auf AUS gesetzt, dann wird der Ein-
gang I in das äußerst rechte Bit eines zwischen St und E definierten Schiebere-
gisters verschoben, d.h., ist Eingang I auf EIN gesetzt, wird eine 1 im Register
verschoben und ist Eingang I auf AUS gesetzt, wird eine 0 verschoben. Wird der
Wert von Eingang I ins Register geschoben, werden alle im Register befindli-
chen Bits nach links verschoben und die im äußerst linken Bit gespeicherte In-
formation des Register geht verloren.
Datenver-
lust Eingang I
Eingang P arbeitet wie ein flankengesteuerter Befehl, d.h. der Wert von Eingang
I wird nur dann in das Register verschoben, wenn Eingang P auf EIN gesetzt ist
und bei der letzten Ausführung von SFT(10) auf AUS gesetzt war. Hat sich der
Status von P nicht geändert oder wechselte P von EIN auf AUS, dann bleibt das
Schieberegister unbeeinflußt.
St weist das äußerste rechte Wort des Schieberegisters und E das äußerste
linke Wort zu. Das Schieberegister beinhaltet sowohl diese beiden Worte, wie
auch alle dazwischenliegenden Worte. Das gleiche Wort kann St und E zuge-
wiesen werden, um ein 16–Bit (d.h.1 Wort)–Schieberegister zu erstellen.
Wird Eingang R auf EIN gesetzt, werden alle Bits im Schieberegister auf AUS
gesetzt (d.h. auf 0 gesetzt) und das Schieberegister ist solange deaktiviert, bis
Eingang R wieder auf AUS gesetzt wird.
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-
ßer als E.
379
Schiebebefehle Abschnitt 7-16
Kontaktplansymbol Datenbereiche
St: Anfangswort
WSFT (16) @WSFT(16)
IR, SR, AR, DM, HR, LR
St St
E: Endwort
E E
IR, SR, AR, DM, HR, LR
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und E muss größer
oder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird WSFT (16) nicht ausgeführt. Ist
der Eingang EIN, verschiebt der WSFT(16)–Befehl Daten zwischen St und E in
Worteinheiten. Nullen werden in St geschrieben und der Inhalt von E ist verlo-
ren.
E St + 1 St
F 0 C 2 3 4 5 2 1 0 2 9
Datenverlust
0000
E St + 1 St
3 4 5 2 1 0 2 9 0 0 0 0
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder St
ist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
380
Schiebebefehle Abschnitt 7-16
Kontaktplansymbol Datenbereiche
Wd: Schiebewort
ASL (25) @ASL(25)
IR, SR, AR, DM, HR, LR
Wd Wd
Vorsichtsmaßnahmen Bei jedem Zyklus wird eine 0 in Bit 00 geschoben, falls der Befehl ASL(25) (ohne
flankengesteuerte Ausführung) verwendet wird. Verwenden Sie den Befehl
(@ASL(25)) (flankengesteuerte Ausführung) oder verknüpfen Sie ASL(25) mit
DIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Übernimmt die Daten von Bit 15.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls auf
AUS gesetzt.
Kontaktplansymbol Datenbereiche
Wd: Schiebewort
ASR (26) @ASR(26)
IR, SR, AR, DM, HR, LR
Wd Wd
Vorsichtsmaßnahmen Bei jedem Zyklus wird eine 0 in Bit 15 geschoben, falls der Befehl ASR(26) (ohne
flankengesteuerte Ausführung) verwendet wird. Verwenden Sie den Befehl
(@ASR(26)) (flankengesteuerte Ausführung) oder verknüpfen Sie ASR(26) mit
DIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
381
Schiebebefehle Abschnitt 7-16
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Übernimmt die Daten von Bit 00.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls auf
AUS gesetzt.
Kontaktplansymbol Datenbereiche
Wd: Rotationswort
ROL (27) @ROL(27)
IR, SR, AR, DM, HR, LR
Wd Wd
Vorsichtsmaßnahmen Verwenden Sie, bevor Sie eine Rotation ausführen, den Befehl STC(41) zum
Setzen oder CLC(41) zum Löschen von CY, um sicherzustellen, dass CY vor
Ausführung von ROL(27) den richtigen Wert besitzt.
Wird der Befehl ROL(27) (ohne flankengesteuerter Ausführung) verwendet,
wird CY bei jedem Zyklus in Bit 00 verschoben. Verwenden Sie den Befehl
(@ROL(27)) (flankengesteuerte Ausführung) oder verknüpfen Sie ROL(27) mit
DIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Übernimmt die Daten von Bit 15.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls auf
AUS gesetzt.
Kontaktplansymbol Datenbereiche
Wd: Rotationswort
ROR (28) @ROR(28)
IR, SR, AR, DM, HR, LR
Wd Wd
382
Schiebebefehle Abschnitt 7-16
Beschreibung Ist die Ausführungsbedingung FALSCH, wird ROR(28) nicht ausgeführt. Ist
diese jedoch WAHR, verschiebt ROR(28) alle Wd–Bits um ein Bit nach rechts,
wodurch CY in Bit15 von Wd und Bit 00 von Wd nach CY verschoben wird.
Bit Bit
CY 15 00
0 0 1 0 1 0 1 0 0 0 1 1 1 0 0 0 1
Vorsichtsmaßnahmen Verwenden Sie, bevor Sie eine Rotation ausführen, den Befehl STC(41) zum
Setzen oder CLC(41) zum Löschen von CY, um sicherzustellen, dass CY vor der
Ausführung von ROR(28) den richtigen Wert enthält.
Wird der Befehl ROR(28) (ohne flankengesteuerte Ausführung) verwendet,
wird CY bei jedem Zyklus nach Bit15 verschoben. Verwenden Sie den Befehl
(@ROR(28)) (flankengesteuerte Ausführung) oder verknüpfen Sie ROR(28)
mit DIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Übernimmt die Daten von Bit 00.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls auf
AUS gesetzt.
7-16-7 ONE DIGIT SHIFT LEFT (Eine Stelle nach links verschieben) –
SLD(74)
Kontaktplansymbol Datenbereiche
St: Anfangswort
SLD (74) @SLD(74)
IR, SR, AR, DM, HR, LR
St St
E: Endwort
E E
IR, SR, AR, DM, HR, LR
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und E muss größer
oder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird SLD(74) nicht ausgeführt. Ist
diese jedoch WAHR, verschiebt SLD(74) Daten zwischen St und E (einsch-
ließlich) um eine Stelle (vier Bits) nach links. In die äußerst rechte Stelle von St
wird 0 geschrieben und der Inhalt der äußerst linken Stelle von E geht verloren.
E ... St
8 F C 5 D 7 9 1
Datenverlust 0
Vorsichtsmaßnahmen Tritt ein Stromausfall während einer Verschiebung von mehr als 50 Worte ein,
kann die Verschiebung vorzeitig abgebrochen werden.
Je Zyklus wird eine 0 in die niederwertigste Stelle von St verschoben, wenn der
Befehl SLD(74) (ohne flankengesteuerter Ausführung) verwendet wird. Ver-
wenden Sie den Befehl (@SLD(74)) (flankengesteuerte Ausführung) oder ver-
knüpfen Sie SLD(74) mit DIFU(13) oder DIFD(14), um nur eine einzige Ver-
schiebung auzuführen.
383
Schiebebefehle Abschnitt 7-16
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder St
ist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Kontaktplansymbol Datenbereiche
E: Endwort
SRD (75) @SRD(75)
IR, SR, AR, DM, HR, LR
E E
St: Anfangswort
St St
IR, SR, AR, DM, HR, LR
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und E muss kleiner
oder gleich St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird SRD(75) nicht ausgeführt. Ist
diese jedoch WAHR, verschiebt SRD(75) Daten zwischen St und E (einsch-
ließlich) um eine Stelle (vier Bits) nach rechts. In die äußerst linke Stelle von St
wird 0 geschrieben und der Inhalt der äußerst rechten Stelle von E ist verloren.
St E
...
3 4 5 2 F 8 C 1
0 Datenverlust
Vorsichtsmaßnahmen Tritt ein Stromausfall während einer Verschiebung von mehr als 50 Worte ein,
kann die Verschiebung vorzeitig abgebrochen werden.
Je Zyklus wird eine 0 in die hochwertigste Stelle von St verschoben, wenn der
Befehl SRD(75) (ohne flankengesteuerter Ausführung) verwendet wird. Ver-
wenden Sie den Befehl (@SRD(75)) (flankengesteuerte Ausführung) oder ver-
knüpfen Sie SRD(75) mit DIFU(13) oder DIFD(14), um nur eine einzige Ver-
schiebung auszuführen.
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereiche oder St
ist kleiner als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
384
Schiebebefehle Abschnitt 7-16
Kontaktplansymbol C: Steuerwort
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und St muss kleiner
oder gleich E sein.
DM 6144 bis DM 6655 können nicht für C, St, oder E verwendet werden.
Beschreibung Mit SFTR(84) wird ein Schieberegister, bestehend aus einem oder mehreren
Worten erstellt, um Daten nach rechts oder links zu verschieben. Weisen Sie bei
einem Einzelwort–Register St und E das gleiche Wort zu. Das Steuerwort spezi-
fiziert die Verschieberichtung, den in das Register einzufügenden Status, den
Verschiebungsfreigabe– und den Rücksetzeingang. Die Zuweisung des Steu-
erwortes ist im folgenden dargestellt:
15 14 13 12
Nicht verwendet
Verschieberichtung
1 (EIN): Links (LSB zu MSB)
0 (AUS): Rechts (MSB zu LSB)
Verschiebungsfreigabe–Bit
Rücksetzbit
Die Daten im Schieberegister werden um ein Bit in die dem Bit 12 zugewiesene
Richtung verschoben, wobei das letzte bzw. erste Bit nach CY und der Status
von Bit 13 auf das andere Ende verschoben wird, wenn die Ausführungsbedin-
gung für SFTR(84) WAHR ist, solange das Rücksetzbit auf AUS und Bit 14 auf
EIN gesetzt ist, ausgeführt wird. Wird die Ausführungsbedingung von SFTR(84)
FALSCH oder mit Bit 14 auf AUS ausgeführt, bleibt das Schieberegister unver-
ändert. Wird die Ausführungsbedingung SFTR(84) WAHR und ist das Rück-
setzbit (15) auf EIN gesetzt, dann wird das gesamte Schieberegister und CY auf
Null gesetzt.
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-
ßer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Übernimmt, je nach Verschieberichtung, die Daten von Bit 00 in St oder
von Bit 15 in E.
Beispiel Im folgenden Beispiel werden IR 00000, IR 00001, IR 00002 und IR 00003 dazu
verwendet, die in @SFTR(84) verwendeten Bits von C zu steuern. Das Schie-
385
Schiebebefehle Abschnitt 7-16
beregister befindet sich in DM 0010 – DM 0011 und wird durch IR 00004 gesteu-
ert.
00000
Adresse Befehl Operanden
20012 Verschieberichtung
00000 LD 00000
00001 OUT 20012
00001 00002 LD 00001
20013 Eingangsstatus 00003 OUT 20013
00004 LD 00002
00005 OUT 20014
00002
Verschiebungs–
00006 LD 00003
20014
freigabe–Bit 00007 OUT 20015
00008 LD 00004
00003 00009 @SFTR(84)
20015 Rücksetzbit 200
DM 0010
00004 DM 0011
@SFTR(84)
200
DM 0010
DM 0011
C:Steuerwort
Kontaktplansymbol
IR, SR, AR, DM, HR, LR, #
ASFT (17) @ASFT(17) St: Anfangswort
C C IR, SR, AR, DM, HR, LR
St St
E: Endwort
E E IR, SR, AR, DM, HR, LR
Hinweis ASFT(17) ist ein Erweiteter Befehl für die SRM1(–V2). Der Funktionscode 17 ist
werksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-
den.
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und E muss größer
oder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, besitzt der Befehl ASFT(17) keine Aus-
wirkung und das Programm führt den nächsten Befehl aus. Ist diese jedoch
WAHR, erstellt und steuert ASFT(17) ein umkehrbares, asynchones Wort–
Schieberegister zwischen St und E. Dieses Register verschiebt nur dann Worte,
wenn das nächste Wort im Register Null ist, d.h. wenn keines der Registerworte
Null enthält, findet keine Verschiebung statt. Zusätzlich gilt, dass pro nullenent-
haltendes Registerwort nur ein Wort verschoben wird. Wird der Inhalt eines
Wortes auf das nächste Wort verschoben, wird der Inhalt des ursprünglichen
Wortes auf Null gesetzt. Bei einer Registerverschiebung tauscht also praktisch
jedes Nullwort den Platz mit dem nächsten Wort. (Sehen Sie dazu das nachfol-
gende Beispiel).
Die Verschieberichtung (d.h. ob das ”nächste Wort” das nächstniedrige oder –
höhere ist), wird durch C spezifiziert. C wird auch zur Rücksetzung des Regi-
sters verwendet. Ein beliebiger Teil des Registers kann zurückgesetzt werden,
indem der gewünschte Teil mit St und E spezifiziert wird.
386
Schiebebefehle Abschnitt 7-16
Steuerwort Bits 00 bis12 von C werden nicht verwendet. Bit 13 enthält die Verschieberich-
tung. Setzen Sie Bit 13 auf EIN, um abwärts zu verschieben (auf Worte mit nie-
driger Adresse) und auf AUS, um aufwärts zu verschieben (auf Worte mit höhe-
rer Adresse). Bit 14 ist das Verschieben aktivieren–Bit: setzen Sie dieses Bit auf
EIN, um eine Registerverschiebung gemäß Bit 13 zu aktivieren und auf AUS,
um diese zu deaktivieren. Bit 15 ist das Rücksetzbit: das Register wird im Be-
reich zwischen St und E zurückgesetzt (auf Null), wenn der Befehl ASFT(17)
ausgeführt wird, während Bit 15 auf EIN gesetzt ist. Setzen Sie Bit 15 für eine
normale Funktion auf AUS.
Hinweis Wird der Befehl ASFT(17) ohne flankengesteuerte Ausführung verwendet, wer-
den die Daten, solange der Eingang auf EIN ist, bei jedem Zyklus verschoben.
Verwenden Sie die flankengesteuerte Ausführung, um dies zu verhindern.
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder St
ist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Beispiel Im folgenden Beispiel wird der Befehl ASFT(17) dazu verwendet, die Worte in
einem Schieberegister, das 11 Worte umfasst und das mit C=#6000 im Bereich
zwischen DM 0100 und DM 0110 erstellt wird, zu verschieben. Daten, die keine
Nullen enthalten, werden nach St (DM 0100) verschoben.
00000
Adresse Befehl Operanden
@ASFT (17)
#6000 00000 LD 00000
DM 0100
00001 @ASFT (17)
DM 0110
# 6000
DM 0100
DM 0110
Hinweis Mit C=4000 werden die Nullen “aufwärts” verschoben; das gesamte Schiebere-
gister wird auf Null gesetzt, wenn C=8000 ist.
387
Datenübertragungsbefehle Abschnitt 7-17
7-17 Datenübertragungsbefehle
7-17-1 MOVE (Übertragen) – MOV(21)
Kontaktplansymbol Datenbereiche
S: Quellwort
MOV(21) @MOV(21)
IR, SR, AR, DM, HR, TC, LR, #
S S
D: Zielwort
D D
IR, SR, AR, DM, HR, LR
Quellwort Zielwort
Bitstatus
unverändert.
Vorsichtsmaßnahmen TC–Nummern können nicht für D spezifiziert werden, um den Istwert des Zeit-
gebers oder des Zählers zu ändern. Sie können den Istwert eines Zeitgebers
oder Zählers jedoch einfach mit dem Befehl BSET(71) ändern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn alle Nullen auf D übertragen wurden.
Beispiel Im folgenden Beispiel wird der Befehl @MOV(21) dazu verwendet, den Inhalt
von IR 001 nach HR 05 zu kopieren, wenn IR 00000 von AUS auf EIN wechselt.
00000
@MOV(21)
Adresse Befehl Operanden
001 00000 LD 00000
HR 05 00001 @MOV(21)
001
HR 05
IR 001 0 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1
HR 05 0 1 1 1 0 0 1 1 1 0 0 0 0 1 0 1
388
Datenübertragungsbefehle Abschnitt 7-17
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl MVN(22) nicht ausge-
führt. Ist diese jedoch WAHR, überträgt MVN(22) den invertierten Inhalt von S
(spezifiziertes Wort oder vierstellige, hexadezimale Konstante) nach D, d.h., für
jedes auf EIN gesetzte Bit in S wird das entsprechende Bit in D auf AUS gesetzt
und für jedes auf AUS gesetzte Bit in S, wird das entsprechende Bit in D auf EIN
gesetzt.
Quellwort Zielwort
invertierter
Bitstatus
Vorsichtsmaßnahmen TC–Nummern können nicht für D spezifiziert werden, um den Istwert des Zeit-
gebers oder Zählers zu ändern. Sie können den Istwert eines Zeitgebers oder
Zählers jedoch einfach mit dem Befehl BSET(71) ändern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn alle Nullen auf D übertragen wurden.
Beispiel Im folgenden Beispiel wird der Befehl @MVN(22) dazu verwendet, das Komple-
ment von #F8C5 nach DM 0010 zu kopieren, wenn IR 00001 von AUS auf EIN
wechselt.
00001
@MVN(22)
Adresse Befehl Operanden
#F8C5 00000 LD 00001
DM 0010 00001 @MOV(21)
# F8C5
DM 0010
#F8C5 1 1 1 1 1 0 0 0 1 1 0 0 0 1 0 1
DM 0010 0 0 0 0 0 1 1 1 0 0 1 1 1 0 1 0
Einschränkungen S und S+N sowie D und D+N müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
389
Datenübertragungsbefehle Abschnitt 7-17
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl XFER(70) nicht ausge-
führt. Ist diese jedoch WAHR, kopiert XFER(70) den Inhalt von S, S+1, ..., S+N
nach D, D+1, ..., D+N.
S D
3 4 5 2 3 4 5 2
S+1 D+1
3 4 5 1 3 4 5 1
S+2 D+2
3 4 2 2 3 4 2 2
S+n D+n
6 4 5 2 6 4 5 2
Kontaktplansymbol S: Quelldaten
Einschränkungen St muss kleiner oder gleich E sein und St und E müssen sich im gleichen Daten-
bereich befinden.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl BSET(71) nicht ausge-
führt. Ist diese jedoch WAHR, kopiert BSET(71) den Inhalt von S in alle Worte
von St bis E.
S St
3 4 5 2 3 4 5 2
St+1
3 4 5 2
St+2
3 4 5 2
E
3 4 5 2
390
Datenübertragungsbefehle Abschnitt 7-17
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-
ßer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Beispiel Im folgenden Beispiel wird der BSET(71)–Befehl dazu verwendet, eine Kon-
stante (#0000) auf einen Block des DM–Bereiches (DM 0000 bis DM 0500) zu
kopieren, wenn IR 00000 auf EIN gesetzt ist.
Einschränkung DM 6144 bis DM 6555 können nicht für E1 oder E2 verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl XCHG(73) nicht ausge-
führt. Ist diese jedoch WAHR, tauscht XCHG(73) den Inhalt von E1 und E2 aus.
E1 E2
Falls Sie den Inhalt von Blöcken mit mehr als einem Wort austauschen möchten,
verwenden Sie Arbeitsworte als Zwischenpuffer, um einen der Blöcke unter
dreimaliger Anwendung von XFER(70) zu speichern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
391
Datenübertragungsbefehle Abschnitt 7-17
Kontaktplansymbol S: Quelldaten
LR 10 #00FF HR 10
0 0 0 5 0 0 F F 0 0 0 0
HR 15
0 0 F F
Stapeloperationen Sind die Bits 12 bis 15 von C=9, kann der Befehl DIST( 80) für die Stapelopera-
tion verwendet werden. Die anderen 3 Stellen von C spezifizieren die Anzahl der
im Stapel (000 bis 999 in BCD) befindlichen Worte. Der Inhalt von DBs ist der
Stapelzeiger.
Ist die Ausführungsbedingung FALSCH, wird der DIST(80)–Befehl nicht ausge-
führt. Ist diese jedoch WAHR, kopiert DIST(80) den Inhalt von S nach DBs+1 +
den Inhalt des DBs. Mit anderen Worten,1 und der Inhalt von DBs wird zu DBs
addiert, um das Zielwort zu spezifizieren. Der Inhalt von DBs wird dann um 1
inkrementiert.
392
Datenübertragungsbefehle Abschnitt 7-17
Hinweis 1. Der DIST(80)–Befehl wird bei jedem Zyklus ausgeführt, wenn nicht die flan-
kengesteuerte Ausführung des Befehls (@DIST(80)) oder DIST(80) mit
DIFU(13) oder DIFD(14) verwendet wird.
2. Initialisieren Sie den Stapelzeiger vor Verwendung des DIST(80)–Befehls
in Stapeloperationen.
Beispiel Im folgenden Beispiel wird mit dem DIST(80)–Befehl ein Stapel zwischen DM
0001 und DM 0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
IR 200 FFFF
IR 216 9005
Merker ER: Der Offset oder die Stapellänge im Steuerwort liegt nicht im BCD–For-
mat vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Während der Stapeloperation überschreitet der Wert des Stapelzei-
gers+1 die Stapellänge.
EQ: Auf EIN gesetzt, wenn der Inhalt von S Null ist; andernfalls auf AUS ge-
setzt.
393
Datenübertragungsbefehle Abschnitt 7-17
Beispiel Im folgenden Beispiel kopiert COLL(81) den Inhalt von DM 0000+Offset nach
LR 00. Der Inhalt von 200 ist #0005, also wird der Inhalt von DM 0005 (DM 0000
+ 5) nach LR 00 kopiert, wenn IR 00001 auf EIN gesetzt ist.
200 DM 0000 LR 00
0 0 0 5 0 0 0 0 0 0 F F
DM 0005
0 0 F F
FIFO–Stapeloperationen Sind die Bits12 bis15 von C=9, arbeitet COLL(81) in der FIFO–Stapeloperation.
Die anderen 3 Stellen von C spezifizieren die Anzahl der im Stapel (000 bis 999
in BCD) befindlichen Worte. Der Inhalt von SBs ist der Stapelzeiger.
Ist die Ausführungsbedingung WAHR, verschiebt COLL(81) den Inhalt jedes
Wortes innerhalb des Stapels um eine Adresse und verschiebt schließlich die
Daten von SBs (der erste, in den Stapel geschriebene Wert) in das Zielwort (D).
Der Inhalt des Stapelzeigers (SBs) wird dann um 1 dekrementiert.
Hinweis COLL(81) wird in jedem Zyklus ausgeführt, wenn nicht die flankengesteuerte
Ausführung des Befehls (@COLL(81)) oder COLL(81) mit DIFU (13) oder
DIFD(14) verwendet wird.
Beispiel Im folgenden Beispiel wird mit COLL(81) ein Stapel zwischen DM 0001 und DM
0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
Wechselt IR 00000 von AUS auf EIN, verschiebt COLL(81) den Inhalt von DM
0002 bis DM 0005 um eine Adresse und anschließend die Daten von DM 0001
nach IR 001. Der Inhalt des Stapelzeigers (DM 0000) wird dann um 1 dekremen-
tiert.
394
Datenübertragungsbefehle Abschnitt 7-17
LIFO–Stapeloperationen Sind die Bits12 bis15 von C=8, wird COLL(81) in der LIFO–Stapeloperation ver-
wendet. Die anderen 3 Stellen von C spezifizieren die Anzahl der im Stapel (000
bis 999) befindlichen Worte. Der Inhalt von SBs ist der Stapelzeiger.
Ist der Eingang EIN, kopiert COLL(81) die Daten des durch den Stapelzeiger
(SBs+den Inhalt von SBs) spezifizierten Wortes in das Zielwort (D). Der Inhalt
des Stapelzeigers (SBs) wird anschließend um 1 dekrementiert.
Der Stapelzeiger ist das einzige Wort, das im Stapel geändert wird.
Hinweis COLL(81) wird in jedem Zyklus ausgeführt, wenn nicht die flankengesteuerte
Ausführung des Befehls (@COLL(81)) oder COLL(81) mit DIFU (13) oder
DIFD(14) verwendet wird.
Beispiel Im folgenden Beispiel wird mit COLL(81) ein Stapel zwischen DM 0001 und
DM 0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
Wechselt IR 00000 von AUS auf EIN, kopiert COLL(81) den Inhalt von DM 0005
(DM 0000+5) nach IR 001. Der Inhalt des Stapelzeigers (DM 0000) wird an-
schließend um 1 dekrementiert.
Merker ER: Der Offset oder die Stapellänge im Steuerwort liegt nicht im BCD–For-
mat vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Während der Stapeloperation überschreitet der Wert des Stapelzeigers
die Stapellänge; es wurde versucht, ein Wort über die Stapellänge hin-
aus zu schreiben.
EQ: Auf EIN gesetzt, wenn der Inhalt von D Null wird; andernfalls auf AUS
gesetzt.
Kontaktplansymbol S: Quellwort
395
Datenübertragungsbefehle Abschnitt 7-17
Einschränkungen Die äußerst rechten zwei Stellen und die äußerst linken zwei Stellen von Bi müs-
sen sich je zwischen 00 und 15 befinden.
DM 6144 bis DM 6655 können nicht für Bi oder D verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl MOVB(82) nicht aus-
geführt. Wird die Ausführungsbedingung WAHR, kopiert MOVB (82) das spezi-
fizierte Bit von S auf das spezifizierte Bit in D. Die Bits in S und D werden durch Bi
spezifiziert. Die äußerst rechten zwei Stellen von Bi weisen das Quellbit und die
äußerst linken zwei Stellen das Zielbit zu.
Bit Bit
15 00
Bi
Bi 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1
Merker ER: Bi liegt nicht im BCD–Format vor oder spezifiziert ein nicht vorhande-
nes Bit (d.h. die Bitspezifikation muss zwischen 00 und 15 liegen).
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Kontaktplansymbol S: Quellwort
Einschränkungen Die äußerst rechten drei Stellen müssen jeweils einen Wert zwischen 0 und 3
besitzen.
DM 6144 bis DM 6655 DM können nicht für Di oder D verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl MOVD(83) nicht aus-
geführt. Ist diese jedoch WAHR, kopiert MOVD(83) den Inhalt der spezifizierten
Stelle(n) in S in die spezifizierten Stelle(n) in D. Bis zu vier Stellen können auf
einmal übertragen werden. Die erste zu kopierende Stelle, die Anzahl der zu ko-
pierenden Stellen und die erste Stelle, die die Kopie empfängt, werden, wie
nachstehend dargestellt, Di zugewiesen. Die Stellen von S werden, angefangen
von der ersten bis zur letzten zugewiesenen Stelle, in die aufeinanderfolgender
396
Datensteuerungsbefehle Abschnitt 7-18
Stellen von D kopiert. Wird die letzte Stelle in S oder D erreicht, werden weitere
Stellen, angefangen bei der Stelle 0, verwendet.
Stellen: 3 2 1 0
Stellenkennzeichner Im folgenden Beispiel werden die Datenbewegungen für diverse Werte von Di
dargestellt.
Di: 0010 Di: 0030
S D S D
0 0 0 0
1 1 1 1
2 2 2 2
3 3 3 3
Merker ER: Mindestens eine der äußerst rechten drei Stellen von Di liegt nicht zwi-
schen 0 und 3.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
7-18 Datensteuerungsbefehle
7-18-1 SCALING (Skalierung) – SCL(66)
Kontaktplansymbole Datenbereiche
S:Quellwort
SCL (66) @SCL(66)
IR, SR, AR, DM, HR, TC, LR, #
S S
P1:Erstes Parameterwort
P1 P1
IR, SR, AR, DM, HR, TC, LR
R R
R Ergebniswort
397
Datensteuerungsbefehle Abschnitt 7-18
Beschreibung Der Befehl SCL(66) wird zur linearen Konvertierung eines 4–stelligen Hexade-
zimal– in einen 4–stelligen BCD–Wert eingesetzt. Im Gegensatz zu dem
BCD(24)–Befehl, der einen 4–stelligen Hexadezimalwert in sein 4–stelliges
BCD–Äquivalent konvertiert (Shex→SBCD), konvertiert SCL(66) den hexadezi-
malen Wert in Abhängigkeit von einer speziellen linearen Funktion. Diese li-
neare Funktion wird durch zwei Punkte in den Parameterworten P1 bis P1+3
definiert.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SCL(66) nicht ausge-
führt. Ist diese jedoch WAHR, konvertiert SCL (66) einen 4–stelligen Hexadezi-
malwert des Quellwortes S in einen 4–stelligen BCD–Wert in Abhängigkeit von
der linearen Funktion (Geraden), die durch die Parameter P1, P1+1 (Ay, Ax) und
P1+2, P1+3 (By, Bx) definiert ist. Das Ergebnis wird in das Ergebniswort R ge-
schrieben. Ergebnisse werden auf die nächste Ganzzahl abgerundet. Ist das
Ergebnis kleiner als 0000, wird der Wert 0000 in R gespeichert. Ist das Ergebnis
größer als 9999, wird der Wert 9999 in R gespeichert.
Die folgende Tabelle enthält die Funktionen und Bereiche der Parameterworte:
Parameter Funktion Bereich Bemerkungen
P1 BCD–Punkt Nr. 1 (AY) 0000 ... 9999 –––
P1+1 Hex. Punkt Nr. 1 (AX) 0000 ... FFFF Nicht auf P1+1=P1+3 setzen
P1+2 BCD–Punkt Nr. 2 (BY) 0000 ... 9999 –––
P1+3 Hex. Punkt Nr. 2 (BX) 0000 ... FFFF Nicht auf P1+3 =P1+1 setzen
By
Ay
Die Ergebnisse können durch die Konvertierung aller BCD–Werte und Berech-
nung über folgende Formel ermittelt werden:
Ergebnisse = BY – [(BY – AY)/(BX – AX) × (BX – S)]
Merker ER: Der Wert in P1+1 stimmt mit dem in P1+3 überein.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des
*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-
reichsgrenze wurde überschritten).
P1 und P1+3 befinden sich nicht im gleichen Datenbereich oder ein an-
derer Einstellungsfehler liegt vor.
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
Beispiel Ist 00000 im folgenden Beispiel auf EIN gesetzt, werden die BCD–Quelldaten in
DM 0100 (#0100) in einen Hexadezimalwert gemäß den Parametern in DM
398
Datensteuerungsbefehle Abschnitt 7-18
0150 bis DM 0153 konvertiert. Das Ergebnis (#0512) wird dann in DM 0200 ge-
speichert.
S:Quellwort
SCL2(––) @SCL2(––)
IR, SR, AR, DM, HR, LR
S S
P1:Erstes Parameterwort
P1 P1
IR, SR, AR, DM, HR, LR
R R
R Ergebniswort
399
Datensteuerungsbefehle Abschnitt 7-18
Das folgende Diagramm zeigt das Quellwort S, das entsprechend der Gerade,
die über den Punkt (P1, 0) und die Neigung ∆Y/∆X definiert ist, in R konvertiert
wird.
Wert nach der
Konvertierung (BCD)
∆Y
∆X
R
R + DY (S–P1)
DX
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des
*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-
reichsgrenze wurde überschritten).
P1 und P1+2 befinden sich nicht im gleichen Datenbereich oder es liegt
ein anderer Einstellfehler vor.
CY: Auf EIN gesetzt, wenn das Ergebnis von R negativ ist.
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
Beispiel Wird 00500 im folgenden Beispiel auf EIN gesetzt, werden die vorzeichenbehaf-
teten binären Quelldaten in 200 (#FFE2) in das BCD–Format, entsprechend
den Parametern in DM 0000 bis DM 0002, konvertiert. Das Ergebnis (#0018)
wird dann in LR 00 geschrieben und CY auf EIN gesetzt, da das Ergebnis nega-
tiv ist.
2
FFFD IR 200 FFE2
DM 0000 FFFD 3
DM 0001 0003 FFE2
DM 0002 0002
LR 00 0018 CY=1
–0018
Der CY–Merker wird gesetzt, da das
R + 0002 (FFE2–FFFD) Konvertierungsergebnis negativ ist.
0003
+2 (–1B) + –18
3
400
Datensteuerungsbefehle Abschnitt 7-18
S:Quellwort
SCL3(––) @SCL3(––)
IR, SR, AR, DM, HR, LR
S S
P1:Erstes Parameterwort
P1 P1
IR, SR, AR, DM, HR, LR
R R
R: Ergebniswort
401
Datensteuerungsbefehle Abschnitt 7-18
Das folgende Diagramm zeigt das Quellwort S, das entsprechend der Gerade,
die über den Punkt (0, P1) und die Neigung ∆Y/∆X definiert ist, in R konvertiert
wird.
Wert nach der Konvertierung
(Hex.–Wert mit Vorzeichen) ∆Y
Obere
Grenze ∆X
R
Y–
Schnitt-
punkt
Wert vor der
S Konvertierung (BCD)
Untere
Grenze
R+ ÒDY
DX
Ó
S ) P1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des
*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-
reichsgrenze wurde überschritten).
Der Inhalt von S liegt nicht im BCD–Format vor.
CY: CY wird nicht von dem Befehl SCL3(––) verändert. (CY beinhaltet das
Vorzeichen von S vor der Ausführung).
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
402
Datensteuerungsbefehle Abschnitt 7-18
Beispiel Der Zustand von 00101 bestimmt das Vorzeichen des BCD–Quellwortes im fol-
genden Beispiel. Ist 00101 auf EIN gesetzt, ist das Quellwort negativ. Ist 00100
auf EIN gesetzt, werden die BCD–Quelldaten in LR 02 in vorzeichenbehaftete
Binärdaten, entsprechend den Parametern in DM 0000 bis DM 0004, konver-
tiert. Das Ergebnis wird dann in DM 0100 geschrieben. (In der zweiten Konver-
tierung liegt das entsprechende vorzeichenbehaftete binäre Äquivalent von
–1035 unterhalb der in DM 0004 spezifizierten unteren Grenze. Daher wird die
untere Grenze in DM 0100 gespeichert).
25313
(Immer EIN)
Adresse Befehl Operanden
CLC(41)
00000 LD 25313
00101
00001 CLC(41)
STC(40) 00002 LD 00101
00101 STC (40)
00100 00004 LD 00100
@SCL3(––) 00005 SCL3(––)
LR 02 LR 02
DM 0000 DM 0000
DM 0100 DM 0100
CY=0 CY=1
6 DM 0000 0005
LR 02 0100 LR 02 1035
DM 0001 0003
3
0005 DM 0002 0006
BCD–
Daten DM 0003 07FF
DM 0100 00CD DM 0100 F800
DM 0004 F800
Einschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
DM 6144 bis DM 6655 können nicht für P1 oder OW verwendet werden.
P1 bis P1+32 müssen sich im gleichen Datenbereich befinden.
403
Datensteuerungsbefehle Abschnitt 7-18
Beschreibung PID(––) führt eine PID–Regelung aus, die auf den in P1 bis P1+6 spezifizier-
ten Parametern basiert.
Ist die Ausführungsbedingung FALSCH, wird PID(––) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, führt PID(––) eine PID–Regelung, entspre-
chend den zuwiesenen Parametern, aus. Der Befehl übernimmt die Binärdaten
vom Inhalt von IW und führt die PID–Regelung entsprechend den spezifizierten
Parametern durch. Das Ergebnis wird dann als Stellwert in OW gespeichert.
Die nachfolgende Tabelle enthält die Funktionen der Parameterworte.
Wort Bits Parameter– Funktion/Einstellbereich
bezeichnung
P1 00 bis 15 Sollwert (SV). Dies ist der Zielwert bei einer PID–Regelung. Er kann auf einen beliebigen Binär-
wert eingestellt werden, wobei die Anzahl der Bits durch den Eingangsbereichs–
Parameter spezifiziert wird.
P1+1 00 bis 15 Proportionalband– Dieser Parameter spezifiziert das Verhältnis zwischen Propotionalband–Breite
Breite und Eingangsbereich (0,1% bis 999,9%). Dieser Wert muss als BCD–Wert von
0001 bis 9999 spezifiziert werden.
P1+2 00 bis 15 Nachstellzeit (Tik)/ Ab- Stellt die Höhe der Integralwirkung ein. Das Vergrößern dieses Wertes verstärkt
tastintervall (τ) die Integralwirkung. Dieser Wert muss als BCD–Wert von 0001 bis 8191 oder
9999 spezifiziert werden. Eine Einstellung von 9999 deaktiviert die Integralrege-
lung.
Stellen Sie die Nachstellzeit dividiert durch den Abtastintervall ein.
P1+3 00 bis 15 Vorhaltezeit (Tdk)/Ab- Stellt die Höhe der Vorhaltewirkung ein. Das Vergrößern dieses Wertes verstärkt
tastintervall (τ) die Vorhaltewirkung. Dieser Wert muss als BCD–Wert von 0001 bis 8191 oder
0000 spezifiziert werden
(Eine Einstellung von 0000 deaktiviert die Differential–Regelung.)
Stellen Sie die Vorhaltezeit dividiert durch das Abtastintervall ein.
P1+4 00 bis 15 Abtastintervall (τ) Stellt das Intervall zwischen den Abtastungen der Eingangsdaten ein. Dieser Wert
muss als BCD–Wert von 0001 bis 1023 spezifiziert werden. Der Zeitraum ist von
0,1 bis 102,3 s
P1+5 00 bis 03 Spezifikation des Spezifiziert die Vorwärts– oder Rückwärtsregelung. (0 = rückwärts, 1 = vorwärts).
Betriebs
04 bis 15 Eingangsfilter– Bestimmt die Stärke des Eingangsfilters. Je kleiner der Koeffizient, desto schwä-
Koeffizient (α) cher der Filter.
Für diesen Wert muss 000 oder ein BCD–Wert von 100 bis 199 spezifiziert wer-
den. Die Einstellung 000 spezifiziert den Vorgabewert (0,65) und eine Einstellung
von 100 bis 199 den Koeffizienten von 0,00 bis 0,99.
P1+6 00 bis 03 Ausgangsbereich Bestimmt die Anzahl der Ausgangsbits. Diese Einstellung muss zwischen 0 und 8
liegen. Hierdurch wird für den Ausgangsbereich ein Wert zwischen 8 und 16 Bits
spezifiziert.
08 bis 15 Eingangsbereich Bestimmt die Anzahl der Eingangsbits. Diese Einstellung muss zwischen 00 und
08 liegen. Hierdurch wird für den Eingabebereich ein Wert zwischen 8 und 16 Bits
spezifiziert.
P1+7 bis 00 bis 15 Arbeitsbereich Nicht verwenden.
P1+32 (Wird vom System verwendet).
! Vorsicht Änderungen der Parameter sind erst wirksam, wenn die Ausführungsbedin-
gung für PID(––) von AUS auf EIN wechselt.
Hinweis Liegt einer der nachfolgenden Umstände vor, sollten Sie PID(––) nicht verwen-
den, da eine ordnungsgemäße Ausführung nicht gewährleistet ist:
in Interrupt–Programmen,
in Unterprogrammen,
in verriegelten Programmabschnitten (zwischen IL und ILC)
in übersprungenen Abschnitten (zwischen JMP und JME)
in Schritt–Programmabschnitten (durch STEP–Befehl erzeugt).
Ist die Ausführungsbedingung WAHR, führt PID(––) die PID–Berechnung mit
den Eingangsdaten durch, wenn das Abtast–Intervall abgelaufen ist. Das Ab-
tast–Intervall ist die Zeit, die verstrichen sein muß, bevor neue Eingangsdaten
für die Verarbeitung gelesen werden.
404
Datensteuerungsbefehle Abschnitt 7-18
Die folgende Abbildung zeigt das Verhältnis zwischen dem Abtast–Intervall und
der PID–Verarbeitung. Die PID–Verarbeitung findet nur statt, wenn das Abtast–
Intervall (in diesem Fall 100 ms) abgelaufen ist.
1 Zyklus
70 ms 60 ms 70 ms 70 ms
Keine Vearbeitung PID–Verarbeitung
(70 ms) (70+30=100 ms,
PID–Verarbeitung kein Übertrag)
mit Anfangswerten PID–Verarbeitung Keine Verarbeitung
(0 ms) (130 ms, 30 ms Übertrag) (70 ms)
(1)
405
Datensteuerungsbefehle Abschnitt 7-18
Proportional-
band
Zu schmales Proportionalband (Regelschwingungen treten auf)
100%
Stellwert Offset
Soll–
0% wert
Sollwert
Richtiges Proportionalband
Zu breites Proportionalband (großer Offset)
Integralbetrieb (I)
Die Kombination von Integralbetrieb und Proportionalregelung reduziert den
Offset entsprechend der vergangenen Zeit. Die Stärke des Integralbetriebs wird
durch die Nachstellzeit ausgewiesen, dies ist die Zeit, die der Stellwert bei Inte-
gralbetrieb benötigt, um die gleiche Ebene wie der Stellwert der Proportionalre-
gelung in Hinsicht auf die Sprungabweichung zu erreichen, wie es in der folgen-
den Abbildung gezeigt wird. Je kürzer die Nachstellzeit, desto stärker ist die Kor-
rektur durch den Integralbetrieb. Ist die Nachstellzeit zu kurz, erfolgt eine zu
kräftige Korrektur, wodurch Regelschwingungen auftreten.
Integralbetrieb
Sprungantwort
Regelabweichung
Stellwert
Sprungantwort
Regelabweichung
PI–Regelung
I–Regelung
P action
Stellwert
Ti: Nachstellzeit
406
Datensteuerungsbefehle Abschnitt 7-18
Vorhaltebetrieb (D)
Da Proportionalregelung und Integralbetrieb beide Korrekturen in Hinsicht auf
die Regelergebnisse vornehmen, tritt unvermeidlicherweise eine Ansprechver-
zögerung auf. Der Vorhaltebetrieb kompensiert diesen Nachteil. Als Reaktion
auf eine plötzliche Störung liefert er einen großen Stellwert und stellt den ur-
sprünglichen Zustand schnell wiederher. Eine Korrektur erfolgt mit dem Stell-
wert, der sich proportional der Neigung (abgeleiteter Koeffizient), die durch die
Regelabweichung entsteht, verhält.
Die Stärke des Vorhaltebetriebs wird durch die Vorhaltezeit ausgewiesen, dies
ist die Zeit, die der Stellwert bei Vorhaltebetrieb benötigt, um die gleiche Ebene
wie der Stellwert der Proportionalregelung in Hinsicht auf die Sprungregelab-
weichung zu erreichen, wie es in der folgenden Abbildung angezeigt wird. Je
länger die Vorhaltezeit, desto stärker ist die Korrektur durch den Vorhaltebe-
trieb.
Vorhaltebetrieb
Sprungantwort
Regelabweichung
Stellwert
PD–Regelung
P action
D–Regelung
Stellwert
Td: Vorhaltezeit
PID–Verhalten
Die PID–Regelung verbindet Proportionalregelung (P), Integralbetrieb (I) und
Vorhaltebetrieb (D). Diese ermöglicht überlegene Regelergebnisse sogar für
Regelobjekte mit Totzeit. Es wendet die Proportionalregelung an, um eine glatte
Regelung ohne Regelschwingungen sicherzustellen, den Integralbetrieb, um ir-
gendeinen Offset automatisch zu korrigieren und einen Vorhaltebetrieb, um die
Störungsreaktion zu beschleunigen.
Sprungantwort des PID–Regelungsausgangs
Sprungantwort
Regelabweichung
PID–Verhalten
I–Regelung
P–Aktion
Stellwert D–Regelung
Rampenförmige Reaktion
Regelabweichung
PID–Verhalten
I–Regelung
P–Aktion
Stellwert D–Regelung
407
Datensteuerungsbefehle Abschnitt 7-18
Regelwirkungsweise Beim Einsatz der PID–Regelung kann eine der beiden der folgenden zwei Re-
gelwirkungsweise ausgewählt werden. In jeder Richtung nimmt der Stellwert zu,
wenn die Differenz zwischen dem Sollwert und Istwert zunimmt.
• Vorwärtsregelung: Der Stellwert wird vergrößert, wenn der Istwert größer als
der Sollwert ist.
• Rückwärtsregelung: Der Stellwert wird vergrößert, wenn der Istwert kleiner als
der Sollwert ist.
Rückwärtsregelung Vorwärtsregelung
Proportional-
Proportional- band
band
100%
100%
Stellwert
Stellwert
0%
0% Niedrige Hohe
Niedrige Hohe
Soll– Temperatur Temperatur
Temperatur Temperatur
wert Sollwert
Einstellung der Die allgemeine Beziehung zwischen PID–Parameter und Regelzustand ist
PID–Parameter nachfolgend dargestellt.
• Ist der Zeitfaktor für das Erreichen des Sollwertes (Nachstellzeit) vernachläs-
sigbar, es aber wichtig ist, kein Überschwingen zu verursachen, dann können
Sie das Proportionalband vergrößern.
SV
• Ist ein Überschwingen kein Problem, soll jedoch die Regelung schnell stabili-
siert werden, dann kann das Proportionalband verengt werden. Wird dieses
jedoch zu stark verengt, dann können Regelschwingungen auftreten.
SV
• Treten große Regelschwingungen auf oder wird die Regelung durch Über–
und Unterschwingen beeinträchtigt, greift der Integralanteil zu stark ein. Re-
gelschwingungen werden reduziert, wenn die Nachstellzeit oder das Propor-
tionalband vergrößert wird.
(Wenn Regelschwingungen auftreten)
SV
408
Vergleichsbefehle Abschnitt 7-19
• Treten Regelschwingungen mit kurzer Periode auf, kann trotz schneller Reak-
tion des Systems eine zu große Vorhaltezeit vorliegen. Reduzieren Sie in die-
sem Fall den Vorhalteanteil.
(Regelschwingungen mit kurzer Periode)
SV
D–Anteil verringern.
7-19 Vergleichsbefehle
7-19-1 COMPARE (Vergleich) – CMP(20)
Kontaktplansymbol Datenbereiche
Cp1: Erstes Vergleichswort
CMP (20)
IR, SR, AR, DM, HR, TC, LR, #
Cp1
Cp2: Zweites Vergleichswort
Cp2
IR, SR, AR, DM, HR, TC, LR, #
Einschränkungen Beim Vergleichen eines Wertes mit dem Istwert eines Zeitgebers oder Zählers
muss der Wert im BCD–Format vorliegen.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl CMP(20) nicht ausge-
führt. Ist diese jedoch WAHR, vergleicht CMP(20) Cp1 und Cp2 und überträgt
das Ergebnis auf die GR–, EQ–, und LE–Merker im SR–Bereich.
Vorsichtsmaßnahmen Werden andere Befehle zwischen CMP(20) und die Programmierbefehle, die
die EQ–, LE–, und GR–Merker auswerten, gesetzt, kann dies den Status dieser
Merker verändern. Werten Sie diese Merker aus, bevor der Zustand geändert
wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn Cp1 gleich Cp2 ist.
LE: Auf EIN gesetzt, wenn Cp1 kleiner als Cp2 ist.
GR: Auf EIN gesetzt, wenn Cp1 größer als Cp2 ist.
409
Vergleichsbefehle Abschnitt 7-19
TR
0
00000
CMP (20)
HR 09
DM 0000
25505
20000 Größer als
25506
20001 Gleich
25507
20002 Kleiner als
410
Vergleichsbefehle Abschnitt 7-19
Merker ER: Die Vergleichstabelle (d.h. TB bis TB+15) überschreitet den Datenbe-
reich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Beispiel Das folgende Beispiel zeigt die durchgeführten Vergleiche und die Ergebnisse
für TCMP(85). Ist IR 00000 auf EIN gesetzt, findet je Zyklus ein Vergleich statt.
Hinweis BCMP(68) ist ein erweiteter Befehl für die SRM1(–V2). Der Funktionscode 68 ist
werksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-
den.
Einschränkungen Jedes untere Grenzwort im Vergleichsblock muss kleiner oder gleich der oberen
Grenze sein.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
411
Vergleichsbefehle Abschnitt 7-19
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl BCMP(68) nicht ausge-
führt. Ist diese jedoch WAHR, vergleicht BCMP(68) CD mit den durch einen
Block, bestehend aus CB, CB+1, CB+2,, ... CB+31, spezifizierten Bereiche. Je-
der Bereich wird durch zwei Worte definiert. Das erste Wort spezifiziert den un-
teren und das zweite den oberen Grenzwert. Befindet sich CD innerhalb eines
dieser Bereiche ( einschließlich der oberen und unteren Grenzwerte), wird das
entsprechende Bit in R gesetzt. Die angestellten Vergleiche und das entspre-
chende Bit in R, das für jeden Vergleich gesetzt wird, sind nachstehend darge-
stellt. Die restlichen Bits in R werden auf AUS gesetzt.
CB ≤ CD ≤ CB+1 Bit 00
CB+2 ≤ CD ≤ CB+3 Bit 01
CB+4 ≤ CD ≤ CB+5 Bit 02
CB+6 ≤ CD ≤ CB+7 Bit 03
CB+8 ≤ CD ≤ CB+9 Bit 04
CB+10 ≤ CD ≤ CB+11 Bit 05
CB+12 ≤ CD ≤ CB+13 Bit 06
CB+14 ≤ CD ≤ CB+15 Bit 07
CB+16 ≤ CD ≤ CB+17 Bit 08
CB+18 ≤ CD ≤ CB+19 Bit 09
CB+20 ≤ CD ≤ CB+21 Bit 10
CB+22 ≤ CD ≤ CB+23 Bit 11
CB+24 ≤ CD ≤ CB+25 Bit 12
CB+26 ≤ CD ≤ CB+27 Bit 13
CB+28 ≤ CD ≤ CB+29 Bit 14
CB+30 ≤ CD ≤ CB+31 Bit 15
Merker ER: Der Vergleichsblock (d.h. CB bis CB+31) überschreitet den Datenbe-
reich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
412
Vergleichsbefehle Abschnitt 7-19
Beispiel Das folgende Beispiel zeigt die angestellten Vergleiche und die Ergebnisse für
BCMP(68). Ist IR 00000 auf EIN gesetzt, findet je Zyklus ein Vergleich statt.
00000
BCMP(68)
Adresse Befehl Operanden
HR 00 00000 LD 00000
DM 0010 00001 BCMP (68)
LR 05 HR 00
DM 0010
LR 05
Hinweis CMPL(60) ist ein erweiteter Befehl für die SRM1(–V2). Der Funktionscode 60 ist
werksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-
den.
413
Vergleichsbefehle Abschnitt 7-19
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
GR: Auf EIN gesetzt, wenn Cp1+1, Cp1 größer als Cp2+1,Cp2 ist.
EQ: Auf EIN gesetzt, wenn Cp1+1, Cp1 gleich Cp2+1,Cp2 ist.
LE: Auf EIN gesetzt, wenn Cp1+1, Cp1 kleiner als Cp2+1,Cp2 ist.
414
Vergleichsbefehle Abschnitt 7-19
Vorsichtsmaßnahmen Werden andere Befehle zwischen ZCP(––) und die Programmierbefehle, die
die EQ–, LE– und GR–Merker auswerten, gesetzt, kann dies den Zustand die-
ser Merker verändern. Werten Sie diese Merker aus, bevor der Zustand geän-
dert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
LL ist größer als UL.
EQ: Auf EIN gesetzt, wenn LL ≤ CD ≤ UL.
LE: Auf EIN gesetzt, wenn CD < LL.
GR: Auf EIN gesetzt, wenn CD > UL.
Beispiel Im folgenden Beispiel wird der Inhalt von IR 200 (#6FA4) mit dem Bereich #0010
bis #AB1F verglichen. Da #0010 ≤ #6FA4 ≤ #AB1F ist, wird der EQ– Merker
und IR 01001 auf EIN gesetzt.
TR
0
00000
ZCP(––)
200
#0010
#AB1F
25505
01000 Größer als
(über dem
Bereich)
25506
01001 Gleich
(innerhalb des
Bereichs)
25507
01002 Kleiner als
(unter dem
Bereich)
01000: AUS
LL: #0010 CD: 200 UL: #AB1F
0 0 1 0 < 6 F A 4 < A B 1 F
01001: EIN
01002: AUS
415
Konvertierungsbefehle Abschnitt 7-20
Vorsichtsmaßnahmen Werden andere Befehle zwischen ZCPL(––) und die Programmbefehle, die die
EQ-, LE- und GR-Merker auswerten, gesetzt, kann dies den Zustand dieser
Merker verändern. Werten Sie diese Merker aus, bevor der Zustand geändert
wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
LL+1, LL ist größer als UL+1, UL.
EQ: Auf EIN gesetzt, wenn LL+1, LL ≤ CD, CD+1 ≤ UL+1, UL
LE: Auf EIN gesetzt, wenn CD, CD+1 < LL+1, LL.
GR: Auf EIN gesetzt, wenn CD, CD+1 > UL+1, UL.
7-20 Konvertierungsbefehle
7-20-1 BCD–TO–BINARY (BCD–Binär–Konvertierung) – BIN(23)
Kontaktplansymbol Datenbereiche
S: Quellwort (BCD)
BIN (23) @BIN(23)
IR, SR, AR, DM, HR, TC, LR
S S
R Ergebniswort
R R
IR, SR, AR, DM, HR, LR
BCD–Daten S
Binär R
416
Konvertierungsbefehle Abschnitt 7-20
Mit dem Befehl BIN(23) werden BCD–Werte in binäre Daten konvertiert, damit
die Anzeigen auf der Programmierkonsole oder jedem anderen Programmier-
gerät in hexadezimalem anstatt in dezimalem Format angezeigt werden. Der
Befehl kann zur Konvertierung binärer Werte verwendet werden, um binäre
arithmetische Operationen anstatt arithmetische Operationen im BCD–Code
durchzuführen z.B., wenn BCD– und Binärwerte addiert werden müssen.
Kontaktplansymbol Datenbereiche
S: Quellwort (Binär)
BCD (24) @BCD(24)
IR, SR, AR, DM, HR, LR
S S
R Ergebniswort
R R
IR, SR, AR, DM, HR, LR
Einschränkungen Überschreitet der Inhalt von S den Wert 270F, würde das konvertierte Ergebnis
9999 überschreiten und BCD(24) wird nicht ausgeführt. In diesem Fall bleibt der
Inhalt von R unverändert.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung BCD(24) konvertiert den binären (Hexadezimalwert) Inhalt von S in numerisch
gleichwertige BCD–Bits und speichert diese in R. Nur der Inhalt von R wird ge-
ändert; der Inhalt von S bleibt unverändert.
Binär S
BCD–Daten R
Mit dem Befehl BCD(24) werden binäre Daten in BCD–Werte konvertiert, damit
die Anzeigen auf der Programmierkonsole oder jedem anderen Programmier-
gerät in dezimalem anstatt in hexadezimalem Format angezeigt wird. Der Be-
fehl kann zur Konvertierung von BCD–Werten verwendet werden, um arithmeti-
sche Operationen im BCD–Format anstatt binäre arithmetische Operationen
durchzuführen, z.B., wenn BCD– und Binärwerte addiert werden müssen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
417
Konvertierungsbefehle Abschnitt 7-20
BCD–Daten S+1 S
Binär R+1 R
Merker ER: Der Inhalt der S– und/oder S+1–Worte liegt nicht im BCD–Format vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
Kontaktplansymbol Datenbereiche
S: Erstes Quellwort (binär)
BCDL (59) @BCDL(59)
IR, SR, AR, DM, HR, LR
S S
R Erstes Ergebniswort
R R
IR, SR, AR, DM, HR, LR
418
Konvertierungsbefehle Abschnitt 7-20
Beschreibung BCDL(59) konvertiert den 32 Bit umfassenden binären Inhalt von S und S+1 in
8–stellige BCD–Daten und speichert die konvertierten Daten in R und R+1.
Binär S+1 S
BCD–Daten R+1 R
Kontaktplansymbol S: Quellwort
Einschränkungen Die beiden äußerst rechten Stellen von Di müssen jeweils einen Wert zwischen
0 und 3 aufweisen.
Alle Ergebnisworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl MLPX(76) nicht ausge-
führt. Ist diese jedoch WAHR, werden über MLPX(76) bis zu vier Hexadezimal-
stellen (mit jeweils vier Bits) vom Quellwort S in Dezimalwerte von 0 ...15 kon-
vertiert. Jeder dieser Dezimalwerte kennzeichnet eine Bitposition. Das Bit, des-
sen Nummer mit allen konvertierten Werten übereinstimmt, wird in einem Er-
gebniswort auf EIN gesetzt. Wird mehr als eine Stelle spezifiziert, wird jeweils
ein Bit der nach R folgenden Worte auf EIN gesetzt. (Sehen Sie nachfolgendes
Beispiel).
Folgendes Beispiel zeigt eine 1–stellige Dekodieroperation der ersten Stelle
von S, d.h., Di besitzt hier den Wert von 0001.
Quellwort
C
Erstes Ergebniswort
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Die erste Stelle und die Anzahl der zu konvertierenden Stellen wird Di zugewie-
sen. Werden mehr Stellen als in S verbleiben zugewiesen (Zählanfang ist die
erste zugewiesene Stelle), werden die verbleibenden Stellen wieder dem An-
419
Konvertierungsbefehle Abschnitt 7-20
fang von S zugewiesen. Das für die Speicherung des konvertierten Ergebnisses
(R plus die Anzahl der zu konvertierenden Stellen) erforderliche Endwort muss
sich im gleichen Datenbereich wie R befinden, d.h., werden 2 Stellen konver-
tiert, kann die letzte Wortadresse in einem Datenbereich nicht zugewiesen wer-
den. Werden 3 Stellen konvertiert, können die letzten zwei Worte in einem Da-
tenbereich nicht zugewiesen werden.
Stellenkennzeichner Die Stellen von Di werden wie folgt gesetzt.
Stellen: 3 2 1 0
0 R 0 R
1 R+1 1 R+1
2 2 R+2
3 3 R+3
Merker ER: Undefinierte Stellenkennzeichnung oder R plus die Anzahl der Stellen
überschreitet einen Datenbereich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
420
Konvertierungsbefehle Abschnitt 7-20
Beispiel Das folgende Programm konvertiert die Stellen 1 bis 3 von DM 0020 in die Bit-
stellungen und setzt die entsprechenden Bits in drei aufeinanderfolgenden Wor-
ten, beginnend mit HR 10, auf EIN. Die Stelle 0 wird nicht konvertiert.
00000
MLPX (76) Adresse Befehl Operanden
DM 0020 00000 LD 00000
#0021 00001 MLPX (76)
HR 10 DM 0020
# 0021
HR 10
Einschränkungen Die beiden äußersten rechten Stellen von Di müssen jeweils einen Wert zwi-
schen 0 und 3 aufweisen.
Alle Quellenworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für SB, R oder Di verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl DMPX(77) nicht ausge-
führt. Ist diese jedoch WAHR, bestimmt DMPX(77) die Position des höchsten
auf EIN gesetzten Bits in S. Diese Bitnummer wird dann in einen hexadezimalen
Wert umgewandelt und an eine spezifizierte Stelle des Ergebniswortes R über-
tragen. Die Definition dieser spezifizierten Stelle wird über die Stellenkenn-
zeichnung Di vorgenommen. Dort wird auch die Anzahl der zu kodierenden
Stellen festgelegt.
421
Konvertierungsbefehle Abschnitt 7-20
Erstes Quellwort
0 0 0 1 0 0 0 1 0 0 0 1 0 1 1 0
422
Konvertierungsbefehle Abschnitt 7-20
Beispiel Ist 00000 auf EIN gesetzt, wird folgender Kodierprozess eingeleitet: IR 200 und
201 werden kodiert und in die beiden ersten Stellen von HR 20 übertragen; LR
010 und LR 011 in die beiden letzten Stellen von HR 20. Obwohl der Status jedes
Quellenwort–Bits nicht angezeigt wird, wird vorausgesetzt, dass das darge-
stellte Bit mit dem Status 1 (EIN), das höchste auf EIN gesetzte Bit im Wort ist.
00000
DMPX (77) Adresse Befehl Operanden
200 00000 LD 00000
HR 10 00001 DMPX (77)
#0010 200
HR 10
DMPX (77)
# 0010
00002 DMPX (77)
LR 10
LR 10
HR 10
HR 10
#0012
# 0012
IR 200 IR 201
01000 01100
: :
01011 1 01109 1
01012 0 01110 0
:: : :: :
HR 10
01015 0 01115 0
Stelle 0 B
Stelle 1 9
LR 10 LR 11 Stelle 2 1
LR 1000 LR 1100 Stelle 3 8
LR 1001 1 :
LR 1002 0 LR 1108 1
:: : LR 1109 0
:: : :: :
LR 1015 0 LR 1115 0
423
Konvertierungsbefehle Abschnitt 7-20
Jede oder alle der in S vorhandenen Stellen werden, ausgehend von der zuge-
wiesenen ersten Stelle, konvertiert. Die Zuweisung der ersten Stelle, die Anzahl
der zu konvertierenden Stellen und die Hälfte von D, in der der erste 7–Seg-
ment–Displaycode (die äußerst rechten oder linken 8 Bits) gespeichert wird, er-
folgt in Di. Werden mehrere Stellen zugewiesen, erfolgt die Reihenfolge ausge-
hend von der zugewiesenen Hälfte von D, wobei jede zwei Stellen benötigt.
Werden mehr Stellen zugewiesen als in S (Zählfolge von der zugewiesenen er-
sten Stellen) verbleiben, werden weitere Stellen, beginnend bei S, verwendet.
Stellenkennzeichner Die Stellen von Di werden wie folgt gesetzt.
Stellen: 3 2 1 0
Einige Beispiele der Di–Werte und die daraus resultierende Umwandlung von
4 Bit–Binärwerten in eine 7–Segment–Anzeige sind nachstehend dargestellt.
Di: 0011 Di: 0030
S–Stellen D S–Stellen D
0 1. Hälfte 0 1. Hälfte
1 2. Hälfte 1 2. Hälfte
2 2
3 3 D+1
1. Hälfte
2. Hälfte
D+2
1. Hälfte
2. Hälfte
424
Konvertierungsbefehle Abschnitt 7-20
Beispiel Das folgende Beispiel zeigt die erforderlichen Daten zur Anzeige einer 8. Die
Kleinbuchstaben geben an, welche Bits den Segmenten der 7–Segment–An-
zeige entsprechen. Die nachstehende Tabelle zeigt die ursprünglichen Daten
und den konvertierten Code aller Hexadezimalziffern.
00000
@ SDEC(78)
DM 0010
LR 07
200
a
LR 07 DM 0010 IR 200
f b
g
0 20 0 Bit 00 1 a
1 21 1 1 b
1: Beginn bei 2. Stelle e c
x100 0 1 c
0 22 0
0 23 0 1 d d
0 20 0 1 e
0 21 0 8 1 f
x101 0: Eine Ziffer zu 1
0 dekodieren 22 0 1 g
0 23 1 Bit 07 0
0 20 0
0 21 1
x102 0 oder 1: 2
0 0 Bits 00 bis 07 22 1
1 Bits 08 bis 15.
0 23 1
0 20 1
0 x103 3 21 0
Nicht verwendet
0 22 1
0 23 1
425
Konvertierungsbefehle Abschnitt 7-20
Kontaktplansymbol S: Quellwort
426
Konvertierungsbefehle Abschnitt 7-20
Einige Beispiel der Di Werte und die daraus resultierende Umwandlung von
4 Bit–Binärwerte in 8 Bit–ASCII–Werte sind nachstehend dargestellt.
Di: 0011 Di: 0030
S D S: D
0 1. Hälfte 0 1. Hälfte
1 2. Hälfte 1 2. Hälfte
2 2
3 3 D+1
1. Hälfte
2. Hälfte
D+2
1. Hälfte
2. Hälfte
Parität Das äußerst linke Bit jedes ASCII–Zeichens (2–stellig) kann automatisch auf
gerade oder ungerade Parität gesetzt werden. Wird keine Parität zugewiesen,
ist das äußerst linke Bit immer 0.
Wird eine gerade Parität zugewiesen, wird das äußerst linke Bit so gesetzt, daß
die Gesamtzahl der auf EIN gesetzten Bits gerade ist, d.h., ist eine gerade Pari-
tät eingestellt, wird aus ASCII “31” (00110001) “B1” (10110001: das Paritätsbit
wird auf EIN gesetzt, um eine gerade Anzahl von auf EIN gesetzte Bits zu erstel-
len); ASCII “36” (00110110) wird “36” (00110110: das Paritätsbit wird auf AUS
gesetzt, weil die Anzahl der auf EIN gesetzen Bits bereits gerade ist). Der Zu-
stand des Paritätsbits wirkt sich nicht auf die Bedeutung des ASCII–Codes aus.
Wird eine ungerade Parität zugewiesen, wird das äußerste linke Bit jedes
ASCII–Zeichens so gesetzt, daß eine ungerade Zahl von auf EIN gesetzten Bits
anliegt.
427
Konvertierungsbefehle Abschnitt 7-20
Parität 0: keine
1: gerade
2: ungerade
428
Konvertierungsbefehle Abschnitt 7-20
S+2
1. Byte
2. Byte
ASCII–Codetabelle Die folgende Tabelle zeigt die ASCII–Codes vor der Konvertierung und die He-
xadezimalwerte nach der Konvertierung. Eine Tabelle der ASCII–Zeichen fin-
den Sie im Anhang G.
Ursprüngliche Daten Konvertierte Daten
ASCII–Code Bitstatus (siehe Hinweis.) Ziffer Bits
30 * 0 1 1 0 0 0 0 0 0 0 0 0
31 * 0 1 1 0 0 0 1 1 0 0 0 1
32 * 0 1 1 0 0 1 0 2 0 0 1 0
33 * 0 1 1 0 0 1 1 3 0 0 1 1
34 * 0 1 1 0 1 0 0 4 0 1 0 0
35 * 0 1 1 0 1 0 1 5 0 1 0 1
36 * 0 1 1 0 1 1 0 6 0 1 1 0
37 * 0 1 1 0 1 1 1 7 0 1 1 1
38 * 0 1 1 1 0 0 0 8 1 0 0 0
39 * 0 1 1 1 0 0 1 9 1 0 0 1
41 * 1 0 0 0 0 0 1 A 1 0 1 0
42 * 1 0 0 0 0 1 0 B 1 0 1 1
43 * 1 0 0 0 0 1 1 C 1 1 0 0
44 * 1 0 0 0 1 0 0 D 1 1 0 1
45 * 1 0 0 0 1 0 1 E 1 1 1 0
46 * 1 0 0 0 1 1 0 F 1 1 1 1
Hinweis Das äußerst linke Bit jedes ASCII–Codes wird auf Parität eingestellt.
Parität Das äußerst linke Bit jedes ASCII–Zeichens (2 Stellen) wird automatisch auf ge-
rade oder ungerade Parität gesetzt.
Ohne Parität muss das äußerst linke Bit immer Null sein. Bei ungerader oder
gerader Parität muss das äußerst linke Bit jedes ASCII–Zeichens so gesetzt
werden, daß eine ungerade oder gerade Anzahl von auf EIN gesetzten Bits be-
steht.
Falls die Parität des ASCII–Codes in S nicht mit der in Di spezifizierten Parität
übereinstimmt, wird der ER–Merker (SR 25503 ) auf EIN gesetzt und der Befehl
nicht ausgeführt.
429
Konvertierungsbefehle Abschnitt 7-20
Beispiel Im folgenden Beispiel wird das zweite Byte von LR 10 und das erste Byte von LR
11 in hexadezimale Werte konvertiert und diese Werte werden in das erste und
zweite Byte von IR 200 geschrieben.
LR 10 00000 LD 00000
HR 10 00001 @HEX(––)
200
LR 10
HR 10
200
HR 10 0 1 1 0
LR 12 3 5 3 4 LR 11 4 2 3 2 LR 10 3 1 3 0
Konvertierung zu
hexadezimal
200 0 0 2 1
000
Merker ER: S und S+1 oder R und R+1 befinden sich nicht im gleichen Datenbe-
reich.
430
Konvertierungsbefehle Abschnitt 7-20
Beispiel Ist 00000 auf AUS (d.h. die Ausführungsbedingung ist EIN), konvertiert der fol-
gende Befehl den Stunden–, Minuten– und Sekunden–Wert von HR 12 und HR
13 in einen Sekunden–Wert und speichert das Ergebnis in DM 0100 und DM
0101.
00000
SEC(––)
Adresse Befehl Operanden
HR 12 00000 LD NOT 00000
DM 0100 00001 SEC(––)
HR 12
DM 0100
HR 12 3 2 0 7 2.815 Std., 32 Min., 000
HR 13 2 8 1 5 07 Sek.
DM 0100 5 9 2 7 10.135.927 s
DM 0101 1 0 1 3
000
Merker ER: S und S+1 oder R und R+1 befinden sich nicht im gleichen Datenbe-
reich.
S und/oder S+1 liegen nicht im BCD–Format vor oder die Anzahl der
Sekunden überschreitet 36.000.000 Sekunden.
431
Konvertierungsbefehle Abschnitt 7-20
Beispiel Ist 00000 auf AUS gesetzt (d.h. die Ausführungsbedingung ist EIN), konvertiert
der folgende Befehl den Sekunden–Wert von HR 12 und HR 13 in ein Stunden–,
Minuten– und Sekunden–Wert und speichert das Ergebnis in DM 0100 und DM
0101.
00000
HMS(––)
Adresse Befehl Operanden
HR 12 00000 LD NOT 00000
DM 0100 00001 HMS(––)
HR 12
DM 0100
HR 12 5 9 2 7 10.135.927 s
000
HR 13 1 0 1 3
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn der Inhalt von R nach der Ausführung Null ist;
andernfalls auf AUS gesetzt.
UF: Auf EIN gesetzt, wenn der Inhalt von S = 8000 ist; andernfalls auf AUS
gesetzt.
N: EIN, wenn Bit 15 von R auf EIN ist; sonst AUS.
432
Konvertierungsbefehle Abschnitt 7-20
Beispiel Das folgende Beispiel zeigt die Anwendung von NEG(––), um das Zweierkom-
plement des Inhaltes von DM 0005 zu bilden und das Ergebnis an IR 15 auszu-
geben.
00100
NEG(––)
Adresse Befehl Operanden
DM 0005 00000 LD 00100
15 00001 NEG(––)
000 DM 0005
15
000
#0000
433
BCD–Rechenbefehle Abschnitt 7-21
7-21 BCD–Rechenbefehle
7-21-1 SET CARRY (Übertragsmerker setzen) – STC(40)
Kontaktplan–Symbol
STC(40) @STC(40)
Ist die Ausführungsbedingung FALSCH, wird CTBL(40) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, schaltet STC(40) CY ein (SR 25504).
Hinweis Die sich auf CY auswirkenden Befehle finden Sie in einer Tabelle in Anhang B
Fehler– und Arithmetische Merkeroperationen.
CLC(41) @CLC(41)
Ist die Ausführungsbedingung FALSCH, wird CLC(41) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, schaltet STC(41) CY aus (SR 25504).
Der Befehl CLEAR CARRY wird zum Rücksetzen (auf AUS) von CY (SR 25504)
auf 0 verwendet.
Hinweis Die sich auf CY auswirkenden Befehle finden Sie in einer Tabelle in Anhang B
Fehler– und Arithmetische Merkeroperationen.
Au + Ad + CY CY R
434
BCD–Rechenbefehle Abschnitt 7-21
Beispiel Ist 00002 auf EIN gesetzt, löscht das im nachstehenden Diagramm dargestelle
Netzwerk CY mit dem Befehl CLC(41). Der Inhalt von IR 200 wird zu der Kon-
stanten (6103) addiert und das Ergebnis in DM 0100 gespeichert. Abhängig
vom Zustand von CY (25504) werden dann alle Nullen oder 0001 nach DM 0101
übertragen. Status von CY (25504). Dadurch wird sichergestellt, dass jeder
Übertrag der letzten Stelle in R+1 erhalten bleibt und das Gesamtergebnis spä-
ter als 8–stellige Daten verwendet werden können.
TR 0
Adresse Befehl Operanden
00002 00000 LD 00002
CLC(41) 00001 OUT TR 0
00002 CLC (41)
ADD (30)
00003 ADD(30)
200
200
# 6103
#6103
DM 0100
DM 0100
00004 AND 25504
25504
00005 MOV (21)
MOV (21)
# 0001
#0001
DM 0101
DM 0101
00006 LD TR 0
25504 00007 AND NOT 25504
MOV (21)
00008 MOV (21)
#0000
# 0000
DM 0101
DM 0101
Mi – Su – CY CY R
435
BCD–Rechenbefehle Abschnitt 7-21
! Vorsicht Vor der Ausführung des SUB(31)–Befehls muss in jedem Fall der Übertrags-
merker mit dem CLC(41)–Befehl gelöscht werden, falls der vorherige Zustand
nicht benötigt wird. Überprüfen Sie den Zustand von CY nach einer Subtraktion
mit SUB(31). Wird CY infolge der Ausführung von SUB(31) (d.h. wenn das Er-
gebnis negativ ist) auf EIN gesetzt, wird das Ergebnis als Zehner–Komplement
ausgegeben. Um das Ausgabeergebnis in den echten Wert zu konvertieren,
subtrahieren Sie den Wert in R von 0.
Beispiel Ist 00002 auf EIN gesetzt, wird im folgenden Netzwerk CY gelöscht, der Inhalt
von DM 0100 und CY vom Inhalt von 201 subtrahiert und das Ergebnis in HR 10
abgelegt.
Wird CY durch SUB(31) gesetzt, wird das Ergebnis in HR10 von Null subtrahiert
(um ein genaues Ergebnis zu erhalten, wird CLC(41) wieder benötigt), das Er-
gebnis wieder in HR10 abgelegt und HR1100 wird zur Anzeige eines negativen
Ergebnisses auf EIN gesetzt.
Wird CY nicht durch SUB(31) gesetzt, ist das Ergebnis positiv, die zweite Sub-
traktion wird nicht durchgeführt und HR1100 nicht auf EIN gesetzt. HR1100 wird
als Selbsthaltung programmiert, so daß eine Zustandsänderung von CY ihn bei
einem erneuten Programmdurchlauf nicht auf AUS setzt.
In diesem Beispiel wird der Befehl SUB(31) mit flankengesteuerter Ausführung
verwendet, somit wird die Subtraktion nur einmal ausgeführt, wenn 00002 auf
EIN gesetzt wird. Soll eine weitere Subtraktion durchgeführt werden, muss
00002 für mindestens einen Zyklus (Rücksetzung von HR 1100) auf AUS und
dann wieder auf EIN gesetzt werden.
TR 0
00002
CLC(41)
@SUB(31) Erste
201
Subtrak-
tion
DM 0100
HR 10
25504
CLC(41)
@SUB(31) Zweite
#0000
Subtrak-
tion
HR 10
HR 10
25504
HR 1100
436
BCD–Rechenbefehle Abschnitt 7-21
Die erste und zweite Subtraktion dieses Netzwerks sind unter Verwendung von
Beispieldaten für 201 und DM 0100 dargestellt.
Hinweis Bei der eigentlichen SUB(31)–Operation wird Su und CY von 10000 + Mi subtra-
hiert. Für positive Ergebnisse wird die äußerst linke Stelle abgeschnitten. Für
negative Ergebnisse wird das Zehner–Komplement erhalten. Das Verfahren zur
Festlegung des richtigen Ergebnisses ist nachstehend beschrieben.
Erste Subtraktion
IR 201 1029
DM 0100 – 3452
CY –0
HR 10 7577 (1029 + (10000 – 3452))
CY 1 (negatives Ergebnis)
Zweite Subtraktion
0000
HR 10 –7577
CY –0
HR 10 2423 (0000 + (10000 – 7577))
CY 1 (negatives Ergebnis)
Im obigen Fall setzt das Programm HR 1100 auf EIN und zeigt damit einen nega-
tiven Wert in HR 10 an.
437
BCD–Rechenbefehle Abschnitt 7-21
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl MUL(32) nicht ausge-
führt. Ist diese jedoch WAHR, multipliziert MUL(32) Md mit dem Inhalt von Mr
und legt das Ergebnis in R und R+1 ab.
MD
X Mr
R +1 R
Beispiel Ist IR 00000 im folgenden Programm auf EIN gesetzt, wird der Inhalt von
IR 013 mit DM 0005 multipliziert und das Ergebnis in HR 07 und HR 08 abgelegt.
Beispieldaten und Berechnungen werden nach dem Netzwerk dargestellt.
00000
Adresse Befehl Operanden
MUL (32)
013
00000 LD 00000
00001 MUL (32)
DM 0005
013
HR 07
DM 0005
HR 07
Md: IR 013
3 3 5 6
Mr: DM 0005
X 0 0 2 5
R+1: HR 08 R: HR 07
0 0 0 8 3 9 0 0
Beschränkungen R und R+1 müssen sich im gleichen Datenbereich befinden. DM 6144 bis DM
6655 können nicht für R verwendet werden.
438
BCD–Rechenbefehle Abschnitt 7-21
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl DIV(33) nicht ausge-
führt und das Programm führt den nächsten Befehl aus. Ist diese jedoch WAHR,
wird Dd durch Dr dividiert und das Ergebnis in R und R + 1 abgelegt: der Quotient
in R und der Rest in R + 1.
Rest Quotient
R+1 R
Dr Dd
Beispiel Ist IR 00000 im folgenden Netzwerk auf EIN gesetzt, wird der Inhalt von IR 216
durch den Inhalt von HR 09 dividiert und das Ergebnis in DM 0017 und DM 0018
abgelegt. Beispieldaten und Berechnungen werden nach dem Programm dar-
gestellt.
00000
Adresse Befehl Operanden
DIV(33)
00000 LD 00000
216
00001 DIV(33)
HR 09
216
DM 0017 HR 09
Quotient Rest DM 0017
R: DM 0017 R + 1: DM 0018
1 1 5 0 0 0 0 2
439
BCD–Rechenbefehle Abschnitt 7-21
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl ADDL(54) nicht ausge-
führt. Ist diese jedoch WAHR, addiert ADDL(54) den Inhalt von CY zum 8–stel-
ligen Wert in Au und Au+1 und zum 8–stelligen Wert in Ad und Ad+1 und legt das
Ergebnis in R und R+1 ab. CY wird gesetzt, wenn das Ergebnis 99999999 über-
schreitet.
Au + 1 Au
Ad + 1 Ad
+ CY
CY R+1 R
Beispiel Ist 00000 auf EIN gesetzt, erfolgt im folgenden Programmabschnitt eine Addi-
tion zweier 12–stelliger Zahlen, wobei sich die erste in LR 00 bis LR 02 und die
zweite in DM 0010 bis DM 0012 befindet. Das Ergebnis wird in HR 10 bis HR 13
abgelgt.
Die äußerst rechten 8 Stellen der zwei Zahlen werden über den ADDL(54)–Be-
fehl addiert, d.h. der Inhalt von LR 00 und LR 01 wird zu DM 0010 und DM 0011
addiert und die Ergebnisse in HR 10 und HR 11 abgelegt. In der zweiten Addition
werden die äußersten linken 4 Stellen jeder Zahl mit dem ADD(30)–Befehl ad-
diert und beinhaltet den Übertrag aus der ersten Addition. Mit dem letzten Befehl
ADB(50) (sehen Sie Abschnitt 7-22-1 BINARY ADD – ADB(50) (Binäre Addi-
tion)) werden zwei aus Nullen bestehende Konstanten addiert, um den Übertrag
aus der zweiten Addition in HR 13 abzulegen.
00000
Adresse Befehl Operanden
CLC(41)
00000 LD 00000
@ADDL(54) 00001 CLC(41)
LR 00 00002 @ADDL(54)
DM 0010 LR 00
HR 10 DM 0010
HR 10
@ADD(30)
00003 @ADD(30)
LR 02
LR 02
DM 0012
DM 0012
HR 12
HR 12
@ADB(50) 00004 @ADB(50)
#0000 # 0000
#0000
# 0000
HR 13
HR 13
440
BCD–Rechenbefehle Abschnitt 7-21
Mi + 1 Mi
Su + 1 Su
– CY
CY R+1 R
441
BCD–Rechenbefehle Abschnitt 7-21
TR 0
00003
CLC(41)
@SUBL(55) Erste
HR 00 Subtraktion
220
DM 0100
25504
@BSET(71)
#0000
DM 0000
DM 0001
CLC(41)
@SUBL(55) Zweite
DM 0000 Subtraktion
DM 0100
DM 0100
25504
HR 0100
442
BCD–Rechenbefehle Abschnitt 7-21
MD + 1 MD
X Mr + 1 Mr
Dr+1 Dr Dd+1 Dd
443
Binäre Rechenbefehle Abschnitt 7-22
Au + Ad + CY CY R
ADB(50) kann auch für die Addition von vorzeichenbehafteten binären Daten
verwendet werden. Bei der CPM1A, CPM2A und SRM1(–V2) zeigen die Unter-
lauf– bzw. Überlaufmerker (SR 25404 und SR 25405) an, ob das Ergebnis den
unteren oder oberen Grenzwert des vorzeichenbehafteten16 Bit–Binärdaten-
bereichs überschreitet.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis größer als FFFF ist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
OF: Auf EIN gesetzt, wenn das Ergebnis +32.767 (7FFF) überschreitet.
UF: Auf EIN gesetzt, wenn das Ergebnis –32.768 (8000) unterschreitet.
Beispiel Das folgende Beispiel zeigt eine 4–stellige Addition mit CY zum Schreiben von
entweder #0000 oder #0001 in R+1 zur Sicherung des Übertrags.
444
Binäre Rechenbefehle Abschnitt 7-22
Im nachstehenden Beispiel ist A6E2 + 80C5 = 127A7. Das Ergebnis ist eine
5–stellige Summe, wobei CY (SR 25504) = 1 ist und der Inhalt von R + 1 #0001
wird.
Au: IR 200
A 6 E 2
Ad: DM 0100
+ 8 0 C 5
R+1: HR 11 R: HR 10
0 0 0 1 2 7 A 7
Hinweis Bei vorzeichenbehafteten binären Berechnungen zeigt der Zustand der UF–
und OF–Merker an, ob das Ergebnis den vorzeichenbehafteten binären Daten-
bereich überschreitet (–32.768 (8000) bis +32.767 (7FFF)).
Mi – Su – CY CY R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis negativ ist, d.h., wenn Mi kleiner ist
als Su + CY.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
OF: Auf EIN gesetzt, wenn das Ergebnis +32.767 (7FFF) überschreitet.
UF: Auf EIN gesetzt, wenn das Ergebnis –32.768 (8000) unterschreitet.
Beispiel Das folgende Beispiel zeigt eine 4–stellige Subtraktion. Ist IR 00001 auf EIN ge-
setzt, wird der Inhalt von LR 00 und CY vom Inhalt von IR 200 subtrahiert und
das Ergebnis in HR 01 gespeichert.
445
Binäre Rechenbefehle Abschnitt 7-22
Bei einem negativen Ergebnis wird CY auf EIN gesetzt. Werden normale Daten
verwendet, muss ein negatives Ergebnis (vorzeichenbehafteter Binärwert) un-
ter Anwendung des NEG(––)–Befehls in normale Daten konvertiert werden. Se-
hen Sie Abschnitt 7-20-12 2’s COMPLEMENT (2–er Komplement) – NEG(––)
für weitere Informationen.
Mi: IR 002
F 8 C 5
Su: LR 00
– 7 A 0 3 CY = 0
(von CLC(41))
– 0 0 0 0
R: HR 01
7 E C 2
Hinweis Bei vorzeichenbehafteten binären Berechnungen zeigt der Zustand der UF–
und OF–Merker an, ob das Ergebnis den vorzeichenbehafteten binären Daten-
bereich überschreitet (–32.768 (8000) bis +32.767 (7FFF)).
446
Binäre Rechenbefehle Abschnitt 7-22
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl MLB(52) nicht ausge-
führt. Ist diese jedoch WAHR, multipliziert MLB(52) den Inhalt von Md mit dem
Inhalt von Mr, wobei die äußerst rechten 4 Stellen des Ergebnisses in R und die
äußerst linken 4 Stellen in R+1 abgelegt werden.
MD
X Mr
R +1 R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
R R+1
Dr Dd
447
Spezielle mathematische Befehle Abschnitt 7-23
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
N ist kein BCD–Wert zwischen 0001 und 9999.
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Es wurden passende Vergleichsdaten im Suchbereich gefunden.
Beispiel Im folgenden Beispiel wird ein aus 10 Worten (DM 200 bis DM 209) bestehen-
der Bereich nach Adressen durchsucht, die die gleichen Daten enthalten wie
448
Spezielle mathematische Befehle Abschnitt 7-23
DM 0100 (89AB). Da IR 204 die gleichen Daten enthält, wird der EQ–Merker
(SR 25506) gesetzt und #0004 in DM 0101 gespeichert.
DM 0100 89AB
IR 200 1234
IR 201 5678
IR 202 ABCD Offset: 0004 Offset des ersten Wor- DM 0101 0004
tes, dass die Suchdaten
IR 203 EF13 enthält
IR 204 89AB ← Suchdaten gefunden
IR 205 8860
IR 206 90CD
IR 207 00FF
IR 208 89AB ← Suchdaten gefunden
IR 209 810C
Hinweis Die passenden Suchdaten in IR 208 werden ignoriert, da die Suchdaten in ei-
nem Wort mit niedrigerer Adresse im Bereich gefunden wurden.
449
Spezielle mathematische Befehle Abschnitt 7-23
Ist Bit 14 des Steuerwortes C gesetzt und enthalten mehrere Adressen den glei-
chen Maximalwert, wird die Position der niedrigsten Adresse in D+1 gespei-
chert. Die Position wird als DM–Adresse für den DM–Bereich ausgegeben. Es
handelt sich jedoch um die Absolutposition in bezug auf das erste Wort des Be-
reiches für alle anderen Bereiche.
Die Anzahl der Worte innerhalb des Bereiches (N) wird in den 3 äußerst rechten
Ziffern von C gespeichert und muss ein BCD–Wert zwischen 001 und 999 sein.
Ist Bit 15 des Steuerwortes C auf AUS gesetzt, werden die Daten innerhalb des
Bereiches als Binärzahl ohne Vorzeichen und bei gesetztem Bit als vorzeichen-
behaftete Binärzahl ausgewertet.
15 14 13 12 11 00
C:
Anzahl der Worte
innerhalb des Bereiches (N)
001 bis 999 BCD)
Nicht verwendet – auf Null gesetzt.
! Vorsicht Ist Bit 15 des Steuerwortes C auf EIN gesetzt, werden Werte größer als #8000
als negative Zahlen ausgewertet. Die Ergebnisse unterscheiden sich daher je
nach spezifiziertem Datentyp. Achten Sie darauf, dass der richtige Datentyp
spezifiziert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Auf EIN gesetzt, wenn der Maximalwert #0000 ist.
Beispiel Ist IR 00000 EIN, veranlassen die Steuerdaten in DM 0000 (4010) eine Suche
nach dem Maximalwert in den 10 Worten, die bei IR 200 beginnen. Der größte,
450
Spezielle mathematische Befehle Abschnitt 7-23
vorzeichenlose Wert wird in DM 0500 gespeichert. Der Offset vom Anfang der
Suche des Wortes, das den Maximalwert enthält, wird in DM 0501 gespeichert.
DM 0000
00000 LD 00000
00001 MAX(––)
200
DM 0000
DM 0500
200
DM 0500
DM 0000 4010
DM 0500 E02A
DM 0501 0002
Enthalten zwei Worte den Maximal-
wert, wird die erste Adresse in
DM 0501 abgelegt.
451
Spezielle mathematische Befehle Abschnitt 7-23
15 14 13 12 11 00
C:
Anzahl der Worte
innerhalb des Bereiches (N)
001 bis 999 BCD)
Nicht verwendet – auf Null gesetzt.
! Vorsicht Ist Bit 15 des Steuerwortes C auf EIN gesetzt, werden Werte größer als #8000
als negative Zahlen ausgewertet. Die Ergebnisse unterscheiden sich daher je
nach spezifiziertem Datentyp. Achten Sie darauf, dass der richtige Datentyp
spezifiziert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Auf EIN gesetzt, wenn der Minimalwert #0000 ist.
Beispiel Ist IR 00000 EIN, veranlassen die Steuerdaten in DM 0300 (4010) eine Suche
nach dem Maximalwert in den 10 Worten, die bei DM 0000 beginnen. Der klein-
452
Spezielle mathematische Befehle Abschnitt 7-23
ste, vorzeichenlose Wert wird in DM 0500 gespeichert. Die Adresse des Wortes,
das den Mindestwert (0014) enthält, wird in DM 0501 gespeichert.
DM 0300
00000 LD 00000
00001 MIN(––)
DM 0010
DM 0300
DM 0500
DM 0010
DM 0500
DM 0300 4010
DM0010 3F2A
Adresse des Wortes, das Maximalwert enthält:
DM0011 51C3 0014
DM0012 E02A
DM0013 7C9F
DM0014 2A20 Mindestwert
10 Worte A827
DM0015
DM0016 33BF
DM0017 E02A
DM0018 2A20 Mindestwert
DM0019 94DC
DM 0500 2A20
DM 0501 0014
Enthalten zwei Worte den Minimal-
wert, wird die erste Adresse in
DM 0501 abgelegt.
453
Spezielle mathematische Befehle Abschnitt 7-23
dann den Mittelwert der in D+2...D+N+1 gespeicherten Werte und schreibt die-
sen Wert in D.
In der nachfolgenden Abbildung ist die Mittelwertberechnung dargestellt.
Vorsichtsmaßnahmen Der Mittelwert wird binär berechnet. Stellen Sie sicher, dass der Inhalt von S in
Binärdaten vorliegt.
N muss ein BCD-Wert zwischen #0001 und #0064 sein. Ist N ≥ #0065, arbeitet
AVG(––) mit dem Wert N = 64.
Der Mittelwert wird auf die nächste Ganzzahl gerundet (0,5 wird auf 1,0 gerun-
det).
Stellen Sie den Inhalt von D+1 auf #0000 ein, um AVG(––) direkt mit dem 1. Zy-
klus auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
Ein oder mehrere Operanden sind falsch gesetzt worden.
D und D+N+1 befinden sich nicht im gleichen Datenbereich.
Beispiel In dem folgenden Beispiel wird der Inhalt von IR200 auf #0000 gesetzt und an-
schließend in jeden Zyklus inkrementiert. In den ersten zwei Zyklen verschiebt
AVG(–) den Inhalt von IR200 nach DM 1002 und DM 1003. Bei dem dritten Zy-
454
Spezielle mathematische Befehle Abschnitt 7-23
klus und späteren Zyklen berechnet AVG(––) den Durchschnittswert des Inhalts
von DM 1002 bis DM 1004 und speichert den Durchschnitt Wert in DM 1000.
00001
@MOV(21)
Adresse Befehl Operanden
#0000
00000 LD 00001
200
00001 @MOV(21)
# 0000
AVG(––)
200
200
00002 AVG(––)
#0003 200
DM 1000 # 0003
DM 1000
CLC(41) 00003 CLC (41)
00004 ADB (50)
200
ADB(50)
# 0001
200
200
#0001
200
455
Spezielle mathematische Befehle Abschnitt 7-23
Die Funktion der Bits des Wortes C ist im folgenden Diagramm dargestellt und
wird anschließend ausführlich erläutert:
15 14 13 12 11 00
C:
Anzahl der Parameter Die Anzahl der Parameter des Bereichs (N) wird in den drei äußerst rechten
Stellen von C spezifiziert und muss ein BCD–Wert zwischen 001 und 999 sein.
Je nach den zu addierenden Daten wird hier die Anzahl der Worte bzw. Bytes
festgelegt.
Additionseinheiten Ist Bit 13 auf AUS gesetzt, werden Worte addiert. Ist Bit 13 auf EIN gesetzt, wer-
den Bytes addiert.
Bei der Spezifikation von Bytes kann der Bereich mit dem äußerst linken bzw.
rechten Byte von R1 beginnen. Ist Bit 12 auf EIN gesetzt, wird das äußerst linke
Byte von R1 nicht addiert.
MSB LSB
R1 1 2
R1+1 3 4
R1+2 5 6
R1+3 7 8
Ist Bit 12 auf AUS gesetzt, werden die Bytes in der folgenden Reihenfolge ad-
diert: 1+2+3+4...
Ist Bit 12 auf EIN gesetzt, werden die Bytes in der folgenden Reihenfolge ad-
diert: 2+3+4...
Datentyp Ist Bit 14 des Wortes C auf EIN und Bit15 auf AUS gesetzt, werden die Daten in
dem Bereich als Binärzahlen ohne Vorzeichen ausgewertet. Sind beide Bits (14
und 15) auf EIN gesetzt, werden die Daten als vorzeichenbehaftete Binärwerte
ausgewertet.
Daten innerhalb des Bereiches werden als BCD–Werte ausgewertet, wenn Bit
14 auf AUS gesetzt ist. Der Zustand von Bit 15 ist dabei irrelevant.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
Die Anzahl der Bytes/Worte in C ist kein BCD–Wert zwischen 001 und
999.
Die zu addierenden Daten liegen nicht im BCD–Format vor, obwohl
dies spezifiziert wurde.
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
456
Logikbefehle Abschnitt 7-24
Beispiel Im folgenden Beispiel wird der Inhalt der 8 Worte DM 0000 bis DM 0007 (BCD–
Werte) addiert, wenn IR 00001 auf EIN gesetzt ist. Das Ergebnis wird in den
Worten DM 0010 und DM 0011 gespeichert.
DM 0000 0001
DM 0001 0002
DM 0002 0003
DM 0003 0004 DM 0010 0036
DM 0004 0005 DM 0011 0000
DM 0005 0006
DM 0006 0007
DM 0007 0008
7-24 Logikbefehle
7-24-1 COMPLEMENT (Komplement) – COM(29)
Kontaktplan–Symbol Datenbereiche
Wd: Komplementwort
COM (29) @COM(29)
IR, SR, AR, DM, HR, LR
Wd Wd
Beispiel 15 00
Original 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
Komplement 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
457
Logikbefehle Abschnitt 7-24
Beispiel 15 00
I1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
I2 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
15 00
R 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
458
Logikbefehle Abschnitt 7-24
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl ORW(35) nicht ausge-
führt. Ist diese jedoch WAHR, führt ORW(35) eine logische ODER–Verknüfung
(Bit–für–Bit) der Inhalte von I1 und I2 durch und legt das Ergebnis in R ab.
Beispiel 15 00
I1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
I2 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
15 00
R 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Beispiel 15 00
I1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
I2 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
15 00
R 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
459
Inkrementier/Dekrementier–Befehle Abschnitt 7-25
I1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
I2 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
15 00
R 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-25 Inkrementier/Dekrementier–Befehle
7-25-1 BCD INCREMENT (BCD–Wert inkrementieren) – INC(38)
Kontaktplan–Symbol Datenbereiche
460
Inkrementier/Dekrementier–Befehle Abschnitt 7-25
461
Unterprogramm–Befehle Abschnitt 7-26
7-26 Unterprogramm–Befehle
Unterprogramme unterteilen große Programmbereiche in kleinere Abschnitte.
Ruft das Hauptprogramm ein Unterprogramm auf, wird die Steuerung dem Un-
terprogramm übergeben und die Befehle im Unterprogramm ausgeführt. Die
Befehlsstruktur in einem Unterprogramm ist die gleiche wie im Hauptprogramm.
Wurden alle Befehle im Unterprogramm ausgeführt, übernimmt das Hauptpro-
gramm wieder die Steuerung und zwar an der Stelle, an der der Unterprogram-
maufruf erfolgte (falls in dem Unterprogramm nichts anderes spezifiziert wird).
N: Unterprogramm–Nummer
SBS(91) N
000 bis 049
Hauptprogramm
SBS(91) 000
Hauptprogramm
SBN(92) 000
Unterprogramm
RET(93)
END(01)
SBS(91) kann so oft wie erforderlich verwendet werden, d.h., das gleiche Unter-
programm kann an verschiedenen Stellen im Hauptprogramm aufgerufen wer-
den.
462
Unterprogramm–Befehle Abschnitt 7-26
B A B C
Haupt–
programm SBS(91) 001
EIN Ausführungsbedingung nur
für das Unterprogramm 000
C
A D B C
RET(93)
END(01)
! Vorsicht Ist der ER–Merker gesetzt, wird SBS(91) nicht ausgeführt und das Unterpro-
gramm nicht aufgerufen.
463
Unterprogramm–Befehle Abschnitt 7-26
N: Unterprogramm–Nummer
SBN(92) N
000 bis 049
RET(93)
Kontaktplan–Symbol N: Unterprogramm–Nummer
000 bis 49
MCRO(99) @MCRO(99)
I1: Erstes Eingangs–Wort
N N
IR, SR, AR, DM, HR, TC, LR
I1 I1
O1: Erstes Ausgangs–Wort
O1 O1
IR, SR, AR, DM, HR, LR
464
Unterprogramm–Befehle Abschnitt 7-26
Beispiel In diesem Beispiel wird der Inhalt von DM 0010 bis DM 0013 auf SR 232 bis SR
235 kopiert, das Unterprogramm 10 aufgerufen und ausgeführt. Ist die Ausfüh-
rung des Unterprogramms beendet, wird der Inhalt von SR 236 bis SR 239 auf
die Ausgangsworte DM 0020 bis DM 0023 kopiert.
Hauptprogramm
MCRO(99) 010
DM 0010
DM 0020
Hauptprogramm
SBN(92) 010
Unterprogramm
RET(93)
END(01)
465
Impulsausgabe–Befehle Abschnitt 7-27
7-27 Impulsausgabe–Befehle
7-27-1 SET PULSES (Impulsausgabe) – PULS(65)
Kontaktplan–Symbol Datenbereiche
P: Schnittstellenspezifikation
PULS(65) @PULS(65)
000 oder 010
P P
C: Steuerdaten
C C
000 oder 001
N N
N: Anzahl der Impulse
Beschränkungen Dieser Befehl wird nur von den SPS CPM1A und CPM2A/CPM2C mit Transi–
storausgängen unterstützt.
N und N+1 müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können für N nicht verwendet werden.
Erläuterungen Über den PULS(65)–Befehl werden die Parameter der Impulsausgänge, die
später über SPED(64) oder ACC(––) aktiviert werden, festgelegt. Die Anzahl
der mit PULS(65) eingestellten Impulse wird in der Unabhängig–Betriebsart
ausgegeben.
Die Anzahl der Impulse kann nicht geändert werden, während Impulse ausge-
geben werden. Im allgemeinen sollte PULS(65) jedes Mal nur einmal ausge-
führt werden, wenn die Anzahl der Impulse spezifiziert werden muss; verwen-
den Sie flankengesteuerte Variation (@PULS(65)) oder eine Eingangsbedin-
gung, die nur für einen Zyklus aktiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-
formationen.
Schnittstellenbezeichner (P)
Über die Impuls–Ausgangspezifikation wird der Ausgang festgelegt. Die in C
und N festgelegten Parameter werden im nächsten SPED(64)– oder
ACC(––)–Befehl genutzt, in dem die gleiche Ausgangsspezifikation festgelegt
ist.
P Impulsausgabe–Positionen
000 Einphasiger Impulsausgang 0 ohne Beschleunigung oder Abbremsung (Ausgang
01000) oder Einphasiger Impulsausgang 0 mit trapezförmiger Beschleunigung und –ab-
bremsung (Ausgänge 01000 und 01001)
010 Einphasiger Impulsausgang 1 ohne Beschleunigung/Abbremsung (Ausgang 01001).
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
Steuerdaten (C)
Die Steuerdaten bestimmen die Art der Impulse (relativ oder absolut).
C Impulsart
000 Relative Impulsspezifikation
001 Absolute Impulsspezifikation (nur gültig, wenn das absolute Koordinatensystem verwen-
det wird.)
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
466
Impulsausgabe–Befehle Abschnitt 7-27
Nachdem PULS(65) ausgeführt wurde, wird die errechnete Anzahl der Bewe-
gungsimpulse nicht geändert, auch wenn INI(61) ausgeführt wird, um den Im-
pulsausgabe–Istwert zu ändern.
Eine Spezifikation, die die Bewegung außerhalb des erlaubten Istwertbereichs
ermöglicht (–16,777,215 bis 16.777.215), kann ohne Probleme spezifiziert wer-
den.
PULS(65) wird nicht ausgeführt und ein Fehler tritt auf (SR 25503 EIN), wenn
die errechnete Anzahl der Bewegungsimpulse 0 ist.
Arbeitet die Impulsausgabe in der Unabhängig–Betriebsart ohne Beschleuni-
gung oder Abbremsung und ist die Anzahl der Bewegungsimpulse negativ, wird
der Absolutwert der Anzahl der Bewegungsimpulse verwendet. (Beträgt zum
Beispiel die Anzahl der Bewegungsimpulse –500, wird ein Wert von 500 ver-
wendet.)
467
Impulsausgabe–Befehle Abschnitt 7-27
Beschränkungen Dieser Befehl wird nur von den SPS CPM1A und CPM2A/CPM2C mit Transi–
storausgängen unterstützt.
In der CPM1A: F muss ein BCD–Wert von #0000 oder #0002 bis #0200 sein.
In der CPM2A/CPM2C: F muss ein BCD–Wert von #0000 oder #0001 bis #1000
sein.
DM 6144 bis DM 6655 kann nicht für F genutzt werden.
Erläuterungen SPED(64) wird verwendet, um die Ausgabeimpulsfrequenz zu spezifizieren und
die Impulsausgabe über den spezifizierten Ausgang zu beginnen. Ist die Aus-
führungsbedingung FALSCH, wird der SPED(64)–Befehl nicht ausgeführt. Ist
die Ausführungsbedingung WAHR, spezifiziert SPED(64) die Impulsfrequenz F
des ausgewählten Ausgangs über P. M spezifiziert die Ausgabebetriebsart.
Im allgemeinen sollte SPED(64) jedes Mal nur einmal ausgeführt werden, wenn
die Frequenz spezifiziert werden muss; verwenden Sie flankengesteuerte Va-
riation (@SPED(64)) oder eine Eingangsbedingung, die nur für einen Zyklus ak-
tiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-
formationen.
Schnittstellenbezeichner (P)
Der Schnittstellenbezeichner spezifiziert den Ausgang, über den die Impulse
ausgegeben werden.
P Impulsausgabe–Positionen
000 Einphasiger Impulsausgang 0 ohne Beschleunigung/Abbremsung
(Ausgang 01000).
010 Einphasiger Impulsausgang 1 ohne Beschleunigung/Abbremsung
(Ausgang 01001).
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
Ausgabebetriebsart (M)
Der Wert von M legt die Ausgabebetriebsart fest.
M Impulsart
000 Unabhängig–Betriebsart
001 Ununterbrochen–Betriebsart
Allgemeiner Betrieb Die über SPED(64) gestartete Impulsausgabe arbeitet weiter, bis einer der
nachfolgend aufgeführten Punkte eintritt:
1, 2, 3... 1. Der INI(––)–Befehl wird mit C = 003 ausgeführt.
2. In der Unabhängig–Betriebsart wird die Anzahl der Ausgabeimpulse, die
mit PULS(65) spezifiziert wurden, erreicht. (PULS(65) vor SPED(64) aus-
führen.)
3. SPED(64) wird mit der Zielfrequenz F = #0000 erneut ausgeführt.
4. Die SPS wird in die PROGRAM–Betriebsart umgeschaltet.
Impulse können gleichzeitig und unabhängig von einander über zwei Ausgänge
ausgegeben werden.
Werden in der Unabhängig–Betriebsart Impulse ausgegeben, muss die Impul-
sanzahl vor der Ausführung des PULS–Befehls festgelegt werden. Die Anzahl
468
Impulsausgabe–Befehle Abschnitt 7-27
Zeit
Zeit
469
Impulsausgabe–Befehle Abschnitt 7-27
470
Impulsausgabe–Befehle Abschnitt 7-27
Wort Funktion
C Der Inhalt von C bestimmt die Beschleunigungs–/Abbremsrampe.
Während der Beschleunigung/Abbremsung wird die Ausgabefrequenz alle 10 ms um
den in C spezifizierten Betrag erhöht/reduziert. Der Wert von C+2 wird als BCD–Wert
von 0000 bis 1000 spezifiziert (0 Hz bis 10 kHz).
C+1 Der Inhalt von C+1 spezifiziert die Zielfrequenz.
Der Wert von C+1 wird als BCD–Wert von 0001 bis 1000 spezifiziert (10 Hz bis 10
kHz).
C+2 Der Inhalt von C+2 bestimmt die Anfangs–/Endfrequenz.
Der Wert von C+2 wird als BCD–Wert von 0000 bis 1000 spezifiziert (0 Hz bis 10
KHz).
Die Impulsausgabe beginnt, wenn ACC(––) ausgeführt wird und die Ausgangs-
frequenz jede 10 ms um den Betrag erhöht wird, der in Steuerwort C spezifiziert
ist. Wird die in C+1 spezifizierte Zielfrequenz erreicht, wird die Beschleunigung
abgebrochen, und die Impulsausgabe erfolgt weiter mit einer konstanten Fre-
quenz.
Die Impulsausgabe mit trapezförmiger Beschleunigung/Abbremsung kann
durch eine der folgenden Methoden gestoppt werden.
1, 2, 3... 1. Der INI(––)–Befehl wird mit C = 003 ausgeführt. (Unmittelbarer Halt.)
2. In der Unabhängig–Betriebsart wird die Anzahl der Ausgabeimpulsen, die
über PULS(65) spezifiziert wurden, erreicht. (Verlangsamt sich zu einem
Halt.)
3. ACC(––) wird mit der Einstellung der Zielfrequenz 0000 (in C+1) ausge-
führt.
a) Werden Impulse in der Unabhängig–Betriebsart ausgegeben, verlang-
samt sich die Ausgabe mit der Abbremsgeschwindigkeits–Einstellung,
die bei Beginn der Impulsausgabe definiert wurde, zu einem Halt.
b) Werden Impulse in der Ununterbrochen–Betriebsart ausgegeben, ver-
langsamt sich die Ausgabe mit der spezifizierten Abbremsgeschwindig-
keit zu einem Halt.
4. Umschaltung der SPS in die PROGRAM–Betriebsart. (Unmittelbarer Halt.)
Betrieb in der In der Unabhängig–Betriebsart wird nur die Anzahl der mit PULS(65) spezifi-
Unabhängig–Betriebsart zierten Ausgabeimpulse ausgegeben. Die Anzahl der Ausgabeimpulse muss
spezifiziert werden, indem PULS(65) vor ACC(––) ausgeführt wird. (Impulse
werden nicht ausgegeben, wenn die Anzahl der Ausgabeimpulse nicht zuvor
spezifiziert wurde.)
Impulsfrequenz
Zeit
Die Anzahl der Ausgabeimpulse muss erneut mit PULS(65) spezifiziert werden,
nachdem die Impulsausgabe gestoppt wurde.
In der Unabhängig–Betriebsart verlangsamt sich die Impulsausgabe an dem
Punkt, der durch die vorher eingestellte Anzahl der Ausgabeimpulsen und über
die Beschleunigungs–/Abbremsgeschwindigkeit festgelegt wird. Die Impuls-
471
Impulsausgabe–Befehle Abschnitt 7-27
ausgabe wird abgebrochen, nachdem die zuvor eingestellte Anzahl der Ausga-
beimpulse ausgegeben wurde.
Impulsfrequenz
Zeit
Überschreitet die Anzahl der Ausgabeimpulse, die für die Beschleunigung und
Abbremsung erforderlich ist (die benötigte Zeit, um die Zielfrequenz zu errei-
chen) die zuvor eingestellte Anzahl der Impulse, wird die Beschleunigung und
Abbremsung abgekürzt und die Impulsausgabe ist eher dreieckig statt trapez-
förmig.
Impulsfrequenz
Zeit
(Die Anzahl der Ausgabeimpulsen wird immer genau ausgegeben.)
Zeit
10 ms 10 ms
Zeit
472
Impulsausgabe–Befehle Abschnitt 7-27
473
Impulsausgabe–Befehle Abschnitt 7-27
Frequenz (F)
Der 4–stellige BCD–Wert von F spezifiziert die Impulsfrequenz in Einheiten von
0,1 Hz. Die Frequenz kann zwischen 0001 und 9999 (0,1 bis 999,9 Hz) spezifi-
ziert werden.
Tastverhältnis (D)
Der 4–stellige BCD–Wert von D spezifiziert das Tastverhältnis der Impulsaus-
gabe, d.h. der Prozentsatz der Zeit, in dem der Ausgang aktiviert ist. Das Tast-
verhältnis kann zwischen 0001 und 0100 (1% bis 100%) spezifiziert werden.
Das Tastverhältnis beträgt im nachfolgenden Diagramm 75%.
ton
t on
+ D (1% to 100%)
T
474
Impulsausgabe–Befehle Abschnitt 7-27
Skalierfaktor (C)
Der 4–stellige BCD–Wert von C spezifiziert den Skalierfaktor, mit dem die Ein-
gangsfrequenz multipliziert wird. Der Skalierfaktor kann zwischen 0001 und
1000 (1 bis 1.000%) eingestellt werden.
SPS–Konfigurations– Die Zählereingangs–Betriebsart für Eingänge 00000 und 00001 wird in Bits 00
einstellungen und bis 03 von DM 6642 eingestellt.
allgemeiner Betrieb
DM 6642, Bits 00 bis 03 Schnelle Zähler–Einstellung
0 Differential–Phasenbetrieb (5 kHz)
1 Impuls– + Richtungseingangs–Betriebsart (20 kHz)
2 Ab–/Aufwärts–Eingangsmodus (20 kHz)
4 Inkrementalmodus (20 kHz)
Eingangsfrequenzbereich
Der Eingangsfrequenzbereich für die synchronisierte Impulsausgabe wird in
475
Impulsausgabe–Befehle Abschnitt 7-27
Bits 08 bis 15 von DM 6642 eingestellt, wie es in der folgenden Tabelle gezeigt
wird.
DM 6642, Bits 08 bis 15 Funktion der Eingänge 00000 und 00001
02 Verwendet für eine synchronisierte Impulsausgabe (10 bis 500
Hz)
03 Verwendet für eine synchronisierte Impulsausgabe (20 Hz bis
1 kHz).
04 Verwendet für eine synchronisierte Impulsausgabe (300 Hz bis
20 kHz).
476
Spezielle Befehle Abschnitt 7-28
Kontaktplan–Symbol Datenbereiche
Beschränkungen DM 6649 bis DM 6655 können nicht für Meldungen benutzt werden.
Erläuterungen Ist die Ausführungsbedingung WAHR, liest MSG(46) acht Worte im erweiterten
ASCII–Codes von FM bis FM+7 und zeigt die Meldung auf der Programmierkon-
solenanzeige an. Die angezeigte Meldung ist bis zu 16 Zeichen lang, d.h. jedes
ASCII–Zeichen erfordert acht Bits. Sehen Sie Anhang G für weitere Informatio-
nen bezüglich des ASCII–Codes.
Werden nicht alle acht Worte für die Meldung benötigt, kann die Textausgabe zu
jedem Zeitpunkt durch Eingabe von “0D” begrenzt werden. Ist 0D Inhalt einer
Meldung, werden keine weiteren Worte gelesen und die Worte, die eigentlich für
die Meldung Verwendung finden würden, können für andere Zwecke benutzt
werden.
Meldungs–Puffer und Bis zu drei Meldungen können im Speicher gepuffert werden. Sie werden dann
Anzeigepriorität in der Reihenfolge ihres Eingangs wieder ausgegeben. Da es vorkommen kann,
dass in einem Zyklus mehr als drei MSG(46)–Befehle ausgeführt werden, exi-
stiert ein Reihenfolge–Schema. Abhängig von dem Speicherbereich, in dem die
Meldung gespeichert ist, wird eine Auswahl über welche dieser Meldungen ge-
puffert werden sollen, getroffen.
Die Anzeigenreihenfolge ist wie folgt:
LR > IR > HR > AR > TC > DM
Stammen alle Meldungen aus dem gleichen Speicherbereich, hat die
Meldung mit der niedrigsten Adresse die höchste Anzeigepriorität.
Bei der Verarbeitung indirekt adressierter Meldungen (d.h. *DM) besit-
zen die mit den niedrigen DM–Adressen höhere Priorität.
Löschen der Meldungen Um die Meldungen zu löschen muss FAL(06) ausgeführt werden. Die Meldun-
gen können auch über die Programmkonsole oder die Programmiersoftware
gelöscht werden.
Ändert sich der Dateninhalt, ändert sich auch unmittelbar die Anzeige.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
477
Spezielle Befehle Abschnitt 7-28
Beispiel Im folgenden Bespiel wird die Meldung bei über 00000 = EIN angezeigt. Sie wird
gelöscht, sobald 00001 gesetzt wird.
00000
Adresse Befehl Operanden
MSG(46)
00000 LD 00000
DM 0010
00001 MSG(46)
00001
FAL(06) 00 DM 0010
00002 LD 00001
00003 FAL(06) 00
DM–Inhalt ASCII
Äquivalent
DM 0010 4 1 4 2 A B
DM 0011 4 3 4 4 C D MSG
DM 0012 4 5 4 6 E F ABCDEFGHIJKLMNOP
DM 0013 4 7 4 8 G H
DM 0014 4 9 4 A I J
DM 0015 4 B 4 C K L
DM 0016 4 D 4 E M N
DM 0017 4 F 5 0 O P
Merker ER: St oder E ist nicht innerhalb des erlaubten Bereichs (IR 000 bis IR 019).
St ist größer als E (ist St > E, wird IORF(97) als NOP(00) behandelt).
478
Spezielle Befehle Abschnitt 7-28
Hinweis BCNT(67) ist ein Erweiterter Befehl in der CPM2A/CPM2C und SRM1(–V2).
Der Funktions–Code 67 ist werkseitig voreingestellt und kann, falls gewünscht,
geändert werden.
Merker ER: N ist keine BCD–Zahl bzw. N ist gleich 0; SB und SB+(N–1) befinden
sich nicht im gleichen Datenbereich.
Eine DM–Adresse wird für SB verwendet, aber SB bis SB+ (N–1) befin-
den sich nicht alle in Lese/Schreib–DM–Bereich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
479
Spezielle Befehle Abschnitt 7-28
Ist die Ausführungsbedingung FALSCH, wird FCS(––) nicht ausgeführt. Ist die
Ausführungsbedigung WAHR, berechnet FCS(––) die Rahmenprüfsumme des
spezifizierten Bereichs. Dazu werden die Inhalte der Worte R1 bis R1+N–1 bzw.
die Bytes in den Worten R1 bis R1+N–1 durch ein exklusives ODER miteinander
verknüpft. Der Rahmenprüfsummenwert (Hexadezimalzahll) wird anschlie-
ßend in das ASCII–Format konvertiert und über die Zielworte (D and D+1) aus-
gegeben.
Die Funktion der Bits des Wortes C ist im folgenden Diagramm dargestellt und
wird anschließend ausführlich erläutert:
15 14 13 12 11 00
C:
Anzahl der Bytes/Worte Die Anzahl der Bytes/Worte des Bereichs (N) wird in den drei äußerst rechten
Stellen von C spezifiziert und muss ein BCD–Wert zwischen 001 und 999 sein.
Berechungseinheiten Ist Bit 13 zurückgesetzt, wird die wortweise Rahmenprüfsumme berechnet. Ist
Bit 13 gesetzt, wird die byteweise Rahmenprüfsumme berechnet.
Bei der Spezifikation von Bytes kann der Bereich mit dem äußerst linken bzw.
rechten Byte von R1 beginnen. Das äußerste linke Byte von R1 wird ignoriert,
wenn Bit 12 gesetzt ist.
MSB LSB
R1 1 2
R1+1 3 4
R1+2 5 6
R1+3 7 8
Ist Bit 12 auf AUS gesetzt, werden die Bytes in der folgenden Reihenfolge XOR–
verknüpft: 1, 2, 3, 4, ....
Ist Bit 12 auf EIN gesetzt, werden die Bytes in der folgenden Reihenfolge XOR–
verknüpft: 2, 3, 4, 5, ....
ASCII–Konvertierung Das Ergebnis der byteweisen Rahmenprüfsummen–Berechnung ist ein 2–stel-
liger Hexadezimalwert, der anschließend in den entsprechenden 4–stelligen
ASCII–Wert konvertiert wird. Bei der wortweisen Rahmenprüfsummen–Be-
rechnung wird ein 4–stelliger Hexadezimalwert ausgegeben, der, wie nachste-
hend dargestellt, in den entsprechenden 8–stelligen ASCII–Wert konvertiert
wird.
Byte–Rahmenprüfsummen– Wort–Rahmenprüfsummen–
Wert Wert
4A F10B
D 3 4 4 1 D 4 6 3 1 D+1 3 0 4 2
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–
Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurde
überschritten).
480
Interrupt–Verarbeitungsbefehle Abschnitt 7-29
Beispiel Ist im folgenden Beispiel IR 00000 gesetzt, wird die Rahmenprüfsumme (0008)
für die 8 Worte von DM 0000 bis DM 0007 berechnet und der entsprechende
ASCII–Wert (30 30 30 38) in DM 0010 und DM 0011 gespeichert.
Rahmenprüfsum-
DM 0000 0001 men–Berechnung
DM 0001 0002 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
DM 0002 0003
DM 0003 0004 0 0 0 8
DM 0004 0005 Konver-
DM 0005 0006 tierung
in den
DM 0006 0007
DM 0011 3 0 3 0 DM 0010 3 0 3 8 ASCII–
DM 0007 0008 Code
7-29 Interrupt–Verarbeitungsbefehle
Dieser Abschnitt beschreibt die Funktion der Befehle INT(89) und STIM (69).
Sehen Sie zur Interrupt–Verarbeitung in den SPS–Systemen der Serien
CPM1/CPM1A, CPM2A/CPM2C oder SRM1(–V2) den in der folgenden Tabelle
gezeigten Abschnitt.
SPS Beschreibung
CPM1/CPM1A Sehen Sie Abschnitt 2-3 CPM1–/CPM1A–Interruptfunktionen.
CPM2A/CPM2C Sehen Sie Abschnitt 2-1 CPM2A–/CPM2C–Interruptfunktionen.
SRM1(-V2) Sehen Sie Abschnitt 2-4 SRM1–Interrupt–Funktionen.
Beschränkungen DM 6144 bis DM 6655 können nicht für C2 verwendet werden, wenn C1=002 ist.
Erläuterungen Ist die Auführungsbedingung FALSCH, wird INT(89) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, wird INT(89) zur Steuerung von Interrupts ver-
481
Interrupt–Verarbeitungsbefehle Abschnitt 7-29
wendet und führt eine der sieben, im folgenden gezeigten Funktionen aus, ab-
hängig vom Wert von C1.
C1 INT(89)–Funktion
000 Maskieren/demaskieren von eingangsgesteuerten Interrupts
001 Eingangsgesteuerte Interrupts löschen
002 Gegenwärtigen Maskenzustand von eingangsgesteuerten Interrupts
lesen
003 Abwärtszähler neu starten, eingangsgesteuerte Interrupts demaskie-
ren
004* Aufwärtszähler neu starten, eingangsgesteuerte Interrupts demaskie-
ren
100 Maskieren aller Interrupts
200 Löschen der Maskierung aller Interrupts
Eingangsgesteuerte Diese Funktion wird dazu verwendet, die Interrupt–Eingänge 00003 bis 00006
Interrupts zu maskieren und zu demaskieren. Zustände maskierter Eingänge werden ge-
maskieren/demaskieren speichert, aber nicht ausgeführt. Ist ein Eingang maskiert, wird dessen Inter-
(C1=000)
rupt–Unterprogramm gestartet, sobald das Zustandsbit demaskiert wird (es sei
denn, es wird zuvor durch Ausführung von INT(89) mit C1=001 gelöscht).
Setzen Sie das ensprechende Bit in C2 auf 0 oder 1, um einen eingangsgesteu-
erten Interrupt zu maskieren bzw. zu demaskieren. Bits 00 bis 03 entsprechen
den Eingängen 00003 bis 00006. Die Bits 04...15 sollten auf Null gesetzt wer-
den.
Wort C2–Bits: 3 2 1 0
482
Interrupt–Verarbeitungsbefehle Abschnitt 7-29
483
Interrupt–Verarbeitungsbefehle Abschnitt 7-29
(@)INT(89)
100
000
000
Wird ein Interrupt generiert, während Interrupts maskiert werden, wird die Inter-
rupt–Verarbeitung nicht ausgeführt, aber der Interrupt wird für den Eingang, den
Intervall–Zeitgeber und den Schnellen Zähler gespeichert. Die Interrupts wer-
den ausgeführt, sobald die Interrupts demaskiert sind.
Demaskieren von Interrupts (C1=200)
Verwenden Sie den INT(89)–Befehl mit C1=200 , um Interrupts wie folgt zu de-
maskieren:
(@)INT(89)
200
000
000
Hinweis STIM(69) ist ein Erweiterter Befehl in der CPM2A/CPM2C und SRM1(–V2). Der
Funktions–Code 69 ist werkseitig voreingestellt und kann, falls gewünscht, ge-
ändert werden.
Beschränkungen C1 muss auf 000, 003, 006 oder 010 gesetzt sein.
Ist C1=000 oder 003, stellt C3 eine Unterprogrammnummer (BCD–Wert) bis zu
0049 dar.
484
Interrupt–Verarbeitungsbefehle Abschnitt 7-29
Starten des Setzen Sie C1 auf 000, um den Wischer–Interrupt–Zeitgeber (einmalig) zu akti-
Interrupt–Zeitgebers vieren. Setzen Sie C1 auf 003, um den zeitgesteuerten Interrupt–Zeitgeber (pe-
(C1= 000 oder 003) riodisch) zu starten.
C2, das den Sollwert des Zeitgebers spezifiziert, kann als Konstante eingege-
ben werden oder als Adresse des ersten von zwei Worten, die den entsprechen-
den Sollwert enthalten. Die Einstellungen unterscheiden sich je nach ange-
wandter Methode geringfügig.
C2 = Konstante
Ist C2 eine Konstante, spezifiziert sie den Sollwert des Abwärtszählers als
BCD–Wert. Der Einstellbereich beträgt 0000 bis 9999 (0 bis 9.999 ms). (Die
Zeiteinheit beträgt 1 ms.)
C3 spezifiziert die Unterprogrammnummer: 0000 bis 0049.
C2 = Wortadresse
Ist C2 eine Wortadresse, enthält C2 den Sollwert des Abwärtszählers (BCD–
Wert, 0000 bis 9999).
Der Inhalt von C2+1 spezifiziert die Zeiteinheiten (BCD–Wert, 0005 bis 0320) in
Einheiten von 0,1 ms. so daß es Werte zwischen 0,5 bis 32 ms einnehmen kann.
Der Zeitgeber–Sollwert ist: (Inhalt von C2) Z (Inhalt von C2+1) ms Z 0,1 ms
C3 spezifiziert die Unterprogrammnummer: 0000 bis 0049.
Lesen des Setzen Sie C1 auf 006, um den Zeitgeber–Istwert zu lesen.
Zeitgebers–Istwertes C2 spezifiziert das erste von zwei Zielworten, die die Adressaten der Istwerte
(C1=006)
der Zeitgebers darstellen. C2 enthält den Zählwert des Abwärtszählers (BCD,
0000 bis 9999) und C2+1 die Zeiteinheiten (BCD in 0,1 ms–Einheiten).
C3 spezifiziert das Zielwort, in dem die Zeit gespeichert wird, die seit dem letzten
Dekrementieren des Zeitgebers vergangen ist (BCD in 0,1 ms–Schritten).
Hinweis Die Gesamtzeit, die seit dem Start des Zeitgebers verstrichen ist, berechnet
sich wie folgt:
((Inhalt von C2) Z (Inhalt von C2 +1)) + ((Inhalt von C3) Z 0,1 ms.
Anhalten des Zeitgebers Setzen Sie C1 auf 010, um den Zeitgeber anzuhalten. C2 und C3 haben in die-
(C=010) sem Zusammenhang keine Funktion und sollten auf 000 gesetzt werden.
Merker ER: C1 ist nicht auf 000, 003, 006 oder 010 gesetzt.
Eine spezifizierte Unterprogrammnummer liegt nicht zwischen 0000
und 0049.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des
*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-
reichsgrenze wurde überschritten).
Eine Datenbereichsgrenze wurde überschritten.
485
Kommunikationsbefehle Abschnitt 7-30
7-30 Kommunikationsbefehle
7-30-1 RECEIVE (Empfangen) – RXD(47)
Kontaktplan–Symbol Datenbereiche
D: Erstes Zielwort
RXD(47) @RXD(47)
IR, SR, AR, DM, HR, TC, LR
D D
C: Steuerwort
C C
#
N N
N: Byteanzahl
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
D und D+(N÷2)–1 müssen sich im gleichen Datenbereich befinden.
Der Datenwortbereich DM 6144 bis DM 6655 kann nicht für D oder N verwendet
werden.
N muss ein BCD–Wert zwischen #0000 und #0256 sein (#0000 bis #0061 in der
Host–Link–Betriebsart).
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird RXD(––) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, liest RXD(––) N Datenbytes, die über die im
Steuerwort spezifizierte Schnittstelle empfangen wurden und speichert die Da-
ten in den Worten D bis D+(N÷2)–1. Es können maximal 256 Datenbytes auf ein-
mal gelesen werden.
Werden weniger als N Bytes empfangen, wird nur die empfangene Anzahl von
Bytes gelesen.
Hinweis Sehen Sie Abschnitt 4-1 Kommunikationsfunktionen für weitere Informationen
über den RXD(47)–Befehl, Kommunikationseinstellungen, usw.
! Vorsicht Werden die empfangenen Daten nicht über den RXD(––)–Befehl gelesen, kann
die SPS nach Übertragung von 256 Bytes keine weiteren Daten mehr empfan-
gen. Nach dem Setzen des EMPFANG–ABGESCHLOSSEN–Merkers (AR
0806 für die RS–232C–Schnittstelle und AR 0814 für die Peripherieschnitt-
stelle) sollten die betreffenden Daten daher möglichst bald gelesen werden.
Steuerwort Der Wert des Steuerwortes spezifiziert die Schnittstelle, von der Daten gelesen,
sowie die Reihenfolge, in der die Daten in den Speicher übertragen werden.
Stellen: 3 2 1 0
Byte–Reihenfolge
0: Die höchstwertigen Bytes zuerst
1: Die geringstwertigen Bytes zuerst
Nicht verwendet (auf Null gesetzt)
Schnittstelle
0: RS-232C–Schnittstelle
1: Peripherieschnittstelle
486
Kommunikationsbefehle Abschnitt 7-30
Die Reihenfolge, in der die Daten in den Speicher übertragen werden, ist vom
Wert der Stelle 0 des Steuerwortes C abhängig. Die acht Datenbytes
12345678... werden folgendermaßen gespeichert:
Stelle 0 = 0 Stelle 0 = 1
MSB LSB MSB LSB
D 1 2 D 2 1
D+1 3 4 D+1 4 3
D+2 5 6 D+2 6 5
D+3 7 8 D+3 8 7
Hinweis Kommunikationsmerker und Zähler werden durch Spezifikation von 0000 für N
oder über die Schnittstellen–Rücksetzbits (SR 25208 für die Peripherie– und
SR 25209 für die RS–232C–Schnittstelle) zurückgesetzt.
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
S und S+(NP2)–1 müssen sich im gleichen Datenbereich befinden.
Der Datenwortbereich DM 6144 bis DM 6655 kann für S oder N nicht verwendet
werden.
N muss ein BCD–Wert zwischen #0000 und #0256 sein (#0000 bis #0061 in der
Host–Link–Betriebsart).
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird TXD(48) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, liest TXD(48) N Datenbytes von den Worten S
487
Kommunikationsbefehle Abschnitt 7-30
bis zu S+(N÷2)–1, konvertiert diese in ASCII und gibt die Daten über die spezifi-
zierte Schnittstelle aus. Die Funktionsweise von TXD(48) ist von der Betriebsart
(Host–Link bzw. R–232C) abhängig. Daher werden diese einzeln beschrieben.
Hinweis 1. Der Merker AR 0805 wird gesetzt, wenn die SPS Daten über die RS–232C–
Schnittstelle übertragen kann. Ist AR 0813 gesetzt, kann die SPS Daten
über die Peripheriegeräteschnittstelle übertragen.
2. Sehen Sie Abschnitt 4-1 Kommunikationsfunktionen für weitere Informatio-
nen über den RXD(47)–Befehl, Kommunikationseinstellungen, usw.
Host–Link–Betriebsart N muss ein BCD–Wert zwischen #0000 bis #0061 (d.h. bis zu 122 Bytes im
ASCII–Format) enthalten. Der Wert des Steuerwortes bestimmt die Schnitt-
stelle, über die Daten ausgegeben werden (siehe folgende Abbildung).
Stellen: 3 2 1 0
Die spezifizierte Byteanzahl wird aus S bis S+(N/2)–1 gelesen und über die spe-
zifizierte Schnittstelle übertragen. Die Bytes der nachfolgend dargestellten
Quelldaten werden in der Reihenfolge: 12345678... übertragen.
MSB LSB
S 1 2
S+1 3 4
S+2 5 6
S+3 7 8
Die folgende Abbildung zeigt das Format des von der CPM2A/CPM2C gesen-
deten Host–Link–Befehls (TXD). Präfixe und Suffixe, wie z.B. Teilnehmernum-
mern, Header und Rahmenprüfsumme, werden von der CPM2A/CPM2C auto-
matisch generiert.
@ E X ......... ∗ CR
RS-232C–Betriebsart N muss ein BCD–Wert zwischen #0000 und #0256 sein. Der Wert des Steuer-
wortes bestimmt die Schnittstelle, über die Daten ausgegeben, sowie die Rei-
henfolge, in der die Daten übertragen werden.
Steuerwort Der Wert des Steuerwortes spezifiziert die Schnittstelle, über die die Daten ge-
sendet sowie die Reihenfolge, in der die Daten übertragen werden.
Stellen: 3 2 1 0
Byte–Reihenfolge
0: Höchstwertige Bytes zuerst
1: Niederwertige Bytes zuerst
Schnittstelle
0: spezifiziert RS-232C.
1: spezifiziert Peripherieschnittstelle
488
Kommunikationsbefehle Abschnitt 7-30
Die spezifizierte Anzahl der Bytes wird aus S bis S+(N/2)–1 gelesen und über
die definierte Schnittstelle übertragen.
MSB LSB
S 1 2
S+1 3 4
S+2 5 6
S+3 7 8
Enthält Stelle 0 des Wortes C eine 0, werden die Bytes der zuvor dargestellten
Quelldaten in der Reihenfolge 12345678... übertragen.
Enthält Stelle 0 des Wortes C eine 1, werden die Bytes der zuvor dargestellten
Quelldaten in der Reihenfolge 21436587... übertragen.
Hinweis Werden Start– und Endecodes spezifiziert, muss die gesamte Datenlänge,
einschließlich der Start– und Endecodes, maximal 256 Bytes betragen.
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
N muss den Wert 000 besitzen.
S und S+4 müssen sich im gleichen Datenbereich befinden.
(S kann auf #0000 gesetzt werden, um die RS–232C–Schnittstelle auf die Vor-
gabewerte zurückzusetzen.)
STUP(––) kann nicht in einem Unterprogramm ausgeführt werden.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird STUP(––) nicht ausgeführt. Ist die
Ausführungsbedingung WAHR, ändert STUP(––) die Konfigurationseinstellun-
gen für die integrierte RS–232C–Schnittstelle. Die Einstellungen werden in der
SPS–Konfiguration geändert, aber sie werden nicht in Flash–Speicher ge-
489
Kommunikationsbefehle Abschnitt 7-30
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–
Wortes liegt nicht als BCD–Zahl vor oder die Datenbereichsgrenze
wurde überschritten).
Der Schnittstellenbezeichner (N) ist nicht 000.
In der CPM2A/CPM2C ist der Kommunikationsschalter auf der Vorder-
seite der CPU–Baugruppe eingeschaltet.
490
Kommunikationsbefehle Abschnitt 7-30
491
Kapitel 8
SPS–Betrieb und –Verarbeitungszeiten
Dieser Abschnitt beschreibt die interne Verarbeitung der CPM1, CPM1A, CPM2A, CPM2C und SRM1 (–V2) sowie die für
die Verarbeitung und Ausführung erforderliche Zeit. Sehen Sie diesen Abschnitt für eine Beschreibung des Zeitverhaltens der
SPS–Funktionen.
493
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Initialisierungsprozesse Initialisierung
Nein
Überprüfung OK?
Betriebs–
vorgänge
Ja
Zykluszeit–Überwachungszeit
Fehlermerker setzen und
einstellen
Anzeigen aktivieren
ALARM
(blinkt) Anwenderprogramm ausführen
FEHLER oder ALARM?
Nein Programm-
Programmende? ausführung
ERROR–LED
(leuchtet)
Ja
Zykluszeiteinstellung überprüfen
Zy-
Minimale klus-
Nein zeit
Zykluszeit einge-
stellt?
Ja Zykluszeit–
abarbeitung
Warten, bis Mindestzykluszeit
vergangen ist.
Zykluszeit berechnen
Hinweis Initialisierungsprozesse beinhalten das Löschen von IR–, SR– und AR–Berei-
chen, das Voreinstellen der Systemzeitgeber und das Überprüfen der E/A–Bau-
gruppen.
494
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
8-1-2 CPM1/CPM1A–Zykluszeit
Die Prozesse, die in einem einzelnen CPM1/CPM1A–Zyklus enthalten sind,
sind in der folgenden Tabelle dargestellt und ihre jeweiligen Verarbeitungszeiten
werden beschrieben.
Prozess Inhalt Erforderliche Zeit
Betriebsvorgang Einstellung des Zykluszeit–Watchdog–Zeitgebers, E/A– 0,6 ms
Bus–Überprüfung, Überprüfung des Programmspeicherbe-
reichs, Uhrauffrischung, Auffrischung der den neuen Funk-
tionen zugewiesenen Bits usw.
Programmausführung Ausführung des Anwenderprogramms Gesamtzeit für die Befehlsausführung
(diese ändert sich in Abhängigkeit von
dem Inhalt des Anwenderprogramms.)
Zykluszeit–Berechnung Bereitschaftsbetrieb (Stand–by) bis zur spezifizierten Zeit, Die Berechnung erfolgt fast unmittelbar
wenn die Mindest–Zykluszeit in der Konfiguration in DM (gilt nicht für den Bereitschaftsbetrieb).
6619 spezifiziert wird.
Berechnung der Zykluszeit.
E/A–Auffrischung Die Eingangsdaten der Eingangsbaugruppen werden in den CPU mit 10 Anschlüsse:0,06 ms
Eingangsbits gespeichert.Die Ausgangsdaten (Ergebnisse CPU mit 20 Anschlüsse:0,06 ms
der Programmausführung) werden in den Ausgangsbits der CPU mit 30 Anschlüsse:0,3 ms
Ausgangsbaugruppen gespeichert. Erweiterungs–E/A–Baugruppen
0,3 ms
Service der Peripherie- Bearbeitung der mit der Peripherieschnittstelle verbunde- min. 0,26 ms, 5% der Zykluszeit oder ein-
schnittstelle nen Geräte. stellbar bis zu 66 ms (sehen Sie den Hin-
weis)
Hinweis Die Prozentwerte können in der Konfiguration (DM 6617) geändert werden.
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den CPM1/CPM1A–Betrieb ist in der folgenden
Tabelle dargestellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entwe-
der die Zykluszeit verringert oder die Ansprechzeit mit Interrupt–Programmen
verbessert werden.
Zykluszeit Betriebsbedingungen
10 ms oder länger Bei Verwendung der Zeitgeber/Zähler TC 004 bis TC 127 wird TIMH(15) möglicherweise mit geringerer Präzi-
sion ausgeführt. (Bei Verwendung von TC 000 bis TC 003 ist ein normaler Betrieb gewährleistet).
20 ms oder länger Die Programmierung ist bei Verwendung des 0,02 s–Taktbits (SR 25401) möglicherweise ungenau.
100 ms oder länger TIM ist evtl. ungenau. Die Programmierung ist bei Verwendung des 0,1 s–Taktbits (SR 25500) möglicher-
weise ungenau. Ein Fehler (Zykluszeit–Überschreitung) wird generiert (SR 25309 wird gesetzt – sehen Sie
Hinweis 1).
120 ms oder länger Der Sollwert der Zyklus–Überwachungszeit wird überschritten und und ein Systemfehler (FALS 9F) generiert,
der den Betrieb stoppt. (Sehen Sie Hinweis 2).
200 ms oder länger Die Programmierung ist bei Verwendung des 0,2 s–Taktbits (SR 25501) möglicherweise ungenau.
495
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 ge–spei-
chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab und
stimmt möglicherweise nicht mit dem berechneten Wert überein.
8-1-3 E/A–Ansprechzeit
Die E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-
gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung und
Verarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabe
des Verarbeitungsergebnisses an ein Ausgangsbit) benötigt. Die E/A–An-
sprechzeit ist vom Zeitverhalten und von den Verarbeitungsbedingungen ab-
hängig.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend dar-
gestellt. Hierzu wird das folgende Beispielprogramm verwendet.
AUSGANG
Eingang
Ein–
gangs-
bit
E/A–Auffrischung Programmausführung und andere E/A–Auffrischung
Vorgänge (15 ms)
Ausgang–EIN–Verzögerung (10 ms)
Aus–
gangs–
anschluss Minimale–E/A–Ansprechzeit = 8+15+10 = 33 ms
496
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit ist gegeben, wenn die CPM1/CPM1A unmittelbar
nach der Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal emp-
fängt (sehen Sie die folgende Abbildung). In diesem Fall tritt eine Verzögerung
von ungefähr einem Zyklus auf.
Ein–
gangs–
an–
Eingang–EIN–Verzögerung (8 ms)
schluss
Ein–
gangs-
bit
Programmausführung Programmausführung
E/A–Auffrischung und andere E/A–Auffrischung und andere E/A–Auffrischung
Vorgänge (15 ms) Vorgänge (15 ms)
8-1-4 1:1–PC–Link–E/A–Ansprechzeit
Werden zwei CPM1/CPM1A–Steuerungen in der 1:1–Kommunikation verwen-
det, ist die E/A–Ansprechzeit die Zeit vom Anlegen eines Eingangssignals an
die eine CPM1/CPM1A bis zur Ausgabe eines Signals an die andere
CPM1/CPM1A.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend am
Beispiel der folgenden, auf dem Master und dem Slave ausgeführten Befehle
erläutert. In diesem Beispiel erfolgt die Kommunikation vom Master zum Slave.
Master Slave
497
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Eingangs– E/A–Auffrischung
anschluss
Eingang–EIN–Verzögerung (8 ms) Betriebssystem, Kommunikation usw.
Ein–
gangsbit
Master
CPU– Programm-
Verarbeitung ausführung
CPU– Programm-
Verarbeitung ausführung
Ausgang–EIN–Verzögerung
Slave Slave–Zykluszeit (15 ms) (10 ms)
Ausgangs–
anschluss
Min. E/A–Ansprechzeit = 8+10+12+15+10 = 55 ms
8-1-5 Interrupt–Verarbeitungszeit
In diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-
rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-
schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangs-
zustand erläutert. Diese Beschreibung gilt für Eingangs–Interrupts, Intervall–
Zeitgeber–Interrupts und Schneller–Zähler–Interrupts.
498
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
1, 2, 3... 1. Interrupt–Auslösung
2. Interrupt–EIN–Verzögerung
3. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
4. Wechsel zur Interrupt–Verarbeitung
5. Interrupt–Unterprogramm
6. Rückkehr in den Ausgangszustand
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-
gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss des
Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangszustand aufge-
führt.
Spezifikation Beschreibung Zeit
Interrupt–EIN–Verzögerung Verzögerungszeit vom Setzen des Interrupt–Eingangsbits bis zur Ausführung des 100 µs
Interrupts. Diese ist von weiteren Interrupts unabhängig.
Bereitschaft bis zum Zeit, in der Interrupts auf den Abschluss einer laufenden Verarbeitung warten. Dieses Sehen Sie
Abschluss der Interrupt–Maskie- ist bei der Ausführung einer Maskierungs– die nachfol-
rungsverarbeitung verarbeitung der Fall. Sehen Sie die nachfolgende, ausführlichere Beschreibung. gende Be-
schreibung.
Wechsel zur Interrupt– Dies ist die für den Wechsel zu der Interrupt–Verarbeitung erforderliche Zeit. 30 µs
Verarbeitung
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbro- 30 µs
chenen Programmabschnitt.
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interrupts
bleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeiten
maskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung des
Fehlerinhalts in der CPM1 bzw. bei der Rücksetzung eines Fehlers werden
Interrupts für maximal 100 µs bis zum Abschluss der Verarbeitung maskiert.
On–line–Editierung:
Erfolgt während des Betriebs eine On–line–Editierung, werden Interrupts
für maximal 600 ms (d.h., Editierung von DM 6144 bis DM 6655) maskiert.
Während dieses Vorgangs kann die Wartezeit der Systemverarbeitung bis
zu maximal 170 µs betragen.
Beispielberechnung In diesem Beispiel wird die Berechnung der Interrupt–Ansprechzeit (d.h. die Zeit
vom Setzen des Interrupt–Eingangs auf EIN bis zum Start der Interrupt–Verar-
beitungsroutine) bei der Verwendung von Interrupts unter den folgenden Bedin-
gungen erläutert.
Minimale Ansprechzeit
Interrupt–Eingang–EIN–Verzögerung: 100 µs
Interrupt–Maskierungs–Bereitschaftszeit: 0 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µs
Minimale Ansprechzeit: 130 µs
Maximale Ansprechzeit
(Außer für die On–line–Editierung von DM 6144 bis DM6655)
Interrupt–Eingang–EIN–Verzögerung: 100 µs
Interrupt–Maskierungs–Bereitschaftszeit: 170 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µs
Maximale Ansprechzeit: 300 µs
Zusätzlich zu der im Beispiel berechneten Ansprechzeit muss die für die Aus-
führung des Interrupt–Unterprogramms erforderliche Zeit sowie eine Zeit von
30 µs für die Rückkehr in den unterbrochenen Programmabschnitt berücksich-
tigt werden.
499
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
500
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Code AWL–Code EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
15 TIMH Rückset- IL JMP
zung
19,0 Reguläre Ausführung, Konstante für Sollwert 25,7
5, 28,4
8, 15,8
5,8
20,2 Interrupt–Ausführung, Konstante für Sollwert
19,0 Normale Ausführung, :DM für Sollwert 41,2
, 43,6
3,6 15,8
5,8
20,2 Interrupt–Ausführung, :DM für Sollwert
16
6 WSFT
S 29,2 Mit 1 Wort–Schieberegister 5,6
40,7 Mit 10 Worte–Schieberegister
1,42 ms Mit 1024 Worte–Schieberegister bei Verwendung von
:DM
17 ASFT
S 29,6 Verschieben eines Wortes 5,6
50,2 Verschieben von 10 Worten
1,76 ms Verschieben von 1023 Worten mit :DM
20
0 CMP
C 15,8 Vergleichen einer Konstanten mit einem Wort 5,6
17,2 Vergleichen von zwei Worten
46,3 Vergleichen von zwei :DM
21 MOV
O 16,3 Übertragen einer Konstanten auf ein Wort 5,6
17,7 Übertragen eines Wortes auf ein anderes Wort
45,5 Übertragen von :DM auf :DM
22 MVN 16,4 Übertragen einer Konstanten auf ein Wort 5,6
17,5 Übertragen eines Wortes auf ein anderes Wort
45,7 Übertragen von :DM auf :DM
23
3 BIN 31,6 Konvertieren eines Wortes in ein Wort 5,6
45,7 Konvertieren von :DM auf :DM
24 BCD
C 29,5 Konvertieren eines Wortes in ein Wort 5,6
57,3 Konvertieren von :DM auf :DM
25
5 ASL
S 17,3 Verschieben eines Wortes 5,5
31,3 Verschieben von :DM
26
6 ASR
S 16,9 Verschieben eines Wortes 5,5
31,1 Verschieben von :DM
27 ROL
O 14,5 Rotieren eines Wortes 5,5
28,5 Rotieren von :DM
28
8 ROR
O 14,5 Rotieren eines Wortes 5,5
28,5 Rotieren von :DM
29
9 COM
CO 18,1 Invertieren eines Wortes 5,5
32,1 Invertieren von :DM
30 ADD 29,5 Konstante + Wort → Wort 5,6
30,9 Wort + Wort → Wort
72,7 :DM + :DM → :DM
31
3 SUB
SU 29,3 Konstante + Wort → Wort 5,6
30,5 Wort – Wort → Wort
72,5 :DM – :DM → :DM
32
3 MUL
U 49,1 Konstante Wort → Wort 5,6
50,5 Wort Wort → Wort
95,1 :DM :DM → :DM
33 DIV 47,7 Wort ÷ Konstante → Wort 5,6
50,9 Wort ÷ Wort → Wort
94,3 :DM ÷ :DM → :DM
34
3 ANDW 27,1 Konstante Wort → Wort 5,6
28,7 Wort Wort → Wort
70,7 :DM :DM → :DM
35 ORW
O 27,1 Konstante V Wort → Wort 5,6
28,7 Word V word → word
70,7 :DM V :DM → :DM
36 XORW
O 27,1 Konstante V Wort → Wort 5,6
28,7 Wort V Wort → Wort
70,5 :DM V :DM → :DM
501
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Code AWL–Code EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
37
3 XNRW 27,0 Konstante V Wort → Wort 5,6
28,6 Wort V Wort → Wort
70,5 :DM V :DM → :DM
38 INC
C 17,9 Inkrementieren eines Wortes 5,5
31,9 Inkrementieren von :DM
39 DEC
C 18,3 Dekrementieren eines Wortes 5,5
32,3 Dekrementieren von :DM
40 STC 6,3 Beliebig
g 5,5
41 CLC 6,3 5,5
46
6 MSG
SG 21,5 Meldung in Worten 5,5
35,7 Meldung in :DM
50 ADB 30,5 Konstante + Wort → Wort 5,6
32,1 Wort + Wort → Wort
73,9 :DM + :DM → :DM
51
5 SBB
S 30,9 Konstante – Wort → Wort 5,6
32,7 Wort – Wort → Wort
74,5 :DM – :DM → :DM
52
5 MLB 34,7 Konstante Wort → Wort 5,6
36,3 Wort Wort → Wort
80,7 :DM :DM → :DM
53 DVB 35,1 Wort ÷ Konstante → Wort 5,6
36,7 Wort ÷ Wort → Wort
81,1 :DM ÷ :DM → :DM
54
5 ADDL 48,9 Wort + Wort → Wort 5,6
94,7 :DM + :DM → :DM
55 SUBL
SU 48,9 Wort – Wort → Wort 5,6
94,7 :DM – :DM → :DM
56 MULL
U 138,7 Wort Wort → Wort 5,6
184,3 :DM :DM → :DM
57
5 DIVL 136,7 Wort ÷ Wort → Wort 5,6
181,3 :DM ÷ :DM → :DM
60 CMPL
C 30,4 Vergleichen von Worten 5,6
60,8 Vergleichen von :DM
61
6 INI 112,0 Ausführen des wortweisen Vergleichs 5,6
126,0 Ausführen des Vergleichs über:DM
48,0 Ende des wortweisen Vergleichs
48,0 Ende des Vergleichs über :DM
120,0 Istwert–Änderung über ein Wort
128,0 Istwert–Änderung über :DM
46,0 Ende der wortweisen Impulsausgabe
60,0 Ende der Impulsausgabe über :DM
62
6 PRV 62,2 Ausgangszuweisung über ein Wort 5,6
78,0 Ausgangszuweisung über :DM
502
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Code AWL–Code EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
63 CTBL
C 106,3 Zieltabelle mit einem Ziel in Wort und Start 5,6
120,3 Zieltabelle mit einem Ziel in :DM und Start
775,5 Zieltabelle mit 16 Zielen in Worten und Start
799,5 Zieltabelle mit 16 Zielen in :DM und Start
711,5 Bereichstabelle über Wort und Start
722,5 Bereichstabelle in :DM und Start
91,9 Zielltabelle mit 1 Ziel in Worten
106,3 Zieltabelle mit einem Ziel in :DM
693,5 Zieltabelle mit 16 Zielen in Worten
709,5 Zieltabelle mit 16 Zielen in :DM
607,5 Bereichstabelle in Worten
621,5 Bereichstabelle in :DM
64
6 SPED
S 73,6 Spezifizieren einer Konstante 5,6
75,0 Spezifizieren eines Wortes
88,8 Spezifizieren :DM 5,6
65 PULS
U S 62,0 Spezifizieren eines Wortes 5,6
78,0 Spezifizieren :DM
67
6 BCNT
C 52,6 Zählen eines Wortes 5,6
4,08 ms Zählen von 6656 Worten über :DM
68 BCMP 79,6 Vergleichen einer Konstanten, Ergebnisse an ein 5,6
Wort
80,8 Vergleichen eines Wortes, Ergebnisse an ein Wort
123,2 Vergleichen von :DM, Ergebnisse an :DM
69 STIM
S 47,5 Start des wortweise spezifizierten Intervall–Interrupts 5,6
58,7 :DM-weise spezifizierten Monoflop–Inter-
vall–Interrupt starten
47,9 Start des wortweise spezifizierten periodischen Inter-
rupts
59,1 :DM-weise periodischen Interrupt starten
33,5 Lesen des wortweise spezifizierten Zeitgebers
63,5 :DM–weise spezifizierten Zeitgeber lesen
25,7 Stop des wortweise spezifizierten Zeitgebers
54,1 :DM–weise spezifizierten Zeitgeber anhalten
70
0 XFER 45,5 Übertragen einer Konstanten auf ein Wort 5,6
47,1 Übertragen eines Wortes auf ein Wort
1,78 ms Übertragen von 1024 Worten mit Hilfe von :DM
71 BSET
S 28,1 Kopieren einer Konstanten in ein Wort 5,6
38,3 Kopieren einer Wortkonstante in 10 Worte
1,12 ms Kopieren von :DM in 1024 Worte
73
3 XCHG
C G 30,5 Wort → Wort 5,6
59,1 :DM → :DM
74 SLD
S 25,9 Verschieben eines Wortes 5,6
51,7 Verschieben von 10 Worten
3,02 ms Verschieben von 1024 Worten mit Hilfe von :DM
75
5 SRD
S 25,9 Verschieben eines Wortes 5,6
51,7 Verschieben von 10 Worten
3,02 ms Verschieben von 1024 Worten mit Hilfe von :DM
76
6 MLPX 47,7 Decodierung eines Wortes in ein Wort 5,6
92,7 Decodieren von :DM auf :DM
77 DMPX 59,5 Kodieren eines Wortes in ein Wort 5,6
95,5 Kodieren von :DM auf :DM
78
8 SDEC
S C 51,1 Dekodieren eines Wortes in ein Wort 5,6
96,3 Dekodieren von :DM auf :DM
503
CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-1
Code AWL–Code EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
80 DIST
S 39,1 Kopieren einer Konstanten in ein Wort + ein Wort 5,6
40,9 Kopieren eines Wortes in ein Wort + ein Wort
84,7 Kopieren von :DM auf :DM +:DM
63,4 Kopieren einer Konstanten auf einen Stack
65,0 Kopieren eines Wortes auf einen Stack
109,6 Kopieren von :DM auf einen Stack über :DM
81
8 COLL
CO 42,6 Kopieren einer Konstanten + ein Wort in ein Wort 5,6
43,6 Kopieren eines Wortes + ein Wort in ein Wort
83,4 Kopieren von :DM + :DM auf :DM
78,0 Kopieren eines Wortes + Konstante auf einen FIFO–
Stack
79,2 Kopieren eines Wortes + Wort auf einen FIFO–Stack
1,76 ms Kopieren des :DM + :DM auf einen FIFO–Stapel
über :DM
66,8 Kopieren eines Wortes + Konstante auf einen LIFO–
Stack
68,0 Kopieren eines Wortes + Wort auf einen LIFO–Stack
112,0 Kopieren des :DM + :DM auf einen LIFO–Stapel
über :DM
82
8 MOVB
O 32,5 Übertragen einer Konstanten auf ein Wort 5,6
37,5 Übertragen eines Wortes auf ein anderes Wort
79,1 Übertragen von :DM auf :DM
83 MOVD
O 28,3 Übertragen einer Konstanten auf ein Wort 5,6
33,3 Übertragen eines Wortes auf ein anderes Wort
75,5 Übertragen von :DM auf :DM
84
8 SFTR
S 39,3 Verschieben eines Wortes 5,6
52,9 Verschieben von 10 Worten
1,42 ms Verschieben von 1024 Worten mit Hilfe von :DM
85 TCMP 57,7 Vergleichen einer Konstanten mit Worten der spezifi- 5,6
zierten Tabelle
58,9 Vergleichen eines Wortes mit Worten der spezifizier-
ten Tabelle
101,9 Vergleichen von :DM auf :DM der spezifiziertenTa-
belle
86 ASC
SC 56,7 Wort → Wort 5,6
103,9 :DM → :DM
89 INT 32,3 Wortweise Maskierung 5,6
46,3 Einstellen von Masken über :DM
29,1 Wortweise Interrupt–Rücksetzung
43,1 Interrupts löschen über :DM
27,3 Wortweises Auslesen des Maskierungszustands
41,5 Maskierungsstatus lesen über :DM
29,7 Wortweise Änderung des Zähler–Sollwerts
43,7 Zähler–Sollwert ändern über :DM
15,3 Wortweise Maskierung aller Interrupts
15,3 Maskieren aller Interrupts über :DM
15,9 Wortweise Rücksetzung aller Interrupts
15,9 Rücksetzen aller Interrupts über DM
91 SBS 36,6 Beliebig
g 5,5
92 SBN 1,7 1,7
93 RET 15,0 2,5
97
9 IORF
O 40,0 Auffrischen von IR 000 6,0
142,6 Auffrischen eines Eingangswortes
135,4 Auffrischen eines Ausgangswortes
99 MCRO
C O 74,0 Mit wortweise spezifizierten E/A–Operanden 5,6
116,4 Mit:DM–weise spezifizierten E/A–Operanden
504
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den CPM2A/CPM2C–Betrieb ist in der folgenden
Tabelle dargestellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entwe-
der die Zykluszeit verringert oder die Ansprechzeit mit Interrupt–Programmen
verbessert werden.
Zykluszeit Betriebsbedingungen
1 ms oder länger TMHH(––) ist evtl. ungenau, wenn TC 000 bis TC 003 oder TC 008 bis TC 255 verwendet wird (die Funktion
ist bei TC 004 bis TC 007 normal).
10 ms oder länger Bei Verwendung von TC 004 bis TC 255 wird TIMH(15) möglicherweise mit geringerer Präzision ausgeführt.
(Bei Verwendung von TC 000 bis TC 003 ist ein normaler Betrieb gewährleistet).
20 ms oder länger Die Programmierung ist bei Verwendung des 0,02 s–Taktbits (SR 25401) möglicherweise ungenau.
100 ms oder länger TIM ist evtl. ungenau. Die Programmierung ist bei Verwendung des 0,1 s–Taktbits (SR 25500) möglicher-
weise ungenau. Ein Fehler (Zykluszeit–Überschreitung) wird generiert (SR 25309 wird gesetzt).
120 ms oder länger Der Sollwert der Überwachungszeit wird überschritten und und ein Systemfehler (FALS 9F) generiert, der den
Betrieb stoppt.
200 ms oder länger Die Programmierung ist bei Verwendung des 0,2 s–Taktbits (SR 25501) möglicherweise ungenau.
Berechnung der Zykluszeit In diesem Beispiel wird die Zykluszeit für eine CPM2A/CPM2C mit 30 Ein–/Aus-
gängen (18 Eingänge und 12 Ausgänge) berechnet. Folgende E/A–Konfigura-
tion wird verwendet:
18 Eingänge: 2 Worte (00000 bis 00011, 00100 bis 00105)
12 Ausgänge: 2 Worte (01000 bis 01007, 01100 bis 01103)
Weiterhin werden folgende Betriebsbedingungen vorausgesetzt:
Programmspeicher: 500 Befehle (nur bestehend aus LD und OUT)
Zykluszeit: Variabel (kein Minimum spezifiziert)
505
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 gespei-
chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab und
stimmt möglicherweise nicht mit dem berechneten Wert überein.
8-2-2 E/A–Ansprechzeit
Die E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-
gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung und
Verarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabe
des Verarbeitungsergebnisses an ein Ausgangsbit) benötigt. Die E/A–An-
sprechzeit ist vom Zeitverhalten und den Verarbeitungsbedingungen abhängig.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend dar-
gestellt. Hierzu wird das folgende Beispielprogramm verwendet.
AUSGANG
Eingang
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit ist gegeben, wenn die CPM2A/CPM2C unmittelbar
nach der Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal emp-
506
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
fängt (sehen Sie die folgende Abbildung). In diesem Fall tritt eine Verzögerung
von ungefähr einem Zyklus auf.
Ein-
gangs-
an- Eingang–EIN–Verzögerung (10 ms)
schluss
Ein–
gangs-
bit
Programmausführung Programmausführung
E/A–Auffrischung und andere E/A–Auffrischung und andere E/A–Auffrischung
Vorgänge (15 ms) Vorgänge (15 ms)
8-2-3 1:1–PC–Link–E/A–Ansprechzeit
Sind zwei CPM2A/CPM2C–Steuerungen 1:1 verbunden, ist die E/A–Ansprech-
zeit die Zeit vom Anlegen eines Eingangssignals an die eine CPM2A/CPM2C
bis zur Ausgabe eines Signals an die andere CPM2A/CPM2C.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend am
Beispiel der folgenden auf dem Master und dem Slave ausgeführten Befehle er-
läutert. In diesem Beispiel erfolgt die Kommunikation vom Master zum Slave.
Master Slave
507
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Eingangs– E/A–Auffrischung
anschluss
Eingang–EIN–Verzögerung (10 ms) Betriebsvorgänge, Kommunika-
Ein– tions–Service, etc.
gangs-
Master bit
CPU– Programm-
Verarbeitung ausführung
CPU– Programm-
Verarbeitung ausführung
Ausgang–EIN–Verzögerung
Slave Slave–Zykluszeit (15 ms) (15 ms)
Ausgangs-
anschluss
Min. E/A–Ansprechzeit = 10+10+12+15+15 = 62 ms
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit der CPM2A/CPM2C ist unter den folgenden Bedin-
gungen gegeben:
1, 2, 3... 1. Die CPM2A/CPM2C empfängt ein Eingangssignal unmittelbar nach der
Eingangsauffrischung innerhalb des Zyklus.
2. Die Master/Slave–Übertragung beginnt mit einer Verzögerung.
3. Die Übertragung ist unmittelbar nachdem der Slave den Kommunikations–
Service ausgeführt hat, abgeschlossen.
Maximale E/A–Ansprechzeit Eingang–EIN–Ansprechzeit + Zykluszeit des Masters × 2 + Übertragungszeit ×
3 + Zykluszeit des Slaves × 2 + Ausgang–EIN–Ansprechzeit
Eingangs–
anschluss E/A–Auffrischung
Eingang–EIN–Ansprechzeit
Service der Peripherieschnittstelle
Master
Ein–
gangs-
bit
CPU– Progr.– Progr.– Progr.– Progr.–
Verarbeitung ausführ. ausführ. ausführ. ausführ.
Master–Zyklus 1 (Datenübertragung entsprechend Eingang)
Übertra- Übertra-
Master ⇒ Slave gungs- Slave ⇒ Master gungs- Master ⇒ Slave Übertragungszeit
zeit zeit
Slave–Zyklus 1 Ausgang–AUS–
Slave–Zyklus 2 Slave–Zykl. 3 Ansprechzeit
Slave
Ausgangs-
anschluss
8-2-4 Interrupt–Verarbeitungszeit
In diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-
rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-
schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangs-
zustand erläutert. Diese Beschreibung gilt für Eingangs–Interrupts, Intervall–
Zeitgeber–Interrupts und Schnelle Zähler–Interrupts.
1, 2, 3... 1. Interrupt–Auslösung
508
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
2. Interrupt–EIN–Verzögerung
3. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
4. Wechsel zur Interrupt–Verarbeitung
5. Interrupt–Unterprogramm (nur CPM1A/CPM2A/CPM2C)
6. Rückkehr in den Ausgangszustand
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-
gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss des
Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangszustand aufge-
führt.
Spezifikation Beschreibung Zeit
Interrupt–EIN– Verzögerungszeit vom Setzen des Interrupt–Eingangs bis zur Ausführung des Inter- 100 µs
Verzögerung rupts. Diese Verzögerung wirkt sich nicht auf andere Interrupts aus.
Bereitschaft bis zum Wird ein Prozess, der den Interrupt deaktiviert (maskiert), ausgeführt, ist dies die erfor- Sehen Sie
Abschluss der Interrupt– derliche Zeit, damit dieser Prozess beendet wird. die nachfol-
Maskierungsverarbeitung gende Be-
schreibung.
Wechsel zur Interrupt–Verar- Dies ist die für den Wechsel zur Interrupt–Verarbeitung erforderliche Zeit. 30 µs
beitung
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbroche- 30 µs
nen Programmabschnitt.
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interrupts
bleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeiten
maskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung des
Fehlerinhalts in der SPS bzw. bei der Rücksetzung eines Fehlers werden
Interrupts für maximal 100 µs maskiert.
On–line–Editierung:
Der Vorgang wird unterbrochen und Interrupts werden für bis zu 600 ms
maskiert (für DM 6144 bis DM 6655), wenn die On–line–Editierung ausge-
führt wird oder die Einstellungen mit STUP(––) während des Vorgangs ge-
ändert werden. Das Programm oder die SPS–Konfiguration kann während
dieser Verzögerung überschrieben werden.
Zusätzlich zur On–line–Editierungs–Verzögerung können Interrupts für bis
zu 170 µs für die Systemverarbeitung maskiert werden.
Beispielberechnung In diesem Beispiel wird die Berechnung der Interrupt–Ansprechzeit (d.h. die Zeit
vom Setzen des Interrupt–Eingangs auf EIN bis zum Start der Interrupt–Verar-
beitungsroutine) bei der Verwendung von Interrupts unter den folgenden Bedin-
gungen erläutert.
Minimale Ansprechzeit
Interrupt–Eingang–EIN–Verzögerung: 100 µs
Interrupt–Maskierungs–Bereitschaftszeit: 0 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µs
Minimale Ansprechzeit: 130 µs
Maximale Ansprechzeit
(außer für die On–line–Editierung von DM 6144 bis DM 6655)
Interrupt–Eingang–EIN–Verzögerung: 100 µs
Interrupt–Maskierungs–Bereitschaftszeit: 170 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µs
Maximale Ansprechzeit: 300 µs
Zusätzlich zu der im Beispiel berechneten Ansprechzeit muss die für die Aus-
führung des Interrupt–Unterprogrammes erforderliche Zeit sowie eine Zeit von
30 µs für die Rückkehr in den unterbrochenen Programmabschnitt berücksich-
tigt werden.
509
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
510
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
15 TIMH Rückset- IL JMP
zung
9,0 Reguläre Ausführung, Konstante für Sollwert 13,0 12,6 6,1
9,6 Interrupt–Ausführung, Konstante für Sollwert 14,4 14,0 7,5
9,8 Normale Ausführung, :DM für Sollwert 20,8 20,5 6,1
10,7 Interrupt–Ausführung, :DM für Sollwert 22,2 22,0 7,5
16
6 WSFT
S 14,0 Mit 1 Wort–Schieberegister 2,6
18,6 Mit 10 Worte–Schieberegister
1,15 ms Mit 2,048 Worte–Schieberegister unter Verwendung
von :DM
17 ASFT
S 13,0 Verschieben eines Wortes 2,6
,6
22,9 Verschieben von 10 Worten
1,51 ms Verschieben von 2,048 Worten über :DM
20
0 CMP
C 7,0 Vergleichen einer Konstanten mit einer Konstanten 2,6
8,3 Vergleichen von zwei Worten
12,1 Vergleichen von zwei :DM
21 MOV
O 7,8 Übertragen einer Konstanten auf ein Wort 2,6
8,4 Übertragen eines Wort auf ein anderes Wort
22,8 Übertragen von :DM auf :DM
22 MVN 7,9 Übertragen einer Konstanten auf ein Wort 2,6
8,4 Übertragen eines Wortes auf ein anderes Wort
22,8 Übertragen von :DM auf :DM
23
3 BIN 15,8 Konvertieren eines Wortes in ein Wort 2,6
30,3 Konvertieren von :DM auf :DM
24 BCD
C 14,6 Konvertieren eines Wortes in ein Wort 2,6
29,0 Konvertieren von :DM auf :DM
25
5 ASL
S 8,6 Verschieben eines Wortes 2,5
15,8 Verschieben von :DM
26
6 ASR
S 8,4 Verschieben eines Wortes 2,5
15,6 Verschieben von :DM
27 ROL
O 7,3 Rotieren eines Wortes 2,5
14,5 Rotieren von :DM
28
8 ROR
O 7,3 Rotieren eines Wortes 2,5
,5
14,5 Rotieren von :DM
29
9 COM
CO 8,9 Invertieren eines Wortes 2,5
16,1 Invertieren von :DM
30 ADD 14,7 Konstante + Konstante → Wort 2,6
16,0 Wort + Wort → Wort
37,6 :DM + :DM → :DM
31
3 SUB
SU 14,6 Konstante – Konstante → Wort 2,6
15,8 Wort – Wort → Wort
37,5 :DM – :DM → :DM
32
3 MUL
U 26,8 Konstante Konstante ” Wort 2,6
28,3 Wort Wort → Wort
51,0 :DM :DM → :DM
33 DIV 25,9 Konstante ÷ Konstante → Wort 2,6
27,5 Wort ÷ Wort → Wort
50,1 :DM ÷ :DM → :DM
34
3 ANDW 12,3 Konstante Konstante → Wort 2,6
13,8 Wort Wort → Wort
35,4 :DM :DM → :DM
35 ORW
O 12,3 Konstante V Konstante → Wort 2,6
13,8 Word V word → word
35,4 :DM V :DM → :DM
36 XORW
O 12,3 Konstante V Konstante → Wort 2,6
13,8 Wort V Wort → Wort
35,4 :DM V :DM → :DM
511
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
37
3 XNRW 12,3 Konstante V Konstante→ Wort 2,6
13,8 Wort V Wort → Wort
35,5 :DM V :DM → :DM
38 INC
C 8,8 Inkrementieren eines Wortes 2,5
15,9 Inkrementieren von :DM
39 DEC
C 8,9 Dekrementieren eines Wortes 2,5
16,1 Dekrementieren von :DM
40 STC 3,0 Beliebig
g 2,5
41 CLC 3,0 2,5
46
6 MSG
SG 9,9 Meldung in Worten 2,5
17,8 Meldung in :DM
47 RXD 71,9 Wortspezifikation, 1 Byte–Eingabe 2,6
,6
314,5 :DM Spezifikation, 256 Byte–Eingabe
48
8 TXD 32,4 Wortspezifikation, 1 Byte–Eingabe, RS–232C 2,6
,6
264,5 :DM–Spezifikation, 256 Byte–Eingabe, RS–232C
27,7 Wortspezifikation, 1 Byte–Eingabe, Host–Link
42,2 :DM–Spezifikation, 256 Byte–Eingabe, Host–Link
50 ADB 14,1 Konstante + Konstante → Wort 2,6
15,6 Wort + Wort → Wort
37,4 :DM + :DM → :DM
51
5 SBB
S 14,4 Konstante – Konstante → Wort 2,6
15,9 Wort – Wort → Wort
37,7 :DM – :DM → :DM
52
5 MLB 16,8 Konstante Konstante → Wort 2,6
18,5 Wort Wort ” Wort
41,2 :DM :DM → :DM
53 DVB 16,9 Konstante ÷ Konstante → Wort 2,6
18,6 Wort ÷ Wort → Wort
41,3 :DM ÷ :DM → :DM
54
5 ADDL 25,3 Wort + Wort → Wort 2,6
48,6 :DM + :DM → :DM
55 SUBL
SU 25,3 Wort – Wort → Wort 2,6
48,6 :DM – :DM → :DM
56 MULL
U 79,1 Wort Wort → Wort 2,6
102,1 :DM :DM → :DM
57
5 DIVL 73,9 Wort ÷ Wort → Wort 2,6
98,6 :DM ÷ :DM → :DM
58 BINL 23,9 Konvertieren von Wortdaten in ein Wort 2,6
,6
38,5 Konvertieren von :DM auf :DM
59 BCDL
C 19,1 Konvertieren von Wortdaten in ein Wort 2,6
,6
33,7 Konvertieren von :DM auf :DM
60 CMPL
C 14,8 Vergleichen von Worten 2,6
,6
30,6 Vergleichen von :DM
512
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
61
6 INI 68,8 Schnellen Zähler–Vergleich starten 2,6
,6
12,0 Schnellen Zähler–Vergleich beenden
43,3 Spezifizieren einer Konstanten bei der Änderung ei-
nes Schnellen Zähler–Istwertes
51,8 Spezifizieren :DM bei der Änderung eines Schnellen
Zähler–Istwertes
42,8 Spezifizieren des Inkrementalmodus über Konstante
50,8 Spezifizieren des Inkrementalmodus über :DM
60,1 Impulsausgabe beenden
42,7 Spezifizieren einer Konstanten bei der Änderung des
Impulsausgabe–Istwertes
50,7 Spezifizieren von :DM bei der Änderung eines Im-
pulsausgabe–Istwertes
17,8 Synchronisierte Funktion des schnellen Zählers be-
enden
20,0 Spezifizieren einer Konstanten bei der Änderung ei-
nes Interrupt–Zähler–Istwertes
27,6 Spezifizieren von :DM bei der Änderung eines Inter-
rupt–Zähler–Istwertes
62
6 PRV 36,9 Schnellen Zähler–Istwert über Wort lesen 2,6
,6
44,7 Lesen des Schnellen Zähler–Istwertes :DM
36,6 Spezifizieren des Inkrementalmodus über Wort
44,3 Spezifizieren des Inkrementalmodus über :DM
38,5 Spezifizieren eines Wortes bei der Verwendung der
synchronisierten Ausgabe
46,2 Spezifizieren :DM bei der Verwendung der synchro-
nisierten Ausgabe
20,2 Schnellen Zähler–Impulsausgabestatus über Wort
lesen
27,4 Schnellen Zähler–Impulsausgabestatus über :DM
lesen
24,4 Lesen der Schnellen Zähler–Lesebereichs–Vergleich-
sergebnisse über Wort
32,4 Lesen der Schnellen Zähler–Lesebereichs–Vergleich-
sergebnisse über :DM
39,9 Lesen des Impulsausgabe–Istwertes über Wort
47,8 Lesen des Impulsausgabe–Istwertes über :DM
20,1 Lesen des Interruptzähler–Istwertes über Wort
27,1 Lesen des Interruptzähler–Istwertes über :DM
513
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
63 CTBL 186,0 Speichern einer Zielwert–Vergleichstabelle und Star- 2,6
ten des Vergleichs im Inkrementieren/Dekrementie-
ren–Impulseingangsmodus über Wort
807,5 Speichern einer Zielwert–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementieren/Dekrementie-
ren–Impulseingangsmodus über :DM
185,8 Speichern einer Zielwert–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementierenmodus über
Wort
781,9 Speichern einer Zielwert–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementierenmodus über
:DM
410,0 Speichern einer Bereichs–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementieren/Dekrementie-
ren–Impulseingangsmodus über Wort
418,9 Speichern einer Bereichs–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementieren/Dekrementie-
ren–Impulseingangsmodus über :DM
380,6 Speichern einer Bereichs–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementierenmodus über
Wort
399,7 Speichern einer Bereichs–Vergleichstabelle und Star-
ten des Vergleichs im Inkrementierenmodus über
:DM
183,4 Nur Speichern einer Zielwert–Vergleichstabelle im
Inkrementieren/Dekrementieren–
Impulseingangsmodus über Wort
810,3 Nur Speichern einer Zielwert–Vergleichstabelle im
Inkrementieren/Dekrementieren–
Impulseingangsmodus über :DM
182,4 Nur Speichern einer Zielwert–Vergleichstabelle im
Inkrementierenmodus über Wort
776,3 Nur Speichern einer Zielwert–Vergleichstabelle im
Inkrementierenmodus über :DM
351,0 Nur Speichern einer Bereichs–Vergleichstabelle im
Inkrementieren/Dekrementieren–Impulseingangsmo-
dus über Wort
359,1 Nur Speichern einer Bereichs–Vergleichstabelle im
Inkrementieren/Dekrementieren–Impulseingangsmo-
dus über :DM
331,2 Nur Speichern einer Bereichs–Vergleichstabelle im
Inkrementierenmodus über Wort
335,9 Nur Speichern einer Bereichs–Vergleichstabelle im
Inkrementierenmodus über :DM
64 SPED 44,6 Spezifizieren einer Konstanten in der Unabhängig– 2,6
Betriebsart
53,8 Spezifizieren von :DM in der Unabhängig–Betrieb-
sart
42,9 Spezifizieren einer Konstanten in der Ununterbro-
chen–Impulsausgabebetriebsart
52,0 Spezifizieren von :DM in der Ununterbrochen–Im-
pulsausgabebetriebsart
34,1 Spezifizieren eines Wortes bei der Änderung der Aus-
gangsfrequenz
39,8 Spezifizieren von :DM bei der Änderung der Aus-
gangsfrequenz
65 PULS 38,4 Spezifizieren einer relativen Impulsanzahl über ein 2,6
Wort
46,6 Spezifizieren einer relativen Impulsanzahl über :DM
40,0 Spezifizieren einer absoluten Impulsanzahl über ein
Wort
48,1 Spezifizieren einer absoluten Impulsanzahl über
:DM
514
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
66 SCL 37,9 Spezifizieren eines Parameterwortes; Konstante zu 2,6
Wort
39,2 Spezifizieren eines Parameterwortes; Wort zu Wort
59,9 Spezifizieren eines Parameters :DM ; :DM auf
:DM
67
6 BCNT
C 24,9 Beim Zählen von einem Wort 2,6
,6
4,32 ms Beim Zählen von 2,048 Worten über :DM
68 BCMP 35,3 Vergleichen einer Konstanten, Ergebnisse an ein 2,6
Wort
38,3 Vergleichen eines Wortes, Ergebnisse an ein Wort
58,1 Vergleichen von :DM, Ergebnisse an :DM
69 STIM
S 25,7 Konstanten–spezifizierten Monoflop–Interruptstarten 2,6
,6
47,8 :DM-weise spezifizierten Monoflop–Interrupt starten
25,9 Konstanten–spezifzierten und periodischen Interrupt
starten
47,8 :DM-weise periodischen Interrupt starten
34,0 Konstanten–spezifizierten Zeitgeber lesen
46,4 :DM–weise spezifizierten Zeitgeber lesen
10,6 Anhalten des Zeitgebers
70
0 XFER 21,3 Übertragen einer Konstanten auf ein Wort 2,6
23,8 Übertragen eines Wortes auf ein Wort
1,52 ms Übertragen von 2,048 Worten über :DM
71 BSET
S 13,8 Kopieren einer Konstanten in ein Wort 2,6
14,3 Kopieren eines Wortes in ein Wort
971,1 Kopieren von :DM zu 2,048 Worten
73
3 XCHG
C G 14,5 Wort → Wort 2,6
29,3 :DM → :DM
74 SLD
S 12,3 Verschieben eines Wortes 2,6
23,9 Verschieben von 10 Worten
2,83 ms Verschieben von 2,048 Worten über :DM
75
5 SRD
S 12,3 Verschieben eines Wortes 2,6
23,9 Verschieben von 10 Worten
2,83 ms Verschieben von 2,048 Worten über :DM
76
6 MLPX 16,8 Decodierung eines Wortes in ein Wort 2,6
46,1 Decodieren von :DM auf :DM
77 DMPX 19,7 Kodieren eines Wortes in ein Wort 2,6
52,1 Kodieren von :DM auf :DM
78
8 SDEC
S C 19,8 Dekodieren eines Wortes in ein Wort 2,6
48,3 Dekodieren von :DM auf :DM
80 DIST
S 18,7 Kopieren einer Konstanten in ein Wort + ein Wort 2,6
20,2 Kopieren eines Wortes in ein Wort + ein Wort
43,1 Kopieren von :DM auf :DM + :DM
31,0 Kopieren einer Konstanten auf einen Stack
32,7 Kopieren eines Wortes auf einen Stack
55,9 Kopieren von :DM auf einen Stack über :DM
81 COLL 21,5 Kopieren einer Konstanten und eines Wortes in ein 2,6
Wort
21,9 Kopieren eines Wortes und eines Wortes in ein Wort
42,5 Kopieren von :DM + :DM auf :DM
31,5 Kopieren eines Wortes + Konstante auf einen FIFO–
Stapel
32,0 Kopieren eines Wortes + Wort auf einen FIFO–Stapel
784,7 Kopieren des :DM + :DM auf einen FIFO–Stapel
über :DM
33,6 Kopieren eines Wortes + Konstante auf einen LIFO–
Stapel
34,0 Kopieren eines Wortes + Wort auf einen LIFO–Stapel
57,1 Kopieren des :DM + :DM auf einen LIFO–Stapel
über:DM
515
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
82
8 MOVB
O 17,3 Übertragen einer Konstanten auf ein Wort 2,6
18,0 Übertragen eines Wortes ein anderes Wort
41,7 Übertragen von :DM auf :DM
83 MOVD
O 13,8 Übertragen einer Konstanten auf ein Wort 2,6
16,2 Übertragen eines Wortes ein anderes Wort
38,1 Übertragen von :DM auf :DM
84
8 SFTR
S 22,8 Verschieben eines Wortes 2,6
24,3 Verschieben von 10 Worten
1,15 ms Verschieben von 2,048 Worten über :DM
85 TCMP 27,5 Vergleichen einer Konstanten mit Worten der spezifi- 2,6
zierten Tabelle
28,0 Vergleichen eines Wortes mit Worten der spezifizier-
ten Tabelle
48,3 Vergleichen von :DM auf :DM–Tabelle
86 ASC
SC 19,1 Wort → Wort 2,6
52,2 :DM → :DM
89 INT 22,1 Wortweise Maskierung 2,6
,6
30,1 :DM–weise Maskierung
18,4 Interrupt wortweise löschen
26,4 Interrupt :DM–weise löschen
17,2 Wortweises Auslesen des Maskierungsstatus
24,1 :DM–weises Auslesen des Maskierungsstatus
23,1 Wortweise Änderung des Zähler–Sollwerts
31,1 Zähler–Sollwert ändern über :DM
10,7 Wortweise Maskierung aller Interrupts
10,7 :DM–weise Maskierung aller Interrupts
11,0 Wortweises löschen aller Interrupts
11,0 :DM –weises löschen aller Interrupts
91 SBS 10,8 Beliebig
g 2,6
92 SBN ––– 0,76
93 RET 6,2 1,0
97
9 IORF
O 16,8 Auffrischen von IR 000 2,8
130,7 Auffrischen eines Eingangswortes
110,7 Auffrischen eines Ausgangswortes
99 MCRO
C O 26,1 Mit wortweise spezifizierten E/A–Operanden 2,6
42,3 Mit :DM–weise spezifizierten E/A–Operanden
516
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
517
CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit Abschnitt 8-2
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
––– PWM 30,3 Konstante für Impulsbreitenverhältnis 2,6
,6
43,4 Wort für Impulsbreitenverhältnis
46,0 :DM für Impulsbreitenverhältnis
––– SCL2
SC 35,1 Parameterwortzuweisung, Wort zu Wort 2,6
,6
59,3 Parameter :DM–Zuweisung, :DM auf :DM
––– SCL3
SC 3 37,1 Parameterwortzuweisung, Wort zu Wort 2,6
,6
62,3 Parameter :DM–Zuweisung, :DM auf :DM
––– SEC
S C 29,8 Beim Konvertieren eines Wortes in Wort 2,6
,6
44,0 Konvertierung von:DM in :DM
––– SRCH
S C 28,9 Suchen eines Wortes und Ausgabe an ein Wort 2,6
,6
1,40 ms :DM–Spezifikation, Durchsuchen von 2,048 Worten
und Ausgabe an :DM
––– STUP
S U 3,42 ms Konstantenspezifikation, Ausführung im ersten Zyklus 2,6
,6
34,1 Konstantenspezifikation, Ausführung im zweiten Zy-
klus oder späterer
3,44 ms :DM–Spezifikation, Ausführung im erster Zyklus
39,8 :DM–Spezifikation, Ausführung im zweiten Zyklus
oder späterer
––– SUM
SU 22,8 Wortaddition und Ausgabe an Wort 2,6
,6
1,44 ms :DM–Spezifikation, 999 Bytes addieren und Aus-
gabe an :DM
––– SYNC
S C 34,6 Konstantenverhältnisspezifikation, bei Ausführung 2,6
,6
35,3 Wortverhältnisspezifikation, bei Ausführung
42,5 :DM–Verhältnisspezifikation, bei Ausführung
25,3 Wortverhältnisspezifikation, bei Änderung
32,6 :DM–Verhältnisspezifikation, bei Änderung
––– TIML Rückset- IL JMP
zung
12,8 Normale Ausführung, Konstantenspezifikation 17,9 17,5 8,1
13,5 Interrupt–Ausführung, Konstantenspezifikation 25,7 25,5 8,1
––– TMHH Rückset- IL JMP
zung
12,3 Normale Ausführung, Konstantenspezifikation 15,6 15,1 7,4
12,7 Interrupt–Ausführung, Konstantenspezifikation 17,2 16,9 9,1
12,7 Normale Ausführung, :DM–Spezifikation 23,6 23,3 7,7
13,6 Interrupt–Ausführung, :DM–Spezifikation 25,1 24,7 9,1
––– ZCP 9,4 Vergleichen einer Konstanten mit einem Konstanten- 2,6
bereich und Ausgabe an Wort
11,8 Vergleichen eines Wortes mit einem Wortbereich und
Ausgabe an Wort
33,4 Vergleichen von :DM mit :DM und Ausgabe an
:DM
––– ZCPL
C 19,5 Vergleichen eines Wortes mit einem Wortbereich 2,6
,6
45,2 Vergleichen von :DM mit :DM
518
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Initialisierung
Betriebs–
vorgänge
CompoBus/S–
Ende abwarten
Eingangs–
auffrischung
Programm-
ausführung
Zy-
klus-
zeit
Zykluszeit-
verarbeitung
Ausgangs–
auffrischung
Service der
RS–232C–
Schnittstelle
Service der
Peripherie-
schnittstelle
519
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
8-3-2 SRM1(–V2)–Zykluszeit
Die während eines einzelnen SRM1(–V2)–Zyklus ablaufenden Vorgänge sind
in der folgenden Tabelle dargestellt. Darüber hinaus sind die entsprechenden
Verarbeitungszeiten aufgeführt.
Prozess Inhalt zeitanforderungen
Betriebsvorgänge Stellen des Zykluswatchdog–Zeitgebers, UM(Anwenderpro- 0,18 ms
gramm)–Prüfung, usw.
CompoBus/S–Ende Warten auf das Ende der CompoBus/S–Verarbeitung CompoBus/S–Kommunikationszeit
warten
Eingangsauffrischung Die Eingangsdaten der Eingangsbaugruppen werden in die 0,02 ms
Eingangsbits eingelesen.
Programmausführung Ausführung des Anwenderprogramms Gesamtzeit für die Befehlsausführung
(diese ändert sich in Abhängigkeit von
Sehen Sie Abschnitt 8-3-6 SRM1(–V2)–Befehlsausfüh-
dem Inhalt des Anwenderprogramms.)
rungszeit.
Zykluszeit–Berechnung Bereitschaftsbetrieb (Stand–by) bis zur spezifizierten Zeit, Die Berechnung erfolgt fast unmittelbar
wenn die Mindest–Zykluszeit in der Konfiguration in DM (gilt nicht für den Bereitschaftsbetrieb).
6619 spezifiziert wird.
Berechnung der Zykluszeit.
Ausgangsauffrischung Ausgangsdaten (Ergebnisse der Programmausführung) 0,05 ms
werden in die Ausgangsbits geschrieben.
CompoBus/S–Kommunikation wird gestartet.
Service der RS–232C– Bearbeitung der mit der RS–232C–Schnittstelle verbunde- 5% oder Prozentsatz der Zykluszeit, aber
Schnittstelle nen Geräte. immer zwischen 0,55 und 131 ms
(in DM 6616 spezifiziert.)
Service der Peripherie- Bearbeitung der mit der Peripherieschnittstelle verbunde- 5% oder Prozentsatz der Zykluszeit, aber
schnittstelle nen Geräte. immer zwischen 0,55 und 131 ms
(in DM 6617 spezifiziert.)
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den SRM1(–V2)–Betrieb ist nachfolgend darge-
stellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entweder die Zyklus-
520
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Hinweis 1. in der Konfiguration (DM 6655) kann die Erkennung der Zykluszeit–Über-
schreitung deaktiviert werden.
2. Die Zyklus–Überwachungszeit kann in der Konfiguration (DM 6618) geän-
dert werden.
Berechnung der Zykluszeit Nachfolgend ist ein Beispiel für die Berechnung der Zykluszeit aufgeführt.
Folgende Betriebsbedingungen werden vorausgesetzt:
Programmspeicher: 500 Befehle (nur bestehend aus LD und OUT)
Zykluszeit: Variabel (kein Minimum spezifiziert)
RS-232C–Schnittstelle: Nicht verwendet
Max. Anz. Teilnehmer: 32 Teilnehmer und schneller Kommun.modus
(CompoBus/S–Kommunikationszeit
= 0,8 ms)
Peripherie: 0,7 ms
In diesem Beispiel wird vorausgesetzt, dass die durchschnittliche Verarbei-
tungszeit für einen einzelnen Befehl in dem Anwenderprogramm 1,6 µs beträgt.
Die Zykluszeiten sind in der nachfolgendenTabelle dargestellt.
Prozess Berechnung Mit Ohne
Peripherieschnittstelle Peripherieschnittstelle
1. Betriebsvorgang Fest 0,18 ms 0,18 ms
2. CompoBus/S–Ende Sehen Sie die vorhergehende 0,00 ms 0,62 ms
abwarten Seite
3. Eingangsauffrischung Fest 0,02 ms 0,02 ms
4. Programmausführung 1,6 × 500 (µs) 0,8 ms 0,8 ms
5. Zykluszeit–Berechnung Vernachlässigbar 0,00 ms 0,00 ms
6. Ausgangsauffrischung 0,05 ms 0,05 ms
7. Service der RS–232C– Wird nicht benötigt 0,00 ms 0,00 ms
Schnittstelle
8. Service der Peripherie- 5% der Zykluszeit 0,7 ms 0,00 ms
schnittstelle
Zykluszeit (1) + (2) + (3) + ...+ (8) 1,75 ms 1,67 ms
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 gespei-
chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab und
stimmt möglicherweise nicht mit dem berechneten Wert überein.
4. Bei Verwendung der Peripherieschnittstelle gibt es keine “CompoBus/S–
Ende abwarten–Zeit”, da sie immer 0 ist.
5. CompoBus/S–Ende abwarten–Verzögerungszeit = 0,8 – 0,18 – 0 – 0 = 0,62
(CompoBus/S–Kommunikationszeit – Betriebsvorgänge – RS–232C–
Schnittstellen–Service–Zeit – Peripherieschnittstellen–Service–Zeit.
521
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
8-3-3 E/A–Reaktionszeit
Die E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-
gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung und
Verarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabe
des Verarbeitungsergebnisses an ein Ausgangsbit) benötigt.
Die CompoBus/S–Kommunikation wird gestartet, wenn die SRM1(–V2) Auffri-
schungsausführung beendet ist. Der Ein–/Aus–Zustand wird von den Ein-
gangsmodulen während der Eingangsauffrischung gelesen und der Ein–/Aus–
Zustand wird während der Ausgangsauffrischung an die Ausgangsmodule aus-
gegeben. Hierdurch ändert sich die SRM1(–V2)–E/A–Ansprechzeit entspre-
chend der Zykluszeit und dem CompoBus/S–Kommunikations–Zykluszustand
oder dem E/A–Zeitverhalten.
Beispielsberechnungen der E/A–Ansprechzeit sind im Folgenden aufgeführt.
Minimale E/A–Ansprechzeit
Minimale E/A–Ansprechzeit =
Eingang–EIN–Verzögerung + Ausgang–EIN–Verzögerung + CompoBus/S–
Kommunikations–Zykluszeit + SRM1(–V2)–Zykluszeit
Zykluszeit
SRM1(–V2)–Zyklus
Kommunikations- CompoBus/S–
reaktionzeit Zykluszeit
Eingang–EIN–
Verzögerung
Maximale E/A–Ansprechzeit
Maximale E/A–Ansprechzeit =
Eingang–EIN–Verzögerung + Ausgang–EIN–Verzögerung + CompoBus/S–
Kommunikations–Zykluszeit + SRM1(–V2)–Zykluszeit x 2
Zykluszeit
SRM1(–V2)–Zyklus
Kommunikations- CompoBus/S–
reaktionzeit Zykluszeit
Eingang–EIN–
Verzögerung
522
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
8-3-4 1:1–PC–Link–E/A–Ansprechzeit
Werden zwei SRM1–Steuerungen mit der 1:1 PC–Link–Kommunikation ver-
wendet, ist die E/A–Ansprechzeit die Zeit vom Anlegen eines Eingangssignals
an die eine SRM1 bis zur Ausgabe eines Signals an die andere SRM1.
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit der SRM1 ist unter den folgenden Bedingungen ge-
geben:
1, 2, 3... 1. Die SRM1(–V2) erhält ein Eingangssignal gleich vor der E/A–Auffri-
schungsphase des Zyklus.
2. Die Master/Slave–Übertragung beginnt sofort.
3. Der Kommunikations–Service des Slaves tritt unmittelbar nach Abschluss
der Übertragung ein.
Eingangs– E/A–Auffrischung
anschluss
Eingang–EIN–Verzögerung (8 ms) Betriebsvorgänge, Kommunikation
usw.
Ein–
gangs-
bit
Programm-
ausführung
Programm-
ausführung
Ausgang–EIN–Ver-
Slave–Zykluszeit (15 ms) zögerung (10 ms)
Ausgangs–
anschluss
Min. E/A–Ansprechzeit = 8+10+39+15+10 = 82 ms
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit der SRM1(–V2) ist unter den folgenden Bedingun-
gen gegeben:
1, 2, 3... 1. Die SRM1(–V2) erhält ein Eingangssignal gleich nach der E/A–Auffri-
schungsphase des Zyklus.
2. Die Master/Slave–Übertragung beginnt mit einer Verzögerung.
523
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
E/A–Auffrischung
Eingangs–
anschluss Eingang–EIN–Verzögerung (8 ms) Betriebssystem, Kommunikation usw.
Ein–
gangsbit
Programm- Programm-
ausführung ausführung
Übertragungszeit (39 ms × 3)
Programm- Programm-
ausführung ausführung
Ausgang–EIN–Ver-
Slave–Zykluszeit (15 ms) zögerung (10 ms)
Ausgangs-
anschluss
8-3-5 Interrupt–Verarbeitungszeit
In diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-
rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-
schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in das Hauptpro-
gramm erläutert. Diese Erklärung gilt für Intervall–Zeitgeber–gesteuerte Inter-
rupts.
1, 2, 3... 1. Interrupt–Auslösung
2. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
3. Wechsel zur Interrupt–Verarbeitung
4. Interrupt–Unterprogramm
5. Rückkehr in das Hauptprogramm
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-
gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss des
Interrupt–Unterprogrammes bis in das Hauptprogramm aufgeführt.
Spezifikation Beschreibung Zeit
Bereitschaft bis zum Zeit, in der Interrupts auf den Abschluss einer laufenden Verarbeitung warten. Dieses Sehen Sie
Abschluss der Interrupt–Maskie- ist bei der Ausführung einer Maskierungs– die nachfol-
rungsverarbeitung verarbeitung der Fall. Sehen Sie die nachfolgende, ausführlichere Beschreibung. gende Be-
schreibung.
Wechsel zur Interrupt–Verarbei- Dies ist die für den Wechsel zu der Interrupt–Verarbeitung erforderliche Zeit. 15 µs
tung
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbro- 15 µs
chenen Programmabschnitt.
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interrupts
bleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeiten
maskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung des
Fehlerinhalts in der SRM1(–V2) bzw. bei der Rücksetzung eines Fehlers
werden Interrupts für maximal 100 µs bis zum Abschluss der Verarbeitung
maskiert.
524
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
On–line–Editierung:
Erfolgt während des Betriebs eine On–line–Editierung, werden Interrupts
für maximal 600 ms (d.h., Editierung von DM 6144 bis DM 6655) maskiert.
Zusätzlich kann die Wartezeit der Systemverarbeitung während dieses Vor-
gangs bis zu maximal 170 µs betragen.
8-3-6 SRM1(-V2)–Befehlsausführungszeiten
Die folgende Tabelle enthält die Ausführungszeiten der SRM1(–V2)–Befehle.
Basisbefehle
Code AWL EIN–Ausfüh-
us ü Bedingungen
ed gu ge (oben:
(obe min,, unten:
u e max.)
a ) AUS–Ausführungszeit (µs)
rungszeit
it (µs)
( ) RSET IL JMP
––– LD 0,97 Beliebig
e eb g –––
––– LD NOT 0,97
--- AND 0,77
--- AND NOT
--- OR 0,78 Beliebig –––
--- OR NOT
--- AND LD 0,39 Beliebig –––
--- OR LD
--- OUT 2,2
--- OUT NOT
525
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
14 DIFD 6,4 Beliebig Ver– IL JMP
schie-
bung
5,8 5,7 1,3
15 TIMH 10,3 Rückset- IL JMP
zung
Reguläre Ausführung, Konstante für Sollwert 14,1 13,9 7,0
10,9 Interrupt–Ausführung, Konstante für Sollwert 15,6 15,4 8,5
10,3 Normale Ausführung, :DM für Sollwert 22,8 22,1 7,0
10,9 Interrupt–Ausführung, :DM für Sollwert 23,9 23,6 8,5
16
6 WSFT
S 16,2 Mit 1 Wort–Schieberegister 2,9
23,0 Mit 10 Worte–Schieberegister
712,3 Mit 1024 Worte–Schieberegister bei Verwendung von
:DM
17 ASFT*
S 18,6 Verschieben eines Wortes 3,0
25,9 Verschieben von 10 Worten
865,7 Verschieben von 1023 Worten mit :DM
20
0 CMP
C 9,1 Vergleichen einer Konstanten mit einem Wort 3,0
9,9 Vergleichen von zwei Worten
25,6 Vergleichen von zwei :DM
21 MOV
O 9,1 Übertragen einer Konstanten auf ein Wort 3,0
9,5 Übertragen eines Wortes auf ein anderes Wort
24,9 Übertragen von :DM auf :DM
22 MVN 9,3 Übertragen einer Konstanten auf ein Wort 3,0
9,8 Übertragen eines Wortes auf ein anderes Wort
25,1 Übertragen von :DM auf :DM
23
3 BIN 17,2 Konvertieren eines Wortes in ein Wort 3,0
32,0 Konvertieren von :DM auf :DM
24 BCD
C 15,8 Konvertieren eines Wortes in ein Wort 3,0
30,6 Konvertieren von :DM auf :DM
25
5 ASL
S 9,9 Verschieben eines Wortes 2,9
17,3 Verschieben von :DM
26
6 ASR
S 9,7 Verschieben eines Wortes 3,0
17,2 Verschieben von :DM
27 ROL
O 8,5 Rotieren eines Wortes 2,9
16,1 Rotieren von :DM
28
8 ROR
O 8,5 Rotieren eines Wortes 2,9
,9
16,1 Rotieren von :DM
29
9 COM
CO 10,5 Invertieren eines Wortes 3,0
17,7 Invertieren von :DM
30 ADD 15,9 Konstante + Wort → Wort 3,1
16,4 Wort + Wort → Wort
39,5 :DM + :DM → :DM
31
3 SUB
SU 15,6 Konstante – Wort → Wort 3,0
16,3 Wort – Wort → Wort
38,6 :DM – :DM → :DM
32
3 MUL
U 29,7 Konstante Wort → Wort 3,0
28,5 Wort Wort → Wort
51,6 :DM :DM → :DM
33 DIV 27,2 Wort ÷ Konstante → Wort 2,9
28,5 Wort ÷ Wort → Wort
53,1 :DM ÷ :DM → :DM
34
3 ANDW 14,3 Konstante Wort → Wort 2,9
15,2 Wort Wort → Wort
37,3 :DM :DM → :DM
35 ORW
O 14,3 Konstante V Wort → Wort 2,9
15,2 Word V word → word
37,3 :DM V :DM → :DM
526
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
36 XORW
O 14,3 Konstante V Wort → Wort 2,9
15,2 Wort V Wort → Wort
37,3 :DM V :DM → :DM
37
3 XNRW 14,3 Konstante V Wort → Wort 2,9
15,2 Wort V Wort → Wort
37,3 :DM V :DM → :DM
38 INC
C 9,9 Inkrementieren eines Wortes 2,9
17,3 Inkrementieren von :DM
39 DEC
C 10,2 Dekrementieren eines Wortes 2,9
17,4 Dekrementieren von :DM
40 STC 3,5 Beliebig
g 2,9
41 CLC 3,0 2,9
46
6 MSG
SG 11,3 Meldung in Worten 2,9
19,4 Meldung in :DM
47 RXD* 39,1 Wortspezifikation, 1 Byte–Eingabe 2,9
116,8 :DM Spezifikation, 256 Byte–Eingabe
48
8 TXD* 31,3 Wortspezifikation, 1 Byte–Eingabe, (RS–232C) 2,9
266,5 :DM–Spezifikation, 256 Byte–Eingabe, (RS–232C)
26,7 Wortspezifikation, 1 Byte–Eingabe, Host–Link
34,0 :DM–Spezifikation, 256 Byte–Eingabe, Host–Link
50 ADB 16,8 Konstante + Wort → Wort 3,0
17,6 Wort + Wort → Wort
39,9 :DM + :DM → :DM
51
5 SBB
S 17,0 Konstante – Wort → Wort 3,0
17,8 Wort – Wort → Wort
40,2 :DM – :DM → :DM
52
5 MLB 19,1 Konstante Wort → Wort 3,0
20,1 Wort Wort → Wort
43,5 :DM :DM → :DM
53 DVB 19,5 Wort ÷ Konstante → Wort 3,0
20,4 Wort ÷ Wort → Wort
43,7 :DM ÷ :DM → :DM
54
5 ADDL 26,7 Wort + Wort → Wort 3,0
49,9 :DM + :DM → :DM
55 SUBL
SU 26,8 Wort – Wort → Wort 3,0
49,9 :DM – :DM → :DM
56 MULL
U 81,4 Wort Wort → Wort 3,0
106,2 :DM :DM → :DM
57
5 DIVL 76,9 Wort ÷ Wort → Wort 3,0
101,8 :DM ÷ :DM → :DM
60 CMPL
C 16,9 Vergleichen von Worten 2,9
,9
32,9 Vergleichen von :DM
66 SCL*
SC 69,5 Wortspezifikation 3,0
91,5 :DM–Spezifikation
67
6 BCNT*
C 26,9 Zählen eines Wortes 3,0
2,29 ms Zählen von 6656 Worten über :DM
68 BCMP* 41,4 Vergleichen einer Konstanten, Ergebnisse an ein 3,0
Wort
41,9 Vergleichen eines Wortes, Ergebnisse an ein Wort
64,5 Vergleichen von :DM, Ergebnisse an :DM
69 STIM*
S 34,7 Wortweise spezifizierten Monoflop–Interrupt starten 3,0
49,5 :DM–weise spezifizierten Monoflop–Interrupt starten
35,3 Wortweise und periodischen Interrupt starten
50,0 :DM–weise und periodischen Interrupt starten
33,9 Wortweise spezifizierten Zeitgeber lesen
49,5 :DM–weise spezifizierten Zeitgeber lesen
11,4 Wortweise spezifizierten Zeitgeber anhalten
527
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
70
0 XFER 22,9 Übertragen einer Konstanten auf ein Wort 3,0
24,0 Übertragen eines Wortes auf ein Wort
902,0 Übertragen von 1024 Worten mit Hilfe von :DM
71 BSET
S 15,2 Kopieren einer Konstanten in ein Wort 3,0
15,7 Kopieren einer Wortkonstanten in 10 Worte
565,2 Kopieren von :DM in 1024 Worte
73
3 XCHG
C G 16,2 Wort → Wort 3,1
31,5 :DM → :DM
74 SLD
S 13,6 Verschieben eines Wortes 3,0
26,7 Verschieben von 10 Worten
1,54 ms Verschieben von 1024 Worten mit Hilfe von:DM
75
5 SRD
S 13,6 Verschieben eines Wortes 3,0
26,6 Verschieben von 10 Worten
1,54 ms Verschieben von 1024 Worten mit Hilfe von :DM
76
6 MLPX 25,5 Dekodieren eines Wortes in ein Wort 3,0
48,9 Dekodieren von :DM auf :DM
77 DMPX 35,1 Kodieren eines Wortes in ein Wort 3,0
58,1 Kodieren von :DM auf :DM
78
8 SDEC
S C 26,8 Dekodieren eines Wortes in ein Wort 2,9
49,9 Dekodieren von :DM auf :DM
80 DIST
S 21,3 Kopieren einer Konstanten in ein Wort + ein Wort 3,0
21,9 Kopieren eines Wortes in ein Wort + ein Wort
45,7 Kopieren von :DM auf :DM +:DM
34,3 Kopieren einer Konstanten auf einen Stack
35,3 Kopieren eines Wortes auf einen Stack
59,3 Kopieren von :DM auf einen Stack über :DM
81
8 COLL
CO 21,4 Kopieren einer Konstanten + ein Wort in ein Wort 3,0
21,8 Kopieren eines Wortes + ein Wort in ein Wort
44,9 Kopieren von :DM + :DM auf :DM
34,0 Kopieren eines Wortes + Konstante auf einen FIFO–
Stack
33,9 Kopieren eines Wortes + Wort auf einen FIFO–Stack
892,0 Kopieren des :DM + :DM auf einen FIFO–Stapel
über :DM
35,4 Kopieren eines Wortes + Konstante auf einen LIFO–
Stack
36,1 Kopieren eines Wortes + Wort auf einen LIFO–Stack
60,5 Kopieren des :DM + :DM auf einen LIFO–Stapel
über :DM
82
8 MOVB
O 18,2 Übertragen einer Konstanten auf ein Wort 3,0
19,0 Übertragen eines Wortes auf ein anderes Wort
42,1 Übertragen von :DM auf :DM
83 MOVD
O 16,3 Übertragen einer Konstanten auf ein Wort 2,9
17,6 Übertragen eines Wortes auf ein anderes Wort
39,9 Übertragen von :DM auf :DM
84
8 SFTR
S 21,0 Verschieben eines Wortes 3,0
26,9 Verschieben von 10 Worten
718,5 Verschieben von 1024 Worten mit Hilfe von :DM
85 TCMP 30,0 Vergleichen einer Konstanten mit Worten der spezifi- 3,0
zierten Tabelle
30,7 Vergleichen eines Wortes mit Worten der spezifizier-
ten Tabelle
53,1 Vergleichen von :DM auf :DM–Einstelltabelle
86 ASC
SC 30,0 Wort → Wort 3,0
53,7 :DM → :DM
91 SBS 13,2 Beliebig
g 3,0
92 SBN ––– 1,3
93 RET 7,8 1,3
528
SRM1(–V2)–Zyklus– und E/A–Ansprechzeit Abschnitt 8-3
Code AWL EIN–Ausfüh- Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit (µs)
rungszeit (µs)
99 MCRO
C O 26,8 Mit wortweise spezifizierten E/A–Operanden 3,0
43,5 Mit :DM–weise spezifizierten E/A–Operanden
529
Kapitel 9
Fehlersuche
Dieses Kapitel beschreibt die Fehlersuche und –behebung der während des SPS–Betriebs auftretenden Hardware– und Soft-
warefehler.
531
Fehlermeldung der Programmierkonsole Abschnitt 9-2
9-1 Einführung
SPS–Fehler können allgemein in die folgenden vier Kategorien eingeteilt wer-
den:
1, 2, 3... 1. Programmeingabe–Fehler
Diese Fehler treten bei der Eingabe eines Programms oder bei der Aktivie-
rung eines Vorgangs auf, der zur Vorbereitung des SPS–Betriebs dient.
2. Programmierfehler
Diese Fehler werden während der Programmüberprüfung über die entspre-
chende Funktion angezeigt.
3. Durch den Anwender definierte Fehler
Der Anwender kann mit Hilfe von drei Befehlen eigene Fehler oder Meldun-
gen definieren. Die Befehle werden ausgeführt, wenn eine besondere Be-
dingung (durch den Anwender definiert) während des Betriebs auftritt.
4. Betriebsfehler
Diese Fehler treten nach Beginn der Programmausführung auf.
a) Geringfügige Fehler:
Der SPS–Betrieb und die Programmausführung werden nach Auftreten
eines oder mehrerer dieser Fehler fortgesetzt.
b) Schwerwiegende Fehler:
Der SPS–Betrieb und die Programmausführung werden nach Auftreten
dieses Fehlers beendet und alle Ausgänge der SPS deaktiviert.
Die LEDs der SPS melden einen SPS–Fehler und zeigen eine Fehlermeldung
oder den entsprechenden Fehlercode auf der Programmierkonsole oder dem
Host–Computer an, sofern dieser angeschlossen ist. Der Fehlercode wird dar-
überhinaus in dem Systemmerkerbereich SR 25300 bis SR 25307 gespeichert.
Für die zuletzt aufgetretenen Fehler wird sowohl der Fehlertyp als auch der Zeit-
punkt ihres Auftretens im SPS–Fehlerprotokollbereich gespeichert. Sehen Sie
Seite 537 für weitere Informationen.
Für die Fehlersuche können Informationen des SR– und AR–Bereiches ver-
wendet werden. Sehen Sie Kapitel 3 Speicherbereiche für weitere Informatio-
nen.
Hinweis Zusätzlich zu den oben beschriebenen Fehlern können Kommunikationsfehler
auftreten, wenn die SPS innerhalb eines Host–Link–Systems eingesetzt wird.
Sehen Sie Seite 539 für weitere Informationen.
532
Programmierfehler Abschnitt 9-3
9-3 Programmierfehler
Diese Fehler werden bei der Syntaxüberprüfung des Programms erkannt.
Es stehen drei Programmüberprüfungs–Ebenen zur Verfügung. Die ge-
wünschte Ebene, die den zu erkennenden Fehlertyp anzeigen soll, muß an-
gegeben werden. Die folgende Tabelle enthält die Fehlertypen und –anzei-
gen sowie die Erläuterung aller Syntaxfehler. Prüfebene 0 sucht nach A–, B–,
und C–Fehlerarten, Prüfebene 1 nach A– und B–Fehlern und Prüfebene 2
nur nach A–Fehlern.
Fehler der Ebene A Fehlermeldung Erklärung und Abhilfe
????? Das Programm wurde beschädigt und hierdurch ein nicht existierender
Funktionscode erzeugt. Laden Sie das Programm erneut.
CIRCUIT ERR Die Anzahl von Logikblöcken und Logikblock–Befehlen stimmt nicht
überein, d.h. LD oder LD NOT wurde verwendet, um einen Logikblock zu
starten, dessen Ausführungsbedingung bisher von keinem anderen
Befehl verwendet wurde. Es ist ebenso möglich, dass ein
Logikblockbefehl verwendet wurde, der nicht die erforderliche Anzahl
von Logikblöcken besitzt. Überprüfen Sie Ihr Programm.
OPERAND ERR Eine für den Befehl eingegebene Konstante befindet sich nicht innerhalb
der definierten Werte. Ändern Sie die Konstante so, dass sie innerhalb
des richtigen Bereiches liegt.
NO END INSTR Das Programm enthält keinen END(01)–Befehl. Speichern Sie END(01)
auf der Endadresse des Programms.
LOCN ERR Ein Befehl befindet sich im Programm an der falschen Stelle. Überprüfen
Sie die Befehlsbedingungen, und korrigieren Sie das Programm.
JME UNDEFD Es fehlt ein JME(05)–Befehl für einen JMP(04)–Befehl. Korrigieren Sie
die Sprungnummer oder fügen Sie den richtigen JME(05)–Befehl ein.
DUPL Es wurde zweimal dieselbe Sprungnummer oder Unter–
programmnummer verwendet. Korrigieren Sie das Programm, so dass
dieselbe Nummer jeweils nur einmal verwendet wird.
SBN UNDEFD Der SBS(91)–Befehl wurde für eine Unterprogrammnummer
programmiert, die nicht existiert. Korrigieren Sie die
Unterprogrammnummer oder erstellen Sie das erforderliche
Unterprogramm.
STEP ERR STEP(08) mit und STEP(08) ohne Abschnittsnummer (Steuerbit) wurden
falsch verwendet. Überprüfen Sie die STEP(08)–
Programmierbedingungen und korrigieren Sie das Programm.
533
Betriebsfehler Abschnitt 9-5
! Vorsicht Erweiterungsbefehle (die den Funktionscode 17, 18, 19, 47, 48, 60...69, 87, 88
und 89 zugewiesen sind) werden nicht überprüft. Es erfolgen keine Programm-
überprüfungen für DM 1024 bis DM 6143 bei SPS–Systemen, die diesen Teil
des DM–Bereichs nicht unterstützt. Auch wenn diese Daten spezifiziert sind,
werden keine Daten gespeichert und die in diesem Bereich gelesenen Daten
sind immer “0000”.
9-5 Betriebsfehler
Zwei Arten von Betriebsfehlern, geringfügige und schwerwiegende Fehler, wer-
den generiert. Nach Auftreten eines geringfügigen Fehlers wird der SPS–Be-
534
Betriebsfehler Abschnitt 9-5
trieb fortgesetzt. Liegt jedoch ein schwerwiegender Fehler vor, wird der Betrieb
beendet.
! Vorsicht Überprüfen Sie alle Fehler, unabhängig davon, ob sie schwerwiegend oder ge-
ringfügig sind. Beseitigen Sie die Fehlerursache so schnell wie möglich, und
schalten Sie die SPS wieder ein. Sehen Sie das CPM1–,CPM2A– oder
CPM2C–Technisches Handbuch für Hardware–Informationen und Program-
mierkonsolen–Funktionen in Bezug auf Fehler. Fehlercode FAL und Fehlerur-
sache werden in der Programmiersoftware CX–Programmer oder SYSWIN bei
der Online–Verbindung angezeigt.
535
Betriebsfehler Abschnitt 9-5
536
Fehlerprotokoll Abschnitt 9-6
9-6 Fehlerprotokoll
Die Fehlerprotokoll–Funktion speichert den Code der im SPS–Betrieb auftre-
tenden geringfügigen/schwerwiegenden Fehler, zusammen mit dem Datum
und der Uhrzeit. Sehen Sie Seite 534 für weitere Informationen.
CPM1/CPM1A Bei der CPM1/CPM1A wird der Fehlerprotokollbereich in DM 1000...DM 1021
gespeichert.
DM 1000 Fehlerprotokoll–Zeiger Die Adresse zur Speicherung der nächsten Fehleraufzeichnung wird angezeigt. (0...6)
DM 1001 Fehlerprotokoll– Ein einzelner Fehlereintrag ist wie folgt konfiguriert:
DM 1002 Aufzeichnung 0 Bit 15 8 7 0
DM 1003
Führendes Wort Fehlerklassifizierung Fehlercode
Führendes Wort + 1 00 00
bis Führendes Wort + 2 00 00
Fehlerklassifizierung: 00: Geringfügig
80: Schwerwiegend
DM 1019 Fehlerprotokoll–
DM 1020 Aufzeichnung 6
DM 1021
Speicherverfahren
Die Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert
(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern und ältere
Datensätze löschen. Dies erfolgt durch Verschiebung der Datensätze, wie
nachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz 0)
bei Generierung eines neuen Datensatzes gelöscht.
Wird gelöscht
Fehl.protok.–Aufz. 1
Fehl.protok.–Aufz. 2
Alle Datensätze verschoben
Fehl.protok.–Aufz. 6
Fehl.protok.–Aufz. 7
Neue Datensätze hinzugefügt
537
Fehlerprotokoll Abschnitt 9-6
DM 2000 Fehlerprotokoll–Zeiger Zeigt die Anzahl der Datensätze an, die in der Protokollierung gespei-
DM 2021 chert sind (0 bis 7). 0 bedeutet kein gespeicherter Datensatz.
Fehlerprotokoll–
DM 2022 Aufzeichnung 1
Ein einzelner Fehlereintrag ist wie folgt konfi-
DM 2023 (3 Worte)
guriert: 15 8 7 0
Hinweis Ein Fehlerdatensatz mit einem Fehlercode von 00 wird im Fehlerprotokoll für
Versorgungsspannungsunterbrechungen gespeichert.
Speicherverfahren
Die Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert
(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern. Ältere Da-
tensätze werden ignoriert. Dies erfolgt durch Verschieben der Datensätze,
wie nachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz
0) bei Generierung eines neuen Datensatzes gelöscht.
Wird gelöscht
Fehl.protok.–Aufz.1
Fehl.protok.–Aufz 2
Alle Datensätze verschoben
Fehl.protok.–Aufz 6
Fehl.protok.–Aufz 7
Neue Datensätze hinzugefügt
DM 2000 Fehlerprotokoll–Zeiger Zeigt die Anzahl der Datensätze an, die in der Protokollierung gespei-
DM 2001 Fehl.protok.–Aufz. 1 chert sind (0 bis 7). 0 bedeutet kein gespeicherter Datensatz.
DM 2002 Ein einzelner Fehlereintrag ist wie folgt konfiguriert:
DM 2003 Bit 15 8 7 0
Führendes Wort Fehlerklassifizierung Fehlercode
bis Führendes Wort + 1 00 00
Führendes Wort + 2 00 00
Fehlerklassifizierung: 00: Geringfügig
DM 2019 Fehlerprotokoll– 80: Schwerwiegend
DM 2020 Aufzeichnung 7
DM 2021
538
Ablaufdiagramm zur Fehlerbehebung Abschnitt 9-8
Speicherverfahren
Die Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert
(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern. Ältere Da-
tensätze werden ignoriert. Dies erfolgt durch Verschiebung der Datensätze,
wie nachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz
0) bei Generierung eines neuen Datensatzes gelöscht.
Wird gelöscht
Fehl.protok.–Aufz. 1
Fehl.protok–Aufz. 2
Alle Datensätze verschoben
Fehl.protok.–Aufz 6
Fehl.protok.–Aufz 7
Neue Datensätze hinzugefügt
9-7 Host–Link–Fehler
Sehen Sie Abschnitt 4-3 Host–Link–Kommunikation für eine Beschreibung des
Antwortsformats und der Antwortscodes, die zurückgegeben werden, wenn ein
Befehl nicht durch einen Host–Computer verarbeitet werden kann.
539
Anhang A
Programmierbefehle
Ein SPS–Befehl kann entweder über die entsprechenden Tasten (d.h., LD, AND, OR, NOT) der Programmierkon-
sole oder durch Verwendung der Funktionscodes eingegeben werden. Um einen Befehl über den Funktionscode
einzugeben, drücken Sie die Taste FUN, den Funktionscode und dann WRITE. Sehen Sie die Seiten, auf denen
Programmier– und Befehlseinzelheiten aufgeführt sind.
Code AWL–Code Bezeichnung Funktion Seite
— AND AND Logische UND–Verknüpfung eines spezifizierten Bits mit der gegen- 350
wärtigen Ausführungsbedigung.
— AND LD AND LOAD Logische UND–Verknüpfung der resultierenden Ausführungsbedin- 351
gungen der vorhergehenden Logikblöcke.
— AND NOT AND NOT Logische UND-Verknüpfung des invertierten spezifizierten Bits mit 350
der Ausführungsbedingung.
— CNT COUNTER Ein dekrementierender Zähler. 369
— LD LOAD Definiert den Zustand eines spezifizierten Bits oder Logikblocks als 350
Ausführungsbedingung für die nachfolgenden Befehle (AND LD und
OR LOAD) der Befehlszeile.
— LD NOT LOAD NOT Invertiert den Status eines spezifizierten Bits als Ausführungsbedin- 350
gung für die nachfolgende Befehlszeile.
— OR OR Logische ODER-Verknüpfung eines spezifizierten Bits mit der Aus- 350
führungsbedingung.
— OR LD OR LOAD Logische ODER-Verknüpfung der resultierenden Ausführungsbedin- 351
gungen der vorhergehenden Logikblöcke.
— OR NOT OR NOT Logische ODER-Verknüpfung des invertierten Zustandes des spezifi- 350
zierten Bits mit der Ausführungsbedingung.
— OUT OUTPUT Das Operanden-Bit wird mit der Ausführungsbedingung im WAHR- 352
(Ausgabe) Zustand auf EIN und mit der Ausführungsbedingung im FALSCH-Zu-
stand auf AUS gesetzt.
— OUT NOT OUTPUT NOT Das Operanden-Bit wird mit der Ausführungsbedingung im WAHR- 352
(Negierte Ausgabe) Zustand auf AUS und mit der Ausführungsbedingung im FALSCH-
Zustand auf EIN gesetzt (invertierende Operation).
— RSET RESET Setzt das Operanden–Bit auf AUS, wenn die Ausführungsbedingung 352
(Zurücksetzen) WAHR ist und hat keine Auswirkung auf den Status des Operanden–
Bit, wenn die Ausführungsbedingung FALSCH ist.
— SET SET Setzt das Operanden–Bit auf EIN, wenn die Ausführungsbedingung 352
(Setzen) WAHR ist und hat keine Auswirkung auf den Status des Operanden–
Bit, wenn die Ausführungsbedingung FALSCH ist.
— TIM TIMER Einschaltverzögerter (dekrementierender) Zeitgeber. 363
(Zeitgeber
00 NOP NO OPERATION Nichts wird ausgeführt und die Programmabarbeitung wird mit dem 355
(Keine Bearbeitung) nächsten Befehl fortgesetzt.
01 END END Jeweils am Programmende erforderlich. 355
(Ende)
02 IL INTERLOCK Ist eine Verriegelungsbedingung auf AUS gesetzt, werden alle Aus- 356
(Verriegelung) gänge und Zeitgeber-Istwerte zwischen dem gegenwärtigen IL(02)-
und dem nächsten ILC(03)-Befehl auf AUS gesetzt bzw
bzw. zurückge-
03 ILC INTERLOCK CLEAR setzt. Andere Befehle werden als NOP betrachtet. Die Zähler-Ist- 356
(Verriegelung löschen) werte bleiben erhalten.
04 JMP JUMP Ist die Ausführungsbedingung für den JMP(04)-Befehl FALSCH, 358
(Sprung) werden alle Befehle zwischen JMP(04)
( ) und dem entsprechenden
JME(05) ignoriert und übersprungen.
übersprungen
05 JME JUMP END 358
(Sprungende)
06 (@)FAL FAILURE ALARM AND Generiert einen geringfügigen Fehler und zeigt die entsprechende 359
RESET FAL-Nummer auf der Programmierkonsole an.
(Fehleralarm und Rück-
setzung)
07 FALS SEVERE FAILURE Generiert einen schwerwiegenden Fehler und zeigt die entspre- 359
ALARM chende FALS-Nummer auf der Programmierkonsole an.
(Scherwiegender Fehler-
alarm)
08 STEP STEP DEFINE Bei Verwendung mit einem Steuerbit wird der Anfang eines neuen 360
(Schrittdefinition) Schrittes spezifiziert und der vorhergehende Schritt zurückgesetzt.
Bei Verwendung ohne N wird das Ende der Schrittausführung spezifi-
ziert.
09 SNXT STEP START Wird mit einem Steuerbit verwendet, um das Ende des Schrittes zu 360
(Schrittstart) kennzeichnen, diesen Schritt zurückzusetzen und zu beenden sowie
den nächsten Schritt zu starten.
541
Programmierbefehle Anhang A
542
Programmierbefehle Anhang A
543
Programmierbefehle Anhang A
Erweiterte Befehle
Die folgende Tabelle enthält die Befehlen, die als Erweiterte Befehle in den SPS–Systemen der CPM2A–,
CPM2C– und SRM1(–V2)–Serie betrachtet werden können. Der Funktionscode für standardmäßig zugewiesene
Befehle ist ebenfalls aufgeführt.
Code AWL–Code Bezeichnung Funktion CPU– Seite
Baugruppe
17 (@)ASFT ASYNCHRONOUS SHIFT Erstellt ein Schieberegister, das den Inhalt zweier Alle 386
REGISTER benachbarter Worte austauscht.
(Asynchrones Schieberegi-
ster)
47 (@)RXD RECEIVE Empfängt Daten über eine Kommunikationsschnitt- Alle 486
(Empfangen) stelle.
48 (@)TXD TRANSMIT Sendet Daten über eine Kommunikationsschnitt- Alle 487
(Übertragen) stelle.
60 CMPL DOUBLE COMPARE Vergleicht zwei 8-stellige Hexadezimal-Werte mitein- Alle 413
(Doppelwort–Vergleich) ander.
61 (@)INI MODE CONTROL Beginnt und stoppt Zähloperationen, vergleicht und Alle 374
(Zählersteuerung) ändert Zähler-Istwerte und stoppt Impulsausgaben.
62 (@)PRV HIGH-SPEED COUNTER PV Liest Istwerte und Statusdaten des Schnellen Zäh- CPM2A/ 376
READ lers. CPM2C
(Schnellen Zähler–Istwert ein-
lesen)
63 (@)CTBL COMPARISON TABLE LOAD Vergleicht Zähler-Istwerte und erstellt eine Ver- CPM2A/ 371
(Vergleichstabelle) gleichstabelle. CPM2C
64 (@)SPED SPEED OUTPUT Ausgabe von Impulsen mit der spezifizierten Fre- CPM2A/ 467
(Geschwindigkeitsausgabe) quenz. (10 Hz bis 10 kHz in 10 Hz-Schritten). Die CPM2C
Impulsfrequenz kann während der Ausgabe geändert
werden.
65 (@)PULS SET PULSES Ausgabe einer spezifizierten Anzahl von Impulsen CPM2A/ 466
(Impulsausgabe) mit der spezifizierten Frequenz. Die Ausgabe kann CPM2C
erst unterbrochen werden, nachdem die eingestellte
Anzahl von Impulsen ausgegeben wurde.
66 (@)SCL SCALING Führt eine Skalierung des berechneten Wertes aus. CPM2 397
(Skalierung) SRM1–V2
Verwenden Sie die Programmierkonsole oder CX–
Programmer/SYSWIN, um auf diesen Befehl für die
SRM1(–V2) zuzugreifen.
67 (@)BCNT BIT COUNTER Zählt alle Bits, die in einem Block mit spezifizierter Alle 479
(Bit–Zähler) Wortanzahl auf EIN gesetzt sind.
68 (@)BCMP BLOCK COMPARE Ermittelt, ob sich der Wert eines Wortes innerhalb Alle 411
(Blockvergleich) von 16 Grenzwerten befindet (untere und obere
Grenzwerte werden spezifiziert).
69 (@)STIM INTERVAL TIMER Steuert Interval-Zeitgeber, die für zeitgesteuerte In- Alle 484
(Intervall–Zeitgeber) terrupts verwendet werden.
544
Programmierbefehle Anhang A
545
Programmierbefehle Anhang A
546
Anhang B
Fehler– und arithmetischen Merker
Die folgende Tabelle enthält Befehle, die die ER, CY–, GR-, LE- und EQ-Merker beeinflussen. Der ER-Merker wird
im allgemeinen gesetzt, wenn Operandendaten außerhalb des erforderlichen Bereiches liegen. Der CY-Merker
kennzeichnet die Ergebnisse von Rechen- oder Datenverschiebeoperationen. Der GT-Merker zeigt an, daß ein
Vergleichswert größer ist als festgelegte Werte. Der LT-Merker kennzeichnet kleinere und der EQ-Merker gleich-
große Werte. Darüber hinaus wird der EQ-Merker gesetzt, wenn das Ergebnis einer Rechenoperation Null ist.
Sehen Sie Kapitel 7 Befehlssatz für weitere Informationen.
Die senkrechten Pfeile in der Tabelle kennzeichnen Merker, die, entsprechend des Befehlsergebnisses, gesetzt
oder rückgesetzt werden.
Kontaktplan-Befehle sowie die Befehle TIM und CNT werden bei gesetztem ER-Merker ausgeführt. Die mit einem
senkrechten Pfeil unter der Spalte ER gekennzeichneten Befehle jedoch nicht. Alle anderen Merker der Tabelle
werden bei gesetztem ER-Merker nicht gesetzt.
Die nicht aufgeführten Befehle beeinflussen die in der Tabelle aufgeführten Merker nicht. Hier wird nur die nicht-
flankengesteuerte Version jedes Befehls dargestellt, Befehle mit flankengesteuerter Ausführung beeinflussen die
Merker jedoch in derselben Weise.
Die ER-, CY-, GT-, LT- und EQ-Merker werden rückgesetzt, wenn END(01) ausgeführt wird. Ihr Status kann also
nicht durch die Programmierkonsole überwacht werden.
Der Status der ER–, CY–, GT–, LT– und EQ–Merker wird von der Ausführungsbedingung beeinflußt. Wird ein sie
beeinflußender Befehl ausgeführt, so ändert sich ihr Status. Befehle mit flankengesteuerter Ausführung werden
jedoch nur einmal bei einem Wechsel ihrer Ausführungsbedingung ausgeführt (bei einem Wechsel von EIN auf
AUS oder von AUS auf EIN). Sie werden erst wieder bei der nächsten spezifizierten Änderung ihrer Ausführungs-
bedingung ausgeführt. Der Status der ER–, CY–, GT–, LT– und EQ–Merker wird somit von einem Befehl mit flan-
kengesteuerter Ausführung nur beeinflußt, wenn sich die Ausführungsbedingung ändert und wird nicht während
der Überwachung, in der keine Befehle ausgeführt werden, d.h., wenn der spezifizierte Wechsel nicht in der Aus-
führungsbedingung eintritt. Wird ein Befehl mit flankengesteuerter Ausführung nicht ausgeführt, ändert sich der
Status der ER–, CY–, GT–, LT– und EQ–Merker nicht und behält den vom letzten ausgeführten Befehl generierten
Status.
Befehle 25503 (ER) 25504 (CY) 25505 (GR) 25506 (EQ) 25507 (LE) 25402 (N) Seite
TIM Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 363
CNT 369
END(01) AUS AUS AUS AUS AUS AUS 355
STEP(08) Unbeeinflußt Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß 360
SNXT(09) 360
CNTR(12) 370
TIMH(15) 364
WSFT(16) 380
CMP(20) Unbeeinflußt Unbeeinflußt 409
MOV(21) Unbeeinflußt Unbeeinflußt Unbeeinflußt 388
MVN(22) 388
BIN(23) AUS 416
BCD(24) Unbeeinflußt 417
ASL(25) Unbeeinflußt Unbeeinflußt 381
ASR(26) AUS 381
ROL(27) 382
ROR(28) 382
COM(29) Unbeeinflußt Unbeeinflußt Unbeeinflußt 457
ADD(30) Unbeeinflußt 434
SUB(31) 435
547
Fehler– und arithmetischen Merker Anhang B
Befehle 25503 (ER) 25504 (CY) 25505 (GR) 25506 (EQ) 25507 (LE) 25402 (N) Seite
MUL(32) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 437
DIV(33) 438
ANDW(34) 458
ORW(35) 458
XORW(36) 459
XNRW(37) 460
INC(38) Unbeeinflußt 460
DEC(39) 461
STC(40) Unbeeinflußt
U bee uß EIN Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß Unbeeinflußt
U bee uß 434
CLC(41) AUS 434
MSG(46) Unbeeinflußt 477
ADB(50) Unbeeinflußt Unbeeinflußt 444
SBB(51) 445
MLB(52) Unbeeinflußt Unbeeinflußt Unbeeinflußt 446
DVB(53) Unbeeinflußt Unbeeinflußt Unbeeinflußt 447
ADDL(54) Unbeeinflußt 440
SUBL(55) 441
MULL(56) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 442
DIVL(57) 443
BINL(58) AUS 418
BCDL(59) Unbeeinflußt 418
XFER(70) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 389
BSET(71) 390
XCHG(73) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 391
SLD(74) 383
SRD(75) 384
MLPX(76) 419
DMPX(77) 421
SDEC(78) 423
DIST(80) Unbeeinflußt Unbeeinflußt Unbeeinflußt 392
COLL(81) 393
MOVB(82) Unbeeinflußt Unbeeinflußt 395
MOVD(83) 396
SFTR(84) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 385
TCMP(85) Unbeeinflußt 410
ASC(86) Unbeeinflußt 426
SBS(91) 462
MCRO(99) 464
548
Fehler– und arithmetischen Merker Anhang B
*Hinweis Je nach den Konvertierungsergebnissen kann NEG(––) ebenfalls den Zustand des Unterlauf-Merkers
(SR 25405) beeinflussen.
549
Anhang C
Speicherbereiche
CPM1/CPM1A–Datenbereiche
Datenbereich–Struktur
Die folgenden Datenbereiche können in der CPM1/CPM1A verwendet werden.
Datenbereich Worte Bits Kommentare
E/A– Eingangs– IR 000 bis IR 009 IR 00000 bis IR 00915 Diese Bits können den externen E/A–Klemmen
Bereich1 Bereich (10 Worte) (160 Bits) zugewiesen
g werden.
Ausgangs– IR 010 bis IR 019 IR 01000 bis IR 01915
Bereich (10 Worte) (160 Bits)
Arbeits– IR 200 bis IR 231 IR 20000 bis IR 23115 Arbeitsmerker können innerhalb des Programms
bereich (32 Worte) (512 Bits) beliebig verwendet werden.
SR (Systemmerker–be- SR 232 bis SR 255 SR 23200 bis SR 25515 Diese Systemmerker besitzen spezielle Funktio-
reich) (24 Worte) (384 Bits) nen, z.B. als Merker– und Steuerbits.
TR (Temporärer --- TR 0 bis TR 7 Diese Merker dienen zur temporären Speiche-
Merkerbereich) (8 Bits) rung des EIN/AUS–Zustandes in Programmver-
zweigungen.
HR–Bereich2 HR 00 bis HR 19 HR 0000 bis HR 1915 Diese Merker speichern Daten und behalten ih-
(20 Worte) (320 Bits) ren Zustand (gesetzt/rückgesetzt) auch nach
Ausschalten der Versorgungsspannung.
AR–Bereich2 AR 00 bis AR 15 AR 0000 bis AR 1515 Diese Systemmerker besitzen spezielle Funktio-
(16 Worte) (256 Bits) nen, z.B. als Merker– und Steuerbits.
LR1 LR 00 bis LR 15 LR 0000 bis LR 1515 Wird zur 1:1-Datenübertragung mit einer anderen
(Schnittstellenmerker– (16 Worte) (256 Bits) SPS verwendet.
bereich
Zeitgeber–/ TC 000 bis TC 127 (Zeitgeber–/Zähler–Nr.)3 Für Zeitgeber und Zähler werden die Nummern
Zählerbereich2 aus dem selben Bereich verwendet.
DM Lesen/ DM 0000 bis DM 0999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten- Schreiben2 DM 1022 bis DM 1023 weise. Die Worte werden auch beim Ausschalten
merker- (1002 Worte) der Versorgungsspannung aufrecht erhalten.
b i h)
bereich)
Fehler– DM 1000 bis DM 1021 --- Wird verwendet, um den Fehlercode der aufge-
protokoll2 (22 Worte) tretenen Fehler zu speichern. Diese Worte kön-
nen als normale Lese–/Schreib–DM verwendet
werden, wenn die Fehlerprotokoll–Funktion nicht
angewendet wird.
Nur Lesen4 DM 6144 bis DM 6599 --- Können nicht vom Programm überschrieben wer-
(456 Worte) den.
SPS–Konfi- DM 6600 bis DM 6655 --- Speichert verschiedene Steuerparameter von
guration4 (56 Worte) SPS–Operationen.
Hinweis 1. IR– und LR–Bits, denen keine bestimmte Funktionen zugewiesen sind, können als Arbeitsmerker
verwendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Schreib–/Lese–Bereichs wird bei einem Stromausfall
über einen Kondensator nullspannungssicher beibehalten. Die Sicherungszeit variiert mit der Um-
gebungstemperatur; bei 25_C versorgt der Kondensator den Speicher 20 Tage. Überschreitet die
Dauer der Versorgungsspannungs–Untebrrechung die Sicherungszeit, wird der Speicherinhalt ge-
löscht und AR1314 aktiviert. (Dieser Merker wird eingeschaltet, wenn Daten nicht mehr durch den
eingebauten Kondensator beibehalten werden können.) In Abschnitt 2-1-2 Merkmale des Techni-
schen Handbuches der CPM1 finden Sie hierzu eine Graphik mit der Gegenüberstellung von Spei-
cherzeit und Temperatur.
3. Beim Zugriff auf einen Istwert werden TC–Worte als Wortdaten verwendet. Beim Zugriff auf Fertig-
merker als Bitdaten.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-
grammiergerät geändert werden.
SR–Bereich
Diese Bits dienen hauptsächlich als Merker bei CPM1/CPM1A–Betrieb oder sie enthalten Ist– und Sollwerte für
verschiedene Funktionen. Die Funktionen des SR–Bereichs sind in der nachstehenden Tabelle beschrieben.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen, aber sie können nicht über
den Kontaktplan gesetzt werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gelesenen.
551
Speicherbereiche Anhang C
552
Speicherbereiche Anhang C
553
Speicherbereiche Anhang C
Hinweis DM 6601 in der SPS–Konfiguration kann gesetzt werden, um den vorhergehenden Status des E/A–Sy-
stemhaftmerkers (SR 25212) und den des Zwangssetzungsstatus–Haftmerkers (SR 25211) nach dem
Ausschalten der Versorgungsspannung beizubehalten. Liegt jedoch keine Versorgungsspannung für
einen längeren Zeitraum als die Sicherungszeit an, wird der Status gelöscht. Sehen Sie für Einzelheiten
bezüglich der Sicherungszeit das CPM1Aoder CPM1–Bedienerhandbuch. Sehen Sie Abschnitt 1-1-2
CPM1–/CPM1A–SPS–Konfigurationseinstellungen für Einzelheiten zur SPS–Konfiguration.
AR–Bereich
Diese Bits dienen hauptsächlich als Merker für den CPM1/CPM1A–Betrieb. Diese Merker behalten auch dann
ihren Zustand bei, wenn die Versorgungsspannung der CPM1/CPM1A abgeschaltet wurde oder bei Betriebsbe-
ginn oder –ende.
Wort(e) Bit(s) Kommentare Seite
AR 00, 00 bis 15 Nicht verwendet
AR 01
AR 02
0 00 Erweiterungsbaugruppen–Fehlermerker für 1. Baugruppe Dieser
ese Merkere e wird
daaktiviert,
e , ---
01 Erweiterungsbaugruppen–Fehlermerker für 2. Baugruppe wenn ein i F
Fehler
hl iin d
der ent-
t
(Wird nicht von der CPM1 CPU–Baugruppe ohne “–V1”–Zusatz sprechenden Baugruppe
verwendet.) auftritt.
554
Speicherbereiche Anhang C
555
Speicherbereiche Anhang C
Hinweis 1. Die Angaben sind wie folgt, je nach der Einheiteneinstellung der Zyklus–Überwachungszeit
(DM 6618):
Anfänglicher Status: 0,1 ms–Einheit
Bei Einstellung der 10 ms–Einheit: 0,1 ms–Einheit
Bei Einstellung der 100 ms–Einheit: 1 ms–Einheit
Bei Einstellung der 1 s–Einheit: 10 ms–Einheit
2. Bereiche, die nicht verwendet werden können, werden gelöscht, wenn die Spannung wieder einge-
schaltet wird.
3. Der Inhalt von AR 10 wird vom eingebauten Kondensator abgesichert. Liegt jedoch keine Versor-
gungsspannung für einen längeren Zeitraum als die Sicherungszeit an, wird der Inhalt gelöscht.
Sehen Sie für Einzelheiten bezüglich der Sicherungszeit das CPM1Aoder CPM1–Bedienerhand-
buch.
CPM2A/CPM2C–Speicherbereiche
Datenbereich–Struktur
Die folgenden Datenbereiche können in der CPM2A/CPM2C verwendet werden.
Datenbereich Worte Bits Kommentare
E/A– Eingangs– IR 000 bis IR 009 IR 00000 bis IR 00915 Diese Bits können den externen E/A–Klemmen
Bereich1 bereich (10 Worte) (160 Bits) g
zugewiesen werden.
Ausgangs– IR 010 bis IR 019 IR 01000 bis IR 01915
bereich (10 Worte) (160 Bits)
Arbeits– IR 020 bis IR 049 IR 02000 bis IR 04915 Arbeitsmerker können innerhalb des Programms
bereich IR 200 bis IR 227 IR 20000 bis IR 22715 beliebig verwendet werden.
(58 Worte) (928 Bit)
SR (Systemmerker–be- SR 228 bis SR 255 SR 22800 bis SR 25515 Diese Systemmerker besitzen spezielle Funktio-
reich) (28 Worte) (448 Bits) nen, z.B. als Merker– und Steuerbits.
TR (Temporärer --- TR 0 bis TR 7 Diese Bits dienen zur temporären Speicherung
Merkerbereich) (8 Bits) des EIN/AUS–Zustandes in Programmverzwei-
gungen.
HR–Bereich2 HR 00 bis HR 19 HR 0000 bis HR 1915 Diese Bits speichern Daten und behalten ihren
(20 Worte) (320 Bits) Zustand (gesetzt/rückgesetzt) auch nach Aus-
schalten der Versorgungsspannung.
AR–Bereich2 AR 00 bis AR 23 AR 0000 bis AR 2315 Diese Systemmerker besitzen spezielle Funktio-
(24 Worte) (384 Bits) nen, z.B. als Merker– und Steuerbits.
LR1 LR 00 bis LR 15 LR 0000 bis LR 1515 Wird zur 1:1-Datenübertragung mit einer anderen
(Schnittstellenmerker– (16 Worte) (256 Bits) SPS verwendet.
bereich1
Zeitgeber–/ TC 000 bis TC 255 (Zeitgeber–/Zähler–Nr.)3 Für Zeitgeber und Zähler werden Nummern aus
Zählerbereich2 dem selben Bereich verwendet.
DM Lesen/ DM 0000 bis DM 1999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten- Schreiben2 DM 2022 bis DM 2047 weise. Die Worte werden auch beim Ausschalten
merker- (2,026 Worte) der Versorgungsspannung aufrecht erhalten.
b i h)
bereich)
Fehler– DM 2000 bis DM 2021 --- Wird verwendet, um den Fehlercode der aufge-
protokoll2 (22 Worte) tretenen Fehler zu speichern. Diese Worte kön-
nen als normale Lese–/Schreib–DM verwendet
werden, wenn die Fehlerprotokoll–Funktion nicht
angewendet wird.
Nur Lesen4 DM 6144 bis DM 6599 --- Können nicht vom Programm überschrieben wer-
(456 Worte) den.
SPS–Konfi- DM 6600 bis DM 6655 --- Speichert verschiedene Steuerparameter von
guration4 (56 Worte) SPS–Operationen.
556
Speicherbereiche Anhang C
Hinweis 1. IR– und LR–Worte, die keiner bestimmten Funktion zugewiesen sind, können als Arbeitsworte ver-
wendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Schreib/Lese–Bereichs wird durch die Batterie der
CPU–Baugruppe abgesichert. Wird die Batterie entfernt oder fällt diese aus, gehen die Daten die-
ser Bereiche verloren und werden auf die Standardwerte zurückgesetzt. (In der CPM2C–CPU–
Baugruppen ohne Batterie werden diese Bereiche durch einen Kondensator nullspannungssicher
gespeichert. Bei einer Temperatur von 25_C hält der Kondensator den Speicher für 10 Tage auf-
recht.)
3. Wird eine TC–Nummer als Wortoperand verwendet, greift sie auf den Istwert des Zeitgebers oder
Zählers zu; wird diese als Bitoperand verwendet, greift sie auf den Fertigmerker zu.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-
grammiergerät geändert werden. Das Programm und die Daten in DM 6144 bis DM 6655 werden
im Flash–Speicher abgesichert.
SR–Bereich
Diese Bits dienen hauptsächlich als Merker beim CPM2A/CPM2C–Betrieb oder sie enthalten Ist– und Sollwerte
für verschiedene Funktionen. Die Funktionen des SR–Bereichs werden in der nachstehenden Tabelle erläutert.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen aber sie können nicht über
den Kontaktplan geschrieben werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gele-
senen.
557
Speicherbereiche Anhang C
558
Speicherbereiche Anhang C
Hinweis DM 6601 in der SPS–Konfiguration kann gesetzt werden, um den vorhergehenden Status des Zwangs-
setzungsstatus–Systemhaftmerkers (SR 25211) und den des E/A–Systemhaftmerker (SR 25212)
nach dem Ausschalten der Versorgungsspannung aufrechtzuerhalten. Sehen Sie Abschnitt 1-1-3
CPM2A–/CPM2C–SPS–Konfigurationseinstellungen für Einzelheiten zur SPS–Konfiguration.
AR–Bereich
Diese Bits dienen hauptsächlich als Merker bei dem CPM2A/CPM2C–Betrieb. Diese Merker behalten auch dann
ihren Zustand, wenn die Versorgungsspannung der CPM2A/CPM2C abgeschaltet wurde oder bei Betriebsbeginn
oder –ende.
559
Speicherbereiche Anhang C
560
Speicherbereiche Anhang C
561
Speicherbereiche Anhang C
562
Speicherbereiche Anhang C
Hinweis 1. Die gleichen Daten können sofort mit PRV(62) gelesen werden.
2. Die Uhrzeit und das Datum können eingestellt werden, während AR 2114 gesetzt ist. Die neue Ein-
stellung tritt in Kraft, wenn AR 2115 aktiviert wird. (AR 2114 und AR 2115 werden automatisch zu-
rückgesetzt, wenn die neue Einstellung wirksam wird.)
Diese Worte enthalten 0000 in CPM2C CPU–Baugruppen, die nicht mit der Uhrfunktion ausgestat-
tet sind.
3. Die Einheiten für die maximale und aktuelle Zykluszeit werden durch die Einstellung in Bit 08 bis 15
von DM 6618 bestimmt. Eine Einstellung von 00 spezifiziert 0,1 ms–Einheit, 01 spezifiziert 0,1 ms–
Einheit, 02 spezifiziert 1 ms–Einheit und 03 spezifiziert 10 ms–Einheit.
563
Speicherbereiche Anhang C
SRM1–Datenbereich
Datenbereich–Struktur
Die folgenden Datenbereiche können in der SRM1 verwendet werden.
Datenbereich Worte Bits Kommentare
E/A– Eingangs– IR 000 bis IR 007 IR 00000 bis IR 00715 Diese Bits sind den externen E/A–Modulen zuge-
Bereich1 Bereich (8 Worte) (128 Bits) ordnet. Der EIN/AUS–Zustand der E/A–Bits ent-
spricht dem EIN/AUS–Zustand der Ein–/Aus-
gänge.
Ausgangs– IR 010 bis IR 017 IR 01000 bis IR 01715 (Wird der CompoBus/S in der 128 Bit–Betriebsart
Bereich (8 Worte) (128 Bits) verwendet, können IR 004 bis IR 007 und IR 014
bis IR 017 als Arbeitsmerker verwendet werden.)
Arbeits– IR 008 bis IR 009 IR 00800 bis IR 00915 Arbeitsmerker können innerhalb des Programms
bereich IR 018 bis IR 019 IR 01800 bis IR 01915 beliebig verwendet werden. IR 232 bis IR 239
IR 200 bis IR 239 IR 20000 bis IR 23915 werden jedoch als MAKRO–Eingangsbereich
(44 Worte) (704 Bit) benötigt, wenn MCRO(99) verwendet wird.
SR (Systemmerker–be- SR 240 bis SR 255 SR 24000 bis SR 25507 Diese Bits speichern Merker und Sollwerte/Ist-
reich) (16 Worte) (248 Bits) werte für den SRM1–Betrieb. Sehen Sie SR–Be-
reich.
TR (Temporärer --- TR 0 bis TR 7 In einem komplizierten Kontaktplan werden diese
Merkerbereich) (8 Bits) Bits für die Zwischenspeicherung des EIN/AUS–
Zustands in Programmverzweigungen intern ver-
wendet. Sie werden nur in AWL dargestellt. Diese
temporären Bits können nicht innerhalb des sel-
ben Blocks verwendet werden. Bei unterschiedli-
chen Blöcken können jedoch einige verwendet
werden. Der EIN/AUS–Zustand dieser Bits kann
nicht mit der Überwachungsfunktion eines Pro-
grammiergerätes überwacht werden.
HR–Bereich2 HR 00 bis HR 19 HR 0000 bis HR 1915 Diese Haftmerker speichern Daten und behalten
(20 Worte) (320 Bits) ihren Zustand (gesetzt/rückgesetzt) auch nach
dem Ausschalten der Versorgungsspannung oder
bei Betriebsbeginn oder –ende bei. Sie werden
wie Hilsbits verwendet.
AR–Bereich2 AR 00 bis AR 15 AR 0000 bis AR 1515 Diese Systemmerker besitzen spezielle Funktio-
(16 Worte) (256 Bits) nen, z.B. als Merker– und Steuerbits. AR 04 bis
07 werden als Slave–Bits verwendet. Sehen Sie
AR–Bereich.
LR1 LR 00 bis LR 15 LR 0000 bis LR 1515 Wird für die 1:1–Datenübertragung mit einer an-
(Schnittstellenmerker– (16 Worte) (256 Bits) deren SRM1, CQM1H oder C200H usw. verwen-
bereich det.
Zeitgeber–/ TC 000 bis TC 127 (Zeitgeber–/Zähler–Nr.)3 Zeitgeber und Zähler verwenden die TIM–,
Zählerbereich2 TIMH(15)–, CNT– and CNTR(12)–Befehle. Für
Zeitgeber und Zähler werden Nummern aus dem
selben Bereich verwendet.
Für die Istwerte des Zeitgebers/Zählers müssen
die Zeitgeber–/Zähler–Nummern als Worte spezi-
fiziert werden. Die Daten des Zählers bleiben
auch nach Abschalten der SRM1–Versorgungs-
spannung oder bei Betriebsbeginn oder –ende
gespeichert.
Werden die Zeitgeber/Zähler als Fertig–Merker
behandelt, müssen die Nummern als Bitdaten
spezifiziert werden.
DM Lesen/ DM 0000 bis DM 1999 --- In diesem Bereich erfolgt der Datenzugriff wort-
(Daten- Schreiben2 (2.000 Worte) weise. Die Worte werden auch beim Ausschalten
merker- der Versorgungsspannung oder bei Beginn oder
bereich) Abschalten des Betriebes aufrechterhalten.
Die Lese–/Schreib–Bereiche können beliebig in-
nerhalb des Programms gelesen und beschrie-
ben werden.
Fehler– DM 2000 bis DM 2021 --- Speichert Zeitpunkt und Fehlercode. Sehen Sie
Protokoll4 (22 Worte) Abschnitt 7-5 Codierung von Befehlen.
Nur Lesen4 DM 6144 bis DM 6599 --- Können nicht vom Programm überschrieben wer-
(456 Worte) den.
SPS–Konfi- DM 6600 bis DM 6655 --- Speichert verschiedene Steuerparameter von
guration4 (56 Worte) SPS–Operationen.
Hinweis 1. IR– und LR–Bits, die keiner bestimmten Funktion zugewiesen sind, können als Arbeitsmerker ver-
wendet werden.
564
Speicherbereiche Anhang C
2. Der Inhalt des HR–, LR–, Zähler– und DM–Schreib–/Lese–Bereichs wird bei einem Stromausfall
über einen Kondensator nullspannungssicher beibehalten. Die Sicherungszeit variiert mit der Um-
gebungstemperatur; bei 25_C versorgt der Kondensator den Speicher 20 Tage. In Abschnitt 2-1-2
Merkmale des Technischen Handbuches der SRM1 finden Sie dazu eine Graphik mit der Gegen-
überstellung von Speicherzeit und Temperatur.
3. Beim Zugriff auf einen Istwert werden TC–Worte als Wortdaten verwendet. Beim Zugriff auf Fertig–
Merker als Bitdaten.
4. Die Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-
grammiergerät geändert werden.
SR–Bereich
Diese Bits dienen hauptsächlich als Merker bei SRM1–Betrieb oder sie enthalten Ist– und Sollwerte für verschie-
dene Funktionen. Die Funktionen des SR–Bereichs werden in der nachstehenden Tabelle erläutert.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen aber sie können nicht über
den Kontaktplan gesetzt werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gelesenen.
565
Speicherbereiche Anhang C
AR–Bereich
Diese Bits dienen hauptsächlich als Merker für den SRM1–Betrieb. Diese Merker behalten auch dann ihren Zu-
stand bei, wenn die Versorgungsspannung der SRM1 abgeschaltet wurde oder bei Betriebsbeginn oder –ende.
566
Speicherbereiche Anhang C
567
Speicherbereiche Anhang C
568
Anhang D
E/A–Zuweisung
Systembezeichnung Hersteller
ese e Prüfer
üe Genehmigt
Ge e g von
o
SPS–Modell Blatt–Nr.
569
Anhang E
Programm–Codierblatt
Systembezeichnung Hersteller
ese e Prüfer
üe Genehmigt
Ge e g von
o
SPS Diagramm–Nr.
571
Programm–Codierblatt Anhang E
572
Programm–Codierblatt Anhang E
573
Anhang F
Liste der FAL– Nummern
575
Liste der FAL– Nummern Anhang F
576
Anhang G
Erweiteter ASCII–Code
Die folgenden Funktions dienen zur Ausgabe von Zeichen an die Programmierkonsole oder Daten–Zugriffs-
konsole unter Verwendung des MSG(46)–Befehls. Sehen Sie dazu die Seite 477.
EP
Vier äußersten rechten Bits
577
Index
BCMP(68), 411
Nummern BCNT(67), 479
1:1–PC–Link BIN(23), 416
CPM1/CPM1A, 212 BINL(58), 418
CPM2A/CPM2C, 243 BSET(71), 390
SRM1, 258 CLC(41), 434
7–Segement–Anzeige, Konvertierung der Daten, 423 CMP(20), 409
CMPL(60), 413
CNT, 369
A CNTR(12), 370
COLL(81), 393
Analog–Eingangsbaugruppen, Mittelwertfunktion, 174 COM(29), 457
Analog-Eingangsbaugruppen, Schaltung offen-Erfassungs- CTBL(63), 371
funktion, 174 DEC(39), 461
analoge Ausgänge, 163 , 175 DIFD(14), 331 , 354–363
Analoge Ausgangsbaugruppen, Ausgabebereich, 172 Verwendung in Sprüngen, 358
Verwendung von Verriegelungen, 356
Analoge E/A–Baugruppen, 142
DIFU(13), 331 , 354–363
für CPM1A/CPM2A, 160 , 169
Verwendung in Sprüngen, 358
analoge E/A–Funktionen, 142 , 160 , 169 Verwendung von Verriegelungen, 356
analoge Werteinstellungen, 145 DIST(80), 392
Analogeingänge, 163 , 175 DIV(33), 438
Analogeingangs–Baugruppen, Eingangsbereich, 170 DIVL(57), 443
DMPX(77), 421
Anweisungsvorrat, INI(61), 127
DVB(53), 447
Anzeige, für Temperaturfühler–Baugruppen, 196 END(01), 317 , 355
Anzeigen, CompoBus/S–LED–Anzeigen, 203 FAL(06), 359
arithmetische Merker, 154 , 341 FALS(07), 359
FCS(––), 479
ASCII, Konvertierung der Daten, 426 , 428
HEX(––), 428
Ausführungsbedingung, Definition, 312 HMS(––), 431
Ausgangsbit HTS(65), 430
Steuerung der EIN/AUS–Zeit, 352 IL(02), 327 , 356–357
Steuerung des Zustandes, 332 ILC(03), 327 , 356–357
Ausgangsbits, Steuerung des Status, 331 INC(38), 460
AWL, Konvertierung, 312–330 INI(61), 374
INT(89), 77 , 481
IORF(97), 478
B JME(05), 358
JMP(04), 358
Befehle JMP(04) und JME(05), 329
Ausführungszeiten KEEP(11), 353
CPM1/CPM1A, 500 in Steuerung des Bitzustandes, 332
CPM2A/CPM2C, 510 LD, 314 , 350
SRM1, 525 LD NOT, 314 , 350
AWL, Kontaktplan, 348 MAX(––), 449
Befehlssatz–Listen, 345 MCRO (99), 151
Erweiterung, 154 MCRO(99), 464
rechte Hand–Befehle, Programmierung mehrerer, 325 MIN(––), 451
Unterprogramme, 462 MLB(52), 446
Befehle mit flankengesteuerter Ausführung, 342 MLPX(76), 419
Funktions–Codes, 340 MOV(21), 388
Befehlsatz, KOP–Befehle, 314 MOVB(82), 395
MOVD(83), 396
Befehlssatz, 541
MSG(46), 477
ACC(––), 470
MUL(32), 437
ADB(50), 444
MULL(56), 442
ADD(30), 434
MVN(22), 388
ADDL(54), 439
NOP(00), 355
AND, 314 , 350
NOT, 312
kombiniert mit OR, 315
Operanden, 311
AND LD, 317 , 351
OR, 315 , 350
kombinieren mit OR LD, 320
kombiniert mit AND, 315
Verwendung in Logik–Blöcken, 319
OR LD, 318 , 351
AND NOT, 314 , 350
kombinieren mit AND LD, 320
ANDW(34), 458
Verwendung in Logik–Blöcken, 320
ASC(86), 426
OR NOT, 315 , 350
ASFT(17), 386
ORW(35), 458
ASL(25), 381
OUT, 316 , 352
ASR(26), 381
OUT NOT, 316 , 352
AVG(––), 453
PID(––), 403
BCD(24), 417
PRV(62), 376
BCDL(59), 418
579
Index
PULS(65), 126
PWM(––), 473 E
RESET, 331 E/A–Ansprechzeit
RET(93), 464 CPM1/CPM1A. See Zeitverhalten
ROL(27), 382 CPM2A/CPM2C. See Zeitverhalten
ROR(28), 382 Kommunikation in einem 1:1–PC–Link–Verbund
RSET, 352–353 CPM2A/CPM2C, 507
RXD (47), 232 SRM1, 523
RXD(47), 255 , 486 Kommunikation in einem 1:1–Verbund, CPM1/CPM1A, 497
SBB(51), 445 SRM1. See Zeitverhalten
SBN(92), 26 , 71 , 464 E/A–Punkte, Auffrischung, 478
SBS(91), 462
Eingänge, mit Impulsspeicherung, 147
SCL(66), 397
SCL2(––), 399 Eingangs–Betriebsart, Wahl, 131
SCL3(––), 401 Eingangs–Zeitkonstanten, SPS–Konfigurationseinstellungen,
SDEC(78), 423 22
SET, 331 , 352–353 Eingangsmodus, CPM2A/CPM2C, 44
SFT(10), 379 Einschalt–Betriebsart, SPS–Konfigurationseinstellungen, 19
SFTR(84), 385
Einstellschaltungen, 145
SLD(74), 383
SNXT(09), 360 Einstellungen
SPED(64), 126 , 467 ändern, 2
SRCH(––), 448 Basisbetrieb
SRD(75), 384 Haltebit–Status, 20
STC(40), 434 Start–Betriebsart, 19
STEP(08), 360 E/A–Betrieb, 19
STIM(69), 484 Schnittstellen–Service–Zykluszeit, 22
STUP(––), 489 Schnittstellen–Zykluszeit, 21
SUB(31), 435 E/A–Vorgänge, Schnittstellen–Service–Zykluszeit, 21
SUBL(55), 441 Kommunikation, 208
SUM(––), 455 Host–Link
SYNC(––), 475 CPM1/CPM1A, 210 , 214
TCMP(85), 410 SRM1, 248
Terminologie, 311 Vorgabe, 2
TIM, 363 Erweiterte Befehle, 346 , 347
TIMH(15), 364 Erweiterungsbaugruppen, Einsatz, 159
Verwendung in Sprüngen, 359 Erweiterungsbefehl, 544
TIML(––), 367
TMHH(––), 366 Erweiterungsbefehle, Funktionscodes, 154
Verwendung in Sprüngen, 359
TXD (48), 232
TXD(48), 255 , 487 F
WSFT(16), 380 FAL(06), 534
XCHG(73), 391 FAL–Bereich, 359
XFER(70), 389
FALS(07), 534
XNRW(37), 460
XORW(36), 459 Fehler
ZCP(––), 414 Allgemein, 532
ZCPL(––), 415 andere, 536
anwenderdefinierte Fehler, 534
Bereichscode, 167 , 179
fatal, 536
Bereichsvergleichs–Interrupts, CPM2A/CPM2C, 47 Fehlerrate von Impulsausgängen, 141
Betrieb, Einfluss der Zykluszeit, 495 , 505 , 520 geringfügiger, 535
Binärdaten, vorzeichenbehafteter Binärwert, 153 Kommunikation, 536
Programmier–, 533
binäre Daten mit Vorzeichen, 153
Programmierkonsolen–Betrieb, 532
Bits, steuern, 351 Programmierung von Meldungen, 477
Blockprüfsumme. See Rahmen, FCS Rücksetzen, 359
SPS–Konfiguration, 3
Typen, 532
C Fehler–Codes, Programmierung, 359
CompoBus/S E/A–Link–Baugruppe, 143 Fehlermeldungen, Programmierung, 477
CompoBus/S E/A–Link–Module, Anwendung, 202 Fehlerprotokoll, SPS–Konfigurationseinstellung, 24
CompoBus/S–E/A–Link–Module, 202 Fehlerprotokollbereich, 534
CompoBus/S–E/A–Master–Funktionen, 143 Flankenauswertung, Funktion, 154
CompoBus/S–E/A–Slave–Funktionen, 143 , 202 Flankenüberwachung, 154
Funktion –Codes, 340
D Funktionen
CPM1–/CPM1A–interne Verarbeitung, Ablaufdiagramm, 494
Daten
Berechnungsstandards, 141 SRM1–interne Verarbeitung, Ablaufdiagramm, 519
dekrementieren, 461 Funktionscodes
inkrementieren, 460 Erweiterte Befehle, 346 , 347
Dekrementieren. See Daten
580
Index
I K
Impulsausgabe Kommunikation
Fehler/Verzögerungen, 141 1:1–NT–Link
festes Taktverhältnis, 95 CPM2A/CPM2C, 240
mit Eingangsfrequenz synchronisiert, 129 , 475 SRM1, 256
variables Taktverhältnis, 106 1:1–PC–Link
Impulsausgabefunktionen CPM1/CPM1A, 212
CPM1A, 125 CPM2A/CPM2C, 243
CPM2A/CPM2C, 91 SRM1, 258
1:n–NT–Link, SRM1, 257
indirekte Adressierung, 341 Fehler, 536
INI (61), 127 Host–Link
Initialisierungsprozesse, CPM1/CPM1A, 494 CPM1/CPM1A, 210 , 214
Inkrementieren, 460 SRM1, 248
Modi, 208
instruction set
NT–Link, (CPM1/CPM1A), 211
NEG(––), 432
Verdrahtung, 209
PULS(65), 466
Kommunikation in einem 1:1–PC–Link–Verbund, E/A–An-
INT(89), 77 sprechzeit
Interrupt–Funktionen CPM2A/CPM2C, 507
CPM1/CPM1A, 71 SRM1, 523
CPM2A/CPM2C, 26 Kommunikation in einem 1:1–Verbund, E/A–Ansprechzeit,
SRM1(–V2), 88 CPM1/CPM1A, 497
Interrupt–Signal, CPM1/CPM1A, 73 Kommunikationsfunktionen, 207
Interrupt–Signal (Zählmodus), CPM2A/CPM2C, 61 Kommunikationsschalter, Einstellung
Interrupt–Verarbeitung CPM2A, 233 , 241 , 245
Berechnung der Ansprechzeit CPM2C, 234 , 242 , 246
CPM1/CPM1A, 499 Konstanten, Operanden, 341
CPM2A/CPM2C, 509
581
Index
Kontaktplan
Befehle P
Format, 340 PC–Link, CPM2A/CPM2C, 243
kombinieren, AND LD and OR LD, 320 Peripherieschnittstelle, Servicezeit, 21
Steuerung des Bitzustandes
Peripherieschnittstellen–Abarbeitungszeit, SPS–Konfiguration-
Verwendung von KEEP(11), 332 seinstellung, 21
Verwendung von OUT und OUT NOT, 352
Kombination von Logikblöcken, 321 Positionierung, 121
Konvertierung in eine AWL, 312–330 Programm–Schreibschutz, SPS–Konfigurationseinstellungen,
Schreibweise, 340 20
Steuerung des Bitzustandes Programme
Verwendung von DIFU(13) and DIFD(14), 354–363 Ausführung, 336
Verwendung von DIFU(13) und DIFD(14), 331 Überprüfung, check levels, 533
Verwendung von KEEP(11), 353–354 Programmierung
Verwendung von OUT und OUT NOT, 316 Befehlen, 541
Verwendung von SET und RESET, 331 Fehler, 533
Verwendung von SET und RSET, 352–353 für die Temperaturüberwachung, 191
Struktur, 311 Interrupts, 51 , 84
über GPC, FIT, LSS oder SYSWIN anzeigen, 311 Schneller Zähler, CPM2A/CPM2C, 51 , 84
Verwendung von Logik–Blöcken, 317 Schreiben, 310
Verzeigung, 325 spezielle Anforderungen, 154
Verzweigung Sprünge, 329
IL(02) and ILC(03), 327 Vorbereitung der Daten in den Datenbereichen, 390
mittels TR–Bits, 326 Vorsichtsmaßnahmen, 335
Kontaktplanbefehle, 350–351 Programmspeicher, Struktur, 313
Prüfsumme, Berechnung der Rahmenprüfsumme, 479
L PULS(65), 126
582
Index
583