Omron CPM2C, CPM2A, CPM1A, SRM1, CPM1 Operators Manual [de]

Advanced Industrial Automation
SYSMAC CPM1(A)/CPM2_/SRM1(-V2)
Programmierbare Steuerungen
Bedienerhandbuch
Kurzübersicht
1 SPS-Konfiguration
159 Erweiterungsbaugruppen
285 Speicherbereiche
Cat. No. W353-DE1-02
CPM1/CPM1A/CPM2A/CPM2C/SRM1(-V2)
Speicherprogrammierbare Steuerungen
Bedienerhandbuch
Version Januar 2002
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.
Achtung Ein Nichtbeachten hat möglicherweise den Tod oder schwere
!
Personenschäden zur Folge.
Vorsicht Ein Nichtbeachten kann zu leichten bis mittelschweren Personenschäden,
!
Sachschäden oder Betriebsstörungen führen.
Hinweis Gibt besondere Hinweise für den effizienten und sachgerechten Umgang mit
dem Produkt.
1, 2, 3...
1. Unterteilt Handlungsabläufe in einzelne Schritte, beinhaltet Checklisten usw.
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
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
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(nur CPM2A/CPM2C/SRM1(–V2)) 21 . . . . . . . . . . . . . . . . . . . . . . . . . . .
(festes Tastverhältnis) 95 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
v
Index
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
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
von Dezimalwerten 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 3 – Anschluss von Erweiterungsbaugruppen 159 . . . . . . . . . . . . . . .
3-1 Analoge E/A–Funktionen 160 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-1-1 Analoge E/A–Baugruppen CPM1/CPM1A/CPM2A 160 . . . . . . . . . . . . . .
3-1-2 Analoge E/A–Baugruppen der CPM2C 169 . . . . . . . . . . . . . . . . . . . . . . . .
3-2 Temperaturfühler–Baugruppen 181 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-2-1 Temperaturfühler–Baugruppen der CPM1A/CPM2A 181 . . . . . . . . . . . . . .
3-2-2 Temperaturfühler–Baugruppen der CPM2C 182 . . . . . . . . . . . . . . . . . . . . .
3-2-3 Verwendung der Temperaturfühler–Baugruppen 184 . . . . . . . . . . . . . . . . .
3-2-4 Anschließen von Temperaturfühler–Baugruppen 184 . . . . . . . . . . . . . . . . .
3-2-5 Einstellung der Temperaturbereiche 186 . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-2-6 Anschluss der Temperaturfühler 188 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-2-7 Kontaktplanprogrammierung 191 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-2-8 Zwei–Dezimalstellen–Betriebsart 196 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3 CompoBus/S–E/A–Link–Module 202 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 4 – Kommunikationsfunktionen 207 . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vi
Index
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–T yp 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 5 – Speicherbereiche 285 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-1 Speicherbereichsfunktionen 286 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-1-1 Speicherbereichsstruktur 286 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-1-2 Funktionen 289 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-1-3 CPM1/CPM1A/SRM1(-V2) Flash–Speicher 291 . . . . . . . . . . . . . . . . . . . .
5-2 E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme 292 . . . . . . . . . . . . . . . .
5-2-1 CPU–Baugruppen 292 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-2-2 E/A–Erweiterungsbaugruppen 295 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-2-3 Erweiterungsbaugruppen 296 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-2-4 Beispiele für die Zuweisung von Erweiterungs– und
5-3 E/A–Zuweisung für CPM2C–SPS–Systeme 301 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-3-1 CPU–Baugruppen 301 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-3-2 E/A–Erweiterungsbaugruppen 302 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-3-3 Erweiterungsbaugruppen 305 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-3-4 Beispiele für die Zuweisung von Erweiterungs– und
E/A–Erweiterungsbaugruppen 297 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
E/A–Erweiterungsbaugruppen 306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 6 – Kontaktplan–Programmierung 309 . . . . . . . . . . . . . . . . . . . . . . .
6-1 Generelle Vorgehensweise 310 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-2 Befehlsterminologie 311 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3 Kontaktplanstruktur 311 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-1 Basis–Begriffe 312 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-2 AWL 312 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-3 Kontaktplanbefehle 314 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-4 OUTPUT und OUTPUT NOT 316 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-5 Der END–Befehl 317 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-6 Logikblock–Befehle 317 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-7 Programmierung mehrerer Befehle 325 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-8 Strompfad–Verzweigungen 325 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-3-9 Sprungbefehle 329 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4 Steuerung des Bitzustands 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4-1 SET und RESET 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4-2 DIFFERENTIATE UP– und DIFFERENTIATE DOWN
6-4-3 KEEP (Bistabiles Flip–Flop) 332 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-4-4 Selbsthaltemerker 332 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-5 Arbeitsmerker (interne Relais) 333 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-6 Vorsichtsmaßnahmen bei der Programmierung 335 . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-7 Programmausführung 336 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(Flankengesteuerte Ausführung) 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii
Index
KAPITEL 7 – Befehlssatz 337 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-1 Notation 340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-2 Befehlsformate 340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-3 Datenbereiche, Zuweiserwerte und Merker 340 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-4 Befehle mit flankengesteuerter Ausführung 342 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-5 Eingabe von rechts angeordneten Befehlen 343 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6 Befehlstabellen 345 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6-1 CPM1/CPM1A–Funktionscodes 345 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6-2 CPM2A/CPM2C–Funktionscodes 346 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6-3 SRM1(–V2) Funktionscodes 347 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-6-4 Alphabetischsortierte AWL–Liste 348 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-7 Kontaktplanbefehle 350 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-7-1 LOAD, LOAD NOT, AND, AND NOT, OR und OR NOT 350 . . . . . . . . .
7-7-2 AND LOAD und OR LOAD 351 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8 Bitsteuerungs–Befehle 351 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8-1 OUTPUT und OUTPUT NOT – OUT und OUT NOT 352 . . . . . . . . . . . .
7-8-2 SET und RESET – SET und RSET 352 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8-3 KEEP (R–S– Flip–Flop) – KEEP(11) 353 . . . . . . . . . . . . . . . . . . . . . . . . . .
7-8-4 DIFFERENTIATE UP and DOWN (Ausführung bei steigender/fallender Flanke)
7-9 NO OPERATION (Keine Funktion) – NOP(00) 355 . . . . . . . . . . . . . . . . . . . . . . . . . .
7-10 END (ENDE) – END(01) 355 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-11 INTERLOCK und INTERLOCK CLEAR (Verriegelungsbefehle) –
IL(02) und ILC(03) 356 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-12 JUMP und JUMP END (Sprungbefehle) – JMP(04) und JME(05) 358 . . . . . . . . . . . .
7-13 Anwenderdefinierte Fehlerbefehle
FAILURE ALARM AND RESET und SEVERE FAILURE ALARM –
FAL(06) und FALS(07) 359 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-14 Schrittbefehle
STEP DEFINE und STEP START (Schritt und nächster Schritt) –
STEP(08)/SNXT(09) 360 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-15 Zeitgeber– und Zählerbefehle 362 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-15-1 TIMER (ZEITGEBER) – TIM 363 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-15-2 HIGH–SPEED TIMER (Schneller Zeitgeber) – TIMH(15) 364 . . . . . . . . .
7-15-3 VERY HIGH-SPEED TIMER (Sehr schneller Zeitgeber) –
7-15-4 LONG TIMER (Langer Zeitgeber) – TIML(––) 367 . . . . . . . . . . . . . . . . . .
7-15-5 COUNTER (Zähler) – CNT 369 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-15-6 REVERSIBLE COUNTER (Aufwärts–/Abwärtszähler) – CNTR(12) 370
7-15-7 REGISTER COMPARISON TABLE (Vergleichstabelle) – CTBL(63) 371
7-15-8 MODE CONTROL (Zählersteuerung) – INI(61) 374 . . . . . . . . . . . . . . . . .
7-15-9 HIGH–SPEED COUNTER PV READ (Schneller Zähler–Istwert einlesen) –
7-16 Schiebebefehle 379 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-16-1 SHIFT REGISTER (Schieberegister) – SFT(10) 379 . . . . . . . . . . . . . . . . .
7-16-2 WORD SHIFT (Wortweises Verschieben) – WSFT(16) 380 . . . . . . . . . . .
7-16-3 ARITHMETIC SHIFT LEFT (Verschiebung nach links) – ASL (25) 381 .
7-16-4 ARITHMETIC SHIFT RIGHT (Arithmetisches Verschieben nach rechts) –
7-16-5 ROTATE LEFT (Rotation nach links) – ROL(27) 382 . . . . . . . . . . . . . . . .
7-16-6 ROTATE RIGHT (Rotation nach rechts) – ROR(28) 382 . . . . . . . . . . . . . .
7-16-7 ONE DIGIT SHIFT LEFT (Eine Stelle nach links verschieben) –
7-16-8 ONE DIGIT SHIFT RIGHT (Verschiebung um eine Stelle nach rechts) –
7-16-9 REVERSIBLE SHIFT REGISTER (Links/Rechts–Schieberegister) –
7-16-10 ASYNCHRONOUS SHIFT REGISTER (Asynchrones Schieberegister) –
7-17 Datenübertragungsbefehle 388 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-17-1 MOVE (Übertragen) – MOV(21) 388 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-17-2 MOVE NOT (Invertiertes Übertragen) – MVN(22) 388 . . . . . . . . . . . . . . .
7-17-3 BLOCK TRANSFER (Blockweise übertragen) – XFER(70) 389 . . . . . . . .
DIFU(13) und DIFD(14) 354 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMHH(––) 366 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PRV (62) 376 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASR(26) 381 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SLD(74) 383 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SRD(75) 384 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SFTR(84) 385 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASFT (17) 386 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
viii
Index
7-17-4 BLOCK SET (Blockweise vorbesetzen) – BSET(71) 390 . . . . . . . . . . . . .
7-17-5 DATA EXCHANGE (Datenaustausch) – XCHG(73) 391 . . . . . . . . . . . . . .
7-17-6 SINGLE WORD DISTRIBUTE (Datenverteilung) – DIST(80) 392 . . . . .
7-17-7 DATA COLLECT (Daten sammeln) – COLL(81) 393 . . . . . . . . . . . . . . . .
7-17-8 MOVE BIT (Bit übertragen) – MOVB(82) 395 . . . . . . . . . . . . . . . . . . . . .
7-17-9 MOVE DIGIT (Digit–Übertragung) – MOVD(83) 396 . . . . . . . . . . . . . . .
7-18 Datensteuerungsbefehle 397 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-18-1 SCALING (Skalierung) – SCL(66) 397 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-18-2 SIGNED BINARY TO BCD SCALING (Vorzeichenbehafteten Binärwert in
7-18-3 BCD TO SIGNED BINARY SCALING (BCD–Wert in vorzeichenbehafteten
7-18-4 PID CONTROL (PID–Regelung) – PID(––) 403 . . . . . . . . . . . . . . . . . . . .
7-19 Vergleichsbefehle 409 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-19-1 COMPARE (Vergleich) – CMP(20) 409 . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-19-2 TABLE COMPARE (Tabellenvergleich) – TCMP(85) 410 . . . . . . . . . . . . .
7-19-3 BLOCK COMPARE (Blockweiser Vergleich) – BCMP(68) 411 . . . . . . . .
7-19-4 DOUBLE COMPARE (Doppeltgenauer Vergleich) – CMPL(60) 413 . . . .
7-19-5 – AREA RANGE COMPARE (Bereichsvergleich) – ZCP(––) 414 . . . . . .
7-19-6 DOUBLE AREA RANGE COMPARE (Doppelwort– Bereichsvergleich) –
7-20 Konvertierungsbefehle 416 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-20-1 BCD–TO–BINARY (BCD–Binär–Konvertierung) – BIN(23) 416 . . . . . . .
7-20-2 BINARY–TO–BCD (BIN–BCD–Konvertierung) – BCD(24) 417 . . . . . . .
7-20-3 DOUBLE BINARY–TO–DOUBLE BCD (BCD–Doppelwort–zu–
7-20-4 DOOUBLE BINARY–TO–DOUBLE BCD (BIN–Doppelwort–zu–
7-20-5 4–TO–16 DECODER (4–in–16–Dekoder) – MLPX(76) 419 . . . . . . . . . . .
7-20-6 16–TO–4 ENCODER (16–in–4–Enkoder) – DMPX(77) 421 . . . . . . . . . . .
7-20-7 7–SEGMENT DECODER (Dekodierung für 7–Segment–Anzeige) –
7-20-8 ASCII CONVERT (ASCII–Konvertierung) – ASC(86) 426 . . . . . . . . . . . .
7-20-9 ASCII–TO–HEXADECIMAL (in Hexadezimal–Wort konvertieren) –
7-20-10 HOURS–TO–SECONDS (Stunden–in–Sekunden) – SEC(––) 430 . . . . . .
7-20-11 SECONDS–TO–HOURS (Sekunden–in–Stunden) – HMS(––) 431 . . . . . .
7-20-12 2’S COMPLEMENT (2er–Komplement) – NEG(––) 432 . . . . . . . . . . . . .
7-21 BCD–Rechenbefehle 434 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-21-1 SET CARRY (Übertragsmerker setzen) – STC(40) 434 . . . . . . . . . . . . . . .
7-21-2 CLEAR CARRY (Übertragsmerker rücksetzen) – CLC(41) 434 . . . . . . . .
7-21-3 BCD ADDITION (BCD–Addition) – ADD(30) 434 . . . . . . . . . . . . . . . . . .
7-21-4 BCD SUBTRACT (BCD–Subtraktion) – SUB(31) 435 . . . . . . . . . . . . . . .
7-21-5 BCD MULTIPY (BCD–Multiplikation) – MUL(32) 437 . . . . . . . . . . . . . .
7-21-6 BCD DIVIDE (BCD–Division) – DIV(33) 438 . . . . . . . . . . . . . . . . . . . . .
7-21-7 DOUBLE BCD ADD (BCD–Doppelwort–Addition) – ADDL(54) 439 . . .
7-21-8 DOUBLE BCD SUBTRACT (BCD–Doppelwort–Subtraktion) –
7-21-9 DOUBLE BCD MULTIPLY (BCD–Doppelwort–Multiplikation) –
7-21-10 DOUBLE BCD DIVIDE (BCD–Doppelwort–Division) – DIVL(57) 443 .
7-22 Binäre Rechenbefehle 444 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-22-1 BINÄR ADD (Binäre Addition) – ADB(50) 444 . . . . . . . . . . . . . . . . . . . .
7-22-2 SBB(51) – BINARY SUBTRACT (Binäre Subtraktion) 445 . . . . . . . . . . .
7-22-3 BINARY MULTIPLY (Binäre Multiplikation) – MLB(52) 446 . . . . . . . . .
7-22-4 BINARY DIVIDE (Binäre Division) – DVB(53) 447 . . . . . . . . . . . . . . . . .
7-23 Spezielle mathematische Befehle 448 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-23-1 DATA SEARCH (Datenbereiche durchsuchen) – SRCH(––) 448 . . . . . . . .
7-23-2 FIND MAXIMUM (Maximum suchen) – MAX(––) 449 . . . . . . . . . . . . . .
7-23-3 FIND MINIMUM (Minimum suchen) – MIN(––) 451 . . . . . . . . . . . . . . . .
7-23-4 AVERAGE VALUE (Mittelwerte berechnen) – AVG(––) 453 . . . . . . . . . .
7-23-5 SUM (Addition) – SUM(––) 455 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-24 Logikbefehle 457 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-24-1 COMPLEMENT (Komplement) – COM(29) 457 . . . . . . . . . . . . . . . . . . . .
BCD–Wert konvertieren) – SCL2(––) 399 . . . . . . . . . . . . . . . . . . . . . . . . .
Binärwert konvertieren) – SCL3(––) 401 . . . . . . . . . . . . . . . . . . . . . . . . . .
ZCPL(––) 415 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
BIN–Doppelwort–Konvertierung) – BINL(58) 418 . . . . . . . . . . . . . . . . . .
BCD–Doppelwort–Konvertierung) – BCDL(59) 418 . . . . . . . . . . . . . . . . .
SDEC(78) 423 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HEX(––) 428 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SUBL(55) 441 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MULL(56) 442 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ix
Index
7-24-2 LOGICAL AND (Wortweise UND–Verknüpfung) – ANDW(34) 458 . . . .
7-24-3 LOGICAL OR (Wortweise ODER–Verknüpfung) – ORW(35) 458 . . . . . .
7-24-4 EXCLUSIVE OR (Wortweise EXKLUSIV–ODER–Verknüpfung) –
7-24-5 EXCLUSIVE NOR (Wortweise EXKLUSIV–ODER–NICHT–Verknüpfung) –
7-25 Inkrementier/Dekrementier–Befehle 460 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-25-1 BCD INCREMENT (BCD–Wert inkrementieren) – INC(38) 460 . . . . . . .
7-25-2 BCD DECREMENT (BCD–Wert dekrementieren) – DEC(39) 461 . . . . . .
7-26 Unterprogramm–Befehle 462 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-26-1 SUBROUTINE ENTER (Unterprogramm–Aufruf) – SBS(91) 462 . . . . . .
7-26-2 SUBROUTINE DEFINE und RETURN (Unterprogramm–Anfang und
7-26-3 MACRO (Unterprogramm–Struktur) – MCRO(99) 464 . . . . . . . . . . . . . . .
7-27 Impulsausgabe–Befehle 466 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-27-1 SET PULSES (Impulsausgabe) – PULS(65) 466 . . . . . . . . . . . . . . . . . . . .
7-27-2 SPEED OUTPUT (Geschwindigkeitsausgabe) – SPED(64) 467 . . . . . . . .
7-27-3 ACCELERATION CONTROL (Beschleunigungssteuerung) –
7-27-4 PULSE WITH VARIABLE DUTY RATIO (Impulsausgabe mit
7-27-5 SYNCHRONIZED PULSE CONTROL (Synchronisierte Impulsausgabe) –
7-28 Spezielle Befehle 477 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-28-1 MESSAGE DISPLAY (Meldungsanzeige) – MSG(46) 477 . . . . . . . . . . . .
7-28-2 I/O REFRESH (E/A–Auffrischung) – IORF(97) 478 . . . . . . . . . . . . . . . . .
7-28-3 BIT COUNTER (Bits zählen) – BCNT(67) 479 . . . . . . . . . . . . . . . . . . . . .
7-28-4 FRAME CHECKSUM (Rahmenprüfsumme berechnen) – FCS(––) 479 . .
7-29 Interrupt–Verarbeitungsbefehle 481 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-29-1 INTERRUPT CONTROL (Interrupt–Steuerung) – INT(89) 481 . . . . . . . .
7-29-2 INTERVAL TIMER (Intervall–Zeitgeber) – STIM(69) 484 . . . . . . . . . . . .
7-30 Kommunikationsbefehle 486 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-30-1 RECEIVE (Empfangen) – RXD(47) 486 . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-30-2 TRANSMIT (Daten senden) – TXD(48) 487 . . . . . . . . . . . . . . . . . . . . . . .
7-30-3 CHANGE RS-232C SETUP (RS–232C–Konfiguration ändern) –
XORW(36) 459 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XNRW(37) 460 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Unterprogramm–Ende) – SBN(92)/RET(93) 464 . . . . . . . . . . . . . . . . . . . .
ACC(––) 470 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
variablem Tastverhältnis) – PWM(––) 473 . . . . . . . . . . . . . . . . . . . . . . . . .
SYNC(––) 475 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
STUP(––) 489 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 8 – SPS–Betrieb und –Verarbeitungszeiten 493 . . . . . . . . . . . . . . . .
8-1 CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit 494 . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-1 Der CPM1/CPM1A–Zyklus 494 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-2 CPM1/CPM1A–Zykluszeit 495 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-3 E/A–Ansprechzeit 496 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-4 1:1–PC–Link–E/A–Ansprechzeit 497 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-5 Interrupt–Verarbeitungszeit 498 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-1-6 Befehlsausführungszeiten der CPM1/CPM1A 500 . . . . . . . . . . . . . . . . . . .
8-2 CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit 505 . . . . . . . . . . . . . . . . . . . . . . . . .
8-2-1 CPM2A/CPM2C–Zykluszeit 505 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-2-2 E/A–Ansprechzeit 506 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-2-3 1:1–PC–Link–E/A–Ansprechzeit 507 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-2-4 Interrupt–Verarbeitungszeit 508 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-2-5 Befehlsausführungszeiten der CPM2A/CPM2C 510 . . . . . . . . . . . . . . . . . .
8-3 SRM1(–V2)–Zyklus– und E/A–Ansprechzeit 519 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-1 Der SRM1(–V2)–Zyklus 519 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-2 SRM1(–V2)–Zykluszeit 520 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-3 E/A–Reaktionszeit 522 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-4 1:1–PC–Link–E/A–Ansprechzeit 523 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-5 Interrupt–Verarbeitungszeit 524 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8-3-6 SRM1(-V2)–Befehlsausführungszeiten 525 . . . . . . . . . . . . . . . . . . . . . . . .
x
Index
KAPITEL 9 – Fehlersuche 531 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-1 Einführung 532 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-2 Fehlermeldung der Programmierkonsole 532 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-3 Programmierfehler 533 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-4 Anwenderdefinierte Fehler 534 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-5 Betriebsfehler 534 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-5-1 Geringfügige Fehler 535 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-5-2 Schwerwiegende Fehler 536 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-5-3 Weitere Fehler 536 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-6 Fehlerprotokoll 537 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-7 Host–Link–Fehler 539 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-8 Ablaufdiagramm zur Fehlerbehebung 539 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(nur CPM2A/CPM2C/SRM1(–V2)) 21 . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1-1AbschnittSPS–Konfiguration
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 W orte (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.
1-1-1 Änderung der SPS–Konfiguration
Änderungen über ein Programmiergerät
Die Änderungen der SPS–Konfigurationseinstellungen sind nur zu bestimmtem Zeitpunkten wirksam (sehen Sie die nachfolgende Beschreibung).
6600 DM bis 6614 DM: Nur beim Einschalten der SPS–Spannungsversor­gung.
6615 DM bis 6644 DM: Nur zu Beginn der Programmausführung wirksam.
6645 DM bis 6655 DM: Sofort nach der Übertragung in den SPS–Speicher
wirksam.
Die Konfigurationsänderungen sind nur zu den angegebenen Zeitpunkten wirk­sam. Die SPS und die Programmausführung muss deshalb neu gestartet wer­den, damit die Änderungen in DM 6600 bis DM 6614 (SPS) und in DM 6615 bis DM 6644 (Programm) wirksam werden.
Werden die Bits 00 bis 03 von DM 6602 zum Schutz des Programmspeichers gesetzt, kann der Programmschutz nicht im SPS–Konfigurationsfenster der Programmier–Software geändert werden. Ändern Sie DM 6602 direkt in der Da­tenansicht mit Hex–Werten.
Die SPS–Konfiguration kann vom Anwenderprogramm zwar gelesen, aber nicht überschrieben werden. Dies kann nur mit einem Programmiergerät erfol­gen.
Obwohl die SPS–Konfiguration in den Datenwortbereichen DM 6600 bis DM 6655 gespeichert wird, können Einstellungen nur über ein Programmierge­rät (z.B. über SYSWIN, CX–Programmer oder über eine Programmierkonsole) vorgenommen und geändert werden. DM 6600 bis DM 6644 können nur in der PROGRAM-Be–triebsart und DM 6645 bis DM 6655 entweder in der PRO­GRAM- oder in der MONITOR-Betriebsart eingestellt bzw. geändert werden. Die Zykluszeit ist verhältnismäßig lang, wenn die SPS–Konfiguration in der MO­NITOR–Betriebsart geändert wird.
Die folgenden Einstellungen können in der PROGRAM–Betriebsart über SYSWIN oder den CX–Programmer unter Anwendung von Menüoperationen erfolgen. Alle anderen Einstellungen müssen per Hexadezimal–Zahlen vorge­nommen werden.
Start–Betriebsart (DM 6600)
E/A–Haftmerkerstatus und Zwangsetzungs–Haftmerkerstatus (DM 6601)
Zyklusüberwachungszeit (DM 6618)
Zykluszeit (DM 6619)
2
1-1AbschnittSPS–Konfiguration
RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649)
Hinweis Die RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649) werden in
der CPM1/CPM1A nicht verwendet, da diese nicht mit einer RS–232C–Schnitt­stelle ausgerüstet ist.
Fehler in der SPS– Konfiguration Wird auf eine falsche SPS–Konfigurationseinstellung zugegriffen, wird ein ge-
ringfügiger Fehler (Fehlercode 9B) generiert, der entsprechende Fehlermerker (AR 1300 bis AR 1302) eingeschaltet; die Vorgabeeinstellung wird statt der fal­schen Einstellung verwendet.
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
DM 6601
DM 6602
DM 6603 00 bis 15 Nicht verwendet DM 6604
DM 6605 bis 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, DM 6616
00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
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 00 bis 07 Nicht verwendet. 08 bis 1 1 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) 00 bis 03 Programmspeicher–Schreibschutz
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
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 00 bis 15 Nicht verwendet
00 bis 15 Nicht verwendet.
19
20
20
3
Wort(e) SeiteFunktionBit(s)
DM 6617
DM 6618
DM 6619 00 bis 15 Zykluszeit
Interrupt–Verarbeitung (DM 6620 bis DM 6639)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR­Betriebs wirksam.
DM 6620
DM 6621
DM 6622
DM 6623
DM 6624
DM 6625
DM 6626 bis DM 6627
DM 6628
DM 6629 bis DM 6641
Einstellungen des Schnellen Zählers (DM 6640 bis DM 6644)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR­Betriebs wirksam.
DM 6640 bis DM 6641
00 bis 07 Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 ge-
setzt werden) 00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der Peripherie ver­wendet wird
08 bis 15 Aktivierung der Serviceeinstellung für die Peripherieschnittstelle
00: 5% der Zykluszeit 01: Verwendung der in 00 bis 07 eingestellten Zeit
00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden) 00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
08 bis 15 Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 s
max.) 00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert) 01: Einheit: 10 ms 02: Einheit: 100 ms 03: Einheit: 1 s
0000: Variable (kein Minimum) 0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 03 Eingangs–Zeitkonstante für IR 00000 bis IR 00002
0: 8 ms; 1: 1 ms; 2: 2 ms; 3: 4 ms; 4: 8 ms; 5: 16 ms; 6: 32 ms; 7: 64 ms; 8: 128
ms 04 bis 07 Eingangs–Zeitkonstante für IR 00003 und IR 00004 (Werte wie für Bits 00 bis 03) 08 bis 1 1 Eingangs–Zeitkonstante für IR 00005 und IR 00006 (Werte wie für Bits 00 bis 03) 12 bis 15 Eingangs–Zeitkonstante für IR 00007 bis IR 00011 (Werte wie für Bits 00 bis 03) 00 bis 07 Eingangs–Zeitkonstante für IR 001
00: 8 ms; 01: 1 ms; 02: 2 ms; 03: 4 ms; 04: 8 ms; 05: 16 ms; 06: 32 ms; 07: 64 ms;
08: 128 ms 08 bis 15 Eingangs–Zeitkonstante für IR 002 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 003 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 004 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 005 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 006 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 007 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 008 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001) 08 bis 15 Nicht verwendet 00 bis 15 Nicht verwendet
00 bis 03 Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit) 04 bis 07 Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit) 08 bis 1 1 Interrupt–Aktivierung für IR 00005 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit) 12 bis 15 Interrupt–Aktivierung für IR 00006 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit) 00 bis 15 Nicht verwendet
00 bis 15 Nicht verwendet.
21
21
22
22
73
1-1AbschnittSPS–Konfiguration
4
Wort(e) SeiteFunktionBit(s)
DM 6642
DM 6643, DM 6644
Einstellungen der Peripherieschnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. DM 6645 bis
DM 6649 DM 6650
DM 6651
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link) (sehen Sie den Hinweis 4)
DM 6653
DM 6654 00 bis 15 Nicht verwendet
00 bis 03 Schnelle Zähler–Betriebsart
0: Aufwärts–/Abwärts–Zählermodus
4: Inkremental–Zähler–Betriebsart 04 bis 07 Schneller Zähler–Rücksetzbetriebsart
0: Z–Phase und Software–Rücksetzung
1: Nur Software–Rücksetzung 08 bis 15 Aktivierung des Schnellen Zählers
00: Schnellen Zähler nicht verwenden
01: Schnellen Zähler mit Einstellungen in 00 bis 07 verwenden 00 bis 15 Nicht verwendet.
00 bis 15 Nicht verwendet.
00 bis 07 Schnittstelleneinstellungen
00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)
01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt) 08 bis 1 1 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle:
0: LR 00 bis LR 15 12 bis 15 Kommunikationsbetriebsart
0: Host–Link
2: 1:1–PC–Link–Verbindung (Slave)
3: 1:1–PC–Link–Verbindung (Master)
4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt) 00 bis 07 Baudrate
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K, 05 bis 07: Kann nicht verwendet
werden (sehen Sie den Hinweis 2)
(Andere Einstellungen generieren einen geringfügigen Fehler und AR 1302 wird
eingeschaltet) 08 bis 15 Rahmenformat
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
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird auf EIN gesetzt)
0000 bis 9999: In ms (Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
00 bis 07 Teilnehmernummer (Host–Link)
00 bis 31 (BCD) (Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
08 bis 15 Nicht verwendet
1-1AbschnittSPS–Konfiguration
80
208
5
Wort(e) SeiteFunktionBit(s)
Fehlerprotokoll–Einstellungen (6655 DM)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. DM 6655
00 bis 03 Ausführung
0: Verschiebung nach der Speicherung von 7 Aufzeichnungen 1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung) 2 bis F: Kein Speichern der Aufzeichnungen
04 bis 07 Nicht verwendet. 08 bis 1 1 Aktivierung der Zykluszeitüberwachung
0: Auswertung langer Zyklen als geringfügige Fehler 1: Lange Zyklen werden nicht erkannt
12 bis 15 Nicht verwendet
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
CPM1–Programmierhandbuch
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
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.
1-1AbschnittSPS–Konfiguration
24
CPM1A
für eine genauere Beschreibung der Spei-
– oder
CPM1–Programmierhandbuch
ode
für
r
Host–Computer
SPS
Befehl
Antwort
Übertragungs– Verzögerungszeit
Befehl
Antwort
6
1-1AbschnittSPS–Konfiguration
5. 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 Übertrag.verzögerungszeit Keine Teilnehmernummer: 00
7
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
DM 6601
DM 6602
DM 6603 00 bis 15 Nicht verwendet DM 6604
DM6605 bis DM 6614
00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
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
00 bis 07 Nicht verwendet. 08 bis 1 1 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
00 bis 03 Programmspeicher–Schreibschutz
0: Programmspeicher ohne Schreibschutz 1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07 Programmierkonsolen–Display–Sprache
0: Englisch 1: Japanisch
08 bis 1 1 Codezuweisungen für erweiterte Befehle
0: Standardeinstellungen 1: Anwenderzuweisungen
12 bis 15 Nicht verwendet
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 00 bis 15 Nicht verwendet
19
20
20
156
1-1AbschnittSPS–Konfiguration
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–
stelle verbunden
mit
Frei Programmier–
konsole
Anderes Programmiergerät
Kommunikationsschnittstellen–DIP–Schalter Schalter 2 AUS Schalter 2 EIN
Programm
Betriebsart mit dem Betriebsartenschalter der Programmierkonsole eingestellt
PROGRAM (die CPM2C wird nicht mit einem Programmiergerät kommunizieren können.)
RUN PROGRAM (die CPM2C wird
nicht mit der Programmierkonsole kommunizieren können.)
PROGRAM
8
1-1AbschnittSPS–Konfiguration
Wort(e) Bit(s) Funktion Seite
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
DM 6617
DM 6618
DM 6619 00 bis 15 Kleinste Zykluszeit
Interrupt–Verarbeitung (DM 6620 bis DM 6639)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR– Betriebs wirksam.
DM 6620
DM 6621
DM 6622
DM 6623
DM 6624
DM 6625
DM 6626 bis DM 6627
00 bis 07 Servicezeit der RS–232C–Schnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 ge-
setzt sind) 00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der RS–232C– Schnittstelle benötigt wird
08 bis 15 Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung
00: 5% der Zykluszeit 01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
00 bis 07 Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 gesetzt
sind) 00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der Peripherieschnitt­stelle benötigt wird
08 bis 15 Aktivierung der Serviceeinstellung für die Peripherieschnittstelle
00: 5% der Zykluszeit 01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden). 00 bis 99 (BCD): Einstellung (sehen Sie Bits 08 bis 15, unten)
Ein schwerwiegender Fehler wird generiert und der SPS–Betrieb abgebrochen, wenn die Zykluszeit die hier eingestellte Zyklusüberwachungszeit–Einstellung über­schreitet.
08 bis 15 Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 × Einheiten;
max. 99 s) 00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert) 01: Einstelleinheit: 10 ms 02: Einstelleinheit: 100 ms 03: Einstelleinheit: 1 s
0000: Variable (keine Mindestzeit) 0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 03 Eingangs–Zeitkonstante für IR 00000 bis IR 00002
0: 10 ms; 1: 1 ms; 2: 2 ms; 3: 3 ms; 4: 5 ms; 5: 10 ms; 6: 20 ms; 7: 40 ms; 8: 80 ms
04 bis 07 Eingangs–Zeitkonstante für IR 00003 und IR 00004 (gleiche Einstellung wie für Bits
00 bis 03)
08 bis 1 1 Eingangs–Zeitkonstante für IR 00005 und IR 00006 (gleiche Einstellung wie für Bits
00 bis 03)
12 bis 15 Eingangs–Zeitkonstante für IR 00007 und IR 00011 (gleiche Einstellung wie für Bits
00 bis 03)
00 bis 07 Eingangszeit–Konstante für IR 001
00: 10 ms 01: 1 ms 02: 2 ms 03: 3 ms 04: 5 ms
05: 10 ms 06: 20 ms 07: 40 ms 08: 80 ms 08 bis 15 Eingangs–Zeitkonstante für IR 002 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 003 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 004 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 005 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 006 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 007 (gleiche Einstellung wie für IR 001) 08 bis 15 Eingangs–Zeitkonstante für IR 008 (gleiche Einstellung wie für IR 001) 00 bis 07 Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001) 08 bis 15 Nicht verwendet 00 bis 15 Nicht verwendet
21
21
21
22
22
9
1-1AbschnittSPS–Konfiguration
Wort(e) SeiteFunktionBit(s)
DM 6628
DM 6629
DM6630 bis DM6641
Einstellungen des Schnellen Zählers (DM 6640 bis DM 6644)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR– Betriebs wirksam.
DM 6640 bis DM 6641
DM 6642
DM 6643, DM 6644
00 bis 03 Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit) 04 bis 07 Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit) 08 bis 1 1 Interrupt–Aktivierung für IR 00005 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)
(In CPM2C CPU–Baugruppen mit 10 E/A auf 0 einstellen) 12 bis 15 Interrupt–Aktivierung für IR 00006 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)
(Dieser Eingang ist in CPM2C CPU–Baugruppen mit 10 E/A nicht vorhanden) 00 bis 03 Istwert–Koordinatensystem für Impulsausgabe 0
0: Relative Koordinaten; 1: Absolute Koordinaten 04 bis 07 Istwert–Koordinatensystem für Impulsausgabe 1
0: Relative Koordinaten; 1: Absolute Koordinaten 08 bis 15 Nicht verwendet 00 bis 15 Nicht verwendet
00 bis 15 Nicht verwendet
00 bis 03 Schneller Zähler-Betrieb
0: Differentialphasen–Betriebsart (5 kHz)
1: Impuls– und Richtungseingangs–Betriebsart (20 kHz)
2: Auf–/Abwärts–Eingangs–Betriebsart (20 kHz)
4: Inkremental–Betriebsart (20 kHz) 04 bis 07 Schneller Zähler–Rücksetzbetriebsart
0: Z–Phase und Software–Rücksetzung
1: Nur Software–Rücksetzung 08 bis 15 Schneller Zähler/synchronisierte Impulssteuerung für IR 00000 bis IR 00002
00: Keine der beiden Funktionen verwenden
01: Als Schneller Zähler verwenden
02: Verwendung für eine synchronisierte Impulssteuerung (10 bis 500 Hz).
03: Verwendung für eine synchronisierte Impulssteuerung (20 Hz bis 1 kHz)
04: Verwendung für eine synchronisierte Impulssteuerung (300 Hz bis 20 kHz) 00 bis 15 Nicht verwendet.
27
95
42, 50
10
1-1AbschnittSPS–Konfiguration
Wort(e) SeiteFunktionBit(s)
RS–232C–Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. Ist der Kommunikationsschalter der CPM2A CPU–Baugruppe eingeschaltet, wird die Kommunikation über die
RS–232C–Schnittstelle der CPM2A durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM 6645 bis DM 6649, bestimmt.
Ist Schalter 1 des DIP–Schalters der CPM2C CPU–Baugruppe eingeschaltet, wird die Kommunikation über die RS–232C–Schnittstelle der CPM2C durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM 6645 bis DM 6649, bestimmt.
DM 6645
DM 6646
DM 6647 00 bis 15 Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis
00 bis 03 Schnittstelleneinstellungen
0: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 b/sek.), Host–
Link–Baugruppennummer 0
1: Einstellungen in DM 6646
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt) 04 bis 07 CTS–Handshake–Einstellungen
0: CTS–Handshake deaktiviert; 1: CTS–Handshake aktiviert
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt) 08 bis 1 1 Link–Worte für 1:1 Data–Link
0: LR 00 bis LR 15 (andere Einstellungen sind unwirksam) 12 bis 15 Kommunikationsmodus
0: Host–Link
1: Ohne Protokoll (RS–232C);
2: 1:1–PC–Link (Slave)
3: 1:1–PC–Link (Master)
4: NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt) 00 bis 07 Baudrate
00: 1.200 b/sek.; 01: 2.400 b/sek.; 02: 4.800 b/sek.; 03: 9.600 b/sek.; 04: 19.200
b/sek. 08 bis 15 Rahmenformat
Startbit Datenbits Startbits 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 Keine 03: 1 Bit 7 Bits 2 Bits Gerade 04: 1 Bit 7 Bits 2 Bits Ungerade 05: 1 Bit 7 Bits 2 Bits Keine 06: 1 Bit 8 Bits 1 Bit Gerade 07: 1 Bit 8 Bits 1 Bit Ungerade 08: 1 Bit 8 Bits 1 Bit Keine 09: 1 Bit 8 Bits 2 Bits Gerade 10: 1 Bit 8 Bits 2 Bits Ungerade 11: 1 Bit 8 Bits 2 Bits Keine
(Alle anderen Einstellungen spezifizieren Standardeinstellungen (1 Startbit, 7 Da­tenbits; gerade Parität, 2 Stopbits, 9.600 b/sek.), verursachen einen geringfügigen Fehler und aktivieren AR 1302.)
99.990 ms. ein) (Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursachen
einen geringfügigen Fehler und aktivieren AR 1302.)
208
208
208
11
Wort(e) SeiteFunktionBit(s)
DM 6648
DM 6649
00 bis 07 Teilnehmernummer (Host–Link)
08 bis 1 1 Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
12 bis 15 Endcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
00 bis 07 Startcode 00 bis FF
08 bis 15 Bits 12 bis 15 des Datenwortes DM 6648 auf 0 gesetzt:
1-1AbschnittSPS–Konfiguration
208
00 bis 31 (BCD) (Alle anderen Einstellungen spezifizieren eine Teilnehmernummer von 00, verursa-
chen einen geringfügigen Fehler und aktivieren AR1302)
0: Deaktiviert den Startcode 1: Aktiviert den Startcode in 6649 DM
(Alle anderen Einstellungen deaktivieren den Startcode, verursachen einen gering­fügigen Fehler und aktivieren AR 1302)
0: Deaktiviert den Endcode 1: Aktiviert den Endcode in 6649 DM 2: Setzt den Endcode auf CR, LF
(Alle anderen Einstellungen deaktivieren den Endcode, verursachen einen gering­fügigen Fehler und aktivieren AR 1302)
208
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 1 1 von DM 6648 auf 1 einge­stellt werden.)
spezifiziert die Anzahl der zu empfangenden Bytes (00: 256 Bytes; 01 bis FF: 1 bis 255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6648 auf 1 gesetzt: Spezifiziert den Ende–Code (00 bis FF)
12
1-1AbschnittSPS–Konfiguration
Wort(e) SeiteFunktionBit(s)
Peripherieschnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. Ist der Kommunikationsschalter der CPM2A CPU–Baugruppe eingeschaltet, wird die Kommunikation über die Periphe-
rieschnittstelle der CPM2A durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM 6650 bis DM 6654, bestimmt. Die Kommunikationsschaltereinstellung der CPM2A besitzt keinen Einfluss auf die Kommunikation mit einer an die Peri­pherieschnittstelle angeschlossenen Programmierkonsole. Die CPM2A CPU–Baugruppe erkennt die Programmierkon­sole und baut automatisch die Kommunikation auf.
Schalter 1 des DIP–Schalters der CPM2C CPU–Baugruppe muss aus– und Schalter 2 eingeschaltet sein, damit die Kommunikation über die Peripherieschnittstelle der CPM2C durch die Einstellungen in DM 6650 DM bis DM 6654 be­stimmt werden kann. Ist Schalter 2 ausgeschaltet, wird die Kommunikation über die Peripherieschnittstelle der CPM2C vom Programmierkon­solen–Protokoll bestimmt. Sind Schalter 1 und 2 des DIP–Schalters der CPM2C CPU–Baugruppe eingeschaltet, wird die Kommunikation von den Standard–Host–Link–Einstellungen bestimmt (1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits,
9.600 b/sek.). DM 6650
DM 6651
00 bis 03 Schnittstelleneinstellungen
00:Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 b/sek.),
Host–Link–Baugruppennummer: 0
01:Einstellungen im Datenwort DM 6651 (Alle anderen Einstellungen spezifizieren Standardeinstellungen, verursachen ei-
nen geringfügigen Fehler und aktivieren AR1302.)
04 bis 1 1 Nicht verwendet. 12 bis 15 Kommunikationsbetriebsart
0: Host–Link oder Toolbus 1: Ohne Protokoll
(Alle anderen Einstellungen spezifizieren die Host–Link–Einstellung, verursachen einen geringfügigen Fehler und aktivieren AR 1302.)
00 bis 07 Baudrate
00: 1.200 b/sek.; 01: 2.400 b/sek.; 02: 4.800 b/sek.; 03: 9.600 b/sek.; 04: 19.200 Baud
08 bis 15 Rahmenformat
Startbit Datenbits Startbits 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 Keine 03: 1 Bit 7 Bits 2 Bits Gerade 04: 1 Bit 7 Bits 2 Bits Ungerade 05: 1 Bit 7 Bits 2 Bits Keine 06: 1 Bit 8 Bits 1 Bit Gerade 07: 1 Bit 8 Bits 1 Bit Ungerade 08: 1 Bit 8 Bits 1 Bit Keine 09: 1 Bit 8 Bits 2 Bits Gerade 10: 1 Bit 8 Bits 2 Bits Ungerade 11: 1 Bit 8 Bits 2 Bits Keine
(Alle anderen Einstellungen spezifizieren Standardeinstellungen (1 Startbit, 7 Da­tenbits, gerade Parität, 2 Stopbits, 9.600 b/sek.), verursachen einen geringfügigen Fehler und aktivieren AR 1302.)
208
13
Wort(e) SeiteFunktionBit(s)
DM 6652 00 bis 15 Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis
99.990 ms. ein) (Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursachen
einen geringfügigen Fehler und aktivieren AR 1302)
DM 6653
DM 6654
Fehlerprotokoll–Einstellungen (DM 6655)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. DM 6655
00 bis 07 Teilnehmernummer (Host–Link)
00 bis 31 (BCD) (Alle anderen Einstellungen spezifizieren eine Teilnehmernummer von 00, verursa-
chen einen geringfügigen Fehler und aktivieren AR1302)
08 bis 1 1 Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
0: Deaktiviert den Startcode 1: Aktiviert den Startcode in DM 6654
(Alle anderen Einstellungen deaktivieren den Startcode, verursachen einen gering­fügigen Fehler und aktivieren AR 1302)
12 bis 15 Endcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
0: Deaktiviert den Endcode 1: Aktiviert den Endcode in DM 6654 2: Setzt den Endcode auf CR, LF.
(Alle anderen Einstellungen deaktivieren den Endcode, verursachen einen gering­fügigen Fehler und aktivieren AR 1302)
00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 1 1 von DM 6653 auf 1 einge­stellt werden)
08 bis 15 Bits 12 bis 15 des Datenwortes DM 6653 auf 0 gesetzt:
spezifiziert die Anzahl der zu empfangenden Bytes. (00: 256 Bytes; 01 bis FF: 1 bis 255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt: Spezifiziert den Ende–Code (00 bis FF)
00 bis 03 Ausführung
0: Verschiebung nach der Speicherung von 7 Aufzeichnungen 1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung) 2 bis F: Kein Speichern der Aufzeichnungen
04 bis 07 Nicht verwendet 08 bis 1 1 Aktivierung der Zyklusüberwachungszeit
0: Generiert einen geringfügigen Fehler für eine zu lange Zykluszeit 1: Generiert keinen geringfügigen Fehler
12 bis 15 Aktivierung der Fehlergenerierung für eine zu niedrige Batteriespannung
0: Generiert einen geringfügigen Fehler 1: Generiert keinen geringfügigen Fehler
Die Batteriespannung niedrig–Fehlererfassung ist normalerweise in CPU–Baugrup­pen deaktiviert (d.h. Einstellung auf 1), die über keine Uhr verfügen. Wird die SPS– Konfiguration gelöscht, wird die Einstellung auf 0 geändert und ein Batteriespan­nung niedrig–Fehler wird generiert.
Bits 12 bis 15 sollten immer auf 0 gesetzt werden, wenn die optionale CPM2C– BAT01 installiert ist
1-1AbschnittSPS–Konfiguration
208
208
24
14
1-1AbschnittSPS–Konfiguration
1-1-4 SRM1(–V2) SPS–Konfigurationseinstellungen
Die SPS–Konfiguration wird in drei Kategorien eingeteilt: 1) Einstellungen in be­zug auf SPS–Basisbetrieb und E/A–Verarbeitungen, 2) Einstellungen bezüglich der Zykluszeit und 3) Kommunikations–Einstellungen. In diesem Abschnitt wer­den die Einstellungen, entsprechend dieser Klassifikation, erläutert.
Die folgende Tabelle zeigt die Einstellungen für die SPS–Systeme der SRM1(-V2)–Serie in numerischer Reihenfolge. 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
DM 6601
DM 6602
DM 6603
DM 6604
DM6605 bis 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
00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
00: PROGRAMM 01: MONITOR 02: RUN
08 bis 15 Spezifikation der Start–Betriebsart
00: Programmierkonsolenschalter 01: Fortsetzung der vorherigen Betriebsart 02: Einstellung in 00 bis 07
00 bis 07 Nicht verwendet 08 bis 1 1 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen 1: Aufrechterhalten (sehen Sie “Vorsicht” auf Seite 20.)
12 bis 15 Zwangssetzungsstatus–Haftmerker(SR 25211)–Status beim Einschalten
0: Rücksetzen 1: Status nicht ändern
00 bis 03 Programmspeicher–Schreibschutz
0: Programmspeicher ohne Schreibschutz 1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07 Programmierkonsolen–Display–Sprache
0: Englisch 1: Japanisch
08 bis 1 1 Erweiterte Befehle
0: Grundeinstellungen 1: Anwendereinstellungen
12 bis 15 Nicht verwendet. 00 bis 03 Maximale Anzahl der CompoBus/S–Geräte
0: Max. Anzahl 32 1: Max. Anzahl 16
04 bis 07 CompoBus/S–Kommunikationsmodus–Einstellung (nur –V2)
0: Hochgeschwindigkeits–Kommunikation 1: Long–Distance–Kommunikation
08 bis 15 Nicht verwendet 00 bis 07 00: Kein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungs-
spannungsausfalls (AR 1314 EIN) gespeichert werden konnten 01: Ein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungsspan­nungsausfalls (AR 1314 EIN) gespeichert werden konnten
08 bis 15 Nicht verwendet 00 bis 15 Nicht verwendet
00 bis 07 Servicezeit der RS–232C–Schnittstelle (wirksam, wenn Bits 08 bis 15 gesetzt wer-
den) 00 bis 99 (BCD): Prozentsatz der zum Service der RS–232C–Schnittstelle benötig­ten Zykluszeit
08 bis 15 Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung
00: 5% der Zykluszeit 01: Verwendung der in 00 bis 07 eingestellten Zeit.
19
20
20
21
15
Wort(e) SeiteFunktionBit(s)
DM 6617
DM 6618
DM 6619 00 bis 15 Zykluszeit
DM 6620 bis DM 6644
RS–232C–Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. DM 6645
00 bis 07 Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 gesetzt
werden) 00 bis 99 (BCD): Prozentsatz der zum Service der Peripherieschnittstelle verwen­deten Zykluszeit
08 bis 15 Aktivierung der Peripherieschnittstellen–Serviceeinstellung
00: 5% der Zykluszeit 01: Verwendung der in 00 bis 07 eingestellten Zeit
00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden) 00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
08 bis 15 Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 s
max.) 00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert) 01: Einheit: 10 ms 02: Einheit: 100 ms 03: Einheit: 1 s
0000: Variable (keine Mindestzeit) 0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 15 Nicht verwendet.
00 bis 03 Schnittstelleneinstellungen
00: Standard (1 Startbit, 7–Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) 01: Einstellungen in DM 6646
04 bis 07 CTS–Handshake–Einstellungen
0: Deaktiviert 1: Aktiviert
08 bis 1 1 Bei Einsatz einer 1:1 Data–Link–Verbindung: Stellt den Schnittstellenbereich auf
1:1–PC–Link ein
0: LR 00 bis LR 15 Ungleich 0: Deaktiviert
Bei Einsatz einer 1:n–NT–Link–Verbindung: Spezifiziert die höchste Bedien–Termi­nal–Teilnehmernummer
1 bis 7
12 bis 15 Kommunikationsbetriebsart
0: Host–Link; 1: Ohne Protokoll (RS–232C) 2: 1:1–PC–Link–Verbindung (Slave) 3: 1:1–PC–Link–Verbindung (Master) 4: 1:1–NT–Link; 5: 1:n–NT–Link
(Alle anderen Einstellungen spezifizieren den Host–Link–Modus, verursachen ei­nen geringfügigen Fehler und aktivieren AR 1302.)
Die 1:n–NT–Link–Verbindung wird nur von der SRM1–C02–V2 unterstützt
1-1AbschnittSPS–Konfiguration
21
21
22
248
16
Wort(e) SeiteFunktionBit(s)
DM 6646
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)
DM 6648
DM 6649
00 bis 07 Baudrate
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K
08 bis 15 Rahmenformat
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 Keine 03: 1 Bit 7 Bits 2 Bits Gerade 04: 1 Bit 7 Bits 2 Bits Ungerade 05: 1 Bit 7 Bits 2 Bits Keine 06: 1 Bit 8 Bits 1 Bit Gerade 07: 1 Bit 8 Bits 1 Bit Ungerade 08: 1 Bit 8 Bits 1 Bit Keine 09: 1 Bit 8 Bits 2 Bits Gerade 10: 1 Bit 8 Bits 2 Bits Ungerade 11: 1 Bit 8 Bits 2 Bits Keine Andere: 1 Bit 7 Bits 2 Bits Gerade
AR 1302 wird aktiviert, um einen geringfügigen System–Konfigurationsfehler anzu­zeigen, wenn kein Wert zwischen 00 und 11 spezifiziert wird.
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001 gleich 10 ms
00 bis 07 Teilnehmernummer (Host–Link, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 0
gesetzt werden) 00 bis 31 (BCD)
08 bis 1 1 Startcode–Auswahl (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM
6645 auf 1 gesetzt werden) 0: Deaktiviert 1: Einstellung
12 bis 15 Endcode–Auswahl (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM
6645 auf 1 gesetzt werden). 0: Deaktiviert (Anzahl der empfangenen Bytes) 1: Einstellung (spezifizierter Endcode) 2: CR, LF
00 bis 07 Startcode–Auswahl (RS–232C–Schnittstelle)
00 bis FF (binär)
08 bis 15 Bits 12 bis 15 des Datenwortes DM 6648 auf 0 gesetzt:
spezifiziert die Anzahl der zu empfangenden Bytes (00: 256 Bytes; 01 bis FF: 1 bis 255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6648 auf 1 gesetzt: Spezifiziert den Ende–Code (00 bis FF)
1-1AbschnittSPS–Konfiguration
248
17
Wort(e) SeiteFunktionBit(s)
Einstellungen der Peripherieschnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam DM 6650
DM 6651
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)
DM 6653
DM 6654
00 bis 03 Schnittstelleneinstellungen
00: Standard (1 Startbit, 7–Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud) 01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird auf EIN gesetzt)
04 bis 07 Nicht verwendet 08 bis 1 1 Nicht verwendet 12 bis 15 Kommunikationsbetriebsart
0: Host–Link; 1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird auf EIN gesetzt)
00 bis 07 Baudrate
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K
08 bis 15 Rahmenformat
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 Keine 03: 1 Bit 7 Bits 2 Bits Gerade 04: 1 Bit 7 Bits 2 Bits Ungerade 05: 1 Bit 7 Bits 2 Bits Keine 06: 1 Bit 8 Bits 1 Bit Gerade 07: 1 Bit 8 Bits 1 Bit Ungerade 08: 1 Bit 8 Bits 1 Bit Keine 09: 1 Bit 8 Bits 2 Bits Gerade 10: 1 Bit 8 Bits 2 Bits Ungerade 11: 1 Bit 8 Bits 2 Bits Keine Andere: 1 Bit 7 Bits 2 Bits Gerade
AR 1302 wird aktiviert, um einen geringfügigen System–Konfigurationsfehler anzu­zeigen, wenn kein Wert zwischen 00 und 11 spezifiziert wird
0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms (Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
00 bis 07 Teilnehmernummer (Host–Link)
00 bis 31 (BCD) (Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
08 bis 1 1 Startcode aktiviert (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM
6650 auf 1 gesetzt werden) 0: Deaktiviert 1: Einstellung aktiviert
12 bis 15 Endecode aktiviert (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM
6650 auf 1 gesetzt werden). 0: Deaktiviert (Anzahl der empfangenen Bytes) 1: Einstellung (spezifizierter Endecode) 2: CR, LF
00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn Bits 08 bis 1 1 von DM 6653 auf 1 eingestellt werden).
08 bis 15 Bits 12 bis 15 des Datenwortes DM 6653 auf 0 gesetzt:
spezifiziert die Anzahl der zu empfangenden Bytes. (00: 256 Bytes; 01 bis FF: 1 bis 255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt: Spezifiziert den Ende–Code (00 bis FF)
1-1AbschnittSPS–Konfiguration
248
248
248
18
Wort(e) SeiteFunktionBit(s)
Fehlerprotokoll–Einstellungen (6655 DM)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam. DM 6655
00 bis 03 Ausführung
0: Verschiebung nach der Speicherung von 7 Aufzeichnungen 1: Speichern der ersten 7 Aufzeichnungen
Fehler werden nicht gespeichert, wenn andere Werte eingestellt sind
04 bis 07 Nicht verwendet. 08 bis 1 1 Aktivierung der Zykluszeit–Überwachung
0: Auswertung langer Abfragezyklen als geringfügige Fehler 1: Lange Abfragezyklen werden nicht erkannt
12 bis 15 Aktivierung der Fehlergenerierung bei zu niedriger Batteriespannung
0: Generiert einen geringfügigen Fehler bei einer niedrigen Batteriespannung 1: Generiert keinen geringfügigen Fehler
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
Übertragungsverzögerungszeit: keine Teilnehmernummer: 00
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
24
(1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits, 9.600 Baud
1-2 SPS–Basisoperationen und E/A–Verarbeitungen
In diesem Abschnitt werden die Konfigurationseinstellungen für den SPS-Stan­dardbetrieb und die E/A-Verarbeitung erläutert.
1-2-1 Start–Betriebsart
Die nach dem Einschalten der SPS aktivierte Betriebsart wird, wie nachfolgend dargestellt, eingestellt.
Bit
15
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
Vorgabe: Betriebsartenschalter der Programmierkonsole oder RUN– Betriebsart, falls keine Programmierkonsole angeschlossen ist.
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.
0
19
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
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
00
Einstellung des Systemmerkers SR 25211
0: Rücksetzung des Zustands 1: Aufrechterhaltung des Zustands
Einstellung des Systemmerkers SR 25212
0: Rücksetzung des Zustands 1: Aufrechterhaltung des Zustands
Vorgabe: Beide Systemmerker zurückgesetzt.
Immer 00
Der Zwangssetzungsstatus-Haftmerker (SR 25211) bestimmt, ob der Zwangs­setzungs-Status (gesetzt/zurückgesetzt) beim Umschalten von der PRO­GRAM- in die MONITOR-Betriebsart erhalten bleibt.
Der E/A–Speicher–Haltemerker (SR 25212) bestimmt, ob der Zustand der IR– Bits und der LR–Bits beim Start und bei der Deaktivierung des SPS-Betriebs beibehalten wird.
!
Vorsicht Verwenden Sie nicht den E/A–Speicher–Haltemerker–Status– und Zwangsset-
zungs–Haftmerkerstatus–Merker (DM 6601) der CPM1, wenn die SPS–Span­nungsversorgung für einen die Speicherzeit des internen nullspannungssi­chernden Kondensators überschreitenden Zeitraum abgeschaltet wird. Wird die Speicherzeit überschritten, ist der Speicherstatus auch dann undefiniert, wenn der E/A–Speicher–Haltemerker und der Zwangssetzungs–Haftmerker­status–Merker verwendet wird. Unvorhersehbare Ergebnisse können auftre­ten, wenn der Betrieb mit einem undefinierten Speicherstatus versucht wird.
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.
Programmierkonsolen–Meldungen
0: Englisch 1: Japanisch
Programmspeicher
0: Nicht schreibgeschützt 1: Schreibgeschützt
Vorgabe:Anzeige in Englisch, nicht schreibgeschützt
20
Bit
DM 6602
15 0
00
Immer 00
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.
1-2-4 RS–232C–Schnittstellen–Servicezeit (nur
CPM2A/CPM2C/SRM1(–V2))
Die folgenden Einstellungen spezifizieren den prozentualen Anteil der Zyklus­zeit für den Service der RS–232C–Schnittstelle.
Aktivierung der Servicezeit-Einstellung
00: Deaktiviert (5% der Zykluszeit) 01: Aktiviert (die Einstellung in den Bits 00 bis 07 wird verwendet)
Servicezeit (%, gültig, wenn die Bits 08 bis 15 auf 01 gesetzt sind)
00 bis 99 (BCD, zweistellig)
Vorgabe: 5% der Zykluszeit
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.
Bit
DM 6616
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
15 0
1-2-5 Servicezeit der Peripherieschnittstelle
Die folgenden Einstellungen spezifizieren den prozentualen Anteil der Zyklus­zeit für den Service der Peripherieschnittstelle.
Aktivierung der Servicezeit-Einstellung
00: Deaktiviert (5% der Zykluszeit) 01: Aktiviert (die Einstellung in den Bits 00 bis 07 wird verwendet)
Servicezeit (%, gültig, wenn die Bits 08 bis 15 auf 01 gesetzt sind)
00 bis 99 (BCD, zweistellig)
Vorgabe: 5% der Zykluszeit
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
DM 6618
15 0
Bit
DM 6617
15 0
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
Einstellung der Zyklusüberwachungszeit
(wenn die Bits 08 bis 15 nicht 00 sind) 00 bis 99 (BCD, zweistellig; Einheiteneinstellung in den Bits 08 bis 15)
Vorgabe: 120 ms.
21
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
Die Zykluszeitüberwachung dient zur Erkennung extrem langer Zykluszeiten, die zum Beispiel im Falle einer unendlichen Programmschleife auftreten kön­nen. Überschreitet die Zykluszeit den für die Zyklusüberwachungzeit spezifi­zierten Wert, wird ein schwerwiegender Fehler (FALS 9F) generiert.
Hinweis 1. Die Einheiten, die für die im AR–Bereich (AR 14 und AR 15) gespeicherten
Maximal– und Ist–Zyklusdauer verwendet werden, werden durch die Ein­stellung für die Zyklusüberwachungs–Zeit in DM 6618, wie nachfolgend ge­zeigt, bestimmt.
Bits 08 bis 15 auf 01 gesetzt: 0,1 ms Bits 08 bis 15 auf 02 gesetzt: 1 ms Bits 08 bis 15 auf 03 gesetzt: 10 ms
2. Auch bei Zykluszeiten von 1 s oder länger beträgt die über Programmierge­räte gelesene Zykluszeit maximal 999,9 ms. Die tatsächlichen maximalen und aktuellen Zykluszeiten werden in den AR–Bereichen gespeichert.
Beispiel
Wird 0230 in DM 6618 spezifiziert, wird ein FALS 9F-Fehler erst bei einer Zy­kluszeit von mehr als 3 s generiert. Beträgt die Ist–Zykluszeit 2,59 s, enthält der AR–Bereich den Wert 2590 (ms), die über ein Programmiergerät gelesene Zy­kluszeit beträgt jedoch 999,9 ms.
Ein ”geringfügiger” Fehler (Zykluszeitüberschreitung) wird generiert, sobald die Zykluszeit 100 ms überschreitet. Voraussetzung hierfür ist jedoch, dass die Er­kennung langer Zykluszeiten über die Einstellung in DM 6655 deaktiviert wurde.
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.
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.
Bit
15 0
DM 6619
Zykluszeit (BCD, vierstellig)
0000: Variable Zykluszeit 0001 bis 9999: Minimale Zykluszeit
Vorgabe: Variable Zykluszeit
(Einheit: 1 ms)
22
Eingang von einem Ein­gangsgerät wie z.B. Be­grenzungsschalter
Eingangsbit– Status
t
t
Eingangs–Zeitkonstante
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
Die SRM1(–V2) verfügt nicht über diese Einstellung.
CPM1/CPM1A SPS Stellen Sie die Eingangs–Zeitkonstanten für die CPM1/CPM1A–Eingänge über
ein Programmiergerät ein.
Eingangs–Zeitkonstanten für IR 000
Bit
15 0
DM 6620
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)
Eingangs–Zeitkonstanten für IR 001 bis IR 009
Bit
DM 6621: IR 001 und IR 002 DM 6622: IR 003 und IR 004 DM 6623: IR 005 und IR 006 DM 6624: IR 007 und IR 008 DM 6625: IR 009
DM6621 bis DM6625
15 0
Zeitkonstante für IR 002, IR 004, IR 006 und IR 008 Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (8 ms für alle)
Die neun möglichen Einstellungen für die Eingangs–Zeitkonstante sind nachfol­gend dargestellt. (Geben Sie nur die äußerst rechte Ziffer jeder Einstellung für IR 000 ein.)
00: 8 ms 01: 1 ms 02: 2 ms 03: 4 ms 04: 8 ms 05: 16 ms 06: 32 ms 07: 64 ms 08: 128 ms
Die E/A–Ansprechzeit der CPM1/CPM1A ist die Eingangs–Zeitkonstante (1 ms bis 128 ms; Vorgabe ist 8 ms) + Zykluszeit.
Sehen Sie Abschnitt 81 CPM1/CPM1A−Zykluszeit und E/A−Ansprechzeit für weitere Informationen.
CPM2A/CPM2C SPS–Systeme Stellen Sie die Eingangs–Zeitkonstanten für die Eingänge der CPM2A/CPM2C
über ein Programmiergerät ein.
Eingangs–Zeitkonstanten für IR 000
Bit
15 0
DM 6620
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)
Eingangs–Zeitkonstanten für IR 001 bis IR 009
DM 6621: IR 001 und IR 002 DM 6622: IR 003 und IR 004 DM 6623: IR 005 und IR 006 DM 6624: IR 007 und IR 008 DM 6625: IR 009
Zeitkonstante für IR 002, IR 004, IR 006 und IR 008 Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (10 ms für alle)
DM6621 bis DM6625
Bit
15 0
23
Die neun möglichen Einstellungen für die Eingangs–Zeitkonstante sind nachfol­gend dargestellt. Für IR 000 muss nur die äußerst rechte Ziffer eingegeben wer­den.
00: 10 ms 01: 1 ms 02: 2 ms 03: 3 ms 04: 5 ms 05: 10 ms 06: 20 ms 07: 40 ms 08: 80 ms
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
DM 6655
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
15 0
0
Erkennung einer niedrigen Batteriespannung
0: Erkennung 1: Keine Erkennung
Erkennung einer Zykluszeit­Überschreitung
0: Erkennung 1: Keine Erkennung
Fehlerprotokoll­Speicherung
0: Die 7 zuletzt aufgetretenen Fehler werden immer gespeichert (ältere Fehler werden gelöscht). 1: Nur die ersten 7 Fehler werden gespeichert (weitere Fehler werden nicht gespeichert). 2 bis F: Fehler werden nicht gespeichert.
Vorgabe: Niedrige Batteriespannung und Zykluszeit-Überschreitungen werden als Fehler erkannt und die 7 zuletzt aufgetretenen Fehler gespeichert.
immer 0
Zu geringe Batteriespannungen und Zykluszeit-Überschreitungen werden als ”geringfügige” Fehler eingestuft.
Sehen Sie Kapitel 9 Fehlersuche für weitere Informationen über das Fehlerpro
tokoll.
Hinweis Der Batteriespannung niedrig–Fehler wird nur in der CPM2A/CPM2C generiert.
Diese Ziffer wird nicht in den SPS–Systemen CPM1/CPM1A/SRM1(–V2) und CPM2C verwendet, die nicht mit einer Batterie ausgestattet sind.
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
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
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(festes Tastverhältnis) 95 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
von Dezimalwerten 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2-1 CPM2A/CPM2C–Interrupt–Funktionen
2-1AbschnittCPM2A/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–Programmen
1, 2, 3...
Interrupt–Programme werden als Interrupt–Unterprogramme innerhalb des An­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– Programm
1. Ein neuer Interrupt kann in einem Interrupt–Unterprogramm festgelegt und ein vorhandener gelöscht werden.
Unterprogramm
26
2. Innerhalb eines bestimmten Interrupt–Unterprogrammes kann kein ande­res Unterprogramm zur Verarbeitung eines anderen Interrupts program­miert werden. Ein anderes Interrupt–Unterprogramm kann nicht zwischen den SBN(92)– und RET(93)–Befehlen verschachtelt werden.
3. Es ist nicht möglich, ein Unterprogramm innerhalb eines Interrupt–Unter­programmes zu schreiben. Zwischen den SBN(92) und RET(93)–Befehlen kann kein Unterprogramm verschachtelt werden.
4. Es ist nicht möglich, ein Interrupt–Unterprogramm innerhalb eines norma­len Unterprogramms zu schreiben. Ein Interrupt–Unterprogramm kann nicht zwischen den SBN(92)– und RET(93)–Befehlen verschachtelt wer­den.
Wird eine Interrupt–Unterprogramm definiert, wird während der Programm­überprüfung ein “SBS UNDEFINED(nicht definiertes Unterprogramm)”–Fehler generiert, aber das Programm wird normal ausgeführt.
Vorsicht Obwohl IORF(97) in Interrupt–Unterprogrammen verwendet werden kann,
!
müssen Sie den Zeitraum zwischen den IORF(97)–Ausführungen sorgfältig be ­achten. Wird IORF(97) zu häufig ausgeführt, kann ein schwerwiegender Sy­stemfehler (FALS 9F) auftreten, wodurch der Betrieb abgebrochen wird. Der In­tervall zwischen Ausführungen von IORF(97) sollte mindestens 1,3 ms + ge­samte Ausführungszeit des Interrupt–Unterprogramms betragen.
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Reihenfolge der
Die Reihenfolge der Interrupt–Prioritäten ist wie folgt:
Prioritäten der Interrupts
Eingangsgesteuerte Interrupts
Auf–/Abwärtszählungs–
=>=
gesteuerte Interrupts
Wird während der Interrupt–Programmausführung, ein Interrupt mit einer höhe­ren Priorität generiert, wird der Interrupt, der zur Zeit verarbeitet wird, abgebro­chen, und der neue Interrupt zuerst verarbeitet. Dann wird die V erarbeitung des ursprünglichen Interrupts wieder fortgesetzt, nachdem die Verarbeitung des In­terrupts mit der höheren Priorität abgeschlossen ist.
Gleichzeitig generierte Interrupts der gleichen Priorität werden in folgender Rei­henfolge verarbeitet:
Eingangsgsteuerter Interrupt 0 Eingangsgsteuerter Interrupt 1 Eingangs­gsteuerter Interrupt 2 Eingangsgsteuerter Interrupt 3 (einschließlich Auf–/Abwärtszähl–Modus)
Intervall–Zeitgeber–Interrupt → Schneller Zähler–Interrupt
2-1-1 Eingangsgesteuerte Interrupts
Durch Umschalten der in der CPU–Baugruppen–integrierten Eingänge von AUS auf EIN kann das normale Programm unterbrochen und das Interrupt–Pro­gramm ausgeführt werden. Diese Interrupts sind vier Eingängen zugeordnet (00003 bis 00006*).
Intervall–Zeitgeber– gesteuerte Interrupts
Schnelle Zähler– Zählwertvergleichs– Interrupts
27
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Einschaltens des
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.
Interrupt–Signal
Normales Programm
Eingangs–
nummer
(Hinweis 1)
00003 0 000 00004 1 001 00005 2 002 00006 3 003
Interrupt–
Nummer
programm–
(Hinweis 2)
Interrupt– Programm
Unter–
nummer
signalbreite
50 µs 0,3 ms (vom
Unter– programm
Mindest–
Eingangs–
Interrupt–
Ansprechzeit
Zeitpunkt des Einschaltens des Eingangs bis zur Programm– ausführung)
Hinweis 1. Eingänge 00003 bis 00006 können für jede der folgenden Funktionen ver-
wendet werden: als Interrupt–Eingänge, als Interrupt–Eingänge (Zählmo­dus) oder als Eingänge mit Impulsspeicherung. Werden diese Eingänge nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als gewöhnliche Eingänge eingesetzt werden.
2. Unterprogrammnummern 000 bis 003 sind die Nummern der Interrupt–Pro­gramme, die gestartet werden, wenn eingangsgesteuerte Interrupts oder Auf–/Abwärtszählungs–gesteuerte Interrupts für eingangsgesteuerte Inter­rupts (Zählmodus) generiert werden. Werden diese Eingänge nicht für ei­nen der zuvor beschriebenen Zwecke verwendet, können sie als gewöhnli­che Eingänge eingesetzt werden.
Die folgende Tabelle zeigt die Beziehungen zwischen Interrupt–Eingängen und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
28
Funktion Eingangsgesteuerter Interrupts
(Zählmodus)
Synchronisierte Impulssteuerung Kann gleichzeitig verwendet werden. Eingangsgesteuerte Interrupts (Sehen Sie Hinweis 1) Intervall–Zeitgeber–gest. Interrupts Kann gleichzeitig verwendet werden. Schnelle Zähler Kann gleichzeitig verwendet werden. Eingangsgest. Interrupts (Zählmodus) (Sehen Sie Hinweis 1) Impulsausgänge Kann gleichzeitig verwendet werden. Eingänge mit Impulsspeicherung (Sehen Sie Hinweis 1) Eingangs–Zeitkonstante (Sehen Sie Hinweis 2) Uhr Kann gleichzeitig verwendet werden.
Hinweis 1. Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funk-
tionen konfiguriert werden: als Interrupt–Eingang, als Interrupt–Eingang (Zählmodus) oder als Eingang mit Impulsspeicherung.
2. Werden die Eingänge 00003 bis 00006 als Interrupt–Eingänge (Zählmo­dus) konfiguriert, werden die Eingangszeit–Konstanten der entsprechen­den Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in der SPS–Konfiguration gespeichert.
Verwendung der Interrupt–Eingänge
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Eingänge
E–gest. Interrupt0
E–gest. Interrupt 1
Verdrahtung der Eingänge.
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan–
Programms.
Kontaktplan–Programmierung
INT(89)–Befehl
Interrupt–Signal– Freigabe
Eingang: 00003 bis 00006
Definition als Interrupt–Eingänge (eingangsge­steuerte Interrupts–oder Zählmodus).
INT(89): Maskierung und Demaskierung von Interrupts.
SBN(92) und RET(93): Erstellung von Inter­rupt–Unterprogrammen.
Interrupt wird generiert.
Spezifiziertes Unterprogramm wird ausgeführt.
(92)
(93)
Zuordnung der Interrupt– Unterprogramme
E–gest. Interrupt 2
E–gest. Interrupt3
SPS–Konfigur.
DM 6628
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In­terrupt–Eingängen fest zugeordnet.
Eingang Interrupt–
Nummer
00003 0 000 00004 1 001 00005 2 002 00006 3 003
Unterprogramm–
nummer
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
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
erru
ge
1: Interru t–Eingänge
)
g
Verdrahtung der Eingänge
Verdrahten Sie, bei einer CPM2A, die Eingangsklemmen wie in der folgenden Abbildung gezeigt.
Eingang 00003 Eingang 00004 Eingang 00005 Eingang 00006
Verdrahten S i e d i e E i ngänge einer CPM2C, wie in der folgenden Abbildung ge­zeigt.
Eing.–klemmen
00004 00003
E–Steckverbind.
00006 00005 00004 00003
SPS–Konfiguration
Hinweis Sehen SIe das technische Handbuch der CPU–Baugruppe für Informationen
über die Verdrahtung. Die folgende Tabelle enthält die Einstellungen im SPS–Konfigurationsbereich,
die mit der Verwendung von eingangsgesteuerte Interrupts zusammenhängen.
Wort Bits Funktion Ein–
stellung
DM 6628
00 bis03Einstellung für
Eingang 00003
04 bis07Einstellung für
Eingang 00004
08 bis11Einstellung für
Eingang 00005
12 bis15Einstellung für
Eingang 00006
0: Normaler Eingang 1: Int
(Eingangsgesteuerter Interrupt– oder Zählmodus)
2: Schneller Eingang mit Impulsspeicherung
pt–Eingän
1
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.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der CPM2A/CPM2C eingeschaltet wird.
30
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Kontaktplan– Programmierung
(@)INT(89)
Die folgende Tabelle zeigt die sich auf Interrupts beziehenden Befehlsfunktio­nen.
Befehl Steuerung Betrieb
(@)INT(89)
Maskierung/Demaskie­rung der eingangsge­steuerte Interrupts.
Eingangsgesteuerte In­terrupts löschen
Liest den gegenwärtigen Maskenstatus
Maskierung aller Inter­rupts
Demaskierung aller Interrupts
Sperrt oder gibt spezifizierte Interrupts frei.
Löscht einen maskierten (gesperrten) ein­gangsgesteuerten Interrupt.
Liest den Freigabe/Gesperrt–Status eines eingangsgesteuerten Interrupts.
Sperrt alle Interrupts, einschließlich ein­gangsgesteuerte Interrupts, Intervall–Zeit­geber–gesteuerte Interrupts, zählerge­steuerte Interrupts, usw.
Gibt alle Interrupts, einschließlich ein­gangsgesteuerte Interrupts, Intervall–Zeit­geber–gesteuerte Interrupts, zählerge­steuerte Interrupts, usw. frei.
Maskierung oder Demaskierung von Interrupts
Diese Funktion wird dazu verwendet, um die den Eingängen 00003 bis 00006 zugeordneten Interrupts 0 bis 3 zu maskieren oder zu demaskieren.
Interrupt–Steuercode (000: Maskierung/Demaskierung der Interrupts)
000 000
Fest auf 000 (keine Funktion)
C
2
Steuerdaten–Wort
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)
0: Maske gelöscht (Interrupt–Eingang freigegeben) 1: Maske spezifiziert (Interrupt–Eingang sperren)
Alle eingangsgesteuerten Interrupts sind am Anfang des Betriebs gesperrt (in entweder der PROGRAM– oder der RUN/MONITOR–Betriebsart). Um ein­gangsgesteuerte Interrupts zu verwenden, müssen diese über INT(89) freige­geben werden.
Löschen von maskierten, eingangsgesteuerten Interrupts
Diese Funktion wird dazu verwendet, die gespeicherten Zustände der Eingänge 00003 bis 00006 zu löschen (eingangsgesteuerte Interrupts 0 bis 3). Da ein­gangsgesteuerte Interrupts gespeichert werden, werden maskierte Interrupts erst abgearbeitet, nachdem die Maske entfernt wurde, es sei denn, die Inter­rupts werden zuvor gelöscht. Verwenden Sie INT(89), um die Interrupt–Spei­cherung zu löschen, damit die Interrupts nicht ausgeführt werden, wenn ein­gangsgesteuerte Interrupts freigegeben werden (d.h. nachdem die Maske ent­fernt wird).
31
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
(@)INT(89)
Spezifiziert eingangsgesteuerten Interrupt 3 (Eingang 00006) Spezifiziert eingangsgesteuerten Interrupt 2 (Eingang 00005) Spezifiziert eingangsgesteuerten Interrupt 1 (Eingang 00004) Spezifiziert eingangsgesteuerten Interrupt 0 (Eingang 00003)
Interrupt–Steuercode (001: Interrupt löschen)
001 000
Fest auf 000 (keine Funktion)
C
2
Steuerdaten–Wort
Spezifiziert 0
0: Interrupt beibehalten 1: Interrupt löschen
Während eingangsgesteuerte Interrupts maskiert sind, kann bei mehreren ein­gegangenen Impulsen nur ein auszuführender Interrupt pro Eingang gespei­chert werden.
Lesen des gegenwärtigen Maskenstatus
Diese Funktion wird dazu verwendet, den gegenwärtigen Maskenstatus für die Eingänge 00003 bis 00006 (eingangsgesteuerte Interrupts 0 bis 3) zu lesen.
(@)INT(89)
002
Interrupt–Steuercode (002: Lesen des gegenwärtigen Maskenstatus)
000
Fest auf 000 (keine Funktion)
C
Steuerdaten–Wort
2
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)
0: Maske ist gelöscht (Interrupt freigegeben). 1: Maske ist definiert (Interrupt gesperrt).
Maskierung oder Demaskierung aller Interrupts
Diese Funktion wird zur Maskierung/Demaskierung aller Interrupt–Verarbeitun­gen (eingangsgesteuerte Interrupts (auch im Zählmodus), Intervall–Zeitgeber– gesteuerte Interrupts und zählergesteuerte Interrupts) verwendet. Maskierte eingangsgesteuerte Interrupts werden gespeichert, aber nicht ausgeführt.
Maskierung aller Interrupts
32
(@)INT(89)
100
Interrupt–Steuercode (100: Maskierung aller Interrupts)
000
Fest auf 000 (keine Funktion) Fest auf 000 (keine Funktion)
000
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Demaskierung aller Interrupts
(@)INT(89)
200
Interrupt–Steuercode (200: Demaskierung aller Interrupts)
000
Fest auf 000 (keine Funktion) Fest auf 000 (keine Funktion)
000
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
Verdrahtung
Eing.–klemmen
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.
Das folgende Diagramm zeigt die Eingangsverdrahtung der CPM2A.
Eingabegerät
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2C.
E–Steckverbind.
Eingabe­gerät
Eingabe­gerät
33
SPS–Konfiguration
Programmierung
EIN für 1 Zyklus am Anfang des RUN/MONITOR– Betriebs
(89)
15 0
DM 6628
Löscht den Inkrementbereich (DM 0000).
Freigabe von des eingangsgesteuerten Interrupts 0 (Eingang 00003).
0 0 1
0
Eingang 00003 wird als Interrupt–Eingang verwendet. (Die Eingänge 00004 bis 00006 werden als normale Eingänge verwendet.)
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Immer EIN
25313
Ausgeführt, wenn Eingang 00003 von AUS auf EIN wechselt.
2-1-2 Intervall–Zeitgeber–gesteuerter Interrupt
Ein Intervall–Zeitgeber (Genauigkeit: 0,1 ms) wird unterstützt und kann auf 0,5 ms bis 319.968 ms eingestellt werden. Es gibt zwei Interrupt–Modi: der Mono­flop–Modus, in der ein einzelner Interrupt ausgeführt wird, wenn die Zeit abge­laufen ist und der zeitgesteuerte Modus, in der Interrupts in regelmäßigen Inter­vallen ausgeführt werden.
Normales Programm
Intervall–Zeitgeber–Interrupt
34
Interrupt– Programm
Unter– programm
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Monoflop–Interrupt–Modus Zeitgesteuerter
Interrupt–Modus
Vorgang Der Interrupt wird einmal aus-
geführt, wenn die Zeit abge-
laufen ist. Zeiteinstellung 0,5 bis 319.968 ms (Einheit: 0,1 ms) Interrupt–
Ansprechzeit
0,3 ms (beginnend mit dem Moment des Ablaufs der Zeit bis
zur Ausführung des Interrupt–Programms)
Die folgende Tabelle zeigt die Beziehungen zwischen Intervall–Zeitgeber–ge­steuerte Interrupts und anderen Funktionen der SPS der CPM2A/CPM2C–Se­rie.
Synchronisierte Impulssteuerung Kann gleichzeitig verwendet werden. Eingangsgesteuerte Interrupts Kann gleichzeitig verwendet werden. Intervall–Zeitgeber–gest. Interrupts --­Schneller Zähler Kann gleichzeitig verwendet werden. Eingangsgest. Interrupt (Zählmodus) Kann gleichzeitig verwendet werden. Impulsausgänge Kann gleichzeitig verwendet werden. Eingänge mit Impulsspeicherung Kann gleichzeitig verwendet werden. Eingangs–Zeitkonstante Kann gleichzeitig verwendet werden. Uhr Kann gleichzeitig verwendet werden.
Interrupts werden in normalen Intervallen ausgeführt.
Intervall–Zeitgeber–gesteuerte
Interrupts
Verfahren zur Anwendung von Intervall–Zeitgeber–gesteuertern Interrupts
Modus auswählen. Entweder Monoflop– oder zeitgesteuerter Interrupt–Modus
Kontaktplan–Programmierung STIM(69)
Intervall-Zeitgeber
Kontaktplan–Programmierung
STIM(69)
INTERVALL–ZEIT­GEBER–Befehl
Zeitgeber starten Monoflop–Betrieb Zeitgest. Interrupt–Betrieb Lesen der abgelaufen. Zeit
Interrupt wird ausgeführt.
Spezifiziertes Unterprogramm wird ausgeführt.
SBN(92)
RET (93)
Auswählen des Modus
Wählen Sie entweder den Monoflop– oder den zeitgesteuerten Interrupt– Modus aus.
35
Monoflop–Modus
Normales Programm Normales Programm
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
Zeitgesteuerter Interrupt–Modus
Normales Programm
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Kontaktplan– Programmierung
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
Beim zeitgesteuerten Interrupt–Modus wird, nachdem die festgesetzte Zeit ab­gelaufen ist, der Zeitgeber bei jedem Aufruf des Interrupt–Programms zurück­gesetzt; anschließend läuft der Intervall–Zeitgeber wieder an.
Seien Sie in Bezug auf die Ausführungszeit des Interrupt–Programms und der eingestellten Zeit des Intervall–Zeitgebers vorsichtig. Überschreitet die Ausfüh­rungszeit des Interrupt–Programms die festgesetzte Zeit des Intervall–Zeitge­bers, kann der zeitgesteuerte Interrupt nicht richtig ausgeführt werden.
Die folgende Tabelle zeigt die sich auf die Interrupt–Verarbeitung beziehenden Befehlsfunktionen.
Befehl Steuerung Betrieb
(@)STIM(69)
(@)INT(89)
Einschaltwischer starten Startet den Intervall–Zeitgeber in dem
Monoflop–Interrupt–Modus.
Zeitgesteuerten Inter­rupt–Zeitgeber starten
Zeitgeber–Istwert lesen Liest den Zeitgeber–Istwert. Zeitgeber anhalten Bricht die Zeitgeberfunktionen ab. Alle Interrupts maskieren Sperrt alle Interrupts, einschließlich ein-
Alle Interrupts demaskie­ren
Startet den Intervall–Zeitgeber in dem zeitgesteuerten Interrupt–Modus.
gangsgesteuerte Interrupts, Intervall– Zeitgeber–gesteuerte Interrupts, Zähler­gesteuerte Interrupt, usw.
Gibt alle Interrupts, einschließlich ein­gangsgesteuerte Interrupts, Intervall– Zeitgeber–gesteuerte Interrupts, Zähler­gesteuerte Interrupts, usw. frei
36
Starten der Zeitgeber
Diese Funktion stellt die Betriebsart (Monoflop– oder zeitgesteuerter Interrupt) und den Sollwert des Zeitgebers ein und startet den Intervall–Zeitgeber.
Monoflop–Modus
(@)STIM(69)
000
Steuerbezeichnung (000: Einschaltwischer starten)
C
2
Erstes Wort des Zeitgeber–Sollwertes
C
Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
3
Zeitgesteuerte Interrupt–Modus
(@)STIM(69)
003
Steuercode (003: zeitgesteuert. Interrupt–Zeitgeber starten
C
2
Erstes Wort des Zeitgeber–Sollwertes Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
C
3
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
C
2
C2+1
Anfangswert des dekrementierenden Zählers (4–stelliger Hex–Wert): 0000 bis 9999
Zeitintervall jeder Dekrementierung (4-stelliger BCD­Wert; Einheit: 0,1 ms): 0005 bis 0320 (0,5ms bis 32 ms)
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spezifi­zierten Zeit wird folgendermaßen berechnet:
(Inhalt des Wortes C
) x (Inhalt der Worte C2 + 1) x 0,1 ms
2
(0,5 bis 319.968 ms)
Wird für C
eine Konstante spezifiziert, wird der Sollwert des Abwärtszählers auf
2
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)
C
2
C
3
C
2
C2+1
C
3
Anzahl der Male, die ein Abwärtszähler herun­tergezählt werden soll (4–stelliger Hex–Wert) Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit: 0,1 ms)
Abgelaufene Zeit seit der vorhergehenden Dekre­mentierung (4-stelliger BCD-Wert; Einheit: 0,1 ms)
Anhalten der Zeitgeber
Diese Funktion hält den Intervall–Zeitgeber an.
(@)STIM(69)
010
Steuercode (010: Zeitgeber anhalten)
000
Fest: 000
000
Fest: 000
Maskierung oder Demaskieren aller Interrupts
Sehen Sie Abschnitt
Interrupt–Verarbeitungs–Befehle
2-1-1 Eingangsgesteuerte Interrupts
für Einzelheiten über die Maskierung/Demas-
kierung aller Interrupts.
und Abschnitt
7-29
37
Programmbeispiel
Monoflop–Interrupt–Modus
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Beschreibung
In diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedin­gung (00005) von AUS nach EIN umschaltet. W enn 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
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999 BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms (0005 bis 0320 BCD–Wert)
(Ausführungs– bedingung)
Immer EIN
(69)
Startet den Intervall–Zeitgeber im Monoflop–Interrupt–Modus.
Führt den Interrupt einmal aus, nach dem die Zeit abge­laufen ist.
38
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
2-2AbschnittCPM2A/CPM2C Schneller Zähler
EIN für 1 Zyklus am Anfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999, BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms (0005 bis 0320, BCD–Wert)
(Ausführungs–
(69)
bedingung)
Immer EIN
2-2 CPM2A/CPM2C Schneller Zähler
CPM2A CPU–Baugruppen und die meisten CPM2C CPU–Baugruppen besit­zen fünf Eingänge für schnelle Zähler: einen Eingang für einen schnellen Zähler mit einer max. Ansprechfrequenz von 20 kHz und vier Eingänge als Interrupt– Eingänge (Zählmodus).
CPM2C CPU–Baugruppen mit 10 Ein–/Ausgängen besitzen vier Eingänge für schnelle Zähler: einen Eingang für einen schnellen Zähler mit einer max. An­sprechfrequenz von 20 kHz und zwei Eingänge als Interrupt–Eingänge (Zähl­modus).
Startet den Intervall–Zeitgeber im zeitgesteuerte Interrupt–Modus.
Führt den Interrupt jedes Mal aus, wenn die festgesetzte Zeit abgelaufen ist.
Schnelle Zähler
Arten von Schnellen Zählern
Schneller Zähler
1 Eingang
Interrupt–Eingänge (Zählmodus)
4 Eingänge: (2 Eingänge in CPM2C CPU–
Baugruppen mit 10 E/A)
Keine Interrupts
Istzählwert– Interrupts
Keine Interrupts
Aufwärtszähl– Interrupts
Zielwert–Ver­gleich–Interrupts
Bereichsver­gleich–Interrupts
Die CPM2A/CPM2C verfügt über einen integrierten Schnellen Zähler und inte­grierte Interrupt–Eingänge.
39
2-2AbschnittCPM2A/CPM2C Schneller Zähler
g
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–
Nr. (sehen
Sie den
Hinweis)
00000 00001 00002
Ansprech–
frequenz
5 kHz Differentialphasen
20 kHz Impuls und Richtung
Eingangsmodus (Zählwert) Steuerverfahren
(–8388608 bis 8388607)
(–8388608 bis 8388607) Auf–/Abwärts–Impulse
(–8388608 bis 8388607) Inkremental
(0 bis 16777215)
Zielwertvergleich– Interrupts
Bereichsvergleich– Interrupts
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–
Nr. (sehen
Sie den
Hinweis)
00003 00004 00005 00006
Ansprech–
frequenz
2 kHz Aufwärtszähler
Eingangsmodus
(Zählwert)
(0000 bis FFFF) Abwärtszähler
(0000 bis FFFF)
Steuerverfahren
Zählergesteuerte Interrupts
Hinweis 1. Nicht als Zähleingänge verwendete Eingänge können als gewöhnliche Ein-
Schnelle Zähler–Interrupts
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.
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
Zähl–Istwert
Zielwerte in inkrementierender Richtung
Zielwerte in dekrementierender Richtung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
werte und Interrupt–Unterprogramme können in der Tabelle für die inkrementie­rende oder dekrementierende Richtung eingetragen werden.
Oberer Grenzw. 1:
Unterer Grenzw. 1:
Oberer Grenzw. 2:
Unterer Grenzw. 2:
Die Interrupt–Verarbeitung wird ausgeführt, wenn der Istwert einem Zielwert in der inkrementierenden oder dekrementierenden Richtung entspricht.
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
Bereichsver­gleichs–Bedin­gung 2 erfüllt.
Übereinstimmung mit dem Zielwert während des inkrementierenden Zählens
Bereichsver­gleichs–Bedin­gung 1 erfüllt.
Bereichsver­gleichs–Bedin­gung 1 erfüllt.
Übereinstimmung mit dem Zielwert während des dekrementierenden Zählens
Bereichsver­gleichs–Bedin­gung 2 erfüllt.
Zeit
Die Interrupt–Verarbeitung wird ausgeführt, wenn eine Bereichsvergleichs–Bedingung erfüllt ist. Darüberhinaus schalten sich die entsprechenden Bits (0 bis 7) in AR 11 ein, wenn der Zähler–Istwert innerhalb eines Bereichs zwischen einem oberen und einem unteren Grenzwert liegt.
Auf–/Abwärtszählungsgesteuerte Interrupts über Interrupt–Eingänge (Zählmodus)
Ein Interrupt–Unterprogramm wird jedes Mal ausgeführt, wenn die Bedingung erfüllt ist, d. h., dass der Zähler–Istwert dem Zähler–Sollwert (in der Inkremen­tier–Betriebsart) oder 0 (Dekrementier–Betriebsart) entspricht.
41
2-2-1 Anwendung des Schnellen Zählers
g
gg
Die CPM2A/CPM2C CPU–Baugruppe verfügt über einen eingebauten Kanal für einen schnellen Zähler, der Impulse bis zu 20 kHz zählen kann. Dessen Ein­satz zusammen mit der Interrupt–Funktion ermöglicht eine Zielwert– oder Be­reichsvergleichssteuerung, ohne die Zykluszeit zu beeinflussen.
Zählereingänge
Rücksetzeingang
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Sensor Inkremental–Drehgeber
Angabe
Differentialphase Impuls plus
Eingangs– nummer
Eingangs– methode
Ansprechfrequenz 5 kHz 20 kHz 20 kHz 20 kHz Zählwert –8388608 bis 8388607 0 bis 16777215 Zähleristwert–Speicherziel
(sehen Sie den Hinweis 2) Interrupts
Zählerrückstellverfahren Z–Phasensignal + Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn IR
00000 Eingang Phase–A Impulseingang Rechtslaufeingang Impulseingang 00001 Eingang Phase–B Richtungseingang Linkslaufeingang (Sehen Sie den
00002 Eingang Phase–Z (Rücksetzeingang) (sehen Sie Hinweis 1)
Differentialphasen –eingänge (4X)
Worte SR 248 (äußerst rechte Ziffern) und SR 249 (äußerst linke Ziffern)
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.
00002 einschaltet, während SR 25200 gesetzt ist. Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn SR 25200
eingeschaltet wird.
Phaseneingänge Phaseneingänge Phaseneingänge
Eingangsmodus
Aufwärts/Abwärts Inkremental
Richtung
Hinweis 1)
Hinweis 1. Nicht als Zählereingänge verwendet Eingänge können als gewöhnliche
Eingänge verwendet werden.
2. Werden die W orte nicht als Zähleristwert–Speicherziel verwendet, können sie als gewöhnliche IR–Worte verwendet werden.
3. SR 25200 wird in jedem Zyklus gelesen. Bis zu einem Zyklus kann für eine Rücksetzung auf der steigenden Flanke von Phase–Z erforderlich sein.
Die folgende Tabelle zeigt die Beziehungen zwischen dem Schnellen Zähler und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
42
Programmbeispiel
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Funktion Zählergesteuerte Interrupts
Synchronisierte Impulssteuerung Wird verwendet. Eingangsgesteuerte Interrupts Kann gleichzeitig verwendet werden. Intervall–Zeitgeber–gest. Interrupts Kann gleichzeitig verwendet werden. Schneller Zähler --­Eingangsgest. Interrupts (Zählmodus) Kann gleichzeitig verwendet werden. Impulsausgänge Kann gleichzeitig verwendet werden. Eingänge mit Impulsspeicherung Kann gleichzeitig verwendet werden. Eingangs–Zeitkonstante Siehe Hinweis. Uhr Kann gleichzeitig verwendet werden.
Hinweis Werden die Eingänge 00000 bis 00002 für die V erwendung als Schnelle Zähler–
Eingänge eingerichtet, werden die Eingangszeitkonstanten für die entspre­chenden Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in der SPS–Konfiguration gespeichert.
Wählen Sie den Eingangsmodus
und das Rücksetzverfahren aus
Wählen Sie die zuverwendenden
Interrupts aus
Verdrahtung der Eingänge
SPS–Konfiguration (DM 6642)
Erstellen eines Kontaktplan–
Programms
Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang, 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) Zielwertvergleichs–Interrupts Bereichswertvergleichs–Interrupts
Eingangsnummer: 00000, 00001, 00002
Schnelle Zählereinstellung Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang,
Auf–/Abwärtseingang oder Inkrement Rücksetzverfahren: Z–Phase und Software–Rücksetzung oder Software–Rücksetzung
CTBL(63): Speicher–Vergleichstabelle, Start des Vergleichs INI(61): Istwert ändern, Vergleich starten PRV(62): Schnellen Zähler–Istwert lesen, Schnellen Zähler–Vergleichstatus lesen, Bereichsvergleich–
Ergebnisse lesen SBN(92) und RET(93): Interrupt–Unterprogramm–Programm erstellen (wenn Zählungsprüfungs–
Interrupts verwendet werden)
43
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Geber– eingänge
Schnelle Zähler– Funktion
Eingangsmodus
Differential– Phasenbetrieb
Impuls– u. Richtungs­eingang
Auf/Ab–Betrieb
Inkrementaleingang
SPS– Konfiguration
DM 6642, Bits 00 bis 03
Abfrage einmal/Zyklus
Zähleristwert
SR 249 SR 248
Auffrischung
SPS–Konfiguration
DM 6642, Bits 08 bis 15
Zählen
Kontaktplan–Programm
CTBL (63)
INI (61)
Sofort
PRV(62)
Spezifiziertes Unterprogramm wird ausgeführt (wenn Zählungsprü-
REGISTERVERGLEICH­STABELLEN–Befehl
Registervergleichs– tabelle
Vergleich starten
BETRIEBSARTEN­STEUERUNGS–Befehl
Istwert ändern Start/Stopp des­Vergleichs
SCHNELLER ZÄHLER–ISTWERT LESEN–Befehl
Istwert lesen Vergleichstatus lesen
Bereichsvergleichs–Ergebnisse lesen
fungs–Interrupts verwendet werden).
Zahlungsprüfungs– Interrupt generiert
SBN(92)
RET (93)
Bereichsvergleichs– Ergebnisse
AR 1100 bis AR 1107
Wahl des Eingangsmodus und Rücksetzverfahrens.
Eingangsmodus
Wählen Sie den Eingangsmodus für den schnellen Zähler entsprechend dem Signaltyp.
Differentialphase
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).
Maximalfrequenz: 5 kHz
EIN
Phase A
AUS
EIN
Phase B
AUS
Zählwert
Nms Frequenz =
1,000 N x 4
44
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Impuls und Richtung
Im Impuls– u. Richtungseingangsmodus werden Impuls– und Richtungssignal angelegt und der Zählwert wird entsprechend dem Richtungssignals–Zustand inkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
Impuls– eingang
Richtungs­eingang
EIN
AUS
EIN
AUS
Zählwert
Nms Frequenz =
1,000
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
Inkrementierung Dekrementierung
Rechtslauf– eingang
Linkslauf– eingang
Zählwert
EIN
AUS EIN
AUS
Nms Frequenz =
1,000
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
Impuls–
eingänge
EIN
AUS
Zählwert
Nms Frequenz =
1,000
N
Wird der Differentialphasen–Eingangsmodus verwendet, müssen Eingangssi­gnale über 4X–Differentialphasen–Eingänge angelegt werden. Wird ein Geber in diesem Modus angeschlossen, entspricht der Zählwert pro Umdrehung dem Vierfachen der Geberauflösung. Bei der Auswahl eines Gebers muss der max. Zählwert in Betracht gezogen werden.
Zählwerte
Bereichswerte werden vom schnellen Zähler nur in der Linearzähler–Funktion verarbeitet. Liegt der Zählwert außerhalb des zulässigen Bereichs, tritt ein Über– oder Unterlauf ein. Der Istwert wird 0FFFFFFF, wenn ein Überlauf auftritt
45
2-2AbschnittCPM2A/CPM2C Schneller Zähler
oder FFFFFFFF, wenn ein Unterlauf vorkommt; der Vergleich wird anschlie­ßend abgebrochen.
Differentialphasen– Eingangsmodus
Impuls– u. Richtungs– Eingangsmodus
Auf–/Abwärts– Impuls–Eingangsmodus
Inkrementalmodus
Unterlauf (FFFFFFFF)
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.
Überlauf (0FFFFFFF)
Überlauf (0FFFFFFF)
Z–Phase
Rücksetzung
1 Abfrage
Rücksetzung RücksetzungNicht zurückgesetzt Nicht zurückgesetzt
Software–Rücksetzung
Der Istwert wird zurückgesetzt, wenn der Rücksetzmerker (25200) des Schnel­len Zähler gesetzt wird.
1 Abfrage
Rücksetzung
Nicht zurück­gesetzt
Nicht zurück­gesetzt
Nicht zurück­gesetzt
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.
Wählen des zuverwendenden Interrupts
Schnelle Zähler–Interrupts
Schnelle Zähler–Interrupts verwenden eine Vergleichstabelle und führen eine Zählwertprüfung, entsprechend einer der beiden nachfolgend beschriebenen
46
2-2AbschnittCPM2A/CPM2C Schneller Zähler
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”
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.
für
Vergleichstabelle
Zähleristwert: 5.000 Zählrichtung: Inkrement Unterprogrammnummer: 10
Zähleristwert: 1.000 Zählrichtung: Inkrement Unterprogrammnummer: 8
Zähleristwert: 3.000 Zählrichtung: Dekrement Unterprogrammnummer: 9
Istwert
Inkrement– richtung
Inkrement– richtung
Interrupt Interrupt Interrupt
Unterprogramm 8 ausgeführt
Unterprogramm 10 ausgeführt
Dekrement– richtung
Zeit
Unterprogramm 9 ausgeführt
Das Verhältnis zwischen der Zielwertvergleichs–Zählwertprüfung und der Ver­gleichstabelle ist bei der CPM1/CPM1A unterschiedlich. Sehen Sie die jeweili­gen Handbücher für weitere Einzelheiten.
Es ist nicht möglich, mehr als eine Vergleichs–Richtungsbedingung für den glei­chen Zielwert in der Vergleichstabelle zu spezifizieren.
Der Zielwert– oder Bereichsvergleich kann für Schnelle Zähler–Interrupts ver­wendet werden.
Bereichsvergleichs–Interrupts
Bis zu acht Kombinationen von Vergleichsbedingungen (obere und untere Grenzwerte) und Interrupt–Unterprogrammnummern können in der Vergleichs­tabelle eingetragen werden. Das spezifizierte Unterprogramm wird einmal aus­geführt, wenn der Zähleristwert größer/gleich der unteren Grenze und kleiner/ gleich der oberen Grenze in der Vergleichstabelle ist.
Vergleichstabelle
Untere Grenze : 1.000 Obere Grenze: 4.000 Unterprogrammnummer: 10
Untere Grenze : 3.000 Obere Grenze: 5.000 Unterprogrammnummer: 9
Istwert
Interrupt Interrupt Interrupt
Unterprogramm 10 ausgeführt
Unterprogramm 9 ausgeführt
Unterprogramm 9 ausgeführt
Interrupt
Zeit
Unterprogramm 10 ausgeführt
47
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Werden gleichzeitig zwei oder mehrere Vergleichsbedingungen erfüllt (im glei­chen Zyklus), wird der Interrupt für die Bedingung, die dem Anfang der Ver­gleichstabelle am nächsten ist, ausgeführt.
Der Zielwert– oder Bereichsvergleich kann für Schnelle Zähler–Interrupts ver­wendet werden.
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.
Dies gilt ebenfalls für die Generierung eines Interrupts während der Ausführung eines Steuerbefehls für den Schnellen Zähler im normalen Programm. Diese Si­tuation kann mittels der folgenden Programmierung vermieden werden.
Verdrahtung der Eingänge
Verfahren 1
Unterbinden von Interrupts im normalen Programmbe­reich, während der Ausfüh­rung des Befehls.
Verfahren 2
Erneutes Ausführen des nicht ausführbaren Befehls im normalen Programmbe­reich.
Normaler Programmbereich
Interrupt–Programmbereich
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.
Verdrahten Sie die Eingänge, wie es in den folgenden Abbildungen gezeigt wird, entsprechend des Eingangsmodus und des Rücksetzverfahrens.
CPM2A–Eingänge
48
Differentialphasen–Eingangsmodus
00000: Eingang Phase A 00001: Eingang Phase B 00002: Eingang Phase Z
Impuls– u. Richtungs–Eingangsmodus Inkrementalmodus
00000: Impulseingang 00001: Richtungseingang 00002: Rücksetzeingang
Auf–/Abwärts–Impuls–Eingangsmodus
00000: Rechtsl.–eingang 00001: Linksl.–eingang
00002: Rücksetzeingang
00000: Impulseingang 00002: Rücksetzeingang
CPM2C–Eingänge
Differentialphasen–Eingangsmodus
E.–klemmen E–steckverbind.
00002: Eingang Phase Z 00001: Eingang Phase B
00000: Eingang Phase A
Auf–/Abwärts–Impuls–Eingangsmodus
Eing.–klemmen
E–steckverbind.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
00002: Eingang Phase Z 00001: Eingang Phase B 00000: Eingang Phase A
00002: Rücksetzeingang 00001: Linkslaufeingang
00000: Rechtslaufeingang
Impuls– u. Richtungs–Eingangsmodus
Eing.–klemmen
00002: Rücksetzeingang 00001: Richtungseingang
00000: Impulseingang
E–steckverbind.
00002: Rücksetzeing.
00001: Linkslaufeing. 00000: Rechtslaufeingang.
00002: Rücksetzeing. 00001: Richtungseing.
00000: Impulseing.
49
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Inkremental–Eingangsmodus
Eing.–klemmen
00002: Rücksetzeingang
00000: Impulseingang
Werden Phase–Z– und Rücksetzeingang nicht verwendet, kann 00002 als ge­wöhnlicher Eingang verwendet werden.
E–steckverbind.
00002: Rücksetzeing.
00000: Impulseing.
SPS–Konfiguration
Stellen Sie die SPS–Konfigurationsbereiche für den Schnellen Zähler wie folgt ein:
Schnelle Zähler–Einsatz DM 6642, Bits 08 bis 15
Eingangsmodus DM 6642, Bits 00 bis 03
(Verwendung/Nichtverwendung von 00002 als gewöhnlicher Eingang)
Wort Bits Funktion Ein–
DM 6642
00 bis 03 Einstellung des Schnellen Zähler–
04 bis 07 Einstellung des Schnellen
08 bis 15 Schnelle Zähler–Verwendung
Rücksetz-Verfahren
Eingangsmodus 0: Differentialphase 5 kHz
1: Impuls u. Richtung 20 kHz 2: Aufwärts/Abwärts 20 kHz 4: Inkremental 20 kHz
Zähler–Rücksetzverfahrens 0: Z–Phase und Software–Rücksetzung
1: Software–Rücksetzung
00: Nicht verwenden 01: Als Schneller Zähler 02: Synchronisierte Impulssteuerung
(10 Hz bis 500 Hz)
03: Synchronisierte Impulssteuerung
(20 Hz bis 1 kHz)
04: Synchronisierte Impulssteuerung
(300 Hz bis 20 kHz)
DM 6642, Bits 04 bis 07
stellung
0, 1, 2 oder 4
0 oder 1
01
50
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.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
() ()
Kontaktplan– Programmierung
Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung bezie­henden Befehle.
Befehl Steuerung Betrieb
(@)CTBL(63)
(@)INI(61)
(@)PRV(62)
(@)INT(89)
Zielwertvergleichsta­belle speichern
Bereichsvergleichsta­belle speichern
Zielwertvergleichsta­belle speichern und Vergleich beginnen
Bereichsvergleichsta­belle speichern und Vergleich beginnen
Vergleich starten Startet den Vergleich mit der gespeicher-
Vergleich beenden Bricht den Vergleich ab. Istwert ändern Ändert den schnellen Zähler–Istwert. Istwert lesen Liest Istwert des Schnellen Zählers. Status lesen Liest den Status des Schnellen Zählers. Bereichsvergleichs–
Ergebnisse lesen Maskierung aller
Interrupts
Demaskierung aller Interrupts
Speichert die Zielwertvergleichstabelle
Speichert die Bereichsvergleichstabelle
Speichert die Zielwertvergleichstabelle und beginnt den Vergleich
Speichert die Bereichsvergleichstabelle und beginnt den Vergleich
ten Vergleichstabelle.
Liest die Bereichsvergleichs–Ergebnisse
Sperren aller Interrupts, einschließlich eingangsgesteuerte Interrupts, Intervall– Zeitgeber–gesteuerte Interrupts, zähler­gesteuerte Interrupts, usw.
Freigabe aller Interrupts, einschließlich 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 249
252 00 Schneller Zähler–
AR11
00 bis 15 00 bis 15
00 bis 07 Schneller Zähler–
08 Schneller Zähler–Vergleich EIN:Vergleich aktiv
09 Schneller Zähler–Istwert–
Schneller Zähler-Istwert Liest den Istwert des
Schnellen Zählers. Wird dieses Bit eingeschal-
Rücksetzung
Bereichsvergleichs– Ergebnisse
Überlauf/Unterlauf
tet, wird eine Software– Rücksetzung für den schnel­len Zähler ausgelöst.
EIN:Bedingung erfüllt AUS: Bedingung nicht erfüllt
AUS: Vergleich abgebrochen EIN:Ü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) Anfangswort der Vergleichstabelle
S
51
Zielwertvergleichstabelle speichern und Vergleich beginnen
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Anzahl der Vergleiche
Zielwert 1 (niederwertige 4 Ziffern)
Zielwert 1 (höherwertige 4 Ziffern)
Unterprogrammnummer
Zielwert 2 (niederwertige 4 Ziffern)
Zielwert 2 (höherwertige 4 Ziffern)
Unterprogrammnummer
(@)CTBL(63)
Schnittstellenbezeichner (000: Schneller Zähler)
000
Modusbez. (000: Zielw.–vergleichstab. speichern/Vergleich beg.)
000
S
Anfangswort der Vergleichstabelle
Zielwertvergleichstabelle
Anzahl der Vergleiche
Vergleich 1– Einstellung
Vergleich 2– Einstellung
Zielwert (nieder–/höherwertig)
Unterprogrammnummer
0001 bis 0016 BCD
Zu vergleichenden Zählwert speichern. Die äußerste linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impulseingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Speichern Sie die Richtung des Vergleichs und die bei einer Entsprechung auszuführende Unterpro– grammnummer.
Die höherwertigen Ziffern zeigen die Richtung an (Inkremental/Dekremental).
Inkrementrichtung: 0000 bis 0049 Dekrementrichtung: F000 bis F049
Es ist nicht möglich, mehr als eine Vergleichs–Richtungsbedingung für den glei­chen Zielwert in der Vergleichstabelle zu spezifizieren.
Sobald eine V ergleichstabelle 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) Anfangswort der Vergleichstabelle
S
Bereichsvergleichstabelle speichern und Vergleich beginnen
(@)CTBL(63)
Schnittstellenbezeichner (000: Schneller Zähler)
000
Modusbezeichnung (001: Bereichsvergleichstabelle speichern und
001
Vergleich beginnen)
S
Anfangswort der Vergleichstabelle
52
Bereichsvergleichstabelle
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Untere Grenze 1 (niederwertige 4 Ziffern)
Untere Grenze 1 (höherwertige 4 Ziffern)
Obere Grenze 1 (niederwertige 4 Ziffern)
Obere Grenze 1 (höherwertige 4 Ziffern)
Unterprogrammnummer
Untere Grenze 8 (niederwertige 4 Ziffern)
Untere Grenze 8 (höherwertige 4 Ziffern)
Obere Grenze 8 (niederwertige 4 Ziffern)
Obere Grenze 8 (höherwertige 4 Ziffern)
Unterprogrammnummer
Acht Bereichsvergleichsbedingungen, bestehend aus oberen und unteren Grenzen und Unterprogrammnum-
Bereichsvergleichs– Bedingung 1.
mern müssen spezifiziert werden. Obere und untere Grenzen (niederwertig, höherwertig)
Obere und untere Grenzen speichern. Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impulseingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Unterprogrammnummer
Speichern der Unterprogrammnummer, die ausgeführt wird, wenn die Bereichsvergleichsbedingung erfüllt ist.
Bereichsvergleichs– Bedingung 8.
0000 bis 0049 Werden weniger als 8 Vergleichsbereiche verwendet,
muss FFFF für den Rest spezifiziert werden.
Werden gleichzeitig zwei oder mehrere Vergleichsbedingungen erfüllt (im glei­chen Zyklus), wird der Interrupt für die Bedingung, die dem Anfang der Ver­gleichstabelle am nächsten ist, ausgeführt.
Sobald eine V ergleichstabelle 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).
Vergleich beginnen/beenden
Der Vergleich kann, entsprechend der Tabelle, die über CTBL(63) in der CPM2A/CPM2C gespeichert wurde, begonnen oder beendet werden.
Vergleich beginnen
(@)INI(61)
Vergleich beenden
(@)INI(61)
000
Schnittstellenbezeichner (000: Schneller Zähler)
000
Steuerbezeichnung (000: Vergleich beginnen)
000
Fest: 000
000
Schnittstellenbezeichner (000: Schneller Zähler)
001
Steuerbezeichnung (001: Vergleich beenden)
000
Fest: 000
53
(@)INI(61)
Istwert ändern
Diese Funktion ändert den Istwert des schnellen Zählers.
000
Schnittstellenbezeichner (000: Schneller Zähler)
002
Steuerbezeichnung (002: Istwert ändern)
C
Anfangswort der zu ändernden Istwertdaten
2
2-2AbschnittCPM2A/CPM2C Schneller Zähler
C
2
C2+1
(@)PRV(62)
D
D+1
Niederwertige 4 Ziffern
Höherwertige 4 Ziffern
Zu ändernde Istwert–Daten (nierwertig, höherwertig)
Speichern der zu ändernden Istwert–Daten. Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–Eingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
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
000
Schnittstellenbezeichner (000: Schneller Zähler)
000
Steuerbezeichnung (000: Istwert lesen) Anfangswort zur Speicherung des Istwerts
C
2
Niederwertige 4 Ziffern Höherwertige 4 Ziffern
Istwert (niederwertig, höherwertig)
Der gelesene Istwert wird hier gespeichert.
Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–Eingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
54
Einsatz der Datenbereiche
Der Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in den Worten 248 und 249 gespeichert.
SR 248 SR 249
Istwert (niederwertiges Wort) Istwert (höherwertiges Wort)
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.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
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)
Schnittstellenbezeichner (000: Schneller Zähler)
000 001
Steuerbezeichnung (001: Status lesen)
D
Wort zur Speicherung des Status
Überlauf/Unterlauf
0: Normal 1: Überlauf/Unterlauf
Vergleich
0: Beendet; 1: Verarbeitung findet statt
Einsatz der Datenbereiche
Der Status wird, wie nachfolgend gezeigt, in AR 1108 und AR 1109 gespeichert.
Überlauf/Unterlauf
0: Normal 1: Überlauf/Unterlauf
Vergleich
0: Beendet; 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
Mit 1. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 2. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 3. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 4. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 5. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 6. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 7. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 8. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Verwendung der Datenbereiche
Das Bereichsvergleich–Ergebnis wird, wie nachfolgend dargestellt, in AR 1100 bis AR 1107 gespeichert.
Mit 1. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 2. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 3. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 4. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 5. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 6. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 7. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.) Mit 8. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
55
Anwendungsbeispiele
Zielwertvergleich
2-2AbschnittCPM2A/CPM2C Schneller Zähler
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 Maskierung und Demaskierung aller Interrupts.
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)
2-1-1 Interrupt–Eingänge
für Einzelheiten bezüglich der
E6B2–CWZ6C Inkremental– Drehgeber
Braun
Orange
Weiß
Schwarz
Blau
56
Verdrahtung (CPM2C)
Eing.–klemmen
2-2AbschnittCPM2A/CPM2C Schneller Zähler
E–steckverbind.
Braun
Orange Weiß Schwarz
Braun
Orange Weiß
Schwarz
Blau
Blau
Inkremental– Drehgeber
Inkremental– Drehgeber
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
EIN für 1 Zyklus am Anfang des Betriebs
Immer EIN
Immer EIN
Programmierung
(71)
Zielwertvergleichstabelle speichern und Vergleich beginnen
(63)
Schneller Zähler Zielwertvergleichstabelle speichern und Vergleich beginnen
Anfangswort der Vergleichstabelle
(92)
(38)
(93)
(92)
(38)
(93)
Vergleich 2
Vergleich 4
Anzahl der Vergleiche: 5
Zähler–Istwert: 10000
Inkrement, Unterprogr.–Nr. 049
Zähler–Istwert: 3000
Inkrement, Unterprogr–Nr. 040
Zähler–Istwert: 00000000
Dekrement, Unterprogr.–Nr 010
Zähler–Istwert: –00003000
Dekrement, Unterprogr.–Nr. 041
Zähler–Istwert: –00010000
Dekrement, Unterprogr–Nr. 048
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
Immer EIN
Immer EIN
Immer EIN
(92)
(92)
(92)
(38)
(93)
(38)
(93)
(38)
(93)
(01)
Vergleich 5
Vergleich 1
Vergleich 3
58
Bereichsvergleich:
2-2AbschnittCPM2A/CPM2C Schneller Zähler
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 Inkremental– Drehgeber
Verdrahtung (CPM2C)
Eing.–klemmen
Braun
Blau
Orange
Schwarz
Braun
Weiß
Blau
Inkremental– Drehgeber
E–steckverbind.
Orange Weiß Schwarz
Braun
Orange Weiß
Schwarz
Blau
Inkremental– Drehgeber
59
SPS–Konfiguration
15 0
DM 6642 0
1 0 0
2-2AbschnittCPM2A/CPM2C Schneller Zähler
0: Differentialphasen–Betrieb; 0: Durch Z–Phasen–Signal + Software–Rücksetzung
zurückgesetzt 01: Verwendung als Schneller Zähler
60
Programmierung
EIN für 1 Zyklus am Anfang des RUN/MONITOR–Betriebs
(92)
Immer EIN
(92)
Immer EIN
(92)
Immer EIN
(92)
Immer EIN
(71)
Bereichsvergleichstabelle speichern und Vergleich beginnen
(63)
Schneller Zähler
Bereichsvergleichstabelle speichern und Vergleich beginnen
Anfangswort der Vergleichstabelle
Unt. Grenze:
9.000
Ober. Grenze:
(38)
(93)
(38)
(93)
(38)
(93)
(38)
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
10.000
Unterprogr. 040
Unt. Grenze:
7.000
Ober. Grenze:
8.000
Unterprogr. 041
Unt. Grenze: –3.000
Ober. Grenze:
3.000
Unterprogr. 010
Unt. Grenze: –8.000
Ober. Grenze: –7.000
Unterprogr. 042
Unt. Grenze: –10.000
Ober. Grenze: –9.000
Unterprogr. 043
Vergleich 6
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
Nicht verwendet.
(93)
Immer EIN
(92)
(38)
(93)
(01)
Vergleich 7
Vergleich 5
Vergleich 8 Nicht verwendet.
2-2-2 Eingangsgesteuerte Interrupts im Zählmodus
Die vier eingebauten Interrupt–Eingänge der CPM2A/CPM2C CPU–Bau­gruppe können im Zählmodus als Eingänge mit einer Ansprechfrequenz von bis
Nicht verwendet.
61
2-2AbschnittCPM2A/CPM2C Schneller Zähler
FFFF)
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– Programm
Eingang
(Hinweis 2)
00003 00004 00005 00006 3 003
Zählen Interrupt–
0 bis 65535 (0000 bis
Unter– programm
Unterprogramm–
Nummer
0 000 1 001 2 002
nummer
(Hinweis 3)
Ansprech–
frequenz
2 kHz
Hinweis 1. 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.
2. Die Eingänge 00003 bis 00006 können für jede der folgenden Funktionen verwendet werden: als Interrupt–Eingänge, als Interrupt–Eingänge (Zähl­modus) oder als Eingänge mit Impulsspeicherung. Werden diese Eingänge nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als gewöhnliche Eingänge eingesetzt werden.
3. Unterprogrammnummern 000 bis 003 sind die Unterprogrammnummern für Interrupt–Programme, die gestartet werden, wenn Interrupt–Signale oder Auf–/Abwärtszähl–Interrupts für Interrupt–Eingänge (Zählmodus) ge­neriert werden. Werden diese Eingänge nicht für einen der zuvor beschrie­benen Zwecke verwendet, können sie als gewöhnliche Eingänge einge­setzt werden.
62
Vorsicht Obwohl IORF(97) in Interrupt–Unterprogrammen verwendet werden kann,
!
müssen Sie den Zeitraum zwischen den IORF(97)–Ausführungen sorgfältig be ­achten. Wird IORF(97) zu häufig ausgeführt, kann ein schwerwiegender Sy­stemfehler (FALS 9F) auftreten, wodurch der Betrieb abgebrochen wird. Das In­tervall zwischen Ausführungen von IORF(97) sollte mindestens 1,3 ms + ge­samte Ausführungszeit des Interrupt–Unterprogramms betragen.
Die folgende Tabelle zeigt die Beziehungen zwischen eingangsgesteuerte In­terrupts (Zählmodus) und anderen Funktionen der SPS der CPM2A/CPM2C– Serie.
Funktion Eingangsgesteuerte Interrupts
(Zählmodus)
Synchronisierte Impulssteuerung Kann gleichzeitig verwendet werden. Eingangsgesteuerte Interrupts (Sehen Sie den Hinweis 1) Intervall–Zeitgeber–gest. Interrupt Kann gleichzeitig verwendet werden. Schneller Zähler Kann gleichzeitig verwendet werden. Eingangsgest. Interrupts (Zählmodus) (Sehen Sie den Hinweis 1) Impulsausgänge Kann gleichzeitig verwendet werden. Eingänge mit Impulsspeicherung (Sehen Sie den Hinweis 1) Eingangs–Zeitkonstante (Sehen Sie den Hinweis 2) Uhr Kann gleichzeitig verwendet werden.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Hinweis 1. Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funk-
tionen konfiguriert werden: Interrupt–Eingang, Interrupt–Eingang (Zählmo­dus) oder Eingang mit Impulsspeicherung.
2. Werden die Eingänge 00003 bis 00006 als Interrupt–Eingänge (Zählmo­dus) konfiguriert, werden die Eingangszeit–Konstanten der entsprechen­den Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in der SPS–Konfiguration gespeichert.
Verfahren zum Einsatz von Interrupt–Eingängen im Zählmodus
Wählen Sie entweder die Inkremen­tier– oder Dekrementierzählweise
Verdrahtung der Eingänge
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan– Programms
Eingangsnummer: 00003 bis 00006 (00003 oder 00004 für CPM2C CPU–Baugruppen mit 10 E/A–Anschlüssen)
1: Verwendung als Interrupt–Eingänge (eingangsgesteuerte Interrupts oder Zählmodus).
INI(61): Zähler–Istwert ändern INT(89): Sollwert* des Zählers auffrischen. PRV(62): Zähler–Istwert lesen SBN(92) und RET(93): Zur Erstellung von
Interrupt–Unterprogrammen. *Verwendung nur für Auf–/Abwärtszähl–Interrupts.
63
Eingänge
Zähler (2 kHz) 0
Eingangsgesteuerte Interrupts im Zählmodus
Interrupt wird generiert.
Spezifiziertes Unterprogramm wird ausgeführt.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Zähler (2 kHz) 1
Zähler (2 kHz) 2
Zähler (2 kHz) 3
SPS–Konfiguration
DM 6628
Kontaktplan–Programm
INT(89)
INI (61)
INTERRUPT– Verarbeitungsbefehl
Zähler–Sollwert Zähler 0 Zähler 1
Zähler 2 Zähler 3
BETRIEBSARTEN­STEUERUNGS–Befehl
Istwert ändern
Einmal pro Zyklus
Zähler–Istwert
Zähler 0 Zähler 1 Zähler 2 Zähler 3
SR 240 SR 241 SR 242
SR 243
Auffrischung
SR 244 SR 245 SR 246 SR 247
Sofort
PRV(62)
SBN(92)
RET (93)
SCHNELLER ZÄHLER– ISTWERT LESEN–Befehl
Zähler–Istwert lesen
Zuordnung der Interrupt– Unterprogramme
Hinweis Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
Wahl der Inkrementier– oder Dekrementierzählweise.
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In­terrupt–Eingängen fest zugeordnet.
Eingang Interrupt–
Nummer
00003 0 000 00004 1 001 00005* 2 002 00006* 3 003
Unterprogramm–
nummer
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vor­handen.
Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funktio­nen konfiguriert werden: Interrupt–Eingang, Interrupt–Eingang (Zählmodus) oder Eingang mit Impulsspeicherung.
Bei eingangsgesteuerten Interrupts im Zählmodus kann entweder eine inkre­mentierende oder dekrementierende Zählung verwendet werden.
Inkrementierender Zählmodus
Während der Sollwert aufgefrischt wird, wird der Zählwert, beginnend mit 0, in-
64
2-2AbschnittCPM2A/CPM2C Schneller Zähler
krementiert und das Interrupt–Unterprogramm ausgeführt, wenn der Istwert dem Sollwert entspricht.
Istwert
Das Unterprogramm wird ausgeführt, wenn die Zählung beendet ist; der Istwert wird auf 0 zu-
Soll– wert
Inkrementieren
rückgesetzt.
Inkrementieren
Verdrahtung der Eingänge
Interrupt
Unterprogramm wird ausgeführt
Return
Interrupt
Unterprogramm wird ausgeführt
Zeit
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
Soll– wert
Dekrementieren
Interrupt
Unterprogramm wird ausgeführt
Das Unterprogramm wird ausgeführt, wenn die Zählung beendet ist; der Istwert wird auf Sollwert zurückgesetzt.
Dekrementieren
Zeit
Interrupt
Unterprogramm wird ausgeführt
Verdrahten Sie die Eingangsklemmen einer CPM2A wie in der folgenden Abbil­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
2-2AbschnittCPM2A/CPM2C Schneller Zähler
erru
ge
1: Interru t–Eingänge
)
Verdrahten Sie die Eingangsklemmen einer CPM2C wie in der folgenden Abbil­dung gezeigt.
Eing.–klemmen
00004: Eingangs–Interrupt (Zählmodus) 1 00003: Eingangs–Interrupt (Zählmodus) 0
E–.steckverbind.
00006: Eingangs–Interrupt (Zählmodus) 3 00005: Eingangs–Interrupt (Zählmodus) 2 00004: Eingangs–Interrupt (Zählmodus) 1 00003: Eingangs–Interrupt (Zählmodus) 0
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 vorhanden.
SPS–Konfiguration
Die folgende Tabelle enthält die Einstellungen im SPS–Konfigurationsbereich, die mit der Verwendung der Interrupt–Eingänge zusammenhängen.
Wort Bits Funktion Ein–
stellung
DM 6628
00 bis03Einstellung für
Eingang 00003
04 bis07Einstellung für
Eingang 00004
08 bis11Einstellung für
Eingang 00005
12 bis15Einstellung für
Eingang 00006
0: Normaler Eingang 1: Int
(eingangsgesteuerter Interrupt oder Zählmodus)
2: Schneller Eingang
pt–Eingän
1
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.
Die Einstellung wird wirksam, wenn die Betriebsart geändert wird (von PRO­GRAM auf MONITOR/RUN) oder die Spannungsversorgung der CPM2A/ CPM2C eingeschaltet wird.
66
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Kontaktplan– Programmierung
Die folgende Tabelle enthält die Befehlsfunktionen, die sich auf die eingangsge­steuerte Interrupts (Zählmodus) beziehen.
Befehl Steuerung Betrieb
(@)INT(89)
(@)INI(61) Istwert ändern Ändert den Istwert des Zählers. (@)PRV(62) Istwert lesen Liest den Istwert des Zählers.
Sollwert des Aufwärts­zählers auffrischen
Sollwert des Abwärts­zählers auffrischen
Alle Interrupts maskieren
Alle Interrupts demaskieren
Frischt den Sollwert des Zählers auf und beginnt die Aufwärtszählung.
Frischt den Sollwert des Zählers auf und beginnt die Abwärtszählung.
Sperrt alle Interrupts, einschließlich ein­gangsgesteuerte Interrupts, Intervall–Zeit­geber–gesteuerte Interrupts, zählerge­steuerte Interrrupts, usw.
Gibt alle Interrupts, einschließlich ein­gangsgesteuerte Interrupts, Intervall–Zeit­geber–gesteuerte Interrupts, zählerge­steuerte Interrrupts, usw. frei.
Die auf eingangsgesteuerten Interrupts (Zählmodus) bezogenen Funktionen werden entsprechend den Datenbereichen ausgeführt, die in der folgenden Ta­belle dargestellt sind.
Wort Bits Name Inhalt
240 00 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 0 241 00 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 1 242 00 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 2 243 00 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 3 244 00 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 0 245 00 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 1 246 00 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 2 247 00 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 3
Sollwert des Zählers
Istwert des Zählers
Aufwärtszähler–Sollwert auffrischen/Abwärtszähler–Sollwert auffri­schen
Diese Funktionen speichert die Sollwerte der Zähler und frischt diese über INT(89) auf. Auf diese Weise beginnen die Zähler den Zählbetrieb für die Inter­rupt–Eingänge (Zählmodus) und erlauben Interrupts.
Speichern von Sollwerten
Die Sollwerte der Zähler werden in den Worten 240, 241, 242 und 243 gespei­chert.
SR 240 SR 241 SR 242 SR 243
Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 0: 0000 bis FFFF Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 1: 0000 bis FFFF Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 2: 0000 bis FFFF Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 3: 0000 bis FFFF
67
Beginnen des Zählbetriebs und Freigabe von Interrupts
Aufwärtszähler
(@)INT(89)
004
Interrupt–Steuercode (004: Sollwert des Aufwärtszählers auffrischen)
000
Fest: 000
C
2
Steuerdaten–Wort
Abwärtszähler
(@)INT(89)
003
Interrupt–Steuercode (003: Sollwert des Abwärtszählers auffrischen)
000
Fest: 000
C
2
Steuerdaten–Wort
0 spezifizieren und speichern
Eingangsgesteuerten Interrupt (Zählmodus) 3 spezifizieren Eingangsgesteuerten Interrupt (Zählmodus) 2 spezifizieren
Eingangsgesteuerten IInterrupt (Zählmodus) 1 spezifizieren Eingangsgesteuerten IInterrupt (Zählmodus) 0 spezifizieren
2-2AbschnittCPM2A/CPM2C Schneller Zähler
(@)INI(61)
(@)PRV(62)
0: Sollwert auffrischen 1: Sollwert nicht auffrischen
Hinweis Wird INT(89) ausgeführt, um Interrupts während des Zählerbetriebs (Interrupt–
Steuerbezeichnung 000) zu maskieren, wird der Zählerbetrieb abgebrochen und der Zähler–Istwert zurückgesetzt. Um den Zähler erneut zu verwenden, muss der Zählerbetrieb wieder gestartet werden, wie es zuvor beschrieben wurde.
Istwert ändern
Diese Funktion ändert den Istwert des Zählers.
P
Schnittstellenbezeichner (100, 101, 102, 103: eingangsgesteuerte Interrupts (Zählmodus) 0 bis 3)
002
Steuerbezeichnung (002: Istwert ändern)
C
Spezifiziert das Quellwort, das den neuen Istwert enthält
2
C
2
Das Wort enthält die Istwert–Daten (Quelle)
0000 bis FFFF
Istwert lesen
Diese Funktion liest den Istwert des Zählers.
Einsatz eines Befehls
P
Schnittstellenbezeichner (100, 101, 102, 103: eingangsgest. Interrupt (Zählmodus) 0 bis 3)
000
Steuerbezeichnung (000: Istwert lesen) Wort zur Speicherung des Istwerts
D
68
D
Istwertdaten lesen
Der gelesene Istwert wird hier gespeichert. 0000 bis FFFF
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Einsatz der Datenbereiche
Der Istwert des schnellen Zählers wird in den Worten SR 244 bis SR 247 gespei­chert, wie nachfolgend gezeigt wird.
Anwendungsbeispiel
Erläuterung
Verdrahtung
SR 244 SR 245
SR 246 SR 247
Istwert Istwert
Istwert Istwert
Eingangsgesteuerter Interrupt (Zählmodus) 0 Eingangsgesteuerter Interrupt (Zählmodus) 1
Eingangsgesteuerter Interrupt (Zählmodus) 2 Eingangsgesteuerter Interrupt (Zählmodus) 3
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.
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.
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2A.
Eing.–klemmen
Eingabegerät
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2C.
E.–steckverbind.
Eingabegerät
Eingabegerät
69
SPS–Konfiguration
Programmierung
DM 6628 0
EIN für 1 Zyklus am Anfang des Betriebs
15 0
0 0 1
Spezifiziert 00003 als Interrupt–Eingang (Zählmodus). Die Eingänge 00004 bis 00006 werden als normale Eingänge ver­wendet.
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zähler–Sollwert: 64 hex (100 dez.) Speichert den Sollwert in Wort 240.
(89)
Startet den Zähler mit Eingang 00003 als Inter­rupt–Eingang (Zählmodus).
Frischt den Zähler–Sollwert (Abwärtszähler) auf. immer 000 Spezifiziert Eingang 00003.
(Andere werden ausmaskiert.)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Wird einmal ausgeführt, wenn die Zählung beendet ist.
70
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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.
2-3-1 Arten von Interrupts
Die CPM1/CPM1A verfügt über die drei folgenden Interrupt–Funktionen:
Eingangs–Interrupts
Die CPM1/CPM1A verfügen über zwei oder vier Interrupt–Eingänge. Eine Inter­rupt–Verarbeitung erfolgt, sobald einer dieser Eingänge von einem externen Gerät auf EIN gesetzt wird.
Intervall–Zeitgeber–Interrupts
Die Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einen Intervall–Zeitgeber ausgelöst.
Schneller Zähler–Interrupts
Der Schnelle Zähler zählt die an einen der CPU–Eingänge 00000 bis 00002 an­liegenden Eingangs–Impulse. Die Interrupt–Verarbeitung wird, entsprechend des Istwertes des integrierten Schnellen Zählers, ausgeführt.
Interrupt–Priorität Wenn ein Interrupt generiert wird, wird die spezifizierte Interrupt–Verarbei-
tungs–Routine ausgeführt. Interrupts haben die folgende Prioritätsordnung:
Eingangs–Interrupts > Intervall–Interrupt = Schneller Zähler–Interrupts
Wird während der Interrupt–Verarbeitung ein Interrupt mit höherer Priorität empfangen, wird der aktuelle Betrieb abgebrochen und stattdessen der neu an­liegende Interrupt verarbeitet. Erst nach der vollständigen Ausführung des Un­terprogrammes wird die Verarbeitung des vorhergehenden Interrupts wieder aufgenommen.
Wird während der Interrupt–Verarbeitung ein Interrupt mit geringer oder glei­cher Priorität ausgelöst, wird der neu anliegende Interrupt nach der vollständi­gen Abarbeitung des aktuellen Unterprogrammes verarbeitet.
Werden zwei Interrupts gleicher Priorität gleichzeitig empfangen, werden sie in folgender Reihenfolge ausgeführt:
Eing.–Interrupt 0 > Eing.–Interrupt 1 > Eing.–Interrupt 2 > Eing.–Interrupt 3 Intervall–Interrupt > zählergesteuerter–Interrupt
Vorsichtsmaßnahmen für Interrupt–Programme
1, 2, 3...
Befehle und Interrupts für den Schnellen Zähler
Beachten Sie die folgenden Vorsichtsmaßnahmen bei der Verwendung von In­terrupt–Programmen:
1. Ein neuer Interrupt kann innerhalb eines Interrupt–Programms bestimmt werden. Weiterhin kann ein Interrupt innerhalb eines Interrupt–Programms gelöscht werden.
2. Ein anderes Interrupt–Programm kann nicht innerhalb eines Interrupt–Pro­gramms geschrieben werden.
3. Ein Unterprogramm kann nicht innerhalb eines Interrupt–Programms ge­schrieben werden. Verwenden Sie den SUBROUTINE DEFINE–Befehl SBN (92) nicht innerhalb eines Interrupt–Programms.
4. Ein Interrupt–Programm kann nicht innerhalb eines Unterprogrammes ge­schrieben werden. Schreiben Sie kein Interrupt–Programm zwischen ei­nem SUBROUTINE DEFINE–Befehl (SBN (92)) und einem RETURN–Be­fehl (RET (93)).
Die als Interrupt verwendeten Eingänge können nicht als normale Eingänge verwendet werden.
Die folgenden Befehle können nicht in einem Interrupt–Unterprogramm ausge­führt werden, wenn ein Befehl zur Steuerung des Schnellen Zählers im Haupt­programm ausgeführt wird:
INI(61), PRV(62) oder CTBL(63)
Die folgenden Verfahren können zur Umgehung dieser Einschränkung genutzt werden:
71
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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
2. In der nachfolgenden Abbildung ist der Programmabschnitt des Interrupt– Unterprogrammes dargestellt.
SBN(92) 000
25313
@CTBL(63)
000 000
DM 0000
72
25503
LR
0000
Hinweis 1. Definieren Sie Interruptroutinen am Ende des Hauptprogramms mit dem
Befehl SBN(92) und RET(93) wie bei normalen Unterprogrammen.
2. Bei der Definierung einer Interrupt–Routine tritt eine “SBS UN­DEFD”–Warnung während der Programmprüfung auf, das Programm wird jedoch normal ausgeführt.
2-3-2 Eingangs–Interrupts
gpp
j
,
(Zeit bis zur
Int
C
)
g)
CPM1A 30CDj j
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 (CPM1–10CDRj
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
CPU–Baugruppen mit 20 und 30 Ein–/
)
00003
00004
Ausgängen (CPM1–20CDRj und CPM1–30CDRj(–V1))
00003
00004
00005
00006
CPM1A SPS
CPU–Baugruppen mit 10 Ein–/Ausgängen (CPM1A–10CDRj)
Hinweis Werden keine eingangsgesteuerte Interrupts verwendet, können Sie die Ein-
24VDC
CPU–Baugruppe Ein– Interrupt–
NC
CPU–Baugruppen mit 20, 30 und 40 Ein–/Ausgängen (CPM1A–20CDRj und CPM1A–30CDRj) CPM1A–40CDRj)
gangpnummer
Ansprechzeit
Interrupt–
Modus
CPM1-10CDR-j CPM1A-10CDj-j
CPM1-20CDR-j CPM1A-20CDj-j
PM1-30CDR-j(-V1
CPM1A-30CDj-j CPM1A-40CDj-j
00003 00 00004 01 00003 00
00004 01 00005 02 00006 03
max. 0,3 ms 1 kHz (Zeit bis zur
Ausführung des
p
errupt–
Programms)
gänge 00003 bis 00006 als normale Eingänge verwenden.
Zählmodus
Interrupt–Eingangs– Einstellungen
Eingänge 00003 bis 00006 müssen als Interrupt–Eingänge in DM 6628 einge­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 V erwendung als normaler Eingang muss 0 eingestellt werden.
73
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
g
DM 6628
0: Normaler Eingang
(Grundeinstellung)
gg
Wort Einstellung
DM 6628 0: Normaler Eingan
(Grundeinstellung) 1: Interrupt–Eingang 2: Schneller Eingang
Bit
15 0
DM 6628
Einstellung für Eingang 00006: auf 1 setzen Einstellung für Eingang 00005: auf 1 setzen Einstellung für Eingang 00004: auf 1 setzen Einstellung für Eingang 00003: auf 1 setzen
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–
Nummer
00003 0 000 00004 1 001 00005 2 002 00006 3 003
Unterprogramm–
nummer
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
74
Interrupt–Programm
Interrupt–Eingangssignal
Verwenden Sie die folgenden Befehle, um eingangsgesteuerte Interrupts in die­sem Modus zu programmieren.
Maskierung/Demaskieren von eingangsgesteuerten Interrupts
Durch den INT(89)-Befehl können Maskierungen eingangsgesteuerter Inter­rupts in der erforderlichen Weise gesetzt bzw. zurückgesetzt werden.
(@)INT(89)
000 000
Die Einstellungen erfolgen über die D-Bits 0 bis 3, die den ein­gangsgesteuerten Interrupts 0 bis 3 entsprechen.
0: Löschen der Maskierung (Interrupt aktiviert) 1: Setzen der Maskierung (Interrupt deaktiviert)
D
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Am Anfang des Betriebes sind alle eingangsgesteuerte Interrupts maskiert. Wird der eingangsgesteuerte Interrupt–Modus verwendet, so stellen Sie sicher, die eingangsgesteuerten Interrupts wie oben mit INT(89) zu aktivieren.
Löschen maskierter Interrupts
Wechselt das an einem Interrupt–Eingang anliegende Signal während der Mas­kierung auf EIN, wird der betreffende Interrupt gespeichert und nach der Aufhe­bung der Maskierung direkt ausgeführt. Soll der betreffende Interrupt bei der Aufhebung der Maskierung nicht ausgeführt werden, muss die Interrupt–Spei­cherung zuvor gelöscht werden.
Für jede Interrupt-Nummer wird nur ein Interrupt-Signal gespeichert. Über den INT(89)-Befehl wird die Interrupt–Speicherung gelöscht.
(@)INT(89)
001 000
Werden die dem Interrupt 0 bis 3 entsprechenden D-Bits 0 bis 3 auf 1 gesetzt, werden die gespeicherten Interrupts gelöscht.
0: Interrupt–Speicherung wird nicht gelöscht. 1: Interrupt–Speicherung wird gelöscht.
D
Lesen des Maskierungszustands
Über den INT(89)-Befehl kann der Zustand der Maskierung gelesen werden.
(@)INT(89)
002 000
Der Zustand der äußerst rechten Stellen der in Wort D gespeicherten Daten (Bits 0 bis 3) zeigt den Maskierungszustand.
0: Maske ist gelöscht
D
(E–gesteuerte Interrupt–Verarbeitung freigegeben) 1: Maske ist definiert: (E–gesteuerte Interrupt–Verarbeitung gesperrt)
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.
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
@INT(89)
000 000
#000E
Maskierung/Demaskierung der eingangsgesteuerten Interrupts.
Demaskiert 00003 (eingangsgesteuerter Interrupt 0), maskiert andere.
SBN (92) 000
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
Interrupt–Programm
Interrupt–Eingangssignal
Sollwert
Hauptprogramm
75
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Führen Sie die folgenden Schritte durch, um Interrupts im Zählermodus zu pro­grammieren.
1, 2, 3...
1. Schreiben Sie die Sollwerte für den Zählerbetrieb in die SR–Worte, wie in der folgenden Tabelle gezeigt. Die Sollwerte liegen zwischen 0000 und FFFF (0 bis 65535). Der Wert 0000 deaktiviert den Zählbetrieb, bis ein neuer Wert spezifiziert und der nachfolgende Schritt 2 wiederholt wird.
Interrupt Wort
Egangsgesteuerter Interrupt 0 SR 240 Egangsgesteuerter Interrupt 1 SR 241 Egangsgesteuerter Interrupt 2 SR 242 Egangsgesteuerter Interrupt 3 SR 243
Die in dem Zählermodus (SR 240 bis SR 243) verwendeten SR–Worte ent­halten hexadezimale Daten und keine BCD–Werte. Wird der Zählermodus nicht verwendet, können diese Worte als Hilfsbits verwendet werden.
Hinweis Diese Systemmerker werden zu Beginn des Betriebs zurückge-
setzt und müssen von dem Programm neu gesetzt werden.
2. Mit dem INT(89)-Befehl können die in der Zähler-Betriebsart spezifizierten Sollwerte festgelegt bzw. erneuert werden, wobei die Maskierung dabei aufgehoben wird.
(@)INT(89)
Werden die den eingangsgesteuerte Interrupts entspre­chenden D-Bits 0 bis 3 zurückgesetzt, wird der Sollwert
003
festgelegt und Interrupts sind zulässig.
000
0: Der in der Zähler-Betriebsart spezifizierte Sollwert wird festgelegt und die Maskierung aufgehoben.
D
1: Nicht aktiviert.
Setzen Sie bei einem unbenutztem eingangsgesteuerten Interrupt das ent­sprechende Bit auf 1.
Der Interrupt, dessen Sollwert festgelegt wird, wird in der Zähler-Betriebsart ak­tiviert. Erreicht der Zähler den Sollwert, wird ein Interrupt ausgelöst und der Zäh­ler zurückgesetzt. Die Zählvorgänge/Interrupts werden bis zur Deaktivierung des Zählers fortgesetzt.
Hinweis 1. Wird der INT(89)-Befehl während des Zählvorgangs aufgerufen, wird der
Istwert auf den Sollwert gesetzt. Für einen Interrupt müssen Sie daher die differenzierte Form des Befehls verwenden, andernfalls wird kein Interrupt ausgelöst.
2. Der Sollwert wird bei der Ausführung des INT(89)-Befehls festgelegt. Ist be­reits ein Interrupt aktiv, dann kann der Sollwert nicht einfach durch Ände­rung des Inhaltes von SR 240 bis SR 243 geändert werden. Hierzu muss der Sollwert durch wiederholte Ausführung des INT(89)-Befehls geändert wer­den.
Die Maskierung von eingangsgesteuerte Interrupts im Zählmodus erfolgt auf dieselbe Weise wie im eingangsgesteuerten Interrupt-Modus. Werden Maskie­rungen jedoch auf dieselbe Weise aufgehoben, wird nicht der Zählmodus deak­tiviert, sondern stattdessen der eingangsgesteuerte Interrupt-Modus aktiviert.
Maskierte eingangsgesteuerte Interrupts werden auf die gleiche Weise wie im eingangsgesteuerten Interrupt-Modus gelöscht.
Zähler–Istwert im Zählmodus
Werden eingangsgesteuerte Interrupts im Zählmodus verwendet, wird der Zäh­ler-Istwert in dem SR-Wort gespeichert, das dem eingangsgesteuerten Inter­rupt 0 bis 3 entspricht. Die Werte betragen 0000 bis FFFE (0 bis 65534) und ent­sprechen dem Zähler-Istwert minus 1.
76
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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 T abelle 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
Sollwert
Wort mit
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
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
MOV(21)
#000A
240
@INT(89)
003 000
#000E
SBN (92) 000
RET (93)
Setzt den Sollwert auf 10. (0000 bis FFFF) Wort, das den Sollwert enthält (SR 240)
Sollwert des Zählers auffrischen.
Frischt nur den Sollwert von 00003 (eingangsgesteuerter Interrupt 0) auf.
Interrupt–Programm
2-3-3 Maskierung aller Interrupts
Mit dem INT(89)-Befehl können alle Interrupts, einschließlich der Eingangs-, In­tervall-Zeitgeber- und Schnelle Zähler-Interrupts als Gruppe maskiert und aus­maskiert werden. Diese Maskierung steht zusätzlich zur Maskierungen der ein­zelnen Interrupt–Arten zur Verfügung. Darüber hinaus wird durch Ausmaskie­rung aller Interrupts die Maskierung einzelner Interrupt-Arten nicht zurückge­setzt. Die Bedingungen vor der Ausführung des INT(89)-Befehls (zur Maskie­rung der Interrupts als Gruppe) sind weiterhin gültig.
Verwenden Sie INT(89) nur zur Maskierung von Interrupts, wenn alle Interrupts temporär maskiert werden müssen. INT(89)-Befehle müssen immer paarweise eingesetzt werden. Der erste INT(89)-Befehl dient zur Maskierung und der zweite zur Ausmaskierung von Interrupts.
Innerhalb von Interrupt-Routinen kann INT(89) nicht zur (Aus)Maskierung aller Interrupts verwendet werden.
77
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.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Ausmaskierung von Interrupt–Signalen
Mit Hilfe des INT(89)-Befehls können Interrupts folgendermaßen ausmaskiert werden:
(@)INT(89)
200 000 000
2-3-4 Intervall–Zeitgeber–gesteuerte Interrupts
Die CPM1/CPM1A ist mit einem Intervall–Zeitgeber ausgerüstet. Ist der Inter­vall–Zeitgeber abgelaufen, wird das Hauptprogramm unterbrochen und das In­terrupt–Programm unabhängig von der Position im Zyklus ausgeführt.
Für den Intervall-Zeitgeberbetrieb stehen zwei Modi zur Verfügung. Im Mono­flop(ONE–SHOT)-Modus wird nach Ablauf der Zeit nur ein Interrupt ausgelöst. In der zeitgesteuerten(SCHEDULED) Interrupt–Modus wird das Interrupt–Un­terprogramm in einem festen Zeit–Intervall wiederholt.
Der Sollwert des Intervall–Zeitgebers kann zwischen 0,5 und 319968 ms in Schritten von 0,1 ms eingestellt werden.
Betrieb Der folgende Befehl dient zur Aktivierung und Steuerung des Intervall-Zeitge-
bers.
Zeitgeber-Start im Monoflop(ONE–SHOT)-Interrupt–Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber im Monoflop–Modus.
1, 2, 3...
(@)STIM(69)
C1: Intervall–Zeitgeber, Monoflop–Modus (000)
C
1
C
: Zeitgeber-Sollwert (erste Wortadresse)
C C
2
2
C
: Unterprogramm-Nummer
3
3
(4-stelliger BCD-Wert): 0000 bis 0049
1. Wird für C2 eine Wortadresse eingegeben:
: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
C
2
+ 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:
C
2
0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms) Nach Ablauf des in Wort C
+ 1 spezifizierten Zeitintervalls dekrementiert
2
der Zähler den Istwert um 1. Beträgt der Istwert 0, wird das spezifizierte Un­terprogramm einmal aufgerufen und der Zeitgeber gestoppt.
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spe– zifizierten Zeit wird folgendermaßen berechnet: (Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) x 0,1 ms = (0,5 bis 319.968
2
ms)
2. Wird für C
eine Konstante spezifiziert:
2
Der Sollwert des Abwärtszählers wird auf den Wert dieser Konstanten ge­setzt; das Dekrementierungs-Zeitintervall beträgt 10 x 0,1 (=1 ms).
78
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Zeitgeber-Start im zeitgesteuerten(SCHEDULED)–Interrupt-Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber im zeitgesteuerten Interrupt–Modus.
1, 2, 3...
(@)STIM(69)
C1: Intervall–Zeitgeber, zeitgesteuerter Interrupt–Modus (003)
C
1
C
: Zeitgeber-Sollwert (erste Wortadresse)
2
C
2
C
: Unterprogrammnummer (4-stelliger BCD-Wert): 0000 bis 0049
3
C
3
1. Wird für C2 eine Wortadresse eingegeben: C2: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
+ 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:
C
2
0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms) Im Monoflop-Modus besitzen die Einstellungen die gleiche Bedeutung. Im
zeitgesteuerten Interrupt–Modus wird der Zeitgeber-Istwert jedoch auf den Sollwert zurückgesetzt und die Dekrementierung beginnt nach dem Aufruf des Unterprogramms. In diesem Modus werden die Interrupts in festen Zeit­intervallen bis zum Betriebsende wiederholt.
2. Wird für C
eine Konstante spezifiziert:
2
Die Einstellungen entsprechen denen des Monoflop–Modus. Interrupts werden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des Zeitgebers
Entsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit des Zeitgebers.
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C
1
C
: Führendes Wort von Parameter 1
C C
2
2
C
: Parameter 2
3
3
Anhalten von Zeitgebern
C2: Anzahl der Abwärtszähler-Dekrementierungen (4-stelliger BCD-Wert)
+ 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)
C
2
: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelliger
C
3
BCD-Wert; Einheit: 0,1 ms) Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführung
dieses Befehls wird folgendermaßen berechnet: [(Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
2
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
Entsprechend parametriert hält der STIM(69)-Befehl den Intervall-Zeitgeber an.
(@)STIM(69)
C
1
000 000
C1: Anhalten des Intervall–Zeitgebers (010)
79
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Anwendungsbeispiel (Monoflop–Modus)
In diesem Beispiel wird 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 auf EIN gesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung der In­terrupt–Unterprogrammnummer 23 aus.
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
00005
MOV (21)
#0004
DM 0010
MOV(21)
#0006
DM 0011
@STIM(69)
000
DM 0010
#0023
SBN (92) 023
RET (93)
Setzt den Sollwert des Abwärtszählers auf 4. (BCD–Wert: 0000 bis 9999)
Setzt das Dekrementierungs–Zeitgeber– Intervall auf 0,6 ms. (BCD–Wert: 0005 bis
0320)
Startet den Intervall–Zeitgeber im Monoflop– Modus.
Spezifiziert das erste Wort, das den Sollwert enthält. Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
Anwendungsbeispiel (zeitgesteuerter Modus)
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
00005
In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005 auf EIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitung der Interrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV (21)
#0010
DM 0011
@STIM(69)
DM 0010
#0023
SBN (92) 023
RET (93)
Setzt den Sollwert des Abwärtszählers auf 4. (BCD–Wert: 0000 bis 9999)
Setzt das Dekrementierungs–Zeitgeber– Intervall auf 1,0 ms. (BCD–Wert: 0005 bis
0320)
003
Startet den Intervall–Zeitgeber im zeitgesteuerten Modus.
Spezifiziert das erste Wort, das den Sollwert enthält. Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
2-3-5 Schnelle Zähler–Interrupt
Die CPM1/CPM1A verfügen über eine Schnelle Zähler–Funktion, die für den In­krementier– oder Aufwärts/Abwärts–Betrieb verwendet werden kann. Der schnelle Zähler kann mit Eingangs–Interrupts kombiniert werden, um eine Be­reichsvergleichs–Steuerung oder Zielwert–Steuerung durchzuführen, die nicht von der Zykluszeit der SPS beeinflußt wird.
Signale des Schnellen Zählers können über die CPU–Eingänge 00000 bis 00002 angelegt werden.
80
CPM1–SPS
Bis zu 8 Sätze oberer Grenzwerte
00000
00001
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
00002
CPM1A–SPS
Modus Verwendung Eingangs–
beschaltung
Aufwärts/ Abwärts
Inkrement– ierung
00000: Eingang Phase A 00001: Eingang Phase B 00002: Eingang Phase Z
00000: Zähleingang 00001: Sehen Sie den Hinweis 00002: Rücksetzeingang
Phasendifferenz, 4 Eingänge
Individuelle Eingänge
Zähl–
N.C.
Zähl–
bereich
bis 32767
bis 65535
24VDC
frequenz
max. 2,5 kHz –32767
max. 5,0 kHz 0
Steuerverfahren
Zielwert–Steuerung: Bis zu 16 Zielwerte und Interrupt– Unterprogrammnummern können gespeichert werden.
Bereichsvergleichs–Steuerung:
, unterer Grenzwerte und Interrupt– Unterprogrammnummern können gespeichert werden.
Einstellungen des Schnellen Zählers
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.
Die folgenden Einstellungen müssen in DM6642 erfolgen, wenn die Schnelle Zähler–Funktion der CPM1/CPM1A verwendet wird.
DM 6642
Bits
00 bis 03 Zählermodus:
0: Aufwärts/Abwärts 4: Inkrementierung
04 bis 07 Gewählte Rücksetzung:
0: Z–Phase + Software– Rücksetzung 1: Software–Rücksetzung
08 bis 15 Verwendung des Zählers:
0: Nicht verwendet 1: Verwendet
Funktion
Inkremen–
tierung
4 0 0 oder 4
0 oder 1 0 oder 1 0 oder 1
01 01 00
Einstellungen
Aufwärts/
Abwärts
Nicht
verwen–
det
81
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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)
Inkrementierung
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
Zählerstand bei 65.535 inkrementiert wird.
Unterlauf --- Tritt ein, wenn der
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.
Die äußerste linke Stelle in SR 248 enthält das Vorzeichen. “F” bedeutet negativ, “0” positiv.
0000 0000 bis 0006 5535 (0 bis 65.535)
Tritt ein, wenn der Zählerstand bei 32.767 inkrementiert wird.
Zählerstand bei –32.767 dekrementiert wird.
0FFF FFFF
FFFF FFFF
Phase A
Phase B
Zählen
Aufwärts/Abwärtsmodus
EIN AUS
EIN AUS
1234567876543210–1–2
Inkrementierung
Dekrementierung
Impuls– eingang
Zählen
EIN
AUS
Inkrementiermodus
1 2 3 4
Nur Inkrementierung
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
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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
1 Zyklus
CPU–Verarbeitung
25200
Phase-Z
Progr– Ausführg
(1) (2) (3) (4) (5)
Nicht zurück­gesetzt
Nicht zurück­gesetzt
Progr– Ausführg
Rücksetzung
Nr. Betriebszeitverhalten Rücksetzung
(1) Z–Phasensignal wird eingeschaltet,
wenn SR 25200 ausgeschaltet wird.
(2) Z–Phasensignal wird innerhalb eines
Zyklus eingeschaltet, nachdem SR 25200 eingeschaltet wird.
(3) Z–Phasensignal wird nach dem Ab-
lauf von mindestens einem Zyklus, nachdem SR 25200 eingeschaltet wurde, aktiviert.
(4) Z–Phasensignal wird innerhalb eines
Zyklus eingeschaltet, nachdem SR 25200 ausgeschaltet wird.
(5) SR25200 wird eingeschaltet, wenn
Z–Phasensignal eingeschaltet ist.
Progr– Ausführg
Progr– Ausführg
Rücksetzung
E/A–Auffrischung
Allgemeine Verarbeitung Kommunikationsservice, usw.
Progr.– Ausführg
Nicht zurückgesetzt
Progr.– Ausführg
Keine Rücksetzung
Keine Rücksetzung
Rücksetzung auf steigender Flanke von Phase–Z.
Rücksetzung auf steigender Flanke von Phase–Z.
Keine Rücksetzung
Hinweis Der SCHNELLER ZÄHLER(0)-RÜCKSETZ-Systemmerker (SR 25200) wird in-
nerhalb eines Abfragezyklus einmal aufgefrischt. Zur eindeutigen Identifizie­rung des Merkerzustands muss dieser daher für mindestens einen Abfragezy­klus gesetzt sein.
”Z” in ”Phase Z” steht für ZERO (Null). Dieses Signal zeigt an, dass der Encoder eine Umdrehung abgeschlossen hat.
Zählen mit der Schnellen Zähler-Interrupt–Funktion
Für einen Interrupt des Schnellen Zählers 0 wird eine mit dem CTBL–Befehl er­stellte Vergleichstabelle verwendet. Die Zähler–Istwertprüfung erfolgt mit Hilfe eines der beiden nachfolgend beschriebenen Verfahren. In der Vergleichsta­belle werden Vergleichsbedingungen (für den Vergleich mit dem Istwert) und Interrupt-Routinen–Nummern gespeichert.
Zähler–Istwert:
83
Maximal 16 Vergleichsbedingungen (Zähler–Istwert und Zählrichtungen) und Interrupt-Unterprogrammnummern werden in der Vergleichstabelle ge­speichert. Entspricht der Zähler-Istwert und die Zählrichtung den Ver­gleichsbedingungen, wird das spezifizierte Interrupt-Unterprogramm aus­geführt.
Bereichsvergleich:
Acht Vergleichsbedingungen (obere und untere Grenzwerte) und Interrupt­Unterprogrammnummern werden in der V ergleichstabelle abgelegt. Ist der Istwert größer oder gleich dem unteren Grenzwert und kleiner oder gleich dem oberen Grenzwert, wird das spezifizierte Interrupt-Unterprogramm ausgeführt.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Zielwertvergleiche
Vorgabewert
Bereichsvergleiche
Zählen
Zielwert
Der Ist–Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, in der die Zielwerte in der Vergleichstabelle gespeichert sind und Interrupts werden generiert, wenn der Zählwert dem Zielwert entspricht. Nachdem der Zählwert allen Zielwerten in der Tabelle entsprochen hat, wird der Zeiger auf den ersten Zielwert in der Tabelle eingestellt; der Vergleich beginnt wiederum mit dem Ist– Zählwert, bis die zwei Werte gleich sind.
Interrupts
12 3 4 5
Vergleichstabelle
Zielwert 1 Zielwert 2 Zielwert 3 Zielwert 4 Zielwert 5
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
Zählwert
13
24
Bereichseinstellung 1 Bereichseinstellung 2 Bereichseinstellung 3 Bereichseinstellung 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 V ergleichsvor­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
Steuerung der Schnellen Zähler-Interrupts
1, 2, 3...
1. Verwenden Sie den CTBL(63)-Befehl, um die Vergleichstabelle in der CPM1/CPM1A zu speichern und um Vergleiche zu starten.
(@)CTBL(63)
Wird C auf 000 gesetzt, erfolgen Vergleiche nach dem Zielübereinstim­mungs-Verfahren. Wird C auf 001 gesetzt, werden Bereiche miteinander verglichen. Die Vergleichstabelle wird gespeichert und die Vergleiche wer­den anschließend vorgenommen. Während der Vergleiche werden schnelle Interrupts, entsprechend der Vergleichstabelle, ausgeführt. Sehen Sie die Beschreibung des CTBL(63)–Befehls in weitere Informationen über den Inhalt der gespeicherten Vergleichstabel­len.
Hinweis Die Vergleichsergebnisse werden während der Bereichsvergleichs–
Ausführung in AR 1100 bis AR 1107 gespeichert.
C: (3-stelliger BCD-Wert)
P
000: Die Zieltwertetabelle wird erstellt und der
C
TB
001: Die Bereichstabelle wird erstellt und der 002: Nur die Zielwertetabelle wird erstellt
003: Nur die Bereichstabelle wird erstellt TB: Anfangswort der Vergleichstabelle
Vergleich gestartet. Vergleich gestartet.
Kapitel 7 Befehlssatz
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
für
Istwerte lesen
Lesen von SR 248 und SR 249
Wird C auf 002 gesetzt, erfolgen V ergleiche nach dem Zielwertübereinstim­mungs-Verfahren. Wird C auf 003 gesetzt, werden Bereiche miteinander verglichen. In beiden Fällen wird die Vergleichstabelle gespeichert, Verglei­che werden jedoch nicht ausgeführt. Hierzu müssen Sie den INI(61)-Befehl verwenden.
2. Um V ergleiche zu beenden, führen Sie den INI(--)-Befehl, wie nachfolgend dargestellt, aus.
(@)INI(61)
000 001 000
Um Vergleiche erneut auszuführen, stellen Sie den zweiten Operanden auf ”000” ein (Ausführung der Vergleichstabelle) und führen Sie den INI(61)-Befehl aus.
Eine gespeicherte Tabelle bleibt während des Betriebs (d.h. während der Programmausführung) in der CPM1/CPM1A bis zur Speicherung einer an­deren Tabelle erhalten.
Zum Lesen der Istwerte stehen zwei Möglichkeiten zur Verfügung. Istwerte kön­nen von SR 248 und SR 249 oder mit dem PRV(62)-Befehl gelesen werden.
Der Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in SR 248 und SR 249 gespeichert. Bei negativen Werten ist die äußerst linke Stelle auf F gesetzt.
Äußerst linke 4 Ziffern
SR 249 SR 248 F0032767 bis 00032767
Äußerst rechte 4 Ziffern
Aufwärts/Abwärts– Zählmodus
(-32767)
Inkrementier– Zählmodus
00000000 bis 00065535
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
Verwendung des PRV(62)-Befehls
Der PRV(62)-Befehl dient zum Lesen des Istwertes des Schnellen Zählers.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Änderung des Istwertes
(@)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 4 Ziffern
P1+1 P1 F0032767 bis 00032767
Äußerst rechte 4 Ziffern
Aufwärts/Abwärts– modus
(-32767)
Inkrementier– modus
00000000 bis 00065535
Der Istwert wird bei der Ausführung des PRV(62)-Befehls gelesen.
Der Istwert des Schnellen Zählers 0 kann auf zwei Arten geändert werden. Die erste besteht in der Rücksetzung mit Hilfe des entsprechenden Rücksetzver­fahrens. (In diesem Fall wird der Istwert auf 0 zurückgesetzt). Die Verwendung des INI(61)-Befehls stellt die zweite Möglichkeit dar.
Die Verwendung des INI(61)-Befehls wird nachfolgend erläutert. Eine Beschrei­bung des Rücksetz-Verfahrens finden Sie am Anfang der Beschreibung des Schnellen Zählers.
Ändern Sie den Zeitgeber-Istwert, wie nachfolgend gezeigt, mit dem INI(61)-Be­fehl.
Anwendungsbeispiel (Inkrementiermodus)
(@)INI(61)
Äußerst linke 4 Ziffern
D+1 D F0032767 bis 00032767 00000000 bis 00065535
Äußerst rechte 4 Ziffern
D: Führendes Wort zur Speicherung der Istwert-Änderungsdaten
000 002
D
Aufwärts/Abwärtsmodus
Inkrementiermodus
Zur Spezifikation einer negativen Zahl setzen Sie die äußerst linke Stelle auf F. Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zäh-
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
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
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 000
DM 0000
SBN (92) 030
RET (93)
SBN (92) 031
RET (93)
Speicher–Vergleichstabelle, Zielwertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 30
Interrupt–Programm 31
Anwendungsbeispiel (Aufwärts/Abwärts–Betrieb)
Hinweis Spezifizieren Sie immer 8 Bereiche. Werden weniger als 8 Bereiche benötigt,
Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zäh­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.
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
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
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
DM 0000
SBN (92) 040
RET (93)
SBN (92) 041
RET (93)
Speicher–Vergleichstabelle, Ziel­wertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 40
Interrupt–Programm 41
2-4 SRM1(–V2) Interrupt–Funktionen
In diesem Abschnitt werden die Einstellungen und Verfahren für die Verwen­dung der SRM1(–V2)–Interrupt–Funktionen beschrieben.
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.
88
(@)STIM(69)
C1: Intervall–Zeitgeber,
C
1
Monoflop–Interrupt–Modus (000)
C
2
C2: Zeitgeber-Sollwert (erste Wortadresse)
C
3
C
: Unterprogrammnummer
3
(4-stelliger BCD-Wert): 0000 bis 0049
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
1, 2, 3...
1. Wird für C2 eine Wortadresse eingegeben: C2: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
+ 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:
C
2
0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms) Nach Ablauf des in Wort C
+ 1 spezifizierten Zeitintervalls dekrementiert
2
der Zähler den Istwert um 1. Beträgt der Istwert 0, wird das spezifizierte Un­terprogramm einmal aufgerufen und der Zeitgeber gestoppt.
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spe– zifizierten Zeit wird folgendermaßen berechnet: (Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) x 0,1 ms = (0,5 bis 319.968
2
ms)
2. Wird für C
eine Konstante spezifiziert:
2
Der Sollwert des Abwärtszählers wird auf den Wert dieser Konstanten ge­setzt und das Dekrementierungs-Zeitintervall beträgt 10 (1 ms).
Zeitgeber-Start im SCHEDULED(zeitgesteuerten) Interrupt–Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber im zeitgesteuerten Interrupt–Modus.
(@)STIM(69)
C1: Intervall–Zeitgeber,
C
1
zeitgesteuerter Interrupt–Modus (003)
C
2
C2: Zeitgeber-Sollwert (erste Wortadresse)
C
3
C
: Unterprogrammnummer (4-stelliger BCD-Wert):
3
0000 bis 0049
1, 2, 3...
1. Wird für C2 eine Wortadresse eingegeben: C2: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
+ 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:
C
2
0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms) Im Monoflop-Interrupt–Modus besitzen die Einstellungen die gleiche Be-
deutung. Im zeitgesteuerten Interrupt–Modus wird der Zeitgeber-Istwert je­doch auf den Sollwert zurückgesetzt und die Dekrementierung beginnt nach dem Aufruf des Unterprogramms. In diesem Modus werden die Inter­rupts in festen Zeitintervallen bis zum Betriebsende wiederholt.
2. Wird für C
eine Konstante spezifiziert:
2
Die Einstellungen sind die gleichen wie für den Monoflop–Modus. Interrupts werden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des Zeitgebers
Entsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit des Zeitgebers.
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C
1
C
: Führendes Wort von Parameter 1
C C
2
2
C
: Parameter 2
3
3
C2: Anzahl der Zähler-Dekrementierungen (4-stelliger BCD-Wert)
+ 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)
C
2
: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelliger
C
3
BCD-Wert; Einheit: 0,1 ms) Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführung
dieses Befehls wird folgendermaßen berechnet: [(Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
2
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
89
Loading...