SYSMAC CPM1(A)/CPM2 /SRM1(-V2) Vorwort In diesem Bedienerhandbuch der SPS...
Transcript of SYSMAC CPM1(A)/CPM2 /SRM1(-V2) Vorwort In diesem Bedienerhandbuch der SPS...
Advanced Industrial Automation
SYSMAC CPM1(A)/CPM2_/SRM1(-V2)Programmierbare Steuerungen
Bedienerhandbuch
Kurzübersicht1 SPS-Konfiguration
159 Erweiterungsbaugruppen
285 Speicherbereiche
337 Befehlssatz
Cat. No. W353-DE1-02
OMRON EUROPE B.V. – Wegalaan 67-69 – 2132 JD Hoofddorp – The Netherlands
phone: + 31 - 23 56 81 300 – fax: + 31 - 23 56 81 388 – www.europe.omron.com
Technische Änderungen vorbehalten.Cat. No. W353-DE1-02
SYSMA
C CPM1(A
)/CPM2_/SR
M1(-V
2)Bedienerhandbuch
Cat. No. W353-DE1-02
Variablen: Vor Druckbeginn bitte entfernen!!!
i
CPM1/CPM1A/CPM2A/CPM2C/SRM1(-V2)Speicherprogrammierbare SteuerungenBedienerhandbuchVersion Januar 2002
ii
E Copyright by OMRON, Langenfeld, Januar 2002
Alle Rechte vorbehalten. Kein Teil dieser Veröffentlichung darf in irgendeinerForm, wie z. B. Druck, Fotokopie oder einem anderen Verfahren, ohne schriftlicheGenehmigung der Firma OMRON, Langenfeld, reproduziert, vervielfältigt oder veröffentlicht werden.
Änderungen vorbehalten.
!
!
!
iii
VorwortIn 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 Einsatzder Programmierkonsole finden Sie in den Technischen Handbüchern derjeweiligen Steuerung. Die Programmiersoftware SYSWIN ist im SYSWIN–Be-dienerhandbuch dargestellt.
Es werden nur die CPM1/CPM1A/CPM2A/SRM1(–V2)–spezifischen Befehleund Anweisungen in diesem Bedienerhandbuch vorgestellt. Für alle anderen OMRON–Steuerungen müssen separate Bedienerhandbücher angefordertwerden.
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 dasVorwort.
– Die eingesetzten Symbole und deren Bedeutungen sind nachfolgend dar-gestellt.
Gefahr Ein Nichtbeachten hat mit hoher Wahrscheinlichkeit den Tod oder schwerePersonenschäden zur Folge.
Achtung Ein Nichtbeachten hat möglicherweise den Tod oder schwerePersonenschä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 mitdem Produkt.
1, 2, 3... 1. Unterteilt Handlungsabläufe in einzelne Schritte, beinhaltet Checklistenusw.
v
Inhalt
KAPITEL 1 – SPS–Konfiguration 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1 SPS–Konfiguration 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-1 Änderung der SPS–Konfiguration 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1-2 CPM1–/CPM1A–SPS–Konfigurationseinstellungen 3 . . . . . . . . . . . . . . 1-1-3 CPM2A–/CPM2C–SPS–Konfigurationseinstellungen 8 . . . . . . . . . . . . . 1-1-4 SRM1(–V2) SPS–Konfigurationseinstellungen 15 . . . . . . . . . . . . . . . . . .
1-2 SPS–Basisoperationen und E/A–Verarbeitungen 19 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-1 Start–Betriebsart 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-2 Systemhaftmerker–Status 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-3 Programmspeicher–Schreibschutz 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-4 RS–232C–Schnittstellen–Servicezeit
(nur CPM2A/CPM2C/SRM1(–V2)) 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-5 Servicezeit der Peripherieschnittstelle 21 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-6 Zyklusüberwachungszeit 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-7 Minimum–Zykluszeit 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-8 Eingangs–Zeitkonstanten 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-9 |Fehlerprotokoll–Einstellungen 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KAPITEL 2 – Besonderheiten 25 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1 CPM2A/CPM2C–Interrupt–Funktionen 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-1-1 Eingangsgesteuerte Interrupts 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1-2 Intervall–Zeitgeber–gesteuerter Interrupt 34 . . . . . . . . . . . . . . . . . . . . . . .
2-2 CPM2A/CPM2C Schneller Zähler 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2-1 Anwendung des Schnellen Zählers 42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2-2 Eingangsgesteuerte Interrupts im Zählmodus 61 . . . . . . . . . . . . . . . . . . . .
2-3 CPM1/CPM1A–Interrupt–Funktionen 71 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-1 Arten von Interrupts 71 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-2 Eingangs–Interrupts 73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-3 Maskierung aller Interrupts 77 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-4 Intervall–Zeitgeber–gesteuerte Interrupts 78 . . . . . . . . . . . . . . . . . . . . . . 2-3-5 Schnelle Zähler–Interrupt 80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-4 SRM1(–V2) Interrupt–Funktionen 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4-1 Interrupt–Funktionen 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4-2 Intervall–Zeitgeber–Interrupts 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-5 CPM2A/CPM2C–Impulsausgabefunktionen 91 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5-1 Einsatz von einphasigen Impulsausgaben ohne Beschleunigung und Bremsung
(festes Tastverhältnis) 95 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5-2 Verwendung der Impulsausgänge mit variablem Tastverhältnis 106 . . . . . . 2-5-3 Impulsausgaben mit trapezförmiger Beschleunigung and Abbremsung 111
2-6 CPM1A–Impulsausgabefunktionen 125 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6-1 Programmbeispiel für die Betriebsart Ununterbrochen 126 . . . . . . . . . . . . 2-6-2 Programmbeispiel in der Betriebsart Unabhängig 126 . . . . . . . . . . . . . . . . 2-6-3 Verwendung der Impuls–Ausgabebefehle 126 . . . . . . . . . . . . . . . . . . . . . . . 2-6-4 Ändern der Frequenz 127 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6-5 Anhalten der Impulsausgabe 127 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-7 Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) 129 . . . . . . . . . . . . . . . . . . . 2-8 Toleranzen 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-8-1 Impulsausgaben 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8-2 Synchronisierte Impulssteuerung 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-9 Analoge E/A–Funktionen (nur CPM1/CPM1A/CPM2A/CPM2C) 142 . . . . . . . . . . . . 2-10 Temperaturfühler–Eingangsfunktionen (nur CPM1A/CPM2A/CPM2C) 142 . . . . . . . 2-11 CompoBus/S–E/A–Slavefunktionen (nur CPM1A/CPM2A/CPM2C) 143 . . . . . . . . . 2-12 CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) 143 . . . . . . . . . . . . . . . . . . 2-13 Einstellschaltungen (nur CPM1/CPM1A/CPM2A) 145 . . . . . . . . . . . . . . . . . . . . . . . . 2-14 Eingänge mit Impulsspeicherung 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-14-1 CPM1/CPM1A–Eingänge mit Impulsspeicherung 147 . . . . . . . . . . . . . . . . 2-14-2 CPM2A/CPM2C–Eingänge mit Impulsspeicherung 148 . . . . . . . . . . . . . . .
2-15 Makrofunktion 151 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Index
vi
2-16 Berechnungen mit vorzeichenbehafteten Binärdaten 153 . . . . . . . . . . . . . . . . . . . . . . . 2-16-1 Definition vorzeichenbehafteter Binärdaten 153 . . . . . . . . . . . . . . . . . . . . . 2-16-2 Arithmetische Merker 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16-3 Eingabe vorzeichenbehafteter Binärdaten unter Verwendung
von Dezimalwerten 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17 Flankenüberwachung 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18 Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) 154 . . . . . . . . . . . . . . . . . . .
2-18-1 Erweiterte Befehle der CPM2A/CPM2C 156 . . . . . . . . . . . . . . . . . . . . . . . 2-18-2 Erweiterte Befehle der SRM1(-V2) 156 . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-19Verwendung der CPM2A/CPM2C–Uhrfunktion 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19-1 Datenbereichs–Worte 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19-2 Einstellung der Zeit 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Index
vii
4-5-16 Sollwert lesen 2 – R$ 269 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-17 Sollwert ändern 1 – W# 270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-18 Sollwert ändern 2 – W$ 271 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-19 Status lesen – MS 272 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-20 Status schreiben – SC 273 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-21 Fehler lesen – MF 274 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-22 Zwangsweises setzen – KS 275 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-23 Zwangsweises rücksetzen – KR 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-24 Mehrfaches zwangsweises setzen/rücksetzen – FK 277 . . . . . . . . . . . . . . . 4-5-25 Zwangsweises Setzen/Rücksetzen aufheben – KC 278 . . . . . . . . . . . . . . . . 4-5-26 SPS–Typ lesen – MM 279 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-27 Test – TS 279 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-28 Programm lesen – RP 280 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-29 Programm speichern – WP 280 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-30 Zusammengefaßte Lesedaten – QQ 281 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-31 Abbruch – XZ 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-32 Initialisieren – :: 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-33 TXD–Antwort – EX 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-34 Nicht definierter Befehl – IC 284 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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
E/A–Erweiterungsbaugruppen 297 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 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
(Flankengesteuerte Ausführung) 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Index
viii
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)
DIFU(13) und DIFD(14) 354 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 SchrittbefehleSTEP 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) –
TMHH(––) 366 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
PRV (62) 376 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
ASR(26) 381 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
SLD(74) 383 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-8 ONE DIGIT SHIFT RIGHT (Verschiebung um eine Stelle nach rechts) –
SRD(75) 384 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-9 REVERSIBLE SHIFT REGISTER (Links/Rechts–Schieberegister) –
SFTR(84) 385 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-10 ASYNCHRONOUS SHIFT REGISTER (Asynchrones Schieberegister) –
ASFT (17) 386 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . .
Index
ix
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
BCD–Wert konvertieren) – SCL2(––) 399 . . . . . . . . . . . . . . . . . . . . . . . . . 7-18-3 BCD TO SIGNED BINARY SCALING (BCD–Wert in vorzeichenbehafteten
Binärwert konvertieren) – SCL3(––) 401 . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
ZCPL(––) 415 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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–
BIN–Doppelwort–Konvertierung) – BINL(58) 418 . . . . . . . . . . . . . . . . . . 7-20-4 DOOUBLE BINARY–TO–DOUBLE BCD (BIN–Doppelwort–zu–
BCD–Doppelwort–Konvertierung) – BCDL(59) 418 . . . . . . . . . . . . . . . . . 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) –
SDEC(78) 423 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20-8 ASCII CONVERT (ASCII–Konvertierung) – ASC(86) 426 . . . . . . . . . . . . 7-20-9 ASCII–TO–HEXADECIMAL (in Hexadezimal–Wort konvertieren) –
HEX(––) 428 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
SUBL(55) 441 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-21-9 DOUBLE BCD MULTIPLY (BCD–Doppelwort–Multiplikation) –
MULL(56) 442 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . . . . . . .
Index
x
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) –
XORW(36) 459 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-24-5 EXCLUSIVE NOR (Wortweise EXKLUSIV–ODER–NICHT–Verknüpfung) –
XNRW(37) 460 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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
Unterprogramm–Ende) – SBN(92)/RET(93) 464 . . . . . . . . . . . . . . . . . . . . 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) –
ACC(––) 470 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-27-4 PULSE WITH VARIABLE DUTY RATIO (Impulsausgabe mit
variablem Tastverhältnis) – PWM(––) 473 . . . . . . . . . . . . . . . . . . . . . . . . . 7-27-5 SYNCHRONIZED PULSE CONTROL (Synchronisierte Impulsausgabe) –
SYNC(––) 475 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
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 . . . . . . . . . . . . . . . . . . . . . . . .
Index
xi
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
KAPITEL 1SPS–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. SehenSie das CX-Programmer–Handbuch(W 02–CXPM1) für die CX-Programmer–Programmiersoftware für alle lieferbarenSPS–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–Programmierungvertraut sind. Des Weiteren würden wir Ihnen empfehlen, die folgenden Kapitel zu lesen: Speicherbereiche, Kontaktplan–Programmierung und Befehle in Befehlssatz.
1-1 SPS–Konfiguration 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1-1 Änderung der SPS–Konfiguration 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1-2 CPM1–/CPM1A–SPS–Konfigurationseinstellungen 3 . . . . . . . . . . . . . . 1-1-3 CPM2A–/CPM2C–SPS–Konfigurationseinstellungen 8 . . . . . . . . . . . . . 1-1-4 SRM1(–V2) SPS–Konfigurationseinstellungen 15 . . . . . . . . . . . . . . . . . .
1-2 SPS–Basisoperationen und E/A–Verarbeitungen 19 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-1 Start–Betriebsart 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-2 Systemhaftmerker–Status 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-3 Programmspeicher–Schreibschutz 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-4 RS–232C–Schnittstellen–Servicezeit
(nur CPM2A/CPM2C/SRM1(–V2)) 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-5 Servicezeit der Peripherieschnittstelle 21 . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-6 Zyklusüberwachungszeit 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-7 Minimum–Zykluszeit 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-8 Eingangs–Zeitkonstanten 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2-9 |Fehlerprotokoll–Einstellungen 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
!
1-1AbschnittSPS–Konfiguration
2
1-1 SPS–KonfigurationBei 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ürallgemeine Betriebsbedingungen eingestellt; die Systeme können daher ohneÄnderung der Einstellungen verwendet werden. Die Vorgabewerte müssen je-doch vor dem Betrieb überprüft werden.
Standardwerte Der Standardwert für die SPS–Konfiguration beträgt 0000 für alle Worte (bis aufden Batteriespannung niedrig–Fehler, dessen Erkennung in DM 6655 Bit 12 bis15 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, werdendie Konfigurationseinstellungen ebenfalls auf Null zurückgesetzt.
1-1-1 Änderung der SPS–KonfigurationDie Änderungen der SPS–Konfigurationseinstellungen sind nur zu bestimmtemZeitpunkten 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–Speicherwirksam.
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 bisDM 6644 (Programm) wirksam werden.
Werden die Bits 00 bis 03 von DM 6602 zum Schutz des Programmspeichersgesetzt, kann der Programmschutz nicht im SPS–Konfigurationsfenster derProgrammier–Software geändert werden. Ändern Sie DM 6602 direkt in der Da-tenansicht mit Hex–Werten.
Die SPS–Konfiguration kann vom Anwenderprogramm zwar gelesen, abernicht überschrieben werden. Dies kann nur mit einem Programmiergerät erfol-gen.
Obwohl die SPS–Konfiguration in den Datenwortbereichen DM 6600 bisDM 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 derPROGRAM-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 überSYSWIN oder den CX–Programmer unter Anwendung von Menüoperationenerfolgen. 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)
Änderungen über einProgrammiergerät
1-1AbschnittSPS–Konfiguration
3
• RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649)
Hinweis Die RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649) werden inder 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–KonfigurationseinstellungenDie 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. Indiesem 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 SPSwirksam.
DM 6600 00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)00: PROGRAM 01: MONITOR 02: RUN
19
08 bis 15 Spezifikation der Start–Betriebsart 00: Programmierkonsolenschalter01: Fortsetzen der vor dem Ausschalten verwendeten Betriebsart (sehen Sie denHinweis 1)02: Einstellung in 00 bis 07
DM 6601 00 bis 07 Nicht verwendet. 20
08 bis 11 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten0: Rücksetzen1: Beibehalten (sehen Sie den Hinweis 3)
12 bis 15 Zwangssetzungsstatus–Systemmerker(SR 25211)–Status beim Einschalten0: Rücksetzen1: Beibehalten (sehen Sie den Hinweis 3)
DM 6602 00 bis 03 Programmspeicher–Schreibschutz0: Programmspeicher ohne Schreibschutz1: Programmspeicher mit Schreibschutz (außer DM 6602)
20
04 bis 07 Programmierkonsolen–Display–Sprache0: Englisch 1: Japanisch
08 bis 15 Nicht verwendet
DM 6603 00 bis 15 Nicht verwendet
DM 6604 00 bis 07 00: Kein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator(AR 1314 EIN) nullspannungssicher gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator(AR 1314 EIN) nullspannungssicher gespeichert werden konnten
08 bis 15 Nicht verwendet
DM 6605 bisDM 6614
00 bis 15 Nicht verwendet
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 15 Nicht verwendet.
1-1AbschnittSPS–Konfiguration
4
Wort(e) SeiteFunktionBit(s)DM 6617 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
21
08 bis 15 Aktivierung der Serviceeinstellung für die Peripherieschnittstelle 00: 5% der Zykluszeit01: Verwendung der in 00 bis 07 eingestellten Zeit
DM 6618 00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetztwerden)00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
21
08 bis 15 Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 smax.)00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert)01: Einheit: 10 ms02: Einheit: 100 ms03: Einheit: 1 s
DM 6619 00 bis 15 Zykluszeit0000: Variable (kein Minimum)0001 bis 9999 (BCD): Mindestzeit in ms
22
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 00 bis 03 Eingangs–Zeitkonstante für IR 00000 bis IR 000020: 8 ms; 1: 1 ms; 2: 2 ms; 3: 4 ms; 4: 8 ms; 5: 16 ms; 6: 32 ms; 7: 64 ms; 8: 128ms
22
04 bis 07 Eingangs–Zeitkonstante für IR 00003 und IR 00004 (Werte wie für Bits 00 bis 03)
08 bis 11 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)
DM 6621 00 bis 07 Eingangs–Zeitkonstante für IR 00100: 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)
DM 6622 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)
DM 6623 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)
DM 6624 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)
DM 6625 00 bis 07 Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001)
08 bis 15 Nicht verwendet
DM 6626 bisDM 6627
00 bis 15 Nicht verwendet
DM 6628 00 bis 03 Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interupt–Eingang; 2:schnelle Ansprechzeit)
73
04 bis 07 Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interupt–Eingang; 2:schnelle Ansprechzeit)
08 bis 11 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)
DM 6629 bisDM 6641
00 bis 15 Nicht verwendet
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 bisDM 6641
00 bis 15 Nicht verwendet.
1-1AbschnittSPS–Konfiguration
5
Wort(e) SeiteFunktionBit(s)DM 6642 00 bis 03 Schnelle Zähler–Betriebsart
0: Aufwärts–/Abwärts–Zählermodus4: Inkremental–Zähler–Betriebsart
80
04 bis 07 Schneller Zähler–Rücksetzbetriebsart0: Z–Phase und Software–Rücksetzung1: Nur Software–Rücksetzung
08 bis 15 Aktivierung des Schnellen Zählers00: Schnellen Zähler nicht verwenden01: Schnellen Zähler mit Einstellungen in 00 bis 07 verwenden
DM 6643, DM 6644
00 bis 15 Nicht verwendet.
Einstellungen der Peripherieschnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 bisDM 6649
00 bis 15 Nicht verwendet. 208
DM 6650 00 bis 07 Schnittstelleneinstellungen00: 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 wirdauf EIN gesetzt)
08 bis 11 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle:0: LR 00 bis LR 15
12 bis 15 Kommunikationsbetriebsart0: 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 wirdauf EIN gesetzt)
DM 6651 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K, 05 bis 07: Kann nicht verwendetwerden (sehen Sie den Hinweis 2)(Andere Einstellungen generieren einen geringfügigen Fehler und AR 1302 wirdeingeschaltet)
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link) (sehen Sie den Hinweis 4)0000 bis 9999: In ms
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
08 bis 15 Nicht verwendet
DM 6654 00 bis 15 Nicht verwendet
1-1AbschnittSPS–Konfiguration
6
Wort(e) SeiteFunktionBit(s)
Fehlerprotokoll–Einstellungen (6655 DM)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6655 00 bis 03 Ausführung0: Verschiebung nach der Speicherung von 7 Aufzeichnungen1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung)2 bis F: Kein Speichern der Aufzeichnungen
24
04 bis 07 Nicht verwendet.
08 bis 11 Aktivierung der Zykluszeitüberwachung0: 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 Ausschaltenverwendeten Betrieb fortzusetzen, erfolgt die Nullspannungssicherungüber den integrierten Kondensator. Die Daten können verlorengehen,wenn die Versorgungsspannung für eine die Sicherungszeit des Kondensa-tors übersteigende Zeit ausgeschaltet bleibt. (Sehen Sie das CPM1A oderCPM1–Programmierhandbuch für eine genauere Beschreibung der Spei-cherzeit.)
2. Stellen Sie keinen Wert zwischen “05” bis “07” ein. Wird dieser Wert einge-stellt, arbeitet die CPM1/CPM1A nicht richtig und der SPS–Konfigurations–Fehlermerker (AR 1302) wird nicht aktiviert.
3. Beibehaltung des E/A–Speicher–Haltemerker(SR 25212)–StatusWird 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 (”DM6601, 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 jedochder 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 ausgeschaltetbleibt. (Sehen Sie das CPM1A– oder CPM1–Programmierhandbuch füreine genauere Beschreibung der Sicherungszeit.) Zu diesem Zeitpunktwird 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.
Host–Computer
SPS
Befehl
Antwort
Befehl
Antwort
Übertragungs–Verzögerungszeit
1-1AbschnittSPS–Konfiguration
7
5. Wird ein außerhalb des Bereiches liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsbedingungen. Setzen Sie in diesem Fallden 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
1-1AbschnittSPS–Konfiguration
8
1-1-3 CPM2A–/CPM2C–SPS–KonfigurationseinstellungenDie SPS–Konfiguration ist in vier Kategorien eingeteilt: 1) Einstellungen fürSPS–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 SPSwirksam.
DM 6600 00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)00: PROGRAMM01: MONITOR02: RUN
19
08 bis 15 Spezifikation der Start–Betriebsart 00: Entsprechend dem Kommunikationsschnittstellen–DIP–Schalter und
Peripherieschnittstellen–Anschluss(sehen Sie die Tabelle unten auf dieser Seite)
01: Fortsetzung der vor dem Ausschalten verwendeten Betriebsart.02: Einstellung in 00 bis 07
DM 6601 00 bis 07 Nicht verwendet. 20
08 bis 11 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
12 bis 15 Zustand des Zwangssetzungsstatus–Haftmerkers (SR 25211) beim Einschalten0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
DM 6602 00 bis 03 Programmspeicher–Schreibschutz0: Programmspeicher ohne Schreibschutz1: Programmspeicher mit Schreibschutz (außer DM 6602)
20
04 bis 07 Programmierkonsolen–Display–Sprache0: Englisch 1: Japanisch
08 bis 11 Codezuweisungen für erweiterte Befehle0: Standardeinstellungen 1: Anwenderzuweisungen
156
12 bis 15 Nicht verwendet
DM 6603 00 bis 15 Nicht verwendet
DM 6604 00 bis 07 00: Kein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensatornullspannungssicher gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensatornullspannungssicher gespeichert werden konnten
08 bis 15 Nicht verwendet
DM6605 bisDM 6614
00 bis 15 Nicht verwendet
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 verb nden
Kommunikationsschnittstellen–DIP–Schalterstelle verbunden
mit Schalter 2 AUS Schalter 2 EIN
Frei Programm RUN
Programmier–konsole
Betriebsart mit demBetriebsartenschalter derProgrammierkonsoleeingestellt
PROGRAM (die CPM2C wirdnicht mit derProgrammierkonsolekommunizieren können.)
AnderesProgrammiergerät
PROGRAM (die CPM2C wirdnicht mit einemProgrammiergerätkommunizieren können.)
PROGRAM
1-1AbschnittSPS–Konfiguration
9
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 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
21
08 bis 15 Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung 00: 5% der Zykluszeit01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
DM 6617 00 bis 07 Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 gesetztsind)00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der Peripherieschnitt-stelle benötigt wird
21
08 bis 15 Aktivierung der Serviceeinstellung für die Peripherieschnittstelle 00: 5% der Zykluszeit01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
DM 6618 00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetztwerden).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.
21
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 ms02: Einstelleinheit: 100 ms03: Einstelleinheit: 1 s
DM 6619 00 bis 15 Kleinste Zykluszeit0000: Variable (keine Mindestzeit)0001 bis 9999 (BCD): Mindestzeit in ms
22
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 00 bis 03 Eingangs–Zeitkonstante für IR 00000 bis IR 000020: 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
22
04 bis 07 Eingangs–Zeitkonstante für IR 00003 und IR 00004 (gleiche Einstellung wie für Bits00 bis 03)
08 bis 11 Eingangs–Zeitkonstante für IR 00005 und IR 00006 (gleiche Einstellung wie für Bits00 bis 03)
12 bis 15 Eingangs–Zeitkonstante für IR 00007 und IR 00011 (gleiche Einstellung wie für Bits00 bis 03)
DM 6621 00 bis 07 Eingangszeit–Konstante für IR 00100: 10 ms 01: 1 ms 02: 2 ms 03: 3 ms 04: 5 ms05: 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)
DM 6622 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)
DM 6623 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)
DM 6624 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)
DM 6625 00 bis 07 Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001)
08 bis 15 Nicht verwendet
DM 6626 bisDM 6627
00 bis 15 Nicht verwendet
1-1AbschnittSPS–Konfiguration
10
Wort(e) SeiteFunktionBit(s)DM 6628 00 bis 03 Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)27
04 bis 07 Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:schnelle Ansprechzeit)
08 bis 11 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)
DM 6629 00 bis 03 Istwert–Koordinatensystem für Impulsausgabe 00: Relative Koordinaten; 1: Absolute Koordinaten
95
04 bis 07 Istwert–Koordinatensystem für Impulsausgabe 10: Relative Koordinaten; 1: Absolute Koordinaten
08 bis 15 Nicht verwendet
DM6630 bisDM6641
00 bis 15 Nicht verwendet
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 bisDM 6641
00 bis 15 Nicht verwendet
DM 6642 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)
42, 50
04 bis 07 Schneller Zähler–Rücksetzbetriebsart0: 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 verwenden01: Als Schneller Zähler verwenden02: 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)
DM 6643,DM 6644
00 bis 15 Nicht verwendet.
1-1AbschnittSPS–Konfiguration
11
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 dieRS–232C–Schnittstelle der CPM2A durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM6645 bis DM 6649, bestimmt.
Ist Schalter 1 des DIP–Schalters der CPM2C CPU–Baugruppe eingeschaltet, wird die Kommunikation über dieRS–232C–Schnittstelle der CPM2C durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM6645 bis DM 6649, bestimmt.
DM 6645 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 wirdauf EIN gesetzt)
208
04 bis 07 CTS–Handshake–Einstellungen0: CTS–Handshake deaktiviert; 1: CTS–Handshake aktiviert
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
08 bis 11 Link–Worte für 1:1 Data–Link0: LR 00 bis LR 15 (andere Einstellungen sind unwirksam)
12 bis 15 Kommunikationsmodus0: 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 wirdauf EIN gesetzt)
DM 6646 00 bis 07 Baudrate00: 1.200 b/sek.; 01: 2.400 b/sek.; 02: 4.800 b/sek.; 03: 9.600 b/sek.; 04: 19.200b/sek.
208
08 bis 15 RahmenformatStartbit Datenbits Startbits Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Keine03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Keine06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Keine09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 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ügigenFehler und aktivieren AR 1302.)
DM 6647 00 bis 15 Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis99.990 ms. ein)
(Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursacheneinen geringfügigen Fehler und aktivieren AR 1302.)
208
1-1AbschnittSPS–Konfiguration
12
Wort(e) SeiteFunktionBit(s)DM 6648 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)
208
08 bis 11 Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll0: Deaktiviert den Startcode1: Aktiviert den Startcode in 6649 DM
(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 Protokoll0: Deaktiviert den Endcode1: Aktiviert den Endcode in 6649 DM2: Setzt den Endcode auf CR, LF
(Alle anderen Einstellungen deaktivieren den Endcode, verursachen einen gering-fügigen Fehler und aktivieren AR 1302)
DM 6649 00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 11 von DM 6648 auf 1 einge-stellt werden.)
208
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 bis255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6648 auf 1 gesetzt:Spezifiziert den Ende–Code (00 bis FF)
1-1AbschnittSPS–Konfiguration
13
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 bisDM 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 dieKommunikation ü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 dieKommunikation von den Standard–Host–Link–Einstellungen bestimmt (1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits,9.600 b/sek.).
DM 6650 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.)
208
04 bis 11 Nicht verwendet.
12 bis 15 Kommunikationsbetriebsart0: Host–Link oder Toolbus1: Ohne Protokoll
(Alle anderen Einstellungen spezifizieren die Host–Link–Einstellung, verursacheneinen geringfügigen Fehler und aktivieren AR 1302.)
DM 6651 00 bis 07 Baudrate00: 1.200 b/sek.; 01: 2.400 b/sek.; 02: 4.800 b/sek.; 03: 9.600 b/sek.; 04: 19.200Baud
08 bis 15 RahmenformatStartbit Datenbits Startbits Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Keine03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Keine06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Keine09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 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ügigenFehler und aktivieren AR 1302.)
1-1AbschnittSPS–Konfiguration
14
Wort(e) SeiteFunktionBit(s)
DM 6652 00 bis 15 Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis99.990 ms. ein)
(Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursacheneinen geringfügigen Fehler und aktivieren AR 1302)
208
DM 6653 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 11 Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll0: Deaktiviert den Startcode1: 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 Protokoll0: Deaktiviert den Endcode1: 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)
DM 6654 00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 11 von DM 6653 auf 1 einge-stellt werden)
208
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 bis255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt:Spezifiziert den Ende–Code (00 bis FF)
Fehlerprotokoll–Einstellungen (DM 6655)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6655 00 bis 03 Ausführung0: Verschiebung nach der Speicherung von 7 Aufzeichnungen1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung)2 bis F: Kein Speichern der Aufzeichnungen
24
04 bis 07 Nicht verwendet
08 bis 11 Aktivierung der Zyklusüberwachungszeit0: Generiert einen geringfügigen Fehler für eine zu lange Zykluszeit1: Generiert keinen geringfügigen Fehler
12 bis 15 Aktivierung der Fehlergenerierung für eine zu niedrige Batteriespannung0: Generiert einen geringfügigen Fehler1: 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
15
1-1-4 SRM1(–V2) SPS–KonfigurationseinstellungenDie SPS–Konfiguration wird in drei Kategorien eingeteilt: 1) Einstellungen in be-zug auf SPS–Basisbetrieb und E/A–Verarbeitungen, 2) Einstellungen bezüglichder 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 derSRM1(-V2)–Serie in numerischer Reihenfolge. Weitere Informationen findenSie 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 SPSwirksam.
DM 6600 00 bis 07 Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)00: PROGRAMM 01: MONITOR 02: RUN
19
08 bis 15 Spezifikation der Start–Betriebsart 00: Programmierkonsolenschalter01: Fortsetzung der vorherigen Betriebsart 02: Einstellung in 00 bis 07
DM 6601 00 bis 07 Nicht verwendet 20
08 bis 11 E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten0: Rücksetzen1: Aufrechterhalten (sehen Sie “Vorsicht” auf Seite 20.)
12 bis 15 Zwangssetzungsstatus–Haftmerker(SR 25211)–Status beim Einschalten0: Rücksetzen1: Status nicht ändern
DM 6602 00 bis 03 Programmspeicher–Schreibschutz0: Programmspeicher ohne Schreibschutz1: Programmspeicher mit Schreibschutz (außer DM 6602)
20
04 bis 07 Programmierkonsolen–Display–Sprache0: Englisch 1: Japanisch
08 bis 11 Erweiterte Befehle0: Grundeinstellungen 1: Anwendereinstellungen
12 bis 15 Nicht verwendet.
DM 6603 00 bis 03 Maximale Anzahl der CompoBus/S–Geräte0: Max. Anzahl 321: Max. Anzahl 16
04 bis 07 CompoBus/S–Kommunikationsmodus–Einstellung (nur –V2)0: Hochgeschwindigkeits–Kommunikation1: Long–Distance–Kommunikation
08 bis 15 Nicht verwendet
DM 6604 00 bis 07 00: Kein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungs-spannungsausfalls (AR 1314 EIN) gespeichert werden konnten01: Ein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungsspan-nungsausfalls (AR 1314 EIN) gespeichert werden konnten
08 bis 15 Nicht verwendet
DM6605 bisDM 6614
00 bis 15 Nicht verwendet
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 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
21
08 bis 15 Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung 00: 5% der Zykluszeit01: Verwendung der in 00 bis 07 eingestellten Zeit.
1-1AbschnittSPS–Konfiguration
16
Wort(e) SeiteFunktionBit(s)DM 6617 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
21
08 bis 15 Aktivierung der Peripherieschnittstellen–Serviceeinstellung00: 5% der Zykluszeit01: Verwendung der in 00 bis 07 eingestellten Zeit
DM 6618 00 bis 07 Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetztwerden)00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
21
08 bis 15 Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 smax.)00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert)01: Einheit: 10 ms02: Einheit: 100 ms03: Einheit: 1 s
DM 6619 00 bis 15 Zykluszeit0000: Variable (keine Mindestzeit)0001 bis 9999 (BCD): Mindestzeit in ms
22
DM 6620 bisDM 6644
00 bis 15 Nicht verwendet.
RS–232C–Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 00 bis 03 Schnittstelleneinstellungen00: Standard (1 Startbit, 7–Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
248
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert 1: Aktiviert
08 bis 11 Bei Einsatz einer 1:1 Data–Link–Verbindung: Stellt den Schnittstellenbereich auf1:1–PC–Link ein
0: LR 00 bis LR 15Ungleich 0: Deaktiviert
Bei Einsatz einer 1:n–NT–Link–Verbindung: Spezifiziert die höchste Bedien–Termi-nal–Teilnehmernummer
1 bis 7
12 bis 15 Kommunikationsbetriebsart0: 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
17
Wort(e) SeiteFunktionBit(s)DM 6646 00 bis 07 Baudrate
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Keine03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Keine06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Keine09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits KeineAndere: 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.
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von0001 gleich 10 ms
DM 6648 00 bis 07 Teilnehmernummer (Host–Link, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 0gesetzt werden)00 bis 31 (BCD)
08 bis 11 Startcode–Auswahl (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM6645 auf 1 gesetzt werden)0: Deaktiviert1: Einstellung
12 bis 15 Endcode–Auswahl (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM6645 auf 1 gesetzt werden).0: Deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung (spezifizierter Endcode)2: CR, LF
DM 6649 00 bis 07 Startcode–Auswahl (RS–232C–Schnittstelle)00 bis FF (binär)
248
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
18
Wort(e) SeiteFunktionBit(s)
Einstellungen der Peripherieschnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam
DM 6650 00 bis 03 Schnittstelleneinstellungen00: 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 wirdauf EIN gesetzt)
248
04 bis 07 Nicht verwendet
08 bis 11 Nicht verwendet
12 bis 15 Kommunikationsbetriebsart0: Host–Link; 1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
DM 6651 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2K
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Keine03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Keine06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Keine09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits KeineAndere: 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
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
248
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wirdauf EIN gesetzt)
08 bis 11 Startcode aktiviert (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM6650 auf 1 gesetzt werden)0: Deaktiviert1: Einstellung aktiviert
12 bis 15 Endecode aktiviert (RS–232C–Schnittstelle, wirksam, wenn Bits 12 bis 15 von DM6650 auf 1 gesetzt werden).0: Deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung (spezifizierter Endecode)2: CR, LF
DM 6654 00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn Bits 08 bis 11 von DM 6653 auf 1 eingestelltwerden).
248
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 bis255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt:Spezifiziert den Ende–Code (00 bis FF)
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
19
Wort(e) SeiteFunktionBit(s)
Fehlerprotokoll–Einstellungen (6655 DM)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6655 00 bis 03 Ausführung0: Verschiebung nach der Speicherung von 7 Aufzeichnungen1: Speichern der ersten 7 Aufzeichnungen
Fehler werden nicht gespeichert, wenn andere Werte eingestellt sind
24
04 bis 07 Nicht verwendet.
08 bis 11 Aktivierung der Zykluszeit–Überwachung0: Auswertung langer Abfragezyklen als geringfügige Fehler 1: Lange Abfragezyklen werden nicht erkannt
12 bis 15 Aktivierung der Fehlergenerierung bei zu niedriger Batteriespannung0: Generiert einen geringfügigen Fehler bei einer niedrigen Batteriespannung1: Generiert keinen geringfügigen Fehler
Hinweis Wird ein außerhalb des Bereiches liegender Wert eingestellt, so ergeben sichdie folgenden Kommunikationsbedingungen. Setzen Sie in diesem Fall denWert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsbetriebsart: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits, 9.600 Baud
Übertragungsverzögerungszeit: keine
Teilnehmernummer: 00
1-2 SPS–Basisoperationen und E/A–VerarbeitungenIn diesem Abschnitt werden die Konfigurationseinstellungen für den SPS-Stan-dardbetrieb und die E/A-Verarbeitung erläutert.
1-2-1 Start–BetriebsartDie nach dem Einschalten der SPS aktivierte Betriebsart wird, wie nachfolgenddargestellt, eingestellt.
15Bit
DM 6600
0
Start-Betriebsart00: Betriebsarten-Wahlschalter der Programmierkonsole (falls keine Programmierkonsole angeschlossen ist: RUN-Betriebsart01: Betriebsart, die vor dem Ausschalten der SPS aktiviert war02: 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–Betriebsart01: MONITOR–Betriebsart02: 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 derRUN–Betriebsart automatisch, wenn keine Programmierkonsole oder keinCIF–Konverter angeschlossen ist.
!
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
20
1-2-2 Systemhaftmerker–StatusDie folgenden Einstellungen spezifizieren, ob der Zwangssetzungsstatus-Haft-merker (SR 25211) und/oder der E/A–Speicher–Haltemerker (SR 25212) beimEinschalten der SPS den Zustand beibehalten, der beim letzten Ausschaltender SPS gültig war oder ob der vorhergehende Zustand zurückgesetzt wird.
15 0
0 0Bit
DM 6601
Einstellung des Systemmerkers SR 252110: Rücksetzung des Zustands1: Aufrechterhaltung des Zustands
Immer 00
Einstellung des Systemmerkers SR 252120: Rücksetzung des Zustands1: Aufrechterhaltung des Zustands
Vorgabe: Beide Systemmerker zurückgesetzt.
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-Betriebsbeibehalten 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. Wirddie 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 geladenwird, bevor die Stromversorgung ausgeschaltet wird. Der Kondensator istvoll aufgeladen, wenn die Stromversorgung der CPU–Baugruppe minde-stens 15 Minuten lang eingeschaltet war.
1-2-3 Programmspeicher–SchreibschutzIn den SPS–Systemen der Serien CPM1, CPM1A, CPM2A und CPM2C kannder Programmspeicher geschützt werden, indem die Bits 00 bis 03 vonDM 6602 auf 1 gesetzt werden. Bits 04 bis 07 bestimmen, ob die Programmier-konsolen–Meldungen auf Englisch oder Japanisch angezeigt werden sollen.
15 0
0 0Bit
DM 6602
Programmierkonsolen–Meldungen0: Englisch1: Japanisch
Programmspeicher0: Nicht schreibgeschützt1: Schreibgeschützt
Vorgabe: Anzeige in Englisch, nicht schreibgeschützt
Immer 00
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
21
Hinweis DM 6602 selbst kann noch geändert werden, nachdem der Programmspeicherdurch Setzen der Bits 00 bis 03 von DM 6602 auf 1, mit Schreibschutz versehenwurde.
1-2-4 RS–232C–Schnittstellen–Servicezeit (nurCPM2A/CPM2C/SRM1(–V2))
Die folgenden Einstellungen spezifizieren den prozentualen Anteil der Zyklus-zeit für den Service der RS–232C–Schnittstelle.
15 0Bit
Aktivierung der Servicezeit-Einstellung00: 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
DM 6616
Beispiel :Wird DM 6616 auf 0110 gesetzt, wird 10% der Zykluszeit für den Service derRS-232C-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
1-2-5 Servicezeit der PeripherieschnittstelleDie folgenden Einstellungen spezifizieren den prozentualen Anteil der Zyklus-zeit für den Service der Peripherieschnittstelle.
15 0Bit
Aktivierung der Servicezeit-Einstellung00: 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
DM 6617
Beispiel:Wird DM 6617 auf 0115 gesetzt, wird 15% der Zykluszeit für den Service der Pe-ripherie-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
1-2-6 Zyklusüberwachungszeit
15 0
DM 6618
Bit
Zykluszeitüberwachung00: Einstellung deaktiviert (Zeit auf 120 ms fest eingestellt)01: Einstellung in 00 bis 07 aktiviert; Einheit: 10 ms02: Einstellung in 00 bis 07 aktiviert; Einheit: 100 ms03: 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.
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
22
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) gespeichertenMaximal– 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 msBits 08 bis 15 auf 02 gesetzt: 1 msBits 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 maximalenund aktuellen Zykluszeiten werden in den AR–Bereichen gespeichert.
BeispielWird 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 derAR–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 dieZykluszeit 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–ZykluszeitDie folgenden Einstellungen dienen zur Spezifikation der Standard-Zykluszeitund verhindern Schwankungen der E/A-Ansprechzeit durch Einstellung der mi-nimalen Zykluszeit.
15 0Bit
DM 6619
Zykluszeit (BCD, vierstellig)0000: Variable Zykluszeit0001 bis 9999: Minimale Zykluszeit
(Einheit: 1 ms)
Vorgabe: Variable 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ängerals die minimale Zykluszeit, wird der Betrieb entsprechend der tatsächlichen Zy-kluszeit fortgesetzt. Bei Überschreitung der minimalen Zykluszeit wird AR 1305gesetzt.
1-2-8 Eingangs–ZeitkonstantenDie folgenden Einstellungen spezifizieren die Zeit, in der die tatsächlichen Ein-gänge der DC-Eingangsbaugruppe auf AUS oder EIN gesetzt werden bis zurAuffrischung der entsprechenden Eingangsbits (d.h. bis zur Änderung des EIN/AUS-Zustandes). Diese Einstellungen dienen zur Spezifikation der Zeit, in derdie Eingänge stabilisiert werden.
Das Vergrößern der Eingangs–Zeitkonstante kann die Wirkungen von prellen-den und externen Störungen reduzieren.
Eingang von einem Ein-gangsgerät wie z.B. Be-grenzungsschalter
Eingangsbit–Status
Eingangs–Zeitkonstantet t
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
23
Die SRM1(–V2) verfügt nicht über diese Einstellung.
CPM1/CPM1A SPS Stellen Sie die Eingangs–Zeitkonstanten für die CPM1/CPM1A–Eingänge überein Programmiergerät ein.
Eingangs–Zeitkonstanten für IR 000
15 0Bit
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)
DM 6620
Eingangs–Zeitkonstanten für IR 001 bis IR 009
15 0BitDM 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 008Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (8 ms für alle)
DM6621 bis DM6625
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ürIR 000 ein.)
00: 8 ms 01: 1 ms 02: 2 ms 03: 4 ms 04: 8 ms05: 16 ms 06: 32 ms 07: 64 ms 08: 128 ms
Die E/A–Ansprechzeit der CPM1/CPM1A ist die Eingangs–Zeitkonstante (1 msbis 128 ms; Vorgabe ist 8 ms) + Zykluszeit.
Sehen Sie Abschnitt 81 CPM1/CPM1A−Zykluszeit und E/A−Ansprechzeit fürweitere 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
15 0Bit
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)
DM 6620
Eingangs–Zeitkonstanten für IR 001 bis IR 009
15 0BitDM 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 008Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (10 ms für alle)
DM6621 bis DM6625
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
24
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 ms05: 10 ms 06: 20 ms 07: 40 ms 08: 80 ms
1-2-9 |Fehlerprotokoll–EinstellungenFehlererkennung 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 Auftretenvon Fehlern spezifiziert.
Erkennung einer niedrigen Batteriespannung
0: Erkennung1: Keine Erkennung
15 0
DM 6655 0Bit
immer 0
Erkennung einer Zykluszeit-Überschreitung
0: Erkennung1: 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.
Zu geringe Batteriespannungen und Zykluszeit-Überschreitungen werden als”geringfügige” Fehler eingestuft.
Sehen Sie Kapitel 9 Fehlersuche für weitere Informationen über das Fehlerprotokoll.
Hinweis Der Batteriespannung niedrig–Fehler wird nur in der CPM2A/CPM2C generiert.Diese Ziffer wird nicht in den SPS–Systemen CPM1/CPM1A/SRM1(–V2) undCPM2C verwendet, die nicht mit einer Batterie ausgestattet sind.
25
KAPITEL 2Besonderheiten
Dieser Abschnitt beschreibt Besonderheiten der CPM1, CPM1A, CPM2A, CPM2C und SRM1 (V2).
2-1 CPM2A/CPM2C–Interrupt–Funktionen 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1-1 Eingangsgesteuerte Interrupts 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1-2 Intervall–Zeitgeber–gesteuerter Interrupt 34 . . . . . . . . . . . . . . . . . . . . . . .
2-2 CPM2A/CPM2C Schneller Zähler 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2-1 Anwendung des Schnellen Zählers 42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2-2 Eingangsgesteuerte Interrupts im Zählmodus 61 . . . . . . . . . . . . . . . . . . . .
2-3 CPM1/CPM1A–Interrupt–Funktionen 71 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-1 Arten von Interrupts 71 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-2 Eingangs–Interrupts 73 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-3 Maskierung aller Interrupts 77 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3-4 Intervall–Zeitgeber–gesteuerte Interrupts 78 . . . . . . . . . . . . . . . . . . . . . . 2-3-5 Schnelle Zähler–Interrupt 80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-4 SRM1(–V2) Interrupt–Funktionen 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4-1 Interrupt–Funktionen 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4-2 Intervall–Zeitgeber–Interrupts 88 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-5 CPM2A/CPM2C–Impulsausgabefunktionen 91 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5-1 Einsatz von einphasigen Impulsausgaben ohne Beschleunigung und Bremsung
(festes Tastverhältnis) 95 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5-2 Verwendung der Impulsausgänge mit variablem Tastverhältnis 106 . . . . . . 2-5-3 Impulsausgaben mit trapezförmiger Beschleunigung and Abbremsung 111
2-6 CPM1A–Impulsausgabefunktionen 125 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6-1 Programmbeispiel für die Betriebsart Ununterbrochen 126 . . . . . . . . . . . . 2-6-2 Programmbeispiel in der Betriebsart Unabhängig 126 . . . . . . . . . . . . . . . . 2-6-3 Verwendung der Impuls–Ausgabebefehle 126 . . . . . . . . . . . . . . . . . . . . . . . 2-6-4 Ändern der Frequenz 127 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6-5 Anhalten der Impulsausgabe 127 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-7 Synchronisierte Impulssteuerung (nur CPM2A/CPM2C) 129 . . . . . . . . . . . . . . . . . . . 2-8 Toleranzen 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-8-1 Impulsausgaben 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8-2 Synchronisierte Impulssteuerung 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-9 Analoge E/A–Funktionen (nur CPM1/CPM1A/CPM2A/CPM2C) 142 . . . . . . . . . . . . 2-10 Temperaturfühler–Eingangsfunktionen (nur CPM1A/CPM2A/CPM2C) 142 . . . . . . . 2-11 CompoBus/S–E/A–Slavefunktionen (nur CPM1A/CPM2A/CPM2C) 143 . . . . . . . . . 2-12 CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2)) 143 . . . . . . . . . . . . . . . . . . 2-13 Einstellschaltungen (nur CPM1/CPM1A/CPM2A) 145 . . . . . . . . . . . . . . . . . . . . . . . . 2-14 Eingänge mit Impulsspeicherung 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-14-1 CPM1/CPM1A–Eingänge mit Impulsspeicherung 147 . . . . . . . . . . . . . . . . 2-14-2 CPM2A/CPM2C–Eingänge mit Impulsspeicherung 148 . . . . . . . . . . . . . . .
2-15 Makrofunktion 151 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16 Berechnungen mit vorzeichenbehafteten Binärdaten 153 . . . . . . . . . . . . . . . . . . . . . . .
2-16-1 Definition vorzeichenbehafteter Binärdaten 153 . . . . . . . . . . . . . . . . . . . . . 2-16-2 Arithmetische Merker 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16-3 Eingabe vorzeichenbehafteter Binärdaten unter Verwendung
von Dezimalwerten 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17 Flankenüberwachung 154 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18 Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) ) 154 . . . . . . . . . . . . . . . . . . .
2-18-1 Erweiterte Befehle der CPM2A/CPM2C 156 . . . . . . . . . . . . . . . . . . . . . . . 2-18-2 Erweiterte Befehle der SRM1(-V2) 156 . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-19Verwendung der CPM2A/CPM2C–Uhrfunktion 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19-1 Datenbereichs–Worte 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19-2 Einstellung der Zeit 158 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
26
2-1 CPM2A/CPM2C–Interrupt–FunktionenDie 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ängenkann 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 InterruptsInterrupt–Programme werden ausgeführt, wenn CPU–Baugruppen–integrierteEingä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 InterruptsInterrupt–Programme der Intervall–Zeitgeber werden mit einer Genauigkeit von0,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 (00003bis 00006*) werden mit großer Geschwindigkeit (2 kHz) gezählt; das normaleProgramm wird unterbrochen und ein Interrupt–Programm ausgeführt. Inter-rupt–Unterprogrammnummern 000 bis 003* sind den Eingängen 00003 bis00006* zugeordnet.
Zählsollwert erreicht–gesteuerte Interrupts unter Anwendung des schnel-len ZählersAn die Eingängen der CPU–Baugruppe (00000 bis 00002) angelegte Impulsewerden 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–Unterprogrammnummern000 bis 049 werden über Befehle zugewiesen.
Interrupt–Programme werden als Interrupt–Unterprogramme innerhalb des An-wenderprogramms programmiert. Wie bei normalen Unterprogrammen wirdauch ein Interrupt–Unterprogramm durch SBN(92) und RET(93) definiert. Eswird an das Ende des normalen Programms platziert.
NormalesProgramm
Interrupt–Programm
Unterprogramm
1, 2, 3... 1. Ein neuer Interrupt kann in einem Interrupt–Unterprogramm festgelegt undein vorhandener gelöscht werden.
Arten von Interrupts
Schreiben vonInterrupt–Programmen
!
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
27
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 zwischenden 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)–Befehlenkann kein Unterprogramm verschachtelt werden.
4. Es ist nicht möglich, ein Interrupt–Unterprogramm innerhalb eines norma-len Unterprogramms zu schreiben. Ein Interrupt–Unterprogramm kannnicht 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)”–Fehlergeneriert, 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.
Die Reihenfolge der Interrupt–Prioritäten ist wie folgt:
Eingangsgesteuerte Interrupts
Auf–/Abwärtszählungs–gesteuerte Interrupts
Intervall–Zeitgeber–gesteuerte Interrupts
Schnelle Zähler–Zählwertvergleichs–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 Verarbeitung desursprü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ßlichAuf–/Abwärtszähl–Modus)
Intervall–Zeitgeber–Interrupt → Schneller Zähler–Interrupt
2-1-1 Eingangsgesteuerte InterruptsDurch Umschalten der in der CPU–Baugruppen–integrierten Eingänge vonAUS 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*).
Reihenfolge derPrioritäten der Interrupts
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
28
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vor-handen.
NormalesProgramm
Interrupt–Signal
Interrupt–Programm Unter–
programm
Eingangs–nummer
(Hinweis 1)
Interrupt–Nummer
Unter–programm–
nummer(Hinweis 2)
Mindest–Eingangs–signalbreite
Interrupt–Ansprechzeit
00003 0 000 50 µs 0,3 ms (vomZeitpunkt des
00004 1 001Zeitpunkt desEinschaltens des
00005 2 002Einschaltens desEingangs bis zurProgramm
00006 3 003Programm–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ängenicht für einen der zuvor beschriebenen Zwecke verwendet, können sie alsgewöhnliche Eingänge eingesetzt werden.
2. Unterprogrammnummern 000 bis 003 sind die Nummern der Interrupt–Pro-gramme, die gestartet werden, wenn eingangsgesteuerte Interrupts oderAuf–/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 undanderen Funktionen der SPS der CPM2A/CPM2C–Serie.
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-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
29
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 inder SPS–Konfiguration gespeichert.
Verwendung der Interrupt–Eingänge
Verdrahtung der Eingänge.
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan–Programms.
Eingang: 00003 bis 00006
Definition als Interrupt–Eingänge (eingangsge-steuerte Interrupts–oder Zählmodus).
INT(89): Maskierung und Demaskierung vonInterrupts.
SBN(92) und RET(93): Erstellung von Inter-rupt–Unterprogrammen.
Eingänge
E–gest. Interrupt0 Interrupt wirdgeneriert.
Kontaktplan–Programmierung Spezifiziertes Unterprogramm wird ausgeführt.
INT(89)–Befehl
Interrupt–Signal–Freigabe
E–gest. Interrupt 1
E–gest. Interrupt 2
E–gest. Interrupt3
SPS–Konfigur.
DM 6628
(92)
(93)
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In-terrupt–Eingängen fest zugeordnet.
Eingang Interrupt–Nummer
Unterprogramm–nummer
00003 0 000
00004 1 001
00005 2 002
00006 3 003
Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funktio-nen konfiguriert werden: als Interrupt–Eingang, als Interrupt–Eingang (Zählmo-dus) oder als Eingang mit Impulsspeicherung.
Zuordnung der Interrupt–Unterprogramme
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
30
Verdrahten Sie, bei einer CPM2A, die Eingangsklemmen wie in der folgendenAbbildung gezeigt.
Eingang 00003Eingang 00004Eingang 00005Eingang 00006
Verdrahten Sie die Eingänge einer CPM2C, wie in der folgenden Abbildung ge-zeigt.
00004
00003
Eing.–klemmen E–Steckverbind.
00004
00005
00003
00006
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 bis03
Einstellung fürEingang 00003
0: Normaler Eingang
1: Interrupt–Eingänge
1
04 bis07
Einstellung fürEingang 00004
1: Interru t–Eingänge(EingangsgesteuerterInterrupt– oder Zählmodus)
08 bis11
Einstellung fürEingang 00005
)
2: Schneller Eingang mitImpulsspeicherung
12 bis15
Einstellung fürEingang 00006
g
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vor-handen.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPM2A/CPM2C eingeschaltet wird.
Verdrahtung derEingänge
SPS–Konfiguration
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
31
Die folgende Tabelle zeigt die sich auf Interrupts beziehenden Befehlsfunktio-nen.
Befehl Steuerung Betrieb
(@)INT(89) Maskierung/Demaskie-rung der eingangsge-steuerte Interrupts.
Sperrt oder gibt spezifizierte Interruptsfrei.
Eingangsgesteuerte In-terrupts löschen
Löscht einen maskierten (gesperrten) ein-gangsgesteuerten Interrupt.
Liest den gegenwärtigenMaskenstatus
Liest den Freigabe/Gesperrt–Status eineseingangsgesteuerten Interrupts.
Maskierung aller Inter-rupts
Sperrt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeit-geber–gesteuerte Interrupts, zählerge-steuerte Interrupts, usw.
Demaskierung aller Interrupts
Gibt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeit-geber–gesteuerte Interrupts, zählerge-steuerte Interrupts, usw. frei.
Maskierung oder Demaskierung von InterruptsDiese Funktion wird dazu verwendet, um die den Eingängen 00003 bis 00006zugeordneten Interrupts 0 bis 3 zu maskieren oder zu demaskieren.
Interrupt–Steuercode (000: Maskierung/Demaskierung der Interrupts)
Fest auf 000 (keine Funktion)
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)
(@)INT(89)
000
000
C2
Alle eingangsgesteuerten Interrupts sind am Anfang des Betriebs gesperrt (inentweder 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 InterruptsDiese Funktion wird dazu verwendet, die gespeicherten Zustände der Eingänge00003 bis 00006 zu löschen (eingangsgesteuerte Interrupts 0 bis 3). Da ein-gangsgesteuerte Interrupts gespeichert werden, werden maskierte Interruptserst 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).
Kontaktplan–Programmierung
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
32
Interrupt–Steuercode (001: Interrupt löschen)
Fest auf 000 (keine Funktion)
Steuerdaten–Wort
Spezifiziert 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: Interrupt beibehalten
1: Interrupt löschen
(@)INT(89)
001
000
C2
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 MaskenstatusDiese Funktion wird dazu verwendet, den gegenwärtigen Maskenstatus für dieEingänge 00003 bis 00006 (eingangsgesteuerte Interrupts 0 bis 3) zu lesen.
Interrupt–Steuercode (002: Lesen des gegenwärtigen Maskenstatus)
Fest auf 000 (keine Funktion)Steuerdaten–Wort
0 spezifizieren
0: Maske ist gelöscht (Interrupt freigegeben).
1: Maske ist definiert (Interrupt gesperrt).
(@)INT(89)
002
000
C2
Spezifiziert eingangsgesteuerten Interrupt 3 (Eingang 00006)
Spezifiziert eingangsgesteuerten Interrupt 2 (Eingang 00005)
Spezifiziert eingangsgesteuerten Interrupt 1 (Eingang 00004)
Spezifiziert eingangsgesteuerten Interrupt 0 (Eingang 00003)
Maskierung oder Demaskierung aller InterruptsDiese Funktion wird zur Maskierung/Demaskierung aller Interrupt–Verarbeitun-gen (eingangsgesteuerte Interrupts (auch im Zählmodus), Intervall–Zeitgeber–gesteuerte Interrupts und zählergesteuerte Interrupts) verwendet. Maskierteeingangsgesteuerte Interrupts werden gespeichert, aber nicht ausgeführt.
Maskierung aller Interrupts
Interrupt–Steuercode (100: Maskierung aller Interrupts)Fest auf 000 (keine Funktion)
Fest auf 000 (keine Funktion)
(@)INT(89)
100
000
000
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
33
Demaskierung aller Interrupts
Interrupt–Steuercode (200: Demaskierung aller Interrupts)Fest auf 000 (keine Funktion)
Fest auf 000 (keine Funktion)
(@)INT(89)
200
000
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 dieInterrupt–Signale aufgezeichnet aber es wird keine Interrupt–Verarbeitungdurchgefü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 Interruptsdemaskieren” 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.
ProgrammbeispielIn 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.
Eingabe-gerät
Eingabe-gerät
Eing.–klemmen E–Steckverbind.
Erläuterung
Verdrahtung
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
34
SPS–Konfiguration
DM 6628
Eingang 00003 wird als Interrupt–Eingang verwendet. (Die Eingänge 00004 bis 00006 werden als normaleEingänge verwendet.)
0 0 0 1
15 0
Programmierung
EIN für 1 Zyklus am Anfangdes RUN/MONITOR–Betriebs
Löscht den Inkrementbereich (DM 0000).
Freigabe von des eingangsgesteuerten Interrupts 0 (Eingang 00003).
Immer EIN
Ausgeführt, wenn Eingang 00003 von AUS auf EIN wechselt.
(89)
25313
2-1-2 Intervall–Zeitgeber–gesteuerter InterruptEin Intervall–Zeitgeber (Genauigkeit: 0,1 ms) wird unterstützt und kann auf 0,5ms 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.
Intervall–Zeitgeber–Interrupt
NormalesProgramm
Interrupt–Programm
Unter–programm
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
35
Monoflop–Interrupt–Modus ZeitgesteuerterInterrupt–Modus
Vorgang Der Interrupt wird einmal aus-geführt, wenn die Zeit abge-laufen ist.
Interrupts werden in normalenIntervallen ausgeführt.
Zeiteinstellung 0,5 bis 319.968 ms (Einheit: 0,1 ms)
Interrupt–Ansprechzeit
0,3 ms (beginnend mit dem Moment des Ablaufs der Zeit biszur 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.
Intervall–Zeitgeber–gesteuerteInterrupts
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.
Verfahren zur Anwendung von Intervall–Zeitgeber–gesteuertern Interrupts
Modus auswählen. Entweder Monoflop– oder zeitgesteuerter Interrupt–Modus
Kontaktplan–Programmierung STIM(69)
Intervall-Zeitgeber Interrupt wirdausgeführt.
Kontaktplan–ProgrammierungSpezifiziertes Unterprogramm wird ausgeführt.
STIM(69) INTERVALL–ZEIT-GEBER–Befehl
Zeitgeber starten
Monoflop–Betrieb
Zeitgest. Interrupt–Betrieb
Lesen der abgelaufen. Zeit
SBN(92)
RET (93)
Wählen Sie entweder den Monoflop– oder den zeitgesteuerten Interrupt–Modus aus.
Auswählen des Modus
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
36
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
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 dereingestellten 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 beziehendenBefehlsfunktionen.
Befehl Steuerung Betrieb(@)STIM(69) Einschaltwischer starten Startet den Intervall–Zeitgeber in dem
Monoflop–Interrupt–Modus.
Zeitgesteuerten Inter-rupt–Zeitgeber starten
Startet den Intervall–Zeitgeber in dem zeitgesteuerten Interrupt–Modus.
Zeitgeber–Istwert lesen Liest den Zeitgeber–Istwert.
Zeitgeber anhalten Bricht die Zeitgeberfunktionen ab.
(@)INT(89) Alle Interrupts maskieren Sperrt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeitgeber–gesteuerte Interrupts, Zähler-gesteuerte Interrupt, usw.
Alle Interrupts demaskie-ren
Gibt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeitgeber–gesteuerte Interrupts, Zähler-gesteuerte Interrupts, usw. frei
Starten der ZeitgeberDiese Funktion stellt die Betriebsart (Monoflop– oder zeitgesteuerter Interrupt)und den Sollwert des Zeitgebers ein und startet den Intervall–Zeitgeber.
Kontaktplan–Programmierung
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
37
Monoflop–Modus
Steuerbezeichnung (000: Einschaltwischer starten)
Erstes Wort des Zeitgeber–Sollwertes
Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
(@)STIM(69)
000
C2
C3
Zeitgesteuerte Interrupt–Modus
Steuercode (003: zeitgesteuert. Interrupt–Zeitgeber starten
Erstes Wort des Zeitgeber–SollwertesUnterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
Anfangswert des dekrementierenden Zählers (4–stelliger Hex–Wert): 0000 bis 9999Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit: 0,1 ms): 0005 bis 0320 (0,5ms bis 32 ms)
(@)STIM(69)
003
C2
C3
C2
C2+1
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spezifi-zierten Zeit wird folgendermaßen berechnet:
(Inhalt des Wortes C2) x (Inhalt der Worte C2 + 1) x 0,1 ms(0,5 bis 319.968 ms)
Wird für C2 eine Konstante spezifiziert, wird der Sollwert des Abwärtszählers aufdiesen Wert gesetzt und das Dekrementierungs-Zeitintervall beträgt 10 (1 ms).(Der Sollwert wird spezifiziert wie er ist, in ms–Einheiten.)
Lesen der Zeitgeber–IstwerteDiese Funktion liest die Intervall–Zeitgeber–Istwerte.
Steuercode (006: Zeitgeber–Istwert lesen)
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)
(@)STIM(69)
006
C2
C3
C2
C2+1
C3
Anhalten der ZeitgeberDiese Funktion hält den Intervall–Zeitgeber an.
Steuercode (010: Zeitgeber anhalten)
Fest: 000
Fest: 000
(@)STIM(69)
010
000
000
Maskierung oder Demaskieren aller InterruptsSehen Sie Abschnitt 2-1-1 Eingangsgesteuerte Interrupts und Abschnitt 7-29Interrupt–Verarbeitungs–Befehle für Einzelheiten über die Maskierung/Demas-kierung aller Interrupts.
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
38
ProgrammbeispielMonoflop–Interrupt–Modus
BeschreibungIn diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedin-gung (00005) von AUS nach EIN umschaltet. Wenn die Zeit (ca. 1 s) abgelaufenist, 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 amAnfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Immer EIN
(Ausführungs–bedingung)
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999 BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms(0005 bis 0320 BCD–Wert)
Startet den Intervall–Zeitgeber im Monoflop–Interrupt–Modus.
Führt den Interrupt einmalaus, nach dem die Zeit abge-laufen ist.
(69)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
39
Zeitgesteuerter Interrupt–ModusBeschreibungIn diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedin-gung (00005) von AUS nach EIN umschaltet. Dann wird das Interrupt–Unterpro-gramm jedes Mal ausgeführt, nachdem die festgesetzte Zeit (ca. 1 s) abgelau-fen ist. Der Inhalt von DM 0000 jedesmal um 1 inkrementiert, wenn das Inter-rupt–Unterprogramm ausgeführt wird.
Abgelaufene Zeit 100 x 100 x 0,1 = 1.000 ms
Programmierung
EIN für 1 Zyklus amAnfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Immer EIN
(Ausführungs–bedingung)
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999, BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms (0005 bis 0320, BCD–Wert)
Startet den Intervall–Zeitgeber im zeitgesteuerte Interrupt–Modus.
Führt den Interrupt jedes Mal aus, wenn die festgesetzte Zeit abgelaufen ist.
(69)
2-2 CPM2A/CPM2C Schneller ZählerCPM2A 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ählermit 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ürschnelle 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).
Schnelle Zähler Schneller Zähler
1 Eingang
Keine Interrupts
Istzählwert–Interrupts
Zielwert–Ver-gleich–Interrupts
Bereichsver-gleich–Interrupts
Keine Interrupts
Aufwärtszähl–Interrupts
Interrupt–Eingänge(Zählmodus)
4 Eingänge:
(2 Eingänge in CPM2C CPU–Baugruppen mit 10 E/A)
Die CPM2A/CPM2C verfügt über einen integrierten Schnellen Zähler und inte-grierte Interrupt–Eingänge.
Arten von SchnellenZählern
2-2AbschnittCPM2A/CPM2C Schneller Zähler
40
Schneller ZählerDer eingebaute schnelle Zähler verwendet die eingebauten Eingänge 00000 bis00002 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 denHinweis)
Ansprech–frequenz
Eingangsmodus (Zählwert) Steuerverfahren
000000000100002
5 kHz Differentialphasen(–8388608 bis 8388607)
Zielwertvergleich–Interrupts
00002 20 kHz Impuls und Richtung(–8388608 bis 8388607)
Auf–/Abwärts–Impulse(–8388608 bis 8388607)
Inkremental(0 bis 16777215)
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 und00004 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 nichtmöglich, die belegten Eingänge für andere Zwecke zu verwenden.
Eingangs–Nr. (sehen
Sie denHinweis)
Ansprech–frequenz
Eingangsmodus(Zählwert)
Steuerverfahren
00003 2 kHz Aufwärtszähler(0000 bi FFFF)
ZählergesteuerteI00004 (0000 bis FFFF)
gInterrupts
00005 Abwärtszähler(0000 bis FFFF)
00006(0000 bis FFFF)
Hinweis 1. Nicht als Zähleingänge verwendete Eingänge können als gewöhnliche Ein-gänge verwendet werden.
2. Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann nur als normaler Eingang verwendet werden, Eingang 00006 ist nichtvorhanden.
Schnelle Zähler–InterruptsVom Schnellen Zähler generierte Interrupts (Zählsollwert erreicht–Inter-rupts)
Zielwertvergleich–InterruptsDer aktuelle Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, inder diese in der Tabelle gespeichert wurde. Ein Interrupt–Unterprogramm wirdausgeführt, wenn der Istwert dem aktuellen Zielwert entspricht. Bis zu 16 Ziel-
2-2AbschnittCPM2A/CPM2C Schneller Zähler
41
werte und Interrupt–Unterprogramme können in der Tabelle für die inkrementie-rende oder dekrementierende Richtung eingetragen werden.
Zähl–Istwert
Zielwerte in inkrementierenderRichtung
Zielwerte in dekrementierenderRichtung
Übereinstimmung mitdem Zielwert währenddes inkrementierendenZählens
Übereinstimmung mitdem Zielwert währenddes dekrementierendenZählens
Zeit
Die Interrupt–Verarbeitung wird ausgeführt, wenn der Istwert einem Zielwert in derinkrementierenden oder dekrementierenden Richtung entspricht.
Bereichsvergleich–InterruptsEine 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 einesbeschriebenen Bereichs liegt.
Zähler–Istwert
Oberer Grenzw. 1:
Oberer Grenzw. 2:
Unterer Grenzw. 1:
Unterer Grenzw. 2:
Bereichsver-gleichs–Bedin-gung 2 erfüllt.
Bereichsver-gleichs–Bedin-gung 1 erfüllt.
Bereichsver-gleichs–Bedin-gung 1 erfüllt.
Bereichsver-gleichs–Bedin-gung 2 erfüllt.
Die Interrupt–Verarbeitung wird ausgeführt, wenn eine Bereichsvergleichs–Bedingungerfü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 einemunteren Grenzwert liegt.
Auf–/Abwärtszählungsgesteuerte Interrupts über Interrupt–Eingänge(Zählmodus)Ein Interrupt–Unterprogramm wird jedes Mal ausgeführt, wenn die Bedingungerfüllt ist, d. h., dass der Zähler–Istwert dem Zähler–Sollwert (in der Inkremen-tier–Betriebsart) oder 0 (Dekrementier–Betriebsart) entspricht.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
42
2-2-1 Anwendung des Schnellen ZählersDie CPM2A/CPM2C CPU–Baugruppe verfügt über einen eingebauten Kanalfü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
Sensor Inkremental–Drehgeber
Angabe Eingangsmodusg
Differentialphase Impuls plusRichtung
Aufwärts/Abwärts Inkremental
Eingangs– 00000 Eingang Phase–A Impulseingang Rechtslaufeingang Impulseingangg gnummer 00001 Eingang Phase–B Richtungseingang Linkslaufeingang (Sehen Sie den
Hinweis 1)
00002 Eingang Phase–Z (Rücksetzeingang) (sehen Sie Hinweis 1)
Eingangs–methode
Differentialphasen–eingänge (4X)
Phaseneingänge Phaseneingänge Phaseneingänge
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)
Worte SR 248 (äußerst rechte Ziffern) und SR 249 (äußerst linke Ziffern)
Interrupts Zielwertvergleich Bis zu 16 Zielwerte und Interrupt–Unterprogrammnummern können in derinkrementierenden oder dekrementierenden Richtung gespeichert werden.
Bereichsvergleich Bis zu acht Bereiche (mit oberen und unteren Grenzen) undUnterprogrammnummern können gespeichert werden.
Zählerrückstellverfahren Z–Phasensignal + Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn IR00002 einschaltet, während SR 25200 gesetzt ist.
Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn SR 25200eingeschaltet wird.
Hinweis 1. Nicht als Zählereingänge verwendet Eingänge können als gewöhnlicheEingänge verwendet werden.
2. Werden die Worte nicht als Zähleristwert–Speicherziel verwendet, könnensie als gewöhnliche IR–Worte verwendet werden.
3. SR 25200 wird in jedem Zyklus gelesen. Bis zu einem Zyklus kann für eineRücksetzung auf der steigenden Flanke von Phase–Z erforderlich sein.
Die folgende Tabelle zeigt die Beziehungen zwischen dem Schnellen Zählerund anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
43
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 Verwendung als Schnelle Zähler–Eingänge eingerichtet, werden die Eingangszeitkonstanten für die entspre-chenden Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch inder SPS–Konfiguration gespeichert.
Programmbeispiel
Wählen Sie den Eingangsmodusund 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)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
44
Schnelle Zähler–Funktion
SPS–Konfiguration
DM 6642, Bits 08 bis 15
Geber–eingänge
Eingangsmodus Zählen Zahlungsprüfungs–Interrupt generiert
Differential–PhasenbetriebImpuls– u. Richtungs-eingangAuf/Ab–BetriebInkrementaleingang
Kontaktplan–Programm
CTBL (63) REGISTERVERGLEICH-STABELLEN–Befehl
Registervergleichs–tabelle
Vergleich starten
INI (61)BETRIEBSARTEN-
STEUERUNGS–Befehl
Spezifiziertes Unterprogramm wirdausgeführt (wenn Zählungsprü-fungs–Interrupts verwendet werden).
Istwert ändern
Start/Stopp des-
Vergleichs
SBN(92)
RET (93)
Abfrage einmal/Zyklus
Zähleristwert
SR 249 SR 248
PRV(62)
Sofort
SCHNELLER ZÄHLER–ISTWERT
LESEN–Befehl
Istwert lesen
Vergleichstatus lesen
Bereichsvergleichs–Ergebnisse lesen
Bereichsvergleichs–ErgebnisseAR 1100 bis AR 1107
SPS–Konfiguration
DM 6642, Bits00 bis 03
Auffrischung
Wahl des Eingangsmodus und Rücksetzverfahrens.EingangsmodusWählen Sie den Eingangsmodus für den schnellen Zähler entsprechend demSignaltyp.
DifferentialphaseIm Differentialphasen–Eingangsmodus wird der Zählwert, entsprechend denzwei Differentialphasen–Signalen, mit einem Multiplikator von 4 inkrementiertoder dekrementiert (Phase A und Phase B).
Maximalfrequenz: 5 kHz
Phase A
Phase B
Zählwert
Nms → Frequenz =1,000
N x 4
EIN
AUS
EIN
AUS
2-2AbschnittCPM2A/CPM2C Schneller Zähler
45
Impuls und RichtungIm Impuls– u. Richtungseingangsmodus werden Impuls– und Richtungssignalangelegt und der Zählwert wird entsprechend dem Richtungssignals–Zustandinkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
Zählwert
Nms → Frequenz =1,000
N
Impuls–eingang
Richtungs-eingang
EIN
AUS
EIN
AUS
Auf–/Abwärts–ImpulsIn dem Auf–/Abwärts–Impulseingangsmodus werden Rechtslauf– (Aufwärts–impulse) und Linkslauf–Signale (Abwärtsimpulse) angelegt und der Zählwertwird entsprechend inkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
Zählwert
Nms → Frequenz =1,000
N
Rechtslauf–eingang
Linkslauf–eingang
Inkrementierung Dekrementierung
EIN
AUS
EIN
AUS
a
InkrementalIm Inkrementalmodus werden Impulssignale angelegt und der Zählwert wird mitjedem Impuls inkrementiert. IR 00001 kann als gewöhnlicher Eingang verwen-det werden.
Maximalfrequenz: 20 kHz
Zählwert
Nms → Frequenz =1,000
N
Impuls–eingänge
EIN
AUS
Wird der Differentialphasen–Eingangsmodus verwendet, müssen Eingangssi-gnale über 4X–Differentialphasen–Eingänge angelegt werden. Wird ein Geberin diesem Modus angeschlossen, entspricht der Zählwert pro Umdrehung demVierfachen der Geberauflösung. Bei der Auswahl eines Gebers muss der max.Zählwert in Betracht gezogen werden.
ZählwerteBereichswerte werden vom schnellen Zähler nur in der Linearzähler–Funktionverarbeitet. Liegt der Zählwert außerhalb des zulässigen Bereichs, tritt einÜber– oder Unterlauf ein. Der Istwert wird 0FFFFFFF, wenn ein Überlauf auftritt
2-2AbschnittCPM2A/CPM2C Schneller Zähler
46
oder FFFFFFFF, wenn ein Unterlauf vorkommt; der Vergleich wird anschlie-ßend abgebrochen.
Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–Eingangsmodus
Unterlauf (FFFFFFFF) Überlauf (0FFFFFFF)
Inkrementalmodus
Überlauf (0FFFFFFF)
Setzen Sie den Istwert zurück, um die Zählung nach einem Über– oder Unter-lauf neuzustarten. (Der Istwert wird automatisch zurückgesetzt, wenn der Be-trieb gestartet wird.)
RücksetzverfahrenEines der beiden folgenden Verfahren kann gewählt werden, um den Zählerist-wert auf 0 zurückzusetzen.
Z–Phasen–Signal (Rücksetzeingang) + Software–RücksetzungDer Istwert wird zurückgesetzt, wenn ein Z–Phasen–Signal (d.h. ein Rücksetz–eingang) eingeschaltet wird, während der Rücksetzmerker (25200) des Schnel-len Zählers aktiviert ist.
1 Abfrage
Z–Phase
Rücksetzung Rücksetzung RücksetzungNicht zurückgesetzt Nicht zurückgesetzt
Software–RücksetzungDer 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–Ergebnissebeibehalten, wie sie vor dem Rücksetzen des Istwertes bestanden. (War einVergleichsvorgang vor der Istwert–Rücksetzung aktiv, wird dieser Vergleichnach 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 werdenkann. Um sicher zu sein, dass er ausgeschaltet ist, muss er für mindestens ei-nen Zyklus ausgeschaltet bleiben.
Wählen des zuverwendenden InterruptsSchnelle Zähler–Interrupts verwenden eine Vergleichstabelle und führen eineZählwertprüfung, entsprechend einer der beiden nachfolgend beschriebenen
SchnelleZähler–Interrupts
2-2AbschnittCPM2A/CPM2C Schneller Zähler
47
Methoden (d.h., Zielwert– oder Bereichsvergleich), durch. Ein Interrupt wird ge-neriert, wenn die Bedingungen erfüllt sind.
Sehen Sie Abschnitt 2-1 Interrupts ”Reihenfolge der Priorität für Interrupts” fürEinzelheiten ü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–InterruptsBis zu 16 Kombinationen von Vergleichsbedingungen (Zielwert und Zählrich-tung) und Interrupt–Unterprogrammnummern können in der Vergleichstabelleeingetragen werden. Das spezifizierte Unterprogramm wird ausgeführt, wennder Zähler–Istwert einem Zielwert in der Vergleichstabelle entspricht.
Vergleichstabelle Istwert
Zähleristwert: 5.000Zählrichtung: InkrementUnterprogrammnummer:10
Zähleristwert: 1.000Zählrichtung: InkrementUnterprogrammnummer:8
Zähleristwert: 3.000Zählrichtung: DekrementUnterprogrammnummer:9
Inkrement–richtung
Inkrement–richtung
Dekrement–richtung
ZeitInterrupt Interrupt Interrupt
Unterprogramm8 ausgeführt
Unterprogramm10 ausgeführt
Unterprogramm9 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–InterruptsBis zu acht Kombinationen von Vergleichsbedingungen (obere und untereGrenzwerte) 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.000Obere Grenze: 4.000Unterprogrammnummer:10
Untere Grenze : 3.000Obere Grenze: 5.000Unterprogrammnummer:9
Istwert
ZeitInterrupt Interrupt Interrupt
Unterprogramm10 ausgeführt
Unterprogramm9 ausgeführt
Unterprogramm9 ausgeführt
Unterprogramm10 ausgeführt
Interrupt
2-2AbschnittCPM2A/CPM2C Schneller Zähler
48
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ührungeines Steuerbefehls für den Schnellen Zähler im normalen Programm. Diese Si-tuation kann mittels der folgenden Programmierung vermieden werden.
Verfahren 1
Unterbinden von Interruptsim normalen Programmbe-reich, während der Ausfüh-rung des Befehls.
Verfahren 2
Erneutes Ausführen desnicht ausführbaren Befehlsim 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 normalweiter.
Verdrahten Sie die Eingänge, wie es in den folgenden Abbildungen gezeigt wird,entsprechend des Eingangsmodus und des Rücksetzverfahrens.
CPM2A–Eingänge
Differentialphasen–Eingangsmodus
00000: Eingang Phase A00001: Eingang Phase B00002: Eingang Phase Z
Auf–/Abwärts–Impuls–Eingangsmodus00000: Rechtsl.–eingang00001: Linksl.–eingang00002: Rücksetzeingang
00000: Impulseingang00001: Richtungseingang00002: Rücksetzeingang
Impuls– u. Richtungs–Eingangsmodus Inkrementalmodus00000: Impulseingang
00002: Rücksetzeingang
Verdrahtung derEingänge
2-2AbschnittCPM2A/CPM2C Schneller Zähler
49
CPM2C–Eingänge
Differentialphasen–Eingangsmodus
00000: Eingang Phase A
00001: Eingang Phase B
00002: Eingang Phase Z
00000: Eingang Phase A
00001: Eingang Phase B
00002: Eingang Phase Z
E.–klemmen E–steckverbind.
Auf–/Abwärts–Impuls–Eingangsmodus
00000: Rechtslaufeingang
00001: Linkslaufeingang
00002: Rücksetzeingang
00000: Rechtslaufeingang.
00001: Linkslaufeing.
00002: Rücksetzeing.
Eing.–klemmen E–steckverbind.
Impuls– u. Richtungs–Eingangsmodus
00000: Impulseingang
00001: Richtungseingang
00002: Rücksetzeingang
00000: Impulseing.
00001: Richtungseing.
00002: Rücksetzeing.
Eing.–klemmen E–steckverbind.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
50
Inkremental–Eingangsmodus
00000: Impulseingang
00002: Rücksetzeingang
00000: Impulseing.
00002: Rücksetzeing.
Eing.–klemmen E–steckverbind.
Werden Phase–Z– und Rücksetzeingang nicht verwendet, kann 00002 als ge-wöhnlicher Eingang verwendet werden.
Stellen Sie die SPS–Konfigurationsbereiche für den Schnellen Zähler wie folgtein:
Schnelle Zähler–Einsatz DM 6642, Bits 08 bis 15
Eingangsmodus DM 6642, Bits 00 bis 03
Rücksetz-Verfahren DM 6642, Bits 04 bis 07(Verwendung/Nichtverwendung von 00002 als gewöhnlicher Eingang)
Wort Bits Funktion Ein–stellung
DM 6642 00 bis 03 Einstellung des Schnellen Zähler–Eingangsmodus
0: Differentialphase 5 kHz1: Impuls u. Richtung 20 kHz2: Aufwärts/Abwärts 20 kHz4: Inkremental 20 kHz
0, 1, 2 oder4
04 bis 07 Einstellung des SchnellenZähler–Rücksetzverfahrens
0: Z–Phase und Software–Rücksetzung1: Software–Rücksetzung
0 oder 1
08 bis 15 Schnelle Zähler–Verwendung
00: Nicht verwenden01: Als Schneller Zähler02: Synchronisierte Impulssteuerung
(10 Hz bis 500 Hz)03: Synchronisierte Impulssteuerung
(20 Hz bis 1 kHz)04: Synchronisierte Impulssteuerung
(300 Hz bis 20 kHz)
01
Die neuen Einstellungen der Systemeinstellung werden wirksam, wenn der Be-trieb beginnt (Wechsel von der PROGRAM–Betriebsart in die MONITOR– oderRUN–Betriebsart) oder nach Erneutem Einschalten der Versorgungsspannungder CPM2A/CPM2C.
SPS–Konfiguration
2-2AbschnittCPM2A/CPM2C Schneller Zähler
51
Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung bezie-henden Befehle.
Befehl Steuerung Betrieb
(@)CTBL(63) Zielwertvergleichsta-belle speichern
Speichert die Zielwertvergleichstabelle
Bereichsvergleichsta-belle speichern
Speichert die Bereichsvergleichstabelle
Zielwertvergleichsta-belle speichern undVergleich beginnen
Speichert die Zielwertvergleichstabelleund beginnt den Vergleich
Bereichsvergleichsta-belle speichern undVergleich beginnen
Speichert die Bereichsvergleichstabelleund beginnt den Vergleich
(@)INI(61) Vergleich starten Startet den Vergleich mit der gespeicher-ten Vergleichstabelle.
Vergleich beenden Bricht den Vergleich ab.
Istwert ändern Ändert den schnellen Zähler–Istwert.
(@)PRV(62) Istwert lesen Liest Istwert des Schnellen Zählers.( ) ( )
Status lesen Liest den Status des Schnellen Zählers.
Bereichsvergleichs–Ergebnisse lesen
Liest die Bereichsvergleichs–Ergebnisse
(@)INT(89) Maskierung allerInterrupts
Sperren aller Interrupts, einschließlicheingangsgesteuerte Interrupts, Intervall–Zeitgeber–gesteuerte Interrupts, zähler-gesteuerte Interrupts, usw.
Demaskierung allerInterrupts
Freigabe aller Interrupts, einschließlicheingangsgesteuerte 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
248249
00 bis 15 Schneller Zähler-Istwert Liest den Istwert desS h ll Zähl249 00 bis 15 Schnellen Zählers.
252 00 Schneller Zähler–Rücksetzung
Wird dieses Bit eingeschal-tet, wird eine Software–Rücksetzung für den schnel-len Zähler ausgelöst.
AR11 00 bis 07 Schneller Zähler–Bereichsvergleichs–Ergebnisse
EIN:Bedingung erfülltAUS: Bedingung nicht erfüllt
08 Schneller Zähler–Vergleich EIN:Vergleich aktivAUS: Vergleich abgebrochen
09 Schneller Zähler–Istwert–Überlauf/Unterlauf
EIN:Überlauf/UnterlaufAUS: Normal
Zielwertvergleichstabelle speichernZielwertvergleichstabelle speichern und Vergleich beginnenDiese Funktionen speichern für den Zielwertvergleich eine Vergleichstabellezur Zählwertüberprüfung in der CPM2A/CPM2C . Es ist auch möglich, den Ver-gleich zusammen mit der Speicherung zu beginnen.
Zielwertvergleichstabelle speichern
Schnittstellenbezeichner (000: Schneller Zähler)Modusbezeichnung (002: Nur Zielwertvergleichstabelle speichern)
Anfangswort der Vergleichstabelle
(@)CTBL(63)
000
002
S
Kontaktplan–Programmierung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
52
Zielwertvergleichstabelle speichern und Vergleich beginnen
Schnittstellenbezeichner (000: Schneller Zähler)Modusbez. (000: Zielw.–vergleichstab. speichern/Vergleich beg.)
Anfangswort der Vergleichstabelle
(@)CTBL(63)
000
000
S
Zielwertvergleichstabelle
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
Vergleich 1–Einstellung
Vergleich 2–Einstellung
Anzahl der Vergleiche0001 bis 0016 BCD
Zielwert (nieder–/höherwertig)
Zu vergleichenden Zählwert speichern.
Die äußerste linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–EingangsmodusImpuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–ImpulseingangsmodusF8388608 bis 08388607
Inkrementalmodus00000000 bis 16777215
UnterprogrammnummerSpeichern Sie die Richtung des Vergleichs und die bei einer Entsprechung auszuführende Unterpro–grammnummer.Die höherwertigen Ziffern zeigen die Richtungan (Inkremental/Dekremental).
Inkrementrichtung: 0000 bis 0049Dekrementrichtung: 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 Vergleichstabelle erstellt wurde, wird sie in der CPM2A/CPM2C ge-speichert, falls noch keine andere Vergleichstabelle gespeichert wurde und dieBetriebsart nicht auf PROGRAM geändert wird (und solange die Versorgungs-spannung nicht ausgeschaltet wird).
Bereichsvergleichstabelle speichernSpeichern der Bereichsvergleichstabelle und Vergleich beginnenDiese Funktionen speichern eine Vergleichstabelle in der CPM2A/CPM2C fürdie Zählwertüberprüfung des Bereichsvergleichs. Es ist auch möglich, den Ver-gleich zusammen mit der Speicherung zu beginnen.
Bereichsvergleichstabelle speichern
Schnittstellenbezeichner (000: Schneller Zähler)Modusbezeichnung (003: Nur Bereichsvergleichstabelle speichern)Anfangswort der Vergleichstabelle
(@)CTBL(63)
000
003
S
Bereichsvergleichstabelle speichern und Vergleich beginnen
Schnittstellenbezeichner (000: Schneller Zähler)Modusbezeichnung (001: Bereichsvergleichstabelle speichern undVergleich beginnen)Anfangswort der Vergleichstabelle
(@)CTBL(63)
000
001
S
2-2AbschnittCPM2A/CPM2C Schneller Zähler
53
Bereichsvergleichstabelle
Untere Grenze 1 (niederwertige 4 Ziffern)
Untere Grenze 1 (höherwertige 4 Ziffern)
Unterprogrammnummer
Bereichsvergleichs–Bedingung 1.
Obere und untere Grenzen (niederwertig, höherwertig)
Obere und untere Grenzen speichern.Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–EingangsmodusImpuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–ImpulseingangsmodusF8388608 bis 08388607
Inkrementalmodus00000000 bis 16777215
UnterprogrammnummerSpeichern der Unterprogrammnummer, die ausgeführt wird,wenn die Bereichsvergleichsbedingung erfüllt ist.
0000 bis 0049
Obere Grenze 1 (niederwertige 4 Ziffern)
Obere Grenze 1 (höherwertige 4 Ziffern)
Untere Grenze 8 (niederwertige 4 Ziffern)
Untere Grenze 8 (höherwertige 4 Ziffern)
Unterprogrammnummer
Bereichsvergleichs–Bedingung 8.
Obere Grenze 8 (niederwertige 4 Ziffern)
Obere Grenze 8 (höherwertige 4 Ziffern)
Acht Bereichsvergleichsbedingungen, bestehend ausoberen und unteren Grenzen und Unterprogrammnum-mern müssen spezifiziert werden.
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 Vergleichstabelle erstellt wurde, wird sie in der CPM2A/CPM2C ge-speichert, falls noch keine andere Vergleichstabelle gespeichert wurde und dieBetriebsart nicht auf PROGRAM geändert wird (und solange die Versorgungs-spannung nicht ausgeschaltet wird).
Vergleich beginnen/beendenDer Vergleich kann, entsprechend der Tabelle, die über CTBL(63) in derCPM2A/CPM2C gespeichert wurde, begonnen oder beendet werden.
Vergleich beginnen
Schnittstellenbezeichner (000: Schneller Zähler)
Steuerbezeichnung (000: Vergleich beginnen)Fest: 000
(@)INI(61)
000
000
000
Vergleich beenden
Schnittstellenbezeichner (000: Schneller Zähler)Steuerbezeichnung (001: Vergleich beenden)
Fest: 000
(@)INI(61)
000
001
000
2-2AbschnittCPM2A/CPM2C Schneller Zähler
54
Istwert ändernDiese Funktion ändert den Istwert des schnellen Zählers.
Schnittstellenbezeichner (000: Schneller Zähler)
Steuerbezeichnung (002: Istwert ändern)
Anfangswort der zu ändernden Istwertdaten
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–EingangsmodusImpuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–EingangsmodusF8388608 bis 08388607
Inkrementalmodus00000000 bis 16777215
(@)INI(61)
000
002
C2
C2
C2+1
Während eines Zielwertvergleichs tritt kein Interrupt auf, auch wenn der in derVergleichstabelle eingetragene Zielwert durch INI(61) geändert wird.
Zeitgeber–Istwert lesenDiese Funktion liest den Istwert des schnellen Zählers.
Einsatz eines Befehls
Schnittstellenbezeichner (000: Schneller Zähler)
Steuerbezeichnung (000: Istwert lesen)
Anfangswort zur Speicherung des Istwerts
Niederwertige 4 Ziffern
Höherwertige 4 Ziffern
Istwert (niederwertig, höherwertig)
Der gelesene Istwert wird hier gespeichert.
Differentialphasen–EingangsmodusImpuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–EingangsmodusF8388608 bis 08388607
Inkrementalmodus00000000 bis 16777215
Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
(@)PRV(62)
000
000
C2
D
D+1
Einsatz der DatenbereicheDer Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in denWorten 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 alsArbeitsworte eingesetzt werden.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte248 und 249 zum gleichen Zeitpunkt aufgefrischt.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
55
Status lesenDiese 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
Schnittstellenbezeichner (000: Schneller Zähler)
Steuerbezeichnung (001: Status lesen)
Überlauf/Unterlauf0: Normal 1: Überlauf/Unterlauf
Vergleich0: Beendet; 1: Verarbeitung findet statt
(@)PRV(62)
000
001
D Wort zur Speicherung des Status
Einsatz der DatenbereicheDer Status wird, wie nachfolgend gezeigt, in AR 1108 und AR 1109 gespeichert.
Überlauf/Unterlauf0: Normal 1: Überlauf/Unterlauf
Vergleich0: Beendet; 1: Verarbeitung findet statt
AR 1108 und 1109 werden mit jedem Zyklus aufgefrischt, somit kann zu einerbestimmten Zeit eine Diskrepanz zum genauen Status auftreten.
Wird der Status durch Ausführung von PRV(62) gelesen, werden AR 1108 undAR 1109 gleichzeitig aufgefrischt.
Bereichsvergleichs–Ergebnis lesenDiese Funktion liest das Ergebnis eines Bereichsvergleichs, der anzeigt, ob derIstwert innerhalb eines Bereichs liegt oder nicht.
Einsatz eines Befehls
Schnittstellenbezeichner (000: Schneller Zähler)
Steuerbezeichnung (002: Bereichsvergleichs–Ergebnis lesen)
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.)
(@)PRV(62)
000
002
D
Verwendung der DatenbereicheDas Bereichsvergleich–Ergebnis wird, wie nachfolgend dargestellt, in AR 1100bis 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.)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
56
AR 1100 bis AR 1107 werden bei jedem Zyklus aufgefrischt, somit kann eineDiskrepanz zum genauen Istwert des Bereichsvergleich–Ergebnisses zu einembestimmten 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 InterruptsSehen Sie Abschnitt 2-1-1 Interrupt–Eingänge für Einzelheiten bezüglich derMaskierung und Demaskierung aller Interrupts.
AnwendungsbeispieleZielwertvergleich
BeschreibungIn 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 werdendie Daten in 0000 DM bis 0004 DM um Eins inkrementiert.
Verdrahtung (CPM2A)
E6B2–CWZ6C Inkremental–Drehgeber
Braun
Blau
Schwarz
Weiß
Orange
2-2AbschnittCPM2A/CPM2C Schneller Zähler
57
Verdrahtung (CPM2C)
Braun
Orange
Weiß
Schwarz
Inkremental–Drehgeber
Blau
Eing.–klemmen
E–steckverbind.
Braun
Orange
Weiß
Schwarz
Inkremental–Drehgeber
Blau
SPS–Konfiguration
0: Differentialphasen–Betrieb
0: Durch Z–Phasen–Signal + Software–Rücksetzung zurückgesetzt01: Verwendung als Schneller Zähler
DM 6642 0 1 0 0
15 0
2-2AbschnittCPM2A/CPM2C Schneller Zähler
58
Programmierung
EIN für 1 Zyklus amAnfang des Betriebs
Zielwertvergleichstabelle speichern und Vergleich beginnenSchneller ZählerZielwertvergleichstabelle speichern und Vergleich beginnenAnfangswort der Vergleichstabelle
Immer EIN
Immer EIN
Vergleich 2
Vergleich 4
Anzahl der Vergleiche: 5
Zähler–Istwert:10000 Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
Inkrement, Unterprogr.–Nr. 049
Zähler–Istwert:3000
Inkrement, Unterprogr–Nr. 040Zähler–Istwert:00000000
Dekrement, Unterprogr.–Nr 010Zähler–Istwert:–00003000
Dekrement, Unterprogr.–Nr. 041
Zähler–Istwert:–00010000
Dekrement, Unterprogr–Nr. 048
Immer EIN
Vergleich 5
Immer EIN
Vergleich 1
Immer EIN
Vergleich 3
(71)
(63)
(38)
(93)
(92)
(38)
(93)
(92)
(38)
(93)
(38)
(93)
(92)
(38)
(93)
(01)
(92)
(92)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
59
Bereichsvergleich:BeschreibungIn 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 werdendie Daten in DM 0000 bis DM 0004 um Eins inkrementiert.
Verdrahtung (CPM2A)
E6B2–CWZ6CInkremental–Drehgeber
Braun
Blau
Schwarz
Weiß
Orange
Verdrahtung (CPM2C)
Braun
Orange
Weiß
Schwarz
Inkremental–Drehgeber
Blau
Eing.–klemmen
E–steckverbind.
Braun
Orange
Weiß
Schwarz
Inkremental–Drehgeber
Blau
2-2AbschnittCPM2A/CPM2C Schneller Zähler
60
SPS–Konfiguration
0: Differentialphasen–Betrieb;
0: Durch Z–Phasen–Signal + Software–Rücksetzung zurückgesetzt01: Verwendung als Schneller Zähler
DM 6642 0 1 0 0
15 0
2-2AbschnittCPM2A/CPM2C Schneller Zähler
61
Programmierung
EIN für 1 Zyklus am Anfangdes RUN/MONITOR–Betriebs
Bereichsvergleichstabelle speichern und Vergleich beginnen
Schneller ZählerBereichsvergleichstabelle speichern und Vergleich beginnenAnfangswort der Vergleichstabelle
Immer EIN
Vergleich 1
Immer EIN
Vergleich 2
Immer EIN
Vergleich 3
Immer EIN
Vergleich 4
Immer EIN
Vergleich 5
Unt. Grenze:9.000 Vergleich 1
Ober. Grenze:10.000
Unterprogr. 043
Vergleich 6 Nicht verwendet.
Vergleich 7 Nicht verwendet.
Vergleich 8 Nicht verwendet.
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
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
(71)
(63)
(38)
(93)
(92)
(38)
(93)
(92)
(38)
(93)
(38)
(93)
(92)
(38)
(93)
(01)
(92)
(92)
2-2-2 Eingangsgesteuerte Interrupts im ZählmodusDie vier eingebauten Interrupt–Eingänge der CPM2A/CPM2C CPU–Bau-gruppe können im Zählmodus als Eingänge mit einer Ansprechfrequenz von bis
2-2AbschnittCPM2A/CPM2C Schneller Zähler
62
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ührungeines Interrupt–Unterprogrammes), wenn der Zählwert dem Sollwert ent-spricht.
Intterupt–Eingänge(Zählmodus)
NormalesProgramm
Interrupt–Programm
Unter–programm
Zähl–Interrupt
Eingang(Hinweis 2)
Zählen Interrupt–Nummer
Unterprogramm–nummer
(Hinweis 3)
Ansprech–frequenz
00003 0 bis 65535(0000 bi
0 000 2 kHz
00004 (0000 bisFFFF)
1 001
00005FFFF)
2 002
00006 3 003
Hinweis 1. Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann nur als normaler Eingang verwendet werden, Eingang 00006 ist nichtvorhanden.
2. Die Eingänge 00003 bis 00006 können für jede der folgenden Funktionenverwendet werden: als Interrupt–Eingänge, als Interrupt–Eingänge (Zähl-modus) oder als Eingänge mit Impulsspeicherung. Werden diese Eingängenicht für einen der zuvor beschriebenen Zwecke verwendet, können sie alsgewöhnliche Eingänge eingesetzt werden.
3. Unterprogrammnummern 000 bis 003 sind die Unterprogrammnummernfür Interrupt–Programme, die gestartet werden, wenn Interrupt–Signaleoder 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.
!
2-2AbschnittCPM2A/CPM2C Schneller Zähler
63
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.
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 inder SPS–Konfiguration gespeichert.
Verfahren zum Einsatz von Interrupt–Eingängen im Zählmodus
Verdrahtung der Eingänge
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan–Programms
Eingangsnummer: 00003 bis 00006 (00003oder 00004 für CPM2C CPU–Baugruppen mit10 E/A–Anschlüssen)
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 vonInterrupt–Unterprogrammen.
Wählen Sie entweder die Inkremen-tier– oder Dekrementierzählweise
1: Verwendung als Interrupt–Eingänge (eingangsgesteuerte Interrupts oderZählmodus).
*Verwendung nur für Auf–/Abwärtszähl–Interrupts.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
64
Eingänge
Zähler (2 kHz) 0
Zähler (2 kHz) 1
Zähler (2 kHz) 2
Zähler (2 kHz) 3
SPS–Konfiguration
DM 6628
Eingangsgesteuerte Interrupts im Zählmodus
Interrupt wird generiert.
Kontaktplan–Programm
INT(89) INTERRUPT–Verarbeitungsbefehl
Spezifiziertes Unterprogramm wirdausgeführt.
SBN(92)
RET (93)
Zähler–Sollwert
Zähler 0
Zähler 1
Zähler 2Zähler 3
SR 240
SR 241
SR 242SR 243
INI (61)BETRIEBSARTEN-STEUERUNGS–Befehl
Istwert ändern
Einmal pro Zyklus Sofort
Zähler–Istwert
Zähler 0
Zähler 1
Zähler 2
Zähler 3
SR 244
SR 245
SR 246
SR 247
PRV(62)SCHNELLER ZÄHLER–ISTWERT LESEN–Befehl
Zähler–Istwert lesen
Auffrischung
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden In-terrupt–Eingängen fest zugeordnet.
Eingang Interrupt–Nummer
Unterprogramm–nummer
00003 0 000
00004 1 001
00005* 2 002
00006* 3 003
Hinweis Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann 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ählmodusWährend der Sollwert aufgefrischt wird, wird der Zählwert, beginnend mit 0, in-
Zuordnung der Interrupt–Unterprogramme
Wahl der Inkrementier–oderDekrementierzählweise.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
65
krementiert und das Interrupt–Unterprogramm ausgeführt, wenn der Istwertdem Sollwert entspricht.
Das Unterprogramm wird ausgeführt, wenn dieZählung beendet ist; der Istwert wird auf 0 zu-rückgesetzt.
Istwert
Soll–wert Inkrementieren Inkrementieren
Interrupt
Unterprogramm wird ausgeführtReturn
Interrupt
Unterprogramm wird ausgeführt
Zeit
Dekrementierender ZählmodusNachdem 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.
Das Unterprogramm wird ausgeführt, wenndie Zählung beendet ist; der Istwert wird aufSollwert zurückgesetzt.
Istwert
Soll–wert
Dekrementieren Dekrementieren
Interrupt
Unterprogramm wird ausgeführt
Interrupt
Unterprogramm wird ausgeführt
Zeit
Verdrahten Sie die Eingangsklemmen einer CPM2A wie in der folgenden Abbil-dung gezeigt.
Eingang 00003: Eing.–Interrupt (Zählmodus) 0Eingang 00004: Eing.–Interrupt (Zählmodus) 1Eingang 00005: Eing.–Interrupt (Zählmodus) 2Eingang 00006: Eing.–Interrupt (Zählmodus) 3
Verdrahtung derEingänge
2-2AbschnittCPM2A/CPM2C Schneller Zähler
66
Verdrahten Sie die Eingangsklemmen einer CPM2C wie in der folgenden Abbil-dung gezeigt.
00006: Eingangs–Interrupt (Zählmodus) 3
00004: Eingangs–Interrupt (Zählmodus) 1
00003: Eingangs–Interrupt (Zählmodus) 0
00005: Eingangs–Interrupt (Zählmodus) 2
00004: Eingangs–Interrupt (Zählmodus) 1
00003: Eingangs–Interrupt (Zählmodus) 0
Eing.–klemmen
E–.steckverbind.
Hinweis Eingang 00005 in der CPM2CCPU–Baugruppe mit nur 10Ein–/Ausgängen kann nur alsnormaler Eingang verwendetwerden, Eingang 00006 istnicht vorhanden.
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 bis03
Einstellung fürEingang 00003
0: Normaler Eingang
1: Interrupt–Eingänge
1
04 bis07
Einstellung fürEingang 00004
1: Interru t–Eingänge(eingangsgesteuerterInterrupt oder Zählmodus)
08 bis11
Einstellung fürEingang 00005
)
2: Schneller Eingang
12 bis15
Einstellung fürEingang 00006
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann 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.
SPS–Konfiguration
2-2AbschnittCPM2A/CPM2C Schneller Zähler
67
Die folgende Tabelle enthält die Befehlsfunktionen, die sich auf die eingangsge-steuerte Interrupts (Zählmodus) beziehen.
Befehl Steuerung Betrieb
(@)INT(89) Sollwert des Aufwärts-zählers auffrischen
Frischt den Sollwert des Zählers auf undbeginnt die Aufwärtszählung.
Sollwert des Abwärts-zählers auffrischen
Frischt den Sollwert des Zählers auf undbeginnt die Abwärtszählung.
Alle Interruptsmaskieren
Sperrt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeit-geber–gesteuerte Interrupts, zählerge-steuerte Interrrupts, usw.
Alle Interruptsdemaskieren
Gibt alle Interrupts, einschließlich ein-gangsgesteuerte Interrupts, Intervall–Zeit-geber–gesteuerte Interrupts, zählerge-steuerte Interrrupts, usw. frei.
(@)INI(61) Istwert ändern Ändert den Istwert des Zählers.
(@)PRV(62) Istwert lesen Liest den Istwert des Zählers.
Die auf eingangsgesteuerten Interrupts (Zählmodus) bezogenen Funktionenwerden 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 Sollwertd Zähl241 00 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 1 des Zählers
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 Istwert desZähl245 00 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 1 Zählers
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
Aufwärtszähler–Sollwert auffrischen/Abwärtszähler–Sollwert auffri-schenDiese Funktionen speichert die Sollwerte der Zähler und frischt diese überINT(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 SollwertenDie 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
Kontaktplan–Programmierung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
68
Beginnen des Zählbetriebs und Freigabe von Interrupts
Aufwärtszähler
Abwärtszähler
Interrupt–Steuercode (004: Sollwert des Aufwärtszählers auffrischen)
Fest: 000
Steuerdaten–Wort
Interrupt–Steuercode (003: Sollwert des Abwärtszählers auffrischen)
Fest: 000
Steuerdaten–Wort
0 spezifizieren und speichern
Eingangsgesteuerten Interrupt (Zählmodus) 3 spezifizieren
Eingangsgesteuerten Interrupt (Zählmodus) 2 spezifizierenEingangsgesteuerten IInterrupt (Zählmodus) 1 spezifizieren
Eingangsgesteuerten IInterrupt (Zählmodus) 0 spezifizieren
0: Sollwert auffrischen
1: Sollwert nicht auffrischen
(@)INT(89)
004
000
C2
(@)INT(89)
003
000
C2
Hinweis Wird INT(89) ausgeführt, um Interrupts während des Zählerbetriebs (Interrupt–Steuerbezeichnung 000) zu maskieren, wird der Zählerbetrieb abgebrochenund der Zähler–Istwert zurückgesetzt. Um den Zähler erneut zu verwenden,muss der Zählerbetrieb wieder gestartet werden, wie es zuvor beschriebenwurde.
Istwert ändernDiese Funktion ändert den Istwert des Zählers.
Schnittstellenbezeichner (100, 101, 102, 103: eingangsgesteuerte Interrupts (Zählmodus) 0 bis 3)
Steuerbezeichnung (002: Istwert ändern)Spezifiziert das Quellwort, das den neuen Istwert enthält
Das Wort enthält die Istwert–Daten (Quelle)0000 bis FFFF
(@)INI(61)
P
002
C2
C2
Istwert lesenDiese Funktion liest den Istwert des Zählers.
Einsatz eines Befehls
Schnittstellenbezeichner (100, 101, 102, 103: eingangsgest. Interrupt (Zählmodus) 0 bis 3)Steuerbezeichnung (000: Istwert lesen)
Wort zur Speicherung des Istwerts
Istwertdaten lesen
Der gelesene Istwert wird hier gespeichert.0000 bis FFFF
(@)PRV(62)
P
000
D
D
2-2AbschnittCPM2A/CPM2C Schneller Zähler
69
Einsatz der DatenbereicheDer Istwert des schnellen Zählers wird in den Worten SR 244 bis SR 247 gespei-chert, wie nachfolgend gezeigt wird.
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 kannzu 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 Worte244 und 247 zum gleichen Zeitpunkt aufgefrischt.
Maskieren/demaskieren aller eingangsgesteuerte InterruptsSehen Sie Abschnitt 2-1-1 Eingangsgesteuerte Interrupts für Einzelheiten be-züglich der Maskierung und Demaskierung aller Interrupts.
AnwendungsbeispielIn diesem Beispiel wird der Istwert jedes Mal dekrementiert, wenn Eingang00003 eingeschaltet wird, und DM 0000 wird bei jedem hundertsten (64 hex)Einschalten von Eingang 00003 um Eins durch ein Interrupt–Unterprogramminkrementiert.
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2A.
Eingabegerät
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2C.
Eingabegerät
Eingabegerät
Eing.–klemmen E.–steckverbind.
Erläuterung
Verdrahtung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
70
SPS–Konfiguration
Spezifiziert 00003 als Interrupt–Eingang (Zählmodus). DieEingänge 00004 bis 00006 werden als normale Eingänge ver-wendet.
DM 6628 0 0 0 1
15 0
Programmierung
EIN für 1 Zyklus amAnfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementierenZähler–Sollwert: 64 hex (100 dez.)Speichert den Sollwert in Wort 240.
Startet den Zähler mit Eingang 00003 als Inter-rupt–Eingang (Zählmodus).
Frischt den Zähler–Sollwert (Abwärtszähler) auf.
Spezifiziert Eingang 00003. (Andere werden ausmaskiert.)
Wird einmal ausgeführt, wenn die Zählungbeendet ist.
immer 000
(89)
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
71
2-3 CPM1/CPM1A–Interrupt–FunktionenIn diesem Abschnitt werden die Einstellungen und Verfahren für die Verwen-dung der CPM1/CPM1A–Interrupt–Funktionen beschrieben.
2-3-1 Arten von InterruptsDie CPM1/CPM1A verfügt über die drei folgenden Interrupt–Funktionen:
Eingangs–InterruptsDie CPM1/CPM1A verfügen über zwei oder vier Interrupt–Eingänge. Eine Inter-rupt–Verarbeitung erfolgt, sobald einer dieser Eingänge von einem externenGerät auf EIN gesetzt wird.
Intervall–Zeitgeber–InterruptsDie Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einenIntervall–Zeitgeber ausgelöst.
Schneller Zähler–InterruptsDer Schnelle Zähler zählt die an einen der CPU–Eingänge 00000 bis 00002 an-liegenden Eingangs–Impulse. Die Interrupt–Verarbeitung wird, entsprechenddes 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ätempfangen, 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 wiederaufgenommen.
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 infolgender Reihenfolge ausgeführt:
Eing.–Interrupt 0 > Eing.–Interrupt 1 > Eing.–Interrupt 2 > Eing.–Interrupt 3
Intervall–Interrupt > zählergesteuerter–Interrupt
Beachten Sie die folgenden Vorsichtsmaßnahmen bei der Verwendung von In-terrupt–Programmen:
1, 2, 3... 1. Ein neuer Interrupt kann innerhalb eines Interrupt–Programms bestimmtwerden. Weiterhin kann ein Interrupt innerhalb eines Interrupt–Programmsgelö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–BefehlSBN (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ängeverwendet 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 genutztwerden:
Vorsichtsmaßnahmen fürInterrupt–Programme
Befehle und Interrupts fürden Schnellen Zähler
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
72
Verfahren 1Die gesamte Interrupt–Verarbeitung kann während der Befehlsauführung mas-kiert werden.
@INT(89)
000
100
000
INI (61)
000
000
000
@INT(89)
000
200
000
Verfahren 2Fü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)
002
000
DM 0000
CTBL (63)
000
000
DM 0000
RSET LR 0000
LR 0000
2. In der nachfolgenden Abbildung ist der Programmabschnitt des Interrupt–Unterprogrammes dargestellt.
SBN(92) 000
@CTBL(63)
000
000
DM 0000
25313
25503LR
0000
Hinweis 1. Definieren Sie Interruptroutinen am Ende des Hauptprogramms mit demBefehl 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 wirdjedoch normal ausgeführt.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
73
2-3-2 Eingangs–InterruptsDie CPU–Baugruppen mit 10 Ein–/Ausgängen (CPM1–10CDRj undCPM1A–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 undCPM1A–40CDRj) verfügen über vier Interrupt–Eingänge (00003 bis00006).
Es gibt zwei Betriebsarten für die Verarbeitung von eingangsgesteuerte Inter-rupts: den eingangsgesteuerten Interrupt–Modus und den Zählmodus.
CPM1 SPSCPU–Baugruppen mit 10 Ein–/Ausgängen(CPM1–10CDRj)
CPU–Baugruppen mit 20 und 30 Ein–/Ausgängen (CPM1–20CDRj undCPM1–30CDRj(–V1))
0000
300
004
0000
500
006
0000
3
0000
4
24VDCNC
CPM1A SPS
CPU–Baugruppen mit 10Ein–/Ausgängen(CPM1A–10CDRj)
CPU–Baugruppen mit 20, 30 und 40Ein–/Ausgängen (CPM1A–20CDRj undCPM1A–30CDRj) CPM1A–40CDRj)
CPU–Baugruppe Ein– Interrupt– Ansprechzeitg ppgang
pnummer Interrupt–
ModusZählmodus
CPM1-10CDR-jCPM1A 10CDj j
00003 00 max. 0,3 ms 1 kHzjCPM1A-10CDj-j 00004 01
,
(Zeit bis zurCPM1-20CDR-jCPM1A 20CDj j
00003 00(Zeit bis zurAusführung desInterrupt–CPM1A-20CDj-j
CPM1 30CDR j( V1)00004 01
Interrupt–Programms)
CPM1-30CDR-j(-V1)CPM1A-30CDj-j 00005 02
g )
CPM1A 30CDj j
CPM1A-40CDj-j 00006 03
Hinweis Werden keine eingangsgesteuerte Interrupts verwendet, können Sie die Ein-gänge 00003 bis 00006 als normale Eingänge verwenden.
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/CPM1Abenutzt werden sollen. Die entsprechende Stelle muss auf 1 eingestellt werden,wenn der Eingang als Interrupt–Eingang (eingesteuerter Interrupt oder Zählmo-dus) verwenden werden soll; bei einer Verwendung als normaler Eingang muss0 eingestellt werden.
Interrupt–Eingangs–Einstellungen
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
74
Wort EinstellungDM 6628 0: Normaler EingangDM 6628 0: Normaler Eingang
(Grundeinstellung) (Grundeinstellung)1: Interrupt–Eingang2 S h ll Ei
g g2: Schneller Eingang
15 0
DM 6628
Bit
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 00bis 03 und den Unterprogrammen 000 bis 003 zugeordnet. Werden keine ein-gangsgesteuerten Interrupts verwendet, können die Unterprogramme 000 bis003 als normale Unterprogramme verwendet werden.
Eingang Interrupt–Nummer
Unterprogramm–nummer
00003 0 000
00004 1 001
00005 2 002
00006 3 003
Eingangsauffrischung Wird keine Eingangsauffrischung über den IORF–Befehl durchgeführt, ist derEingangssignal-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 auchfür den Status des Interrupt-Eingangsbits, das den Interrupt aktiviert hat.
In dem Interrupt-Unterprogramm für den Eingangs-Interrupt 0 wird IR 00000beispielsweise erst nach der Auffrischung der E/A gesetzt. In diesem Fall kannder ständig gesetzte Systemmerker SR 25313 anstelle der Eingangs-AdresseIR 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, inwelchem Zyklus der Interrupt empfangen wird. Das Signal muss für 200 µs oderlänger anliegen, um erfasst zu werden.
Hauptprogramm
Interrupt–Programm
Interrupt–Eingangssignal
Hauptprogramm
Verwenden Sie die folgenden Befehle, um eingangsgesteuerte Interrupts in die-sem Modus zu programmieren.
Maskierung/Demaskieren von eingangsgesteuerten InterruptsDurch den INT(89)-Befehl können Maskierungen eingangsgesteuerter Inter-rupts in der erforderlichen Weise gesetzt bzw. zurückgesetzt werden.
(@)INT(89)
000
000
D
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)
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
75
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 InterruptsWechselt 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 derAufhebung 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
D
Werden die dem Interrupt 0 bis 3 entsprechenden D-Bits 0 bis3 auf 1 gesetzt, werden die gespeicherten Interrupts gelöscht.
0: Interrupt–Speicherung wird nicht gelöscht.1: Interrupt–Speicherung wird gelöscht.
Lesen des Maskierungszustands Über den INT(89)-Befehl kann der Zustand der Maskierung gelesen werden.
(@)INT(89)
002
000
D
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 (E–gesteuerte Interrupt–Verarbeitung freigegeben)1: Maske ist definiert: (E–gesteuerte Interrupt–Verarbeitung gesperrt)
ProgrammbeispielIst der Eingang 00003 (Interrupt 0) auf EIN gesetzt, wird sofort das Interrupt–Programm mit der Unterprogrammnummer 000 aufgerufen. Eingänge werdenin DM 6628 auf 0001 gesetzt.
SBN (92) 000
RET (93)
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
Interrupt–Programm
@INT(89)
000
000
#000E
Maskierung/Demaskierung der eingangsgesteuerten Interrupts.
Demaskiert 00003 (eingangsgesteuerterInterrupt 0), maskiert andere.
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 Interruptgeneriert, wird das Hauptprogramm unterbrochen und das Interrupt–Programmwird ausgeführt. Es können Signale bis zu 1 kHz gezählt werden.
Sollwert
Hauptprogramm
Interrupt–Programm
Hauptprogramm
Interrupt–Eingangssignal
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
76
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 inder folgenden Tabelle gezeigt. Die Sollwerte liegen zwischen 0000 undFFFF (0 bis 65535). Der Wert 0000 deaktiviert den Zählbetrieb, bis einneuer 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ählermodusnicht 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 spezifiziertenSollwerte festgelegt bzw. erneuert werden, wobei die Maskierung dabeiaufgehoben wird.
(@)INT(89)
003
000
D
Werden die den eingangsgesteuerte Interrupts entspre-chenden D-Bits 0 bis 3 zurückgesetzt, wird der Sollwertfestgelegt und Interrupts sind zulässig.
0: Der in der Zähler-Betriebsart spezifizierte Sollwert wird festgelegt und die Maskierung aufgehoben.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 Deaktivierungdes Zählers fortgesetzt.
Hinweis 1. Wird der INT(89)-Befehl während des Zählvorgangs aufgerufen, wird derIstwert auf den Sollwert gesetzt. Für einen Interrupt müssen Sie daher diedifferenzierte Form des Befehls verwenden, andernfalls wird kein Interruptausgelö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 derSollwert durch wiederholte Ausführung des INT(89)-Befehls geändert wer-den.
Die Maskierung von eingangsgesteuerte Interrupts im Zählmodus erfolgt aufdieselbe 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 imeingangsgesteuerten Interrupt-Modus gelöscht.
Zähler–Istwert im ZählmodusWerden 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.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
77
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 unmittelbarnach 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 verwendetwerden.
ProgrammbeispielWird der Eingang 00003 (Interrupt–Nummer 0) 10 mal auf EIN gesetzt, wird so-fort das Interrupt–Programm mit der Unterprogrammnummer 000 aufgerufen.Die folgende Tabelle zeigt, wo die Sollwerte und Istwerte –1 des Zählers gespei-chert werden. Eingänge wurden in DM 6628 auf 0001 gesetzt.
Interrupt Wort mit Sollwert
Wort mitIstwert–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
MOV(21)
#000A
240
SBN (92) 000
RET (93)
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
Interrupt–Programm
Setzt den Sollwert auf 10. (0000 bis FFFF)
Wort, das den Sollwert enthält (SR 240)
@INT(89)
003
000
#000E
Sollwert des Zählers auffrischen.
Frischt nur den Sollwert von 00003(eingangsgesteuerter Interrupt 0) auf.
2-3-3 Maskierung aller InterruptsMit 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 Interruptstemporär maskiert werden müssen. INT(89)-Befehle müssen immer paarweiseeingesetzt werden. Der erste INT(89)-Befehl dient zur Maskierung und derzweite zur Ausmaskierung von Interrupts.
Innerhalb von Interrupt-Routinen kann INT(89) nicht zur (Aus)Maskierung allerInterrupts verwendet werden.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
78
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.
Mit Hilfe des INT(89)-Befehls können Interrupts folgendermaßen ausmaskiertwerden:
(@)INT(89)
200
000
000
2-3-4 Intervall–Zeitgeber–gesteuerte InterruptsDie 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 inSchritten 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-Zeitgeberim Monoflop–Modus.
(@)STIM(69)
C1
C2
C3
C1: Intervall–Zeitgeber, Monoflop–Modus (000)
C2: Zeitgeber-Sollwert (erste Wortadresse)
C3: Unterprogramm-Nummer (4-stelliger BCD-Wert): 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 9999C2 + 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms)
Nach Ablauf des in Wort C2 + 1 spezifizierten Zeitintervalls dekrementiertder 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 C2) × (Inhalt von Wort C2 + 1) x 0,1 ms = (0,5 bis 319.968ms)
2. Wird für C2 eine Konstante spezifiziert:
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).
Ausmaskierung vonInterrupt–Signalen
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
79
Zeitgeber-Start im zeitgesteuerten(SCHEDULED)–Interrupt-ModusEntsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeberim zeitgesteuerten Interrupt–Modus.
(@)STIM(69)
C1
C2
C3
C1: Intervall–Zeitgeber, zeitgesteuerter Interrupt–Modus (003)
C2: Zeitgeber-Sollwert (erste Wortadresse)
C3: Unterprogrammnummer (4-stelliger BCD-Wert): 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 9999C2 + 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms)
Im Monoflop-Modus besitzen die Einstellungen die gleiche Bedeutung. Imzeitgesteuerten Interrupt–Modus wird der Zeitgeber-Istwert jedoch auf denSollwert zurückgesetzt und die Dekrementierung beginnt nach dem Aufrufdes Unterprogramms. In diesem Modus werden die Interrupts in festen Zeit-intervallen bis zum Betriebsende wiederholt.
2. Wird für C2 eine Konstante spezifiziert:
Die Einstellungen entsprechen denen des Monoflop–Modus. Interruptswerden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des ZeitgebersEntsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit desZeitgebers.
(@)STIM(69)
C1
C2
C3
C1: Lesen der abgelaufenen Zeit (006)
C2: Führendes Wort von Parameter 1
C3: Parameter 2
C2: Anzahl der Abwärtszähler-Dekrementierungen (4-stelliger BCD-Wert) C2 + 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)C3: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelligerBCD-Wert; Einheit: 0,1 ms)
Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführungdieses Befehls wird folgendermaßen berechnet:
[(Inhalt von Wort C2) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
Anhalten von ZeitgebernEntsprechend parametriert hält der STIM(69)-Befehl den Intervall-Zeitgeber an.
(@)STIM(69)
C1
000
000
C1: Anhalten des Intervall–Zeitgebers (010)
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
80
In diesem Beispiel wird 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 auf EINgesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung der In-terrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV(21)
#0006
DM 0011
SBN (92) 023
RET (93)
@STIM(69)
000
DM 0010
#0023
00005
Interrupt–Programm
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 bis0320)
Startet den Intervall–Zeitgeber im Monoflop–Modus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005auf EIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitungder Interrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV (21)
#0010
DM 0011
SBN (92) 023
RET (93)
@STIM(69)
003
DM 0010
#0023
00005
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
Interrupt–Programm
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 bis0320)
Startet den Intervall–Zeitgeber im zeitgesteuertenModus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
2-3-5 Schnelle Zähler–InterruptDie 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. Derschnelle Zähler kann mit Eingangs–Interrupts kombiniert werden, um eine Be-reichsvergleichs–Steuerung oder Zielwert–Steuerung durchzuführen, die nichtvon der Zykluszeit der SPS beeinflußt wird.
Signale des Schnellen Zählers können über die CPU–Eingänge 00000 bis00002 angelegt werden.
Anwendungsbeispiel(Monoflop–Modus)
Anwendungsbeispiel(zeitgesteuerter Modus)
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
81
CPM1–SPS
0000
0
0000
1
24VDCN.C.
0000
2
CPM1A–SPS
Modus Verwendung Eingangs–beschaltung
Zähl–frequenz
Zähl–bereich
Steuerverfahren
Aufwärts/Abwärts
00000: EingangPhase A00001: EingangPhase B00002: EingangPhase Z
Phasendifferenz,4 Eingänge
max. 2,5 kHz –32767bis32767
Zielwert–Steuerung:Bis zu 16 Zielwerte und Interrupt–Unterprogrammnummern könnengespeichert werden.
Bereichsvergleichs–Steuerung:Bis zu 8 Sätze oberer Grenzwerte,
Inkrement–ierung
00000: Zähleingang00001: Sehen Sie denHinweis00002:Rücksetzeingang
IndividuelleEingänge
max. 5,0 kHz 0bis65535
Bis zu 8 Sätze oberer Grenzwerte,unterer Grenzwerte und Interrupt–Unterprogrammnummern könnengespeichert werden.
Hinweis Im Inkrementmodus kann der Eingang 00001 als normaler Eingang verwendetwerden. Bei der Software–Rücksetzung kann Eingang 00002 als normaler Ein-gang verwendet werden. Wird der Eingang für das Z–Phasensignal und dieSoftware–Rücksetzung verwendet, wird der Eingangsstatus von 00002 auch imE/A–Speicher reflektiert.
Die folgenden Einstellungen müssen in DM6642 erfolgen, wenn die SchnelleZähler–Funktion der CPM1/CPM1A verwendet wird.
DM 6642Bi
Funktion EinstellungenBits Inkremen–
tierungAufwärts/Abwärts
Nichtverwen–
det
00 bis 03 Zählermodus:
0: Aufwärts/Abwärts4: Inkrementierung
4 0 0 oder 4
04 bis 07 Gewählte Rücksetzung:
0: Z–Phase + Software– Rücksetzung1: Software–Rücksetzung
0 oder 1 0 oder 1 0 oder 1
08 bis 15 Verwendung des Zählers:
0: Nicht verwendet1: Verwendet
01 01 00
Einstellungen desSchnellen Zählers
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
82
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 Stellenwerden in SR 249 und die unteren vier Stellen in SR 248 gespeichert).
Modus Zähl–bereich
Aufwärts/Abwärts F003 2767 bis 0003 2767 (–32.767 bis 32.767)Die äußerste linke Stelle in SR 248 enthält das Vorzeichen. “F”bedeutet negativ, “0” positiv.
Inkrementierung 0000 0000 bis 0006 5535 (0 bis 65.535)
Ein Überlauf tritt auf, wenn der Zählwert die obere Grenze im Zählbereich über-schreitet und ein Unterlauf tritt auf, wenn der Zählwert unter der unteren Grenzeim Zählbereich liegt.
Fehler Inkrementierung Aufwärts/Abwärts Istwert
Überlauf Tritt ein, wenn derZählerstand bei 65.535inkrementiert wird.
Tritt ein, wenn derZählerstand bei 32.767inkrementiert wird.
0FFF FFFF
Unterlauf --- Tritt ein, wenn derZählerstand bei –32.767dekrementiert wird.
FFFF FFFF
Verarbeitung Zwei Signalarten eines Impuls–Encoders können angelegt werden. Der für denSchnellen Zähler verwendete Zählmodus wird von dem Signaltyp bestimmt. DerZä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 einZ-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.
1 2 3 4 5 6 7 8 7 6 5 4 3 2 1 0 –1 –2 1 2 3 4
Phase A
Phase B
Aufwärts/Abwärtsmodus
Zählen
Inkrementierung Dekrementierung
Zählen
Impuls–eingang
Inkrementiermodus
Nur Inkrementierung
EIN
AUS
EIN
AUS
EIN
AUS
Hinweis Eines der folgenden Verfahren sollte immer zur Rücksetzung des Zählers beieinem Neustart verwendet werden. Der Zähler wird am Anfang bzw. Ende einerProgrammausführung automatisch zurückgesetzt.
Die folgenden Signalübergänge werden als Vorwärts-Zählimpulse (Inkremen-tierung) ausgewertet: ansteigende Flanke Phase A - ansteigende Flanke PhaseB - 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 - fallendeFlanke 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-
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
83
hung entspricht der vierfachen Zählerauflösung. Wählen Sie einen Encoder aufder Grundlage des zählbaren Bereiches.
Rücksetz–ModusZur Rücksetzung des Zähler-Istwertes (d.h. Istwert auf 0) kann eines der beidenfolgenden 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.
(1) (2) (3) (4) (5)Phase-Z
25200
CPU–Verarbeitung
1 Zyklus
Nicht zurück-gesetzt
Nicht zurück-gesetzt
Nicht zurückgesetztRücksetzung Rücksetzung
E/A–Auffrischung
Progr–Ausführg
Progr–Ausführg
Progr–Ausführg
Progr–Ausführg
Progr.–Ausführg
Progr.–Ausführg
Allgemeine VerarbeitungKommunikationsservice, usw.
Z–Phasensignal + Software–Rücksetzung
Nr. Betriebszeitverhalten Rücksetzung
(1) Z–Phasensignal wird eingeschaltet,wenn SR 25200 ausgeschaltet wird.
Keine Rücksetzung
(2) Z–Phasensignal wird innerhalb einesZyklus eingeschaltet, nachdem SR25200 eingeschaltet wird.
Keine Rücksetzung
(3) Z–Phasensignal wird nach dem Ab-lauf von mindestens einem Zyklus,nachdem SR 25200 eingeschaltetwurde, aktiviert.
Rücksetzung auf steigender Flankevon Phase–Z.
(4) Z–Phasensignal wird innerhalb einesZyklus eingeschaltet, nachdem SR25200 ausgeschaltet wird.
Rücksetzung auf steigender Flankevon Phase–Z.
(5) SR25200 wird eingeschaltet, wennZ–Phasensignal eingeschaltet ist.
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 Encodereine Umdrehung abgeschlossen hat.
Zählen mit der Schnellen Zähler-Interrupt–FunktionFü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 Hilfeeines der beiden nachfolgend beschriebenen Verfahren. In der Vergleichsta-belle werden Vergleichsbedingungen (für den Vergleich mit dem Istwert) undInterrupt-Routinen–Nummern gespeichert.
Zähler–Istwert:
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
84
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 Vergleichstabelle abgelegt. Ist derIstwert größer oder gleich dem unteren Grenzwert und kleiner oder gleichdem oberen Grenzwert, wird das spezifizierte Interrupt-Unterprogrammausgeführt.
Der Ist–Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, in derdie Zielwerte in der Vergleichstabelle gespeichert sind und Interrupts werdengeneriert, wenn der Zählwert dem Zielwert entspricht. Nachdem der Zählwertallen Zielwerten in der Tabelle entsprochen hat, wird der Zeiger auf den erstenZielwert in der Tabelle eingestellt; der Vergleich beginnt wiederum mit dem Ist–Zählwert, bis die zwei Werte gleich sind.
Zielwert 1
Zielwert 2
Zielwert 3
Zielwert 4
Zielwert 5
VergleichstabelleZählen
Vorgabewert
Zielwert
Interrupts
1 2 3 4 5
Der Ist–Zählwert wird auf zyklische Art gleichzeitig mit allen Bereichen vergli-chen, und, basierend auf den Ergebnissen der Vergleiche, werden Interruptsgeneriert.
Bereichseinstellung 1
Bereichseinstellung 2
Bereichseinstellung 3
Bereichseinstellung 4
Vergleichstabelle
Zählwert
1 3
0
2 4
Hinweis Bei der Durchführung von Zielwertvergleichen darf der INI–Befehl nicht wieder-holt verwendet werden, um den Ist–Zählwert zu ändern und den Vergleichsvor-gang zu beginnen. Die Interrupt–Funktion arbeitet evtl. nicht richtig, wenn derVergleich sofort nach der Änderung des Istwertes durch das Programm begon-nen wird. (Der Vergleich kehrt automatisch zum ersten Zielwert zurück, sobaldein 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 Einstellungim Setup. Vergleiche mit Hilfe der Vergleichstabelle und die Generierung vonInterrupts erfolgen erst nach dem CTBL(63)-Befehl.
Der Schnelle Zähler wird beim Einschalten der SPS und zu Beginn des Betriebsauf ”0” zurückgesetzt.
Der Istwert des Schnellen Zählers wird in SR 248 und SR 249 gespeichert.
Zielwertvergleiche
Bereichsvergleiche
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
85
Steuerung der Schnellen Zähler-Interrupts
1, 2, 3... 1. Verwenden Sie den CTBL(63)-Befehl, um die Vergleichstabelle in derCPM1/CPM1A zu speichern und um Vergleiche zu starten.
(@)CTBL(63)
P
C
TB
C: (3-stelliger BCD-Wert)000: Die Zieltwertetabelle wird erstellt und der
Vergleich gestartet.001: Die Bereichstabelle wird erstellt und der
Vergleich gestartet.002: Nur die Zielwertetabelle wird erstellt003: Nur die Bereichstabelle wird erstellt
TB: Anfangswort der Vergleichstabelle
Wird C auf 000 gesetzt, erfolgen Vergleiche nach dem Zielübereinstim-mungs-Verfahren. Wird C auf 001 gesetzt, werden Bereiche miteinanderverglichen. Die Vergleichstabelle wird gespeichert und die Vergleiche wer-den anschließend vorgenommen. Während der Vergleiche werdenschnelle Interrupts, entsprechend der Vergleichstabelle, ausgeführt. SehenSie die Beschreibung des CTBL(63)–Befehls in Kapitel 7 Befehlssatz fürweitere 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.
Wird C auf 002 gesetzt, erfolgen Vergleiche nach dem Zielwertübereinstim-mungs-Verfahren. Wird C auf 003 gesetzt, werden Bereiche miteinanderverglichen. In beiden Fällen wird die Vergleichstabelle gespeichert, Verglei-che werden jedoch nicht ausgeführt. Hierzu müssen Sie den INI(61)-Befehlverwenden.
2. Um Vergleiche zu beenden, führen Sie den INI(--)-Befehl, wie nachfolgenddargestellt, 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 denINI(61)-Befehl aus.
Eine gespeicherte Tabelle bleibt während des Betriebs (d.h. während derProgrammausführung) in der CPM1/CPM1A bis zur Speicherung einer an-deren Tabelle erhalten.
Istwerte lesenZum 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.
Lesen von SR 248 und SR 249Der Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in SR 248und SR 249 gespeichert. Bei negativen Werten ist die äußerst linke Stelle auf Fgesetzt.
Äußerst linke 4 Ziffern
Äußerst rechte 4 Ziffern
Aufwärts/Abwärts–Zählmodus
Inkrementier–Zählmodus
SR 249 SR 248 F0032767 bis 00032767(-32767)
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 Wortenals Hilfsbits eingesetzt werden.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
86
Verwendung des PRV(62)-BefehlsDer PRV(62)-Befehl dient zum Lesen des Istwertes des Schnellen Zählers.
(@)PRV(62)
000
000
P1
P1: Führendes Wort des Istwertes
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
Äußerst rechte 4 Ziffern
Aufwärts/Abwärts–modus
Inkrementier–modus
P1+1 P1 F0032767 bis 00032767(-32767)
00000000 bis 00065535
Der Istwert wird bei der Ausführung des PRV(62)-Befehls gelesen.
Änderung des IstwertesDer Istwert des Schnellen Zählers 0 kann auf zwei Arten geändert werden. Dieerste besteht in der Rücksetzung mit Hilfe des entsprechenden Rücksetzver-fahrens. (In diesem Fall wird der Istwert auf 0 zurückgesetzt). Die Verwendungdes 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 desSchnellen Zählers.
Ändern Sie den Zeitgeber-Istwert, wie nachfolgend gezeigt, mit dem INI(61)-Be-fehl.
Äußerst linke 4 Ziffern
Äußerst rechte 4 Ziffern
Aufwärts/Abwärtsmodus Inkrementiermodus
D+1 D F0032767 bis 00032767 00000000 bis 00065535
(@)INI(61)
000
002
D
D: Führendes Wort zur Speicherung der Istwert-Änderungsdaten
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 demZielwertübereinstimmungs-Verfahren.
Die Vergleichsbedingungen (Zielwerte und Zählrichtungen) werden in der Ver-gleichstabelle mit den Unterprogrammnummern gespeichert. Es können bis zu16 Zielwerte gespeichert werden. Das entsprechende Unterprogramm wirdausgefü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: 2DM 0001 1000 Zielwert 1: 1000DM 0002 0000DM 0003 0030 Interrupt–Unterprogramm–Nr. für Vergleich 1: 30DM 0004 2000 Zielwert 2: 2000DM 0005 0000DM 0006 0031 Interrupt–Unterprogramm–Nr. für Vergleich 2: 31
Anwendungsbeispiel(Inkrementiermodus)
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
87
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)
SBN (92) 030
RET (93)
CTBL(63)
000
000
DM 0000
Speicher–Vergleichstabelle, Zielwertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 30
SBN (92) 031
RET (93)
Interrupt–Programm 31
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 inder Vergleichstabelle mit den Unterprogrammnummern gespeichert. Es kön-nen bis zu 8 Bereiche spezifiziert werden. Das entsprechende Unterprogrammwird ausgeführt, wenn der Istwert des Zählers innerhalb des Bereiches liegt.
Hinweis Spezifizieren Sie immer 8 Bereiche. Werden weniger als 8 Bereiche benötigt,setzen Sie die verbleibenden Unterprogrammnummern auf FFFF. Ein Wert vonFFFF zeigt an, dass kein Unterprogramm ausgeführt wird.
Die folgenden Daten werden für die Vergleichstabelle gespeichert:
DM 0000 1500DM 0001 0000 Untere Grenze 1: 1.500 ZählimpulseDM 0002 3000DM 0003 0000 Obere Grenze 1: 3.000 ZählimpulseDM 0004 0040 Interrupt–Unterprogramm–Nr.: 40DM 0005 7500DM 0006 0000 Untere Grenze 2: 7.500 ZählimpulseDM 0007 0000DM 0008 0001 Obere Grenze 2: 10.000 ZählimpulseDM 0009 0041 Interrupt–Unterprogramm–Nr.: 41DM 0010 0000DM 0011 0000DM 0012 0000DM 0013 0000DM 0014 FFFF Nicht ausgeführt. Interrupt–Unterprog. Bereich 3
. .. . .. . .. . .. . .DM 0035 0000DM 0036 0000DM 0037 0000DM 0038 0000DM 0039 FFFF Nicht ausgeführt. Interrupt–Unterprogr. Bereich 8
Anwendungsbeispiel(Aufwärts/Abwärts–Betrieb)
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
88
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)
SBN (92) 040
RET (93)
CTBL (63)
000
000
DM 0000
Speicher–Vergleichstabelle, Ziel-wertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 40
SBN (92) 041
RET (93)
Interrupt–Programm 41
2-4 SRM1(–V2) Interrupt–FunktionenIn diesem Abschnitt werden die Einstellungen und Verfahren für die Verwen-dung der SRM1(–V2)–Interrupt–Funktionen beschrieben.
2-4-1 Interrupt–FunktionenDie SRM1 (–V2) verfügt wie nachstehend beschrieben, nur über eine Interrupt–Funktion.
Intervall–Zeitgeber–InterruptsDie Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einenIntervall–Zeitgeber ausgelöst.
2-4-2 Intervall–Zeitgeber–InterruptsDie 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 ONESHOT(Monoflop)-Interrupt–Modus wird nach Ablauf der Zeit nur ein Interruptausgelö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,1ms–Schritten eingestellt werden.
Betrieb Der folgende Befehl dient zur Aktivierung und Steuerung des Intervall-Zeitge-bers.
Zeitgeber-Start im ONE–SHOT(Monoflop)-ModusEntsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeberim Monoflop–Interrupt–Modus.
(@)STIM(69)
C1
C2
C3
C1: Intervall–Zeitgeber, Monoflop–Interrupt–Modus (000)
C2: Zeitgeber-Sollwert (erste Wortadresse)
C3: Unterprogrammnummer (4-stelliger BCD-Wert): 0000 bis 0049
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
89
1, 2, 3... 1. Wird für C2 eine Wortadresse eingegeben:
C2: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999C2 + 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit:0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms)
Nach Ablauf des in Wort C2 + 1 spezifizierten Zeitintervalls dekrementiertder 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 C2) × (Inhalt von Wort C2 + 1) x 0,1 ms = (0,5 bis 319.968ms)
2. Wird für C2 eine Konstante spezifiziert:
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–ModusEntsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeberim zeitgesteuerten Interrupt–Modus.
(@)STIM(69)
C1
C2
C3
C1: Intervall–Zeitgeber, zeitgesteuerter Interrupt–Modus (003)
C2: Zeitgeber-Sollwert (erste Wortadresse)
C3: Unterprogrammnummer (4-stelliger BCD-Wert): 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 9999C2 + 1: Zeitintervall jeder Dekrementierung (4-stelliger BCD-Wert; Einheit: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 beginntnach dem Aufruf des Unterprogramms. In diesem Modus werden die Inter-rupts in festen Zeitintervallen bis zum Betriebsende wiederholt.
2. Wird für C2 eine Konstante spezifiziert:
Die Einstellungen sind die gleichen wie für den Monoflop–Modus. Interruptswerden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des ZeitgebersEntsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit desZeitgebers.
(@)STIM(69)
C1
C2
C3
C1: Lesen der abgelaufenen Zeit (006)
C2: Führendes Wort von Parameter 1
C3: Parameter 2
C2: Anzahl der Zähler-Dekrementierungen (4-stelliger BCD-Wert) C2 + 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)C3: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelligerBCD-Wert; Einheit: 0,1 ms)
Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführungdieses Befehls wird folgendermaßen berechnet:
[(Inhalt von Wort C2) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
90
5Anhalten von ZeitgebernEntsprechend parametriert hält der STIM(69)-Befehl den Intervall-Zeitgeber an.
(@)STIM(69)
C1
000
000
C1: Anhalten des Intervall–Zeitgebers (010)
In diesem Beispiel wird nach 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 aufEIN gesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung derInterrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV(21)
#0006
DM 0011
SBN (92) 023
RET (93)
@STIM(69)
000
DM 0010
#0023
00005
Interrupt–Programm
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 bis0320)
Startet den Intervall–Zeitgeber im Monoflop–Inter-rupt–Modus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (nur die un-teren Bytes sind wirksam).
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005 aufEIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitung derInterrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV (21)
#0010
DM 0011
SBN (92) 023
RET (93)
@STIM(69)
003
DM 0010
#0023
00005
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
Interrupt–Programm
Setzt den Sollwert des Abwärts–zählers auf 4. (BCD–Wert: 0000 bis 9999)
Setzt das Dekrementierungs–Zeitgeber–Intervall auf 1,0 ms. (BCD–Wert: 0005 bis0320)
Startet den Intervall–Zeitgeber im zeitgesteuertenInterrupt–Modus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
Anwendungsbeispiel(Monoflop–Modus)
Anwendungsbeispiel(zeitgesteuerter Modus)
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
91
2-5 CPM2A/CPM2C–ImpulsausgabefunktionenDie CPM2A/CPM2C verfügt über zwei Impulsausgänge. Durch spezielle Im-pulsausgabebefehle können diese Ausgänge als zwei einphasige Ausgängeohne Beschleunigung und Bremsung, als Impulsausgänge mit variablen Tast-verhältnis oder als Impulsausgänge mit trapezförmiger Beschleunigung/Brem-sung (ein Impuls– + ein Richtungsausgang oder ein Auf–/Abwärts–Impulsaus-gang) konfiguriert werden. Das Impulsausgabe–Koordinatensystem kann inder SPS–Konfiguration als relativ oder absolut spezifiziert werden.
Zwei Impulsausgabe–Betriebsarten stehen zur Verfügung: die Unabhängig–Betriebsart, bei der die Ausgaben nach einer vorher eingestellten Anzahl vonImpulsen gestoppt werden und die Ununterbrochen–Betriebsart, in der Ausga-ben über einen Befehl gestoppt werden.
Hinweis Zur Impulsausgabe ist es erforderlich, eine CPU–Baugruppe mit Transistoraus-gängen zu verwenden, d.h. entweder eine CPM2AjjCDT–D oderCPM2AjjCDT1–D.
Das folgende Diagramm zeigt die Konfiguration für eine CPM2A; die Konfigura-tion für eine CPM2C ist identisch.
Schrittmotor
Impulsausgänge
Motor–treiber
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
92
Angabe EinphasigeImpuls–
a sgaben ohne
Impulsausgabemit variablemTastverhältnis
Einphasige Impulsausgabe mit trapezförmigemBeschleunigen/Bremsen
ausga ben ohneBeschleun./
Bremsen
Tastver häl tn isImpuls– und
RichtungsausgabeAufwärts/Abwärts–
Impulsausgabe
Ausführungsbefehle PULS(65) undSPED(64)
PWM(––) PULS(65) und ACC(––)
Ausgang 01000 Impulsausgang 0(sehen SieHinweis 1)
Impulsausgang0 (sehen SieHinweis 1)
Impuls–aus–gang 0
Impuls–ausgang
Impuls–aus–gang 0
Rechtslauf–Impuls–ausgabe
01001 Impulsausgang 1(sehen SieHinweis 1)
Impulsausgang1 (sehen SieHinweis 1)
g g
Richtungs–ausgang
g g
Linkslauf–Impuls–ausgabe
Ausgangsfrequenzbereich 10 Hz bis 10 kHz 0,1 bis 999,9 Hz 10 Hz bis 10 kHz 10 Hz bis 10 kHz
Schrittweite 10 Hz 0,1 Hz 10 Hz 10 Hz
Auf–/Abwärtsfrequenz–schritte
--- --- 10 Hz (sehen SieHinweis 2)
10 Hz (sehen SieHinweis 2)
Geschwindigkeitssteigungbeim Start
--- --- 10 Hz 10 Hz
Ausgabebetriebsart Ununterbrochen,Unabhängig
Ununterbrochen Ununterbrochen,Unabhängig
Ununterbrochen,Unabhängig
Impulsanzahl 1 bis 16777215 --- ±1 bis 16777215 ±1 bis 16777215
Tastverhältnis (sehen Sie Hinweis 3)
50% 0 bis 100% 50% 50%
Steuer–verfah–
Bewegungs–spezifikation
Ja Keine Ja Ja
ren Beschleun.–/Brems–spezifikation
Keine Keine Ja Ja
Anfangs–Geschwindig–keitsspezifikation
Keine Keine Ja Ja
Tastverhältnis–spezifikation
Keine Ja Keine Keine
Hinweis 1. Bei einphasigen Impulsausgaben können die Impulsausgänge 0 und 1 un-abhängig von einander angesteuert werden.
2. Impulsraten können in Einheiten von 10 Hz pro 10 ms erhöht oder verringertwerden.
3. Die aktuelle Impulsausgaben werden von der Transistorausgangs–EIN–Ansprechzeit (max. 20µs) und –AUS–Ansprechzeit (max. 40µs) beein-flusst.
Die folgende Tabelle zeigt die Beziehungen zwischen dem Schnellen Zählerund anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
Schneller Zähler
Synchronisierte Impulssteuerung Wird verwendet.
Eingangsgesteuerte Interrupts Kann gleichzeitig verwendet werden.
Intervall–Zeitgeber–gest. Interrupts Kann gleichzeitig verwendet werden.
Schneller Zähler Kann gleichzeitig verwendet werden.
E–gesteuerte Interrupts (Zählmodus) Kann gleichzeitig verwendet werden.
Impulsausgänge Siehe Hinweis.
Eingänge mit Impulsspeicherung Kann gleichzeitig verwendet werden.
Eingangs–Zeitkonstante Kann gleichzeitig verwendet werden.
Uhr Kann gleichzeitig verwendet werden.
Hinweis Die Möglichkeit der gleichzeitigen Ausgabe auf beiden Ausgängen ändert sichnach der Art der Impulsausgabe, wie es in der folgenden Tabelle dargestellt ist.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
93
Kombination Einphasige Impulsausgabe Impuls– undRi h
Aufwärts–/Ab äFestes Tastverhältnis Variables
Tastverhältnis
pRichtungs–
ausgangAbwärts–
Impulsausgang
EinphasigeImpuls–ausgabe
FestesTast–verhältnis
Kann zwei Ausgänge(unabhängig)gleichzeitig ansteuern
Kann nur einenAusgang auf einmalverwenden(unabhängig)
Kann nichtverwendet werden
Kann nichtverwendet werden
VariablesTast–verhältnis
Kann nur einenAusgang auf einmalverwenden(unabhängig)
Kann zwei Ausgänge(unabhängig)gleichzeitig ansteuern
Kann nichtverwendet werden
Kann nichtverwendet werden
Impuls– undRichtungsausgang
Kann nicht verwendetwerden
Kann nicht verwendetwerden
Kann nichtverwendet werden
Kann nichtverwendet werden
Aufwärts/Abwärts–Impulsausgang
Kann nicht verwendetwerden
Kann nicht verwendetwerden
Kann nichtverwendet werden
Kann nichtverwendet werden
Bei einphasigen Impulsausgaben können bis zu zwei Ausgänge gleichzeitig an-gesteuert werden, somit sind zwei Ausgaben, kombiniert mit einem festen undeinem variablen Tastverhältnis, möglich.
Impuls– und Richtungs– und Auf–/Abwärts–Impulsausgaben sind jeweils nurmit einem Ausgang möglich, somit können keine anderen Impulse ausgegebenwerden.
Drei Arten von Impulsausgaben stehen zur Verfügung: einphasige Impulsaus-gaben ohne Beschleunigung und Bremsung, variable Tastverhältnis–Impuls-ausgaben und einphasige Impulsausgaben mit trapezförmiger Beschleunigungund Abbremsung.
Einphasige Impulsausgaben ohne Beschleunigung und Abbremsung
• Frequenz: 10 Hz bis 10 kHz (Einstellung in Schritten von 10 Hz)
• Ausgabeziel: Ausgang 01000 (Wort 010, Bit 00)Ausgang 01001 (Wort 010, Bit 01)(Impulse können gleichzeitig und unabhängig überzwei Ausgänge ausgegeben werden)
• Ausgabebetriebsart Ununterbrochen oder Unabhängig
• Impulsanzahl: 1 bis 16.777.215
• Befehle: PULS(65) und SPED(64)
• Mit PULS(65) wird die Anzahl der Impulse für jeden Ausgang eingestellt(nur in der Betriebsart Unabhängig).
• Mit SPED(64), wird die Ausgabe–Betriebsart und die Zielfrequenz für je-den Ausgang eingestellt sowie Impulse ausgegeben.
Befehlsausführung: PULS(65) + SPED(64) (Unabhängig–Betriebsart)
Anzahl der eingestellten Impulse
Die Ausgabe wird automatisch gestoppt, wenn die spezifizierte Anzahlvon Impulsen ausgegeben wurde.
Befehlsausführung: SPED(64) (Ununterbrochen–Betriebsart)
Unabhängig– Betriebsart
Ununterbrochen–Betriebsart
Impulse werden mit der eingestellten Frequenz weiter ausgegeben, bis dieAusgabe über einen Befehl gestoppt wird.
Impulsausgaben mit variablen Tastverhältnis
• Ausgabeverhältnis 0% bis 100% (Einstellung in Schritten von 1%)
• Frequenz: 0,1 bis 999,9 Hz (Einstellung in Schritten von 0,1 Hz)
• Ausgabeziel: Ausgang 01000 (Wort 010, Bit 00)Ausgang 01001 (Wort 010, Bit 01)(Impulse können gleichzeitig und unabhängig überzwei Ausgänge ausgegeben werden.)
Arten vonImpulsausgaben
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
94
• Ausgabebetriebsart Ununterbrochen
• Befehl: PWM(––)
Mit PWM(––) werden Impulse mit einem variablen Tastverhältnis ausgege-ben.
Befehlsausführung: PWM(––)
Impulse werden mit eingestellter Frequenz ausgegeben, bis die Ausgabe gestoppt wird.
Tastverhältnis (D) = tEINT
tEIN
Einphasige Impulsausgaben mit trapezförmiger Beschleunigung/Ab-bremsung
• Frequenz: 10 Hz bis 10 kHz (Einstellung in Schritten von 10 Hz)
• Beschleunigungs–/Bremsgeschwindigkeit: 10 Hz/10 ms bis 10 kHz/10 ms (Einstellung in
Schritten von 10 Hz)
Impuls– und Richtungsausgaben
• Für Rechtslauf–Ausgabe:Ausgang 01001 (Wort 010, Bit 01) ausgeschaltet.Impulsausgabe über Ausgang 01000 (Wort 010, Bit 00).
• Für Linkslauf–Ausgabe:Ausgang 01001 (Wort 010, Bit 01) eingeschaltet.Impulsausgabe über Ausgang 01000 (Wort 010, Bit 00).
01000Impulsausgaben
01001Richtungsausgänge (AUS: Rechtslauf; EIN: Linkslauf)
Aufwärts/Abwärts–Impulsausgaben
• Für Rechtslauf–Ausgabe:Impulsausgabe über Ausgang 01000 (Wort 010, Bit 00).
• Für Linkslauf–Ausgabe:Impulsausgabe über Ausgang 01001 (Wort 010, Bit 01).
01000Rechtslauf
01001Linkslauf
• Ausgabebetriebsart: Ununterbrochen und Unabhängig
• Impulsanzahl: 1 bis 16.777.215
• Befehle: PULS(65) und ACC(––)
• Mit PULS(65) wird die Anzahl der Impulse eingestellt (nur in der Betriebs-art Unabhängig).
• Mit ACC(––) werden der Ausgabemodus, die Anfangsfrequenz, Zielfre-quenz und Beschleunigungs–/Bremsgeschwindigkeit eingestellt und dieImpulsausgaben werden gestartet. Von Zeitpunkt des Startens der Im-pulsausgaben bis zu deren Abbruch werden diese mit einer konstantenFrequenzänderung geregelt.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
95
Unabhängige Betriebsart
Befehlsausführung: PULS(65) + ACC(––) (Inabhängig–Betriebsart)Impuls–Ausgabefrequenz
Ziel–frequenz
Anfangs–frequenz
0 Hz
BeschleunigungStart
ACC(––)
Abbremsung
Zeit
In der Unabhängig–Betriebs–art wird die Abbremsung mitder beim Start gültigen Be-schleunigungs–/Bremsge-schwindigkeit durchgeführt.
Ununterbrochen–Betriebsart
Befehlsausführung: ACC(––) (Ununterbrochen–Betriebsart)Impuls–Ausgabefrequenz
Zielfrequenz 2
0 Hz
Beschleun./Brems.Start
ACC(––)
Zeit
Zielfrequenz 3
Zielfrequenz 1
Beschleun./Brems. Beschleun./Brems.
Beschleunigungoder Bremsung
ACC(––)
Beschleunigungoder Bremsung
ACC(––)
2-5-1 Einsatz von einphasigen Impulsausgaben ohne Beschleunigungund Bremsung (festes Tastverhältnis)
Wählen Sie den Impulsausgang Impulsausgang 0 oder 1
Verdrahten Sie die Ausgänge Ausgangsadressen: 01000 und 01001
SPS–Konfiguration (DM 6629) Istwert–Koordinatensystem für Impulsausgang 0 und 1
Erstellen Sie ein Kontaktplan–Programm
PULS(65) Einstellung der Anzahl von Ausgabeimpulsen.
SPED(64) Impulsausgabe ohne Beschleunigung und Abbremsung.
INI(61): Beenden der Impulsausgaben und Änderung des Impulsausgabe–Istwert.
PRV(62): Lesen des Impulsausgabe–Istwertes und des Status.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
96
Einphasige Impulsausgaben
PULS (65)
SETPUL-SES–Befehl
SPED (64) SPEEDOUTPUT–Befehl
Impulsausgang 0Impulsausgang 1
Relative oder absoluteImpulse spezifizieren.Impulsausgabe Soll-wert (8–stelliger BCD–Wert)
INI (61)
BETRIEBS–ARTEN-STEUE-RUNGS–Befehl
Impulsausgaben beendenImpulsausgabe–Istw. ändern
SPS–Konfig.DM 6629,Bits 00 bis 03,Bits 04 bis 07
Ausgabebetriebsart Ununterbrochenoder UnabhängigZielfrequenz: 10 Hz bis 10 kHzImpulsausgaben beginnen
Einmal/Zyklus Einmal/Zyklus Sofort
Impulsausgabe–Zustand
AR 11 AR 12
Impulsausg.–Istw.
SR 228 SR 229
SR 230 SR 231
PRV(62) SCHNELLER ZÄHLER–ISTWERT LESEN–Befehl
Impulsausg.–Istw. lesen
Impulsausg.abe–Statuslesen
Auffrischung
Impulsausgang 0 oder 1 auswählen.
Ausgang Impulsausgang
01000 0
01001 1
Verdrahten Sie die CPM2A–Ausgänge, wie es in der folgenden Abbildung ange-zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-gegeben werden.)
Ausgang 01000: Impulsausgang 0 (einphasige Ausgabe)
Ausgang01001: Impulsausgang 1 (einphasige Ausgabe)
Auswahl desImpulsausgangs
Verdrahtung derAusgänge
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
97
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ange-zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-gegeben werden.)
01000: Impulsausgang 0 (einphasige Ausgabe)
01001: Impulsausgang 1 (einphasige Ausgabe)
A.–steckverbinder
Nehmen Sie die folgenden Einstellungen in der SPS–Konfiguration vor.
Wort Bits Funktion Ein–stellung
DM 6629 00 bis03
Impulsausgang 0–Istwert–Koordinatensystem
0: RelativesKoordinatensystem
1: Absolutes
Entweder 0oder 1
04 bis07
Impulsausgang 1–Istwert–Koordinatensystem
1: AbsolutesKoordinatensystem
DM 6642 08 bis15
Schnelle Zähler–Einstellung
00: Wird nichtverwendet
01: Verwendung alsSchneller Zähler
02: Verwendung füreine synchronisierteImpulssteuerung (10 bis 500 Hz)
03: Verwendung füreine synchronisierteImpulssteuerung (20 Hz bis 1 kHz)
04: Verwendung füreine synchronisierteImpulssteuerung (300 Hz bis 20 kHz)
Entweder00 oder 01
Stellen Sie sicher, das absolute Koordinatensystem (1) zu einstellen, wenn ab-solute Impulse mit PULS(65) spezifiziert werden.
Eine synchronisierte Impulssteuerung kann nicht gleichzeitig verwendet wer-den.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPM_A/CPM_C eingeschaltet wird.
Die folgende Tabelle enthält Befehlsfunktionen, die sich auf Impulsausgabenohne Beschleunigung und Abbremsung (festes Tastverhältnis) beziehen.
SPS–Konfiguration
Kontaktplan–Programmierung
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
98
Befehl Steuerung Betrieb
(@)PULS(65) Impulsanzahl einstellen Spezifiziert die Anzahl der Impulse, diein der Unabhängig–Betriebsartausgegeben werden sollen.
(@)SPED(64) Spezifiziert die Frequenzund beginnt dieImpulsausgabe
Spezifiziert die Frequenz der Ausgängein der Unabhängig– oder in der Un–unterbrochen–Betriebsart und beginntdie Impulsausgabe.
Frequenzänderung Ändert die Frequenz der Ausgaben inder Unabhängig– oderUnunterbrochen–Betriebsart.
Impulsausgabenbeenden
Beendet die Impulsausgaben (durchÄnderung der Geschwindigkeit bis aufeine Frequenz von 0 Hz).
(@)INI(61) Impulsausgabenbeenden
Beendet die Impulsausgaben.
Impulsausgabe–Istwertändern
Ändert den Impulsausgabe–Istwert.
(@)PRV(62) Impulsausgabe–Istwertlesen
Liest den Impulsausgabe–Istwert.
Impulsausgabe–Statuslesen
Liest den Impulsausgabe–Status.
Die folgende Tabelle zeigt, welche Befehle für die Impulsausgabe ohne Be-schleunigung und Abbremsung ausgeführt werden können.
PULS (65) SPED (64) INI (61) PRV(62) ACC(––) PWM(––)
Ununterbrochen–Betriebsart
Nein Ja (sehen SieHinweis 2)
Ja (Sehen SieHinweis 1)
Ja Nein Nein
UnabhängigeBetriebsart
Ja Ja (sehen SieHinweis 2)
Ja (Sehen SieHinweis 1)
Ja Nein Nein
Hinweis 1. Dieser Befehl kann nur zum Ändern des Istwertes ausgeführt werden, wäh-rend Impulsausgaben gestoppt sind. Der Istwert kann nicht geändert wer-den, während Impulse ausgegeben werden. Stellen Sie sicher, die Impuls-ausgabe zuerst zu beenden, wenn der Istwert geändert werden muss.
2. Dieser Befehl kann nur für die Änderung der Frequenz und das Beendender Impulsausgabe verwendet werden. Er kann nicht für das Umschaltenzwischen der Unabhängig– und der Ununterbrochen–Betriebsart verwen-det werden.
Die folgende Tabelle enthält Worte und Bits, die sich auf Impulsausgaben ohneBeschleunigung und Abbremsung (festes Tastverhältnis) beziehen.
Wort Bits Name Inhalt
228 00 bis15
Impulsausgabe–Istwert 0,äußerst rechte 4 Stellen
Kann nicht als Arbeitsmerkerverwendet werden, auch wennk i I l ä229 00 bis
15Impulsausgabe–Istwert 0,äußerst linke 4 Stellen
,keine Impulsausgängeverwendet werden.
230 00 bis15
Impulsausgabe–Istwert 1,äußerst rechte 4 Stellen
231 00 bis15
Impulsausgabe–Istwert 1,äußerst linke 4 Stellen
252 04 Rücksetzen desImpulsausgabe 0–Istwertes
Löschen des Istwertes 0, wennauf EIN.
05 Rücksetzen desImpulsausgabe 1–Istwertes
Löschen des Istwertes 1, wennauf EIN.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
99
Wort InhaltNameBitsAR 11 12 Impulsausgabe 0 Istwert
Überlauf/UnterlaufEIN: AufgetretenAUS: Normal
13 Einstellung der Anzahl derImpulse für Impulsausgabe 0
EIN: Eingestellt (überPULS(65))AUS: Nicht eingestellt
14 Impulsausgabe fürImpulsausgang 0 beendet
EIN: Beendet (durch SPED(64))AUS: Nicht beendet
15 Impulsausgabe fürImpulsausgang 0 aktiv
EIN: Aktiv (durch SPED(64))AUS: Beendet
AR 12 12 Impulsausgabe 1 IstwertÜberlauf/Unterlauf
EIN: AufgetretenAUS: Normal
13 Einstellung der Anzahl derImpulse für Impulsausgabe 1
EIN: Einstellung (überPULS(65))AUS: Nicht eingestellt
14 Impulsausgabe fürImpulsausgang 1 beendet
EIN: Beendet (durch SPED(64))AUS: Nicht beendet
15 Impulsausgabe fürImpulsausgang 0 aktiv
EIN: Aktiv (durch SPED(64))AUS: Beendet
Einstellung der Anzahl der ImpulseSpezifiziert die Anzahl der Impulse, die in der Unabhängig–Betriebsart ausge-geben werden sollen.
Schnittstellenbezeichner (000: Impulsausgang 0; 010: Impulsausgang 1)
Art der Impulsausgabe (000: rel. Impulse; 001: abs. Impulse) (sehen Sie den Hinweis)
Anfangswort der Einstellung für die Anzahl der Impulse
Äußerst rechte 4 ZiffernÄußerst linke 4 Ziffern
Anzahl der Impulse (äußerst rechte, äußerst linke Stellen)
Speichern der Anzahl der einzustellenden Impulse.
96,777,215 bis 16,777,215
Negative Werte werden durch Setzen des äußerst linken Bits ausgedrückt.
Art der Impulsausgabe
000: Relative Impulse (Sollwert der Anzahl der Impulse = Anzahl der übertragenen Impulse)
001: Absolute Impulse (Sollwert der Anzahl der Impulse = gegenwärtiger Istwert auf dem absoluten Koordinatensystem, d.h. Impulsausgabe–Istwert + Anzahl der übertragenen Impulse)*
*Absolute Impulse können nur über PULS(65) spezifiziert werden, wenn das Istwert–Koordi–natensystem in der SPS–Konfiguration auf Absolutes Koordinatensystem eingestellt wird.
(@)PULS(65)
S
D
A
n
n+1
Frequenz einstellen und Impulsausgabe beginnenFrequenz ändernDiese Funktionen stellen die Impulsausgangsnummer, den Ausgabemodus so-wie die Frequenz ein und beginnen die Impulsausgabe. Sie können ebenfallsdazu verwendet werden, bei aktiver Impulsausgabe die Frequenz zu ändern.
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Betriebsart (000: Unabhängig; 001: Ununterbrochen)
Zielfrequenz–Datenwort
Zielfrequenz
Einstellen der Zielfrequenzdaten.
#0001 bis #1000 (4–stelliger BCD–Wert): 10 Hz bis 10 kHz
#0000: Stoppen der Impulsausgabe
(@) SPED(64)
A
M
Z
Z
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
100
Impulsausgabe–Istwert ändern)
Rücksetzen des Impulsausgabe–IstwertesDiese Funktion ändert den Impulsausgabe–Istwert. Der Istwert kann über SR25204 und SR 25205 auch gelöscht werden.
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Steuerfunktion (004: Impulsausgabe–Istwert ändern)
Anfangswort der zu ändernden Istwert–Daten
Äußerst rechte 4 ZiffernÄußerst linke 4 Ziffern
Istwert–Daten ändern (äußerst rechte, äußerst linke Stellen)Speichern der zu ändernden Istwert–Daten.
96.777.215 bis 16.777.215
Negative Werte werden durch Setzen desäußerst linken Bits ausgedrückt.
(@)INI(61)
A
004
C2
C2
C2+1
Der Impulsausgabe–Istwert kann nur geändert oder neu eingestellt werden,während Impulsausgaben gestoppt sind. Überprüfen Sie, ob die Impulsaus-gabe aktiv–Merker (AR 1115 und AR 1215) ausgeschaltet sind.
Impulsausgaben beendenDiese Funktion beendet die Impulsausgaben.
Mit SPED(64)
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Betriebsart (000: Unabhängig; 001: Ununterbrochen)Zielfrequenz–Datenwort
#0000 Spezifiziert eine Frequenz von 0 Hz.
(@) SPED(64)
A
M
Z
Z
Mit INI(61)
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
Steuerbezeichnung (003: Impulsausgaben beenden)Fest: 000
(@)INI(61)
A
003
000
Neben der Ausführung der oben aufgeführten Befehle ist es ebenfalls möglich,die Impulsausgaben durch den Abbruch des Betriebs (PROGRAM–Betriebsart)zu beenden.
Impulsausgabe–Istwert lesenDiese Funktion liest den Impulsausgabe–Istwert.
Einsatz eines Befehls
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Steuerbezeichnung (003: Impulsausgabe–Istwert lesen)
Anfangswort zur Speicherung des Impulsausgabe–Istwertes
Impulsausgabe–Istwert (äußerst rechte u. linke Stellen)
Die zu lesenden Istwert–Daten werden hier gespeichert.
96.777.215 bis 16.777.215Negative Werte werden durch Setzen desäußerst linken Bits ausgedrückt.
Äußerst rechte 4 ZiffernÄußerst linke 4 Ziffern
(@)PRV(62)
A
003
Z
Z
Z+1
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
101
Einsatz der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Istwert für Im-pulsausgang 0 in den Worten 228 und 229 und der Impulsausgabe–Istwert fürImpulsausgang 1 in den Worten 230 und 231 gespeichert.
Impulsausgang 0 Impulsausgang 1
Wort 228
Wort 229
Wort 230
Wort 231
Istwert (äußerst rechtes Wort) Istwert (äußerst rechtes Wort)
Istwert (äußerst linkes Wort) Istwert (äußerst linkes Wort)
Die Worte 228 bis 231 werden in jedem Zyklus aufgefrischt, somit kann zu einerbestimmten Zeit eine Diskrepanz zum genauen Istwert auftreten.
Die Worte 228 bis 231 können nicht als Arbeitsworte eingesetzt werden, auchwenn keine Impulsausgänge verwendet werden.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte228 bis 231 zum gleichen Zeitpunkt aufgefrischt.
Impulsausgabe–Status lesenDiese Funktion liest den Impulsausgabe–Status.
Einsatz eines Befehls
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
Steuerbezeichnung (001: Impulsausgabe–Status lesen)Wort zur Speicherung des Impulsausgabe–Status
Impulsausgabe aktiv0: Beendet1: Ausgabe aktiv
Impulsausg.–Istwert Über–/Unterlauf0: Normal 1: Unter– o. Überlauf aufgetreten
Anzahl der Impulse0: Nicht eingestellt1: Eingestellt
Impulsausgabe beendet0: Nicht beendet1: Beendet
(@)PRV(62)
A
001
Z
Impulsausgabe–Status0: Konst. Geschw.; 1: Beschl./Abbremsen
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Status für Im-pulsausgang 0 in AR 11 und der für Impulsausgang 1 in AR 12 gespeichert.
AR 11:Impulsausgang 0AR 12:Impulsausgang 1
Impulsausgabe beendet0: Nicht beendet1: Beendet
Impulsausgabe aktiv0: Beendet1: Ausgabe aktiv Impulsausgabe–Istwert–Über–/Unterlauf
0: Normal1: Unter– oder Überlauf ist aufgetreten
Anzahl der Impulse0: Nicht eingestellt1: eingestellt
Impulsausgabe–Status: 0: Konstante Geschwindigkeit; 1: Beschleunigen/Abbremsen
Hinweis Die Merker in AR 11 und AR 12 werden nur einmal in jedem Zyklus aufgefrischt;somit können die Werte in diesen Worten nicht dem eigentlichen Status in jedemZyklus widerspiegeln, aber die Merker in AR 11 und AR 12 werden aufgefrischt,wenn der Status mit PRV(62) gelesen wird.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
102
Verhältnis zwischen Status und BetriebUnabhängig–Betriebsart (ohne Beschleunigung und Bremsung)
Frequenz
PULS(65)–Ausführung
SPED(64)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
Ununterbrochen–Betriebsart
Frequenz
SPED(64)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
INI(61)–Ausführung
Beenden der Ausgabe in der Unabhängigen–Betriebsart (ohne Beschleunigung und Bremsung)
Frequenz
PULS(65)–Ausführung
SPED(64)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
INI(61)–Ausführung
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
103
AnwendungsbeispielePositionierung
BeschreibungIn diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviertwird, 100 Impulse über Ausgang 01000 (Impulsausgang 0) mit einer Frequenzvon 60 Hz ausgegeben.
Frequenz
60 Hz
Ausführungsbedingung (00005)
Anzahl der Impulse
VerdrahtungVerbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird.
Motortreiber
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgendenAbbildung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mitNPN–Transistorausgängen verwendet.
Motortreiber
24 VDC
A.–steckverbinder
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
104
SPS–Konfiguration
Stellt das Koordinatensystem für Impulsausgang 0 auf Relativ ein.
Auf eine andere außer einer synchronisierten Im-pulssteuerung einstellen.
(Auf 01jj einstellen, wenn ein schneller Zählerverwendet wird.)
DM 6629 0
15 0
DM 6642 0 0
Programmierung
00005 (Ausführungsbedingung)
Erfasst die Aktivierung der Ausführungsbedingung
Einstellung der Anzahl der ImpulseImpulsausgang 0Relative ImpulseAnfangswort für Impuls-sollwertdaten
DM 0000DM 0001
Anzahl der Im-pulse: 100
Stellt die Frequenz ein und beginnt die ImpulsausgabeImpulsausgang 0Unabhängige BetriebsartFrequenz: 60 Hz
PULS(65)
SPED(64)
(13)
Tipp–BetriebBeschreibungIn diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviertwird, Tippimpulse mit einer Frequenz von 100 Hz ausgegeben, entweder vonAusgang 01000 (Impulsausgang 0) oder 01001 (Impulsausgang 1). Die Aus-gabe wird gestoppt, wenn die Ausführungsbedingung (00005) deaktiviert wird.Die Umschaltung zwischen Ausgang 01000 (Impulsausgang 0) und 01001 (Im-pulsausgang 1) wird mittels des Richtungseingangs (00006) ausgeführt.
Frequenz(Richtung)
Ausführungsbedingung (00005)
Richtungsspezifikationseingang (00006)
Zeit
VerdrahtungVerbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird.
Motortreiber
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
105
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit NPN–Trans-istorausgängen verwendet.
Motortreiber
24 VDC
A.–steckverbinder
Hinweis Sehen Sie das technische Handbuch für Einzelheiten über die Verkabelung derAusgänge.
SPS–Konfiguration
Stellt das Koordinatensystem der Impulsausgänge 0 und 1 auf Relativ ein.
Auf eine andere Betriebsart außer einer synchronisiertenImpulssteuerung einstellen.
(Auf 01jj einstellen, wenn ein schneller Zähler verwendetwird.)
DM 6629 0
15 0
DM 6642 0 0
0
Programmierung
00005 (Ausführungsbedingung)
Erfasst die Aktivierung der Ausführungsbedingung.
Erfasst die Deaktivierung der Ausführungsbedingung.(Richtungsspez.eingang)
Ausgabe in Rechtslauf–RichtungImpulsausgang 0Ununterbrochen–BetriebsartAusgangsfrequenz: 100 Hz
Ausgabe in Linkslauf–Richtung
Impulsausgang 1Ununterbrochen–BetriebsartAusgangsfrequenz: 100 Hz
Beendet die Impulsausgabe über die Ausgänge 0 und 1.
SPED (64)
INI (61)
INI (61)
SPED (64)
(13)
(14)
010
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
106
2-5-2 Verwendung der Impulsausgänge mit variablem Tastverhältnis
Wählen Sie den Impulsausgang Impulsausgang 0 oder 1
Verdrahten Sie die Ausgänge Ausgangsadressen: 01000 und 01001
Erstellen Sie ein Kontaktplan–Programm
PWM(––): Einstellung des Frequenz– und Tastverhältnisses.
INI(61): Beenden der Impulsausgaben.
PRV(62): Lesen des Impulsausgabe–Status.
Impulsausgaben mit variablem Tastverhältnis
PWM(––)
Zielfrequenz: 0,1 bis 999,9 Hz
Ausgabeverhältnis 0 bis 100%
Beginn der Impulsausgaben
INI (61)
Impulsausgaben beenden
Impulsausgang 0Impulsausgang 1
BETRIEBSARTEN-STEUERUNGS–Be-fehl
Einmal pro Zyklus
Einmal pro Zyklus
Sofort
Impulsausgabe–Zustand
AR 11 AR 12
PRV(62)
SCHNELLER ZÄH-LER–ISTWERT LE-SEN–Befehl
Impulsausgabe–Status lesen
IMPULS MIT VARIA-BLEM Tastverhältnis–Befehl
(Hinweis: Das Tastverhältnis istdas Verhältnis der EIN–Zeit zur(EIN+AUS)–Zeit der Impuls-kette)
(01000 oder 01001 könnenverwendet werden.)
Impulsausgang 0 oder 1 auswählen.
Ausgang Impulsausgang
01000 0
01001 1
Verdrahten Sie die CPM2A Ausgänge, wie es in der folgenden Abbildung ge-zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-gegeben werden.)
Ausgang 01000: Impulsausgang 0 (einphasige Ausgabe)
Ausgang 01001: Impulsausgang 1 (einphasige Ausgabe)
Auswahl desImpulsausgangs
Verdrahtung derAusgänge
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
107
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ange-zeigt wird. (Impulse können unabhängig über die Impulsausgänge 0 und 1 aus-gegeben werden.)
01000: Impulsausgang 0 (einphasige Ausgabe)
01001: Impulsausgang 1 (einphasige Ausgabe)
A.–steckverbinder
Nehmen Sie die folgenden Einstellungen in der SPS–Konfiguration vor.
Wort Bits Funktion Einstellung
DM 6642 08 bis 15 SchnellerZähler–Einstellung
00: Wird nicht verwendet
01: Verwendung als SchnellerZähler
02: Verwendung für einesynchronisierteImpulssteuerung (10 bis 500 Hz).
03: Verwendung für einesynchronisierteImpulssteuerung (20 Hz bis 1 kHz).
04: Verwendung für einesynchronisierteImpulssteuerung (300 Hz bis 20 kHz).
Entweder00 oder 01
Eine synchronisierte Impulssteuerung kann nicht gleichzeitig verwendet wer-den.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPM_A/CPM_C eingeschaltet wird.
Die folgende Tabelle zeigt die Befehlsfunktionen, die sich auf die Impulsaus-gabe mit variablem Tastverhältnis beziehen.
Befehl Steuerung Betrieb(@)PWM(––) Impulsausgabe mit
variablem TastverhältnisEinstellen der Frequenz und desTastverhältnisses und Beginn derImpulsausgaben.
Ändern desTastverhältnisses
Ändert das Tastverhältnis des Impulses,während bereits eine Impulsausgabemit variablem Tastverhältnis stattfinden.
(@)INI(61) Impulsausgabe beenden Beendet die Impulsausgabe.
(@)PRV(62) Impulsausgabe–Statuslesen
Liest den Impulsausgabe–Status(während der Impulsausgabe).
Die folgende Tabelle zeigt, welche Befehle für die PWM–Impulsausgabe ohneBeschleunigung und Abbremsung ausgeführt werden können.
SPS–Konfiguration
Kontaktplan–Programmierung
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
108
PULS(65)
SPED(64)
INI (61) PRV(62) ACC(––) PWM(––)
Nein Nein Ja (sehen SieHinweis 1)
Ja Nein Ja (sehen SieHinweis 2)
Hinweis 1. Dieser Befehl kann nur zum Beenden der Impulsausgabe verwendet wer-den.
2. Dieser Befehl kann nur zur Änderung des Tastverhältnisses verwendet wer-den. Die Frequenz kann nicht geändert werden, während Impulse ausgege-ben werden. Stellen Sie sicher, die Impulsausgabe zuerst zu beenden,wenn die Frequenz geändert werden muss.
Die folgende Tabelle enthält die Worte und Bits, die mit der Impulsausgabe mitvariablem Tastverhältnis zusammenhängen.
Wort Bit Funktion Inhalt
AR 11 15 Impulsausgabe fürImpulsausgang 0 aktiv
EIN: Aktiv (durch SPED(64),ACC(––) oder PWM(––))AUS: Beendet
AR 12 15 Impulsausgabe fürImpulsausgang 1 aktiv
EIN: Aktiv (durch SPED(64),ACC(––) oder PWM(––))AUS: Beendet
Impulsausgabe mit variablem TastverhältnisTastverhältnis ändernDiese Funktionen stellten den Ausgang (01000, 01001) auf die Ausgabe derImpulse, der Frequenzen und des Tastverhältnises ein und beginnen die Im-pulsausgabe. Durch die Änderung der Tastverhältniseinstellung und eine er-neute Ausführung von PWM(––) ist es ebenfalls möglich, das Tastverhältnis zuändern, während bereits eine Impulsausgabe mit variablem Tastverhältnis statt-finden.
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Zielfrequenz–Datenwort
ZielfrequenzEinstellen der Zielfrequenzdaten.
#0001 bis #9999 (4–stelliger BCD–Wert): 0,1 bis 999,9 Hz
Tastverhältnis–Datenwort
Ausgabemerker
Einstellen des Tastverhältnisses
#0000 bis #0100 (4–stelliger BCD–Wert): 0 bis 100%
(@PWM(––)
A
F
T
F
T
Die Frequenz kann nicht geändert werden, während Impulse ausgegeben wer-den.
Impulsausgabe beendenDiese Funktion beendet die Impulsausgabe.
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
Steuerbezeichnung (003: Impulsausgabe beenden)Fest: 000
(@)INI(61)
A
003
000
Hinweis Impulsausgaben können ebenfalls beendet werden, indem die SPS in die PRO-GRAM–Betriebsart umgeschaltet wird.
Impulsausgabe–Status lesenDiese Funktion liest den Impulsausgabe–Status.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
109
Einsatz eines Befehls
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)Steuerbezeichnung (001: Impulsausgabe–Status lesen)
Wort zur Speicherung des Impulsausgabe–Status
Impulsausgabe aktiv
0: Beendet
1: Ausgabe aktiv
(@)PRV(62)
A
001
D
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Status für Im-pulsausgang 0 in AR 1115 und der für Impulsausgang 1 in AR 1215 gespeichert.
AR 11: Impulsausgang 0
AR 12: Impulsausgang 1
Impulsausgabe aktiv
0: Beendet1: Ausgabe aktiv
Hinweis Die Merker in AR 1115 und AR 1215 werden nur einmal in jedem Zyklus aufge-frischt; somit können die Werte in diesen Worten nicht den eigentlichen Status injedem Zyklus widerspiegeln, aber die Merker in AR 1115 und AR 1215 werdenaufgefrischt, wenn der Status mit PRV(62) gelesen wird.
Verhältnis zwischen Status und BetriebBetriebsart Ununterbrochen (Impulsausgabe mit variablem Tastverhältnis)
Frequenz
PWM(––)–Ausführung
INI(61)–Ausführung
Ausgabe aktiv
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
AnwendungsbeispielBeschreibungIn diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviertwird, Impulse mit variablem Tastverhältnis über Ausgang 01000 (Impulsaus-gang 0) mit einer Frequenz von 100 Hz ausgegeben. Das Tastverhältnis kannjetzt mit dem Daumenradschalter 0 geändert werden.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
110
VerdrahtungVerdrahten Sie die CPM2A mit Motortreiber und Daumenradschalter, wie es inder folgenden Abbildung gezeigt wird.
Motortreiber
Verdrahten Sie die CPM2C mit Motortreiber und Daumenradschalter, wie es inder folgenden Abbildung gezeigt wird. In diesem Fall wird eine CPU–Baugruppemit NPN–Transistorausgängen verwendet.
Motortreiber
24 VDC
Daumenrad-schalter
E.–steckverbind.A.–steckverbinder
Hinweis Sehen Sie das technische Handbuch für Einzelheiten zur Verkabelung.
SPS–Konfiguration
Ein Schneller Zähler wird nicht verwendet. (Auf eine andere außer einer synchronisiertenImpulssteuerung einstellen.)
DM 6642 0 0
15 0
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
111
Programmierung (CPM2A–Beispiel)
00005 (Ausführungsbedingung)
Aktiviert bei fallender Flanke der Ausführungsbedingung.
Unterbricht die impulsausgabe 0
Halbiert den Wert des Werteingabe–Potis 0 auf einen Wert zwischen 0 und 100.Wert in SR 250 (Werteingabe–Poti 0 in der Serie CPM2A) (sehen Sie den Hinweis)Den Wert durch 2 dividieren.Tastverhältnis–Einstellung
Impulsausgabe mit variablem Tastverhältnis
Impulsausgang 0Ausgangsfrequenz: 100 HzTastverhältnis–Einstellung
DIV(33)
PWM(––)
INI (61)
(14)
Hinweis Die CPM2C verfügt über keine Wert-eingabe–Potis. Spezifizieren Sie fürexterne Einstellungen das Ein-gangswort, dass mit dem Daumen-radschalter verbunden ist.
2-5-3 Impulsausgaben mit trapezförmiger Beschleunigung andAbbremsung
Wählen Sie den Impulsausgang Impulsausgang 0
Verdrahten Sie die Ausgänge Ausgangsadressen: 01000 und 01001
SPS–Konfiguration (DM 6629) Istwert–Koordinatensystem für Impulsausgang 0:
Erstellen Sie ein Kontaktplan–Programm
PULS(65) Einstellung der Anzahl von Ausgabeimpulsen.
ACC(––): Steuerung von Impulsausgängen mit trapezoidal Beschleunigung und Abbremsung
INI(61): Beenden der Impulsausgaben und Änderung des Impulsausgabe–Istwertes.
PRV(62): Lesen des Impulsausgabe–Istwertes und des Status.
Richtungssteuerverfahren auswählen Impuls– und Richtungsausgang oder Aufwärts/Abwärts–Impulsausgang
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
112
Impulsausgaben mit trapezförmiger Beschleunigung and Abbremsung
PULS (65)
SETPUL-SES–Befehl
ACC(––)BESCHLEUNIGUNG–STEUERUNGS–Befehl Impuls, Rechtslauf
Richtung, Linkslauf
Relative/absolute Im-pulse spezifizieren.
Sollwert (8–stell. BCD)
INI (61) BETRIEBSAR-TENSTEUE-RUNGS–Befehl
Impulsausgaben beenden
Impulsausgabe–Istwert ändern
SPS–Konfig.
DM 6629, Bits00 bis 03
Betriebsartenbezeichnung
Zielfrequenz: 10 Hz bis 10 kHz
Impulsausgaben beginnen
Einmal pro Zyklus
Einmal pro Zyklus
Sofort
Impulsausgabe–Zustand
AR 11
Impulsausg.–Istw.
SR 228 SR 229
PRV(62)
SCHNELLER ZÄHLER–ISTWERT LESEN–Befehl
Impulsausg.–Istw. lesenImpulsausgabe–Statuslesen
Spez. Anzahl der Ausg.–impulse
Anfangsfreq.: 0 Hz bis 10 kHz
Beschleunigungs–/Bremsgeschwin-digkeit: 10 ms Erhöhung/Reduzie-rung 10 Hz bis 10 kHz
Wählen Sie das Impulsausgabe–Richtungssteuerverfahren entsprechend demTyp des verwendeten Signals.
Impuls– und Richtungsausgänge Aufwärts/Abwärts–Impulsausgänge
Wählen Sie Impulsausgang 0.
Ausgang Impulsausgang
01000 0
01001
Verdrahten Sie die CPM2A Ausgänge, wie es in der folgenden Abbildung ange-zeigt wird.
Ausgang 01000: Impuls
Ausgang 01001: Richtung
Ausgang 01000: Rechtslauf
Ausgang 01001: Linkslauf
Impuls– und Richtungsausgänge Aufwärts/Abwärts–Impulsausgänge
Auswahl des Richtungs–steuerverfahrens
Auswahl desImpulsausgangs
Verdrahtung derAusgänge
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
113
Verdrahten Sie die CPM2C Ausgänge, wie es in der folgenden Abbildung ge-zeigt wird.
01000: Impuls
01001: Richtung
01000: Rechtslauf
01001: Linkslauf
Impuls– und Richtungsausgänge Aufwärts/Abwärts–Impulsausgänge
A.–steckverbinder A.–steckverbinder
Nehmen Sie die folgenden Einstellungen in der SPS–Konfiguration vor.
Wort Bits Funktion Einstellung
DM 6629 00 bis03
Impuls 0–Istwert–Koordina–tensystem
0: Relativ1: Absolut
Entweder 0oder 1
DM 6642 08 bis15
SchnelleZähler–einstellung
00: Wird nicht verwendet
01: Verwendung als SchnellerZähler
02: Verwendung für einesynchronisierteImpulssteuerung (10 bis 500 Hz).
03: Verwendung für einesynchronisierteImpulssteuerung (20 Hz bis 1 kHz).
04: Verwendung für einesynchronisierteImpulssteuerung (300 Hz bis 20 kHz).
Entweder00 oder 01
Stellen Sie sicher, das absolute Koordinatensystem (1) zu einstellen, wenn ab-solute Impulse mit PULS(65) spezifiziert werden.
Eine synchronisierte Impulssteuerung kann nicht gleichzeitig verwendet wer-den.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPMA/CPMC eingeschaltet wird.
SPS–Konfiguration
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
114
Die folgende Tabelle enthält Befehlsfunktionen, die sich auf Impulsausgabenmit trapezförmiger Beschleunigung und Abbremsung (festes Tastverhältnis)beziehen.
Befehl Steuerung Funktion
(@)PULS(65) Einstellen der Anzahlder Impulse
Spezifiziert die Anzahl der Impulse, diein der Unabhängig–Betriebsartausgegeben werden sollen.
(@)ACC(––) Spezifiziert die Frequenzund beginnt dieImpulsausgabe
Stellt die Zielfrequenz, Startfrequenzund Beschleunigungs–/Abbrems–geschwindigkeit für Ausgänge in derUnabhängig– oder Ununterbrochen–Betriebsart ein und beginnt dieImpulsausgaben.
Frequenzänderung Ändert die Frequenz während derImpulsausgabe in der Ununterbrochen–Betriebsart durch Beschleunigung oderAbbremsung entsprechend derspezifizierten Beschleunigungs–/Abbremsgeschwindigkeit.
Impulsausgabenbeenden
Verlangsamt die Impulsausgaben bis zueinem Halt entsprechend der spezifi–zierten Beschleunigungs–/ Abbrems–geschwindigkeit.
(@)INI(61) Beendet die Impuls–ausgabe (abgebremsterStopp)
Beendet die Impulsausgaben.
Impulsausgabe–Istwertändern
Ändert den Impulsausgabe–Istwert.
(@)PRV(62) Impulsausgabe–Istwertlesen.
Liest den Impulsausgabe–Istwert.
Impulsausgabe–Statuslesen
Liest den Impulsausgabe–Status.
Die folgende Tabelle zeigt die Befehle, die für die Impulsausgabe mit trapezför-miger Beschleunigung und Abbremsung ausgeführt werden können.
Betriebsart PULS (65) SPED (64) INI (61) PRV(62) ACC(––)# PWM(––)
Ununterbrochen Nein Nein Ja (sehen SieHinweis 1)
Ja Ja Nein
Unabhängig Ja Nein Ja (sehen SieHinweis 1)
Ja Ja (sehen SieHinweis 2)
Nein
Hinweis 1. Dieser Befehl zur Istwertänderung kann nur ausgeführt werden, währenddie Impulsausgabe gestoppt ist. Der Istwert kann nicht geändert werden,während Impulse ausgegeben werden. Stellen Sie sicher, die Impulsaus-gabe zuerst zu beenden, wenn der Istwert geändert werden muss.
2. Dieser Befehl kann nur für die Änderung der Frequenz und das Beendender Impulsausgabe verwendet werden. Er kann nicht für das Umschaltenzwischen der Unabhängig– und der Ununterbrochen–Betriebsart verwen-det werden. Zusätzlich kann ACC(––) nicht während der bereits laufendenBeschleunigung oder Abbremsung abgearbeitet werden.
Die folgende Tabelle enthält Worte und Bits, die sich auf Impulsausgaben mittrapezförmiger Beschleunigung und Abbremsung (festes Tastverhältnis) bezie-hen.
Kontaktplan–Programmierung
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
115
Wort Bits Funktion Bedeutung
228 00 bis15
Impulsausgang 0–Istwert, äußerstrechte 4 Stellen
Kann nicht alsArbeitsmerkerverwendet werden,
229 00 bis15
Impulsausgang 0–Istwert, äußerst linke4 Stellen
verwendet werden,auch wenn keineImpulsausgängeverwendet werden.
252 04 Rücksetzen des Impulsausgang0–Istwertes
Löschen des Istwertes0, wenn auf EIN.
AR 11 11 Impulsausgabe–Status fürImpulsausgang 0
EIN: Beschleunigenoder AbbremsenAUS: KonstanteGeschwindigkeit
12 Impulsausgang 0–IstwertÜberlauf/Unterlauf
EIN: AufgetretenAUS: Normal
13 Impulsanzahl für Impulsausgang 0 EIN: EingestelltAUS: Nicht eingestellt
14 Impulsausgabe über Impulsausgang 0beendet
EIN: BeendetAUS: Nicht beendet
15 Impulsausgabe über Impulsausgang 0aktiv
EIN: Aktiv (durchSPED(64), ACC(––)oder PWM(––))AUS: Beendet
Einstellung der Anzahl der ImpulseSpezifiziert die Anzahl der Impulse, die in der Unabhängig–Betriebsart ausge-geben werden sollen.
Fest auf 000: Ausgang 0
Art der Impulsausgabe (000: relative Impulse; 001: absolute Impulse) (sehen Sie den Hinweis)Anfangswort der Einstellung für die Anzahl der Impulse
äußerst rechte 4 Ziffernäußerst linke 4 Ziffern
Anzahl der Impulse (äußerst rechte, äußerst linke Stellen)
Speichern der Anzahl der einzustellenden Impulse.
96.777.215 bis 16.777.215
Negative Werte werden durch Setzen desäußerst linken Bits ausgedrückt.
Art der Impulsausgabe
*Absolute Impulse können nur über PULS(65) spezifiziert werden, wenn das Istwert–Koordinaten-system in der SPS–Konfiguration auf Absolutes Koordinatensystem eingestellt wird.
(@)PULS(65)
000
D
A
A
A+1
000: Relative Impulse (Sollwert der Anzahl der Impulse = Anzahl der übertragenen Impulse)
001: Absolute Impulse (Sollwert der Anzahl der Impulse = gegenwärtiger Istwert auf dem absol. Koordinatensystemd.h. Impulsausgabe–Istwert + Anzahl der übertragenen Impulse)*
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
116
Frequenz einstellen und Impulsausgabe beginnenFrequenz ändernDiese Funktionen stellen Ausgabemodus, Anfangsfrequenz, Zielfrequenz undBeschleunigungs–/Abbremsgeschwindigkeit ein und beginnen die Impulsaus-gaben. Sie können auch zur Änderung der Frequenz verwendet werden, in demdie Beschleunigung oder Abbremsung mit der spezifizierten Beschleuni-gungs–/Abbremsgeschwindigkeit durchgeführt wird, während bereits Impuls-ausgaben in der Betriebsart Ununterbrochen stattfinden.
Einstellung der Frequenzen, Beschleunigung/Abbremsung und Beginnder Impulsausgabe in der Betriebsart Unabhängig
Fest auf 000: Impulsausgang 0AusgabebetriebsartAnfangswort der Einstellungstabelle
Ausgabebetriebsart
Spezifikation der Ausgabebetriebsart.
000: Aufwärts/Abwärts–Impulsausgaben, Betriebsart Unabhängig
002: Impuls– und Richtungsausgänge, Betriebsart Unabhängig
Beschleunigungs–/Abbremsgeschwindigkeit (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)Zielfrequenz (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz
Anfangsfrequenz (#0000 bis #1000 BCD–Wert: 0 Hz bis 10 kHz)
Speichern Sie die Daten für jede Frequenz.Die Beschleunigungs–/Abbremsgeschwindigkeit ändert sich (–/+) alle 10 ms in derFrequenz.
Impuls–Ausgabefrequenz
Zielfrequenz
Anfangs–frequenz
0 Hz
Anzahl derImpulse
In der Betriebsart Unabhängig werden die Beschleuni-gungs– und Bremspunkte durch die Anzahl der Impulse,die Beschleunigungs–/Abbremsgeschwindigkeit, die Ziel-frequenz und die Startfrequenz bestimmt.
(@)ACC(––)
000
M
A
M
A
A+1
A+2
Zeit
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
117
Einstellung der Frequenz und Beschleunigung/Abbremsung, Beginn derImpulsausgabe und Änderung der Frequenz in der Ununterbrochen–Be-triebsart
Fest auf 000: Impulsausgang 0Ausgabebetriebsart
Anfangswort der Einstellungstabelle
P
Spezifikation der Ausgabebetriebsart.
Impuls–Ausgabefrequenz
Zielfrequenz
Anfangs–frequenz
0 Hz
In der Betriebsart Ununterbrochen werden Impulse bis zum Abbruch mitder Zielfrequenz ausgegeben. Der nächste ACC(––)–Befehl kann nichtwährend der laufenden Beschleunigung oder Abbremsung abgearbeitetwerden
010: Aufwärts/Abwärts–Impuls, Rechtslauf, Betriebsart Ununterbrochen
011: Aufwärts/Abwärts–Impuls, Linkslauf, Betriebsart Ununterbrochen012: Impuls– und Richtung, Rechtslauf, Betriebsart Ununterbrochen
013: Impuls– und Richtung, Linkslauf, Betriebsart Ununterbrochen
(@)ACC(––)
000
M
A
M
A
A+1
A+2
Zeit
Beschleunigungs–/Abbremsgeschwindigkeit (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)Zielfrequenz (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz
Anfangsfrequenz (#0000 bis #1000 BCD–Wert: 0 Hz bis 10 kHz)
Speichern Sie die Daten für jede Frequenz.Die Beschleunigungs–/Abbremsgeschwindigkeit ändert sich (–/+) alle 10 ms inder Frequenz.
Ändern des Impulsausgabe–IstwertesDiese Funktion ändert den Impulsausgabe–Istwert.
Steuerbezeichnung (004: Impulsausgabe–Istwert ändern)
Anfangswort der zu ändernden Istwert–Daten
äußerst rechte 4 Ziffernäußerst linke 4 Ziffern
Istwert–Daten ändern (äußerst rechte, äußerst linke Stellen)
Speichern der zu ändernden Istwert–Daten
96.777.215 bis 16.777.215
Negative Werte werden durch Setzen des äußerstlinken Bits ausgedrückt.
Fest auf 000: Impulsausgang 0
(@)INI(61)
000
004
A2
A2
A2+1
Hinweis Der Impulsausgabe–Istwert kann nur geändert werden, während die Impuls-ausgabe gestoppt ist.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
118
Impulsausgabe beendenImpulsausgabefrequenz herunterfahren und beendenDiese Funktionen beenden die Impulsausgaben.
Impulsausgaben beenden
Steuerbezeichnung (003: Impulsausgabe beenden)
Fest auf 000: Impulsausgang 0
Fest auf 000
(@)INI(61)
000
003
000
Beendet die Impulsausgabe mit abgebremsten Stopp
Fest auf 000: SchnittstellendefinitionBetriebsart
Anfangswort der Einstellungstabelle
(@)ACC(––)
000
000
A
A
A+1
A+2
Beschleunigungs–/Abbremsgeschwindigkeit (#0001 bis #1000 BCD–Wert: 10 Hz bis 10 kHz)Zielfrequenz (#0000 bis #1000 BCD–Wert: 0 Hz bis 10 kHz)
Anfangsfrequenz (#0000 bis #1000 BCD–Wert: 0 Hz bis 10 kHz)
Speichern Sie die Daten für jede Frequenz.Die Beschleunigungs–/Abbremsgeschwindigkeit ändert sich (–/+) alle 10 msin der Frequenz.
Hinweis Die Impulsausgaben können ebenfalls beendet werden, indem die SPS in diePROGRAM–Betriebsart umgeschaltet wird.
Impulsausgabe–Istwert lesenDiese Funktion liest den Impulsausgabe–Istwert.
Einsatz eines Befehls
Fest auf 000: Impulsausgang 0Steuerbezeichnung (003: Impulsausgabe–Istwert lesen)
Anfangswort zur Speicherung des Impulsausgabe–Istwertes
Impulsausgabe–Istwert (äußerst rechte und linke Stellen)
Zu lesende Istwert–Daten werden hier gespeichert.
96.777.215 bis 16.777.215Negative Werte werden durch Setzen desäußerst linken Bits ausgedrückt.
äußerst rechte 4 Ziffernäußerst linke 4 Ziffern
(@)PRV(62)
000
003
Z
Z
Z+1
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Istwert für Im-pulsausgang 0 in den Worten 228 und 229 gespeichert.
Impulsausgang 0
Wort 228
Wort 229
Istwert (äußerst rechtes Wort)
Istwert (äußerst linkes Wort)
Hinweis SR 228 und SR 229 werden einmal in jedem Zyklus aufgefrischt; somit entspre-chen die Werte in diesen Worten nicht dem eigentlichen Status während jedesZyklus; SR 228 und SR 229 werden jedoch sofort aufgefrischt, wenn ihr Statusmit PRV(62) eingelesen wird.
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
119
Impulsausgabe–Status lesenDiese Funktion liest den Impulsausgabe–Status.
Einsatz eines Befehls
Fest auf 000: Impulsausgang 0
Steuerbezeichnung (001: Impulsausgabe–Status lesen)
Wort zur Speicherung des Impulsausgabe–Status
Impulsausgabe aktiv0: Beendet1: Ausgabe aktiv
Impulsausgabe–Istwert Überlauf/Unterlauf0: Normal 1: Unterlauf oder Überlauf ist aufgetreten
Anzahl der Impulse0: Nicht eingestellt1: Eingestellt
Impulsausgabe beendet0: Nicht beendet1: Beendet
Impulsausgabe–Zustand0: Konstantrate1: Beschleunigen oder Abbremsen
(@)PRV(62)
000
001
D
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Status für Im-pulsausgang 0 in AR 1111 bis AR 1115 gespeichert.
AR 11: Impulsausgang 0
Impulsausgabe beendet0: Nicht beendet1: Beendet
Impulsausgabe aktiv0: Beendet1: Ausgabe aktiv Impulsausgabe–Istwert–Über–/Unterlauf
0: Normal1: Unter– oder Überlauf ist aufgetreten
Anzahl der Impulse0: Nicht eingestellt1: Eingestellt
Impulsausgabe–Zustand0: Konstantrate1: Beschleunigen oder Abbremsen
Hinweis AR 1111 bis AR 1115 werden einmal in jedem Zyklus aufgefrischt; somit entspre-chen die Werte in diesen Worten nicht dem eigentlichen Status während jedesZyklus; diese Merker werden jedoch sofort aufgefrischt, wenn ihr Status mitPRV(62) eingelesen wird.
Verhältnis zwischen Status und BetriebBetriebsart Unabhängig (mit Beschleunigung und Abbremsung)
PULS(65)–Ausführung
ACC(––)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Ausgangszustand(Beschleunigung oder Abbremsung)
Impulsanzahl eingestellt
Zeit
Frequenz
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
120
Betriebsart Ununterbrochen (mit Beschleunigung und Abbremsung 1)
ACC(––)–Ausführung (2)
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
ACC(––)–Ausführung (1)
INI(61)–Ausführung
Frequenz
Ausgangszustand(Beschleunigung oder Abbremsung)
Betriebsart Ununterbrochen (mit Beschleunigung und Abbremsung 2)
ACC(––)–Ausführung (Halt)
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
Frequenz
Ausgangszustand(Beschleunigung oder Abbremsung)
Beenden von Ausgaben in der Betriebsart Ununterbrochen(mit Beschleunigung und Abbremsung 1)
ACC(––)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
INI(61)–Ausführung
Frequenz
PULS(65)–Ausführung
Ausgangszustand(Beschleunigung oder Abbremsung)
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
121
Beenden von Ausgaben in der Betriebsart Ununterbrochen(mit Beschleunigung und Abbremsung 2)
ACC(––)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
Ausgabe beendet
Impulsanzahl eingestellt
Zeit
Frequenz
PULS(65)–Ausführung
ACC(––)–Ausführung
Ausgangszustand(Beschleunigung oder Abbremsung)
AnwendungsbeispielPositionierung
BeschreibungIn diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviertwird, 1000 Impulse über Ausgang 01000 (Impulsausgang 0) in einem trapezoi-dal Beschleunigungs–/Abbremsmuster ausgegeben, wie es im folgenden Dia-gramm dargestellt ist.
Frequenz (Hz)
Ausführungs-bedingung(00005)
Anzahl der Impulse
200
10 Hz10 ms
Beschleunigungs–/Abbremsgeschwindigkeit
500
VerdrahtungVerbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird.
Motortreiber
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
122
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mit NPN–Transis–torausgängen verwendet.
Motortreiber
24 VDC
A–steckverbinder
Hinweis Sehen Sie das technische Handbuch für Einzelheiten der Verkabelung.
SPS–Konfiguration
Stellt das Koordinatensystem für Impulsausgang 0 auf Relativ ein.
Der Schnelle Zähler wird nicht verwendet. (Auf eine andere außer einer synchronisiertenImpulssteuerung einstellen.)
DM 6629 0
15 0
DM 6642 0 0
Programmierung
00005 (Ausführungsbedingung)
Erfasst die Aktivierung der Ausführungsbedingung.
Einstellung der Anzahl der ImpulseImpulsausgang 0Relative ImpulseAnfangswort für Impulssoll-wertdaten Anzahl der Impulse: 1.000
Stellt die Frequenz ein und beginnt die Impulsausgabe.Impulsausgang 0Aufwärts/Abwärts–Impulsausgabe, Betriebsart UnabhängigAnfangswort derEinstellungstabelle
PULS(65)
Beschleunigungs–/Abbremsgeschwindigkeit: 10 Hz/10 msZielfrequenz: 500 HzAnfangs–/Endfrequenz: 200 Hz
ACC(––)
(13)
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
123
Tipp–BetriebBeschreibungIn diesem Beispiel werden, wenn die Ausführungsbedingung (00005) aktiviertwird, Tippimpulse mit einer Frequenz von 100 Hz ausgegeben, entweder vonAusgang 01000 (Rechtlauf) oder 01001 (Linkslauf). Die Ausgabe wird gestoppt,wenn die Ausführungsbedingung (00005) deaktiviert wird. Wie im folgendenDiagramm gezeigt, wird die Tippfrequenz beim Starten und Stoppen des Be-triebs erhöht und reduziert. Die Umschaltung zwischen Ausgang 01000(Rechtslauf) und 01001 (Linkslauf) wird mittels des Richtungseingangs (00006)ausgeführt.
Frequenz (Hz)
Ausführungs–bedingung (00005)Richtungs–bezeichner (00006)
Zeit 10 Hz10 ms
Beschleunigungs–/Abbremsgeschwindigkeit
VerdrahtungVerbinden Sie die CPM2A mit dem Motortreiber, wie es in der folgenden Abbil-dung gezeigt wird.
Motortreiber
Verbinden Sie die CPM2C mit dem Motortreiber, wie es in der folgendenAbbildung gezeigt wird. In diesem Fall wird eine CPU–Baugruppe mitNPN–Transistorausgängen verwendet.
Motortreiber
24 VDC
A.–steckverbinder
2-5AbschnittCPM2A/CPM2C–Impulsausgabefunktionen
124
Hinweis Sehen Sie das technische Handbuch für Einzelheiten der Verkabelung.
SPS–Konfiguration
Stellt das Koordinatensystem für Impulsausgang 0 auf Relativ ein.
Der Schnelle Zähler wird nicht verwendet. (Auf eine andere außer einer synchronisiertenImpulssteuerung einstellen.)
DM 6629 0
15 0
DM 6642 0 0
Programmierung
00005 (Ausführungsbedingung)
Erfasst die Aktivierung der Ausführungsbedingung.
Erfasst die Deaktivierung der Ausführungsbedingung.(Richtungseingang)
Ausgabe in Rechtslauf–RichtungImpulsausgang 0Betriebsart Ununterbrochen, Auf/Abwärtsimpulse, Rechtslauf–RichtungAnfangswort der Einstellungstabelle
Ausgabe in Linkslauf–RichtungImpulsausgang 0
ACC(––)
Betriebsart Ununterbrochen, Auf/Abwärtsimpulse, Linkslauf–RichtungAnfangswort der Einstellungstabelle
Beschleunigungs–/Abbremsgeschwindigkeit: 10 Hz/10 msZielfrequenz: 500 Hz
Anfangsfrequenz: 200 Hz
Abgebremster HaltImpulsausgang 0
Anfangswort der Einstellungstabelle
Beschleunigungs–/Abbremsgeschwindigkeit: 10 Hz/10 msZielfrequenz: 0 Hz
(Richtungseingang)
ACC(––)
ACC(––)
(13)
(14)
(14)
AR 1115
2-6AbschnittCPM1A–Impulsausgabefunktionen
125
2-6 CPM1A–ImpulsausgabefunktionenCPM1A–SPS–Systeme mit Transistorausgängen besitzen eine Impulsausga-befunktion, die Impulse von 20 Hz bis 2 kHz (einphasig) ausgeben können. IR01000 oder IR 01001 können für eine Impulsausgabe ausgewählt werden undder Impuls kann entweder in der Betriebsart Ununterbrochen ausgegeben wer-den, in der die Ausgabe durch einen Befehl gestoppt werden kann oder in derBetriebsart Unabhängig, bei der die Ausgabe nach einer vorher eingestelltenAnzahl von Impulse gestoppt wird (1 bis 16.777.215).
Sehen Sie das Technische Handbuch der CPM1A für weitere Informationenüber die Ausgangs– und Schnittstellenverdrahtung.
Ununterbrochen–Betriebsart
Unabhängig–Betriebsart
Impulse werden mit einer spezifizierten Frequenz ausgegeben, bis die Ausgabe gestoppt wird.
Die Ausgabe wird automatisch gestoppt, wenn die spezifi-zierte Anzahl der Impulse ausgegeben wurde.
Spezifizierte Anzahl der Impulse
Steuereingang
Motor–regelung
Rechts–/Linkslauf–SteuerausgangImpulsausgabe(einphasige Ausgabe)IR 01000 oder IR 01001
Schrittmotor
Hinweis 1. Die CPM1A verwendet eine einphasige Impulsausgabe. Das Steuersignalfür die Drehrichtung (Rechtslauf/Linkslauf) für den Motortreiber muss perProgramm ausgegeben werden.
2. Stellen Sie sicher, eine CPU–Baugruppe mit Transistorausgängen zu ver-wenden.
2-6AbschnittCPM1A–Impulsausgabefunktionen
126
2-6-1 Programmbeispiel für die Betriebsart UnunterbrochenIn diesem Beispielprogramm beginnt die Impulsausgabe über IR 01000, wennEingang IR 00004 aktiviert wird; die Ausgabe wird beendet, wenn Eingang IR00005 eingeschaltet wird.
SPED(64) kann verwendet werden, um die Impulsausgabe zu stoppen. WirdSPED(64) zu diesem Zweck verwendet, muss #0000 (Konstante oder Wortin-halt) als Impulsfrequenz spezifiziert werden.
@SPED(64)
001
000
#010000005 (Impulsausgabe–
Haltbedingung)@INI(61)
003
000
000
Beginnt der Impulsausgabe.
Beendet die Impulsausgabe.
00004 (Impulsausgabe–Bedingung)
Ausgabe von 01000
Ununterbrochen–Betriebsart
Impulsfrequenz: 1 kHz
2-6-2 Programmbeispiel in der Betriebsart UnabhängigIn diesem Beispielprogramm beginnt die Impulsausgabe über IR 01000, wennEingang IR 00004 aktiviert wird; die Ausgabe wird beendet, nachdem die spezi-fizierte Anzahl der Impulse ausgegeben wurde. Die Anzahl der Impulse wird inDM 0100 und DM 0101 spezifiziert.
@PULS(65)
000
000
DM 0100
@SPED(64)
000
000
#0100
Einstellung der Anzahl der Impulse
Beginn der Impuls-ausgabe.
Einstellung der Anzahl der Impulse
00004 (Impulsausgabe–Bedingung)
00004 (Impulsausgabe–Bedingung)
Unabhängig– Betriebsart
Impulsfrequenz: 1 kHz
2-6-3 Verwendung der Impuls–AusgabebefehleVerwenden Sie, wie nachfolgend gezeigt, PULS(65) vor dem Beginn der Im-pulsausgabe in der Unabhängig–Betriebsart, um die Anzahl der auszugeben-den Impulse einzustellen. Diese Einstellung ist nicht für die Ununterbrochen–Betriebsart erforderlich.
@PULS(65)
000
000
N
Spezifizieren Sie in N die Anfangswort–Adresse der Worte, in denen die Anzahlder Impulse eingestellt wird. Speichern Sie die Anzahl der Impulse in den Wor-ten N und N+1 als achtstelliger BCD–Wert, mit den äußerst linken vier Stellen inN+1 und den äußerst rechten vier Stellen in N.
Nehmen Sie die Einstellung innerhalb eines Bereichs von 00000001 bis16777215 (BCD) vor.
Einstellung der Anzahlder Impulse
2-6AbschnittCPM1A–Impulsausgabefunktionen
127
Legen Sie mit SPED(64) den Ausgang für die Impulsausgabe fest (IR 01000oder IR 01001), die Betriebsart (Unabhängig/Ununterbrochen) und die Impuls-frequenz.
@SPED(64)
M
P
F
P (3–stellig, BCD–Wert) 000: Ausgaben an IR 01000010: Ausgaben an IR 01001
M (3–stellig, BCD–Wert) 000: Unabhängig–Betriebsart001 Ununterbrochen–Betriebsart
F (4–stellig, BCD–Wert) Spezifizieren Sie für die Anfangs–Impuls–ausgabefrequenz eine Konstante oder einen Wortinhalt. Folgende Werte und Frequenzen wurden spezifiziert:Spezifizierter Wert: 0002 bis 0200Frequenzeinstellung: 20 bis 2.000 Hz
Hinweis 1. Die Impulsausgabe kann jeweils nur über einen Ausgang erfolgen.
2. Wird die Impulsausgabe in der Unabhängig–Betriebsart begonnen, wird dieAnzahl der Impulse gelesen, wenn SPED(64) ausgeführt wird. PULS(65)kann nicht dazu verwendet werden, die Anzahl der Impulse während der Im-pulsausgabe zu ändern.
2-6-4 Ändern der FrequenzVerwenden Sie SPED(64), um die Frequenzeinstellung während der Impuls-ausgabe zu ändern. Stellen Sie gleichzeitg die anderen Operanden, außer derFrequenz, auf die gleichen Einstellungen, wie am Anfang der Impulsausgabe,ein.
@SPED(64)
M
P
F
P (3–stellig, BCD) Gleiche als bei Beginn der Impulsausgabe.
M (3–stellig, BCD) Gleiche als bei Beginn der Impulsausgabe.
F (4–stellig, BCD) Spezifizieren Sie für die geänderte Impulsausgabe–frequenz einen Konstante oder einen Wortinhalt. Folgende Werte und Frequenzen wurden spezifiziert:Spezifizierter Wert: 0002 bis 0200Frequenzeinstellung: 20 bis 2.000 Hz
2-6-5 Anhalten der ImpulsausgabeWerden Impulse in der Unabhängig–Betriebsart ausgegeben, bricht die Impuls-ausgabe automatisch nach der Ausgabe der mit PULS(65) spezifizierten An-zahl der Impulse ab. Werden Impulse in der Ununterbrochen–Betriebsart aus-gegeben, kann eine der zwei folgenden Methoden dazu verwendet werden, dieImpulsausgabe anzuhalten.
1 Verwenden Sie SPED(64), um die Frequenz auf 0 zu stellen.2. Verwenden Sie INI(61), um die Impulsausgabe anzuhalten.
Die erste Methode besteht in der Verwendung von SPED(64), um die Impuls-ausgabe anzuhalten, indem Sie die Frequenz mit 0 spezifizieren. Sehen Sie fürEinzelheiten den Abschnitt 2-6-4 Änderung der Frequenz.
Beginn derImpulsausgabe
Verwendung vonSPED(64)
2-6AbschnittCPM1A–Impulsausgabefunktionen
128
Die zweite Methode besteht in der Verwendung von INI(61), um die Impulsaus-gabe wie folgt anzuhalten:
@INI(61)
003
000
000
Verwendung von INI(61)
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
129
2-7 Synchronisierte Impulssteuerung (nur CPM2A/CPM2C)Durch die Kombination der schnellen Zählerfunktion der CPM2A/CPM2C mitder Impulsausgabefunktion kann die Ausgabeimpulsfrequenz als spezifiziertesMehrfaches der Eingabeimpulsfrequenz gesteuert werden.
Hinweis Eine CPU–Baugruppe mit Transistorausgängen ist erforderlich, um die syn-chronisierte Impulssteuerung zu verwenden, d.h. entweder eineCPM2AjjCDT–D oder eine CPM2AjjCDT1–D.
Das folgende Diagramm zeigt die Konfiguration für eine CPM2A; die Konfigura-tion für eine CPM2C ist identisch.
Zählereingabe
Impulseingang00000 oder 00001 Hauptmotor Inkremental–Drehgeber
Motor-treiber
Impulsausgabe 01000oder 01001 (einphasigeAusgabe)
Angabe Eingangsmodusg
Differential–phasen–
Eingangsmodus
Impuls– u.Richtungs–
Eingangsmodus
Auf–/Abwärts–Impulseingangs–
modus
Inkrementmodus
Eingangs–N
00000 Eingang Phase A Zähleingang Rechtslaufeingang Zähleingangg gNummer 00001 Eingang Phase B Richtungseingang Linkslaufeingang (sehen Sie den
Hinweis 1)
Eingangsart Differential–phasen–Eingang (4X)
EinphasigerEingang
EinphasigerEingang
EinphasigerEingang
Eingangsfrequenzbereich 10 bis 500 Hz (Genauigkeit ±1 Hz)20 Hz bis 1 kHz (Genauigkeit ±1 Hz)300 Hz bis 20 kHz (Genauigkeit ±25 Hz) (sehen Sie Hinweis 2)
Ausgangs–nummer
01000 Impulsausgang 0nummer(sehen SieHinweis 3)
01001 Implusausgang 1
Ausgabemethode Einphasige Impulsausgabe
Ausgangsfrequenzbereich 10 Hz bis 10 kHz (Genauigkeit 10 Hz)
Frequenzverhältnis 1% bis 1.000% (kann in 1%–Schritten spezifiziert werden)
SynchronisierterSteuerungszyklus
10 ms
Hinweis 1. Kann als gewöhnlicher Eingang verwendet werden.
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
130
2. Bei 10 kHz oder weniger beträgt die Genauigkeit ±10 Hz.
3. Einer der beiden kann mit SYNC(––) als Ausgang gewählt werden.
Die Richtungen der Impulseingänge werden alle ignoriert. Die Frequenz eineseingehenden Impulses wird, ungeachtet der Richtung, gelesen.
Die folgende Tabelle zeigt die Verhältnisse zwischen synchronisierter Impuls-steuerung und den anderen Funktionen der CPM2A.
Funktion Synchronisierte Impulssteuerung
Synchronisierte Impulssteuerung ---
Interrupt–Eingänge Kann gleichzeitig verwendet werden
Intervall–Zeitgeber–Interrupts Kann gleichzeitig verwendet werden
Schneller Zähler Kann nicht gleichzeitig verwendet werden
Interrupt–Eingänge (Zählmodus) Kann gleichzeitig verwendet werden
Impulsausgänge Kann nicht gleichzeitig verwendet werden
Eingänge mit Impulsspeicherung Kann gleichzeitig verwendet werden
Eingangs–Zeitkonstante Sehen Sie den Hinweis
Uhr Kann gleichzeitig verwendet werden
Hinweis Werden die Eingänge 00000 und 00001 für die Verwendung als synchronisierteImpulssteuereingang spezifiziert, werden die Eingangszeit–Konstanteneinstel-lungen für die beeinflußten Eingänge deaktiviert. Die Eingangszeit–Konstantenbleiben jedoch als Werte für die Auffrischung des relevanten Datenbereichs gül-tig.
Das Verhältnis zwischen Impulseingangs– und Impulsausgabefrequenz istnachfolgend dargestellt.
Impulseingangsfrequenz X Frequenzverhältnis = Ungefähre Impulsausgabefrequenz
10 bis 500 Hz
20 Hz bis 1 kHz
300 Hz bis 20 kHz
Werte werden in Einheiten von 10 Hz abgerundet.
Ein Wert kleiner als 10 Hz wird als 0 Hz angesehen.
Ein Wert größer als 10 kHz wird als 10 kHz angesehen.
Impuls–Ausgabefrequenz(10 Hz bis 10 kHz
Der Skalierfaktor–Steuerzyklus beträgt 10 ms und die Impulsausgabefrequenzwird im Abstand von 10 ms entsprechend der Impulseingangsfrequenz geän-dert.
Frequenz
Zeit
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
131
Verwendung der synchronisierten Impulssteuerung
Wählen Sie die Eingangs–Betriebsart
Differentialphasen–Impulseingangs–, Impuls + Richtungsein-gangs–, Auf–/Abwärts–Impulseingangs–, Inkrementalmodus
Wählen Sie die Impulssynchro-nisations–Eingangsfrequenz Eingangsfrequenz: 10 Hz bis 500 Hz; 20 Hz bis 1 kHz; 300 Hz bis 20 kHz
Verdrahten Sie die Ein– und Ausgänge
SPS–Konfiguration (DM 6642)
Ausgangsadressen: 01000 und 01001
Erstellen Sie ein Kontaktplan–Programm
SYNC(––): Start der synchronisierten Impulssteuerung und zur Änderung des Skalierfaktors
INI(61): Anhalten der synchronisierten Impulssteuerung
PRV(62): Lesen der schnellen Zählerfrequenz und des synchronisierten Impulssteuerungs–Status
Eingangsnummer: 00000, 00001 und 0002
Einstellung der synchronisierten Impulssteuerung, der Eingangsmodus, der Eingangsfrequenz
SPS–Konfiguration
DM 6642, Bits 08 bis 15
Geber–eingänge
Eingangsmodus Zählen
Differentialphase:Impuls– u. Richtung
Auf–/Abwärt
Inkremental
Kontaktplan–Programm
INI (61)BETRIEBSARTEN-STEUERUNGS–Befehl
Synchro. Impuls–steuerung abbrech.
Einmal pro Zyklus
Zählerfrequenz–Istwert
SR 249 SR 248
PRV(62)
SofortSCHNELLER ZÄH-LER–ISTWERTLESEN–Befehl
Schnellen Zähler lesen
Synchronisierten Impuls-steuerungs–Status lesen
Synchronisierten Im-pulssteuerungs–Status
AR 1100 bis AR 1107
SPS–Konfigur.
DM 6642, Bits00 bis 03
EntwederImpulsausgang 0Impulsausgang 1
SynchronisierteImpulssteuerung
10 bis 500 Hz20 Hz bis 1 kHz300 Hz bis 20 kHz
SYNC(––)SYNCHRONISIERTEIMPULSSTEUERUNG–Befehl
Synchr. Impuls–steuerung beginnenSkalierfaktor ändern
Einmal pro Zyklus
Die Impulsausgabefrequenz kann nicht gelesen werden.
Wählen Sie den Differentialphasen–Eingangs–, Impuls + Richtungseingangs–,Auf–/Abwärts–Impulseingangs– oder Inkrementalmodus. Diese Modi sindnachfolgend beschrieben.
Wahl desEingangsmodus und desRücksetzverfahrens.
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
132
Wählen Sie einen der nachfolgend aufgeführten als Eingangsfrequenz–Be-reich: 10 Hz bis 500 Hz, 20 Hz bis 1 kHz oder 300 Hz bis 20 kHz. Sehen Sie diefolgenden Diagramme für weitere Informationen über Eingangsfrequenzen.
Differentialphasen–EingangsmodusIm Differentialphasen–Eingangsmodus wird der Zählwert, entsprechend denzwei Differentialphasen–Signalen, mit einem Multiplikator von 4 inkrementiertoder dekrementiert (Phase A und Phase B).
Phase A
Phase B
Nms → Frequenz =1,000
N
EIN
AUS
EIN
AUS
Impuls– u. Richtungs–EingangsmodusIm Impuls– u. Richtungseingangsmodus werden Impuls– und Richtungssignalangelegt und der Zählwert wird entsprechend dem Richtungssignals–Zustandinkrementiert oder dekrementiert.
Nms → Frequenz =1,000
N
Impuls–eingänge
Richtungs-eingänge
EIN
AUS
EIN
AUS
Auf–/Abwärts–ImpulseingangsmodusIn dem Auf–/Abwärts–Impulseingangsmodus werden Rechtslauf– (Aufwärt-simpulse) und Linkslauf–Signale (Abwärtsimpulse) angelegt und der Zählwertwird entsprechend inkrementiert oder dekrementiert.
Nms → Frequenz =1,000
N
Rechtslauf–eingänge
Linkslauf–Eingänge
Inkrementierung Dekrementierung
EIN
AUS
EIN
AUS
InkrementmodusIm Inkrementalmodus werden Impulssignale angelegt und der Zählwert wird mit
Auswahl derImpulssynchronisations–Eingangsfrequenz.
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
133
jedem Impuls inkrementiert. Phase–B–Eingänge können als gewöhnliche Ein-gänge verwendet werden.
Nms → Frequenz =1,000
N
Impuls–eingänge
EIN
AUS
Verdrahtung der EingängeEingangsverdrahtungVerdrahten Sie die CPM2A–Eingänge, wie es in der folgenden Abbildung dar-gestellt ist.
Differentialphasen–Eingangsmodus Auf–/Abwärts–Impulseingangsmodus
Impuls– u. Richtungs–Eingangsmodus Inkrementmodus
00000: Eingang Phase A00001: Eingang Phase B00002: Eingang Phase Z
00000: Rechtslaufeingang00001: Linkslaufeingang
00000: Impulseingang00001: Richtungseingang
00000: Impulseingang
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
134
Verdrahten Sie die CPM2C–Eingänge, wie es in der folgenden Abbildung dar-gestellt ist.
Differentialphasen–Eingangsmodus Auf–/Abwärts–Impulseingangsmodus
Impuls– u. Richtungs–Eingangsmodus Inkrementmodus
00000: Eingang Phase A
00001: Eingang Phase B
00002: Eingang Phase Z
00000: Rechtslaufeingang
00001: Linkslaufeingang
00000: Impulseingang
00001: Richtungseingang
00000: Impulseingang
E–steckverbinder E–steckverbinder
E–steckverbinder E–steckverbinder
AusgangsverdrahtungVerdrahten Sie die CPM2A–Ausgänge, wie es in der folgenden Abbildung dar-gestellt ist.
Ausgangsverdrahtung
01000: Impulsausgang 0
01001: Impulsausgang 1
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
135
Verdrahten Sie die CPM2C–Ausgänge, wie es in der folgenden Abbildung dar-gestellt ist.
01000: Impulsausgang 0
01001: Impulsausgang 1
A.–steckverbinder
Die Einstellungen in der SPS–Konfiguration, die mit synchronisierter Impuls-steuerung zusammenhängen, sind in der folgenden Tabelle aufgeführt.
Wort Bits Funktion Ein–stellung
DM 6642 00 bis 03 Schneller Zähler–Eingangsmodus–Einstellung
0: Differential–Phaseneingang 5 kHz1: Impuls– u. Richtungseingang 20 kHz2: Auf–/Abwärtseingang 20 kHz4: Inkrement 20 kHz
0, 1, 2oder 4
04 bis 07 Schneller Zähler–Rücksetzverfahrens–Einstellung
0: Z–Phase und Software–Rücksetzung1: Software–Rücksetzung
0 oder 1
08 bis 15 Schneller Zähler–Einstellung
00: Wird nicht verwendet01: Als Schneller Zähler02: Verwendung als Impulssynchr.–Steuerung
(10 Hz bis 500 Hz)03: Verwendung als Impulssynchr.–Steuerung
(20 Hz bis 1 kHz)04: Verwendung als Impulssynchr.–Steuerung
300 Hz bis 20 kHz).
02, 03, 04
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPM_A/CPM_C eingeschaltet wird.
SPS–Konfiguration
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
136
Die folgende Tabelle zeigt die sich auf die synchronisierte Eingangssteuerungbeziehenden Befehlsfunktionen.
Befehl Steuerung Betrieb
(@)SYNC(––) Beginn dersynchronisiertenImpulssteuerung
Spezifiziert Frequenzskalierfaktor undAusgangsanschluss und gibt Impulseaus.
Frequenzskalierfaktorändern
Ändert den Frequenzskalierfaktorwährend der Impulsausgabe.
(@)INI(61) SynchronisierteImpulssteuerungbeenden
Beendet die Impulsausgaben.
(@)PRV(62) Eingangsfrequenz lesen Liest die Eingangsfrequenz.( ) ( )
SynchronisiertenImpulssteuerungs–Status lesen
Liest den synchronisiertenSteuerungsstatus.
Die folgende Tabelle zeigt die Worte und Bits, die mit der synchronisierten Im-pulssteuerung zusammenhängen.
Wort Bits Name Inhalt
248 00 bis15
Eingangsfrequenz–Istwert, äußerstrechte Stellen
Liest denEingangsfrequenz–I t t249 00 bis
15Eingangsfrequenz–Istwert, äußerstlinke Stellen
g g qIstwert.
AR 11 15 Impulsausgabe für Impulsausgang0 aktiv
EIN: Aktive AusgabeAUS: Beendet
AR 12 15 Impulsausgabe für Impulsausgang1 aktiv
Frequenzsteuerung startenDiese Funktion spezifiziert die Ausgänge für die Impulsausgaben (01000,01001) sowie den Frequenzskalierfaktor (1% bis 1.000%) und beginnt die Im-pulsausgabe.
Impulseingangsanschluss (000: Schneller Zähler)Impulsausgangsanschluss (000: Impulsausg. 0; 010: Impulsausg. 1)
Frequenzskalierfaktor–Einstellung
Frequenzskalierfaktor
Spezifizieren Sie den gewünschten Frequenzskalenfaktor:
#0001 bis #1000 (4–stelliger BCD–Wert): 1 bis 1,000%
(@)SYNC(––)
000
S2
S
S
Hinweis Seien Sie bei Einsatz von SYNC(––) zur Spezifikation eines Frequenzskalier-faktors vorsichtig, damit die Impulsausgabefrequenz 10 kHz nicht überschreitet.
Frequenzskalierfaktor ändernDiese Funktion ändert den Frequenzskalierfaktor während der synchronisiertenSteuerung (während der Impulsausgabe), indem sie die Ausgänge für die Im-pulsausgaben (01000, 01001) und den Frequenzskalierfaktor (1% bis 1.000%)spezifiziert sowie SYNC(––) ausführt.
Synchronisierte Steuerung anhaltenDiese Funktion beendet die Impulsausgaben.
Schnittstellenbezeichner (000: Schneller Zähler)Steuerbezeichnung (005: Synchronisierte Steuerung anhalten)
Fest: 000
(@)INI(61)
000
005
000
Hinweis Die Impulsausgabe kann ebenfalls beendet werden, indem die SPS in die PRO-GRAM–Betriebsart umgeschaltet wird.
Kontaktplan–Programmierung
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
137
Eingangsfrequenz lesenDiese Funktion liest den Eingangsfrequenz–Istwert.
Einsatz eines Befehls
Fest: 000Steuerbezeichnung (000: Schnelle Zähler–Eingangsfrequenz lesen)
Anfangswort zur Speicherung des Eingangsfrequenz–Istwerts
äußerst rechte 4 Ziffernäußerst linke 4 Ziffern
00000000 bis 00020000 (8-stelliger BCD-Wert)
(@)PRV(62)
000
000
Z
Z
Z+1
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird die Eingangsfrequenz in den Wor-ten 248 und 249 gespeichert.
Wort 248
Wort 249
Eingangsfrequenz–Istwert (äußerst rechte Stellen)
Eingangsfrequenz–Istwert (äußerst linke Stellen)
Die Worte 248 und 249 werden mit jedem Zyklus aufgefrischt, somit kann zu ei-ner bestimmten Zeit eine Diskrepanz zum genauen Istwert auftreten.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte248 und 249 zum gleichen Zeitpunkt aufgefrischt.
Synchronisierten Steuerungsstatus lesenDiese Funktion liest den synchronisierten Steuerungsstatus.
Einsatz eines Befehls
Schnittstellenbezeichner (000: Impulsausg. 0; 010: Impulsausg. 1)
Steuerbezeichnung (001: Synchr. Impulssteuerungs–Status lesen)Anfangswort zur Speicherung des synchronisierten Steuerungsstatus
(@)PRV(62)
000
001
Z
• Schnittstellenbezeichner: 000
Status des Impulsausgangs 00: Beendet1: Impulsausgabe aktiv
• Schnittstellenbezeichner: 010
Status des Impulsausgangs 10: Beendet
1: Impulsausgabe aktiv
Verwendung der DatenbereicheWie in der folgenden Abbildung gezeigt, wird der Impulsausgabe–Status für Im-
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
138
pulsausgang 0 in AR 1115 und der für Impulsausgang 1 in AR 1215 gespei-chert.
AR 11
Status des Impulsausgangs 00: Beendet1: Ausgabe aktiv
AR 12
Status des Impulsausgangs 10: Beendet1: Ausgabe aktiv
AR 1115 und AR 1215 werden nur einmal in jedem Zyklus aufgefrischt; deshalbkann zu einem bestimmten Zeitpunkt eine Diskrepanz zum genauen Istwert auf-treten.
Wird der Istwert durch Ausführung von PRV(62) gelesen, werden AR 1112 undAR 1212 sofort aufgefrischt.
Verhältnis zwischen Status und BetriebFrequenz
Eingangsimpulse
Zeit
Frequenz
Ausgangsimpulse
Zeit
SYNC(––)–Ausführung
INI(61)–Ausführung
Ausgang 0 aktiviert
Ausgang 1 aktiviert
AnwendungsbeispielBeschreibungIn diesem Beispiel wird durch Aktivieren der Ausführungsbedingung (00005) diesynchronisierte Impulssteuerung gestartet, und Impulse werden, entsprechendden an den Schnellen Zähler angelegten Impulsen, über Ausgang 01000 (Im-pulsausgang 0) ausgegeben. Jetzt kann der Frequenzskalierfaktor mittelsWerteingabe–Poti 0 geändert werden. Wird die Ausführungsbedingung (00005)deaktiviert, wird die synchronisierte Impulssteuerung abgebrochen.
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
139
|VerdrahtungVerdrahten Sie die CPM2A, wie es in der folgenden Abbildung dargestellt ist.
Inkremental–Drehgeber
Motortreiber
Braun
Blau
Schwarz
Weiß
Orange
Verdrahten Sie die CPM2C, wie es in der folgenden Abbildung dargestellt ist. Indiesem Fall wird eine CPU–Baugruppe mit NPN–Transistorausgängen verwen-det.
Motortreiber
COM
E.–steckverbinder
Blau
Orange
Weiß
Schwarz
Inkremental–Drehgeber
A.–steckverbinder
Braun
24 VDC
Hinweis Sehen Sie das CPM2A/CPM2C Bedienerhandbuch für Einzelheiten bezüglichder Motortreiber–Verdrahtung mit den Ausgängen und der Inkrementaldrehge-ber–Verdrahtung mit den Eingängen.
SPS–Konfiguration
00: Differentialphasen–Eingangsmodus
02: Verwendung als synchronisierte Impulssteuerung
DM 6642 0 2 0 0
15 0
2-7AbschnittSynchronisierte Impulssteuerung (nur CPM2A/CPM2C)
140
Programmierung
Erfasst die Deaktivierung der Ausführungsbedingung.
Stellt DM 0000 auf “1” ein, wenn Werteingabe–Poti 0 auf “0”eingestellt wird.
(Die Werteingabe–Potis sind in CPM2A SPS–Systemenintegriert, aber nicht in CPM2C–SPS–Systemen.)
CMP(20)
MOV(21)
SYNC(––)
INI (61)
SYNCHRONISIERTE IMPULSSTEUERUNGSchneller ZählerImpulsausgabe–Ausgang 0Anfangswort des Frequenzskalierfaktors
Bricht die synchronisierte Impulssteuerung ab
Verschiebt den Wert des Werteingabe–Potis 0 auf DM 0000.MOV(21)
250DM0000
00005 (Ausführungsbedingung)DIFD (14) 20000
2-8AbschnittToleranzen
141
2-8 Toleranzen In diesem Abschnitt wird die Fehlerrate und Leistung der Impulsausgänge undder synchronisierten Impulssteuerung beschrieben.
2-8-1 ImpulsausgabenEine Verzögerung tritt ein, bevor eine Änderung der Frequenz während der Im-pulsausgabe am Ausgang sichtbar wird, wie es nachfolgend dargestellt ist.
Impuls–ausgabe
Frequenz geändert
Verzögerung
Maximalverzögerung (ms) = eine Periode der gegenwärtigen Impulsausgabe 2 + 10 + Befehlsausführungs-zeit
Bedingt durch einen internen Verarbeitungsfehler tritt ein Fehler von weniger als± 1% zwischen der Frequenz des Ausgabeimpulses und der eingestellten Fre-quenz auf.
2-8-2 Synchronisierte ImpulssteuerungDas folgende Diagramm zeigt die Verzögerung, die zwischen dem Beginn dersynchronisierten Impulssteuerung und dem Beginn der eigentlichen Impulsaus-gabe auftritt.
Impuls–ausgabe
Verzögerung
Maximalverzögerung (ms) = eine Periode der Impulseingabe x 2 + 16,25
Impuls–eingabe
Wie nachfolgend dargestellt ist, tritt eine Verzögerung auf, bevor bei der syn-chronisierten Impulssteuerung eine Änderung der Frequenz während der Im-pulsausgabe tatsächlich auf die Ausgabe erfolgt.
Verzögerung
Maximalverzögerung (ms) = eine Periode der gegenwärtigen Impulsausgabe 2 + 10
Impuls–ausgabe
Impuls–eingabe
Das folgende Diagramm zeigt die Verzögerung, die während des Abbruchs dersynchronisierten Impulssteuerung (0 Hz) und dem Ende der eigentlichen Im-pulsausgabe während der synchronisierten Impulssteuerung auftritt.
Impuls–ausgabe
Maximalverzögerung (ms) = Einstellung in DM 6642 (sehen Sie nachfolgend) + eine Periode der aktuellen Impulsausgabe B 2 + 10
Impuls–eingabe
Verzögerung
Einstellung vonDM 6642 Bit 08 bis 15
Frequenzbereich Verzögerung
02 10 bis 500 Hz 262 ms
03 20 Hz bis 1 kHz 66 ms
04 300 Hz bis 20 kHz 4 ms
Verzögerungen derFrequenzänderungen
Frequenzfehler
Verzögerung beimBeginn derImpulsausgabe
Verzögerungen derFrequenzänderungen
Verzögerung beimAnhalten derImpulsausgabe
2-9AbschnittAnaloge E/A–Funktionen
142
Wie nachfolgend beschrieben, tritt ein Fehler zwischen der Frequenz des Ein-gabe– und der des Ausgabeimpulses auf. Dieser wird durch einen Fehler in derEingabeimpulsfrequenz–Messung und einen Fehler in der Ausgabeimpulsfre-quenz verursacht.
Eingabeimpulsfrequenz–MessfehlerWie nachfolgend gezeigt, hängt der Fehler beim Messen der Frequenz des Ein-gabeimpulses von der Einstellung in DM 6642 ab. Wird ein Multiplikationsfaktorfür die synchronisierte Impulssteuerung spezifiziert, muss der in der Tabelle be-schriebene Fehler ebenfalls mit dem gleichen Faktor multipliziert werden.
Einstellung vonDM 6642 Bit 08 bis 15
Frequenzbereich Fehler
02 10 bis 500 Hz ±1 Hz
03 20 Hz bis 1 kHz ±1 Hz
04 300 Hz bis 20 kHz ±10 Hz
Ausgabeimpuls–FrequenzfehlerBedingt durch einen internen Verarbeitungsfehler tritt ein Fehler von wenigerals± 1% zwischen der Frequenz des Ausgabeimpulses und der eingestelltenFrequenz auf.
BeispielDM 6642, Bits 08 bis 15 4 (Frequenzbereich: 300 Hz bis 20 kHz)Multiplikationsfaktor: 300%Eingangsfrequenz: 1 kHz (Fehler: 0%)
Wird eine synchronisierte Impulssteuerung unter den obenstehenden Bedin-gungen durchgeführt, tritt ein Fehler von±10 Hz beim Messen des Frequenzbe-reichs des Eingabeimpulses auf. Die Eingangsfrequenz beträgt somit 990 bis1010 Hz. Der Multiplikationsfaktor von 300% würde jedoch aus diesem Wert2970 bis 3030 Hz erzeugen. Zusätzlich würde es auch einen Fehler von±1% inder Frequenz des Ausgabeimpulses geben; deshalb würde die Ausgabe im Be-reich von 2940 bis 3060 Hz liegen.
2-9 Analoge E/A–Funktionen (nur CPM1/CPM1A/CPM2A/CPM2C)
Eine oder mehrere analoge E/A–Baugruppen können an die SPS angeschlos-sen werden, um analoge E/A zur Verfügung zu stellen. Eine analoge E/A–Bau-gruppe verfügt über zwei Analogeingänge und einen Analogausgang. SehenSie den Abschnitt 3-1 Analoge E/A–Baugruppen für weitere Einzelheiten.
2-10 Temperaturfühler–Eingangsfunktionen (nur CPM1A/CPM2A/CPM2C)
Temperaturfühler–Baugruppen können direkt angeschlossen werden, um dieSPS um Temperaturfühlereingänge zu erweitern. Temperaturfühler–Baugrup-pen stehen für Thermokoppler– oder Platin–Widerstandsthermometer–Ein-gänge zur Verfügung.
An die CPM1A oder CPM2A können bis zu drei–CPM1A–TS001/101– oder eineCPM1ATS002/102 Temperaturfühler–Baugruppe angeschlossen werden. Biszu 6 Temperatureingänge sind bei einer SPS möglich.
Bei der CPM2C können bis zu vier CPM2C–TS001/101–Temperaturfühler–Baugruppen angeschlossen werden, wodurch bis zu 8 Temperatureingänge füreine SPS zur Verfügung stehen.
2-11 CompoBus/S–E/A–Slavefunktionen (nur CPM1A/CPM2A/CPM2C)
Die SPS kann als Slave einer CompoBus/S– (oder einer SRM1–Compo-Bus/S)–Master–Baugruppe arbeiten, wenn eine CompoBus/S–E/A–Link–Bau-
Frequenzfehler
2-12AbschnittCompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2))
143
gruppe angeschlossen wird. Sehen Sie den Abschnitt 3-3 CompoBus/S–E/ALink–Baugruppe für weitere Einzelheiten.
2-12 CompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2))Maximale Anzahl von Teilnehmern Es können maximal 16 oder 32 CompoBus/S–Geräte angeschlossen
werden.
KommunikationsBetriebsart
Anzahl der Geräte
Kommunikations–Ansprechzeit
High-Speed–Modus 16 0,5 msg
32 0,8 ms
Long-Distance–Modus 16 4,0 msg
32 6,0 ms
Die Kommunikationsbetriebsart und die maximale Anzahl der Teilnehmer wer-den in der SPS–Konfiguration eingestellt, wie es in der folgenden Tabelle ge-zeigt wird.
Wort Bit(s) Funktion Ein–stellung
DM 6603 00 bis03
Maximale Anzahl der CompoBus/S–Teilnehmer
0: 32 Geräte1: 16 Geräte
0 oder 1
04 bis07
CompoBus/S–Kommunikationsmodus
0: High-Speed–Kommunikation1: Long-Distance–Kommunikation
0 oder 1
08 bis15
Nicht verwendet. 00
Hinweis Werden Änderungen an diesen Einstellungen vorgenommen, schalten Sie dieStromversorgung aus und wieder ein, damit die neuen Einstellungen wirksamwerden.
Slave–E/A–Zuweisung Die Eingangsbits in IR 000 bis IR 007 und die Ausgangsbits in IR 010 bis IR 017werden für CompoBus/S–E/A–Module verwendet. Die CompoBus/S–E/A(EINGANG 0 bis 15 und AUSGANG 0 bis 15) besitzen gemäß nachstehenderTabelle die folgenden Zuweisungen.
EING0 bis EING15 sind die Geräteadressen für Eingangsmodule und AUSG0bis AUSG15 sind die Teilnehmeradressen für Ausgangsmodule.
Wort Bit
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0Ein- IR 000 EING 1 EING 0gang IR 001 EING 3 EING 2
IR 002 EING 5 EING 4
IR 003 EING 7 EING 6
IR 004 EING 9 EING 8
IR 005 EING 11 EING 10
IR 006 EING 13 EING 12
IR 007 EING 15 EING 14
Aus- IR 010 AUSG 1 AUSG 0gang IR 011 AUSG 3 AUSG 2
IR 012 AUSG 5 AUSG 4
IR 013 AUSG 7 AUSG 6
IR 014 AUSG 9 AUSG 8
IR 015 AUSG 11 AUSG 10
IR 016 AUSG 13 AUSG 12
IR 017 AUSG 15 AUSG 14
2-12AbschnittCompoBus/S–E/A–Master–Funktionen (nur SRM1(–V2))
144
Hinweis 1. Wird die maximale Anzahl von CompoBus/S–Geräten auf 16 gesetzt, kön-nen EIN8 bis EIN15 und AUSG 8 bis AUG 15 als Hilfsbits verwendet wer-den.
2. CompoBus/S–Module mit weniger als 8 Anschlüssen werden die Bitadres-sen von entweder 0 oder 8 zugewiesen.
3. CompoBus/S–Module mit 16 Anschlüssen können nur auf Adressen mit ge-raden Nummern eingestellt werden.
4. Analoge Anschlüsse können nur auf Adressen mit geraden Nummern ein-gestellt werden.
Statusmerker Der Kommunikationszustand zwischen CompoBus/S–Module wird durch dieSlave registriert–Merker und Slave–Kommunikations–Fehlermerker AR04 bisAR07 ausgegeben.
Wort Obere Bits: Slave–Kommunikations–Fehlermerker Untere Bits: Slave registriert–MerkerWort
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
AR 04 AUSG7
AUSG6
AUSG5
AUSG4
AUSG3
AUSG2
AUSG1
AUSG0
AUSG7
AUSG6
AUSG5
AUSG4
AUSG3
AUSG2
AUSG1
AUSG0
AR 05 EING7
EING6
EING5
EING4
EING3
EING2
EING1
EING0
EING7
EING6
EING5
EING4
EING3
EING2
EING1
EING0
AR 06 AUSG15
AUSG14
AUSG13
AUSG12
AUSG11
AUSG10
AUSG9
AUSG8
AUSG15
AUSG14
AUSG13
AUSG12
AUSG11
AUSG10
AUSG9
AUSG8
AR07 EING15
EING14
EING13
EING12
EING11
EING10
EING9
EING8
EING15
EING14
EING13
EING12
EING11
EING10
EING9
EING8
Hinweis 1. EING 0 bis EING 15 sind Feldbus–Eingangs– und AUSG 0 bis AUSG 15sind Feldbus–Ausgangsmodule.
2. Wird die maximale Anzahl der CompoBus/S–Geräte auf 16 gesetzt, könnenEING 8 bis EING 15 und AUSG 8 bis AUSG 15 nicht verwendet werden.
3. Der Slave registriert–Merker wird auf EIN gesetzt, wenn ein Slave–Gerätzum Kommunikationsverbund hinzugefügt wird. Wird die Stromversorgungzur CPU–Baugruppe aus– und wieder eingeschaltet, so werden alle Bits aufAUS gesetzt.
4. Der Slave–Kommunikations–Fehlermerker wird auf EIN gesetzt, wenn einim Netz befindlicher Slave vom Netz getrennt wird. Das Bit wird auf AUS ge-setzt, wenn der Slave wieder an das Netz angeschlossen wird.
!
2-13AbschnittEinstellschaltungen (nur CPM1/CPM1A/CPM2A)
145
2-13 Einstellschaltungen (nur CPM1/CPM1A/CPM2A)Die SPS–Systeme sind mit Einstellschaltungen ausgestattet, die die Einstellun-gen der Werteingabe–Potis der CPU–Baugruppe automatisch auf die Worte imE/A–Speicher der CPU–Baugruppe übertragen. Diese Funktion ist sehr nütz-lich, wenn Sollwerte während des Betriebes genau eingestellt werden müssen.Diese Sollwerte können mit dem Werteingabe–Poti auf der CPU–Baugruppegeändert werden.
Einstellungen Die SPS besitzt zwei Werteingabe–Potis, die für einen weiten Bereich von Zeit-geber– und Zählereinstellungen verwendet werden können. Die folgenden Dia-gramme zeigen die Werteinstellungen. Werden diese Werteingabe–Potis ge-dreht, werden Werte von 0000 bis 0200 (BCD–Wert) im SR–Bereich gespei-chert. Verwenden Sie für die Einstellungen einen Kreuzschlitz–Schraubendre-her.
Die Speicherworte werden einmal in jedem CPU–Zyklus aufgefrischt.
Der Wert für Werteingabe–Poti 0 wird in SR 250 gespeichert.Der Wert für Werteingabe–Poti 1 wird in SR 251 gespeichert.
CPM1
Der Wert für Werteingabe–Poti 0 wird in SR 250 gespeichert.
Der Wert für Werteingabe–Poti 1 wird in SR 251 gespeichert.
CPM1A/CPM2A
Hinweis In der obenstehenden Zeichnung ist die CPM2A dargestellt, die CPM1A besitztaber die gleichen Einstellungmöglichkeiten.
Vorsicht Die Werteingabe kann sich bei Temperaturänderungen verändern. BenutzenSie die Werteingabe–Potis nicht für Anwendungen, die eine präzise und festeEinstellung erfordern.
2-13AbschnittEinstellschaltungen (nur CPM1/CPM1A/CPM2A)
146
Einstellverfahren
Nehmen Sie Werteingaben vorVerwenden Sie für die Einstellungen einen Kreuzschlitz–Schraubendreher.
Schließen Sie ein Programmiergerät wie eineProgrammierkonsole an und überprüfen Sie diein SR 250 und SR 251 gespeicherten Werte.
Erstellen Sie ein Kontaktplan–Programm
Werten Sie die in SR 250 und SR 251 gespei-cherten Werte mit dem Kontaktplan–Programmaus.
Werteingabe–Poti 0 Werteingabe–Poti 1
SR 251
SR 250
Werteingabe–Poti 1–Sollwert
Werteingabe–Poti 0–Sollwert
Verwenden Sie einen Kreuzschlitz–Schraubendreher, um die Werteingabe vor-zunehmen. Sie können die Sollwerte überprüfen , indem Sie ein Programmier-gerät wie eine Programmierkonsole anschließen und die in SR 250 und SR 251gespeicherten Werte ablesen.
Werteingabe–Poti 0 Werteingabe–Poti 1
Die folgende Tabelle enthält die Worte und Bits, in denen die Werteingaben ge-speichert werden.
Wort Bits Name Wert
SR 250 00 bis 15 Werteingabe–Poti 0–Sollwertbereich 0000 bis0200 (BCD)SR 251 00 bis 15 Werteingabe–Poti 1–Sollwertbereich 0200 (BCD)
Im folgenden Beispielprogramm wird der in SR 250 gespeicherte Werteingabe–Sollwert (0000 bis 0200 BCD) als Zeitgeber–Sollwert verwendet. Der Bereichdes Zeitgebers ist 0,0 s bis 20,0 s.
Startmerker
Spezifiziert SR 250 für den Zeitgeber–Sollwert.
Werteingabeverfahren
Kontaktplan–Programmierung
2-14AbschnittEingänge mit Impulsspeicherung
147
2-14 Eingänge mit Impulsspeicherung
2-14-1 CPM1/CPM1A–Eingänge mit ImpulsspeicherungDie CPM1/CPM1A verfügt über Eingänge mit Impulsspeicherung für die Ein-gabe schneller Signale.
CPU–Baugruppen mit 10 Ein–/Ausgängen verfügen über 2 und CPU–Baugrup-pen mit 20, 30 und 40 Ein–/Ausgängen über 4 Impuls–Speichereingänge. DieAnschlüsse können entweder als Impulsspeicher– oder als Interrupt–Eingangverwendet werden.
Impuls–Speichereingänge verfügen über einen internen Puffer, somit könnenEingansgsignale mit einer Impulsbreite von min. 0,2 ms innerhalb eines Zykluserfasst werden.
Über–wachung
Programm-ausführung
E/A–Auf–frischung
Über–wachung
Programm-ausführung
E/A–Auf–frischung
Eingangs-signal(00003)
IR 00003
1 Zyklus
CPU–Baugruppe Eingangsbits MindestEingangs–
Impulsbreite
CPU–Baugruppen mit 10 E/A IR 00003 bis IR 00004 0,2 ms
CPU–Baugruppen 20, 30 und 40 E/A IR 00003 bis IR 00006
,
Die Eingangsbits in der obigen Tabelle können gemäß folgender Tabelle als Ein-gänge mit Impulsspeicherung in DM 6628 eingestellt werden.
Wort Einstellungen
DM 6628 0: Normaler EingangDM 6628 0: Normaler Eingang1: Interrupt–Eingang2 Schneller Eingang (Impulsspeicher)
g g2: Schneller Eingang (Impulsspeicher)
(G d i t ll 0)(Grundeinstellung: 0)
15 0
DM 6628
Bit
Einstellung für Eingang 00006: auf 2 setzen
Einstellung für Eingang 00005: auf 2 setzen
Einstellung für Eingang 00004: auf 2 setzen
Einstellung für Eingang 00003: auf 2 setzen
ProgrammbeispielIn diesem Beispiel wurde 6628 DM auf 0002 eingestellt.
25315 Erster Zyklus–MerkerEIN für 1 Zyklus
@INT(89)
000
000
#000E
Maskierung/Demaskierung derEingangs–Interupts.
Demaskiert 00003 (Interrupt–Eingang 0), maskiert andere.
Betrieb mitImpulsspeicherung
Einstellung der Eingängemit Impulsspeicherung
2-14AbschnittEingänge mit Impulsspeicherung
148
2-14-2 CPM2A/CPM2C–Eingänge mit ImpulsspeicherungDie CPM2A und CPM2C besitzen vier Eingänge, die als Eingänge mit Impuls-speicherung verwendet werden (werden ebenfalls für Interrupt–Eingänge undSchnelle Zähler–Eingänge mit 2 kHz verwendet). Mit Eingänge mit Impulsspei-cherung können sich innerhalb eines Zyklus ändernde Signale ausgewertetwerden, indem diese in einem internen Puffer gespeichert werden.
Eingang(00003)
Über–wachung
Programm–ausführung
Über–wachung
Programm–ausführung
E/A–Auf–frischung
1 Zyklus
00003
E/A–Auf–frischung
Eingang (sehen Sie den Hinweis) Mindest–Eingangssignalbreite
00003 50 µs
00004
µ
00005
00006 (sehen Sie den Hinweis 2)
Hinweis 1. Eingänge 00003 bis 00006 können als Interrupt–Eingänge, schnelle Zäh-ler–Eingänge mit 2 kHz oder Eingänge mit Impulsspeicherung verwendetwerden. Anderenfalls können sie als gewöhnliche Eingänge eingesetztwerden.
2. Eingang 00006 ist in CPM2C–CPU–Baugruppen mit 10 E/A nicht vorhan-den.
Die folgende Tabelle zeigt die Beziehungen zwischen Eingängen mit Impuls-speicherung und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
Funktion Eingänge mit Impulsspeicherung
Synchronisierte Impulssteuerung Kann gleichzeitig verwendet werden
Eingangsgestuerte Interrupts Sehen Sie Hinweis 1
Intervall–Zeitgeber–Interrupts Kann gleichzeitig verwendet werden
Schneller Zähler Kann gleichzeitig verwendet werden
E–gesteuerte Interrupts (Zählmodus) Sehen Sie Hinweis 2
Impulsausgänge Kann gleichzeitig verwendet werden
Eingänge mit Impulsspeicherung Sehen Sie Hinweis 3
Eingangs–Zeitkonstante Sehen Sie Hinweis 4
Uhr Kann gleichzeitig verwendet werden
Hinweis 1. Eingänge mit Impulsspeicherung verwenden die Interrupt–Eingangsfunk-tion; somit können die Eingänge 00003 bis 00006 in der SPS–Konfigurationnicht gleichzeitig als Eingänge mit Impulsspeicherung und als Interrupt–Eingänge zugewiesen werden.
2. Ein Eingang mit Impulsspeicherung und ein Interrupt im Zählmodus kann inder SPS–Konfiguration nicht dem gleichen Eingang zugewiesen werden.
3. Eingänge, die als Eingänge mit Impulsspeicherung zugewiesen werdenkönnen, sind 00003 bis 00006.
4. Eingangszeit–Konstanten werden für alle Eingänge deaktiviert, die als Ein-gänge mit Impulsspeicherung spezifiziert werden.
2-14AbschnittEingänge mit Impulsspeicherung
149
Verwendung der Eingänge mit Impulsspeicherung
Verdrahtung der Eingänge Eingänge 00003, 00004, 00005 und 00006
SPS–Konfiguration (DM 6628) 2: Werden als Eingänge mit Impulsspeicherung verwendet.
Eingänge mit Impulsspeicherung
Eingang mit Impuls–speicherung 0
Eingang mit Impuls–speicherung 1
Eingang mit Impuls–speicherung 2
Eingang mit Impuls–speicherung 3
Schnelle Ansprechzeit
SPS–Konfigur.
DM 6628
Verdrahten Sie die CPM2A–Eingänge, wie es in der folgenden Abbildung dar-gestellt ist.
Eingang 00003: Eing. mit Impulsspeicherung 0Eingang 00004: Eing. mit Impulsspeicherung 1Eingang 00005: Eing. mit Impulsspeicherung 2Eingang 00006: Eing. mit Impulsspeicherung 3
Verdrahtung derEingänge
2-14AbschnittEingänge mit Impulsspeicherung
150
Verdrahten Sie die CPM2C–Eingänge, wie es in der folgenden Abbildung dar-gestellt ist.
CPU–Baugruppen mit 10 E/A–Anschlüssen
E.–steckverbind.
00003: Eingang mit Impuls–speicherung 0
00004: Eingang mit Impuls–speicherung 1
Eingang
Eingang 00003: Eing. mit Impulsspeicherung 0
Eingang 00004: Eing. mit Impulsspeicherung 1
CPU–Baugruppen mit 20 E/A–Anschlüssen
00006: Eingang mit Impulsspeicherung 3*
00005: Eingang mit Impulsspeicherung 2*
00003: Eingang mit Impulsspeicherung 0
00004: Eingang mit Impulsspeicherung 1
E.–steckverbind.
Um Eingänge mit Impulsspeicherung mit der CPM2A oder CPM2C zu verwen-den, müssen Sie die folgenden Einstellungen im Systemeinstellbereich (DM6628) über ein Programmiergerät vornehmen.
Wort Bits Funktion Ein–stellung
DM 6628 00 bis03
Interrupt–Einstellung fürEingang 3
0: Normaler Eingang
1: Interrupt–Eingänge
2
04 bis07
Interrupt–Einstellung fürEingang 4
1: Interru t–Eingänge(Interrupt–Eingangs–oder Zählmodus)
08 bis11
Interrupt–Einstellung fürEingang 5
)
2: Schneller Eingang
12 bis15
Interrupt–Einstellung fürEingang 6
Hinweis Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängenkann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vor-handen.
SPS–Konfiguration
2-15AbschnittMakrofunktion
151
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (vonPROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung derCPM_A/CPM_C eingeschaltet wird.
2-15 MakrofunktionDie Makrofunktion wird als ein einfaches Unterprogramm eingesetzt, das mitwechselnden E/A–Worten mehrfach ausgeführt werden kann. Eine Anzahl ähn-licher Programmabschnitte kann durch nur ein Unterprogramm ersetzt werden.Dies führt zu einer Reduzierung der Programmschritte und somit zu einemtransparenteren Programm.
Ein Makro wird zum Aufruf eines Unterprogramms mit dem Befehl MCRO(99)verwendet, anstatt mit SBS(91) (UNTERPROGRAMM–EINSPRUNG), wienachfolgend dargestellt ist.
MCRO (99)
Unterprogramm–Nr
Erstes Eingangswort
Erstes Ausgangswort
Bei Ausführung des MRCO(99)–Befehls werden folgende Operationen abgear-beitet:
1, 2, 3... 1. Der Inhalt der vier aufeinanderfolgenden Worte, die mit dem ersten Ein-gangswort beginnen, wird auf SR 232 bis SR 235 übertragen.
2. Das spezifizierte Unterprogramm wird bis zu dem Befehl RET(93) (Unter-programmrücksprung) ausgeführt.
3. Der Inhalt von SR 236 bis SR 239 (Ergebnis des Unterprogrammaufrufs)wird auf die vier aufeinanderfolgenden Worte, beginnend mit dem erstenAusgangswort, übertragen.
4. Der Befehl MCRO(99) ist hiermit abgearbeitet.
Durch Ausführung des Befehls MCRO(99) kann dasselbe Befehlsschema nachBedarf durch Änderung des ersten Eingangswortes oder des ersten Ausgangs-wortes mehrfach aufgerufen werden.
Die folgenden Einschränkungen treffen bei Verwendung der Makrofunktion zu.
• Die einzigen Worte, die für die Ausführung jedes MCRO–Befehls genutzt wer-den können, sind vier aufeinanderfolgende Worte, beginnend mit der erstenEingangswortnummer (für Eingänge) und vier aufeinanderfolgende Worte,beginnend mit der ersten Ausgangswortnummer (für Ausgänge).
• Die spezifizierten Ein– und Ausgänge müssen eine eindeutige Zuordnung zuden Worten des Unterprogrammes aufweisen.
• Nur bei einer vollständigen Abarbeitung des Unterprogramms (obiger Schritt3) werden die Ergebnisse des Unterprogramms bei der direkten Ausgangs-methode in die spezifizierten Ausgangsworte übertragen.
Hinweis SR 232 bis SR 239 können als Hilfsbits verwendet werden, wenn derMCRO(99)–Befehl nicht eingesetzt wird.
Die Bits des ersten Eingangs– bzw. Ausgangswortes können nicht als E/A–Bits,jedoch als andere Bits ( z. B. HR–Bits, Arbeits–Bits etc.) oder DM–Worte, spezi-fiziert werden.
Die Definition der durch den MCRO(99)–Befehl aufgerufenen Unterprogrammeerfolgt über SBN(92) und RET(93), ähnlich einem normalen Unterprogramm.
Anwendung derMakrofunktion
2-15AbschnittMakrofunktion
152
Anwendungsbeispiel Wird ein Makro verwendet, kann das Programm wie nachstehend dargestellt,vereinfacht werden.
20000
00000 20001
20000
20001
00001
20500
00200 20501
20500
20501
00201 00202
21000
00500 21001
21000
21001
00501 00502
22000
00100 22001
22000
22001
00101 00102
23600
23200 23601
23600
23601
23201
RET (93)
MCRO (99)
030
000
200
MCRO (99)
030
002
205
MCRO (99)
030
005
210
MCRO (99)
030
001
220
25313 (Immer EIN)
00002
23202
SBN (92) 030
Ohne Makro Mit Makro
Unterprogrammwird zur Definie-rung eines Ma-kros verwendet
2-16AbschnittBerechnungen mit vorzeichenbehafteten Binärdaten
153
2-16 Berechnungen mit vorzeichenbehafteten BinärdatenDie CPM1/CPM1A/CPM2A/SRM1(–V2) ermöglicht Berechnungen mit vorzei-chenbehafteten Binärdaten mit den folgenden Befehlen. VorzeichenbehafteteBinärdaten werden unter Anwendung von 2er–Komplementen verarbeitet.
Die folgenden vorzeichenbehafteten Binärwert–Befehle stehen in den SPS–Sy-stemen CPM2A, CPM2C und SRM1(–V2) zur Verfügung:
• BINÄRE ADDITION – ADB(50)
• BINÄRE SUBTRAKTION – SBB(51)
• 2er KOMPLEMENT – NEG(––)
Die SPS–Systeme CPM1/CPM1A verfügen über die folgenden vorzeichenbe-hafteten binären Befehle:
• BINÄRE ADDITION – ADB(50)
• BINÄRE SUBTRAKTION – SBB(51)
Berechnungen vorzeichenbehafteter Daten
Addition
7 + 3 = 10
(–7) + 3 = –4
7 + (–3) = 4
(–7) + (–3) = –10
Subtraktion
7 – 3 = 4
(–7) – 3 = –10
7 – (–3) = 10
(–7) – (–3) = –4
2-16-1 Definition vorzeichenbehafteter BinärdatenVorzeichenbehaftete Binärdaten werden unter Anwendung von 2er–Komple-menten verarbeitet; Bit 15 wird als Vorzeichenbit verwendet. Der Datenbereicheines Wortes reicht von – 32.768 bis 32.767 (8000 bis 7FFFhex.).
Die folgende Tabelle zeigt das Äquivalent zwischen dezimalen und hexadezi-malen Daten.
Dezimalzahl 4–stelliger Hex.–Wert
32,76732,766
.
.
.210
–1–2
.
.
.–32,767–32,768
7FFF7FFE
.
.
.000200010000FFFFFFFE
.
.
.80018000
CPM2A/CPM2C– undSRM1(–V2) Befehle
CPM1/CPM1A–Befehle
2-17AbschnittFlankenüberwachung
154
2-16-2 Arithmetische MerkerDie Ausführungsergebnisse der Befehle für vorzeichenbehaftete Binärdatenwirken sich auf arithmetische Merker aus. Die Merker und die Bedingungen, un-ter denen diese auf EIN gesetzt werden, sind in der folgenden Tabelle aufge-führt. Die Merker sind auf AUS gesetzt, wenn diese Bedingungen nicht erfülltwerden.
Merker EIN–Bedingungen
Übertragsmerker (SR 25504) Additionsübertrag.
Negativergebnis einer Subtraktion.
Gleichmerker (SR 25506) Die Ergebnisse der Addition, Subtraktion,Multiplikation oder Division sind 0.
Konvertierungsergebnisse des 2er–Komplements sind 0.
2-16-3 Eingabe vorzeichenbehafteter Binärdaten unter Verwendung vonDezimalwerten
Obwohl Berechnungen für vorzeichenbehaftete Binärdaten hexadezimale Aus-drücke verwenden, können Eingaben über die Programmierkonsole oder CX–Programmer/SYSWIN unter Anwendung im Dezimalzahl–Format vorgenom-men werden. Das Eingabeverfahren bei Verwendung der Programmierkonsolewird in den Technischen Handbüchern der CPM1, CPM1A, CPM2A CPM2Cund der SRM1–Master–Baugruppe beschrieben. Sehen Sie bitte das CX–Pro-grammer/SYSWIN–Bedienerhandbuch.
Befehlseingabe Sehen Sie die technischen Handbücher der CPM1, CPM1A, CPM2A, CPM2Cund SRM1–Master–Baugruppe für weitere Informationen zur Eingabe von Be-fehlen über die Programmierkonsole.
2-17 FlankenüberwachungDer CPM1/CPM1A, CPM2A//CPM2C und SRM1(–V2) unterstützen die Flan-kenüberwachung über die Programmierkonsole oder CX–Programmer/SYS-WIN. Die EIN/AUS– oder AUS/EIN–Statusänderung eines spezifizierten Bitskann erfaßt werden. Eine Statusänderung wird auf dem Display angezeigt undein Summer ertönt.
Sehen Sie die technischen Handbücher der CPM1, CPM1A, CPM2A undCPM2C oder der SRM1–Master–Baugruppe und und das CX–Programmer/SYSWIN–Programmierhandbuch für weitere Informationen über die Flanke-nauswertung.
2-18 Erweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) )Eine Gruppe neuer Befehle steht für die SPS–Systeme der CPM2A–, CPM2C–und SRM1(–V2)–Serie zur Verfügung, um spezielle Programmieranforderun-gen zu unterstützen. Den Erweiterten Befehlen werden bis zu 18 Funktionsco-des zugewiesen, um diese im Programmen aufzurufen. Dies ermöglicht Ihnen,die für jedes CPM2A, CPM2C, or SRM1(-V2)–Programm benötigten Befehlewirkungsvoller auszuwählen.
Den AWL-Anweisungen der Erweiterte Befehle folgt ”(––)” als Funktionscode,um anzuzeigen, daß diesen Befehlen Funktionscodes in der Befehlstabelle zu-gewiesen werden müssen, bevor sie einsatzbereit sind (es sei denn, sie werdenin den Grundeinstellungen verwendet).
2-18AbschnittErweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) )
155
Jedem Befehl, dem in der Befehlstabelle kein Funktionscode zugewiesenwurde, muss vor der Programmierung ein Funktionscode zugewiesen werden,der von dem Programmiergerät und der CPM2A/CPM2C or SRM1(-V2) ver-wendet wird. Durch die Zuweisung der Erweiterten Befehle zu der Befehlsta-belle ändert sich die Bedeutung der Befehle und Operanden. Stellen Sie des-halb vor der Programmierung und der Übertragung der Befehlstabelle in dieCPM2A/CPM2C oder SRM1(-V2) zur Programmausführung sicher, dass dieEinstellung der Befehlstabelle richtig ist.
Beispiel: CPM2A/CPM2C–SPSDie speziellen Befehle, die im folgenden Beispiel verwendet werden, gelten fürdie CPM2A/CPM2C. Diese Begriffe gelten auch für die SRM1(-V2).
Funktionscode 61
Funktionscode 64
Funktionscode 65
Funktionscode 61
Funktionscode 64
Funktionscode 65
INI
SPED
PULS
MAX
MIN.
SUM
INI
SPED
PULS
MAX
MIN.
SUM
Zum Zeitpunktes der Auslieferung werdendie Funktions-Codes, wie vorstehend darge-stellt, zugewiesen. (In diesem Beispiel bezie-hen sich alle Befehle auf Impulsausgaben.)
Werden keine Impulsausgaben verwendet,aber Maximal-, Minimal- und Summenwertebenötigt, kann der SET-Befehl dazu verwen-det werden, Befehle in der Befehlstabelle neuzuzuweisen (wie vorstehend dargestellt).
Hinweis 1. Stellen Sie das SPS–Modell auf “CPM2” oder “SRM1” ein, wenn Sie die Er-weiterte Befehle für die SRM1(–V2) oder CPM2A/CPM2C über CX–Pro-grammer/SYSWIN spezifizieren.
2. Die SPS–Konfiguration muss auf benutzerdefinierte Erweiterte Befehls–Funktionscodes eingestellt werden, damit Funktionscodes zugewiesenwerden können. Setzen Sie die Bits 08 bis 11 von DM 6602 auf 1.
2-18AbschnittErweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) )
156
2-18-1 Erweiterte Befehle der CPM2A/CPM2CDie folgenden 18 Funktionscodes können für Erweiterte Befehle verwendetwerden: 17, 18, 19, 47, 48, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 87, 88 und 89.Die Funktionscode–Zuweisungen können mit einer Programmierkonsole oderder Programmiersoftware geändert werden.
Sehen Sie den Abschnitt 4–4–5 Zuweisung von Erweiterte Befehls–Funktions-codes im CPM2A– oder CPM2C–Bedienerhandbuch für Verfahren mit der Pro-grammierkonsole.Sehen Sie bitte das CX–Programmer– oder SYSWIN–Bedienerhandbuch.
Die anwendbaren Erweiterten Befehle sowie die Vorgabe-Funktionscodes, diebei der Auslieferung der SPS zugewiesen sind, sind nachfolgend aufgeführt.
AWL FunktionscodeASFT 17--- 18--- 19RXD 47TXD 48CMPL 60INI 61PRV 62CTBL 63SPED 64PULS 65SCL 66BCNT 67BCMP 68STIM 69--- 87--- 88INT 89ACC ---AVG ---FCS ---HEX ---HMS ---MAX ---MIN ---NEG ---PID ---PWM ---SCL2 ---SCL3 ---SEC ---SRCH ---STUP ---SUM ---SYNC ---TIML ---TMHH ---ZCP ---ZCPL ---
2-18-2 Erweiterte Befehle der SRM1(-V2)Die folgenden 18 Funktionscodes können für Erweiterte Befehle verwendetwerden: 17, 18, 19, 47, 48, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 87, 88 und 89.
2-18AbschnittErweiterte Befehle (nur CPM2A/CPM2C/SRM1(–V2) )
157
Die Funktionscode–Zuweisungen können mit einer Programmierkonsole oderder Programmiersoftware geändert werden.
Sehen Sie den Abschnitt 4–2–6 Einstellung von Erweiterte Befehle im SRM1–Master–Baugruppen–Programmierhandbuch für Verfahren mit der Program-mierkonsole bzw. das CX–Programmer oder SYSWIN–Bedienerhandbuch.
Die anwendbaren Erweiterten Befehle sowie die Vorgabe-Funktionscodes, diebei der Auslieferung der SRM1(–V2) zugewiesen sind, sind nachfolgend aufge-führt.
AWL Funktionscode
ASFT 17--- 18--- 19
RXD 47
TXD 48
CMPL 60--- 61--- 62--- 63--- 64--- 65
SCL* 66
BCNT 67
BCMP 68
STIM 69--- 87--- 88--- 89
FCS ---
HEX ---
NEG* ---
PID* ---
STUP ---
ZCP* ---
Hinweis *SCL(66), NEG(––), PID(––) und ZCP (––) werden nur von den SRM1–C0j–V2–CPUs unterstützt.
2-19AbschnittVerwendung der CPM2A/CPM2C–Uhrfunktion
158
2-19Verwendung der CPM2A/CPM2C–UhrfunktionDie CPM2A–SPS und einige CPM2C–SPS–Systeme verfügen über eine einge-baute Uhrfunktion. Dieser Abschnitt beschreibt die Verwendung der Uhr.
2-19-1 Datenbereichs–WorteDiese folgende Abbildung verdeutlicht die Konfiguration der mit der Uhr verwen-deten Worte (AR 17 bis AR 21). Diese können, wie erforderlich, gelesen und ver-wendet werden. (AR 17 ermöglicht einen schnellen Zugriff auf die Stunden– undMinuten–Angaben.)
15 8 7 0
AR 18
AR 19AR 20
AR 21
Minute
Datum
Sekunde
StundeJahr Monat
Wochentag
Jeweils 2–stelliger BCD–Wert(Nur die letzten beiden Stellen desJahres stehen zur Verfügung.)
00 bis 06: Sonntag bis Samstag
AR 2115 Uhr–Einstellungsmerker
AR 2114 Uhr–Stoppmerker
AR 2113 30 Sekunden–Stellmerker
Stunde MinuteAR 17
2-19-2 Einstellung der ZeitVerwenden Sie ein Programmiergerät wie folgt, um die Zeit einzustellen:
Alles einstellen
1, 2, 3... 1. AR 2114 (Uhr–Stoppmerker) einschalten, um die Uhr zu stoppen und zu er-lauben, dass AR 18 bis AR 21 überschrieben wird.
2. Stellen Sie AR 18 bis AR 20 (Minute/Sekunde, Datum/Stunde und Jahr/Mo-nat) sowie AR 2100 bis AR 2107 (Wochentag) über ein Programmiergerätein.
3. Nach der Zeiteinstellung wird AR 2115 ebenfalls automatisch zurückge-setzt. Die Uhr beginnt den Betrieb mit der eingestellten Zeit und Uhr–Stopp-merker und der Uhr–Einstellmerker werden automatisch zurückgesetzt.
Nur Sekunden einstellenMit AR 2113 können Sie die Sekunden auf einfache Weise auf ”00” einstellen,ohne die gesamte Einstellung vorzunehmen.Die Uhrzeit ändert sich wie folgt,wenn AR 2113 eingeschaltet wird:
Bei einer Sekunden–Einstellung zwischen 00 und 29 werden die Sekunden auf00 zurückgesetzt und die Minuten–Einstellung nicht geändert.
Bei einer Sekunden–Einstellung zwischen 30 und 59 werden die Sekunden auf00 zurückgesetzt und die Minuten–Einstellung um eins inkrementiert.
Nach der Uhrzeit–Einstellung wird AR 2113 automatisch zurückgesetzt.
Hinweis Die Zeit kann einfach über Menüfunktionen einer Programmierkonsole oder mitCX–Programmer/SYSWIN eingestellt werden. Sehen Sie das CPM2A– oderCPM2C–Programmierhandbuch für Verfahren mit der Programmierkonsoleoder das Handbuch für CX–Programmer/SYSWIN.
159
KAPITEL 3Anschluss von Erweiterungsbaugruppen
Dieser Abschnitt beschreibt, wie die analogen E/A–Baugruppen CPM1A–MAD01– und CPM2C–MAD11, Temperaturfüh-ler–Baugruppen CPM1A–TS001/002/101/102 und CPM2C–TS001/101 sowie CompoBus/S–E/A–Link–BaugruppenCPM1A–SRT21 und CPM2C–SRT21 verwendet werden.
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-1AbschnittAnaloge E/A–Funktionen
160
3-1 Analoge E/A–Funktionen
3-1-1 Analoge E/A–Baugruppen CPM1/CPM1A/CPM2AMaximal 3 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlichCPM1A–MAD01 Analog–E/A–Baugruppen, können mit einer CPM1, CPM1A(sehen Sie den Hinweis) oder CPM2A SPS verbunden werden. Eine analogeE/A–Baugruppe verfügt über 2 Analogeingänge und 1 Analogausgang. Ist dasMaximum von 3 analogen E/A–Baugruppen angeschlossen, sind 6 analogeEingänge und 3 analoge Ausgänge möglich.
• Der Analog–Eingangsbereich kann auf 0 bis 10 VDC, 1 bis 5 VDC oder 4 bis 20mA mit einer Auflösung von 1/256 eingestellt werden.
• Eine Drahtbruch–Erfassungsfunktion kann mit der 1 bis 5 VDC und 4 bis20 mA–Einstellung verwendet werden.
• Der analoge Ausgabebereich kann auf 0 bis 10 VDC, 4 bis 20 mA oder –10 bis10 VDC eingestellt werden. Die Ausgabe besitzt eine Auflösung von 1/256,wenn der Bereich auf 0 bis 10 VDC oder 4 bis 20 mA eingestellt wird oder eineAuflösung von 1/512, wenn –10 bis 10 VDC eingestellt sind.
Maximal 3 Erweiterungsbaugruppen oder E/A–Erweiterungsbaugruppen können angeschlossen werden.
CPM1(–V1)–/CPM1A–/CPM2A–CPU–Baugruppe
CPM1A–20EDR1–E/A–Erweiterungs-baugruppe
CPM1A–8ED–E/A–Erweiterungs-baugruppe
CPM1A–MAD01–Analog–E/A–Baugruppe
2 A
nalo
gaus
g.
1 A
nalo
gaus
g.
Hinweis Die CPM1–30CDR–j–V1 ist die einzige CPM1–CPU–Baugruppe, an die 3 Er-weiterungsbaugruppen oder E/A–Erweiterungsbaugruppen angeschlossenwerden können. Nur eine Erweiterungsbaugruppe oder E/A–Erweiterungsbau-gruppe können an Modelle ohne den “V1”–Zusatz angeschlossen werden. Ana-loge Baugruppen können nicht mit CPM1A CPU–Baugruppen mit 10 oder 20E/A angeschlossen werden. Hierzu müssen Sie eine CPM1A–CPU–Baugruppemit 30 oder 40 E/A verwenden.
3-1AbschnittAnaloge E/A–Funktionen
161
Spannungs–E/A Strom–E/A
Analog–ein– Anzahl der Eingänge 2a og egangs–teil
Eingangssignalbereich 0 bis 10 V/1 bis 5 V 4 bis 20 mAteil
Max. Nenneingangswert ±15 V ±30 mA
Eingangsimpedanz min. 1 MΩ 250Ω bei Nennstrom
Auflösung 1/256
Genauigkeit 1,0% bei Vollausschlag
A/D–Konvertierungsdaten 8 Bit binär
Analo–A
Anzahl der Ausgänge 1a oger Aus–gangs–teil (sehen Sie
Ausgangssignalbereich 0 bis 10 V oder–10 bis 10 V
4 bis 20 mA
teil (sehen SieHinweis 1) Max. externer Ausgangsstrom 5 mA ---Hinweis 1)
Zulässiger externer Ausgangs–Lastwiderstand --- 350 ΩAuflösung 1/256
(1/512 bei Wahl des Ausgangssignalbereichs –10 bis 10 V)
Genauigkeit 1,0% bei Vollausschlag
Einstelldaten 8 Bit, vorzeichenbehafteter Binärwert
Konvertierungszeit max. 10 ms pro Baugruppe (sehen Sie Hinweis 2)
Galvanische Trennung Galvanische Trennung über Optokoppler zwischenE/A–Klemmen und SPS–Signalen. Keine galvanische Trennungzwischen den analogen E/A–Signalen.
Hinweis 1. Bei analogen Ausgängen können sowohl Spannungs– als auch Stromaus-gänge gleichzeitig verwendet werden. In diesem Fall darf der gesamte Aus-gangsstrom 21 mA jedoch nicht überschreiten.
2. Die Konvertierungszeit ist die Gesamtzeit für 2 Analogeingänge und 1 Ana-logausgang.
Analoge E/A–SignalbereicheAnalog–Eingangssignalbereiche
0 bis 10 V–Eingänge 1 bis 5 V–Eingänge 4 bis 20 mA–EingängeKonvertierungswert Konvertierungswert Konvertierungswert
Eingangssignal Eingangssignal Eingangssignal3 V1 V
3-1AbschnittAnaloge E/A–Funktionen
162
Analog–Ausgangssignalbereiche
0 bis 10 V– und –10bis +10 V–Ausgänge
Sollwert
Sollwert
4 bis 20 mA–Ausgänge
Sollwert
Einsatz analoger E/A
E/A–Bereich spezifizieren
Baugruppe anschließen
Analoge E/A verdrahten
Kontaktplan–Programm erstellen.
Analogeingänge 0 bis 10 V, 1 bis 5 V oder 4 bis 20 mA
Analogausgänge: 0 bis 10 V, –10 bis +10 V oder 4 bis 20 mA
Schließen Sie die analoge E/A–Baugruppe an.
Schließen Sie das analoge Eingabegerät an.
Schreiben Sie den jeweiligen Programmcode.
Analogeingang: Konvertierte Daten lesen.
Analogausgang: Sollwert schreiben.
3-1AbschnittAnaloge E/A–Funktionen
163
Analogeingänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–ProgrammWort (n + 1)
MOVE–Befehl
Schreibt den Bereich-scode. Liest den Kon-vertierungswert.
Hierbei entspricht “m” den letzten Eingangswortund “n” dem letzten Ausgangswort, das der CPU–,vorhergehenden Erweiterungsbaugruppe oder derE/A–Erweiterungsbaugruppe zugewiesen ist.
Analoge GeräteTemperaturfühler
Drucksensor
Drehzahlsensor
Flusssensor
Spann.–/Strommeter
Wort (m + 1)
Wort (m + 2)
Bereichscode
Gewandelter Wert vonAnalogeingang 1Gewandelter Wert vonAnalogeingang 2
(21)
Analoge Ausgänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–Programm
MOVE–Befehl
Schreibt den Bereich-scode. Schreibt denSollwert
Wort (n + 1)
(Sehen Sie den Hinweis.)
Analoge GeräteJustiergeräte
Servoregler
Frequenzumrichter
Andere
Hinweis Wort (n + 1) kann für den Bereichscode oder den analogen Ausgabesollwertverwendet werden.
BereichscodeAnaloger Ausgabe–sollwert
Hierbei entspricht “n” dem letzten Ausgangswort,das der CPU–, vorhergehenden Erweiterungs–oder E/A–Erweiterungsbaugruppe zugewiesenist.
(21)
3-1AbschnittAnaloge E/A–Funktionen
164
Der E/A–Signalbereich wird eingestellt, indem der Bereichscode in das Aus-gangswort der Analog–E/A–Baugruppe geschrieben wird.
E/A–Klemmenanordnung
Hinweis Bei Einsatz der Stromeingänge muss Klemme V IN1mit I IN1 und Klemme V IN2 mit I IN2 kurzgeschlos-sen werden.
V OUT Spannungsausgang
I OUT Stromausgang
COM Ausgang, gemeinsamer
V IN1 Spannungseingang 1
I IN1 Stromeingang 1
COM1 Eingang, gemeinsamer
V IN2 Spannungseingang 2
I IN2 Stromeingang 2
COM2 Eingang, gemeinsamer 2
BereichscodeUm Daten zu konvertieren muss der Bereichscode für die analoge E/A–Bau-gruppe eingestellt werden.
Die 8 Bereichscode–Einstellungen erlauben 8 Kombinationen von Signalberei-chen für die Analogein– und –ausgänge, wie es in der folgenden Tabelle darge-stellt ist.
Bereichs–code
Analogeingang 1–Signalbereich
Analogeingang 2–Signalbereich
Analog–Ausgangs–signalbereich
FF00 0...10 V 0 bis 10 V 0...10 V oder 4...20 mA
FF01 0...10 V 0 bis 10 V –10...10 V oder4...20 mA
FF02 1...5 V oder 4...20 mA 0 bis 10 V 0...10 V oder 4...20 mA
FF03 1...5 V oder 4...20 mA 0 bis 10 V –10...10 V oder4...20 mA
FF04 0...10 V 1...5 V oder 4...20 mA 0...10 V oder 4...20 mA
FF05 0...10 V 1...5 V oder 4...20 mA –10...10 V oder 4...20 mA
FF06 1...5 V oder 4...20 mA 1...5 V oder 4...20 mA 0...10 V oder 4...20 mA
FF07 1...5 V oder 4...20 mA 1...5 V oder 4...20 mA –10...10 V oder 4...20 mA
Schreiben Sie den Bereichscode im ersten Zyklus der Programmausführung indas Ausgangswort (n + 1) der Analog–E/A–Baugruppe.
SR 25315–Erster Zyklus–Merker EIN für 1 Zyklus
Analogeingang 1: 1 bis 5 V/4 bis 20 mA
Analogeingang 2: 0 bis 10 V
Analogausgang: 0 bis 10 V/4 bis 20 mA
(n + 1)
Bereichscode (4–stelliger Hexadezimalwert)
(21)
Einstellung des E/A–Signalbereichs
3-1AbschnittAnaloge E/A–Funktionen
165
Die Analog–E/A–Baugruppe beginnt erst mit der Konvertierung der analogenE/A–Werte, nachdem der Bereichscode spezifiziert wurde.
Nach dem Einstellen des Bereichscodes ist es nicht möglich, die Einstellung zuändern, während Spannung an der CPU–Baugruppe anliegt. Schalten Sie dieVersorgungsspannung der CPU–Baugruppe aus und wieder ein, um den E/A–Bereich zu ändern.
Hinweis Wird ein anderer Bereichscode als der, der in der obenstehenden Tabelle spezi-fiziert ist, in n+1 eingetragen, erkennt die analoge E/A–Baugruppe diesen Be-reichscode nicht und es wird keine analoge E/A–Wandlung durchgeführt.
Dieser Abschnitt beschreibt, wie eine analoge E/A–Baugruppe an die CPU–Baugruppe angeschlossen wird.
Maximal 3 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlichanaloger E/A–Baugruppen, können mit einer SPS verbunden werden. Es be-stehen keine Vorschriften für die Anschlussreihenfolge, wenn die analoge E/A–Baugruppe zusammen mit anderen Erweiterungs– oder E/A–Erweiterungsbau-gruppen verwendet wird.
CPM1–/CPM1A–/CPM2A–CPU–Baugruppe
Analoge E/A–Baugruppe
E/A–ZuweisungEin–/Ausgänge werden für die analoge E/A–Baugruppe auf die gleiche Weisezugewiesen, wie bei anderen Erweiterungs– oder E/A–Erweiterungsbaugrup-pen; die Zuweisung beginnt mit dem nächsten Wort, das dem zu letzt zugewie-senen Wort der CPU–Baugruppe oder das der vorhergehenden Erweiterungs-baugruppe oder E/A–Erweiterungsbaugruppe zugewiesen wurde, folgt. Die Zu-weisung ist wie folgt, wenn “m” das letzte zugewiesene Eingangswort und “n”das letzte zugewiesene Ausgangswort auf der CPU–Baugruppe oder der vor-hergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe ist:
Analoge E/A–Baugruppe(m + 1)
(m + 2)
2 Analogeingänge
1 Analogausgang
(n + 1)
Zum Beispiel wird im folgenden Diagramm eine analoge E/A–Baugruppe aneine CPU–Baugruppe mit 30 Ein–/Ausgängen angeschlossen.
Eingangsadresse
Ausgangsadresse
CPU–Baugruppemit 30 Anschlüs-sen
AnalogeE/A–Bau-gruppe
IR 000IR 001
IR 010IR 011
IR 002IR 003
IR 012
Anschluss der analogenE/A–Baugruppe
3-1AbschnittAnaloge E/A–Funktionen
166
Verdrahtung analoger E/A–GeräteAnalogeingangs–Verdrahtung
2–adrig abgeschirmtes,paarweise verdrilltes Kabel
Spannungs-ausgang füranalogesAusgabe–gerät
Stromaus-gang füranalogesAusgabe-gerät
Analoge E/A–Baugruppe
250 Ω
250 Ω
10 kΩ
10 kΩ
Analoge Ausgangsverdrahtung
Spannungsausgänge
2–adrig abgeschirmtes,paarweise verdrilltes Kabel
Analoge E/A–Baugruppe
Spannungs–eingang ei-nes Analog–gerätes
Stromausgänge
2–adrig abgeschirmtes,paarweise verdrilltes Kabel
Analoge E/A–Baugruppe
Strom–eingang ei-nes Analog–gerätes
Bei analogen Ausgängen ist die gleichzeitige Verwendung von Spannungs–und Stromausgängen möglich; der Gesamtstromausgang darf jedoch nicht 21mA überschreiten.
Hinweis 1. Verwenden Sie ein 2–adrig abgeschirmtes, paarweise verdrilltes Kabel.
2. Verlegen Sie die Verkabelung getrennt von Versorgungsspannungsleitun-gen (AC–Spannungsversorgungskabel, Versorgungsspannungsleitungen,usw.)
3. Wird ein Eingang nicht verwendet, so schließen Sie V IN und I IN mit derCOM–Klemme kurz.
4. Verwenden Sie Crimp–Kabelschuhe. (Ziehen Sie die Klemmen mit einemDrehmoment von 0,5 N⋅m an.)
5. Schließen Sie V IN mit I IN beim Einsatz von Stromeingängen kurz.
6. Installieren Sie bei Störungen in der Spannungsversorgung einen Entstör-filter am Eingangsteil und an der Spannungsversorgung–Baugruppe.
3-1AbschnittAnaloge E/A–Funktionen
167
Kontaktplan–ProgrammSpezifizieren des BereichscodesSpezifizieren Sie den E/A–Signalbereich, indem Sie den Bereichscode im er-sten Zyklus der Programmausführung über den Kontaktplan in das Ausgangs-wort der analogen E/A–Baugruppe schreiben. Die Analog–E/A–Baugruppe be-ginnt erst mit der Wandlung der analogen E/A–Werte, nachdem der Bereich-scode spezifiziert wurde. (Sehen Sie Seite 164.)
Schreiben Sie im ersten Zyklus der Programmausführung den Bereichscode indas Ausgangswort der analogen E/A–Baugruppe; das Ausgangswort der ana-logen E/A–Baugruppe ist “n+1”, wenn “n” das letzte Wort ist, das der CPU–Bau-gruppe oder einer vorhergehenden Erweiterungs– oder E/A–Erweiterungsbau-gruppe in der E/A–Konfiguration zugewiesen wurde.
Lesen gewandelter Analog–EingangswerteEin Kontaktplan kann zum Lesen der Speicherbereiche verwendet werden, indem die gewandelten Werte gespeichert sind. Werte werden an die nächstenzwei Worten (m + 1, m + 2), die dem letzten, der CPU–Baugruppe, einer vorher-gehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewiesenenEingangswort (m) folgen, ausgegeben.
(m + 1)
(m + 2)
Analogeingang 1,Drahtbruch–Erfas-sungsmerker
0: Normal 1: Offene Schaltung (Drahtbruch)
Analogeingang 1–Wandlungswert (hex: (00 bis FF)
Analogeingang 2,Drahtbruch–Erfas-sungsmerker
0: Normal 1: Offene Schaltung (Drahtbruch)
Analogeingang 2–Wandlungswert (hex: (00 bis FF)
0 0 0 0 000
0 0 0 0 000
Hinweis Der Drahtbruch–Erfassungsmerker wird aktiviert, wenn der Eingangssignalbe-reich auf 1 bis 5 V oder 4 bis 20 mA eingestellt ist und das Eingangssignal unter 1V oder 4 mA fällt. (Offene Schaltung werden nicht erfasst, wenn der Eingangssi-gnalbereich auf 0 bis 10 V eingestellt wird.)
Schreiben analoger AusgabesollwerteEin Kontaktplan kann dazu verwendet werden, Daten ins Ausgangswort, in demder Sollwert gespeichert wird, zu schreiben. Hierbei ist das Ausgangswort“n+1”, wenn “n” dem letzten Ausgangswort entspricht, das der CPU–, einer vor-hergehenden Erweiterungsbaugruppe oder E/A–Erweiterungsbaugruppe zu-gewiesen wurde.
(n + 1)
Vorzeichenbit(bei einem Ausgangssignal–bereich –10 bis 10 V)
Sollwert (hex: (00 bis FF)
0 0 0 0 000
1, 2, 3... 1. Der Sollwertbereich ist 0000 bis 00FF, wenn der Ausgangssignalbereich 0bis 10 V/4 bis 20 mA beträgt.
2. Der Sollwertbereich wird in zwei Teile unterteilt: 80FF bis 8000 (–10 bis 0 V)und 0000 bis 00FF (0 bis 10 V) bei einem Ausgangssignalbereich von –10bis 10 V.
3-1AbschnittAnaloge E/A–Funktionen
168
Programmbeispiel für eine AnalogeingabeAnschluss der analogen E/A–BaugruppeIn der folgenden Abbildung ist z. B. eine analoge E/A–Baugruppe an eine CPU–Baugruppe mit 30 Ein–/Ausgängen angeschlossen. Der analogen E/A–Bau-gruppe werden E/A–Worte werden zugewiesen, die dem letzten Worte folgen,dass der CPU–Baugruppe zugewiesen wurden.
Eingangsworte
Ausgangsworte
CPU–Baugruppen mit 30 E/A–Anschlüssen
Analoge E/A–Bau-gruppe
IR 000IR 001
IR 010IR 011
IR 002IR 003
IR 012
Verdrahtung analoger E/A–Geräte
Einsatz des Analogeingangs 1 als Spannungseingang Einsatz des Analogeingangs 2 als Stromeingang
Spannungseingang 1 (+)
Masse (–) Stromeingang 2 (+)
Masse (–)
Spannungsausgang (+)
Masse (–)
Einsatz eines analogen Ausgangs als Spannungsausgang
Analoge E/A–EinstellungenEingang 1–Signalbereich: 0 bis 10 V
Eingang 2–Signalbereich: 4 bis 20 mA
Ausgangssignalbereich: 0 bis 10 V
Bereichscode–Einstellung: FF04
IR 012
Bereichscode: FF04
3-1AbschnittAnaloge E/A–Funktionen
169
Programm
SR 25315(Erster Zyklus–EIN–Merker)
Schreibt den Bereichscode (FF04) in die Baugruppe.
Ausführungsbedingung
Ausführungsbedingung
Ausführungsbedingung
Liest den gewandelten Wert von Analogeingang 1.
Liest den gewandelten Wert von Analogeingang 2.
Der Inhalt von DM 0010 wird als analoger Ausgabe-sollwert ins Ausgangswort geschrieben.
4(21)
(21)
(21)
(21)
3-1-2 Analoge E/A–Baugruppen der CPM2CMaximal 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlichvon bis zu 4 analogen E/A–Baugruppen des Typs CPM2C–MAD11, können miteiner CPM2C–SPS verbunden werden. Eine analoge E/A–Baugruppe verfügtüber 2 Analogeingänge und 1 Analogausgang. Mit diesen maximal 4 analogenE/A–Baugruppen sind 8 analoge Eingänge und 4 analoge Ausgänge möglich.
• Der Analog–Eingangsbereich kann auf 0 bis 5 VDC, 1 bis 5 VDC, 0 bis 10VDC, –10 bis 10 VDC, 0 bis 20 mA oder 4 bis 20 mA eingestellt werden. DieEingänge besitzen eine Auflösung von 1/6000.
• Eine Drahtbruch–Erfassungsfunktion kann mit der 1 bis 5 VDC und 4 bis20 mA–Einstellung verwendet werden.
• Der Analog–Ausgangsbereich kann auf 1 bis 5 VDC, 0 bis 10 VDC, –10 bis 10VDC, 0 bis 20 mA oder 4 bis 20 mA eingestellt werden. Die Ausgänge besitzeneine Auflösung von 1/6000.
CPU–Baugruppe Analoge E/A–Baugruppender CPM2C
E/A–Erweiterungs–baugruppe
Zwei Analogeingänge und ein Analog–ausgang auf jeder Baugruppe
3-1AbschnittAnaloge E/A–Funktionen
170
Spannungs–E/A Strom–E/A
Analogein–t il
Anzahl der Eingänge 2 Eingänge (2 zugewiesene Worte)a ogegangsteil Eingangssignalbereich 0 bis 5 VDC, 1 bis 5 VDC,
0 bis 10 VDC oder –10 bis 10 VDC0 bis 20 mA oder 4 bis 20 mA
Max. Nenneingangswert ±15 V ±30 mA
Eingangsimpedanz min. 1 MΩ 250 ΩAuflösung 1/6000 (Vollausschlag)
Gesamtgenauigkeit 25°C 0,3% bei Vollausschlag 0,4% bei VollausschlagGesa ge au g e
0 bis 55°C 0,6% bei Vollausschlag 0,8% bei Vollausschlag
A/D–Konvertierungsdaten 16–Bit binär (4–stelliger Hexadezimalwert)
Messbereich bei –10 bis 10 V: F448 bis 0BB8 hex.Messbereich für andere Bereiche: 0000 bis 1770 hex.
Mittelwertfunktion wird unterstützt (einstellbar für individuelle Eingänge über DIP–Schalter)
Drahtbruch–Erfassungsfunktion wird unterstützt
Analogaus–t il
Anzahl der Ausgänge 1 Ausgang (1 zugewiesenes Wort)a ogausgangsteil Ausgangssignalbereich 1 bis 5 VDC, 0 bis 10 VDC oder
–10 bis 10 VDC 0 bis 20 V oder 4 bis 20 mA
Zulässiger externerAusgangs–Lastwiderstand
min. 1 kΩ 600 Ω max.
Externe Ausgangsimpedanz 0,5 Ω max. ---
Auflösung 1/6000 (Vollausschlag)
Gesamtgenauigkeit 25 C° 0,4% bei VollausschlagGesa ge au g e
0 bis 55°C 0,8% bei Vollausschlag
Ausgangswerte (D/A–Wandlung) 16–Bit binär (4–stelliger Hexadezimalwert)
Messbereich bei –10 bis 10 V: F448 bis 0BB8 hex.Messbereich für andere Bereiche: 0000 bis 1770 hex.
Konvertierungszeit 2 ms/Punkt (6 ms/alle Punkte)
Galvanische Trennung Optokoppler–Isolierung zwischen analogen E/A Klemmen und internenSchaltungen. Keine galvanische Trennung zwischen den analogenE/A–Signalen.
Analoge E/A–SignalbereicheAnaloge E/A–Signalbereich werden digital gewandelt, wie es in diesem Ab-schnitt beschrieben wird.
Die analoge E/A–Baugruppe wandelt Analogeingangsdaten in digitale Werte.Die digitalen Werte hängen von den Eingangssignalbereichen ab, wie es in derfolgenden Abbildung gezeigt wird. Über–/unterschreitet die Eingabe den spezi-fizierten Bereich, befinden sich die gewandelten A/D–Daten fest auf dem un-teren oder oberen Grenzwert.
–10 bis 10 VDer –10 V bis 10 V–Bereich entspricht dem hexadezimalen Wert F448 bis0BB8 (–3000 bis 3000). Der gesamte Datenbereich ist F31C bis 0CE4 (–3300bis 3300). Eine negative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte DatenHexadezimal (Dezimalzahl)
0CE4 (3300)0BB8 (3000)
–11 V –10 V
0 V10 V 11 V
F448 (–3000)F31C (–3300)
0000 (0)
Analogeingangs–signalbereiche
3-1AbschnittAnaloge E/A–Funktionen
171
0 bis 10 V Der 0 bis 10 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Eine ne-gative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte DatenHexadezimal (Dezimalzahl)
189C (6300)1770 (6000)
–0,5 V
0 VFED4 (–300) 10 V 10,5 V
0000 (0)
0 bis 5 V Der 0 bis 5 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Eine ne-gative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte DatenHexadezimal (Dezimalzahl)
189C (6300)1770 (6000)
–0,25 V
0 V5 V 5,25 VFED4 (–300)
0000 (0)
1 bis 5 VDer 1 bis 5 V–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0 bis6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Ein-gangssignale zwischen 0,8 und 1 V werden als 2er–Komplemente ausgedrückt.Fällt die Eingabe unter 0,8 V, wird die Drahtbruch–Erfassung aktiviert und derWert der gewandelten Daten beträgt 8000.Gewandelte DatenHexadezimal (Dezimalzahl)
189C (6300)1770 (6000)
0000 (0)
FED4 (–300)
0,8 V
1 V 5 V 5,2 V
0 bis 20 mADer 0 bis 20 mA–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0
3-1AbschnittAnaloge E/A–Funktionen
172
bis 6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Einenegative Spannung wird als 2er–Komplement ausgedrückt.
Gewandelte DatenHexadezimal (Dezimalzahl)
189C (6300)1770 (6000)
–1 mA
0 mA 20 mA 21 mAFED4 (–300)
0000 (0)
4 bis 20 mA Der 4 bis 20 mA–Bereich entspricht dem hexadezimalen Wert 0000 bis 1770 (0bis 6000). Der gesamte Datenbereich ist FED4 bis 189C (–300 bis 6300). Ein-gangssignale zwischen 3,2 und 4 mA werden als 2er–Komplemente ausge-drückt. Fällt die Eingabe unter 3,2 mA, wird die Drahtbruch–Erfassung aktiviertund der Wert der gewandelten Daten beträgt 8000.
Gewandelte DatenHexadezimal (Dezimalzahl)
189C (6300)1770 (6000)
0000 (0)
FED4 (–300)
3,2 mA
4 mA 20 mA 20,8 mA
0 mA
Die analoge E/A–Baugruppe wandelt die digitalen Ausgabedaten in analogeWerte. Die analogen Werte hängen von den Ausgangssignalbereichen ab, wiees in der folgenden Abbildung gezeigt wird.
–10 bis 10 VDie hexadezimalen Werte F448 bis 0BB8 (–3000 bis 3000) entsprechen einemanalogen Spannungsbereich von –10 bis 10 V. Der gesamte Ausgabebereichumfasst –11 bis 11 V. Spezifizieren Sie eine negative Spannung als 2er–Kom-plement.
Gewandelte DatenHexadezimal (De-zimalzahl)
11 V10 V
F31C(–3300)
F448(–3000) 0000 (0)
0 V
–10 V–11 V
8000
7FFF0BB8(3000)
0CE4(3300)
Analogausgangs–signalbereiche
3-1AbschnittAnaloge E/A–Funktionen
173
0 bis 10 V Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-gen Spannungsbereich von 0 bis 10 V. Der gesamte Ausgabebereich umfasst–0,5 bis 10,5 V. Spezifizieren Sie eine negative Spannung als 2er–Komplement.
GewandelteDatenHexadezimal(Dezimalzahl)
10,5 V10 V
0 V
8000 FED4 (–300)
–0,5 V1770(6000)
189C(6300)0000 (0) 7FFF
1 bis 5 VDie hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-gen Spannungsbereich von 1 bis 5 V. Der gesamte Ausgabebereich beträgt 0,8bis 5,2 V.
GewandelteDatenHexadezimal(Dezimalzahl)
5,2 V5 V
1 V
0,8 V0 V
FED4(–300)
1770(6000)
189C(6300)
8000 0000 (0) 7FFF
0 bis 20 mADie hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-gen Strombereich von 0 bis 20 mA. Der gesamte Ausgabebereich umfasst 0 bis21 mA.
GewandelteDatenHexadezimal(Dezimalzahl)
21 mA20 mA
0 mA 1770(6000)
189C(6300)
8000
0000(0)
7FFF
3-1AbschnittAnaloge E/A–Funktionen
174
4 bis 20 mA Die hexadezimalen Werte 0000 bis 1770 (0 bis 6000) entsprechen einem analo-gen Strombereich von 4 bis 20 mA. Der gesamte Ausgabebereich umfasst 3,2bis 20,8 mA.
GewandelteDatenHexadezimal(Dezimalzahl)
20,8 mA20 mA
4 mA
3,2 mA
0 mAFED4(–300)
1770(6000)
189C(6300)
8000 0000 (0) 7FFF
Die Mittelwertfunktion für die Eingänge wird über den DIP–Schalter aktiviert. DieMittelwertfunktion speichert den Mittelwert (ein gleitender Mittelwert) der letztenacht Eingangswerte als gewandelte Wert. Verwenden Sie diese Funktion, umEingangswerte zu glätten, die in einem kurzen Intervall schwanken.
Die Drahtbruch–Erfassungsfunktion wird aktiviert, wenn der Eingangsbereichauf 1 bis 5 V eingestellt wurde und die Spannung unter 0,8 V abfällt oder wennder Eingangsbereich auf 4 bis 20 mA eingestellt wird und der Strom unter 3,2 mAsinkt. Wird die Drahtbruch–Erfassungsfunktion aktiviert, werden die gewandel-ten Daten auf 8000 gesetzt.
Die Drahtbruch–Erfassungsfunktion wird aktiviert oder gesperrt, wenn Datengewandelt werden. Liegt das Eingangssignal wieder in einem wandelbaren Be-reich, wird die Drahtbruch–Erfassung automatisch gesperrt und die Ausgabekehrt zum normalen Wert zurück.
Einsatz analoger E/A
E/A–Bereiche spezifizieren
Baugruppe anschließen
Analoge E/A verdrahten
Kontaktplan–Programmabarbeitung
Analogeingänge: 0 bis 5 VDC, 1 bis 5 VDC, 0 bis 10 VDC, –10 bis 10 VDC, 0 bis 20 mA oder 4 bis 20 mA
Analogausgang: 1 bis 5 VDC, 0 bis 10 VDC, –10 bis 10 VDC, 0 bis 20 mA oder 4 bis 20 mA
Spezifizieren Sie Eingänge als Spannungs– oder Analogeingängeund stellen Sie die Mittelwertfunktion ein.
Schließen Sie die analoge E/A–Baugruppe an.
Anschluss analoger E/A–Geräte.
Schreiben Sie den jeweiligen Code.
Analogeingänge: Konvertierte Daten lesen.
Analogausgang: Sollwert schreiben.
Mittelwertfunktion fürAnalogeingangssignale
Drahtbruch–Erfassungsfunktion fürAnalogeingänge
3-1AbschnittAnaloge E/A–Funktionen
175
Analogeingänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–ProgrammWort (n + 1)
MOVE–Befehl
Schreibt den Bereich-scode. Liest die ge-wandelten Werte.
Hierbei entspricht “m” den letzten Eingangswortund “n” dem letzten Ausgangswort, das der CPU–,vorhergehenden Erweiterungsbaugruppe oder derE/A–Erweiterungsbaugruppe zugewiesen ist.
Analoge GeräteTemperaturfühlerDrucksensorGeschwindigkeitssensorFlusssensorSpann.–/StrommeterAndere
Wort (m + 1)
Wort (m + 2)
Bereichscode
Gewandelter Wert vonAnalogeingang 0Gewandelter Wertvon Analogeingang 1
(21)
Analogausgänge
CPU–Baugruppe Analoge E/A–Baugruppe
Kontaktplan–Programm
MOVE–Befehl
Schreibt den Bereich-scode. Schreibt denSollwert
Wort (n + 1)
(Sehen Sie den Hinweis.)
Analoge GeräteJustiergeräte
Servoregler
Frequenzumrichter
Andere
Hinweis Wort (n + 1) kann für den Bereichscode oder den analogen Ausgabesollwertverwendet werden.
BereichscodeAnaloger Ausgabe–sollwert
Hierbei entspricht “n” dem letzten Ausgangswort,das der CPU–, vorhergehenden Erweiterungs–oder E/A–Erweiterungsbaugruppe zugewiesenist.
(21)
Dieser Abschnitt beschreibt, wie eine analoge E/A–Baugruppe an die CPU–Baugruppe angeschlossen wird.
Maximal 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen, einschließlichvon bis zu 4 analogen E/A–Baugruppen, können mit einer CPM2C–SPS ver-bunden werden. Es bestehen keine Vorschriften für die Anschlussreihenfolge,wenn die analoge E/A–Baugruppe zusammen mit anderen Erweiterungs– oderE/A–Erweiterungsbaugruppen verwendet wird.
CPU–Baugruppe
Analoge E/A–Baugruppen CPM2C–MAD11
E/A–Erweiterungs–baugruppe
Anschluss der analogenE/A–Baugruppe.
3-1AbschnittAnaloge E/A–Funktionen
176
E/A–ZuweisungEin–/Ausgänge werden der analogen E/A–Baugruppe auf die gleiche Weise zu-gewiesen, wie anderen Erweiterungs– oder E/A–Erweiterungsbaugruppen; dieZuweisung beginnt mit dem nächsten Wort, das dem zu letzt zugewiesenenWort der CPU–Baugruppe folgt oder das der vorhergehenden Erweiterungs-baugruppe oder E/A–Erweiterungsbaugruppe zugewiesen wurde. Die Zuwei-sung ist wie folgt, wenn “m” das letzte zugewiesene Eingangswort und “n” dasletzte zugewiesene Ausgangswort auf der CPU–Baugruppe oder der vorherge-henden Erweiterungs– oder E/A–Erweiterungsbaugruppe ist:
Analoge E/A–Baugruppe CPM2C–MAD11
Analogeingang 0: Wort m+1Analogeingang 1: Wort m+2
Analogausgang: Wort n+1
Zum Beispiel wird im folgenden Diagramm eine analoge E/A–Baugruppe aneine CPU–Baugruppe mit 20 Ein–/Ausgängen angeschlossen.
CPU–Bau-gruppe
Analoge E/A–Baugruppe CPM2C–MAD11
CPU–Baugrp.eing.: IR 000Analogeingang 0: IR 001Analogeingang 1: IR 002
CPU–Baugrp.ausg.: IR 010Analogausgang: IR 011
E/A–Signalbereiche werden durch Einstellung des DIP–Schalters für analogeSpannungen konfiguriert und indem ein Bereichscode ins Ausgangswort deranalogen E/A–Baugruppe geschrieben wird. E/A–Signalbereiche werdendurch Einstellung des DIP–Schalters für analoge Ströme konfiguriert.
E/A–Erweiterungs–steckverbinder DIP–Schalter
Aktiviert die Mittelwertfunktion fürdie Eingänge und das Umschaltenzwischen Spannungs– und Stro-meingängen
Analog–Eingangsklemmen
E/A–Erweiterungs–steckverbinder
Analog–Ausgangsklemmen
DIP–SchaltereinstellungenStellen Sie den DIP–Schalter wie nachfolgend gezeigt ein. Alle Schalter sindwerksseitig auf OFF gesetzt.
Mittelwertfunktion für Analogeingang 0(OFF: keine Mittelwertbildung; ON: Mittelwertbildung)
Mittelwertfunktion für Analogeingang 1(OFF: keine Mittelwertbildung; ON: Mittelwertbildung)
Eingangstyp für Analogeingang 0(OFF: Spannungseingang; ON Stromeingang)
Eingangstyp für Analogeingang 1(OFF: Spannungseingang; ON Stromeingang)
---1
23
4
Einstellung des E/A–Signalbereichs
!
3-1AbschnittAnaloge E/A–Funktionen
177
Vorsicht Stellen Sie sicher, die Schalter des DIP–Schalters zum Auswählen des Ein-gangstyps auf OFF zu setzen, wenn ein Spannungseingang gewünscht wird.Diese Schalter werden nur für einen Stromeingang auf ON gestellt.
Hinweis Berühren Sie den DIP–Schalter nicht während des Betriebs. Statische Elektrizi-tät könnte Verarbeitungssfehler verursachen.
BereichscodeUm Daten zu konvertieren muss der Bereichscode für die analoge E/A–Bau-gruppe eingestellt werden.
Die Bereichscode–Einstellungen ermöglichen kombinierte Signalbereiche fürAnalogein– und –ausgänge, wie es in der folgenden Tabelle dargestellt ist.
Bereichs–code
Analogeingang 1Signalbereich
Analogeingang 2Signalbereich
Analog–Ausgangs–
signalbereich
000 –10 bis 10 V –10 bis 10 V
001 0 bis 10 V 0 bis 10 V
010 1 bis 5 V oder 4 bis 20 mA (wird über DIP–Schalter ausgewählt)
1 bis 5 V
011 1 bis 5 V oder 0 bis 20 mA (wird über DIP–Schalter ausgewählt)
0 bis 20 mA
100 --- 4 bis 20 mA
Schreiben Sie die Bereichscodes im ersten Zyklus der Programmausführung indas Ausgangswort (n + 1) der Analog–E/A–Baugruppe.
n+1
Analog–aus-gang
Analog–ein–gang 1
Analog–ein–gang 0
1 0 0 0 0 0 015 8 7 6 5 4 3 2 1 0
BeispielDie folgenden Befehle stellten Analogeingang 0 auf 4 bis 20 mA, Analogeingang1 auf 0 bis 10 V und den Analogausgang auf –10 bis 10 V ein.
SR 25315(Erster Zyklus–EIN–Merker)
Analogeingang 0: 4 bis 20 mA
Analogeingang 1: 0 bis 10 V
Analogausgang: –10 bis 10 V
MOV(21)
#800A
011
Die Analog–E/A–Baugruppe beginnt erst mit der Konvertierung der analogenE/A–Werte, nachdem der Bereichscode geschrieben wurde. Bis Wandlungs-starts besitzen Eingangssignale den Wert 0000 und 0 V oder 0 mA wird ausge-geben.
Nachdem der Bereichscode spezifiziert wurde, wird 0 V oder 0 mA für die 0 bis10 V–, –10 bis 10 V– oder 0 bis 20 mA–Bereiche ausgegeben und 1 V oder 4 mAfür den 1 bis 5 V– und 4 bis 20 mA–Bereich, bis ein gewandelter Wert ins Aus-gangswort geschrieben wird.
Nachdem Einstellen des Bereichscodes ist es nicht möglich, die Einstellung zuändern, während Spannung an der CPU–Baugruppe anliegt. Schalten Sie dieVersorgungsspannung der CPU–Baugruppe aus und wieder ein, um den E/A–Bereich zu ändern.
3-1AbschnittAnaloge E/A–Funktionen
178
Verdrahtung analoger E/A–GeräteInterne Schaltungen
Analogeingänge Analogausgänge
Analoge Masse
Eingang 0
Eingang 1
Analoge Masse
Ausgang
Inte
rne
Sch
altu
ngen
510 kΩ
510 kΩ
510 kΩ
510 kΩ
250 Ω
250 Ω
0–
0+
1+
1– Inte
rne
Sch
altu
ngen
–
V+
I+
AMN.v.
N.v.
Anschlussbelegungen
Analogeingangs–klemmen
Analogeing. 0 +Analogeing. 0 –Analogeing. 1 +Analogeing. 1 –Analoge Masse
Analogausgangs–klemmen
Analog. Span.–ausg.Ausgang, MasseAnalog. Stromausg.Nicht verwendetNicht verwendet
EIN0 +0 –1 +1 –AG
EINV+–I+NCNC
Analogeingangsverdrahtung
AnalogesAusgabe-gerät
AnalogeE/A–Bau-gruppe
+ +
– –
Analoge Ausgangsverdrahtung
AnalogesGerät mitSpannungs-eingang
AnalogeE/A–Bau-gruppe
Analoge E/A–Bau-gruppe
V+ +
– –
I+ +
– –
AnalogesGerät mitStrom–eingang
Hinweis 1. Verwenden Sie abgeschirmtes, verdrilltes Kabel, schließen Sie aber die Ab-schirmung nicht an.
2. Verlegen Sie die Verkabelung getrennt von Versorgungsspannungsleitun-gen (AC–Spannungsversorgungskabel, Versorgungsspannungsleitungen,usw.)
3. Schließen Sie die Klemmen + und – kurz, wenn ein Eingang nicht verwendetwird.
4. Verlegen Sie die Verkabelung getrennt von Versorgungsspannungsleitun-gen (AC–Spannungsversorgung, Hochspannung, usw.)
5. Installieren Sie bei Störungen in der Spannungsversorgung einen Entstör-filter am Eingangsteil und an der Spannungsversorgung–Baugruppe.
3-1AbschnittAnaloge E/A–Funktionen
179
ReferenzinformationenBeachten Sie die folgenden Informationen über offene Eingangskreise, wennSie Spannungseingänge verwenden.
Wird die gleiche Spannungsversorgung verwendet, wie es im folgenden Dia-gramm dargestellt ist und tritt eine offene Schaltung an Eingang A oder B auf,fließt ein unerwünschter Strom, wie es von den gestrichelten Linien in der Abbil-dung dargestellt wird, wodurch eine Spannung von ca. 33% bis 50% am ande-ren Eingang erzeugt wird. Wird der 5 V–Bereich verwendet, arbeitet die Draht-bruch–Erfassungsfunktion nicht. Tritt eine offene Schaltung an Punkt C auf, ar-beitet die Drahtbruch–Erfassungsfunktion ebenfalls nicht, da die negativen Sei-ten gleich sind.
GerätmitAnalo-gaus-gang 1
GerätmitAnalo-gaus-gang 2
24 VDC
A
B C
Gibt, z. B. ein analoges Gerät 2 5 V aus und wird die gleiche Spannungsversor-gung verwendet, wie es oben dargestellt ist, liegen ca. 33% oder 1,6 V an demEingang für Eingabegerät 1 an.
Um das obenstehende Problem zu beheben, müssen entweder separate Span-nungsversorgungen verwendet oder eine galvanische Trennung an jedem Ein-gang installiert werden. Dieses Problem tritt nicht bei Stromeingängen auf, auchwenn die gleiche Spannungsversorgung verwendet wird.
Hinweis Wird Spannung angelegt (bei der Einstellung des Bereichscodes) oder tritt eineVersorgungsspannungsunterbrechung auf, kann eine impulsförmige Ausgabeam Analogausgang mit einer Dauer von bis zu 1 ms generiert werden.Sie müssen die nachfolgend beschriebenen Gegenmaßnahmen vorsehen, fallsdies Probleme beim Betrieb verursacht wird.
• Schalten Sie die Spannungsversorgung der CPM2C–CPU–Baugruppe zuerstein und dann, nachdem Sie sichergestellt haben, dass eine einwandfreie Re-aktion erfolgt, die Spannungsversorgung der Last.
• Schalten Sie die Spannungsversorgung der Last aus, bevor Sie die Span-nungsversorgung der CPM2C–CPU–Baugruppe ausschalten.
Kontaktplan–ProgrammSpezifizieren des BereichscodesSpezifizieren Sie den E/A–Signalbereich, indem Sie den Bereichscode im er-sten Zyklus der Programmausführung über den Kontaktplan in das Ausgangs-
3-1AbschnittAnaloge E/A–Funktionen
180
wort der analogen E/A–Baugruppe schreiben. Die analoge E/A–Baugruppe be-ginnt, analoge E/A–Werte umzuwandeln, sobald der Bereichscode spezifiziertwurde und wandelbare Werte zur Verfügung stehen. (Sehen Sie Seite 177.)
Schreiben Sie im ersten Zyklus der Programmausführung den Bereichscode indas Ausgangswort der analogen E/A–Baugruppe; das Ausgangswort der ana-logen E/A–Baugruppe ist “n+1”, wenn “n” das letzte Wort ist, das der CPU–Bau-gruppe oder einer vorhergehenden Erweiterungs– oder E/A–Erweiterungsbau-gruppe in der E/A–Konfiguration zugewiesen wurde.
Lesen gewandelter AnalogeingangswerteDer Kontaktplan kann zum Lesen der Speicherbereiche verwendet werden, indem die gewandelten Werte gespeichert sind. Werte werden an die nächstenzwei Worte (m + 1, m + 2) ausgegeben, die dem letzten Eingangswort (m) fol-gen, das der CPU–Baugruppe oder der vorhergehenden Erweiterungs– oderE/A–Erweiterungsbaugruppe zugewiesen wurde.
Schreiben analoger AusgabesollwerteDer Kontaktplan kann dazu verwendet werden, Daten ins Ausgangswort, indem der Sollwert gespeichert wird, zu schreiben. Hierbei ist das Ausgangswort“n+1”, wenn “n” dem letzten Ausgangswort entspricht, das der CPU–, einer vor-hergehenden Erweiterungsbaugruppe oder E/A–Erweiterungsbaugruppe zu-gewiesen wurde.
EinschaltverhaltenNach dem Einschalten der Spannung werden zwei Zyklen plus ca. 50 ms benö-tigt, bevor die ersten Daten gewandelt werden. Die folgenden Befehle könnenan den Anfang des Programms gestellt werden, um das Lesen der gewandeltenDaten der Analogeingänge zu verzögern, bis die Wandlung tatsächlich erfolgt.
Hinweis Analoge Eingabedaten besitzen den Wert 0000, bis eine Anfangsverarbeitungdurchgeführt wird. Analoge Ausgabedaten besitzen den Wert 0 V oder 0 mA, bisder Bereichscode geschrieben wird. Nachdem der Bereichscode geschriebenwurde, wird 0 V oder 0 mA für die 0 bis 10 V–, –10 bis 10 V– oder 0 bis 20 mA–Be-reiche ausgegeben und 1 V oder 4 mA für den 1 bis 5 V– und 4 bis 20 mA–Be-reich.
SR 25313(Immer–EIN–Merker)
TIM 005 wird ausgeführt, sobald dieSpannung eingeschaltet wird. Nach0,1 bis 0,2 s (100 bis 200 ms) schal-tet sich der Fertigmerker für TIM 005ein und die gewandelten Daten desAnalog–eingangs werden von IR 001gelesen und in DM 0000 gespei-chert.
T005
MOV(21)
001
DM 0000
TIM 005
#0002
HandhabungsproblemeTritt ein Fehler in einer analogen E/A–Baugruppe auf, werden die Fehlermerkerin AR 0200 bis AR 0204 gesetzt. Die Adressen der Fehlermerker werden in derReihenfolge aktiviert, in der die Erweiterungs– und E/A–Erweiterungsbaugrup-pen an die SPS angeschlossen sind, wobei AR 0200 für die Erweiterungs– oderE/A–Erweiterungsbaugruppe verwendet wird, die der CPU–Baugruppe amnächsten ist. Verwenden Sie diese Merker im Programm, falls eine Fehleraus-wertung erfolgen soll.
Tritt ein Fehler in der analogen E/A–Baugruppe auf, beträgt der Wert der Ana–logeingangsdaten 0000 und 0 V/0 mA wird als analoge Ausgabe ausgegeben.
Tritt ein CPU–Fehler oder E/A–Busfehler (schwerwiegender Fehler) in derCPU–Baugruppe auf und ist die Analogausgabe auf 1 bis 5 V oder 4 bis 20 mAeingestellt, wird 0 V oder 0 mA ausgegeben. Bei anderen schwerwiegendenFehlern an der CPU–Baugruppe wird 1 V oder 4 mA ausgegeben.
3-2AbschnittTemperaturfühler–Baugruppen
181
Programmbeispiel)In diesem Programmbeispiel werden die folgenden Bereiche verwendet: Analogeingang 0: 0 bis 10 VAnalogeingang 1: 4 bis 20 mAAnalogausgang: 0 bis 10 V
25315(Erster Zyklus EIN–Merker)
Schreibt den Bereichscode (8051) in die Baugruppe.
Liest den gewandelten Wert von Analogeingang 0.
Liest den gewandelten Wert von Analogeingang 1.
Der Inhalt von DM 0010 wird ins Ausgangswort alsanaloger Ausgabesollwert geschrieben.
25313(Immer–EIN–Merker)
Drahtbruch–Alarm
MOV(21)
#8051
011
TIM 005
#0002
MOV(21)
001
DM 0000
Ausführungs-bedingungTIM 005
CMP (20)
002
#8000
Ausführungs-bedingungTIM 005
0100025506(=)
MOV(21)
002
DM 0001
Ausführungs-bedingungTIM 005
MOV(21)
DM 0010
011
Ausführungs-bedingungTIM 005
3-2 Temperaturfühler–Baugruppen
3-2-1 Temperaturfühler–Baugruppen der CPM1A/CPM2ABis zu drei Erweiterungsbaugruppen oder E/A–Erweiterungsbaugruppen kön-nen mit der CPU–Baugruppe der CPM1A oder CPM2A verbunden werden.Eine, zwei oder alle drei dieser Baugruppen können CPM1A–TS001 oderCPM1A–TS101 Temperaturfühler–Baugruppen sein. Wird ein CPM1A–TS002oder CPM1A–TS102 Temperaturfühler–Baugruppe mit der CPU–Baugruppeverbunden, dann kann nur eine andere Erweiterungs– oder E/A–Erweiterungs-baugruppe angeschlossen werden. Die andere Baugruppe kann eineCPM1A–TS001/TS101–Temperaturfühler–Baugruppe sein.
Jede CPM1A–TS001/TS101–Temperaturfühler–Baugruppen bietet 2 Ein-gänge und jede CPM1A–TS002/TS102 Temperaturfühler–Baugruppen bietet 4Eingänge; hierdurch stehen bis zu 6 Temperaturfühler–Eingänge für eine
3-2AbschnittTemperaturfühler–Baugruppen
182
CPM1A– oder CPM2A–SPS zur Verfügung. Thermoelemente oder Platin–Wi-derstandsthermometer können angeschlossen werden.
Bis zu 3 Baugruppen, einschließlich der E/A–Erweiterungsbaugrup-pen und andere Erweiterungsbaugruppen (nur 2 Baugruppen beiVerwendung von CPM1A–TS002/TS102)
CPM1A–TSjjj Temperaturfühler–Bau-gruppe
Temperaturfühler–Eingänge
Thermoelemente oder Platin–Wider-standsthermometer
CPM1A–20EDR1–E/A–Erweiterungs-baugruppe
CPM1A–8ED–E/A–Erweiterungs-baugruppe
CPM–/CPM1A–/CPM2A–CPU–Baugruppe
Technische DatenCPM1A–TS001 CPM1A-TS002 CPM1A-TS101 CPM1A-TS102
Temperaturfühler Thermoelemente
Umschaltbar zwischen K und J, aber dergleiche Typ muss für alle Eingängeverwendet werden.
Platin–Widerstandsthermometer
Umschaltbar zwischen Pt100 und JPt100,aber der gleiche Typ muss für alleEingänge verwendet werden.
Anzahl der Eingänge 2 4 2 4
Zugewiesene Eingangsworte 2 4 2 4
Max. Anzahl der Baugruppen(Sehen Sie den Hinweis 1)
3 1 3 1
Genauigkeit (Der größere von±0,5% des gewandeltenWertes oder max. ±2_C) ±1 Ziffer (sehenSie Hinweis 2).
(Der größere von±0,5% des gewandeltenWertes oder max. ±1_C) ±1 Ziffer
Konvertierungszeit 250 ms für 2 oder 4 Eingänge
GewandelteTemperaturdaten
16 Bit–Binärdaten (4–stelliger Hexadezimal–Wert)
Galvanische Trennung Optokoppler zwischen allen Temperatureingangssignalen
Hinweis 1. Werden nur CPM1A–TS001 und CPM1A–TS101 verwendet, dann könnenbis zu 3 Baugruppen, einschließlich E/A–Erweiterungsbaugruppen und an-dere Erweiterungsbaugruppen angeschlossen werden. Wird eineCPM1A–TS002 oder CPM1A–TS102 verwendet, dann kann nur eine an-dere E/A–Erweiterungsbaugruppe oder Erweiterungsbaugruppe ange-schlossen werden. Die CPM1A–TS001 oder CPM1A–TS101 könnte dieseandere Baugruppe sein, aber eine andere CPM1A–TS002 oderCPM1A–TS102 kann nicht angeschlossen werden.
2. Die Genauigkeit für einen Fühler des Typs K beträgt bei –100°C oder weni-ger max. ±4 _C ± 1 Ziffer.
3-2-2 Temperaturfühler–Baugruppen der CPM2CAn die CPM2C können bis zu vier CPM2C–TS001/TS101–Temperaturfühler–Baugruppen angeschlossen werden. Jede Temperaturfühler–Baugruppe bietet
3-2AbschnittTemperaturfühler–Baugruppen
183
2 Eingänge, d. h. das max. 8 Eingänge verwendet werden können. Thermoele-mente oder Platin–Widerstandsthermometer können angeschlossen werden.
CPM2C–CPU–BaugruppeE/A–Erweiterungs-baugruppe
CPM2C–TS001/101Temperaturfühler–Baugruppen
Temperaturfühler–Eingängemax. 8 Eingänge
Thermoelemente oder Platin–Wider-standsthermometer
Technische DatenCPM2C-TS001 CPM2C-TS101
Temperaturfühler Thermoelemente
Umschaltbar zwischen Kund J, aber der gleicheTyp muss für alleEingänge verwendetwerden.
Platin–Widerstands–thermometer
Umschaltbar zwischenPt100 und JPt100, aberder gleiche Typ muss füralle Eingänge verwendetwerden.
Anzahl der Eingänge 2
Zugewiesene Eingangsworte 2
Max. Anzahl der Baugruppen(Sehen Sie den Hinweis 1)
4 4
Genauigkeit (Der größere von±0,5%des gewandelten Wertesoder max. ±2_C) ±1Ziffer (sehen Sie denHinweis).
(Der größere von±0,5%des gewandelten Wertesoder max. ±1_C) ±1Ziffer
Konvertierungszeit 250 ms für 2 Eingänge
GewandelteTemperaturdaten
16 Bit–Binärdaten (4–stelliger Hexadezimal–Wert)
Galvanische Trennung Optokoppler zwischen allenTemperatureingangssignalen
Hinweis 1. Die Genauigkeit für ein Element des Typs K beträgt bei –100°C oder weni-ger max. ±4_C ± 1 Ziffer.
2. Die Fehlerabweichung für Temperaturen in °F entspricht dem doppeltenvon °C.
3-2AbschnittTemperaturfühler–Baugruppen
184
3-2-3 Verwendung der Temperaturfühler–Baugruppen
Temperaturbereich spezifizieren
Baugruppe anschließen
Temperaturfühler anschließen
Kontaktplan–Programmabarbeitung
Stellen Sie die Temperaturmasseinheit, ggf. die 2–Dezimalstellen–Betriebsart und den Temperaturbereich ein.Sehen Sie 3-2-5 Einstellung der Temperaturbereiche.
Schließen Sie die Temperaturfühler–Baugruppe an.Sehen Sie 3-2-4 Anschließen von Temperaturfühler–Baugruppen.
Schließen Sie den Temperaturfühler an.Sehen Sie 3-2-6 Anschliessen von Temperaturfühlern.
Temperaturdaten werden im Eingangswort abgespeichert.Sehen Sie 3-2-7 Kontaktplanrogrammierung.
3-2-4 Anschließen von Temperaturfühler–BaugruppenDieser Abschnitt zeigt Beispielkonfigurationen, die Temperaturfühler–Baugrup-pen enthalten.
CPM1A/CPM2A–Temperaturfühler–BaugruppenzuweisungenTemperaturfühler–Baugruppen werden auf die gleiche Weise Worte zugewie-sen, wie anderen Erweiterungs– und E/A–Erweiterungsbaugruppen: in der Rei-henfolge, in der die Baugruppen angeschlossen werden. Einer Temperaturfüh-ler–Baugruppe werden somit die nächsten Eingangsworte nach der Baugruppezugewiesen, mit der sie verbunden ist (CPU– oder andere Baugruppe).
Hinweis Nur eine Temperaturfühler–Baugruppe mit 4 Eingängen (CPM1A–TS002 oderCPM1A–TS102, 4 zugewiesene Worte) kann direkt an die CPU–Baugruppe an-geschlossen werden. Es bestehen jedoch keine Einschränkungen in der An-schlussreihenfolge.
Temperaturfühler–Baugruppen mit 2 Eingänge: CPM1A–TS001 und CPM1A–TS101 (2 zugewieseneWorte)
Temperatur–fühler–Baugruppen
2 Eingänge CPM1A–TS001CPM1A–TS101
Bis zu 3 Baugruppen könnenangeschlossen werden. Esgibt keine Einschränkungenb ü li h d R ih f l iE/A–Erweiterungs–
baugruppenMit 8 oder 20E/A–Anschlüssen
g gbezüglich der Reihenfolge, inder Baugruppenangeschlossen werden.
Analoge E/A–Baugruppen CPM1A-MAD01angeschlossen werden.
CompoBus/S–E/A–Link–Modul
CPM1A-SRT21
CPM1A– oder CPM2A–CPU–Baugruppe(mit 20, 30, 40 oder 60 E/A–Anschlüssen)
CPM1A–20EDR1–E/A–Erweiterungs-baugruppe
CPM1A–8ED–E/A–Erweiterungs-baugruppe
CPM1A–TS001/101Temperaturfühler–Baugruppe
3-2AbschnittTemperaturfühler–Baugruppen
185
WortzuweisungenDer CPM1A–TS001 und CPM1A–TS101 werden jeweils zwei Worte (eines fürjeden Eingang) zugewiesen. Ausgangsworten werden nicht zugewiesen.
Eingangs-wort–Adressen
Ausgangs-wort–Adressen
CPU–Baugruppe mit40 Anschlüssen
E/A–Erweiterungsbau-gruppe mit 20 E/A
IR 000IR 001
IR 010IR 011
IR 002
IR 012
Erweiterungsbaugruppemit 8 Eingängen
IR 003
Kein
CPM1A–TS001/101Temperaturfühler–Bau-gruppe
IR 004IR 005
Kein
Temperaturfühler–Baugruppen mit 4 Eingänge (4 zugewiesene Worte): CPM1A–TS002 undCPM1A–TS102
Temperaturfühler–Baugruppen
4 Ein–gänge
CPM1A–TS002oderCPM1A–TS102
Nur 1Baugruppe
Bis zu 2 Baugruppenkönnen angeschlossenwerden. Es gibt keineEi h ä k2 Ein–
gängeCPM1A–TS001oderCPM1A–TS101
Nur 1Baugruppe
gEinschränkungenbezüglich derReihenfolge, in derBaugruppen
E/A–Erweiterungs–baugruppen
Mit 8 oder 20E/A–Anschlüssen
Baugruppenangeschlossenwerden.
Analoge E/A–Baugruppen CPM1A-MAD01werden.
CompoBus/S–E/A–Link–Modul
CPM1A-SRT21
WortzuweisungenDer CPM1A–TS002 und CPM1A–TS102 werden jeweils vier Worte (eines fürjeden Eingang) zugewiesen. Ausgangsworten werden nicht zugewiesen.
Eingangswort–Adressen
Ausgangswort–Adressen
CPU–Baugruppe mit60 Anschlüssen
E/A–Erweiterungs-baugruppe mit 20 E/A
IR 000IR 001IR 002
IR 010IR 011IR 012
IR 003
IR 013
CPM1A–TS002/102Temperaturfühler–Baugruppe
IR 004IR 005IR 006IR 007
Kein
CPM2C–Temperaturfühler–BaugruppenzuweisungenBis zu vier CPM2CTS001/101–Temperaturfühler–Baugruppen können ange-schlossen werden. Bis max. fünf Erweiterungs– und E/A–Erweiterungsbau-gruppen können angeschlossen werden (einschließlich Temperaturfühler–
CPM1A– oder CPM2A–CPU–Baugruppe(mit 20, 30, 40 oder 60 E/A–Anschlüssen)
CPM1A–20EDR1–E/A–Erweiterungs-baugruppe
CPM1A–TS002/102Temperaturfühler–Baugruppe
3-2AbschnittTemperaturfühler–Baugruppen
186
Baugruppen). Unabhängig davon, wie viele Baugruppen angeschlossen wer-den, können jedoch nicht mehr als 10 Eingangsworte und 10 Ausgangswortenin einer SPS zugewiesen werden. Es gibt keine Einschränkungen bezüglich derReihenfolge, in der Baugruppen angeschlossen werden können.
CPM2C–CPU–Baugruppe
E/A–Erweiterungs-baugruppe
CPM2C–TS001/101Temperaturfühler–Baugruppen
Max. vier Temperaturfühler–Baugruppen
Beispiel
WortzuweisungTemperaturfühler–Baugruppen werden auf die gleiche Weise Worte zugewie-sen, wie anderen Erweiterungs– und E/A–Erweiterungsbaugruppen: in der Rei-henfolge, in der die Baugruppen angeschlossen werden. Einer CPM2C–TS001– oder CPM2C–TS101–Temperaturfühler–Baugruppe werden somit dienächsten zwei Eingangsworte nach der Baugruppe, an die diese angeschlos-sen ist (CPU– oder andere Baugruppe), zugewiesen. Ausgangsworten werdennicht zugewiesen.
CPU–Baugruppemit 20 Anschlüssen
Ein-gängeIR 000
Aus-gängeIR 010
CPM2C–TS001Temperaturfüh-ler–Baugruppe
CPM2C–TS001Temperaturfüh-ler–Baugruppe
CPM2C–TS101Temperaturfüh-ler–Baugruppe
CPM2C–TS101Temperaturfüh-ler–Baugruppe
CPM2C–24EDTC–E/A–Erweiterungs-baugruppe
Ein-gängeIR 009
Aus-gängeIR 011
Ein-gängeIR 001IR 002
Aus-gängeKein
Ein-gängeIR 005IR 006
Aus-gängeKein
Ein-gängeIR 007IR 008
Aus-gängeKein
Ein-gängeIR 003IR 004
Aus-gängeKein
3-2-5 Einstellung der TemperaturbereicheDie Temperaturmasseinheit, die Anzahl der verwendeten Dezimalstellen undder Temperaturbereich wird mit den DIP–Schalter und Drehschalter auf derTemperaturfühler–Baugruppe eingestellt.
Hinweis 1. Schalten Sie immer die Spannungsversorgung aus, bevor Sie den Tempe-raturbereich einstellen.
2. Fassen Sie nie den DIP– oder Drehschalter während des Temperaturfüh-ler–Baugruppenbetriebs an. Statische Elektrizität könnte Verarbeitungs-fehler verursachen.
3-2AbschnittTemperaturfühler–Baugruppen
187
CPM1A/CPM2A–Temperaturfühler–BaugruppenCPM1A–TS001/002/101/102
DIP–SchalterWird verwendet, um dieTemperaturmasseinheitund die Anzahl der ver-wendeten Dezimalstel-len einzustellen.
DrehschalterWird verwendet,um den Tempera-turbereich einzu-stellen.
Temperatureingänge
CPM2C–Temperaturfühler–BaugruppenCPM2C–TS001/101
DIP–SchalterWird verwendet, um die Tempe-raturmasseinheit und die An-zahl der verwendeten Dezimal-stellen einzustellen.
DrehschalterWird verwendet, um denTemperaturbebereich einzu-stellen.
Temperatureingänge
Cold–Junction–Kompensation (nur TS001)
E/A–Erweiterungs–steckverbinder (Eingang)
E/A–Erweiterungssteck–verbinder (Ausgang)
Der DIP–Schalter wird dazu verwendet, die Temperaturmasseinheit (°C oder°F) und die Anzahl der verwendeten Nachkommastellen einzustellen.
---
1 2
CPM1A-TSjjj CPM2C-TSjjj
SW 1---
---1
2
F C
0.01 1 oder 0,1
Schalter 1 Einstellung
1 Temperaturmasseinheit AUS °Ce e a u asse e
EIN °F2 Anzahl verwendeter
NachkommastellenAUS Normal (0 oder 1 Ziffer nach dem
Komma, je nach Eingabebereich)
EIN 2–Dezimalstellen–Betriebsart (z.B., 0.01)
Hinweis Sehen Sie für Einzelheiten über die 2–Dezimalstellen–Betriebsart 3-2-8 Zwei–Dezimalstellen–Betriebsart.
DIP–Schalter–einstellungen
!
!
3-2AbschnittTemperaturfühler–Baugruppen
188
Der Drehschalter wird verwendet, um den Temperaturbereich einzustellen.
Vorsicht Stellen Sie den Temperaturbereich entsprechend dem mit der Baugruppe ver-bundenen Temperaturfühler ein. Temperaturdaten werden nicht richtig gewan-delt, wenn der Temperaturbereich nicht dem Fühler entspricht.
Vorsicht Stellen Sie den Temperaturbereich nicht auf einen anderen Wert ein als den, derin der folgenden Tabelle für den Temperaturbereich aufgeführt ist. Eine falscheEinstellung kann Funktionsfehler verursachen.
Ein–stellung
CPM1A-TS001/002CPM2C-TS001
CPM1A-TS101/102CPM2C-TS101g
Ein–gangstyp
Bereich(°C)
Bereich(°F)
Ein–gangstyp
Bereich(°C)
Bereich(°F)
0 K –200 bis1.300
–300 bis2.300
Pt100 –200,0 bis650,0
–300,0 bis1.200,0
1 0,0 bis500,0
0,0 bis900,0
JPt100 –200,0 bis650,0
–300,0 bis1.200,0
2 J –100 bis850
–100 bis1.500
--- Einstellung nicht möglich
3 0,0 bis400,0
0,0 bis750,0
---
4 bis F --- Einstellung nicht möglich ---
3-2-6 Anschluss der Temperaturfühler
Temperaturfühler–Baugruppen der CPM1A/CPM2A
CPM1A-TS001K– oder J–Thermoelemente können angeschlossen werden, aber beide Ther-moelemente müssen vom gleichen Typ sein und der gleiche Eingabebereichmuss für beide verwendet werden.
Ein-gang 0
+
Temperatureingang 0
Temperatureingang 1 Cold–Junction–Kompensation
Ein-gang 1
+
N.v. N.v. N.v.
Ein-gang 0
–
Ein-gang 1
–
N.v. N.v. N.v.N.v. N.v.
Drehschaltereinstellung
Thermoelemente
3-2AbschnittTemperaturfühler–Baugruppen
189
CPM1A-TS002K– oder J–Thermoelemente können angeschlossen werden, aber alle vierThermoelemente müssen vom gleichen Typ sein und der gleiche Eingabebe-reich muss für alle verwendet werden.
Eingang2+
Eingang3+
Eingang2–
Eingang3–
Temperatur–eingang 2
Temperatur–eingang 3
Eingang0+
Temperatur–eingang 0
Temperatur–eingang 1
Cold–Junction–Kompensation
Eingang1+
Ein-gang 0
–
Ein-gang 1
–
N.v.N.v. N.v.
N.v.
Hinweis Beachten Sie beim Einsatz einer Temperaturfühler–Baugruppe mit einem Ther-moelementeingang die folgenden Vorsichtsmaßnahmen:
• Entfernen Sie nicht den Cold–Junction–Kompensator, der zum Zeitpunktder Lieferung befestigt ist. Wird dieser entfernt, ist die Baugruppe nicht inder Lage, die Temperaturen richtig zu messen.
• Jeder der Eingangskreise wurde mit dem an die Baugruppe angeschlos-senen Cold–Junction–Kompensator kalibriert. Deshalb kann die Bau-gruppe auch nicht mit einem Cold–Junction–Kompensator einer anderenBaugruppe verwendet werden, da dann ebenfalls die Temperaturen nichtrichtig gemessen werden.
• Berühren Sie den Cold–Junction–Kompensator nicht. Hierdurch könnenebenfalls falsche Temperaturmessung entstehen.
CPM1A-TS101Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossenwerden, aber beide Thermometer müssen vom gleichen Typ sein und der glei-che Eingabebereich muss für beide verwendet werden.
Eingang 0A
Eingang 1A
Eingang 0B
Eingang 1B
Temperatureingang 0 Temperatureingang 1
Eingang 1B
Eingang 0B
N.v.N.v.
N.v.N.v.
N.v. N.v.
N.v. N.v.
Pt Pt
CPM1A-TS102Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossen
Platin–Widerstands–thermometer
3-2AbschnittTemperaturfühler–Baugruppen
190
werden, aber alle vier Thermometer müssen vom gleichen Typ sein und der glei-che Eingabebereich muss für alle verwendet werden.
Eingang 2A
Eingang 3A
Eingang 2B
Eingang 3B
Temperatur–eingang 2
Temperatur–eingang 3
Eingang 3B
Eingang 2B
Eingang 0A
Eingang 1A
Eingang 0B
Eingang 1B
Temperatur–eingang 0
Temperatur–eingang 1
Eingang 1B
Eingang 0B
N.v.
N.v.
Pt Pt Pt Pt
Hinweis Legen Sie keine Verkabelungen an den Klemmen auf, die nicht als Eingängeverwendet werden.
Temperaturfühler–Baugruppen der CPM2CCPM2C-TS001 (Thermoelemente)K– oder J–Thermoelemente können angeschlossen werden, aber beide Ther-moelemente müssen vom gleichen Typ sein und der gleiche Eingangsbereichmuss für beide verwendet werden.
Temperatureingang 0
Temperatureingang 1
Cold–Junction–Kompensation
0+
0–
NC
1+
1–
NC
Hinweis Beachten Sie beim Einsatz einer Temperaturfühler–Baugruppe mit einem Ther-moelementeingang die folgenden Vorsichtsmaßnahmen:
• Berühren Sie den Cold–Junction–Kompensator nicht. Hierdurch könnenebenfalls falsche Temperaturmessung entstehen.
CPM2C–TS101 (Platin–Widerstandsthermometer)Ein Pt100– oder JPt100–Platin–Widerstandsthermometer kann angeschlossenwerden, aber beide Thermometer müssen vom gleichen Typ sein und der glei-che Eingangsbereich muss für beide verwendet werden.
Temperatureingang 0
Temperatureingang 1
0A
0B
0B
1A
1B
1B
Pt
Pt
3-2AbschnittTemperaturfühler–Baugruppen
191
3-2-7 KontaktplanprogrammierungDie Temperaturdaten werden als 4–stelliger Hexadezimalwert in den der Tem-peraturfühler–Baugruppe zugewiesenen Eingangsworten gespeichert.
CPM1A-TS001/TS101 und CPM2C-TS001/TS101“m” ist das letzte Wort, das der CPU–, Erweiterungs– oder E/A–Erweiterungs-baugruppe, die unmittelbar vor der Temperaturfühler–Baugruppe angeschlos-sen ist, zugewiesen wurde.
Wort
m + 1 Konvertierte Temperaturdaten von Eingang 0
m + 2 Konvertierte Temperaturdaten von Eingang 1
CPM1A-TS002/TS102“m” ist das letzte Wort, das der CPU–, Erweiterungs– oder E/A–Erweiterungs-baugruppe, die unmittelbar vor der Temperaturfühler–Baugruppe angeschlos-sen ist, zugewiesen wurde.
Wort
m + 1 Konvertierte Temperaturdaten von Eingang 0
m + 2 Konvertierte Temperaturdaten von Eingang 1
m + 3 Konvertierte Temperaturdaten von Eingang 2
m + 4 Konvertierte Temperaturdaten von Eingang 3
Alle Temperaturfühler–BaugruppenNegative Werte werden als 2er–Komplemente gespeichert. Daten fürBereichscodes, die eine Ziffer nach dem Komma beinhalten, werden ohne dasKomma gespeichert, d.h. das 10–fache des tatsächlichen Wertes wirdgespeichert. Einige Beispiele sind in der folgenden Tabelle aufgeführt.
Eingang Datenwandlungs–Beispiele
Einheit: 1° K oder J 850° → 0352 Hex–200° → FF38 Hex
Einheit: 0,1° K, J, Pt oder JPt 10 x 500,0° → 5000 → 1388 Hex–20,0° → –200 → FF38 Hex–200,0° → –2000 → F830 Hex
Überschreitet der angelegte Temperaturwert den wandelbaren Bereich, werdendie gewandelten Temperaturdaten auf den Maximal– oder Minimalwert des Be-reichs gesetzt. Überschreitet der angelegte Temperaturwert den Bereich ummehr als eine spezifizierte Größe, erfasst die Drahtbruch–Erfassungsfunktioneine offen–Schaltung und die gewandelten Temperaturdaten werden auf 7FFFeingestellt. Die Drahtbruch–Erfassungsfunktion arbeitet auch bei einem fehler-haften Cold–Junction–Kompensator. Die Drahtbruch–Erfassungsfunktion wirdautomatisch zurückgesetzt und die Wandlung beginnt automatisch, wenn deram Eingang liegende Temperaturwert in den wandelbaren Bereich zurückkehrt.
Nachdem Einschalten der Spannung vergeht ca. 1 s, bevor die ersten Daten ge-wandelt werden. Die folgenden Befehle können an den Anfang des Programmsgestellt und IR 02000 ausgewertet werden, um das Lesen der gewandelten Da-ten der Analogeingänge zu verzögern, bis die Wandlung tatsächlich begonnenhat.
(Immer–EIN–Merker)
Dieser Wert zeigt an, dass die Temperatur-datenumwandlung begonnen hat.
02000
CMP (20)
001
#7FFE
25313
Anwenderdefinierter Merker, der anzeigt,dass die Initialisierung beendet wurde
25506 (=)
Hinweis Die Temperarurdaten werden auf den Wert 7FFE gesetzt, bis die tatsächlichenWerte vorliegen.
GewandelteTemperaturdaten
Einschaltverhalten
3-2AbschnittTemperaturfühler–Baugruppen
192
Tritt ein Fehler in einer Erweiterungsbaugruppe auf, werden die Fehlermerker inAR 0200 bis AR 0204 aktiviert (AR 0200 bis AR 0202 für die CPM1A/CPM2A).Sehen Sie Seite 554 für weitere Information. Die Adressen der Fehlermerker lie-gen in der Reihenfolge, in der die Erweiterungsbaugruppen an die SPS ange-schlossen sind, wobei AR 0200 für die Erweiterungsbaugruppe verwendet wird,die der CPU–Baugruppe am nächsten ist. Verwenden Sie diese Merker im Pro-gramm, falls eine Fehlerauswertung erfolgen soll.
Tritt ein Fehler in einer Temperaturfühler–Baugruppe auf, besitzen die gewan-delten Temperaturdaten den Wert 7FFF.
Hinweis Der Status von AR 0200 bis AR 0204 ändert sich nicht bei einer Drahtbruch–Er-fassung.
Das folgende Programmierbeispiel zeigt, wie die Eingabedaten von 2 Tempera-turfühler–Eingänge in BCD–Werte umgewandelt werden und das Ergebnis inDM 0000 und DM 0001 abgespeichert wird. Die folgende Systemkonfigurationwird verwendet.
CPU–Baugruppe mit 20 Anschlüssen
Temperaturfühler–Baugruppe
EingängeIR 000
AusgängeIR 010
EingängeIR 001IR 002
AusgängeKein
Temperaturfühler–Baugrp.einstellung: AUS (°C)Zwei–Dezimalstellen–Betriebsart: AUS (normal)Eingabebereichs–Einstellung: 1 (K2, 0,0 bis 500,0°C)Speicherwort Temperatureingang 0: IR 001Speicherwort Temperatureingang 1: IR 002
Handhabungsprobleme
Programmierbeispiel 1
3-2AbschnittTemperaturfühler–Baugruppen
193
Erfasst den Abschluss der Initialisierung von Eingang 0.
EIN, wenn Eingang 0 initialisiert wurde
Konvertiert den Inhalt von IR 001 (Temperaturdatenfür Eingang 0) in einen BCD–Wert und speichertdas Ergebnis in DM 0000.
Erkennt einen Drahtbruch–Alarm oder einen Bau-gruppenfehler und setzt die Temperaturdaten auf denFehlercode 7FFF.
Erfasst den Abschluss der Initialisierung von Eingang 1.
EIN, wenn Eingang 1 initialisiert wurde
EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-penfehler für Eingang 0 erkannt wurde.
Überprüft, ob die Temperaturdaten in IR 001 500,0 °C(1388 hex., ohne Komma) überschritten haben.
Ein, für einen Eingang 0–Temperaturfehler
02000
CMP (20)
001
#7FFE
25313
02001
CMP (20)
002
#7FFE
(Immer–EIN–Merker)
01000
CMP (20)
001
#7FFF
02000 Ausführungsbedingung
CMP (20)
001
#1388
01001
BCD (24)
001
DM 0000
25313
(Immer–EIN–Merker)
01002
CMP (20)
002
#7FFF
02001 Ausführungsbedingung
25506(=)
CMP (20)
002
#1388
01003
25505(>)
BCD (24)
002
DM 0001
25507(<)
Konvertiert den Inhalt von IR 002 (Temperaturdatenfür Eingang 1) in einen BCD–Wert und speichertdas Ergebnis in DM 0001.
Erkennt einen Drahtbruch–Alarm oder einen Bau-gruppenfehler und setzt die Temperaturdaten auf denFehlercode 7FFF.
EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-penfehler für Eingang 1 erkannt wurde.
Überprüft, ob die Temperaturdaten in IR 002 500,0 °C(1388 hex., ohne Komma) überschritten haben.
Ein, für einen Eingang 1–Temperaturfehler
25506(=)
25506
25506(=)
25505(>)
25507(<)
Das folgende Programmierbeispiel zeigt, wie die Eingabedaten von Tempera-turfühler–Eingang 0 in BCD–Werte umgewandelt werden und das Ergebnis inDM 0000 und DM 0001 abgespeichert wird. “0001” wird in DM 0001 gespei-chert, wenn die Eingabedaten einen negativen Wert darstellen. Die folgende
Programmierbeispiel 2
3-2AbschnittTemperaturfühler–Baugruppen
194
Systemkonfiguration wird verwendet.
CPU–Baugruppe mit 20 Anschlüssen
Temperaturfühler–Bau-gruppe
Temperaturfühler–Baugrp.–einstell.: AUS (°C)Zwei–Dezimalstellen–Betriebsart: AUS (normal)Eingabebereichs–Einstellung: 1 (Pt100, –200.0 bis 650.0°C)Speicherwort von Temperatureingang 0: IR 001
EingängeIR 000
AusgängeIR 010
EingängeIR 001IR 002
AusgängeKein
Erfasst den Abschluss der Initialisierung von Eingang 0.
EIN, wenn Eingang 0 initialisiert wurde
Sind die Eingabetemperaturdaten nicht negativ,wird der Inhalt von IR 001 (Temperaturdaten fürEingang 0) in einen BCD–Wert konvertiert und dasErgebnis in DM 0000 gespeichert.
Ausführungsbedingung
Erkennt einen Drahtbruch–Alarm oder einen Bau-gruppenfehler und setzt die Temperaturdaten auf denFehlercode 7FFF.
25313(Immer–EIN–Merker)
EIN, wenn ein Drahtbruch–Alarm oder ein Baugrup-penfehler für Eingang 0 erkannt wurde.
Speichert #0000 in 0001DM.
Sind die Eingabetemperaturdaten negativ, wird derInhalt von IR 001 in den absoluten Wert der Isttem-peratur konvertiert und das Ergebnis in DM 0010gespeichert.
Konvertiert den Inhalt von DM 0010 (absoluter Wertder negativen Temperaturdaten für Eingang 0) ineinen BCD–Wert und speichert das Ergebnis inDM 0000.
Speichert #0001 in DM 0001, um einen negativenWert anzuzeigen.
02000
CMP (20)
001
#7FFE
01000
CMP (20)
001
#7FFF
02000
25506(=)
MOV(21)
#0000
DM 0001
BCD (24)
001
DM 0000
00115
25506(=)
BCD (24)
DM 0010
DM 0000
SBB (51)
#0000
001
DM 0010
CLC(41)
MOV(21)
#0001
DM 0001
00115
Programmierung mit BCD(24)–Befehl
25606 (=)
3-2AbschnittTemperaturfühler–Baugruppen
195
02000
CMP (20)
001
#7FFE
Erkennt den Abschluss der Initialisierung.
EIN, wenn die Initialisierung abgeschlossen ist.
01000
CMP (20)
001
#7FFF
02000
25506(=)
Erfasst einen Drahtbruch–Alarm.
EIN, wenn ein Drahtbruch–Alarm erkannt wurde.
Programmierung mit dem SCL2(––)–Befehl (nur CPM2A/CPM2C)
Ausführungsbedingung
MOV(21)
#0000
DM 0001
25506(=)
SCL2 (–)
001
DM 0010
DM 0000
25506(=)
MOV(21)
#0001
DM 0001
25504 (CY)
25504 (CY)
Parametereinstellungenfür Datenumwandlung:
DM 0010
DM 0011
DM 0012
#0000
#0001
#0001
25313(Immer–EIN–Merker)
Speichert #0000 in DM 0001, wenn der konver-tierte Wert nicht negativ ist.
Speichert #0001 in DM 0001, wenn der konver-tierte Wert negativ ist.
Offset
∆X (hex.)
∆Y (BCD)
Betrieb
163 162 161 160IR 001
103 102 101 100
Binär–zu–BCD–Konvertierung
DM 0000
1/0
1: Negativ, 0: Nicht negativ0: Speichert “0000” bei n. negativ. Daten in DM 00011: Speichert “0001” bei negativen Daten in DM 0001
0 0 0 1/0
Zur Anzeige eines negativen Ergebnisses auf EIN gesetzt. CY (bei Einsatz des SCL2–Befehls)
3-2AbschnittTemperaturfühler–Baugruppen
196
3-2-8 Zwei–Dezimalstellen–BetriebsartWird Schalter 2 des DIP–Schalters eingeschaltet, werden Werte als zweistelligeDezimalwerte gespeichert. In diesem Fall werden Temperaturdaten als 6–stel-lige Hexadezimal(binär)–Daten mit 4 Stellen im ganzzahligen Teil und 2 Stellennach dem Komma gespeichert. Die tatsächlichen, im Speicher abgelegten Da-ten entsprechen dem 100–fachen des Istwertes, d.h. das Komma wird nicht an-gezeigt. In diesem Abschnitt werden Verfahren für die Anwendung dieser Datenbeschrieben.
Hinweis Nach der Einstellung zur Speicherung von Werten mit zwei Dezimalstellen wer-den Temperaturdaten mit bis zu zwei Stellen nachdem das Komma in 6–stelligeBinärdaten konvertiert; die eigentliche Auflösung beträgt jedoch nicht 0,01°C(°F). Aus diesem Grund können Sprünge und Ungenauigkeiten in der ersten Zif-fer nach dem Komma (0,1) auftreten. Betrachten Sie jede höhere Auflösung desnormalen Datenformats als Referenzdaten.
Die Struktur der im Speicher abgelegten Daten wird nachfolgend angezeigt. DerWert entspricht dem 100–fachen der Isttemperatur.
Linksliegende 3 Stellen und Merker
Links–/rechtsliegend–Merker
0: Linksliegend1: Rechtsliegend
Temperaturein-heit–Merker
0: °C1: °F
Drahtbruch–Merker
0: Normal 1: Fehler
Nicht ver-wendet.
immer 0
Temperaturdaten
Rechtsliegende 3 Stellen und Merker
Links–/rechtsliegend–Merker Zeigt an, ob die äußerst linken oder äußerst rechten 3 Stellenzur Verfügung gestellt werden.
Temperatureinheit–Merker Zeigt an, ob die Temperatur in °C oder °F verarbeitet wird.
Drahtbruch–Merker Wird eingeschaltet(1), wenn ein Drahtbruch erfasst wird. DieTemperaturdaten sind 7FF FFF, wenn dieser Merker aktiviertist.
jjjjjj
15 14 13 12
X 165 X 164 x 163
Links–/rechtsliegend–Merker
0: Linksliegend1: Rechtsliegend
Temperaturein-heit–Merker
0: °C1: °F
Drahtbruch–Merker
0: Normal 1: Fehler
Nicht verwen-det.
immer 0
Temperaturdaten
15 14 13 12
x 160X 162 X 161
Datenstruktur
3-2AbschnittTemperaturfühler–Baugruppen
197
Einige Beispiele von für diverse Temperaturwerte gespeicherten Daten sindnachfolgend dargestellt.
Beispiel 1Temperatur: 1.130,25°C×100: 113025Temperaturdaten : 01B981 hex.
Linksliegende 3 Stellen und Merker
Rechtsliegende 3 Stellen und Merker
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Merker
Daten
Temperatur-daten
Normal° C
Linksliegend
MerkerTemperatur-daten
0 0 1 B
8 9 8 1
15 14 13 12
0 0 0 0
X 165 X 164 x 163
0 1 B
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Normal° C
Rechtsliegend
15 14 13 12
1 0 0 0
x 162 x 161 x 160
9 8 1
Beispiel 2Temperatur: –100,12°C×100: –10012Temperaturdaten : FFD8E4 (hex., für –10012)
Linksliegende 3 Stellen und Merker
Rechtsliegende 3 Stellen und Merker
Merker Temperatur-daten
Merker Temperatur-daten
0 F F D
8 8 E 4
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Normal°C
Linksliegend
15 14 13 12
0 0 0 0
X 165 X 164 x 163
F F D
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Normal°C
Rechtsliegend
15 14 13 12
1 0 0 0
x 162 x 161 x 160
8 E 4
Datenwandlungs–Beispiele
3-2AbschnittTemperaturfühler–Baugruppen
198
Beispiel 3Temperatur: –200,12°F×100: –20012Temperaturdaten: FFB1D4 (hex. für –20012)
Linksliegende 3 Stellen und Merker
Rechtsliegende 3 Stellen und Merker
Merker Temperatur-daten
Merker Temperatur-daten
4 F F B
C 1 D 4
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Normal°F
Linksliegend
15 14 13 12
0 1 0 0
X 165 X 164 x 103
F F B
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Normal°F
Rechtsliegend
15 14 13 12
1 1 0 0
x 162 x 101 x 160
1 D 4
Beispiel 4Temperatur: Drahtbruch (°F)Temperaturdaten: 7FFF FFFF
Linksliegende 3 Stellen und Merker
Rechtsliegende 3 Stellen und Merker
Merker Temperatur-daten
Merker Temperatur-daten
6 7 F F
E F F F
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Fehler°F
Linksliegend
15 14 13 12
0 1 1 0
X 165 X 164 x 103
7 F F
Merker
Bits 08 bis 11 04 bis 07 00 bis 03
Daten
Fehler°F
Rechtsliegend
15 14 13 12
1 1 1 0
x 162 x 101 x 160
F F F
Hinweis 1. Äußerst linke Stellen werden auf den unteren Speicheradressen gespei-chert. Verarbeiten Sie die Daten bei der Programmierung auf den unterenSpeicheradressen wie die äußerst linken Stellen.
2. Stellen Sie sicher, dass die Daten mindestens alle 125 ms gelesen werden,um die CPU–Baugruppenzyklus– und Kommunikationszeit zu berücksichti-gen. Korrekte Daten stehen möglicherweise nicht zur Verfügung, wenn derLesezyklus größer als 125 ms ist.
3-2AbschnittTemperaturfühler–Baugruppen
199
Das folgende Programmbeispiel zeigt, wie die 2–Dezimalstellen–Betriebsartmit der folgende SPS–Konfiguration verwendet wird.
CPU–Baugruppe mit 20 Anschlüssen
E/A–Erweiterungs-baugruppe mit 20 E/A
EingängeIR 000
AusgängeIR 010
EingängeIR 001
AusgängeIR 011
Temperaturfühler–Baugrup-peneinstellung:OFF (°C)
Zwei–Dezimalstellen–Be-triebsart ON (2 Stellen wer-den nach dem Komma ge-speichert)
Temperaturfühler–Baugruppe
EingängeIR 002IR 003
AusgängeKein
In diesem Beispiel wird das 100–fache der Temperaturdaten von Eingang 0 imBinärformat in DM 0100 bis DM 0102 gespeichert.
Temperatureingang 0 IR 002Äußerst l. Daten
Äußerst r. Daten
IR 200
Bit
DM 0100
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
X 163
X 167X 162
X 166X 161
X 165X 160
X 164DM 0101
Das folgende Programm würde hierzu verwendet werden.
Programmbeispiel
3-2AbschnittTemperaturfühler–Baugruppen
200
25315(Erster–Zyklus–Merker)
25313(Immer–EIN–Merker)
25506(=)
02000 00213 (Drahtbruch erfasst)
00215 (äußerst linke Stellen)
02001 00215 (äußerst linke Stellen)
00215 (äußerst rechte Stellen)
(1)Stellt DM 0103 auf #0100 undDM 0102 auf #0000 ein.
Erfasst den Abschluss der Initialisierung von Eingang 0.
EIN, wenn Eingang 0 initialisiert wurde
Drahtbruch–Alarmausgang
Bereit zur Datenumwandlung.
(2)Äußerst linke Stellen wurden auf IR 200 übertragen
(3)
(4)
(5)
Äußerst linke und äußerstrechte Stellen wurden umge-stellt und auf IR 202 und IR201 übertragen.
Datenumstellung beendet.
MOV(21)
#0000
DM 0102
MOV(21)
#0100
DM 0103
CMP (20)
002
#7FFE
02000
MOV(21)
002
200
01000
SET 02001
MOVD (83)
002
#0020
201
MOVD (83)
200
#0300
201
MOVD (83)
200
#0011
202
RSET 02001
SET 02002
3-2AbschnittTemperaturfühler–Baugruppen
201
02002 20207 (nicht negative Daten)
20207 (negative Daten)
(6)Sind die Temperaturdaten nicht negativ, wer-den die Binärdaten in IR 202 und IR 201 ineinen BCD–Wert konvertiert und in DM 0101DM und DM 0100 gespeichert.
(7)Sind die Temperaturdaten negativ, werdendie 2er–Komplementdaten in IR 202 undIR 201 in Binärdaten konvertiert, die denAbsolutwert der Temperatureingabe dar-stellen und in HR 01 und HR 00 gespei-chert.
(8)Die Binärdaten in HR 01 und HR 00 werdenin einen BCD–Wert konvertiert und in DM0101 und DM 0100 gespeichert.
(9)“1” wird ins Bit von DM 0101, das ne-gative Daten anzeigt, geschrieben.
BCDL (59)
201
DM 0100
CLC(41)
SBB (51)
DM 0102
201
HR00
SBB (51)
DM 0103
202
HR01
BCDL (59)
HR00
DM 0100
MOVD (83)
#0008
#0300
DM 0101
SET 02002
Hinweis Der BCDL(59)Befehl steht nur in der CPM2A und CPM2C zur Verfügung.
Die den Nummern im obenstehenden Kontaktplanbeispiel entsprechenden Da-tenbewegungen werden im folgenden Diagramm veranschaulicht.
IR 002: Äußerst linke 3 Stellen der Temperaturdaten IR 002: Äußerst rechte 3 Stellen der Temperaturdaten
(6)Sind die Temperaturdaten nicht negativ, wer-den die Binärdaten in IR 202 und IR 201 ineinen BCD–Wert konvertiert und in DM 0101DM und DM 0100 gespeichert.
(8)Sind die Temperaturdaten negativ, werden dieBinärdaten in HR 01 und HR 00 in einenBCD–Wert konvertiert und in DM 0101 undDM 0100 gespeichert.
(9)Sind Temperaturdaten negativ,wird hier “8” eingetragen (d.h.“1” wird in das Bit, das negative Daten anzeigt, geschrieben).
(7)Die 2er–Komplementdaten in IR 202 und IR 201 werden als Binärdaten von den Datenin DM 0103 DM und DM 0102 subtrahiert und in HR 01 und HR 00 gespeichert.
0 165 164 163
0 165 164 163
(2)
1 162 161 160
163 162 161 1600 0 165 164
103 102 101 1000/8 106 105 104
(4)(5)
(3)
0 1 0 0
2er–Komplementdaten
0 0 0 0
2er–Komplementdaten
163 162 161 1600 0 165 164
–
#0100 #0000(1) (1)
IR 200
IR 202
IR 202
DM 0103
IR 201
DM 0102
HR 01 HR 00
IR 201
DM 0100DM 0101
3-3AbschnittCompoBus/S–E/A–Link–Module
202
3-3 CompoBus/S–E/A–Link–ModuleEine SPS der Serie CPM1A, CPM2A oder CPM2C kann als Slave in einer Com-poBus/S– (oder einer SRM1–CompoBus/S–)Master–Feldbussteuerung arbei-ten, wenn ein CompoBus/S–E/A–Link–Modul angeschlossen wird. Das Com-poBus/S–E/A–Link–Modul stellt eine E/A–Verbindung mit 8 Eingangs– und 8Ausgangsmerkern zwischen der Master–Feldbussteuerung und der SPS her.
Hinweis Für die CPM1A muss eine CPM1A–CPU–Baugruppe mit 30 oder 40 Ein–/Aus-gängen mit der CompoBus/S–E/A–Link–Baugruppe verbunden werden. Siekann nicht mit einer CPM1A–CPU–Baugruppe mit 10 oder 20 Ein–/Ausgängenverbunden werden.
CompoBus/S–Master–Feldbus-steuerung (oder SRM1 CompoBus/S–Master–Feldbussteuerung)
Besonderes Flachband– oder VCTF–Kabel
CPM2C–CPU–Bau-gruppe
CPM2C–SRT21–CompoBus/S–E/A–Link–Modul
CPM1A/CPM2A–CPU–Baugruppe
CPM1A-SRT21CompoBus/S–E/A–Link–Baugruppe
Vom Standpunkt der CPU–Baugruppe entsprechen die dem CompoBus/S–E/A–Link–Modul zugewiesenen 8 Eingangs– und 8 Ausgangsmerkern den derE/A–Erweiterungsbaugruppe zugewiesenen Ein– und Ausgänge, auch wenndas CompoBus/S–E/A–Link–Modul keine eigentliche Eingänge und Ausgängesteuert. Vom Standpunkt des CompoBus/S–Masters werden die 8 Ein– und 8Ausgangsmerker des CompoBus/S–E/A–Link–Moduls entsprechend der ein-gestellten Teilnehmernummer adressiert.
Master–SPS (CS1–Serie)
CPU–Baugruppe
E/A–Speicher
Ausg.2000
Eing.2004
8 A–Merker
8 E–Merker
CompoBus/S–Master–Feld-bussteuerung
Baugruppe Nr. 0
CPM1A, CPM2A oder CPM2C
CPU–Baugruppen mit 30E/A–Anschlüssen
E/A–Speicher
8 E–Merker
8 A–Merker
Eing.IR 002
Ausg.IR 012
CompoBus/S–E/A–Link–Modul
Teilnehmer-nummer: 0
Technische Daten
Modell–nummer
CPM1A oder CPM2A: CPM1A-SRT21
CPM2C: CPM2C-SRT21
Master/Slave CompoBus/S–Slave
Anzahl der E/A–Merker 8 Eingangs– und 8 Ausgangsmerker
Anzahl der Worte, die imE/A–Speicher einerCPU–Baugruppe zugewiesenwerden
1 Eingangswort, 1 Ausgangswort
(Wird auf die gleiche Weise zugewiesen, wieE/A–Erweiterungsbaugruppen und andereErweiterungsbaugruppen)
Teilnehmernummern–Einstellung
Einstellung über den DIP–Schalter
(Einstellung muss vor dem Einschalten derSpannungsversorgung der CPU–Baugruppe erfolgen.)
Technische Daten
3-3AbschnittCompoBus/S–E/A–Link–Module
203
Anzeige Status Beschreibung
COMM(G lb)
EIN Kommunikation aktiv.CO(Gelb) AUS Die Kommunikation ist unterbrochen oder ein Fehler ist
aufgetreten.
ERR(R t)
EIN Ein Kommunikationsfehler ist aufgetreten.(Rot) AUS Zeigt eine normale Kommunikation oder ein nicht
angeschlossenes Modul an.
Anwendungsverfahren
Baugruppe anschließen
Legen Sie die Teilnehmeradresse desCompoBus/S–E/A–Link–Moduls festund stellen Sie den DIP–Schalter ent-sprechend ein
Verlegen Sie die CompoBus/S–Verkabelung
Schließen Sie das CompoBus/S–E/A–Link–Modul an.
Die Teilnehmernummer sollte eine einmalige Nummer zwischen 0und 15 sein.
Verwenden Sie den DIP–Schalter, um die die CompoBus/S–Teil-nehmernummer der E/A–Link–Baugruppe, den Kommunikations-modus und den Status der Ausgabedaten bei einem Kommunika-tionsfehler zu spezifizieren.
Schließen Sie das CompoBus/S–E/A–Link–Modul aneine CompoBus/S–Verkabelung an.
Schließen Sie das CompoBus/S–E/A–Link–Modul an die CPU–Baugruppe an.Werden ebenfalls Erweiterungs– oder E/A–Erweiterungsbaugruppen ange-schlossen, können sie in beliebiger Reihenfolge an die CPU–Baugruppe ange-schlossen werden.
CPM2C–CPU–Baugruppe
CompoBus/S–E/A–Link–Modul
CPM1A/CPM2A–CPU–Baugruppe
CPM1A-SRT21CompoBus/S–E/A–Link–Baugruppe
E/A–ZuweisungE/A–Worte werden dem CompoBus/S–E/A–Link–Modul auf die gleiche Weisewie Erweiterungs– und E/A–Erweiterungsbaugruppen zugewiesen: die näch-sten verfügbaren Ein– und Ausgangsworte werden zugewiesen. Hierbei ist “m”das letzte zugewiesene Eingangswort und “n” das letzte zugewiesene Aus-gangswort; dem CompoBus/S–E/A–Link–Modul wird ”m+1” als Eingangswortund“ ”n+1” als Ausgangswort zugewiesen.
CompoBus/S–E/A–Link–Modul
8 Eingänge
8 Ausgänge
Wort m+1Bit 00 bis 07
Wort n+1Bit 00 bis 07
LED–Anzeigen
Anschluss desCompoBus/S–E/A–Link–Moduls
3-3AbschnittCompoBus/S–E/A–Link–Module
204
Im folgenden Beispiel wird ein CompoBus/S–E/A–Link–Modul an eine CPU–Baugruppe mit 30 Ein–/Ausgängen angeschlossen.
Eingangsworte
Ausgangsworten
CPU–Baugrup-pen mit 30 E/A
CompoBus/S–E/A–Link–Mod.
IR 000IR 001
IR 010IR 011
IR 002
IR 012
Das Eingangswort (m+1) enthält die 8 Datenmerker der Master–Feldbussteue-rung und zwei CompoBus/S–Kommunikationsmerker.
Wort m +1
CompoBus/S–Kommunikations–Fehlermerker
0: Normal 1: FehlerCompoBus/S–Kommunikations–Statusmerker
0: Keine Kommunikation; 1: Kommunikation aktiv
Daten von der Master–Feldbussteuerung
15 09 08 0007
0 0 0 0 0 0
Daten, die an Master–Feldbussteuerung gesendet werden sollen, in das Aus-gangswort (n+1) schreiben.
Wort n+1
Daten, die an die Master–Feldbussteuerung gesendet werden sollen
15 07 00
0 0 0 0 0 0 0 0
Die 8 E/A–Datenmerker werden nicht immer gleichzeitig gesendet. Mit anderenWorten, 8 Datenmerker, die von der Master–CPU–Baugruppe gleichzeitig ge-sendet werden, erreichen die Slave–CPU–Baugruppe nicht immer gleichzeitigund 8 Datenmerker, die von der Slave–CPU–Baugruppe gleichzeitig gesendetwerden, erreichen die Master–CPU–Baugruppe nicht immer gleichzeitig.
Ändern Sie den Kontaktplan in der empfangenden CPU–Baugruppe, wenn 8Eingabedatenmerker zusammen gelesen werden müssen. Lesen Sie z. B. dieEingabedaten zweimal nacheinander und übernehmen Sie die Daten nur, wenndie zwei Werte übereinstimmen.
Nichtverwendete Merker in dem CompoBus/S–E/A–Link–Modul können als Ar-beitsmerker verwendet werden, aber nichtverwendete Merker in den Aus-gangs–Slaves können nicht als Arbeitsmerker eingesetzt werden.
Nichtverwendete Merker in Eingangswort können nicht als Arbeitsmerker ver-wendet werden.
Festlegung der Teilnehmernummer und Einstellung der DIP–SchalterTeilnehmerDas CompoBus/S–E/A–Link–Modul ist ein Slave–Modul mit 8 Ein– und 8 Aus-gangsmerkern. Die Teilnehmernummern–Einstellung erfolgt über den DIP–Schalter; Ein– und Ausgangsmerker verwenden die gleiche Teilnehmernum-mer.
Der Bereich der möglichen Teilnehmernummern–Einstellungen wird durch denSPS–Typ, in die die Master–Feldbussteuerung eingesetzt ist, und die Einstel-lungen auf der Master–Feldbussteuerung bestimmt. Sehen Sie für weitere Ein-zelheiten das CompoBus/S–Bedienerhandbuch.
3-3AbschnittCompoBus/S–E/A–Link–Module
205
DIP–SchaltereinstellungenVerwenden Sie den DIP–Schalter, um die CompoBus/S–Teilnehmernummerder E/A–Link–Baugruppe, den Kommunikationsmodus und den Status der Aus-gabedaten bei einem Kommunikationsfehler zu spezifizieren.
DIP–Schalter
CPM1A-SRT21
CPM2C-SRT21
Schalter–bezeich–
nung
1, 2, 4 und 8 Teilnehmer–Adresseneinstellung
Schalter SchalterAdresse 8421Adresse 8421
0 0000 8 10001 0001 9 10012 0010 10 10103 0011 11 10114 0100 12 11005 0101 13 11016 0110 14 11107 0111 15 1111
1 = ON, 0 = OFF
DR ON Long-Distance–Kommunikationsmodus (sehen Sie Hinweis 2)
OFF High-speed–Kommunikationsmodus
HOLD ON Eingänge nach einem Kommunikationsfehler beibehaltenO
OFF Eingänge nach einem Kommunikationsfehler löschen
Hinweis 1. Schalten Sie immer die Spannungsversorgung aus, bevor Sie die DIP–Schaltereinstellungen ändern.
2. Berühren Sie nie den DIP–Schalter, wenn die Baugruppe arbeitet. StatischeElektrizität könnte Verarbeitungssfehler verursachen.
3. Der Long-Distance–Kommunikationsmodus ist nur einsetzbar, wenn eineder folgenden Master–Feldbussteuerungen angeschlossen wird:C200HW–SRM21–V1, CQM1–SRM21–V1 oder SRM1–C0j–V2.
3-3AbschnittCompoBus/S–E/A–Link–Module
206
Schließen Sie die CompoBus/S–Kommunikationsverkabelung an, wie es in denfolgenden Diagrammen dargestellt ist.
Diese Klemmen werden nicht ver-wendet (NC: not connected = N.v.: nicht verbunden). Sie könnenjedoch als Kommunikations–Spannungsversorgungsklemmenverwendet werden.
Anschluss an das CompoBus/S–Kom-munikationskabel.
(BS +)
(BS –)
N C (BS+)
N C (BS–)
CPM1A-SRT21
CPM2C-SRT21
Von der CompoBus/S–Kommunikations–verkabelung
Zur CompoBus/S–Kommunikations–verkabelung
BD H
BD H
BD L
BD L
N C
BD L BD H
Anschluss derCompoBus/S–Kommunikations–verkabelung
207
KAPITEL 4Kommunikationsfunktionen
Dieser Abschnitt beschreibt dieVerwendung der Kommunikationsfunktionen der SPS–Systeme CPM1, CPM1A, CPM2A,CPM2C und SRM1(–V2).
4-1 Einführung 208 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1-1 Übersicht 208 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1-2 Schnittstellenverdrahtung 209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-2 CPM1–/CPM1A–Kommunikationsfunktionen 210 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2-1 Host–Link–Kommunikation 210 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2-2 1:1–NT–Link–Kommunikationsmodus 211 . . . . . . . . . . . . . . . . . . . . . . . . 4-2-3 1:1–PC–Link–Kommunikationsmodus 212 . . . . . . . . . . . . . . . . . . . . . . . . .
4-3 CPM2A–/CPM2C–Kommunikationsfunktionen 214 . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3-1 Host–Link–Kommunikationsmodus 214 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3-2 Ohne Protokoll–Kommunikationsmodus 231 . . . . . . . . . . . . . . . . . . . . . . . 4-3-3 1:1–NT–Link–Kommunikation 240 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3-4 1:1–PC–Link–Kommunikation 243 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-4 SRM1(–V2)–Kommunikationsfunktionen 248 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4-1 Host–Link–Kommunikation 248 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4-2 Ohne Protokoll–Kommunikationsmodus 251 . . . . . . . . . . . . . . . . . . . . . . . 4-4-3 1:1–NT–Link–Kommunikationsmodus 256 . . . . . . . . . . . . . . . . . . . . . . . . 4-4-4 1:n–NT–Link–Kommunikationsmodus 257 . . . . . . . . . . . . . . . . . . . . . . . . 4-4-5 1:1–PC–Link–Kommunikationsmodus 258 . . . . . . . . . . . . . . . . . . . . . . . . .
4-5 Host–Link–Befehle 260 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-1 IR/SR–Bereich lesen – RR 260 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-2 LR–Bereich lesen – RL 261 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-3 HR–Bereich lesen – RH 261 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-4 Istwert lesen – RC 261 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-5 TC–Status lesen – RG 262 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-6 DM–Bereich lesen – RD 263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-7 AR–Bereich lesen – RJ 263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-8 IR/SR–Bereich schreiben – WR 264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-9 LR–Bereich schreiben – WL 265 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-10 HR–Bereich schreiben – WH 265 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-11 Istwert schreiben – WC 266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-12 TC–Status schreiben – WG 266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-13 DM–Bereich schreiben – WD 267 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-14 AR–Bereich schreiben – WJ 268 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-15 Sollwert lesen 1 – R# 268 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-16 Sollwert lesen 2 – R$ 269 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-17 Sollwert ändern 1 – W# 270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-18 Sollwert ändern 2 – W$ 271 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-19 Status lesen – MS 272 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-20 Status schreiben – SC 273 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-21 Fehler lesen – MF 274 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-22 Zwangsweises setzen – KS 275 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-23 Zwangsweises rücksetzen – KR 276 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-24 Mehrfaches zwangsweises setzen/rücksetzen – FK 277 . . . . . . . . . . . . . . . 4-5-25 Zwangsweises Setzen/Rücksetzen aufheben – KC 278 . . . . . . . . . . . . . . . . 4-5-26 SPS–Typ lesen – MM 279 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-27 Test – TS 279 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-28 Programm lesen – RP 280 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-29 Programm speichern – WP 280 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-30 Zusammengefaßte Lesedaten – QQ 281 . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-31 Abbruch – XZ 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-32 Initialisieren – :: 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-33 TXD–Antwort – EX 283 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5-34 Nicht definierter Befehl – IC 284 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4-1AbschnittEinführung
208
4-1 Einführung
4-1-1 ÜbersichtDie CPM1/CPM1A kommuniziert über ihre Peripherieschnittstelle mittels einesRS–232C– oder eines RS–422–Adapters.
Host–Link–KommunikationsmodusDie CPM1/CPM1A–SPS–Systeme sind mit dem Host–Link–System kompati-bel. Dies ermöglicht den Anschluss von bis zu 32 SPS an einen Host–Computer.Ein RS–232C–Adapter wird für die1:1–Kommunikation und ein RS–422–Adap-ter und ein B500–AL004–Link–Adapter werden für die 1:n–Kommunikation ver-wendet.
Eine mit einem RS–232C–Adapter ausgerüstete CPM1/CPM1A kann überHost–Link–Befehle auch mit einem programmierbaren Terminal (NT) vonOMRON kommunizieren.
Sehen Sie Abschnitt 4-2-1 CPM1/CPM1A–Host–Link in diesem Handbuch undAbschnitt 1–2–2 Host–Link in den Technischen Handbüchern der CPM1 undder CPM1A für weitere Informationen.
1:1–PC–Link–KommunikationsmodusEine Datenverbindung kann mit einem Datenbereich in einer anderen CPM1–,CPM1A–, CPM2A–, CPM2C–, CQM1–, C200HX/HG/HE– oder C200HS–SPSerstellt werden. Für die 1:1–Verbindung wird ein RS–232C–Adapter benötigt.
Sehen Sie Abschnitt 4-2-3 CPM1/CPM1A 1:1–Link in diesem Handbuch undAbschnitt 1–2–3 1:1–Links in den Technischen Handbüchern der CPM1 und derCPM1A für weitere Informationen.
1:1–NT–Link–KommunikationsmodusÜber die 1:1–NT–Link–Verbindung kann die CPM1–/CPM1A–SPS über einenRS–232C–Adapter mit einem OMRON NT–Terminal (NT–Link–Schnittstelle)kommunizieren.
Sehen Sie Abschnitt 4-2-2 CPM1/CPM1A–Host–Link in diesem Handbuch undAbschnitt 1–2–2 Host–Link in dem Technischen Handbuch der CPM1 und derCPM1A für weitere Informationen.
Die folgenden Kommunikationsmodi werden von den Schnittstellen derCPM2A/CPM2C unterstützt.
• Host–Link–Kommunikation mit einem Host–Computer
• Aktive (RS–232C)Kommunikation mit einem Computer oder einem anderenGerät
• 1:1–PC–Link–Kommunikation mit einer anderen SPS
• 1:1–NT–Link–Kommunikation mit NT–Terminals von OMRON
Dieses Kapitel erläutert die erforderlichen Konfigurationseinstellungen und dieVerfahren zur Verwendung dieser Kommunikationsmodi.
Die folgenden Kommunikationsmodi werden von den Schnittstellen derSRM1(-V2) ünterstützt.
• Host–Link–Kommunikation mit einem Host–Computer
• Aktive (RS–232C)Kommunikation mit einem Computer oder einem anderenGerät
• 1:1–PC–Link–Kommunikation mit einer anderen SPS
• 1:1–NT–Link–Kommunikation mit NT–Terminals von OMRON
Hinweis Die 1:1–NT–Link–Kommunikation ist mit der SRM1–C01 nicht möglich, dadiese nur über eine Peripherieschnittstelle verfügt. Die SRM1–C01 kann imHost–Link–Modus über einen RS–232C–Adapter an ein programmierbaresTerminal angeschlossen werden.
CPM1/CPM1A–Kommunikation
CPM2A/CPM2C–Kommunikation
SRM1(–V2)–Kommuni–kationsfunktionen
4-1AbschnittEinführung
209
4-1-2 SchnittstellenverdrahtungInformationen über die Verdrahtung der Kommunikationsschnittstellen findenSie in den Technischen Handbüchern der CPM1, CPM1A, CPM2A, CPM2C undder SRM1–Master–Steuerung.
4-2AbschnittCPM1–/CPM1A–Kommunikationsfunktionen
210
4-2 CPM1–/CPM1A–Kommunikationsfunktionen
4-2-1 Host–Link–KommunikationDie Host-Link-Kommunikation wird zum Anschluss einer oder mehrerer SPS–Systeme an einen Host-Computer über ein RS-232C-Kabel eingesetzt. DieKommunikation wird hierbei von dem Host–Computer gesteuert. Normaler-weise gibt der Host-Computer einen Befehl an eine SPS aus, die wiederum au-tomatisch eine Empfangsbestätigung zurückgibt. Daher wird die Kommunika-tion ohne aktive Beteiligung der SPS ausgeführt. Einige SPS–Systeme könnenebenfalls Datenübertragungen einleiten, wenn eine direkte Beteiligung erfor-derlich ist.
Im Allgemeinen stehen zur Implementation des Host–Link–Kommunikations-modus zwei Verfahren zur Verfügung. Eines basiert auf den C-Modus– und dasandere auf den FINS(CV-Modus)–Befehlen. Die CPM1/CPM1A unterstützt nurC-Modus–Befehle. Einzelheiten über die zur Verfügung stehenden Host–Link–Befehle finden Sie im Abschnitt 4-5.
Stellen Sie die CPM1/CPM1A–Peripherieschnittstelle für den Host–Link–Kom-munikationsmodus entsprechend der folgenden Tabelle ein.
Wort Bit Funktion Einstellung
DM 6650 00 bis 07 Kommunikationsformat100: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen im Datenwort DM 6651
00
08 bis 11 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle0: LR 00 bis LR 15
0 (Jeder Wert istzulässig)
12 bis 15 Kommunikationsmodus10: Host–Link; 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link
0
DM 6651 00 bis 07 Baudrate1
00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,200 (Jeder Wertist zulässig)
08 bis 15 Rahmenformat1Start Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
00 (Jeder Wertist zulässig)
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)10000 bis 9999: In ms.
0000
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)100 bis 31 (BCD)
00 bis 31
08 bis 15 Nicht verwendet. 00 (Jeder Wertist zulässig)
Hinweis 1. Bei einer falschen Einstellung tritt ein geringfügiger Fehler auf. AR 1302wird auf EIN gesetzt und die Grundeinstellung (0, 00 oder 0000) verwendet.
2. Weitere Informationen über Host–Link–Einstellungen finden Sie in den je-weiligen Technischen Handbüchern der SPS–Systeme.
SPS–Konfigurations–einstellung
4-2AbschnittCPM1–/CPM1A–Kommunikationsfunktionen
211
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsvorgaben. Setzen Sie in diesem Fallden Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beispielprogramm Dieses Beispiel zeigt ein BASIC–Programm, das den Zustand der CPM1–Ein-gänge in IR 000 liest. Sehen Sie für weitere Einzelheiten den Abschnitt 4-5Host–Schnittstellenbefehle.
Eine FCS–Prüfung (Rahmen–Überprüfungsfolge) wird bei den empfangenenAntwortdaten in diesem Programm nicht durchgeführt. Vergewissern Sie sichvor Ausführung des Programms, dass die RS–232C–Schnittstelle des Host–Computers richtig konfiguriert ist.
1010 CPM1 SAMPLE PROGRAM1020 ’SET THE COMMAND DATA1030 S$=”@00RR00000001”1040 FCS=01050 FOR I=1 TO LEN(S$)1060 FCS=FCS XOR ASC(MID$(S$,I,1))1070 NEXT I1080 FCS$=(FCS):IF LEN(FCS$)=1 THEN FCS$=”0”+FCS$1090 CLOSE 11100 CLS1110 PRINT ”SENDING COMMAND”1120 OPEN ”COM:E73” AS #11130 PRINT #1,S$ + FCS + CHR$(13);1140 CLS1150 PRINT ”RECEIVING RESPONSE DATA”1160 LINE INPUT #1,A$1170 PRINT A$1180 END
4-2-2 1:1–NT–Link–KommunikationsmodusMit Hilfe dieses Kommunikationsmodus kann die CPM1–/CPM1A–SPS über ei-nen RS–232C–Adapter mit einem OMRON NT–Terminal (NT–Link–Schnitt-stelle) kommunizieren.
CPM1–SPS
Programmierbares NT–Terminal
RS–232C–Kabel
CPM1 CPU
CPM1 CPU–BaugruppeRS–232C–Adapter
4-2AbschnittCPM1–/CPM1A–Kommunikationsfunktionen
212
CPM1A–SPS
Programmierbares NT–Terminal
RS–232C–Kabel
CPM1A CPU–Baugruppe
RS–232C–Adapter
In der folgenden Tabelle sind die auf die 1:1–NT–Link–Kommunikation bezoge-nen Einstellungen aufgeführt.
Wort Bit Funktion Einstellung
DM 6650 00 bis 07 Kommunikationsformat100: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen im Datenwort DM 6651
00 oder 01
08 bis 11 Einstellung für den 1:1–NT–Link–Kommunikationsmodus unerheblich 0
12 bis 15 Kommunikationsmodus1
0: Host–Link; 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link
4
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) verwen-det.
2. Sehen Sie für weitere Informationen über die NT–Link–Einstellungen ande-rer OMRON–SPS–Systeme das entsprechende Programmierhandbuchder jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fallden Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud)
Übertrag.verzöger.–zeit Keine
Teilnehmernummer: 00
4-2-3 1:1–PC–Link–KommunikationsmodusBei einer 1:1–PC–Link–Kommunikation wird eine SPS der Serie CPM1/CPM1Aüber einen RS–232C–Adapter und ein Standard–RS–232C–Kabel mit einer an-deren CPM1/CPM1A, CPM2A/CPM2C, CQM1, C200HX/HG/HE oder C200HSverbunden. Ein SPS–System dient als Master und das andere als Slave. Überden 1:1–PC–Link können bis zu 256 Bits (LR 0000 bis LR 1515) in zwei SPS–Systemen miteinander ausgetauscht werden.
SPS–Konfigurations–einstellung
4-2AbschnittCPM1–/CPM1A–Kommunikationsfunktionen
213
Das folgende Diagramm zeigt ein 1:1–PC–Link–Anschluss zwischen zweiCPM1–SPS–Systemen. Sehen Sie für weitere Informationen über den An-schluss zweier CPM1 das Technische Handbuch der CPM1.
CPM1 CPU–Baugruppe
RS–232C–Adapter
CPM1 CPU–Baugruppe
RS–232C–Kabel
RS–232C–Adapter
Die für den 1:1–PC–Link verwendeten Worte sind nachfolgend dargestellt.
LR 00
LR 07LR 08
LR 00
LR 07LR 08
LR 15
Master
Schreibbe-reich
Lesebereich
Slave
Schreibbereich
LesebereichDatenschreiben
Daten lesen
Daten lesen
DatenschreibenLR 15
In der CPM1/CPM1A können nur die16 LR–Worte von LR 00 bis LR 15 zur Kom-munikation benutzt werden. Verwenden Sie also nur diese16 Worte in derCQM1 oder C200HS, wenn Sie einen 1:1–PC–Link mit einer CPM1/CPM1Aaufbauen. Ein 1:1–PC–Link kann nicht mit einer CPM1–/CPM1A–SPS überLR 16 bis LR 63 in einer CQM1, C200HX/HG/HE oder C200HS erstellt werden.
In der folgenden Tabelle sind die auf die 1:1–PC–Link–Kommunikation bezoge-nen Einstellungen aufgeführt.
Wort Bit Funktion Einstellung(Master)
Einstellung(Slave)
DM 6650 00 bis 07 Kommunikationsformat100: Standard (1 Start–, 7 Daten– und 2 Stopbits, gerade Parität, 9.600 Baud)01: Einstellungen im Datenwort DM 6651
00 oder 01 00 oder 01
08 bis 11 Link–Bereich für 1:1 PC–Link über Peripherieschnittstelle0: LR 00 bis LR 15
0 0 (Jeder Wert istzulässig)
12 bis 15 Kommunikationsmodus10: Host–Link; 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link
3 2
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-wendet.
2. Weitere Informationen über die 1:1–PC–Link–Kommunikation mit einer an-deren SPS finden Sie im jeweiligen Handbuch dieser SPS.
3. Weitere Informationen über die Anschlussbelegung bei der 1:1–PC–Link–Kommunikation mit der CPM1/CPM1A finden Sie im Abschnitt 3–4–7 imTechnischen Handbuch der CPM1/CPM1A oder im Abschnitt 3–4–4 desTechnischen Handbuchs der SRM1–Master–Steuerung.
4. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fallden Wert zurück, damit dieser innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
CPM1/CPM1A1:1–PC–Link–Anschluss
1:1–PC–Link–Beschränkungen mit einerCPM1/CPM1A
SPS–Konfigurations–einstellung
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
214
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beispielprogramm Dieses Beispiel zeigt ein Programm, in dem der Zustand von IR 0000 einerCPM1/CPM1A nach SR 200 in der anderen CPM1/CPM1A kopiert wird.
25313 (Immer EIN)
MOV(21)
000
LR00
MOV(21)
LR08
200
Programmierung im Master
MOV(21)
000
LR08
MOV(21)
LR00
200
25313 (Immer EIN)
Programmierung im Slave
LR 00
LR 07LR 08
LR 00
LR 07LR 08
LR 15
Schreibbereich
Lesebereich
Schrei-ben
Lesen
Lesebereich
SchreibbereichLR 15
Schrei–ben
LesenIR 000
SR 200 IR 000
SR 200
4-3 CPM2A–/CPM2C–KommunikationsfunktionenDieser Abschnitt beschreibt den Einsatzbereich der Kommunikationsfunktio-nen der CPM2A/CPM2C. Lesen Sie diesen Abschnitt, wenn Sie eine Kommuni-kation ohne Protokoll, die Host–Link–, 1:1–NT–Link– oder 1:1–PC–Link–Kom-munikation verwenden möchten.
4-3-1 Host–Link–KommunikationsmodusDas in der Host–Link–Kommunikation verwendete Kommunikationsprotokoll istein dialogartiges Protokoll, in dem die SPS Antworten auf Befehle sendet, dievon einem Host–Computer gesendet wurden; es kann dazu verwendet werden,Daten in Datenbereichen der SPS zu lesen oder in diese zu schreiben und ei-nige SPS–Vorgänge zu steuern. Ein Kommunikationsprogramm in der SPS istnicht erforderlich. Die Host–Link–Kommunikation kann über die Peripherie-schnittstelle oder die RS–232C–Schnittstelle der CPM2A /CPM2C erfolgen.
Host–Computer
Befehle
Antworten
CPM2A
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
215
CPM2A 1:1–Kommunikation
Anschluss an die CPM2A–RS–232C–Schnittstelle (sehen Sie den Hinweis)
Programmierbares NT–Terminal
Hinweis Für den Anschluss an die Peripherieschnittstelle ist ein RS–232C–Adapter oder ein Computer–Anschlusskabel (CQM1–CIF01 oderCQM1–CIF02) erforderlich.
Anschluss an die CPM2A–RS–232C–Schnittstelle (sehen Sie den Hinweis)
Bef
ehle
Ant
wor
ten
Bef
ehle
Ant
wor
ten
CPM2C–1:1–Kommunikation
RS–232C–Schnittstelle(Sub–D, 9–polig) CPM2C–CPU–Baugruppe
CPM2C–CN111 (0,15 m)
Anschlusskabel
CBL–209–2M (2 m)CBL–209–5M (5 m)
CS1W–CN118 (0,1 m)IBM PC/AT oderkompatibel
CPM2C-CIF01
CPM2C-CIF11
CPM2C–CPU–Baugruppe
CPM2C–CPU–Bau-gruppe
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
216
CPM2A–1:n–Kommunikation
B500–AL004Schnittstellen–Adapter
Anschluss an dieCPM2A–RS–232C–Schnittstelle
Anschluss an die CPM2A–Peripherieschnittstelle
CPM1–CIF11 RS–422–AdapterNT–AL001RS232C/RS–422–Adapter
Bef
ehle
Ant
wor
ten
IBM PC/AT oderkompatibel
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
217
CPM2C–1:n–Kommunikation
Anschlusskabel
CBL–209–2M (2 m)CBL–209–5M (5 m)
IBM PC/AT oderkompatiblerComputer
B500–AL004 oder NT–AL001 (benötigt +5 V)(Sehen Sie die Hinweise 1 und 2)
RS–422 (Gesamtlänge: max. 500 m)
Bei Einsatz der Peri-pherieschnittstelleder CPU
CPM2C–CPU–Baugruppe
CPM2C–CPU–Baugruppe
CPM2C–CPU–Bau-gruppe
CPM2-CIF11
Bei Einsatz derSchnittstelle alsRS–232C–Schnittstelle
NT–AL001(Sehen Sie den Hinweis 1)
NT–AL001(Sehen Sie den Hinweis 1)
NT–AL001(Sehen Sie denHinweis 1)
RS–232C–Schnittstelle
XW2Z070T–1 (0,7 m)XW2Z200T–1 (2 m)
CPM2-CIF01
XW2Z070T–1 (0,7 m)XW2Z200T–1 (2 m)
RS–232C–Schnittstelle
CPM2C–CN111 An-schlusskabel (0,15 m)
Bis zu 32 SPS–Systeme
XW2Z070T–1 (0,7 m)XW2Z200T–1 (2 m)
RS–232C–Schnittstelle
CPM1C–CN118 An-schlusskabel (0,1 m)
CPM2C–CPU–Baugruppe
CPM2-CIF11
CPM2C–CPU–Baugruppe
CPM2-CIF11
CPM2C–CPU–Bau-gruppe
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
218
Rahmenübertragung und EmpfangBei der Host–Link–Kommunikation besitzt normalerweise der Host-Computerals erster das Übertragungsrecht und leitet die Kommunikation ein. Die CPM2A/CPM2C sendet dann automatisch eine Antwort.
Befehle und Antworten werden in der beschriebenen Reihenfolge ausge-tauscht. Ein in einer einzelnen Übertragung übertragener Block von Daten heißt“Rahmen”. Ein einzelner Rahmen besteht maximal aus 131 (Daten–)Zeichen.Das Recht, einen Rahmen zu senden, wird ”Übertragungsrecht” genannt. DasGerät mit Übertragungsrecht kann zu jeder Zeit einen Rahmen senden. DasÜbertragungsrecht wechselt bei jeder Rahmenübertragung vom Host-Compu-ter zur CPM2A/CPM2C und umgekehrt. Das Übertragungsrecht wird vom über-tragenden Gerät zum empfangenden Gerät übergeben, wenn entweder ein En-dezeichen (der Code, der das Ende eines Befehls oder einer Antwort kenn-zeichnet) oder ein Begrenzer (der Code, der die Rahmen voneinander trennt)empfangen wird.
EndezeichenFCS-Prüfzeich.
Text
Text
EndecodeBefehlscode
Teilnehmer–Nr.
Teilnehmer–Nr.Befehlscode
FCS-Prüfzeich.Endezeichen
Rahmen (Antwort)
Rahmen (Befehl)
Nächste Rahmenübertragung aktiviert (d.h. Übertragungsrechtübergeben)
Text
Teilnehmer–Nr.Befehlscode
FCS-Prüfzeich.Endezeichen
Rahmen (Befehl)
EndezeichenFCS-Prüfzeich.
Text
EndecodeBefehlscode
Teilnehmer–Nr.
Rahmen (Antwort)
Host–Computer
CPM2A/CPM2C
Datenübertragungen von der SPS zum Host–Computer können von der CPU–Baugruppe mit TXD(48) veranlasst werden.
Text
Teilnehmer–Nr.Befehlscode
FCS-Prüfzeich.Endezeichen
Rahmen (Antwort)
Host–Computer
CPM2A/CPM2C
Es gibt keine Antwortvom Host–Computer
Slave–initiierteKommunikation
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
219
Befehls– und AntwortformateDieser Abschnitt erläutert die Formate für die Befehle und Antworten, die in derHost–Link–Kommunikation ausgetauscht werden.
Bei der Übertragung eines Befehles von dem Host-Computer müssen die Be-fehlsdaten folgendes Format besitzen.
X 101@
FCS–Prüfzeichen
X 100 * ↵
Teilneh-mer-Nr.
Befehls–code
Text Ende–zeichen
@Ein ”@”–Symbol muss die Sequenz einleiten.
Teilnehmer–Nr.Identifiziert die CPM2A/CPM2C–SPS, die mit dem Host–Computer kommuni-ziert.Spezifiziert die Teilnehmernummer der CPM2A/CPM2C in der SPS–Konfigura-tion (DM 6648, DM 6653).
BefehlscodeAngabe eines 2 Zeichen umfassenden Befehlscodes.
TextAngabe der Befehlsparameter.
FCS-PrüfzeichenSpezifikation einer 2–Zeichen umfassenden Rahmenprüfsumme. Sehen SieSeite 221.
EndezeichenSpezifizieren Sie zwei Zeichen,“* ” und Carriage–Return (CHR$ (13)), um dasEnde des Befehls zu kennzeichnen.
Die Antwort von der CPM2A/CPM2C wird im nachfolgenden Format zurückge-geben. Erstellen Sie ein Programm, mit dem die Anwortdaten ausgewertet undverarbeitet werden können.
@ X 101 X 100 x 161 x 160
FCS–Prüfzeichen
* CR
Teilneh-mer-Nr.
Befehls–code
Ende-code
Text Ende–zeichen
@, Teilnehmer–Nr., BefehlscodeDer Inhalt entspricht dem des zurückgegeben Befehls.
EndecodeDer Ausgeführt–Zustand des Befehls (z.B., ob ein Fehler aufgetreten ist odernicht) wird zurückgegeben.
TextText wird nur bei Daten, z.B. gelesenen Daten, zurückgegeben.
FCS-PrüfzeichenDie spezifizierte 2 Zeichen Rahmprüfsequenz wird zurückgegeben.
EndezeichenSpezifizieren Sie zwei Zeichen,“* ” und Carriage–Return (CHR$ (13)), um dasEnde der Antwort zu kennzeichnen.
Übertragung großer DatenmengenDer größte Datenblock, der als einzelner Rahmen übertragen werden kann, ent-hält 131 Zeichen. Ein Befehl oder eine Antwort von 132 Zeichen oder mehr mussdaher vor der Übertragung in mehrere Rahmen aufgeteilt werden. Bei einer auf-geteilten Übertragung wird das Ende des ersten und des mittleren Rahmensdurch einen Begrenzer anstatt durch ein Endezeichen gekennzeichnet.
Befehlsformat
Antwortformat
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
220
Nachdem jeder Rahmen vom Host–Computer gesendet wurde, wartet dieserauf den von der CPM2A/CPM2C gesendeten Begrenzer. Nachdem Empfangdes Begrenzers wird der nächste Rahmen übertragen. Dieser Vorgang wird so-lange wiederholt, bis der gesamte Befehl übertragen wurde.
Begrenzer
Text
Teilnehmer–Nr.Befehlscode
FCS-Prüfzeich.Begrenzer
Rahmen 1 (Befehl)
Text
FCS-Prüfzeich.Begrenzer
EndezeichenFCS-Prüfzeich.
Text
EndecodeBefehlscode
Teilnehmer–Nr.
Rahmen 2 (Befehl)
Rahmen (Antwort)
Begrenzer
Text
FCS-Prüfzeich.Endezeichen
Rahmen 3 (Befehl)
Host–Computer
CPM2A/CPM2C
Nach dem Empfang der Rahmen vom Host–Computer wird ein Begrenzer andie CPM2A/CPM2C gesendet. Nach dessen Empfang sendet die CPM2A/CPM2C den nächsten Rahmen. Dieser Vorgang wird solange wiederholt, bisalle Antwortrahmen übertragen sind.
Begrenzer
Text
Teilnehmer–Nr.Befehlscode
FCS–Prüfzeich.Endezeichen
Rahmen (Befehl)
Host–Computer
CPM2A/CPM2C
BegrenzerFCS–Prüfzeich.
Text
EndecodeBefehlscode
Teilnehmer–Nr.
Rahmen 1 (Antwort)
Text
FCS-Prüfzeich.Begrenzer
Rahmen 2 (Antwort)
Begrenzer
Text
FCS-Prüfzeich.Endezeichen
Rahmen 3 (Antwort)
Unterteilende Befehle
Unterteilende Antworten
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
221
Stellen Sie bei der Aufteilung von Befehlen wie WR, WL, WC, oder WD, dieSchreiboperationen ausführen, sicher, dass Daten, die in ein Wort geschriebenwerden, nicht in verschiedene Rahmen aufgeteilt werden. Teilen Sie den Inhaltder Rahmen so auf, dass diese Unterteilung mit der Unterteilung der Worteübereinstimmt. Dies wird in der folgenden Abbildung gezeigt.
@
FCS–Prüfzeichen
↵0 0 W D
FCS–Prüfzeichen
* ↵
Rahmen1
Teilneh-mer-Nr.
Befehls–code
Daten
Ein Datenwort
Daten desselben Wortes dürfen nicht geteilt werden.Rahmen 2 (max. 128 Zeichen)
Ende–zeichen
Daten
Be-gren-zer
Ein Datenwort
Daten desselben Wortes dürfen nichtgeteilt werden.
(max. 131 Zeichen)
X 101X 100
FCS (Blockprüfsumme)Bei der Übertragung eines Rahmens wird die an Blockprüfsumme (FCS) vordem Begrenzer oder Abschlusszeichen positioniert, um zu überprüfen, ob beider Übertragung ein Datenfehler aufgetreten ist. Der FCS–Code wird durchzwei in ASCII–Zeichen konvertierte 8 Bit–Daten ausgedrückt. Die 8 Bit–Datensind das Ergebnis einer EXKLUSIV ODER–Funktion, die sequentiell mit jedemZeichen, beginnend mit dem ersten Zeichen des Rahmens bis zum letzten Zei-chen des Textes innerhalb dieses Rahmens, ausgeführt wird. Fehlerhafte Datenim Rahmen können festgestellt werden, indem die FCS jedes Mal, nachdem einRahmen empfangen wurde, berechnet und das Ergebnis mit der im Rahmeneingeschlossenen FCS verglichen wird.
@ → 40 → 0100 0000XOR
1 → 31 → 0011 0001XOR
0 → 30 → 0011 0000XOR
R → 52 → 0101 0010XOR
0 → 30 → 0011 0000XOR
0 → 30 → 0011 0000XOR
bis0 → 30 → 0011 0000
XOR1 → 31 → 0011 0001
0100 0010↓ ↓4 2
FCS–Prüfzeichen
*01 R R 0@ 0 0 1 4 2
TextTeilneh-mer-Nr.
Befehlscode
Bereich für die FCS–Berechnung
Ende–zeichen
CR
Hexadezimal–Konvertierung.Werden wie ASCII–Zeichen be-handelt.
Berechnungsergebnisse
ASCII–Code Erstes Zielwort Rechtsliegend
Vorsichtsmaßnahmen beilangen Übertragungen
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
222
In diesem Beispiel wird ein einfaches BASIC–Unterprogramm für die Berechnung und Überprüfung einer FCS–Prüfsumme eines vom Host–PCempfangenen Rahmens dargestellt.
Die empfangenen Daten beinhalten FCS, Begrenzer oder Endezeichen usw.Tritt ein Fehler bei der Übertragung auf, können FCS oder andere Daten nichtübertragen werden. Berücksichtigen Sie dies bitte bei der Programmierung.
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––400 *FCSCHECK410 L = LEN ( RESPONSE$ ) ’.................Übertragene und empfangene Daten420 Q = 0 : FCSCK$ = ” ”430 A$ = RIGHT$ ( RESPONSE$ , 1) 440 PRINT RESPONSE$ , A$ , L450 IF A$ = ”*” THEN LENGS = LEN ( RESPONSE$ ) – 3
ELSE LENGS = LEN ( RESPONSE$ ) – 2460 FCSP$ = MID$ ( RESPONSE$ , LENGS + 1 , 2 ) ’.........FCS–Daten empfangen470 FOR I = 1 TO LENGS ’........................Anzahl der Zeichen in FCS480 Q = ASC ( MID$ ( RESPONSE$ , I , 1 ) ) XOR Q490 NEXT I500 FCSD$ = HEX$ ( Q )510 IF LEN ( FCS0$ ) = 1 THEN FCSD$ = ” 0 ” + FCSD$ ’........FCS–Ergebnis520 IF FCSD$ < > FCSP$ THEN FCSCK$ = ” ERR ”530 PRINT ” FCSD$ = ” ; FCSD$ , ” FCSP$ = ” ; FCSP$ , ” FCSCK$ = ” ; FCSCK$540 RETURN––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Beispielprogramm fürFCS
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
223
BefehleBefehls–c
dCPM2A/CPM2C–Betriebsart Name Seitee e s c
ode RUN MONITOR Programa e Se e
RR Gültig Gültig Gültig IR/SR–Bereich lesen 260
RL Gültig Gültig Gültig LR–Bereich lesen 261
RH Gültig Gültig Gültig HR–Bereich lesen 261
RC Gültig Gültig Gültig TC–Istwert lesen 261
RG Gültig Gültig Gültig TC–Status lesen 262
RD Gültig Gültig Gültig DM–Bereich lesen 263
RJ Gültig Gültig Gültig AR–Bereich lesen 263
WR Ungültig Gültig Gültig IR/SR–Bereich schreiben 264
WL Ungültig Gültig Gültig LR–Bereich schreiben 265
WH Ungültig Gültig Gültig HR–Bereich schreiben 265
WC Ungültig Gültig Gültig TC–Istwert schreiben 266
WG Ungültig Gültig Gültig TC–Status schreiben 266
WD Ungültig Gültig Gültig DM–Bereich schreiben 267
WJ Ungültig Gültig Gültig AR–Bereich schreiben 268
R# Gültig Gültig Gültig Sollwert 1 lesen 268
R$ Gültig Gültig Gültig Sollwert 2 lesen 269
W# Ungültig Gültig Gültig Sollwert 1 ändern 270
W$ Ungültig Gültig Gültig Sollwert 2 ändern 271
MS Gültig Gültig Gültig Status lesen 272
SC Gültig Gültig Gültig Status speichern 273
MF Gültig Gültig Gültig Fehler lesen 274
KS Ungültig Gültig Gültig Zwangsweises setzen 275
KR Ungültig Gültig Gültig Zwangsweises rücksetzen 276
FK Ungültig Gültig Gültig Mehrfaches zwangsweises setzen/rücksetzen 277
KC Gültig Gültig Gültig Zwangsweises setzen und rücksetzen aufheben 278
MM Gültig Gültig Gültig SPS–Modell lesen 279
TS Gültig Gültig Gültig Test 279
RP Gültig Gültig Gültig Programm lesen 280
WP Ungültig Ungültig Gültig Programm speichern 280
QQ Gültig Gültig Gültig E/A–Registrierung 281
XZ Gültig Gültig Gültig Abbruch (nur Befehl) 283
** Gültig Gültig Gültig Initialisierung (nur Befehl) 283
EX Gültig Gültig Ungültig TXD–Antwort (nur Antwort) 283
IC --- --- --- Nicht definierter Befehl (nur Antwort) 284
Hinweis –––: Wird nicht von der Betriebsart beeinflußt.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
224
Antwort–CodesEnde-code
Inhalt Vermutlicher Grund Abhilfe
00 Normale Beendigung --- ---
01 Nicht in der RUN–Betriebsart ausführ-bar
Der gesendete Befehl kann nicht aus-geführt werden, wenn die SPS in derRUN–Betriebsart ist.
Überprüfen Sie die Abhängigkeit vonBefehl und SPS–Betriebsart.
02 Nicht in der MONITOR–Betriebsart aus-führbar
Der gesendete Befehl kann nicht aus-geführt werden, wenn die SPS in derMONITOR–Betriebsart ist.
04 Adresse überschritten Die höchste Adresse des Anwenderpro-grammbereichs wurde überschritten.
Überprüfen Sie das Programm.
0B Nicht in der PROGRAM–Betriebsart ausführbar
Der gesendete Befehl kann nicht aus-geführt werden, wenn sich die SPS inder PROGRAM–Betriebsart befindet.
Dieser Code wird gegenwärtig nicht ver-wendet.
13 FCS–Fehler Die FCS ist fehlerhaft. Entweder ist dieFCS–Berechnung fehlerhaft oder Stö-rungen üben eine ungünstigen Einflußaus.
Überprüfen Sie das FCS–Berechnungs-verfahren. Übertragen Sie bei Störun-gen den Befehl erneut.
14 Formatfehler Das Befehlsformat ist falsch. Überprüfen Sie das Format und übertra-gen Sie den Befehl erneut.
15 Ziffern–Eingabefehler Die Lese–/Schreibbereichsspezifikationist fehlerhaft.
Korrigieren Sie den Bereich und über-tragen Sie den Befehl erneut.
16 Befehl wird nicht unterstützt Der spezifizierte Befehl ist auf der spe-zifizierten Adresse nicht vorhanden.(Lesen des Sollwertes, usw.)
Überprüfen Sie die Adresse und denBefehl.
18 Rahmenlängen–Fehler Die maximale Rahmenlänge wurdeüberschritten.
Unterteilen Sie den Befehl in mehrereRahmen.
19 Nicht ausführbar Lesen von Angaben, die nicht im zu-sammengesetzten Befehl (QQ) spezifi-ziert sind.
QQ ausführen, um Angaben zu spei-chern, bevor diese gelesen werden.
23 Anwenderspeicher mit Schreibschutzversehen
Der Speicher ist in der SPS–Konfigura-tion schreibgeschützt.
Ändern Sie die Einstellung in der SPS–Konfiguration (DM 6602).
A3 Abbruch wegen eines FCS–Fehlers inden Sendedaten
Der Fehler wurde generiert, währendein sich über mehrere Rahmen vertei-l d B f hl füh t d
Überprüfen Sie die Daten auf fehler-hafte Rahmen, korrigieren Sie diese
f d h Si i t ÜbA4 Abbruch wegen eines Formatfehlers inden Sendedaten
lender Befehl ausgeführt wurde.
Hinweis: Die Daten wurden bis zu die-P kt h i d t h
, gggf. und nehmen Sie eine erneute Über-tragung vor.
A5 Abbruch wegen eines Eingabefehlersvon Zifferndaten in den Sendedaten
sem Punkt schon in den entsprechen-den Bereich der CPU–Baugruppe ge-schrieben.
A8 Abbruch wegen eines Rahmenlängen-fehlers in den Sendedaten
schrieben.
A5 --- Störungen beeinflussten den Empfang. Übertragen Sie den Befehl erneut.
Applikationsverfahren
Einstellung der Kommunikations–schalter der CPU–Baugruppe
Stellen Sie den Kommunikationsschalter der CPM2ACPU–Baugruppe oder den DIP–Schalter der CPM2CCPU–Baugruppe ein.
Anschliessen der Kabel Stellen Sie 1:1– oder 1:n–Anschlüsse her.
Vom Host–Computer ausgesendeteBefehle.
Kontaktplan(von der CPM2A/CPM2C initiierteKommunikation)
Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf derVorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den aufder Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
Kommunikations–DIP–Schaltereinstellungen
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
225
CPM2A–KommunikationsschaltereinstellungWird der Kommunikationsschalter auf OFF eingestellt, wird die Kommunikationder Peripherie– und RS–232C–Schnittstelle von den Einstellungen in der SPS–Konfiguration bestimmt.
Wird der Kommunikationsschalter auf ON eingestellt, wird die Kommunikationder Peripherie– und RS–232C–Schnittstelle von den Standard–Host–Link–Ein-stellungsparametern bestimmt (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Pari-tät und eine Baudrate von 9.600 Bits/Sek.).
Hinweis Wird eine Programmierkonsole mit der Peripherieschnittstelle verbunden, er-folgt die Kommunikation mit der Programmierkonsole natürlich unabhängig vonden Einstellungen des Kommunikationsschalters oder der SPS–Konfiguration.
Kommunikationsschalter
Peripherie-Schnittstelle RS–232C–Schnittstelle
Ein RS–232C–Adapter wird benötigt, um die Host–Link–Kommunikation übereine Peripherieschnittstelle auszuführen.
CPM2C–DIP–SchaltereinstellungenWird Schalter 2 des DIP–Schalters auf OFF gesetzt, wird die Kommunikationüber die Peripherieschnittstelle auf das Programmierkonsolen–Protokoll einge-stellt, unabhängig von der Einstellung von Schalter 1 oder den Einstellungen inder SPS–Konfiguration.
DIP–Schalter
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
226
Wird Schalter 2 auf ON eingestellt, legt die Einstellung von Schalter 1 fest, ob dieKommunikation über die Peripherie– und RS–232C–Schnittstelle durch die Ein-stellungen in der SPS–Konfiguration oder die Standard–Einstellungen beein-flusst wird (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität und eine Baudratevon 9.600 Bits/Sek.).
Schalterein–stellungen
Peripherieschnittstellen–Kommunikation
RS–232C–Schnittstellen–Kommunikation
Schalter1
Schalter2
OFF OFF Programmierkonsolen–Protokoll
Von der SPS–Konfiguration be-stimmt(DM 6645 bi DM 6649)OFF ON Von der SPS–Konfiguration be-
stimmt(DM 6650 bis DM 6654)
(DM 6645 bis DM 6649)
ON OFF Programmierkonsolen–Protokoll
Von Standard–Einstellungen be-stimmt
ON ON Von Standard–Einstellungen be-stimmt
Ein RS–232C–Adapter wird benötigt, um die Host–Link–Kommunikation übereine Peripherieschnittstelle auszuführen.
Dieser Abschnitt beschreibt RS–232C–Anschlüsse.
1:1–AnschlüsseDie RS–232C–Schnittstelle des Host–Link–Computers und die RS–232C–Schnittstelle der CPM2A/CPM2C oder des CPM1–CIF01 RS–232C–Adapterswird wie im folgenden Diagramm gezeigt, angeschlossen, falls kein CTS–Handshake der RS–232C–Schnittstelle erfolgt. Bei der CPM2C können die An-schlusskabel CPM2C–CN111 und CS1W–CN118 an Stelle des RS–232C–Adapters verwendet werden.
IBM PC/AT oder kompatibel RS–232C–SchnittstelleSignal Stift–Nr. Signal Stift–Nr.
Gehäuse
1:n–AnschlüsseStellen Sie den DIP–Schalter des NT–AL001 RS232C/RS–422 Adapter ein.
Normalerweise auf ON
Auf ON, wenn sich die Baugruppe am Ende des Übertragungspfades befindet. OFF in allen anderen Fällen.
4–Drahtleiter–Einstellung (beide Schalter auf OFF gesetzt)
Mit RS–232C–CTS–Handshake–Steuerung (5: OFF, 6: ON)
Die RS–232C–Schnittstelle mit RS-232C/RS-422–Adapter NT-AL001 und dieRS–232C–Schnittstelle der CPM2A/CPM2C oder des CPM1–CIF01RS–232C–Adapters wird, wie im folgenden Diagramm gezeigt, angeschlossen,falls kein CTS–Handshake der RS–232C–Schnittstelle erfolgt. Eine Span-nungsversorgung von 5 VDC wird an den RS–232C/RS–422–Adapter ange-
Anschluss der Kabel
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
227
legt. Bei der CPM2C kann das Anschlusskabel CPM2C–CN111 undCS1W–CN118 an Stelle des RS–232C–Adapters verwendet werden.
NT–AL001RS232C/RS–422–Adapter
Signal Stift–Nr.
RS–232C–Schnittstelle
Signal Stift–Nr.
Gehäuse
Hinweis Schließen Sie keine anderen externen Geräte als den Adapter NT–AL001 andie 5 VDC Spannungsversorgung (Stiftnummer 6) der RS–232C–Schnittstelleder CPM2A/CPM2C an. In diesen Fällen können Schäden an der CPM2A/CPM2C oder an dem externen Gerät entstehen.
Die erforderlich SPS–Konfigurationseinstellungen hängen davon ab, ob einePeripherie– oder eine RS–232C–Schnittstelle verwendet wird.
RS–232C–Schnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6645 00 bis 03 Kommunikationsformat0: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host–
Link–Baugruppennummer: 0)
1: Einstellungen in DM 6646
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstel-lung wird verwendet und AR 1302 wird auf EIN gesetzt).
Entsprechendden Host– Para-metern
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert; 1: Einstellung aktiviert
0 oder 1
08 bis 11 Link–Worte für 1:1–PC–Link0: LR 00 bis LR 15; andere: nicht wirksam
Beliebige Einstellung
12 bis 15 Kommunikationsmodus0: Host–Link (Vorgabeeinstellung); 1: RS–232C (Ohne Protokoll); 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Ein-stellung wird verwendet und AR 1302 wird auf EIN gesetzt).
0
DM 6646 00 bis 07 Baudrate:
00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek 02: 4.800 Bits/Sek 03: 9.600 Bits/Sek 04:19.200 Bits/Sek.
Entsprechendden Host–Parametern
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 7 1 Gerade01: 1 7 1 Ungerade02: 1 7 1 Keine03: 1 7 2 Gerade04: 1 7 2 Ungerade05: 1 7 2 Keine06: 1 8 1 Gerade07: 1 8 1 Ungerade08: 1 8 1 Keine09: 1 8 2 Gerade10: 1 8 2 Ungerade11: 1 8 2 Keine(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstel-lung (03) wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001gleich 10 ms
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstel-lung (0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
0000 bis 9999
SPS–Konfiguration
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
228
Wort EinstellungFunktionBit
DM 6648 00 bis 07 00 bis 31 (BCD): Teilnehmernummer (Host–Link)
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstel-lung (00) wird verwendet und AR 1302 wird auf EIN gesetzt).
00 bis 31
08 bis 11 Startcode (RS–232C)0: deaktiviert; 1: Startcode in DM 6649 verwenden.
Beliebige Einstellung
12 bis 15 Endecode (RS–232C)0: deaktiviert (Anzahl der empfangenen Bytes)1: Endecode in DM 6649 verwenden.2: CR, LF
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Deaktiviert–Ein-stellung wird verwendet und AR 1302 wird auf EIN gesetzt).
Beliebige Einstellung
DM 6649 00 bis 07 Startcode (00 bis FF)(Ohne Protokoll, wirksam, wenn, Bit 8 bis 11 von DM 6648 auf 1 gesetzt wird.)
Beliebige Einstellung
00 bis 15 Anzahl der empfangenen Datenbytes(Ohne Protokoll, wirksam, wenn Bit 12 bis 15 von DM 6648 auf 0 gesetzt wird.)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
Beliebige Einstellung
Endecode (00 bis FF)(Ohne Protokoll, wirksam, wenn, Bit 12 bis 15 von DM 6648 auf 1 gesetzt wird.)
Peripherieschnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6650 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host–
Link–Baugruppennummer: 0)
01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstellung(00) wird verwendet und AR 1302 wird auf EIN gesetzt).
Entsprechendden Host– Para-metern
04 bis 11 Nicht verwendet 0
12 bis 15 Kommunikationsmodus00: Host–Link oder Toolbus; 01: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstel-lung (00) wird verwendet und AR 1302 wird auf EIN gesetzt).
0
DM 6651 00 bis 07 Baudrate
00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek.; 02: 4.800 Bits/Sek.; 03: 9.600 Bits/Sek.; 04:19.200 Bits/Sek.
Entsprechendden Host– Para-metern
08 bis 15 Rahmenformat
Start Länge Stop Parität00: 1 7 1 Gerade01: 1 7 1 Ungerade02: 1 7 1 Kein03: 1 7 2 Gerade04: 1 7 2 Ungerade05: 1 7 2 Kein06: 1 8 1 Gerade07: 1 8 1 Ungerade08: 1 8 1 Kein09: 1 8 2 Gerade10: 1 8 2 Ungerade11: 1 8 2 Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung(03) wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstellung(0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
0000 bis 9999
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
229
Wort EinstellungFunktionBit
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grund–einstellung(03) wird verwendet und AR 1302 wird auf EIN gesetzt).
00 bis 31
08 bis 11 Startcode (Peripherieschnittstelle)0: deaktiviert1: Startcode in DM 6654 verwenden.
Beliebige Ein-stellung
12 bis 15 Endecode (Peripherieschnittstelle)0: deaktiviert (Anzahl der empfangenen Bytes)1: Endecode in DM 6654 verwenden.2: CR, LF
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Deaktiviert–Einstel-lung wird verwendet und AR 1302 wird auf EIN gesetzt).
Beliebige Ein-stellung
DM 6654 00 bis 07 Startcode (Peripherieschnittstelle, wirksam, wenn Bit 08 bis 11 von DM 6653 auf 1 gesetzt wird.)
00 bis FF (hexadezimal)
Beliebige Ein-stellung
08 bis 15 Anzahl der empfangenen Datenbytes(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 0 gesetzt wird.)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
Beliebige Ein-stellung
Endecode (00 bis FF)(Peripherieschnittstelle, wirksam, wenn, Bit 12 bis 15 von DM 6653 auf 1 gesetzt wird.)
Dieses Beispiel zeigt ein BASIC–Programm, das den Zustand der CPM2A/CPM2C–Eingänge in IR 000 liest. Sehen Sie für weitere Einzelheiten Abschnitt4-5 Host–Link–Befehle.
Eine FCS–Prüfung (Rahmen–Überprüfungsfolge) wird bei den empfangenenAntwortsdaten in diesem Programm nicht durchgeführt.
Vergewissern Sie sich vor Durchführung des Programms, dass die RS–232C–Schnittstelle des Host–Computers richtig konfiguriert ist.
1000 ’ –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––1010 ’ CPM2A/CPM2C Beispielsprogramm in BASIC1020 ’1050 ’ –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––1060 ’ ––RS–232C Baudrate:9.600 Bits/Sek,Parität:gerade,Datenbits:7,Stopbits:2––1070 OPEN ”COM:E73” AS #11080 *REPEAT1090 –––Übertragungsdateneingabe–––––––––––––––––––––––––––––––––––––––––––––––1100 INPUT ” send data : ”,send$1110 ’ –––FCS–Berechnung––––––––––––––––––––––––––––––––––––––––––––––––––––––––1120 FCS=01130 FOR IFCS = 1 TO LEN ( send$ )1140 FCS = FCS XOR ASC( MID$ ( SEND$ , IFCS , 1 ) )1150 NEXT1160 FCS$ = RIGHT$ ( ”0” + HEX$ ( FCS ) , 2 )1170 ’ –––Kommunikationsausführung––––––––––––––––––––––––––––––––––––––––––––––1180 ZZZ$ = SEND$ + FCS$ + ”*” + CHR$(13)1190 PRINT #1 , ZZZ$ ;1200 ’ –––Antworttest–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––1210 RECCNT = 0 : TMP$ – ””1220 *DRECLOOP1230 IF LOC ( 1 ) < > 0 THEN *DREC11240 RECCNT = RECCNT + 11250 IF RECCNT = 5000 THEN *DRECERR ELSE *DRECLOOP1260 *DREC11270 TMP$ = TMP$ + INPUT$ ( LOC (1 ) , #1 )1280 IF RIGHT$ ( TMP$ , 1 ) = CHR$ (13) THEN *DRECEND ELSE RECCNT = 0 : GOTO *DRECLOOP1290 *DRECERR1300 TMP$ = ” No response !! ” + CHR$ ( 13 )1310 *DRECEND1320 PRINT ” Empfangsdaten: ” ; RECV$1340 ’ –––Gehe zu Übertrage Dateneingabe––––––––––––––––––––––––––––––––––––––––1350 GOTO *REPEAT1360 ’ –––Verarbeitung abgeschlossen––––––––––––––––––––––––––––––––––––––––––––
Ausgabe von Befehlenüber einenHost–Computer
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
230
1370 CLOSE #11380 END
Die unangeforderte Host–Link–Kommunikation wird mit TXD(48) ausgeführt.
AWL Steuerung Inhalt
(@)TXD(48) Schnittstellenausgabe Liest Daten aus dem E/A–Speicher und sendetdiese im spezifizierten Rahmenformat.
Die Host–Link–Kommunikation wird über die folgenden AR–Bereichsmerkergesteuert.
Wort Bit (s) Inhalt
AR 08 00 bis 03 RS–232C–Schnittstelle: Fehlercode0: Normale Beendigung 1: Paritätsfehler2: Rahmenlängen–Fehler 3: Überlauffehler
04 RS–232C: Kommunikations–Fehlermerker ON: RS–232C–Schnittstellen–Kommunikationsfehler
aufgetretenOFF: Normal
05 RS–232C: Sendebereit–MerkerON: Die SPS ist bereit, Daten zu senden.
08 bis 11 Peripherieschnittstelle: Fehlercode0: Normale Beendigung 1: Paritätsfehler2: Rahmenlängen–Fehler 3: Überlauffehler
12 Peripherieschnittstellen: Kommunikations–FehlermerkerON: Peripherieschnittstellen–Kommunikations–Fehler aufgetreten
13 Peripherieschnittstellen: Sendebereit–MerkerON: Die SPS ist bereit, Daten zu senden.
Unangeforderte KommunikationEine Datenübertragung zum Host–Computer wird von der SPS initiiert.
S: Anfangsadresse der zu sendenden Daten
C: Steuerdaten
N: Anzahl der zu sendenden Bytes (BCD: 0001 bis 0061)
Kommunikationsschnittstelle0: RS–232–Schnittstelle1: Peripherie-Schnittstelle
(@)TXD
S
C
N
Wird die Host–Link–Kommunikation verwendet, konvertiert TXD(48) die n–Da-tenbytes, die an S beginnen zu ASCII–Daten, fügt Host–Link–Kopf, FCS undEndezeichen hinzu und sendet diese Daten als Host–Link–Rahmen.
In der folgenden Abbildung ist der gesendete Host–Link–Rahmen dargestellt.
In ASCII konvertiert.
n–Bytes
Teilneh-mer-Nr.
Daten (ASCII) CR
Kontaktplan (AWL)
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
231
Im folgenden Programmbeispiel wird TXD(48) verwendet, um Daten über eineRS–232C–Schnittstelle an einen Host–Computer zu senden. Ist AR 0805 (derRS–232C–Sendenbereit–Merker) aktiviert, nachdem IR 00100 eingeschaltetwurde, werden die zehn Datenbytes (DM 0000 bis DM 0004) zum Host–Com-puter gesendet, wobei die äußerst linken Bytes zuerst gesendet werden.
Anfangsadresse der zu sendenden Daten
RS–232C–Schnittstellenepezifikation
10 Bytes
(48)
4-3-2 Ohne Protokoll–Kommunikationsmodus
ÜbersichtWird die Ohne Protokoll–Kommunikation verwendet, können Daten mit seriel-len Geräten wie Barcode–Lesern und seriellen Druckern über TXD(48) undRXD(47) ausgetauscht werden. Die Ohne Protokoll–Kommunikation kann übereine RS–232C– oder Peripherieschnittstelle erfolgen.
CPM2A–Anschlüsse
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
CPM2A–CPU–Baugruppe
RS–232C–Schnittstelle
CPM2A–CPU–Baugruppe
CPM2A–CPU–Baugruppe
Peripherieschnittstelle
Peripherieschnittstelle
CPM1–CIF01 RS–232C–Adapter(Die CTS–Handshake–Steuerungkann nicht verwendet werden.)
CQM1–CIF02 RS–232C–Adapter(Die CTS–Handshake–Steuerungkann nicht verwendet werden.)
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
232
CPM2C–Anschlüsse
RS–232C–Geräte
Barcode–Leser
Seriellerer Drucker
Andere
CPM2C–CPU–Baugruppe
Hinweis Ein CPM1–CIF01 RS–232C–Adapter kann auch für eine Kommunikation ohneProtokoll über die Peripherieschnittstelle verwendet werden oder für eineCPM2C kann ein CPM2C–CIF01 Peripherie–/RS–232C Adapter zum An-schluss externer Geräte eingesetzt werden. Sehen Sie das CPM2C Program-mierhandbuch für weitere Einzelheiten.
Übertragungsdaten–KonfigurationWird die Ohne Protokoll–Kommunikation verwendet, werden Daten mit demTXD(48)–Befehl gesendet und mit dem RXD(47)–Befehl empfangen. Die maxi-male Datenanzahl einschließlich des Start–/Endecodes beträgt hierbei 256 By-tes.
Kein Start– und Endecode:
Daten (spezifizierte Anzahl der Bytes)
Nur Startcode:
ST Daten (spezifizierte Anzahl der Bytes)
Nur Endecode:
EDDaten (max. 256 Zeichen)
Sowohl Start– als auch Endecode:
ST Daten (max. 256 Zeichen) ED
CR, LF–Endecode:
LFDaten (max. 256 Zeichen) CR
Startcode 00–FF/Endecode CR, LF:
LFDaten (max. 256 Zeichen) CRST
Hinweis 1. Die Start– und Endecodes werden in DM 6648 bis DM 6649 (RS–232C)oder DM 6653 bis DM 6654 (Peripherieschnittstelle) in der SPS–Konfigura-tion spezifiziert.
2. Befinden sich verschiedene Start– oder Endecodes in der Übertragung, istjeweils der erste wirksam.
3. Ist der Endecode zufällig in den Übertragungsdaten vorhanden und brichtdie Übertragung vorzeitig ab, so verwenden Sie CR und LF als Endecode.
4. Der Start– und Endecodes selbst werden nicht gesendet und empfangen.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
233
ÜbertragungsmerkerWerden Daten von der CPM2A/CPM2C gesendet, muss für die Ausführung desTXD(48)–Befehls der Übertragung bereit–Merker auf einen EIN–Zustand gete-stet werden. Während der Datenübertragung wird der Sendebereit–Merker aufAUS und nach Beendigung der Übertragung wieder auf EIN gesetzt.
Nachdem die CPM2A/CPM2C Daten empfangen hat, wird der Empfang akti-viert–Merker eingeschaltet. Wird der RXD(47)–Befehl ausgeführt, werden dieempfangenen Daten in die spezifizierten Worte geschrieben und der Empfangbeendet–Merker wird auf AUS gesetzt.
Merker Peripherie-schnittstelle
RS–232C–Schnittstelle
Sendebereit–Merker AR 0813 AR 0805
Empfang beendet–Merker AR 0814 AR 0806
Hinweis Die CPM2A/CPM2C beginnt und beendet den Datenempfang unter den folgen-den Umständen:
Empfangsstart:Startcode deaktiviert: Ständig auf EmpfangStartcode aktiviert: Nach Empfang des Startcodes.
Empfang beendet:Wenn entweder der Endecode, die spezifizierte Anzahl von Zeichen oder 256Zeichen empfangen wurden.
Applikationsverfahren
Einstellung des Kommunikations–schalters
Stellen Sie den Kommunikationsschalter der CPM2ACPU–Baugruppe oder den DIP–Schalter der CPM2CCPU–Baugruppe ein.
Anschliessen der Kabel Stellen Sie den RS–232C–Anschluss mit dem seriellen Gerät her.
Kontaktplan–Programm
Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf derVorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den aufder Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–KommunikationsschaltereinstellungSchalten Sie den Kommunikationsschalter auf OFF, wenn Sie die Ohne Proto-
Kommunikations–DIP–Schaltereinstellungen
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
234
koll–Kommunikation verwenden. Eine Ohne Protokoll–Kommunikation ist nichtmöglich, wenn der Kommunikationsschalter eingeschaltet ist.
Kommunikationsschalter
Peripherieschnittstelle RS–232C–Schnittstelle
Hinweis Ein RS–232C–Adapter ist für eine Ohne Protokoll–Kommunikation über die Pe-ripherieschnittstelle erforderlich.
CPM2C–DIP–SchaltereinstellungenSchalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die Ohne Protokoll–Kommunikation verwenden, damit die Kommunikation über die RS–232C–Schnittstelle durch die Einstellungen in der SPS–Konfiguration (DM 6645 bisDM 6649) bestimmt werden. Schalten bei der Ohne Protokoll–Kommunikationüber die Peripherieschnittstelle Schalter 2 ebenfalls ein.
Kommunikationsschnittstellen–DIP–Schalter
Schalter–einstellungen
Peripherieschnittstellen–Kommunikation
RS–232C–Schnittstellen–Kommunikation
Schalter 1 Schalter 2
OFF OFF Programmierkonsolen–Protokoll
Von der SPS–Konfiguration be-stimmt(DM 6645 bi DM 6649)OFF ON Von der SPS–Konfiguration be-
stimmt(DM 6650 bis DM 6654)
(DM 6645 bis DM 6649)
ON OFF Programmierkonsolen–Protokoll
Von Standard–Einstellungen be-stimmt
ON ON Von Standard–Einstellungen be-stimmt
Hinweis Ein RS–232C–Adapter wird für die Ohne Protokoll–Kommunikation über diePeripherieschnittstelle benötigt.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
235
Dieser Abschnitt beschreibt RS–232C–Anschlüsse.
Die RS–232C–Schnittstelle des seriellen Gerätes und die RS–232C–Schnitt-stelle der CPM2A/CPM2C oder des CPM1–CIF01 RS–232C–Adapters wird,wie in der folgenden Abbildung gezeigt, angeschlossen. Bei der CPM2C kön-nen die Anschlusskabel CPM2C–CN111 und CS1W–CN118 an Stelle desRS–232C–Adapters verwendet werden.
RS–232C–Schnittstelle
Signal Stift–Nr.
Gehäuse
Serielles Gerät RD (Empfangsdaten)
Serielles Gerät SD (Sendedaten)
Serielles Gerät SG (Signalmasse)
Die erforderlich SPS–Konfigurationseinstellungen hängen davon ab, ob einePeripherie– oder eine RS–232C–Schnittstelle verwendet wird.
RS–232C–Schnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6645 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host–
Link–Baugruppennummer: 0)
01: Einstellungen in DM 6646
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung wirdverwendet und AR 1302 wird auf EIN gesetzt).
Applikations–abhängig
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert; 1: Einstellung aktiviert
08 bis 11 Link–Worte für 1:1–PC–Link0: LR 00 bis LR 15; andere: nicht wirksam
Beliebige Ein-stellung
12 bis 15 Kommunikationsmodus0: Host–Link1: Ohne Protokoll (RS–232C)2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master)4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstellungwird verwendet und AR 1302 wird auf EIN gesetzt).
1
DM 6646 00 bis 07 Baudrate
00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek.; 02: 4.800 Bits/Sek.; 03: 9.600 Bits/Sek.; 04:19.200 Bits/Sek.
Applikations-abhängig
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 7 1 Gerade01: 1 7 1 Ungerade02: 1 7 1 Kein03: 1 7 2 Gerade04: 1 7 2 Ungerade05: 1 7 2 Kein06: 1 8 1 Gerade07: 1 8 1 Ungerade08: 1 8 1 Kein09: 1 8 2 Gerade10: 1 8 2 Ungerade11: 1 8 2 Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (03)wird verwendet und AR 1302 wird auf EIN gesetzt).
Anschliessen der Kabel
SPS–Konfiguration
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
236
Wort EinstellungFunktionBit
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001 gleich10 ms
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung(0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
0000 bis 9999
DM 6648 00 bis 07 00 bis 31 (BCD): Teilnehmernummer (Host–Link)(Andere Einstellungen verursachen einen gerinfügigen Fehler, die Vorgabeeinstellung (00)wird verwendet und AR 1302 wird eingeschaltet.)
Applikations-abhängig
08 bis 11 Startcode (RS–232C)0: deaktiviert; 1: Startcode in DM 6649 verwenden.
0 oder 1
12 bis 15 Endecode (RS–232C)00: deaktiviert (Anzahl der empfangenen Bytes)01: Endecode in DM 6649 verwenden.02: CR, LF
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
0 bis 2
DM 6649 00 bis 07 Startcode (00 bis FF)(Ohne Protokoll, wirksam, wenn, Bit 8 bis 11 von DM 6648 auf 1 gesetzt wird.)
00 bis FF
08 bis 15 Anzahl der empfangenen Datenbytes(Ohne Protokoll, wirksam, wenn Bit 12 bis 15 von DM 6648 auf 0 gesetzt wird.)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
00 bis FF
Endecode (00 bis FF)(Ohne Protokoll, wirksam, wenn, Bit 12 bis 15 von DM 6648 auf 1 gesetzt wird.)
00 bis FF
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
237
Peripherieschnittstelleneinstellungen
Wort Bit Funktion Einstellung
DM 6650 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host–
Link–Baugruppennummer: 0)
01: Einstellungen im Datenwort DM 6651
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Applikations-abhängig
04 bis 11 Nicht verwendet 0
12 bis 15 Kommunikationsmodus0: Host–Link oder Toolbus; 1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstellungwird verwendet und AR 1302 wird auf EIN gesetzt).
1
DM 6651 00 bis 07 Baudrate00: 1.200 Bits/Sek.; 01: 2.400 Bits/Sek.; 02: 4.800 Bits/Sek.; 03: 9.600 Bits/Sek.; 04:19.200 Bits/Sek.
Applikations-abhängig
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 7 1 Gerade01: 1 7 1 Ungerade02: 1 7 1 Kein03: 1 7 2 Gerade04: 1 7 2 Ungerade05: 1 7 2 Kein06: 1 8 1 Gerade07: 1 8 1 Ungerade08: 1 8 1 Kein09: 1 8 2 Gerade10: 1 8 2 Ungerade11: 1 8 2 Keine(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (03)wird verwendet und AR 1302 wird auf EIN gesetzt).
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung(0000) wird verwendet und AR 1302 wird auf EIN gesetzt).
0000 bis 9999
DM 6653 00 bis 07 00 bis 31 (BCD): Teilnehmernummer (Host–Link)
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Applikations-abhängig
08 bis 11 Startcode (Peripherieschnittstelle)0: deaktiviert1: Startcode in DM 6654 verwenden.
0 oder 1
12 bis 15 Endecode (Peripherieschnittstelle)00: deaktiviert (Anzahl der empfangenen Bytes)01: Endecode in DM 6654 verwenden.02: CR. LF
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
0 bis 2
DM 6654 00 bis 07 Startcode (00 bis FF)(Peripherieschnittstelle, wirksam, wenn, Bit 8 bis 11 von DM 6653 auf 1 gesetzt wird.)
00 bis FF
08 bis 15 Anzahl der empfangenen Datenbytes(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 0 gesetzt wird.)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
00 bis FF
Endecode (00 bis FF)(Peripherieschnittstelle, wirksam, wenn Bit 12 bis 15 von DM 6653 auf 1 gesetzt wird.)
00 bis FF
Die folgenden Befehle werden in der Ohne Protokoll–Kommunikation verwen-det.
AWL Steuerung Inhalt
(@)TXD(48) Datenausgabe überdie Schnittstellen
Liest Daten vom spezifizierten Speicher und sendetdiese im spezifizierten Rahmenformat (Start– undEndecode können aktiviert/deaktiviert werden).
(@)RXD(47) Datenempfang überdie Schnittstelle
Empfängt Daten im spezifizierten Rahmenformat(Start– und Endecode können aktiviert/ deaktiviertwerden) und speichert nur die Daten im spezifiziertenSpeicher.
Programm
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
238
Die Ohne Protokoll–Kommunikationverwendet die folgenden AR–Bereichs-merker.
Wort Bit (s) Inhalt
AR 08 00 bis 03 RS–232C: Schnittstellen–Fehlercode0: Normale Beendigung; 1: Paritätsfehler2: Rahmenlängen–Fehler 3: Überlauffehler
04 RS–232C: Kommunikations–Fehlermerker EIN: RS–232C–Schnittstellenkommunikations–Fehler aufgetreten.AUS: Normal
05 RS–232C: Sendebereit–MerkerEIN: Die SPS ist bereit, Daten zu senden.
06 RS–232C: Empfang beendet–MerkerEIN: Die SPS hat das Lesen der Daten beendet.
07 RS–232C: EmpfangsüberlaufmerkerEIN: Ein Empfangsüberlauf ist aufgetreten.
08 bis 11 Peripherieschnittstelle: Fehlercode0: Normale Beendigung; 1: Paritätsfehler2: Rahmenlängen–Fehler 3: Überlauffehler
12 Peripherieschnittstelle: Kommunikations–FehlermerkerEIN: Ein Peripherieschnittstellen–Kommunikationsfehler ist aufge-treten.AUS: Normal
13 Peripherieschnittstelle: Sendebereit–MerkerEIN: Die SPS ist bereit, Daten zu senden.
14 Peripherieschnittstelle: Empfang beendet–MerkerEIN: Die SPS hat das Lesen der Daten beendet.
15 Peripherieschnittstelle :EmpfangsüberlaufmerkerEIN: Ein Empfangsüberlauf ist aufgetreten.
AR 09 00 bis 15 RS–232C–Schnittstelle: Datenübertragungszähler (4–stelligerBCD–Wert)
AR 10 00 bis 15 Peripherieschnittstelle: Datenübertragungszähler (4–stelligerBCD–Wert)
Ohne Protokoll–DatenübertragungTXD(48) wird zum Senden von Daten an RS–232C–Geräte verwendet.
S: Anfangsadresse der zu sendenden Daten
C: Steuerdaten
N: Anzahl der zu sendenden Bytes (BCD: 0001 bis 0256)
Speicherreihenfolge0: Äußerst linke Bytes zuerst 1: Äußerst rechte Bytes zuerstKommunikationsschnittstelle0: RS–232–Schnittstelle; 1: Peripherieschnittstelle
(@)TXD
S
C
N
C
Wird die Ohne Protokoll–Kommunikation verwendet, sendet TXD(48) n Daten-bytes, beginnend bei S.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
239
Datenempfang bei Verwendung der Ohne Protokoll–OptionRXD(47) wird zum Empfang von Daten von RS–232C–Geräten verwendet.
S: Erste Adresse zum Speichern der Empfangsdaten
C: SteuerdatenN: Anzahl der zu empfangenden Bytes (BCD: 0001 bis 0256)
Speicherreihenfolge
0: Äußerst linke Bytes zuerst 1: Äußerst rechte Bytes zuerst
Kommunikationsschnittstelle
0: RS–232–Schnittstelle 1: Peripherieschnittstelle
(@)RXD(47)
S
C
N
Das folgende Programm ist ein Beispiel für die Ohne Protokoll–Schnittstellen-kommunikation über eine RS–232C–Schnittstelle und unter Verwendung desTXD(48)– und RXD (47)–Befehls.
Ist AR 0805 (der RS–232C–Sendebereit-Merker) auf EIN gesetzt, wenn 00100auf EIN gesetzt wird, werden die Datenbytes (DM0100 bis DM 0104), begin-nend mit den äußerst linken Bytes, übertragen. Wird AR 0806 (Empfang been-det–Merker) aktiviert, werden 256 Bytes der empfangenen Daten gelesen undin DM 0200, beginnend mit den äußerst linken Bytes zu den äußerst rechten By-tes) gespeichert.
Erstes Wort mit den gesendeten Daten.
10 Bytes senden.
RS–232C–Schnittstelle verwenden; Da-ten von den äußerst linken Bytes zu denäußerst rechten Bytes senden.
Ohne Protokoll–Kommunikation starten
00100
AR 0806
AR 0805
DIFU (13)
00101
TXD(48)
DM 0100
00101
#0000
#0010
@RXD(47)
DM 0200
#0000
#0256
Erstes Wort zur Speicherung der Empfangsdaten.
256 Bytes empfangen.
RS–232C–Schnittstelle verwenden; empfangeneDaten (beginnend bei den äußerst linken Byteszu den äußerst rechten Bytes) speichern.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
240
4-3-3 1:1–NT–Link–KommunikationDer NT–Link ermöglicht die direkte Verbindung einer CPM2A/CPM2C–SPS miteinem OMRON NT–Terminal. Ein Kommunikationsprogramm in der SPS istnicht erforderlich. Der RS–232C–Anschluss kann für NT–Link verwendet wer-den.
CPM2A–Anschluss
Programmierbares NT–Terminal
RS–232C–Kabel
CPM2A–CPU–Baugruppe
RS–232C–Schnittstelle
CPM2C–1:1–NT–Link–Anschluss
Anschlusskabel
CBL–405C–2M (2 m)CBL–405C–5M (5 m)
NT-AL001RS-232C–Adapter
CPM2C–CN111 (0,15 m)
XW2Z-070T-1 (0,7 m)CBL–405C–2M (2 m)
CS1W–CN118 (0,1 m)
CPM2C–CPU–Baugruppe
ProgrammierbaresNT–Terminal
RS–232C–Schnittstelle(Sub–D, 9–polig) RS–232C–
Schnittstelle
RS–232C ← Peripherieschnittstelle
RS–232C–Schnittstelle
CPM2C-CIF01
RS-422 ← Peripherieschnittstelle
RS–232C–Schnittstelle
CPM2C-CIF11
RS–232C–Anschluss
RS–422–Anschluss
Hinweis Bei einer 1:1–NT–Link–Kommunikation kann das NT–Terminal nicht an einenPeripherieschnittstellen–Anschluss angeschlossen werden.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
241
Applikationsverfahren
Kommunikationseinstellungen
Anschliessen der Kabel
Verwenden Sie die Einstellungen in der SPS–Konfiguration(DM6645 bis DM 6649) für die RS–232C–Kommunikation.(Schalten Sie den Kommunikationsschalter auf der CPU–Baugruppe der CPM2A oder Schalter 1 des DIP–Schaltersauf der CPU–Baugruppe der CPM2C aus.)
Anschluss eines NT–Terminals.
Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf derVorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den aufder Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–Kommunikationsschalter–EinstellungSchalten Sie den Kommunikationsschalter aus, wenn Sie die 1:1–NT–LinkKommunikation verwenden. Eine 1:1–NT–Link–Kommunikation ist nicht mög-lich, wenn der Kommunikationsschalter eingeschaltet ist.
Kommunikationsschalter
RS–232C–Schnittstelle
ON
OFF
Kommunikations–DIP–Schaltereinstellungen
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
242
CPM2C–DIP–SchaltereinstellungenSchalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die 1:1–NT–LinkKommunikation verwenden, damit die Kommunikation über die RS–232C–Schnittstelle durch die Einstellungen in der SPS–Konfiguration bestimmt wer-den (DM 6645 bis DM 6649).
DIP–Schalter
Schalter–einstellungen
Peripherieschnittstellen–Kommunikation
RS–232C–Schnittstellen–Kommunikation
Schalter 1 Schalter 2
OFF OFF Programmierkonsolen–Protokoll
Von der SPS–Konfiguration be-stimmt(DM 6645 bi DM 6649)OFF ON Von der SPS–Konfiguration be-
stimmt(DM 6650 bis DM 6654)
(DM 6645 bis DM 6649)
ON OFF Programmierkonsolen–Protokoll
Von Standard–Einstellungen be-stimmt
ON ON Von Standard–Einstellungen be-stimmt
Beim Einsatz einer NT–Link–Kommunikation mit einer CPM2A/CPM2C–SPSmüssen die folgenden SPS–Einstellungen (DM 6645) über ein Programmierge-rät vorgenommen werden.
Wort Bit Funktion Einstellung
DM 6645 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, 2 Stopbits, gerade Parität, 9.600 Bits/Sek.; Host–
Link–Baugruppennummer: 0)
01: Einstellungen in DM 6646
Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
00 oder 01
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert1: Einstellung aktiviert
0 oder 1
08 bis 11 Für den 1:1–NT–Link–Kommunikationsmodus unerheblich 0
12 bis 15 Kommunikationsmodus0: Host–Link1: Ohne Protokoll (RS–232C) 2: 1:1–PC–Link (Slave)3: 1:1–PC–Link (Master)4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstellungwird verwendet und AR 1302 wird auf EIN gesetzt).
4
Sehen Sie für Informationen über die 1:1–NT–Link Einstellungen einesOMRON NT–Terminal das entsprechende Bedienerhandbuch.
Dieser Abschnitt beschreibt RS–232C–Anschlüsse.
Die RS–232C–Schnittstelle des NT–Terminals und die RS–232C–Schnittstelleder CPM2A/CPM2C oder des CPM1–CIF01 RS–232C–Adapters wird wie in derfolgenden Abbildung gezeigt, angeschlossen, falls kein CTS–Handshake der
SPS–Konfiguration
Anschliessen der Kabel
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
243
RS–232C–Schnittstelle erfolgt. Bei der CPM2C werden die AnschlusskabelCPM2C–CN111 und CS1W–CN118 verwendet.
OMRON–NT
Signal Stift–Nr.
RS–232C–Schnittstelle
Signal Stift–Nr.
Gehäuse
Empfohlene Kabel:CBL–405C–2M: 2mCBL–405C–5M: 5m
Gehäuse
4-3-4 1:1–PC–Link–KommunikationEin 1:1–PC–Link mit bis zu 256 Bits (LR0000 bis LR1515) kann im Datenbereicheiner anderen CPM2A/CPM2C, CQM1, CPM1, CPM1A, SRM1(–V2) oder einerC200HX/HG/HE erstellt werden, wobei eine SPS als Master dient und die ande-ren als Slave. Ein Kommunikationsprogramm in der SPS ist nicht erforderlich.
Der 1:1–PC–Link erfolgt über die RS–232C–Schnittstelle.1:1–PC–Link
CPM2A–CPU–Baugruppe CPM2A–CPU–Baugruppe
RS–232C–SchnittstelleRS–232C–Schnittstelle
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2C,SRM1(–V2), C200HS oder C200HX/HG/HE)
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2C,SRM1(–V2), C200HS oder C200HX/HG/HE)
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
244
CPM2C–CN111(0,1 m)
CS1W–CN118(0,1 m)
CS1W–CN118 (0,1 m)
1:1–Link–MasterCPM2C–CPU–
Baugruppe
Anschlusskabel
CBL–405C–2M (2 m)CBL–405C–5M (5 m)
RS–232C–Schnittstelle(Sub–D, 9–polig)
CPM2C–CN111 (0,1 m)
RS–232C–Schnittstelle(Sub–D, 9–polig)
1:1–Link–SlaveCPM2C–CPU–
Baugruppe
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2A,SRM1(–V2), C200HS oder C200HX/HG/HE)
OMRON–SPS (CQM1, CPM1, CPM1A, CPM2A,SRM1(–V2), C200HS oder C200HX/HG/HE)
CPM2C-CIF01
CPM2C-CIF11
CPM2C-CIF01
CPM2C-CIF11
Master Slave
Link–Merker Link–MerkerLR 00
LR07LR08
LR 15
Schreiben
Lesen
Schreib-bereich
Lese-bereich
Lese-bereich
Schreib-bereich Schreiben
Lesen
LR 00
LR07LR08
LR 15
Hinweis Auch wenn die Peripherieschnittstelle des CPM2C–CIF01 RS–232C–Signale ausgeben kann, kann dieseSchnittstelle nicht für eine 1:1–Kommunikationsverbindung verwendet werden.
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
245
Der Link–Merkerbereich der CPM2A/CPM2C–SPS–Systeme umfasst 16Worte, LR00 bis LR15. Verwenden Sie bei einem 1:1–PC–Link mit einerCPM2A/CPM2C und einer CQM1, C200HS oder C200HX/HE/HG die entspre-chenden 16 Worte, LR00 bis LR15 dieser CQM1, C200HS oder C200HX/HE/HG. Ein 1:1–PC–Link mit einer CPM2A/CPM2C SPS kann nicht die MerkerLR16 bis LR 63 verwenden.
Applikationsverfahren
Kommunikationseinstellungen
Anschliessen der Kabel
Verwenden Sie die Einstellungen in der SPS–Konfiguration (DM6645 bis DM 6649) für dieRS–232C–Kommunikation.(Schalten Sie den Kommunikationsschalter aufder CPU–Baugruppe der CPM2A oder Schalter 1des DIP–Schalters auf der CPU–Baugruppe derCPM2C aus.)
Schließen Sie eine SPS über den 1:1–PC–Link aneine andere an.
Die Kommunikation der CPM2A wird über den Kommunikationsschalter auf derVorderseite der CPU–Baugruppe und die der CPM2C ebenfalls über den aufder Vorderseite der CPU–Baugruppe befindlichen DIP–Schalter gesteuert.
CPM2A–Kommunikationsschalter–EinstellungSchalten Sie den Kommunikationsschalter aus, wenn Sie die 1:1–PC–LinkKommunikation verwenden. Eine 1:1–PC–Link–Kommunikation ist nicht mög-lich, wenn der Kommunikationsschalter eingeschaltet ist.
Kommunikationsschalter
RS–232C–Schnittstelle
ON
OFF
PC–Link mit anderenSPS–Systemen
Kommunikations–DIP–Schaltereinstellungen
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
246
CPM2C–DIP–SchaltereinstellungenSchalten Sie Schalter 1 des DIP–Schalters aus, wenn Sie die 1:1–PC–LinkKommunikation verwenden, damit die Kommunikation über die RS–232C–Schnittstelle durch die Einstellungen in der SPS–Konfiguration bestimmt wer-den (DM 6645 bis DM 6649).
DIP–Schalter
Schalter–einstellungen
Peripherieschnittstellen–Kommunikation
RS–232C–Schnittstellen–Kommunikation
Schalter 1 Schalter 2
OFF OFF Programmierkonsolen–Protokoll
Von der SPS–Konfiguration be-stimmt(DM 6645 bi DM 6649)OFF ON Von der SPS–Konfiguration be-
stimmt(DM 6650 bis DM 6654)
(DM 6645 bis DM 6649)
ON OFF Programmierkonsolen–Protokoll
Von Standard–Einstellungen be-stimmt
ON ON Von Standard–Einstellungen be-stimmt
Verwenden Sie bei der Erstellung eines 1:1–PC–Links mit einer CPM2A/CPM2C–SPS ein Programmiergerät, um die folgende SPS–Einstellung (DM6645) im Master und Slave vorzunehmen.
Wort Bit Funktion Ein–stellung(Master)
Ein–stellung(Slave)
DM 6645 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstel-lung (00) wird verwendet und AR 1302 wird auf EIN gesetzt).
BeliebigeEinstel-lung
BeliebigeEinstel-lung
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert1: Einstellung aktiviert
0 0
08 bis 11 Link–Bereich für den 1:1–PC–Link0: LR 00 bis LR 15
(Andere Einstellungen: deaktiviert)
0 0
12 bis 15 Kommunikationsmodus0: Host–Link 1: Ohne Protokoll (RS–232C);2: 1:1–PC–Link (Slave)3: 1:1–PC–Link (Master)4: 1:1–NT–Link
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Host–Link–Einstellung wird verwendet und AR 1302 wird auf EIN gesetzt).
3 2
Weitere Informationen über die 1:1–PC–Link–Kommunikation mit einer ande-ren SPS finden Sie im jeweiligen Handbuch dieser SPS.
Dieser Abschnitt beschreibt den RS–232C–Anschluss.
Das für den 1:1–PC–Link verwendete RS–232C–Kabel ist ein Kreuzverbin-dungskabel. Ohne CTS–Handshake–Steuerung der RS–232C–Schnittstelle
SPS–Konfiguration
Anschliessen der Kabel
4-3AbschnittCPM2A–/CPM2C–Kommunikationsfunktionen
247
wird der in der nachfolgenden Abbildung dargestellte Anschluss verwendet. Beider CPM2C werden die Anschlusskabel CPM2C–CN111 und CS1W–CN118verwendet.
RS–232C–Schnittstelle
Signal Stift–Nr.
RS–232C–Schnittstelle
Signal Stift–Nr.
Gehäuse
Empfohlene KabelCBL–405C–2M: 2mCBL–405C–5M: 5m
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
248
4-4 SRM1(–V2)–Kommunikationsfunktionen
4-4-1 Host–Link–KommunikationDie Host-Link-Kommunikation wurde von OMRON zur Verbindung einer odermehrerer SPS mit einem Host-Computer über ein RS-232C-Kabel entwickelt.Die Kommunikation wird hierbei von dem Host–Computer gesteuert. Normaler-weise gibt der Host-Computer einen Befehl an eine SPS aus, die wiederum au-tomatisch eine Empfangsbestätigung ausgibt. Daher wird die Kommunikationohne aktive Beteiligung der SPS ausgeführt. Einige SPS–Systeme könnenebenfalls Datenübertragungen einleiten, wenn eine direkte Beteiligung erfor-derlich ist.
Im Allgemeinen stehen zur Implementation der Host–Link–Kommunikationzwei Arten zur Verfügung. Eine baisert auf den C-Modus– und die andere aufden FINS(CV-Modus)–Befehlen. Die SRM1(-V2) unterstützt nur C-Modus–Be-fehle. Einzelheiten über die zur Verfügung stehenden Host–Link–Befehle findenSie im Kapitel 4-5.
Die Einstellungen der SRM1(–V2)–Peripherieschnittstelle müssen richtig vor-genommen werden, um die in der folgenden Tabelle dargestellte Host–Link–Kommunikation zu verwenden.
Wort Bit Funktion Ein–stellung
Einstellungen der Peripheriegeräte–SchnittstelleDie folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6650 00 bis 03 Kommunikationsformat00: 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, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Anpassungan Host–Parameter
04 bis 07 Nicht verwendet. 0
08 bis 11 Nicht verwendet. 0
12 bis 15 Kommunikationsmodus0: Host–Link; 1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (0)wird verwendet und AR 1302 wird auf EIN gesetzt).
0: Host-Link
DM 6651 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2
Anpassungan Host–Parameter
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Anpassungan Host–Parameter
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (0000)wird verwendet und AR 1302 wird auf EIN gesetzt).
Anpassungan Host–Parameter
SPS–Konfigurations–einstellung
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
249
Wort Ein–stellung
FunktionBit
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
00 bis 31
08 bis 11 Startcode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6650 auf 1gesetzt werden.)0: Deaktiviert1: Einstellung aktiviert
BeliebigeEinstellung
12 bis 15 Endecode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6650 auf 1gesetzt werden.)0: Deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung aktiviert (spezifizierter Endecode)2: CR, LF
BeliebigeEinstellung
DM 6654 00 bis 07 Startcode (wirksam, wenn Bits 08 bis 11 von DM 6650 auf 1 gesetzt werden).00: 256 Bytes01 bis FF: 1 bis 255 Bytes
BeliebigeEinstellung
08 bis 15 Endecode (Ohne Protokoll)
Bits 12 bis 15 des Datenwortes DM 6653 auf 0 gesetzt:00: 256 Bytes01 bis FF: 1 bis 255 Bytes
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt:Einstellung: 00 bis FF (hex)
BeliebigeEinstellung
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich diefolgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stop–, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Wort Bit Funktion Ein–stellung
RS–232C SchnittstelleneinstellungenDie folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
Host–Parameter
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert; 1: Einstellung aktiviert
0
08 bis 11 Bei Einsatz einer 1:1–PC–Link–Verbindung: stellt den Schnittstellenbereich auf 1:1–PC–Linkein.
0: LR 00 bis LR 15Ungleich 0: deaktivieren
Bei Einsatz einer 1:n–NT–Link–Verbindung: spezifiziert die höchste Bedien–Terminal–Teil-nehmernummer.
1 bis 7
12 bis 15 Kommunikationsmodus0: Host–Link; 1: Ohne Protokoll (RS–232C); 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1 –NT–Link; 5: 1:n–NT–Link
(Alle anderen Einstellungen spezifizieren den Host–Link–Modus, verursachen einen gering-fügigen Fehler und aktivieren AR 1302.)
0
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
250
Wort Ein–stellung
FunktionBit
DM 6646 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2
Host–Parameter
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
Host–Parameter
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001 gleich10 ms
Host–Parameter
DM 6648 00 bis 07 Teilnehmernummer (Host–Link, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 0 gesetztwerden.)00 bis 31 (BCD)
00 bis 31
08 bis 11 Startcode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 1gesetzt werden).0: deaktiviert; 1: Einstellung aktiviert
BeliebigeEinstellung
12 bis 15 Endecode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 1gesetzt werden).0: deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung aktiviert (spezifizierter Endecode)2: CR, LF
BeliebigeEinstellung
DM 6649 00 bis 07 Startcode (aktive Schnittstelle)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
BeliebigeEinstellung
08 bis 15 Endecode aktiviert (aktive Schnittstelle)
00 bis FF (BIN)
BeliebigeEinstellung
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich diefolgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beispielprogramm Dieses Beispiel zeigt ein BASIC–Programm, das den Zustand derSRM1(-V2)–Eingänge in IR 000 liest. Sehen Sie für weitere Einzelheiten Ab-schnitt 4-5 Host–Schnittstellenbefehle.
Eine FCS–Prüfung (Rahmen–Überprüfungsfolge) der empfangenen Antwort-daten wird in diesem Programm nicht durchgeführt. Vergewissern Sie sich vorder Ausführung des Programms, dass die RS–232C–Schnittstelle des Host–Computers richtig konfiguriert ist.
1000 ’ ––––––––––––––
1010 ’SRM1 Beispielprogramm in BASIC
1020 ’
1050 ’ –––––––––––––
1060 ’ Eingest. RS-232C–Werte Baudrate: 9,6Kb/Sek,PARITÄT:GERADE,DATEN:7,STOP:2
1070 OPEN ”COM:E73” AS #1
1080 *REPEAT
1090 ’ Einlesen der Übertragungsdaten –––––––––––––
1100 INPUT ”send data:”,SEND$
1110 ’ FCS–Berechnung –––––––––––––
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
251
1120 FCS=0
1130 FOR IFCS=1 TO LEN(SEND$)
1140 FCS=FCS XOR ASC(MID$(SEND$;IFCS,1)
1150 NEXT
1160 FCS$=RIGHT$(”0”+HEX$(FCS),2)
1170 ’ Ausführung der Kommunikation ––––––––––––
1180 ZZZ$=SEND$+FCS$+”*”+CHR$(13)
1190 PRINT #1,ZZZ$;
1200 ’ Antworttest ––––––
1210 RECCNT=0:TMP$=””
1220 *DRECLOOP
1230 IF LOC(1)<>0 THEN *DREC1
1240 RECCNT=RECCNT+1
1250 IF RECCNT=5000 THEN *DRECERR ELSE *DRECLOOP
1260 *DREC1
1270 TMP$=TMP$+INPUT$(LOC(1),#1)
1280 IF RIGHT$(TMP$,1)=CHR$(13) THEN *DRECEND ELSE RECCNT=0:GOTO *DRECLOOP
1290 *DRECERR
1300 TMP$=”No response!!”+CHR$(13)
1310 *DRECEND
1320 RECV$=TMP$
1330 PRINT ”Empfangene Daten:”;RECV$
1340 ’ gehe zum Einlesen der Übertragungsdaten ––––––––––––
1350 GOTO *REPEAT
1360 ’ Bearbeitung abgeschlossen ––––––––––––
1370 CLOSE #1
1380 END
4-4-2 Ohne Protokoll–KommunikationsmodusDieser Abschnitt beschreibt die Ohne Protokoll(RS–232C)–Kommunikation.Diese Kommunikation ermöglicht den Datenaustausch mit Standard–RS–232C–Geräten wie Druckern und Barcode–Lesern. Daten können von ei-nem Drucker gedruckt oder von einem Barcodeleser gelesen werden. Bei derOhne Protokoll–Kommunikation wird kein Handshaking unterstützt.
KommunikationsverfahrenÜbertragungen
1, 2, 3... 1. Überprüfen Sie, ob AR 0805 (der Sendebereit–Merker der RS–232C–Schnittstelle) gesetzt ist.
2. Verwenden Sie zur Datenübertragung den TXD(48)-Befehl.
(@)TXD
S
C
N
S: Anfangs–Wort–Nr. der zu übertragenden Daten
C: Steuerdaten
N: Anzahl der zu übertragenden Datenbytes (4–stellige BCD– Zahl), 0000 bis 0256
Von der Ausführung dieses Befehls bis zum Ende der Datenübertragung ist AR0805 (oder AR 0813 für die Peripherieschnittstelle) auf AUS gesetzt. Nach Ab-schluss der Datenübertragung wird er wieder auf EIN gesetzt.
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
252
Bei der Spezifikation der Anzahl der zu übertragenden Bytes werden die Start–und Endecodes nicht berücksichtigt. Bei der größten Übertragung mit oder ohneStart– und Endecodes in 256 Bytes liegt N, abhängig von den Start– und Ende-codes, zwischen 254 und 256. Wird die Anzahl der zu sendenden Bytes auf0000 gesetzt, werden nur die Start– und Endecodes gesendet.
Startcode Daten Endecode
max. 256 Zeichen
Um die RS–232C–Schnittstelle zurückzusetzen (d.h., um den anfänglichen Sta-tus wiederherzustellen), setzen Sie SR 25209 auf EIN. Setzen Sie SR 25208 aufEIN, um die Peripherieschnittstelle zurückzusetzen. Nach der Rücksetzungwerden diese Bits automatisch wieder auf AUS gesetzt.
Datenempfang
1, 2, 3... 1. Stellen Sie sicher, dass AR 0806 (RS–232C–Empfang beendet–Merker)oder AR 0814 (Peripherieschnittstellen–Empfang beendet–Merker) aufEIN gesetzt ist.
2. Verwenden Sie den RXD(47)–Befehl für den Datenempfang.
(@)RXD(47)
S
C
N
S: Erste zu speichernde Wort–Nr. der Empfangsdaten
C: SteuerdatenBits 00 bis 03
0: Äußerst linke Bytes zuerst1: Äußerst rechte Bytes zuerst
Bits 12 bis 150: RS-232C-Schnittstelle1: Peripherieschnittstelle
N: Anzahl der gespeicherten Bytes (4–stelliger BCD–Wert), 0000 bis 0256
3. Die Leseergebnisse der empfangenen Daten werden im AR–Bereich ge-speichert. Überprüfen Sie, ob der Vorgang erfolgreich beendet wurde. JedeAusführung des RXD(47)–Befehls setzt den Inhalt dieser Bits zurück.
RS–232C–Schnittstelle
Peripherie-schnittstelle
Fehler
AR 0800 bisAR 0803
AR 0808 bisAR 0811
RS–232C–Schnittstellen–Fehlercode (1–stelliger BCD–Wert) 0: Normaler Abschluss 1: Paritätsfehler2: Rahmenfehler 3: Überlauffehler
AR 0804 AR 0812 Kommunikationsfehler
AR 0807 AR 0815 Empfangs–Überlaufmerker (nach Beendigung des Emp-fangs wurden die nachfolgenden Daten empfangen, bevordie Daten durch den RXD(47)–Befehl gelesen wurden).
AR 09 AR 10 Anzahl der empfangenen Zeichen
Um die RS-232C-Schnittstelle zurückzusetzen (d.h. den ursprünglichen Zu-stand wiederherzustellen), setzen Sie SR 25209 auf EIN. Setzen Sie, um diePeripherieschnittstelle zurückzusetzen, SR 25208 auf EIN. Nach der Rückset-zung werden diese Bits automatisch wieder auf AUS gesetzt.
Der Start– und Endecode ist nicht in AR 09 oder AR 10 (Anzahl der empfange-nen Bytes) enthalten.
Die Daten besitzen folgendes Format: “31323132313231323132CR LF”
Wird die Peripherieschnittstelle als aktive Schnittstelle (ohne Protokoll) verwen-det, müssen die folgenden Einstellungen über ein Peripheriegerät in DM 6650 bis DM 6653 der SRM1(–V2) vorgenommen werden.
Einstellungen derPeripherieschnittstelle
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
253
Wort Bit Funktion Ein–stellung
Einstellungen der Peripheriegeräte–SchnittstelleDie folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6650 00 bis 03 Kommunikationsformat00: 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, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Applikations-abhängig
04 bis 07 Nicht verwendet. 0
08 bis 11 Nicht verwendet. 0
12 bis 15 Kommunikationsmodus0: Host–Link; 1: Ohne Protokoll
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (0)wird verwendet und AR 1302 wird auf EIN gesetzt).
1: Ohne Proto-koll
DM 6651 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2
Applikations-abhängig
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung (00)wird verwendet und AR 1302 wird auf EIN gesetzt).
Applikations-abhängig
DM 6652 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms.
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung(000) wird verwendet und AR 1302 wird auf EIN gesetzt).
Host–Parame-ter
DM 6653 00 bis 07 Teilnehmernummer (Host–Link)00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler, die Grundeinstellung(000) wird verwendet und AR 1302 wird auf EIN gesetzt).
00 bis 31
08 bis 11 Startcode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6650 auf1 gesetzt werden.)0: deaktiviert1: Einstellung aktiviert
Applikations-abhängig
12 bis 15 Endecode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6650 auf1 gesetzt werden.)0: deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung aktiviert (spezifizierter Endecode)2: CR, LF
Applikations-abhängig
DM 6654 00 bis 07 Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 11 von DM 6653 auf 1 eingestelltwerden)
Applikations-abhängig
08 bis 15 Bits 12 bis 15 des Datenmerkers DM 6653 auf 0 gesetzt:spezifiziert die Anzahl der zu empfangenden Bytes. (00: 256 Bytes; 01 bis FF: 1 bis 255Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt:Spezifiziert den Ende–Code (00 bis FF)
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich diefolgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-rück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
254
Teilnehmernummer: 00
Wird die RS–232C–Schnittstelle als aktive Schnittstelle (ohne Protokoll) ver-wendet, müssen die folgenden Einstellungen über ein Peripheriegerät in DM 6645 bis DM 6649 der SRM1(–V2) vorgenommen werden.
Wort Bit Funktion Ein–stellung
RS–232C SchnittstelleneinstellungenDie folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 00 bis 03 Kommunikationsformat00: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
Applikations-abhängig
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert; 1: Einstellung aktiviert
08 bis 11 Bei Einsatz einer 1:1–PC–Link–Verbindung: Stellt den Schnittstellenbereich auf 1:1–PC–Link ein.
0: LR 00 bis LR 15Ungleich 0: Deaktiviert
0
12 bis 15 Kommunikationsmodus0: Host–Link 1: Ohne Protokoll (RS–232C) 2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link5: 1:n–NT–Link
(Alle anderen Einstellungen spezifizieren den Host–Link–Modus, verursachen einen ge-ringfügigen Fehler und aktivieren AR 1302.)
1
DM 6646 00 bis 07 Baudrate00: 1,2K, 01: 2,4K, 02: 4,8K, 03: 9,6K, 04: 19,2
Applikations-abhängig
08 bis 15 RahmenformatStart Länge Stop Parität
00: 1 Bit 7 Bits 1 Bit Gerade01: 1 Bit 7 Bits 1 Bit Ungerade02: 1 Bit 7 Bits 1 Bit Kein03: 1 Bit 7 Bits 2 Bits Gerade04: 1 Bit 7 Bits 2 Bits Ungerade05: 1 Bit 7 Bits 2 Bits Kein06: 1 Bit 8 Bits 1 Bit Gerade07: 1 Bit 8 Bits 1 Bit Ungerade08: 1 Bit 8 Bits 1 Bit Kein09: 1 Bit 8 Bits 2 Bits Gerade10: 1 Bit 8 Bits 2 Bits Ungerade11: 1 Bit 8 Bits 2 Bits Kein
Applikations-abhängig
DM 6647 00 bis 15 Übertragungsverzögerung (Host–Link)0000 bis 9999 (BCD): Einstellung in Einheiten von 10 ms, z.B. Einstellung von 0001 gleich10 ms
Applikations-abhängig
DM 6648 00 bis 07 Teilnehmernummer (Host–Link, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 0 gesetztwerden.)00 bis 31 (BCD)
Applikations-abhängig
08 bis 11 Startcode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf 1gesetzt werden).0: deaktiviert; 1: Einstellung aktiviert
Applikations-abhängig
12 bis 15 Endecode (aktive Schnittstelle RS–232C, wirksam, wenn Bits 12 bis 15 von DM 6645 auf1 gesetzt werden).0: deaktiviert (Anzahl der empfangenen Bytes)1: Einstellung aktiviert (spezifizierter Endecode)2: CR, LF
DM 6649 00 bis 07 Startcode (aktive Schnittstelle)00: 256 Bytes01 bis FF: 1 bis 255 Bytes
08 bis 15 Endecode aktiviert (aktive Schnittstelle)
00 bis FF (BIN)
Hinweis Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergeben sich diefolgenden Kommunikationsparameter. Setzen Sie in diesem Fall den Wert zu-rück, damit dieser innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
RS–232C–Schnittstellen–einstellungen
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
255
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Wird die Ohne Protokoll–Kommunikation verwendet, werden Daten mit demTXD(48)–Befehl gesendet und mit dem RXD(47)–Befehl empfangen. Die maxi-male Datenanzahl einschließlich des Start–/Endecodes beträgt hierbei 256 By-tes.
Ohne Start– und Endecode:
Daten (max. 256 Zeichen)
Nur Startcode:
ST Daten (max. 256 Zeichen)
Nur Endecode:
EDDaten (max. 256 Zeichen)
Sowohl Start– als auch Endecode:
ST Daten (max. 256 Zeichen) ED
Endecode bestehend aus CR, LF:
LFDaten (max. 256 Zeichen) CR
Startcode 00–FF/Endecode CR, LF:
LFDaten (max. 256 Zeichen) CRST
Hinweis 1. Die Start– und Endecodes werden in DM 6648 bis DM 6649 und DM 6653bis DM 6654 der SPS–Konfiguration spezifiziert.
2. Sind mehrere Start– und Endecodes vorhanden, ist jeweils der erste Teilwirksam.
3. Verwenden Sie CR oder LF als Endecode, wenn der Endecode in den Über-tragungsdaten enthalten ist und die Übertragung hierdurch teilweise ab-bricht.
4. Die Start– und Endecodes werden nicht gespeichert.
Werden Daten von der SRM1(–V2) gesendet, muss für die Ausführung desTXD(48)–Befehls der Sendebereit–Merker auf den EIN–Zustand getestet wer-den. Während der Datenübertragung wird der Sendebereit–Merker auf AUSund nach Beendigung der Übertragung wieder auf EIN gesetzt.
Nachdem die SRM1(–V2) die Daten empfangen hat, wird der Sendebereit–Mer-ker auf EIN gesetzt. Wird der RXD–Befehl ausgeführt, werden die empfange-nen Daten in die spezifizierten Worte geschrieben und der Empfang beendet–Merker wird auf AUS gesetzt.
Merker Peripherieschnittstelle RS–232C–Schnittstelle
Sendebereit–Merker AR 0813 AR 0805
Empfang beendet–Merker AR 0814 AR 0806
Übertragungsdaten–Konfiguration
Übertragungsmerker
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
256
Hinweis Der Zeitverlauf vom Start des Datenempfangs bis zur Beendigung ist nachfol-gend für die SRM1(–V2) dargestellt.
Empfangsstart :Ohne Startcode: Normaler EmpfangsstatusMit Startcode: Nach Empfang des Startcode.
Empfang beendet:Nachdem entweder der Endecode, die spezifizierte Anzahl von Zeichen oder256 Zeichen empfangen wurden.
Im folgenden Programmbeispiel wird die Ohne Protokoll–Kommunikation übereine RS–232C–Schnittstelle und unter Verwendung des TXD(48)– und RXD(47)–Befehls durchgeführt.
Ist AR 0805 (Sendebereit–Merker) auf EIN gesetzt, wenn 00100 auf EIN gesetztwird, werden Daten von DM 0100 bis DM 0104 übertragen, beginnend mit denhöheren zu den niedrigen Werten. Wird AR 0806 (Empfang beendet–Merker)auf EIN gesetzt, werden 256 Bytes empfangener Daten gelesen und von denhöheren zu den niedrigen Werten nach DM 0200 und folgende geschrieben.
Erstes Wort der gesendeten Daten
10 übertragene Zeichen
Über die RS–232C–Schnittstelle werdendie Daten gelesen und von den höherenbis zu den niedrigen Werten gespeichert
Ohne Protokoll–Kommunikation starten
00100
AR 0806
AR 0805
DIFU (13)
00101
TXD
DM 0100
00101
#0000
#0010
@RXD
DM 0200
#0000
#256
Erstes Wort zur Speicherung der Empfangsdaten
256 übertragene Zeichen
Über die RS–232C–Schnittstelle werdendie Daten gelesen von den höheren biszu den niedrigen Werten gespeichert
4-4-3 1:1–NT–Link–KommunikationsmodusWird 1:1–NT–Link verwendet, kann die SPS SRM1(–V2) mit einem NT–Termi-nal (NT–Link–Schnittstelle) verbunden werden. Die RS–232C–Schnittstellewird für den 1:1–NT–Link verwendet.
Programmierbares NT–Terminal
SRM1
1:1–NT–Link ist nur mit der SRM1–C02–V1/V2 möglich, die über eineRS–232C–Schnittstelle verfügt.
In der folgenden Tabelle sind die auf den 1:1–NT–Link–Kommunikationmodusbezogenen Einstellungen aufgeführt.
Programmbeispiel
SPS–Konfigurations–einstellung
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
257
Wort Bit Funktion Ein–stellung
DM 6645 00 bis 03 Kommunikationsformat 100: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
00 oder 01
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert1: Einstellung aktiviert
0 oder 1
08 bis 11 Für den 1:1–NT–Link–Kommunikationsmodus unbedeutend 0
12 bis 15 Kommunikationsmodus1
0: Host–Link 1: Ohne Protokoll (RS–232C)2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link 5: 1:n–NT–Link
4
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-wendet.
2. Sehen Sie für weitere Informationen über die 1:1–NT–Link–Einstellungeneiner anderen OMRON–SPS das entsprechende Programmierhandbuchdieser jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fallden Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
4-4-4 1:n–NT–Link–Kommunikationsmodus1:n–NT–Link ermöglicht die direkte, schnelle Kommunikation einer SRM1(–V2)SPS mit bis zu 8 OMRON NT–Terminals. 1:n–NT–Link wird mit der RS–232C–Schnittstelle verwendet.
Programmierbares NT–Terminal
SRM1
1:n–NT–Link ist nur mit SPS–Systemen der Serie SRM1–C02–V2 möglich, dieüber eine RS–232C–Schnittstelle verfügen.
Kabelanschlüsse Sehen Sie das SRM1 Master–Steuerungs–Bedienerhandbuch für Informatio-nen über Kabelanschlüsse für eine 1:n–NT–Link–Kommunikation.
In der folgenden Tabelle sind die auf den 1:n–NT–Link–Kommunikationmodusbezogenen Einstellungen aufgeführt.
SPS–Konfigurations–einstellung
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
258
Wort Bit Funktion Einstel-lung
DM 6645 00 bis 03 Kommunikationsformat 100: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen in DM 6646
00 oder 01
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert1: Einstellung aktiviert
0 oder 1
08 bis 11 Spezifiziert die höchste Bedien–Terminal–Teilnehmernummer.1 bis 7
1 bis 7
12 bis 15 Kommunikationsmodus1
0: Host–Link1: Ohne Protokoll (RS–232C) 2: 1:1–PC–Link (Slave)3: 1:1–PC–Link (Master)4: 1:1–NT–Link 5: 1:n–NT–Link
5
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-wendet.
2. Sehen Sie für weitere Informationen über die 1:n–NT–Link–Einstellungeneiner anderen OMRON–SPS das entsprechende Programmierhandbuchdieser jeweiligen SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fallden Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
4-4-5 1:1–PC–Link–KommunikationsmodusIn einem 1:1–PC–Link wird eine SPS der Serie SRM1 über ein Stan-dard–RS–232C–Kabel mit einer anderen SRM1, CPM1A, CPM2A, CPM2C,CQM1, C200HS oder C200HX/HG/HE verbunden. Eine der SPS–Systemedient als Master und ein anderes als Slave. Über 1:1–PC–Link können bis zu256 Bits (LR 0000 bis LR 1515) von zwei SPS–Systemen miteinander ausge-tauscht werden.
In der folgenden Abbildung ist eine 1:1–PC–Link–Verbindung zwischen zweiSRM1(–V2)–Systemen dargestellt.
SRM1SRM1
RS–232C–Schnittstelle RS–232C–Schnittstelle
1:1–SRM1(–V2)PC–Link–Verbindungen
4-4AbschnittSRM1(–V2)–Kommunikationsfunktionen
259
Die für den 1:1–PC–Link verwendeten Worte sind nachfolgend dargestellt.
LR 00
LR 07LR 08
LR 00
LR 07LR 08
LR 15
Master
Schreibbereich
Lesebereich
Slave
Schreibbereich
LesebereichDatenschreiben
Daten lesen
Daten lesen
DatenschreibenLR 15
Ein 1:1–PC–Link ist nur mit der SRM1–C02–V1/V2 SPS–möglich, die mit einerRS–232C–Schnittstelle ausgestattet ist.In der SRM1 können nur die16 LR–Worte von LR 00 bis LR 15 zur Kommunika-tion verwendet werden. Verwenden Sie also nur diese16 Worte in der CQM1oder C200HS, wenn Sie einen 1:1–PC–Link mit einer dieser SPS–Systeme rea-lisieren. Ein 1:1–Link–Verbund einer SRM1–SPS über LR 16 bis LR 63 in derCQM1 oder C200HS ist nicht möglich.
Kabelanschlüsse Sehen Sie das SRM1 Technische Handbuch für Informationen über Kabelan-schlüsse für die 1:1–PC–Link–Kommunikation.
Nehmen Sie die folgenden SPS–Konfigurationseinstellungen mit einem Pro-grammiergerät vor, wenn eine SRM1(–V2) in einem 1:1–PC–Link verwendetwird.
Wort Bit Funktion Einstel-lung
(Master)
Einstel-lung
(Slave)
DM 6645 00 bis 03 Kommunikationsformat100: Standard (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)01: Einstellungen im Datenwort DM 6651
00 oder01
00 oder01
04 bis 07 CTS–Handshake–Einstellungen0: Deaktiviert1: Einstellung aktiviert
0 0
08 bis 11 Stellt den Schnittstellenbereich auf 1:1–PC–Link ein0: LR 00 bis LR 15Ungleich 0: deaktiviert
0 0
12 bis 15 Kommunikationsmodus1
0: Host–Link 1: Ohne Protokoll (RS–232C)2: 1:1–PC–Link (Slave) 3: 1:1–PC–Link (Master) 4: 1:1–NT–Link 5: 1:n–NT–Link
3 2
Hinweis 1. Wird eine falsche Einstellung verwendet, tritt ein geringfügiger Fehler auf.AR 1302 wird auf EIN gesetzt und die Grundeinstellung (0 oder 00) wird ver-wendet.
2. Weitere Informationen über die 1:1–PC–Link–Kommunikation mit einer an-deren SPS finden Sie im jeweiligen Handbuch dieser entsprechenden SPS.
3. Wird ein außerhalb des Bereichs liegender Wert eingestellt, so ergebensich die folgenden Kommunikationsparameter. Setzen Sie in diesem Fallden Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
Kommunikationsmodus: Host-Link
Kommunikationsformat: Standardeinstellungen(1 Start–, 7 Daten–, 2 Stopbits, gerade Parität9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
Beschränkungen der1:1–PC–Link–Kommunikation mit einerSRM1(–V2)
SPS–Konfigurations–einstellung
4-5AbschnittHost–Link–Befehle
260
Beispielprogramm Dieses Beispiel zeigt ein Kontaktplanprogramm, in dem der Zustand von IR0000 in jeder SRM1 nach IR 200 in die jeweils andere SRM1 kopiert wird.
25313 (Immer EIN)
MOV (21)
000
LR00
MOV (21)
LR08
200
Programmierung im Master
MOV (21)
000
LR08
MOV (21)
LR00
200
25313 (Immer EIN)
Programmierung im Slave
LR 00
LR 07LR 08
LR 00
LR 07LR 08
LR 15
Schreibbereich
Lesebereich
Schrei-ben
Lesen
Lesebereich
Schreibbereich
LR 15Schrei-ben
LesenIR 000
IR 200 IR 000
IR 200
4-5 Host–Link–BefehleNachfolgend werden die für die Host–Link–Kommunikation (Host–PC zur SPS)notwendigen Befehle dargestellt.
4-5-1 IR/SR–Bereich lesen – RRDient zum Einlesen des Inhalts einer spezifizierten Anzahl von IR–/SR–Worten,beginnend mit einem spezifiziertem Wort.
Befehlsformat
@
FCS–Prüfzeichen
X 101X 100 x 103 x 102 : ↵R R X 101 X 100 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Anfangswort* Anzahl der Worte(0000 bis 0256)
Ende–zeichen
Hinweis *Anfangswort: 0000 bis 0049 und 0200 bis 0255 in CPM2A/CPM2C–SPS–Sy-stemen, 0000 bis 0019 und 0200 bis 0255 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen.(Eine Antwort von “0000” wird für nichtvorhandene IR– und SR–Worte zurück-gegeben.)
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R R
FCS–Prüfzeichen
X 101 X 100 x 161 x 160 : ↵x 163 x 162 x 161 x 160
Ende-code
Daten lesen (1 Wort)
Daten lesen (sooft wie Wortanzahl)
Ende–zeichen
Teilneh-mer–Nr.
Befehls–code
Hinweis 1. In CPM2A/CPM2C SPS–Systemen können nicht die Worte 0050 bis 0199spezifiziert werden und in CPM1/CPM1A/SRM1(–V2) SPS–Systemennicht die Worte 0020 bis 0199. Wird versucht, diese Worte zu lesen, erhal-ten Sie als Antwort 0000.
2. Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesenwerden.
Parameter Daten lesen (Antwort)Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei der
4-5AbschnittHost–Link–Befehle
261
Antwort als Hexadezimalwerte ausgegeben. Die empfangenen Worte werdenin gleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
4-5-2 LR–Bereich lesen – RLLiest den Inhalt einer spezifizierten Anzahl von LR–Worten, beginnend mit demspezifiziertem Wort.
Befehlsformat
@ R L
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Anfangswort1 Wortanzahl2 Ende–zeichen
Hinweis 1. Anfangswort: 0000 bis 0015
2. Wortanzahl: 0001 bis 0016
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R LX 101 X 100 x 161 x 160 : ↵x 163 x 162 x 161 x 160
FCS–Prüfzeichen
Teilneh-mer–Nr.
Befehls–code
Ende-code
Daten lesen (1 Wort)
Daten lesen (sooft wie Wortanzahl)
Ende–zeichen
Parameter Daten lesen (Antwort)Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei derAntwort als Hexadezimalwerte ausgegeben. Die empfangenen Worte werdenin gleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
4-5-3 HR–Bereich lesen – RHLiest den Inhalt einer spezifizierten Anzahl von HR–Worten, beginnend mit demspezifizierten Wort.
Befehlsformat
@ R H
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Anfangswort1 Wortanzahl2 Ende–zeichen
Hinweis 1. Anfangswort: 0000 bis 0019
2. Wortanzahl 0001 bis 0020
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R HX 101 X 100 x 161 x 160 : ↵x 163 x 162 x 161 x 160
FCS–Prüfzeichen
Daten lesen (1 Wort)Befehls–code
Teilneh-mer–Nr.
Ende-code
Ende–zeichen
Daten lesen (sooft wie Wortanzahl)
Parameter Daten lesen (Antwort)Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei derAntwort als Hexadezimalwerte ausgegeben. Die empfangenen Worte werdenin gleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
4-5-4 Istwert lesen – RCLiest den Inhalt einer spezifizierten Anzahl von Zähler–/Zeitgeber–Istwerten,beginnend mit dem spezifizierten Zähler/Zeitgeber.
4-5AbschnittHost–Link–Befehle
262
Befehlsformat
@ R C
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Anzahl derZähler/Zeitgeber 2
1. Zeitgeber/Zähler1Befehls–code
Teilneh-mer–Nr.
Ende–zeichen
Hinweis 1. Zeitgeber/Zähler: 0000 bis 0255 in CPM2A/CPM2C–SPS–Syste-men, 0000 bis 0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
2. Anzahl der Zeitgeber/Zähler: 0001 bis 0256 in CPM2A/CPM2C–SPS–Systemen, 0001 bis 0128 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R CX 101 X 100 x 161 x 160 : ↵x 103 x 102 X 101 X 100
FCS–Prüfzeichen
Ende–zeichen
Daten lesen (1 Wort)
Daten lesen (sooft wie Wortanzahl)
Ende-code
Befehls–code
Teilneh-mer–Nr.
Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesen wer-den.
Parameter Daten lesen (Antwort)Die Inhalte der Worte, die über den Befehl spezifiziert wurden, werden bei derAntwort als Hexadezimalwerte ausgegeben. Die empfangenen Istwerte werdenin gleicher Reihenfolge beginnend mit dem spezifiziertem Zeitgeber/Zähler aus-gegeben.
4-5-5 TC–Status lesen – RGLiest den Status der Fertigmerker einer spezifizierten Anzahl von Zeitgeber/Zählern, beginnend mit dem ersten spezifizierten Zeitgeber/Zähler.
Befehlsformat
@ R G
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Befehls–code
Teilneh-mer–Nr.
1. Zeitgeber/Zähler1 Anzahl derZähler/Zeitgeber 2
Ende–zeichen
Hinweis 1. Zeitgeber/Zähler: 0000 bis 0255 in CPM2A/CPM2C–SPS–Syste-men, 0000 bis 0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
2. Anzahl der Zeitgeber/Zähler: 0001 bis 0256 in CPM2A/CPM2C–SPS–Systemen, 0001 bis 0128 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R GX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Ende-code
Befehls–code
Teilneh-mer–Nr.
Ende–zeichenDaten lesen
(1 Zeitgeber/Zähler)
Daten lesen(Anzahl von Zeitgebern/Zählern)
EIN/AUS
Die Antwort wird beim Lesen von mehr als 123 Zeitgeber/Zähler aufgeteilt.
Parameter Daten lesen (Antwort)Der Status der Fertigmerker, die über diesen Befehl spezifiziert wurden, wird beider Antwort übertragen. “1” bedeutet, dass der Status der Fertigmerker auf EINgesetzt ist.
4-5AbschnittHost–Link–Befehle
263
4-5-6 DM–Bereich lesen – RDLiest den Inhalt einer spezifizierten Anzahl von DM–Worten, beginnend mit demspezifierten Wort.
Befehlsformat
@ R D
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
Anfangswort* Wortanzahl(0001 bis 6656)
Hinweis Anfangswort:DM 0000 bis DM 1023 und DM 6144 bis DM 6655 in CPM1/CPM1A–SPS–Sy-stemenDM 0000 bis DM 2047 und DM 6144 bis DM 6655 in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen (Eine Antwort von “0000” wird für nicht-vorhandene DM–Worte zurückgegeben.)
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R DX 101 X 100 x 161 x 160 : ↵x 163 x 162 x 161 x 160
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Daten lesen (1 Wort)
Daten lesen (sooft wie Wortanzahl)
Ende–zeichen
Hinweis 1. Die Worte DM 1024 bis DM 6143 in CPM1/CPM1A–SPS und DM 2048 bisDM 6143 in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen können nichtspezifiziert werden. Wird versucht, diese Worte zu lesen, wird 0000 als Ant-wort zurückgegeben.
2. Das Antwortformat wird unterteilt, wenn mehr als 30 Datenworte gelesenwerden.
Parameter Daten lesen (Antwort)Der Inhalt der Worte, die über den Befehl spezifiziert wurden, wird bei der Ant-wort als Hexadezimalwert ausgegeben. Die empfangenen Worte werden ingleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
Hinweis Achten Sie bei der Spezifikation des DM–Bereichs darauf, dass der DM–Be-reich bei den verschiedenen CPU–Modellen unterschiedlich ist.
4-5-7 AR–Bereich lesen – RJLiest den Inhalt einer spezifizierten Anzahl von AR–Worten, beginnend mit demspezifizierten Anfangswort.
Befehlsformat
@ R J
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Ende–zeichen
Anfangswort1Teilneh-mer–Nr.
Befehls–code
Wortanzahl2
Hinweis 1. Anfangswort: 0000 bis 0023 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0015 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
2. Wortanzahl 0001 bis 0024 in CPM2A/CPM2C–SPS–Systemen, 0001 bis0016 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
4-5AbschnittHost–Link–Befehle
264
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R J
FCS–Prüfzeichen
X 101 X 100 x 161 x 160 : ↵x 163 x 162 x 161 x 160
Teilneh-mer–Nr.
Ende-code
Befehls–code
Daten lesen (1 Wort)
Daten lesen(Anzahl der gelesenen Worte)
Ende–zeichen
Parameter Daten lesen (Antwort)Die Inhalte der Worte, die über den Befehl spezifiziert wurden, wird bei der Ant-wort als Hexadezimalwert ausgegeben. Die empfangenen Worte werden ingleicher Reihenfolge ausgegeben, beginnend mit dem Anfangswort.
4-5-8 IR/SR–Bereich schreiben – WRSchreiben von Daten in den IR– und SR–Bereich, beginnend mit dem spezifi-ziertem Wort. Das Schreiben erfolgt Wort für Wort.
Befehlsformat
@ W R
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 163 x 162 x 161 x 160
Teilneh-mer–Nr.
Befehls–code
Anfangswort* Daten speichern (1 Wort)
Daten speichern (Wortanzahl)
Ende–zeichen
Hinweis 1. Anfangswort: 0000 bis 0049 und 0200 bis 0252 in CPM2A/CPM2C–SPS–Systemen, 0000 bis 0019 und 0200 bis 0252 inCPM1/CPM1A/SRM1(–V2)–SPS–Systemen.
2. Sollen mehr als 30 Datenworte geschrieben werden, muss der Befehl unter-teilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W RX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende–code
Befehls–code
Ende–zeichen
Hinweis In CPM2A/CPM2C SPS–Systemen können nicht die Worte 0050 bis 0199 spe-zifiziert werden und in CPM1/CPM1A/SRM1(–V2) SPS–Systemen nicht dieWorte 0020 bis 0199. Wird versucht, in diese Worte zu schreiben, wird derSchreibvorgang nicht ausgeführt und eine normale Fertig–Meldung wird zu-rückgegeben.
Parameter Daten schreiben (Befehl)Spezifiziert die Anzahl der im IR– oder SR–Bereich zu speichernden Worte alsHexadezimalwert, beginnend mit dem spezifizierten Anfangswort.
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird einFehler generiert und der Schreibvorgang wird nicht ausgeführt. Wird, z. B. 252als Anfangswort zum Speichern zweier Worte spezifiziert, wird der Schreibvor-gang abgebrochen, da SR 253 hinter dem zur Verfügung stehenden beschreib-baren Speicherbereich liegt.
4-5AbschnittHost–Link–Befehle
265
4-5-9 LR–Bereich schreiben – WLSchreibt Daten in den LR–Bereich, beginnend mit dem spezifizierten Wort. DasSchreiben erfolgt Wort für Wort.
Befehlsformat
@ W L
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 163 x 162 x 161 x 160
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
Daten speichern (1 Wort)
(entspr. der Anzahl Worte) )
Anfangswort*
Hinweis Anfangswort: 0000 bis 0015
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W LX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Ende–zeichen
Parameter Daten schreiben (Befehl)Spezifiziert die Reihenfolge der Worte, die als Hexadezimalwerte in den LR–Be-reich geschrieben werden sollen, beginnend mit dem ersten spezifizierten An-fangswort.
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird einFehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. ein aus 5Worten bestehendes Datenpaket mit dem Anfangswort 12 in den LR–Bereichgeschrieben werden, belegt das letzte Wort 16.
4-5-10 HR–Bereich schreiben – WHSchreibt Daten in den HR–Bereich, beginnend mit dem spezifizierten Wort. DasSchreiben erfolgt Wort für Wort.
Befehlsformat
@ W H
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 163 x 162 x 161 x 160
Teilneh-mer–Nr.
Befehls–code
Anfangswort*
Daten schreiben (entspr. der Anzahl Worte)
Daten speichern (1 Wort) Ende–zeichen
Hinweis Anfangswort: 0000 bis 0019
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W HX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Endezei-chen
Parameter Daten schreiben (Befehl)Spezifiziert die Reihenfolge der Worte, die in den HR–Bereich als Hexadezimal-werte geschrieben werden sollen, beginnend mit dem ersten spezifizierten An-fangswort.
4-5AbschnittHost–Link–Befehle
266
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird einFehler generiert und der Schreibvorgang nicht ausgeführt. Soll bspw. ein aus 3Worten bestehendes Datenpaket mit dem Anfangswort 18 in den HR–Bereichgeschrieben werden, belegt das letzte Wort 20. Der Schreibvorgang wird abge-brochen, da für die Speicherung HR 20 jenseits des beschreibbaren Bereichsliegen würde.
4-5-11 Istwert schreiben – WCSchreibt den Istwert von Zeitgeber/Zählern, beginnend mit dem spezifiziertenZeitgeber/Zähler.
Befehlsformat
@ W C
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
1. Zeitgeber/Zähler* Daten schreiben (1 Zeigeber/Zähler)
Daten schreiben (entsp. der Anzahl Istwerte)
Hinweis 1. Zeitgeber/Zähler: 0000 bis 0255 in CPM2A/CPM2C–SPS–Syste-men, 0000 bis 0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
2. Sollen mehr als 30 Datenworte geschrieben werden, muss der Befehl unter-teilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W CX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Ende–zeichen
Parameter Daten schreiben (Befehl)Spezifiziert die zu schreibende Anzahl von Zeitgeber–/Zähler–Istwerten alsBCD–Wert, beginnend mit dem ersten Zeitgeber/Zähler.
Hinweis 1. Wird dieser Befehl zum Schreiben von Daten im Istwert–Bereich einge-setzt, werden die Fertigmerker der betroffenen Zeitgeber/Zähler auf AUSgesetzt.
2. Wird beim Schreiben der Daten der zulässige Bereich überschritten, wirdein Fehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. einaus 3 Worten bestehendes Datenpaket mit dem Anfangswort 126 in denTC–Bereich geschrieben werden, belegt das letzte Wort 128. Der Schreib-vorgang wird abgebrochen, da für die Speicherung TC 128 jenseits des be-schreibbaren Bereichs liegen würde.
4-5-12 TC–Status schreiben – WGSchreibt den Status der Fertigmerker der Zeitgeber und Zähler in den TC–Be-reich, beginnend mit dem spezifizierten Zeitgeber/Zähler (Nummer). DerSchreibvorgang erfolgt mit aufeinanderfolgenden TC–Nummern.
Befehlsformat
@ W G
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100
Teilneh-mer–Nr.
Befehls–code Daten schreiben
(1 Zeitgeber/Zähler)
Daten schreiben (entspr. der Wortanzahl)
1. Zeitgeber/Zähler* Ende–zeichen
EIN/AUS
4-5AbschnittHost–Link–Befehle
267
Hinweis 1. Zeitgeber/Zähler: 0000 bis 0255 in CPM2A/CPM2C–SPS–Syste-men, 0000 bis 0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
2. Soll der Status von mehr als 118 Zeitgeber/Zählern geschrieben werden,muss der Befehl unterteilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W GX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Ende–zeichen
Parameter Daten schreiben (Befehl)Spezifiziert den Status der Fertigmerker der zu schreibenden Zeitgeber/Zähler,mit der Reihenfolge (beginnend mit dem ersten Wort) als ON (d. h. ”1”) oder OFF(d. h. ”0”). Ist ein Fertigmerker auf EIN gesetzt, bedeutet dies, dass der Zeit–oder Zählvorgang abgeschlossen ist.
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird einFehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. ein aus 3Worten bestehendes Datenpaket mit dem Anfangswort 126 in den HR–Bereichgeschrieben werden, belegt das letzte Wort 128. Der Schreibvorgang wird ab-gebrochen, da für die Speicherung TC 128 jenseits des beschreibbaren Be-reichs liegen würde.
4-5-13 DM–Bereich schreiben – WDSchreibt Daten in den DM–Bereich, beginnend mit dem spezifizierten Wort. DasSchreiben erfolgt wortweise.
Befehlsformat
@ W D
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 163 x 162 x 161 x 160
Teilneh-mer–Nr.
Be-fehls–code
Anfangswort* Daten speichern (1 Wort)
Daten speichern (Wortanzahl)
Ende–zeichen
Hinweis 1. Anfangswort:DM 0000 bis DM 1023 und DM 6144 bis DM 6655 in CPM1/CPM1A–SPS–SystemenDM 0000 bis DM 2047 und DM 6144 bis DM 6655 in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen
2. Sollen mehr als 30 Datenworte geschrieben werden, muss der Befehl unter-teilt werden.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W DX 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
Ende-code
Hinweis Die Worte DM 1024 bis DM 6143 in CPM1/CPM1A– und DM 2048 bis DM 6143in CPM2A/CPM2C/SRM1(–V2)–SPS–Systemen können nicht spezifiziert wer-den. Wird versucht, in diese Worte zu schreiben, wird der Schreibvorgang fürdiese Worte nicht ausgeführt und der Befehl wird mit einer normalen Fertigmel-dung abgeschlossen.
Parameter Daten schreiben (Befehl)Spezifiziert die Anzahl der Worte, die im DM–Bereich als Hexadezimalwerte ge-speichert werden sollen, beginnend mit dem spezifizierten Anfangswort.
4-5AbschnittHost–Link–Befehle
268
Hinweis 1. Wird beim Schreiben der Daten der zulässige Bereich überschritten, wirdein Fehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. einaus 3 Worten bestehendes Datenpaket mit dem Anfangswort DM 1022 ineine CPM1 geschrieben werden, belegt das letzte Wort DM 1024. DerSchreibvorgang wird abgebrochen, da für die Speicherung DM 1024 jen-seits des beschreibbaren Bereichs liegen würde.
2. Achten Sie bei der Spezifikation des DM–Bereichs darauf, dass dieser beiden verschiedenen CPU–Modellen unterschiedlich ist.
4-5-14 AR–Bereich schreiben – WJSpeichert Daten beginnend mit dem ersten spezifizierten Wort im AR–Bereich.Das Schreiben erfolgt wortweise.
Befehlsformat
@ W J
FCS–Prüfzeichen
X 101 X 100 x 103 x 102 : ↵X 101 X 100 x 163 x 162 x 161 x 160
Daten speichern (entspr. der Wortanzahl)
Daten speichern (1 Wort)Anfangswort*Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
Hinweis Anfangswort: 0000 bis 0023 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0015 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W JX 101 X 100 x 161 x 160 :: ↵
FCS–Prüfzeichen
Teilneh-mer–Nr.
Ende-code
Befehls–code
Ende–zeichen
Parameter Daten schreiben (Befehl)Spezifiziert die Anzahl der zu schreibenden Worte, die im AR–Bereich als Hexa-dezimalwerte gespeichert werden sollen, beginnend mit dem spezifizierten An-fangswort.
Hinweis Wird beim Schreiben der Daten der zulässige Bereich überschritten, wird einFehler generiert und der Schreibvorgang nicht ausgeführt. Soll z. B. ein aus 5Worten bestehendes Datenpaket mit dem Anfangswort AR 12 in eineCPM1–SPS geschrieben werden, belegt das letzte Wort AR 16. Der Schreibvor-gang wird abgebrochen, da für die Speicherung AR 16 jenseits des beschreib-baren Bereichs liegen würde.
4-5-15 Sollwert lesen 1 – R#Sucht den ersten Eintrag eines Zeitgebers oder Zählerbefehls (TIM, TIMH (15),TIML(––), TMHH(––), CNT oder CNTR (12)) mit der spezifizierten TC–Nummerim Anwenderprogramm und liest den Sollwert, von dem angenommen wird,dass er als Konstante spezifiziert wurde. Dieser Sollwert wird dann als 4–stelli-ger BCD–Wert gelesen. Der Lesevorgang beginnt am Programmanfang. Daherkann es bis zu 10 Sekunden dauern, bis eine Antwortmeldung erfolgt.
Befehlsformat
@ R #
FCS–Prüfzeichen
X 101 X 100 OP1 OP2 : ↵OP3 OP4 x 103 x 102 X 101 X 100
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
Name TC–Nummer*
Hinweis TC–Nummer: 0000 bis 0255 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
4-5AbschnittHost–Link–Befehle
269
Antwortformat
@ R #X 101 X 100 x 161 x 160 : ↵
FCS–Prüfzeichen
x 103 x 102 X 101 X 100
Sollwert Ende–zeichen
Teilneh-mer–Nr.
Befehls–code
Ende-code
Parameter Name, TC–Nummer (Befehl)Spezifikation des Befehls zum Lesen des Sollwertes in ”Name”. Verwenden Siedazu 4 Zeichen. Spezifizieren Sie in ”TC–Nummer” die entsprechende Zeitge-ber/Zähler–Nummer.
Name Befehlsname
OP1 OP2 OP3 OP4e e s a e
T I M (Leerz.) Zeitgeber
T I M H Schneller Zeitgeber
T I M L Langer Zeitgeber
T M H H Sehr schneller Zeitgeber
C N T (Leerz.) Zähler
C N T R Aufwärts–/Abwärts–Zähler
Sollwert (Antwort)Die Antwort beinhaltet den Sollwert als Konstante.
Hinweis 1. Der Befehlsname muss aus vier Zeichen bestehen.
2. Wird der gleiche Befehl mehrmals innerhalb eines Programmes verwendet,wird nur der erste Befehl gelesen.
3. Benutzen Sie diesen Befehl nur dann, wenn ein Sollwert über eine Kon-stante eingestellt wurde.
4. Der Antwort–Endecode zeigt einen Fehler (16), wenn der Sollwert nicht alsKonstante spezifiziert wurde.
4-5-16 Sollwert lesen 2 – R$Liest die Sollwert–Konstante oder die Wortadresse des gespeicherten Sollwer-tes. Der Sollwert, der als 4–stelliger BCD–Wert gelesen wird, ist als zweiterOperand des TIM–, TIMH(15)–, CNT– oder CNTR(12)–Befehls an der spezifi-zierten Programmadresse im Anwenderprogramm gespeichert. Die Pro-grammgröße darf zur Ausführung dieses Befehles 10 K nicht überschreiten.
Befehlsformat
X 100 X 100@ R $X 100X 101 x 103 x 102 X 101 OP1 OP2 OP3 OP4 x 103 x 102 X 101 : ↵
Teilneh-mer–Nr.
Programm–adresse
Name TC–Nummer* Ende–zeichen
FCS–Prüfzeichen
Befehls–code
Hinweis TC–Nummer: 0000 bis 0255 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
x 160@ R $ OP1 OP2 OP3 OP4 X 100X 100X 101 x 161 x 103 x 102 X 101 ↵:
Teilneh-mer–Nr.
Befehls–code
Endecode Operand Sollwert Ende–zeichen
FCS–Prüfzeichen
4-5AbschnittHost–Link–Befehle
270
Parameter Name, TC–Nummer (Befehl)Spezifikation des Befehles zum Lesen des Sollwertes in ”Name”. VerwendenSie für diese Einstellung 4 Zeichen. Als TC–Nummer muss die für diesen Befehlzugewiesene Zeitgeber/Zähler–Nummer verwendet werden.
Name Befehlsname
OP1 OP2 OP3 OP4e e s a e
T I M (Leerz.) Zeitgeber
T I M H Schneller Zeitgeber
T I M L Langer Zeitgeber
T M H H Sehr schneller Zeitgeber
C N T (Leerz.) Zähler
C N T R Aufwärts–/Abwärts–Zähler
Operand, Sollwert (Antwort)Der Name, der die Sollwert–Klassifizierung anzeigt, wird an “Operand” zurück-gegeben und enthält entweder die Wortadresse, auf der der Sollwert gespei-chert ist oder die Konstante des Sollwertes wird an “SV” zurückgegeben.
Operand Klassifizierung Konstante oder Wortadresse
OP1 OP2 OP3 OP4 CPM2A/CPM2C CPM1
C I O (Leerz.) IR oder SR 0000 bis 00490200 bis 0255
0000 bis 00190200 bis 0255
L R (Leerz.) (Leerz.) LR 0000 bis 0015 0000 bis 0015
H R (Leerz.) (Leerz.) HR 0000 bis 0019 0000 bis 0019
A R (Leerz.) (Leerz.) AR 0000 bis 0023 0000 bis 0015
D M (Leerz.) (Leerz.) DM 0000 bis 6655 0000 bis 6655
D M : (Leerz.) DM (indirekt) 0000 bis 6655 0000 bis 6655
C O N (Leerz.) Konstante 0000 bis 9999 0000 bis 9999
Hinweis Spezifizieren Sie den Befehlsnamen in ”Name”. Verwenden Sie für diese Ein-stellung 4 Zeichen. Füllen Sie evtl. Lücken mit Leerzeichen, um den Befehl auf 4Zeichen zu vervollständigen.
4-5-17 Sollwert ändern 1 – W#Sucht das erste Vorkommen eines spezifizierten TIM–, TIMH(15)–, CNT– oderCNTR(12)–Befehls im Anwenderprogramm. Der Sollwert wird anschließendauf den im zweiten Wort des Befehls definierten Wert geändert. Der Suchvor-gang beginnt am Programmanfang. Daher kann es unter Umständen bis zu 10Sekunden dauern, bis eine Antwortmeldung erfolgt.
Befehlsformat
@ W # OP1 OP2 OP3 OP4X 100X 101 x 103 x 102 X 100X 101 ↵:x 103 x 102 X 100X 101
Teilneh-mer–Nr.
Befehls–code
Name TC–Nummer* Sollwert SV (0000 bis 9999)
Ende–zeichen
FCS–-Prüfzeichen
Hinweis TC–Nummer: 0000 bis 0255 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W # x 160X 100X 101 x 161 ↵:
Teilneh-mer–Nr.
Befehls–code
Endecode Ende–zeichen
FCS–Prüfzeichen
Parameter Name, TC–Nummer (Befehl)Spezifizieren Sie den Namen des Befehls in ”Name”. Verwenden Sie für diese
4-5AbschnittHost–Link–Befehle
271
Einstellung 4 Zeichen. Verwenden Sie als TC–Nummer die entsprechende Zeit-geber/Zähler–Nummer.
Befehlsname Klassifizierung
OP1 OP2 OP3 OP4ass e u g
T I M (Leerz.) Zeitgeber
T I M H Schneller Zeitgeber
T I M L Langer Zeitgeber
T M H H Sehr schneller Zeitgeber
C N T (Leerz.) Zähler
C N T R Aufwärts–/Abwärts–Zähler
4-5-18 Sollwert ändern 2 – W$Ändert den Inhalt des zweiten Wortes einer spezifizierten TIM–, TIMH(15)–,CNT– oder CNTR(12)–Adresse im Anwenderprogramm. Die Programmgrößedarf zur Ausführung dieses Befehles 10 K nicht überschreiten.
Befehlsformat
OP4OP3OP2OP1@ W $ X 100X 100X 101 x 103 x 102 X 101 X 100x 103 x 102 X 101
OP4OP3OP2OP1 X 100x 103 x 102 X 101 : ↵
Teilneh-mer–Nr.
Programm–adresse
Name TC–NummerBefehls–code
Operand Sollwert Ende–zeichen
FCS–Prüfzeichen
Hinweis TC–Nummer: 0000 bis 0255 in CPM2A/CPM2C–SPS–Systemen, 0000 bis0127 in CPM1/CPM1A/SRM1(–V2)–SPS–Systemen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W $ x 160X 100X 101 x 161 : ↵
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
Parameter Name, TC–Nummer (Befehl)Spezifikation des Befehls zum Lesen des Sollwertes in ”Name”. Verwenden Siefür diese Einstellung 4 Zeichen. Als TC–Nummer muss die diesem Befehl zuge-wiesene Zeitgeber/Zähler–Nummer verwendet werden.
Befehlsname Klassifizierung
OP1 OP2 OP3 OP4ass e u g
T I M (Leerz.) Zeitgeber
T I M H Schneller Zeitgeber
T I M L Langer Zeitgeber
T M H H Sehr schneller Zeitgeber
C N T (Leerz.) Zähler
C N T R Aufwärts–/Abwärts–Zähler
4-5AbschnittHost–Link–Befehle
272
Operand, Sollwert (Antwort)Definition der Sollwert–Klassifizierung unter “Operand”. Verwenden Sie fürdiese Einstellung 4 Zeichen. Spezifizieren Sie unter SV entweder die Wort–adresse, unter der der Sollwert gespeichert ist oder die Sollwert–Konstante.
Operand Klassifizierung Konstante oder Wortadresse
OP1 OP2 OP3 OP4 CPM2A/CPM2C CPM1/CPM1A/SRM1(–V2)
C I O (Leerz.) IR oder SR 0000 bis 00490200 bis 0252
0000 bis 00190200 bis 0252
L R (Leerz.) (Leerz.) LR 0000 bis 0015 0000 bis 0015
H R (Leerz.) (Leerz.) HR 0000 bis 0019 0000 bis 0019
A R (Leerz.) (Leerz.) AR 0000 bis 0023 0000 bis 0015
D M (Leerz.) (Leerz.) DM 0000 bis 20476144 bis 6655
0000 bis 1023*6144 bis 6655
D M : (Leerz.) DM (indirekt) 0000 bis 20476144 bis 6655
0000 bis 1023*6144 bis 6655
C O N (Leerz.) Konstante 0000 bis 9999 0000 bis 9999
Hinweis *Bei der SRM1(–V2) umfasst der DM–Bereich 0000 bis 2047.
4-5-19 Status lesen – MSLiest den SPS–Betriebszustand.
Befehlsformat
@ M SX 100X 101 : ↵
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ M S x 162X 100X 101 x 161 x 160 x 163 x 160x 161 : ↵
Teilneh-mer–Nr.
Befehls–code
StatusdatenEndecode Ende–zeichen
FCS–Prüfzeichen
Meldung
16 Zeichen
4-5AbschnittHost–Link–Befehle
273
Parameter Statusdaten, Meldung (Antwort)Die Statusdaten bestehen aus einem 4–stelligen Hexedezimalwert (2 Bytes).Über das höherwertige Byte wird die CPU–Betriebsart und über das niederwer-tige Byte die Größe des Programmspeichers angezeigt.
15 14 13 12 11 10 9 8
0 0 0 0
9 8
0 0
1 0
1 1
x 163 x 162
Dieser Bereich un-terscheidet sich vondem Bereich des Be-fehls “Status spei-chern –– SC”
Bit
Bit
1: FALS generiert
1: schwerwiegender Fehler
Betriebsart
PROGRAM
RUN
MONITOR
7 6 5 4 3 2 1 0
1 0 0 0
x 161 x 160
6 5
0 0
0 0
4
0
1
Bit
Bit
Kein
Schreibgeschützter Programmbereich0: Schreibschutz aktiviert1: Nicht schreibgeschütztProgramm–
bereich
4 kB
0 1 0 8 kB
Der “Meldung”–Parameter ist eine max. 16 Zeichen–umfassende Meldung, dievorhanden ist, nachdem MSG(47) ausgeführt wurde. Dieser Parameter entfällt,wenn keine Fehlermeldung vorhanden ist.
4-5-20 Status schreiben – SCÄndert die SPS–Betriebsart.
Befehlsformat
@ S CX 100X 101 x 161 x 160 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Betriebsart–Daten
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ S CX 100X 101 x 161 x 160 : ↵
Ende–zeichen
FCS–Prüfzeichen
Teilneh-mer–Nr.
Befehls–code
Endecode
Parameter Betriebsartdaten (Befehl)Die Betriebsartdaten bestehen aus einem 2–stelligen Hexadezimalwert (1
4-5AbschnittHost–Link–Befehle
274
Byte). Mit den rechten Stellen wird die Betriebsart festgelegt. Setzen Sie alleverbleibenden Stellen auf “00”.
RUN
7 6 5 4 3 2 1 0
0 0 0 0 0 0
1 0
0 0
1 0
1 1
x 161
PROGRAM
MONITOR
Bit
Bit Betriebsart
Dieser Bereich unter-scheidet sich von demBereich des Befehls“Status lesen –– MS”
x 160
4-5-21 Fehler lesen – MFLiest und löscht Fehler in der SPS. Überprüft darüber hinaus, ob früher festge-stellte Fehler bereits gelöscht wurden.
Befehlsformat
@ M FX 100X 101 X 101 X 100 : ↵
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Fehlerlöschen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ M FX 100X 101 x 161 x 160 x 163 x 162 x 161 x 160 x 163 x 162 x 161 x 160 ↵:
Teilneh-mer–Nr.
Befehls–code
Endecode Fehlerinformation(1. Wort)
Ende–zeichen
FCS–Prüfzeichen
Fehlerinformation(2. Wort)
Parameter Fehler löschen (Befehl)Spezifizieren Sie 01 zum Löschen der Fehler und 00 (in BCD), um keine Fehlerzu löschen. Schwerwiegende Fehler können nur dann gelöscht werden, wennsich die SPS in der PROGRAM–Betriebsart befindet.
Fehlerinformationen (Antwort)Die Fehlerinformation besteht aus zwei Worten.
4-5AbschnittHost–Link–Befehle
275
CPM1/CPM1A/CPM2A–CPM2C–SPS–Systeme
15 14 13 12 11 10 9 8
0 0 0 0 0 0
x 163 x 162
7 6 5 4
x 161
3 2 1 0
x 160
FAL, FALS –Nr. (00 bis FF)
EIN: Zykluszeit überschritten (Fehlercode F8)
EIN: E/A–Baugruppenadressierung überschritten (Fehlercode E1)
15 14 13 12 11 10 9 8
0 0 0 0 0 0 0 0 0 0
x 163 x 162
7 6 5 4
x 161
3 2 1 0
x 160
EIN: Batteriealarm (F7)
EIN: Systemfehler (FAL)
EIN: Speicherfehler (Fehlercode F1)
EIN: E/A–Busfehler (Fehlercode C0)
EIN: Kein–Endebefehl–Fehler (FALS)
EIN: Systemfehler (FAL)
Bit
Bit
1. Wort
2. Wort
SRM1(–V2)–SPS–Systeme
15 14 13 12 11 10 9 8
0 0 0 0 0 0 0
x 163 x 162
7 6 5 4
x 161
3 2 1 0
x 160
FAL, FALS Nr. (00 bis 99)
EIN: Zykluszeit überschritten (Fehlercode F8)
15 14 13 12 11 10 9 8
0 0 0 0 0 0 0 0 0 0 0 0
x 163 x 162
7 6 5 4
x 161
3 2 1 0
x 160
EIN: Systemfehler (FAL)
EIN: Speicherfehler (Fehlercode F1)
EIN: Kein–Endebefehl–Fehler (FALS)
EIN: Systemfehler (FAL)
Bit
Bit
1. Wort
2. Wort
4-5-22 Zwangsweises setzen – KSSetzt ein Bit im IR–, SR–, LR–, HR–, AR– oder TC–Bereich zwangsweise. DieMerker können nur einzeln zwangsweise gesetzt werden.
Wurde ein Bit zwangsweise gesetzt oder zurückgesetzt, bleibt der Status so-lange erhalten, bis ein Aufhebebefehl (KC) für den Befehl “Zwangsweise set-zen/rücksetzen” oder der nächste Befehl “Zwangsweise setzen/rücksetzen”übertragen wird.
4-5AbschnittHost–Link–Befehle
276
Befehlsformat
@ K SX 100X 101 x 103 x 102 X 101 X 100 X 101 X 100 ↵:OP1 OP2 OP3 OP4
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Name Wortadresse Bit
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ K SX 100X 101 x 161 x 160 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
Parameter Name, Wortadresse, Bit (Befehl)Spezifizieren Sie unter “Name” den zwangsweise zu setzenden Bereich (IR,SR, LR, HR, AR oder TC). Verwenden Sie für diese Einstellung 4 Zeichen. ÜberWortadresse wird die Adresse des Wortes und unter Bit die Bitadresse deszwangsweise zu setzenden Bits spezifiziert.
Name Klassifizierung Wortadressen–Bereich für Einstellung
Bit
OP1 OP2 OP3 OP4 CPM2A/CPM2C CPM1/CPM1A/SRM1(–V2)
C I O (Leerz.) IR oder SR 0000 bis 00490200 bis 0252
0000 bis 00190200 bis 0252
00 bis 15(dezimal)
L R (Leerz.) (Leerz.) LR 0000 bis 0015 0000 bis 0015
( )
H R (Leerz.) (Leerz.) HR 0000 bis 0019 0000 bis 0019
A R (Leerz.) (Leerz.) AR 0000 bis 0023 0000 bis 0015
T I M (Leerz.) Fertigmerker (Zeitgeber) 0000 bis 0255 0000 bis 0127 Immer00T I M H Fertigmerker (Schneller Zeitgeber)
0000 b s 0 55 0000 b s 0 e00
T I M L Fertigmerker (langer Zeitgeber)
T M H H Fertigmerker (sehr schneller Zeitgeber)
C N T (Leerz.) Fertigmerker (Zähler)
C N T R Fertigmerker (Aufwärts–/Abwärtszähler)
Hinweis Für die Eingabe unter “Name” müssen vier Zeichen verwendet werden. Sind nurzwei Zeichen vorgesehen, müssen die restlichen Zeichen durch Leerzeichen(Leerz.) ergänzt werden.
4-5-23 Zwangsweises rücksetzen – KRHierdurch wird ein Bit im IR–, SR–, LR–, HR–, AR– oder TC–Bereich zwangs-weise rückgesetzt. Die Merker können nur einzeln zwangsweise gesetzt wer-den.
Wurde ein Bit zwangsweise gesetzt oder zurückgesetzt, bleibt der Status so-lange erhalten, bis ein Aufhebebefehl (KC) für den Befehl “Zwangsweise set-zen/rücksetzen” oder der nächste Befehl “Zwangsweise setzen/rücksetzen”übertragen wird.
Befehlsformat
@ K RX 100X 101 x 103 x 102 X 101 X 100 X 101 X 100 ↵:OP1 OP2 OP3 OP4
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Name Worta-dresse
Bit
4-5AbschnittHost–Link–Befehle
277
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ K RX 100X 101 x 161 x 160 CR:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
Parameter Name, Wortadresse, Bit (Befehl)Spezifizieren Sie unter “Name” den zwangsweise rückzusetzenden Bereich (IR,SR, LR, HR, AR oder TC). Verwenden Sie für diese Einstellung 4 Zeichen. ÜberWortadresse wird die Adresse des Wortes und unter Bit die Bitadresse deszwangsweise rückzusetzenden Bits spezifiziert.
Name Klassifizierung Wortadressen–Bereich für Einstellung
Bit
OP1 OP2 OP3 OP4 CPM2A/CPM2C
CPM1/CPM1A/SRM1(–V2)
C I O (Leerz.) IR oder SR 0000 bis 00490200 bis 0252
0000 bis 00190200 bis 0252
00 bis 15(dezimal)
L R (Leerz.) (Leerz.) LR 0000 bis 0015 0000 bis 0015
( )
H R (Leerz.) (Leerz.) HR 0000 bis 0019 0000 bis 0019
A R (Leerz.) (Leerz.) AR 0000 bis 0023 0000 bis 0015
T I M (Leerz.) Fertigmerker (Zeitgeber) 0000 bis 0255 0000 bis 0127 Immer 00
T I M H Fertigmerker (Schneller Zeitgeber)
0000 b s 0 55 0000 b s 0 e 00
T I M L Fertigmerker (langer Zeitgeber)
T M H H Fertigmerker (sehr schneller Zeitgeber)
C N T (Leerz.) Fertigmerker (Zähler)
C N T R Fertigmerker (Aufwärts–/Abwärtszähler)
Hinweis Für die Eingabe unter “Name” müssen vier Zeichen verwendet werden. Sind nurzwei Zeichen vorgesehen, müssen die restlichen Zeichen durch Leerzeichen(Leerz.) ergänzt werden.
4-5-24 Mehrfaches zwangsweises setzen/rücksetzen – FKMit diesem Befehl werden Merker in den IR–, SR–, LR–, HR–, AR– oder TC–Be-reichen zwangsweise gesetzt oder rückgesetzt.
Befehlsformat
:
@ F KX 100X 101 x 103 x 102 X 101 X 100OP1 OP2 OP3 OP4
↵
15 14 13 12 11 10 1 0
Teilneh-mer–Nr.
Be-fehls–code
Name Wortadresse
Zwangsw. setzen/rücksetzen
Bit
x 160 x 160 x 160x 160 x 160 x 160 x 160x 160
Ende–zeichen
FCS–Prüfzeichen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ F KX 100X 101 x 161 x 160 ↵:
Teilneh-mer–Nr.
Be-fehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
4-5AbschnittHost–Link–Befehle
278
Parameter Name, Wortadresse, Bit (Befehl)Spezifizieren Sie unter “Name” den zwangsweise zu setzenden/rückzusetzen-den Bereich (IR, SR, LR, HR, AR oder TC). Verwenden Sie für diese Einstellung4 Zeichen. Über die Wortadresse wird die Adresse des Wortes und unter Bit dieBitadresse des zwangsweise zu setzenden/rückzusetzenden Bits spezifiziert.
Name Klassifizierung Wortadressen–Bereich für Einstellung
OP1 OP2 OP3 OP4 CPM2A/CPM2C CPM1/CPM1A/SRM1(–V2)
C I O (Leerz.) IR oder SR 0000 bis 00490200 bis 0252
0000 bis 00190200 bis 0252
L R (Leerz.) (Leerz.) LR 0000 bis 0015 0000 bis 0015
H R (Leerz.) (Leerz.) HR 0000 bis 0019 0000 bis 0019
A R (Leerz.) (Leerz.) AR 0000 bis 0023 0000 bis 0015
T I M (Leerz.) Fertigmerker (Zeitgeber) 0000 bis 0255 0000 bis 0127
T I M H Fertigmerker (Schneller Zeitgeber) 0000 bis 0255 0000 bis 0127
T I M L Fertigmerker (langer Zeitgeber) 0000 bis 0255 0000 bis 0127
T M H H Fertigmerker (sehr schneller Zeitgeber) 0000 bis 0255 0000 bis 0127
C N T (Leerz.) Fertigmerker (Zähler)
0000 b s 0 55 0000 b s 0
C N T R Fertigmerker (Aufwärts–/Abwärtszähler)
Zwangsweises setzen/rücksetzen/Daten aufheben (Befehl)Wird ein Zeitgeber– oder Zähler fertig–Merker spezifiziert, ist nur Bit 15 wirksamund alle anderen Bits werden ignoriert. Für Zeitgeber und Zähler ist nur das“zwangsweise Setzen/Rücksetzen” möglich.
Wurde eine Wortadresse spezifiziert, spezifiziert der Inhalt des Wortes die ver-arbeitung jedes Bits, wie es in der folgenden Abbildung gezeigt wird.
Hexadezimal–Einstellung
Funktion
0000 Keine Funktion (Bitstatus wird nicht geändert)
0002 Rücksetzung
0003 Einstellung
0004 Zwangsweises rücksetzen
0005 Zwangsweises setzen
0008 “Zwangsweises setzen/rücksetzen” aufheben
Die Bits, die lediglich gesetzt oder rückgesetzt werden, ändern ihren Status beider nächsten Programmausführung. Die zwangsweise gesetzten/rückgesetz-ten Bits jedoch behalten ihren Status solange, bis der Status aufgehoben wird.
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ F KX 100X 101 x 161 x 160 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
4-5-25 Zwangsweises Setzen/Rücksetzen aufheben – KCAufheben aller zwangsweise gesetzten/rückgesetzten Bits (einschließlich derBit–Einstellungen über die Befehle “Zwangsweises Setzen”, “ZwangsweisesRücksetzen” und “Mehrfaches zwangsweises Setzen/Rücksetzen”). Wurdenmehrere Bits gesetzt, wird der “Zwangssetzungsstatus” aller Bits aufgehoben.Es ist nicht möglich, den Status einzelner Bits über den Befehl KC aufzuheben.
4-5AbschnittHost–Link–Befehle
279
Befehlsformat
@ K CX 100X 101 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ K CX 100X 101 x 161 x 160 CR:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode
4-5-26 SPS–Typ lesen – MMMit diesem Befehl wird das SPS–Modell gelesen.
Befehlsformat
@ M MX 100X 101 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ M MX 100X 101 x 161 x 160 ↵:x 161 x 160
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Endecode SPS–Code
Parameter SPS–ModellcodesDer gelesene Code der eingesetzten SPS ist ein 2–stelliger Hexadezimalwert.
SPS– Code Modell
01 C250
02 C500
03 C120
0E C2000
10 C1000H
11 C2000H/CQM1/CPM2A/CPM2C/CPM1/CPM1A/SRM1(-V2)
12 C20H/C28H/C40H/C200H/C200HS
20 CV500
21 CV1000
22 CV2000
40 CVM1-CPU01-E
41 CVM1-CPU11-E
42 CVM1-CPU21-E
4-5-27 Test – TSMit diesem Befehl wird eine Anzahl von Zeichen (max. 122) vom Host–PC über-tragen.
Befehlsformat
@ T SX 100X 101 : ↵
Teilneh-mer–Nr.
Befehls–code
Zeichen
122 Zeichen max.
Ende–zeichen
FCS–Prüfzeichen
4-5AbschnittHost–Link–Befehle
280
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ T SX 100X 101 : ↵
Teilneh-mer–Nr.
Befehls–code
Zeichen
122 Zeichen max.
Ende–zeichen
FCS–Prüfzeichen
Parameter Zeichen (Befehl, Antwort)Für diesen Befehl können alle Zeichen außer dem ”Carriage Return”(CHR$(13)) eingesetzt werden. Ist der Test erfolgreich, enthält die Antwort alleZeichen unverändert.
4-5-28 Programm lesen – RPLiest den Inhalt eines Anwenderprogrammes aus dem SPS–Programmspei-cher in Maschinensprache (Objektcode). Der Inhalt wird als ein Block gelesen.
Befehlsformat
@ R PX 100X 101 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ R PX 100X 101 x 161 x 160 ↵:x 161 x 160
Teilneh-mer–Nr.
Befehls–code
Endecode 1 Byte
Programm (gesamter UM–Bereich)
Ende–zeichen
FCS–Prüfzeichen
Parameter Programm (Antwort)Das Programm des gesamten Programmbereichs wird ausgelesen.
Hinweis Verwenden Sie zur Unterbrechung dieser Befehlsausführung den Befehl ABORT (XZ).
4-5-29 Programm speichern – WPSpeichert ein über den Host–PC geschriebenes Programm im Anwenderspei-cher der SPS in Maschinensprache. Der Speichervorgang erfolgt in einemBlock.
Befehlsformat
@ W PX 100X 101 x 161 x 160 CR:
Teilneh-mer–Nr.
Befehls–code
1 Byte
Programm (bis zur Größe des UM–Bereichs)
Ende–zeichen
FCS–Prüfzei-
chen
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ W PX 100X 101 x 161 x 160 CR:
Teilneh-mer–Nr.
Befehls–code
Endecode Ende–zeichen
FCS–Prüfzeichen
Parameter Programm (Befehl)Die Programmdaten dürfen die Größe des zur Verfügung stehenden Speicher-Bereichs nicht überschreiten.
4-5AbschnittHost–Link–Befehle
281
4-5-30 Zusammengefaßte Lesedaten – QQRegistriert alle spezifizierten Bits, Worte und Zeitgeber/Zähler, die gelesen wer-den sollen. Der Lesevorgang erfolgt für alle Daten auf einmal.
(QQMR) Registrierung der zu lesenden InformationenRegistrierung der Informationen aller Bits, Worte und Zeitgeber/Zähler, die gele-sen werden sollen.
Befehlsformat
@ Q QX 100X 101 x 103 x 102 X 101 X 100OP1 OP2 OP3 OP4M OP1 OP2
x 103 x 102 X 101 X 100OP1 OP2 OP3 OP4 OP1 OP2 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzei-chen
Unter-Befehls–code
Lesebereich Adressenbereich lesen
Daten–format
Trenn–zeichen
Einzelinformation lesen
Gesamtinformation lesen (max. 128 Zeichen)
Einzelinformation lesen
Gesamtinformation lesen (max. 128 Zeichen)
Lesebereich Adressenbereich lesen
Daten–format
Trenn–zeichen
R ,
,
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ Q QX 100X 101 x 161 x 160M R ↵:
Teilneh-mer–Nr.
Befehls–code
Unter-Befehls–code
Endecode Ende–zeichen
FCS–Prüfzeichen
Parameter Bereich lesen (BefehlSpezifikation des zu lesenden Bereichs als 4–stelliger Code. Der Lesebereich(Speicherbereich) der SPS ist in der nachfolgenden Tabelle dargestellt.
4-5AbschnittHost–Link–Befehle
282
Wortadresse lesen, Datenformat (Befehl)In der folgenden Tabelle sind die zu lesenden Informationen nach Bereich undArt gruppiert. Der Lesebereich wird als 4–stelliger BCD–Wert und das Datenfor-mat als 2–stelliger BCD–Wert spezifiziert.
Bereichs–kl ifi i
Daten l
Bereich le- Wort lesen Datenformate e c sklassifizierung
a elesen
e e c esen CPM2A/
CPM2CCPM1/CPM1A/S
RM1(–V2)
a e o a
IR oder SR Bit C I O (S) 0000 bis 00490200 bi 0255
0000 bis 00190200 bi 0255
00 bis 15 (dezimal)ode S
Wort
C O (S) 0000 b s 00 90200 bis 0255
0000 b s 00 90200 bis 0255 “CH”
LR Bit L R (S) (S) 0000 bis 0015 0000 bis 0015 00 bis 15 (dezimal)
Wort
(S) (S) 0000 b s 00 5 0000 b s 00 5
“CH”
HR Bit H R (S) (S) 0000 bis 0019 0000 bis 0019 00 bis 15 (dezimal)
Wort
(S) (S) 0000 b s 00 9 0000 b s 00 9
“CH”
AR Bit A R (S) (S) 0000 bis 0023 0000 bis 0015 00 bis 15 (dezimal)
Wort
(S) (S) 0000 b s 00 3 0000 b s 00 5
“CH”
Zeitgeber Fertigmerker T I M (S) 0000 bis 0255 0000 bis 0127 2 Zeichen außer “CH”e gebe
Istwert
(S) 0000 b s 0 55 0000 b s 0
“CH”
Schneller Zeitgeber Fertigmerker T I M H 0000 bis 0255 0000 bis 0127 2 Zeichen außer “CH”Sc e e e gebe
Istwert
0000 b s 0 55 0000 b s 0
“CH”
LANGER ZEITGEBER Fertigmerker T I M L 0000 bis 0255 Nicht verwendet. 2 Zeichen außer “CH”G G
Istwert
0000 b s 0 55 c e e de
“CH”
SEHR SCHNELLERZEITGEBER
Fertigmerker T M H H 0000 bis 0255 Nicht verwendet. 2 Zeichen außer “CH”S SCZEITGEBER Istwert
0000 b s 0 55 c e e de
“CH”
Zähler Fertigmerker C N T (S) 0000 bis 0255 0000 bis 0127 2 Zeichen außer “CH”ä e
Istwert
C (S) 0000 b s 0 55 0000 b s 0
“CH”
Aufwärts–/Abwärts–zäh-l
Fertigmerker C N T R 0000 bis 0255 0000 bis 0127 2 Zeichen außer “CH”u ä s / b ä s äler Istwert
C 0000 b s 0 55 0000 b s 0
“CH”
DM Wort D M (S) (S) 0000 bis 20476144 bis 6655
0000 bis 1023*6144 bis 6655
2 beliebige Zeichen
Hinweis *Bei der SRM1(–V2) umfasst der DM–Bereich 0000 bis 2047.
(S): Leerzeichen.
Trennzeichen (Befehl)Die auszulesende Informationen werden nacheinander, getrennt durch einTrennzeichen (,) spezifiziert. Es können max.128 Lesebereiche spezifiziert wer-den. (Werden Istwerte von Zeitgebern/Zählern spezifiziert, wird auch der Statusdes Fertig–Bits übertragen, deshalb handelt es sich hier um zwei Leseberei-che).
(QQIR) LeseaufforderungBit–, Wort– und Zeitgeber–/Zähler–Werte werden entsprechend ihrer Registrie-rung gruppenweise gelesen und in einer Antwort zurückgesendet, wie es imQQMR–Befehls spezifiziert war.
Befehlsformat
@ Q QX 100X 101 I R ↵:
Teilneh-mer–Nr.
Befehls–code
Unter-Befehls–code
Ende–zeichen
FCS–Prüfzeichen
4-5AbschnittHost–Link–Befehle
283
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
,
@ Q QX 100X 101 x 161 x 160I R
x 163 x 162 x 161 x 160 ↵:
EIN/AUS x 103 x 102 X 101 X 100
EIN/AUS
Teilneh-mer–Nr.
Befehls–code
Unter-Befehls–code
Endecode Zeitgeber/ZählerIst der Istwert spezifiziert,wird der Status des Fertig-merkers auch übertragen.
Trenn–zeichen
BitdatenEIN/AUS
WortdatenIR, SR, LR, HR,AR, DM
Ende–zeichen
FCS–Prüfzeichen
, ,
,
Parameter Daten lesen (Antwort)Gelesene Daten werden, entsprechend dem Datenformat und in der Reihen-folge, übertragen, wie sie im QQMR–Befehl spezifiziert wurden. Wurde der Fer-tigmerker spezifiziert, dann werden Bitdaten (EIN oder AUS) zurückgegeben.Wurde ”Wort” spezifiziert, werden Wortdaten zurückgesendet. Wurde Istwertbei Zeitgebern/Zählern spezifiziert, wird der Istwert nach dem Fertigmerker zu-rückgegeben.
Trennzeichen (Antwort)Das Trennzeichen (,) markiert die Trennung zwischen den einzelnen gelesenenBereichen.
4-5-31 Abbruch – XZ Mit dem Befehl “Abbruch” wird ein innerhalb der Host–Link–Schnittstelle ablau-fender Prozess abgebrochen und die Freigabe zum Empfang des nächsten Be-fehles bewirkt. Auf den ABBRUCH–Befehl erfolgt keine Antwort.
Befehlsformat
@ X ZX 100X 101 CR:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
4-5-32 Initialisieren – ::Durch den Befehl Initialisierung wird die Übertragungssteuerung aller an denHost–PC angeschlossenen Steuerungen initialisiert. Dieser Befehl benötigtkeine Angabe der Stationsnummer oder FCS. Auf diesen Befehl erfolgt keineAntwort.
Befehlsformat
↵@ ::
4-5-33 TXD–Antwort – EXDieser Befehl wird von nur den SPS–Systemen CPM2A/CPM2C unterstützt.
Dies ist das verwendete Antwortsformat, wenn der TXD(48)–SPS–Befehl indem Host–Link–Kommunikationsmodus ausgeführt wird. EX besitzt keinen Pa-rameter.
TXD(48) wandelt die spezifizierten Daten in ASCII um und sendet diese in demFormat zum Host–Computer. Die Antwort kann bis zu 122 ASCII–Zeichen ent-halten. (TXD (48) unterstützt keine Mehrfachrahmen.)
4-5AbschnittHost–Link–Befehle
284
Antwortformat Der Endecode 00 stellt den normalen Befehlsabschluss dar.
@ E XX 100X 101 : ↵
Teilneh-mer–Nr.
Befehls–code
Zeichen(max. 122)
In TXD(48) spezifizierte Daten
Ende–zeichen
FCS–Prüfzeichen
Parameter Zeichen (Antwort)Dies sind die in TXD(48) spezifizierten Daten, die in ASCII–Code konvertiertwurden.
4-5-34 Nicht definierter Befehl – ICDiese Antwort wird gesendet, wenn die SPS den Befehlscode eines Befehlsnicht lesen kann. Überprüfen Sie bei Empfang dieser Antwort den Befehls–Code und den SPS–Typ.
Antwortformat
@ I CX 100X 101 ↵:
Teilneh-mer–Nr.
Befehls–code
Ende–zeichen
FCS–Prüfzeichen
285
KAPITEL 5Speicherbereiche
Dieses Kapitel beschreibt die Struktur der SPS–Speicherbereiche und deren Anwendung.
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
E/A–Erweiterungsbaugruppen 297 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 306 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5-1AbschnittSpeicherbereichsfunktionen
286
5-1 Speicherbereichsfunktionen
5-1-1 SpeicherbereichsstrukturCPM1/CPM1A Die folgenden Speicherbereiche können mit der CPM1/CPM1A verwendet wer-
den.
Datenbereich Worte Bits Funktion
IR–
Bereich1Eingangsbe-reich
IR 000 ... IR 009(10 Worte)
IR 00000 ... IR 00915(160 Bits)
Diese Bits sind den physikalischen Ein– und Aus-gängen zugewiesen.Bereich
Ausgangsbe-reich
IR 010 ... IR 019(10 Worte)
IR 01000 ... IR 01915(160 Bits)
g g g
Arbeits–bereich
IR 200 ... IR 231(32 Worte)
IR 20000 ... IR 23115(512 Bits)
Arbeitsmerker können beliebig innerhalb des Pro-gramms verwendet werden.
SR(Systemmerker)–Bereich
SR 232 ... SR 255(24 Worte)
SR 23200 ... SR 25515(384 Bits)
Diese Systemmerker besitzen spezifische Funk-tionen, z.B. als Merker- und Steuerbits.
TR (Temporärer Merker)–Bereich
--- TR 0 ... TR 7(8 Bits)
Diese Merker dienen zur temporären Speiche-rung des EIN/AUS-Zustands in Programmver-zweigungen.
HR–Bereich2 HR 00 ... HR 19(20 Worte)
HR 0000 ... HR 1915(320 Bits)
Diese Bits speichern Daten und behalten ihrenEIN/AUS–Zustand, nachdem die Spannungsver-sorgung ausgeschaltet wurde o. der Betrieb ge-startet oder gestoppt wird. Sie werden wie Ar-beitsmerker eingesetzt.
AR–Bereich AR 00 ... AR 15(16 Worte)
AR 0000 ... AR 1515(256 Bits)
Diese Systemmerker besitzen spezifische Funk-tionen, z.B. als Merker- und Steuerbits.
LR(Schnittstellen–
merker)–Bereich1LR 00 ... LR 15(16 Worte)
LR 0000 ... LR 1515(256 Bits)
Wird bei 1:1–PC–Link mit einer anderen SPS ver-wendet.
Zeitgeber/Zähler–
Bereich2TC 000 ... TC 127
(Zeitgeber/Zähler–Nummern) 3Zeitgeber und Zähler verwenden den Befehl TIM,TIMH(15), CNT und CNTR(12). Für Zeitgeberund Zähler werden dieselben Nummern verwen-det.
DM(Daten–Merker)–Bereich
Lesen/
Speichern2DM 0000 ... DM 0999DM 1022 ... DM 1023(1002 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Daten werden auch beim Ausschaltender Spann.versorgung oder bei Betriebsbeginn/–ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-nerhalb des Programms gelesen und in diese ge-schrieben werden.
Fehler–protokoll
DM 1000 ... DM 1021(22 Worte)
--- Speichert Zeitpunkt und Fehlercode. Diese Wortekönnen als gewöhnliche Lese/Schreib–DM–Worte verwendet werden, wenn die Fehlerproto-koll–Funktion nicht verwendet wird.
Nur Lesen4 DM 6144 ... DM 6599(456 Worte)
--- Können vom Programm nicht überschrieben wer-den.
SPS–Konfi-guration4
DM 6600 ... DM 6655(56 Worte)
--- Speichert verschiedene Steuerparameter derSPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, könnenals Arbeitsmerker verwendet werden.
2. Ein Kondensator dient zur Datensicherung des HR–, AR–, Zähler– und Le-se/Schreib–DM–Bereiches. Die Datensicherungszeit variiert mit der Umge-bungstemperatur, aber bei 250C hält der Kondensator den Speicherinhalt20 Tage lang aufrecht. Ist die Spannungsversorgung über einen die Siche-rungszeit überschreitenden Zeitraum ausgeschaltet, wird der Speicherin-halt gelöscht und AR1314 aktiviert (wird aktiviert, wenn keien Daten mehrüber die Kondensatorspannung aufrechterhalten werden.) Ein Diagrammmit einem Vergleich der Datensicherungszeit/Temperatur finden Sie imTechnischen Handbuch der CPM1/CPM1A (Abschnitt 2−1−2 Merkmale).
3. Beim Zugriff auf einen Istwert werden TC-Worte als Wortdaten und beim Zu-griff auf den Fertigmerker als Bitdaten verwendet.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschriebenaber über ein Programmiergerät geändert werden.
5-1AbschnittSpeicherbereichsfunktionen
287
CPM2A/CPM2C Die folgenden Speicherbereiche können mit der CPM2A/CPM2C verwendetwerden.
Datenbereich Worte Bits Funktion
IR–
Bereich1Eingangsbe-reich
IR 000 ... IR 009(10 Worte)
IR 00000 ... IR 00915(160 Bits)
Diese Bits sind den physikalischen Ein– und Aus-gängen zugewiesen.Bereich
Ausgangsbe-reich
IR 010 ... IR 019(10 Worte)
IR 01000 ... IR 01915(160 Bits)
g g g
Arbeits–bereich
IR 020 bis IR 049IR 200 bis IR 227(58 Worte)
IR 02000 bis IR 04915IR 20000 bis IR 22715(928 Bit)
Arbeitsmerker können beliebig innerhalb des Pro-gramms verwendet werden.
SR(Systemmerker)–Bereich
SR 228 ... SR 255(28 Worte)
SR 22800 ... SR 25515(448 Bits)
Diese Systemmerker besitzen spezifische Funk-tionen, z.B. als Merker- und Steuerbits.
TR(Temporärer Merker)–Bereich
--- TR 0 ... TR 7(8 Bits)
Diese Merker dienen zur temporären Speiche-rung des EIN/AUS-Zustands in Programmver-zweigungen.
HR–Bereich2 HR 00 ... HR 19(20 Worte)
HR 0000 ... HR 1915(320 Bits)
Diese Bits speichern Daten und behalten ihrenEIN/AUS–Zustand, nachdem die Spannungsver-sorgung ausgeschaltet wurde oder der Betriebgestartet oder gestoppt wird. Sie werden wie Ar-beitsmerker eingesetzt.
AR–Bereich2 AR 00 ... AR 23(24 Worte)
AR 0000 ... AR 2315(384 Bits)
Diese Merker besitzen spezifische Funktionen,z.B. als Systemmerker und Steuerbits.
LR(Schnittstellenmer-
ker)–Bereich1LR 00 ... LR 15(16 Worte)
LR 0000 ... LR 1515(256 Bits)
Wird für einen 1:1–PC–Link mit einer anderenSPS verwendet.
Zeitgeber/Zähler–
Bereich2TC 000 ... TC 255
(Zeitgeber/Zähler–Nummern) 3Zeitgeber und Zähler verwenden die TIM–,TIMH(15)–, CNT–, CNTR(12)–, TMHH(––)– undTIML(––)–Befehle. Für Zeitgeber/Zähler werdendieselben Nummern verwendet.
DM(Daten–Merker)–Bereich
Lesen/
Speichern2DM 0000 ... DM 1999DM 2022 ... DM 2047(2,026 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Worte werden auch beim Ausschaltender Spannungsversorgung oder bei Betriebsbe-ginn oder –ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-nerhalb des Programms gelesen und geschrie-ben werden.
Fehlerprotokoll DM 2000 ... DM 2021(22 Worte)
--- Speichert Zeitpunkt und Fehlercode. Diese Wortekönnen als gewöhnliche Lese/Schreib–DM–Worte verwendet werden, wenn die Fehlerproto-koll–Funktion nicht verwendet wird.
Nur Lesen4,5 DM 6144 ... DM 6599(456 Worte)
--- Können vom Programm nicht überschrieben wer-den.
SPS–Konfigu-ration4,5
DM 6600 ... DM 6655(56 Worte)
--- Speichert verschieden Steuerparameter vonSPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, könnenals Arbeitsmerker verwendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Lese/Schreibbereichs wird überdie Batterie der CPU–Baugruppe abgesichert. Wird die Batterie entferntoder fällt diese aus, geht der Inhalt dieser Bereiche verloren und wird auf dieStandardwerte zurückgesetzt. (In CPM2C–CPU–Baugruppen ohne Batte-rie werden diese Bereiche über die in einem Kondensator gespeicherteSpannung abgesichert.)
3. Wird eine TC–Nummer als ein Wortoperand verwendet, wird auf den Zeit-geber oder Zähler–Istwert zugegriffen; wird er als Bitoperand verwendet,wird auf den Fertigmerker zugegriffen.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschriebenaber von einem Programmiergerät geändert werden.
5. Das Programm und die Daten in 6144 DM bis DM 6655 werden im Flash–Speicher abgelegt.
5-1AbschnittSpeicherbereichsfunktionen
288
SRM1(–V2) Die folgenden Speicherbereiche können mit der SRM1(–V2) verwendet wer-den.
Datenbereich Worte Bits Funktion
IR–
Bereich1Eingangsbe-reich
IR 000 ... IR 007(8 Worte)
IR 00000 ... IR 00715(128 Bits)
Diese Bits sind den externen Ein–/Ausgängenzugewiesen. Der EIN/AUS–Zustand der E/A–Bitsenspricht dem der Ein–/Ausgänge
(Wird der CompoBus/S in der 128 Bit BetriebsartAusgangsbe-reich
IR 010 ... IR 017(8 Worte)
IR 01000 ... IR 01715(128 Bits)
(Wird der CompoBus/S in der 128 Bit–Betriebsartverwendet, können IR 004 bis IR 007 und IR 014bis IR 017 auch als Arbeitsmerker verwendetwerden.)
Arbeits–bereich
IR 008 bis IR 009IR 018 bis IR 019IR 200 bis IR 239(44 Worte)
IR 00800 bis IR 00915IR 01800 bis IR 01915IR 20000 bis IR 23915(704 Bit)
Arbeitsmerker können beliebig innerhalb des Pro-gramms verwendet werden. IR 232 bis IR 239werden jedoch als MAKRO–Eingangsbereich ver-wendet, wenn MCRO(99) verwendet wird.
SR (Systemmerker)–Bereich
SR 240 ... SR 255(16 Worte)
SR 24000 ... SR 25507(248 Bits)
Diese Systemmerker besitzen spezifische Funk-tionen, z.B. als Merker- und Steuerbits.
TR (Temporärer Mer-ker)–Bereich
--- TR 0 ... TR 7(8 Bits)
Diese Merker dienen zur temporären Speiche-rung des EIN/AUS-Zustands in Programmver-zweigungen.
HR–Bereich2 HR 00 ... HR 19(20 Worte)
HR 0000 ... HR 1915(320 Bits)
Diese Bits speichern Daten und behalten ihrenEIN/AUS–Zustand, nachdem die Spannungsver-sorgung ausgeschaltet wurde o. der Betrieb ge-startet oder gestoppt wird. Sie werden wie Ar-beitsmerker eingesetzt.
AR–Bereich2 AR 00 ... AR 15(16 Worte)
AR 0000 ... AR 1515(256 Bits)
Diese Systemmerker besitzen spezifische Funk-tionen, z.B. als Merker- und Steuerbits. AR 04 bis07 werden für Slave–Funktionen verwendet. Se-hen Sie den AR–Bereich.
LR–Bereich1 LR 00 ... LR 15(16 Worte)
LR 0000 ... LR 1515(256 Bits)
Wird für einen 1:1–PC–Link mit einer anderenSPS verwendet.
Zeitgeber/Zähler–
Bereich2TC 000 ... TC 127
(Zeitgeber/Zähler–Nummern)3Zeitgeber und Zähler verwenden den Befehl TIM,TIMH(15), CNT und CNTR(12). Für Zeitgeberund Zähler werden dieselben Nummern verwen-det.
DM(Daten-merker)–Bereich
Lesen/
Speichern2DM 0000 ... DM 1999(2.000 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Worte werden auch beim Ausschaltender Spannungsversorgung, bei Betriebsbeginn/–ende aufrechterhalten.
In den Lese/Schreibbereichen kann beliebig in-nerhalb des Programms gelesen und geschrie-ben werden.
Fehler–protokoll
DM 2000 ... DM 2021(22 Worte)
--- Speichert Zeitpunkt und Fehlercode. Diese Wortekönnen als gewöhnliche Lese/Schreib–DM–Worte verwendet werden, wenn die Fehlerproto-koll–Funktion nicht verwendet wird.
Nur Lesen4 DM 6144 ... DM 6599(456 Worte)
--- Können vom Programm nicht überschrieben wer-den.
SPS–Konfi-guration4
DM 6600 ... DM 6655(56 Worte)
--- Speichert verschieden Steuerparameter vonSPS-Operationen.
Hinweis 1. IR- und LR-Bits, die keiner bestimmten Funktion zugewiesen sind, könnenals Arbeitsmerker verwendet werden.
2. Ein Kondensator oder eine Batterie dient zur Datensicherung des HR–,AR–, Zähler– und Lese/Schreib–DM–Bereiches. Ein Diagramm mit der Ge-genüberstellung der Datensicherungszeit/Temperatur finden Sie im Techni-schen Handbuch der SRM1 Master–Steuerungsbaugruppe in Abschnitt2-1-2 Technische Daten.
3. Beim Zugriff auf einen Istwert werden TC-Worte als Wortdaten und beim Zu-griff auf Fertigmerker als Bitdaten verwendet.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschriebenaber über ein Programmiergerät geändert werden.
5-1AbschnittSpeicherbereichsfunktionen
289
5-1-2 FunktionenIR–Bereich Die Funktionen der verschiedenen Bereiche werden im folgenden erklärt.
Bei den CPM1–, CPM1A–, CPM2A– und CPM2C–SPS–Systemen sind dieE/A–Adressbereichs–Bits von IR 00000 bis IR 01915 den Klemmen auf derCPU–Baugruppe und denen der E/A–Erweiterungsbaugruppen zugewiesen.Bei der SRM1(–V2) sind die E/A–Adressbereichs–Bits von IR 00000 bis IR00715 und IR 01000 bis IR 01715 CompoBus/S–Slaves zugewiesen. Sie gebenden EIN/AUS-Zustand der Eingangs– und Ausgangssignale wieder. Eingangs-bits beginnen bei IR 00000 und Ausgangsbits bei IR 01000.
IR Worte, die nicht Ein– oder Ausgängen zugewiesen sind, können als Arbeits-worte verwendet werden. Zusätzlich können nicht verwendete Bits in IR–Wor-ten, die Ausgängen zugewiesen sind, als Arbeitsmerker verwendet werden.
Arbeitsmerker Die Arbeitsmerker können innerhalb eines Programmes frei verwendet werden,jedoch nur für Funktionen innerhalb des Programms und nicht zur Adressierungphysikalischer Ein–/Ausgänge.
Hinweis 1. Die in den folgenden Tabellen aufgeführten CPU–Eingänge können als nor-male Eingänge arbeiten oder diesen können in der SPS–Konfiguration be-sondere Funktionen zugewiesen werden.
Besondere Funktionen für die Bits IR 00000 bis IR 00002 werden in DM6642 spezifiziert:
Bit–d
SPS–Konfigurationseinstellung (DM 6642 Bits 08 bis 15)adresse 00 01 02, 03 oder 04
IR 00000 Werden alsnormale
Werden als schnelleZählereingänge
Werden als Eingänge für einesynchronisierte
IR 00001normaleEingänge
d t
Zählereingängeverwendet.
synchronisierteImpulssteuerung verwendet.
IR 00002
g gverwendet. Wird als normaler Eingang
verwendet.
Besondere Funktionen für die Bits IR 00003 bis IR 00006 werden inDM 6628 spezifiziert:
Bit–d
Bits inDM 6628
SPS–Konfigurationseinstellung (in DM 6628)adresse
sDM 6628 0 1 2
IR 00003 00 bis 03 Werden alsnormale Eingänge
Werden alsInterrupt
Werden alsEingänge mit
IR 00004 04 bis 07normale Eingängeverwendet.
Interrupt–Eingänge
Eingänge mitImpuls–
IR 00005* 08 bis 11verwendet. Eingänge
(einschließlichZählbetriebsart)
Im ulsspeicherungverwendet
IR 00006* 12 bis 15Zählbetriebsart)verwendet.
verwendet.
Hinweis *Eingang 00006 ist nicht vorhanden und Eingang 00005 muss alsnormaler Eingang in CPM2C–CPU–Baugruppen mit 10 Ein–/Aus-gängen verwendet werden.
2. Ausgangsbits IR 01000 und IR 01001 können als normale Ausgänge arbei-ten oder sie können mit PULS(65), SYNC(––) oder PWM(––) als Impuls–ausgänge verwendet werden. (Verwenden Sie eine CPU–Baugruppe mitTransistorausgänge für Impulsausgabefunktionen.)
Befehl Funktion
PULS (65) Mit SPED(64):Einphasige Impulsausgaben ohne Beschleunigung und Abbremsung
Mit ACC(––):Einphasige Impulsausgaben mit trapezförmigerBeschleunigung/Abbremsung
SYNC(––) Synchronisierte Impulssteuerung
PWM(––) Impulsausgabe mit variablem Tastverhältnis
SR–Bereich Diese Bits dienen hauptsächlich als Merker für den SPS-Betrieb oder enthaltenIst– und Sollwerte für diverse Funktionen. Einzelheiten über die diversen Bit-funktionen finden Sie in den relevanten Kapiteln dieses Handbuches oder imAnhang C Speicherbereiche.
5-1AbschnittSpeicherbereichsfunktionen
290
Einige SR–Bereichsworte können als Arbeitsworte verwendet werden, wennsie nicht für ihren vorgesehenen, reservierten Zweck verwendet werden.
TR–Bereich Diese Bits verwendet der Kontaktplan–Editor zur vorübergehenden Speiche-rung von EIN/AUS–Ausführungsbedingungen von Programmverzweigungen.Sie können auch für die Anweisungslisten-Programmierung verwendet werden.Bei der Kontaktplan-Programmierung über die Programmiersoftware SYSWINoder CX–P werden temporäre Merker automatisch verarbeitet.
Diese TR–Bits können nicht mehrmals innerhalb des gleichen Blocks verwen-det werden aber in unterschiedlichen Blöcken. Der EIN-/AUS-Zustand temporä-rer Merker kann nicht über ein Programmiergerät überwacht werden.
Beispiele für die Anwendung der TR–Bits in der Programmierung finden Sie aufSeite 326.
HR–Bereich Diese Bits behalten ihren EIN-/AUS-Zustand auch bei ausgeschalteter Versor-gungsspannung der SPS oder bei Betriebsbeginn oder –ende bei. Sie werdenwie Arbeitsmerker eingesetzt.
AR–Bereich Diese Bits dienen hauptsächlich als Merker für den SPS-Betrieb. Diese Merkerbehalten ihren Zustand auch nach dem Ausschalten der SPS–Versorgungs-spannung oder bei Betriebsbeginn oder –ende bei. Einzelheiten über die diver-sen Merkerfunktionen finden Sie in den relevanten Kapiteln dieses Handbuchesoder im Anhang C Speicherbereiche.
LR–Bereich Wird die CPM1/CPM1A/CPM2A/CPM2C/SRM1(–V2) 1:1 mit einer anderenSPS des Typs CPM1/CPM1A/CPM2A/CPM2C/SRM1(–V2), einer CQM1,C200HS oder C200HX/HG/HE verknüpft, werden diese Bits für eine gemein-same Nutzung der Daten verwendet. Weitere Informationen sehen Sie Seite212.
LR–Bit können als Arbeitsmerker verwendet werden, wenn diese nicht für einen1:1–PC–Link verwendet werden.
Zeitgeber/Zählerbereich Dieser Bereich dient dazu, Zeitgeber und Zähler zu verwalten, die mit TIM,TIMH(15), CNT und CNTR(12) erstellt werden. Dieselben Nummern werden so-wohl für Zeitgeber als auch für Zähler verwendet. Jede Nummer kann jedochnur einmal im Anwenderprogramm verwendet werden. Programmieren Sie inkeinem Fall dieselbe TC–Nummer zweimal, auch wenn es sich um verschie-dene Befehle handelt.
Verwenden Sie die TC–Nummern 000 bis 003 für TIMH(15) und die TC–Num-mern 004 bis 007 für TMHH(––)*. Werden diese Zeitgebernummern verwendet,wird deren Zeitverhalten als Interruptvorgang ausgewertet und der Zykluszeit-geber beeinflusst nicht den Zeitgeberbetrieb.
TC–Nummern dienen der Erstellung von Zeitgebern und Zählern, wie auch demZugriff auf Ausgeführt–Merker und Istwerte. Wird eine TC–Nummer für Wortda-ten spezifiziert, wird auf den Istwert zugegriffen. Wird sie für Bitdaten verwendet,wird der Ausgeführt–Merker für den Zeitgeber/Zähler angesprochen.
Einzelheiten über Zeitgeber und Zähler finden Sie unter ”Befehle” ab Seite 362.
DM–Bereich Auf DM–Bereichsdaten wird in nur in Worteinheiten zugegriffen. Der Inhalt desDM–Bereiches wird auch nach dem Ausschalten der SPS–Versorgungsspan-nung oder bei Betriebsbeginn oder –ende beibehalten.
CPM1/CPM1ADM 0000 bis DM 0999, DM 1022 und DM 1023 können beliebig im Programmverwendet werden; anderen DM–Worten werden spezielle, nachfolgend be-schriebenen Funktionen, zugewiesen.
DM 1000 bis DM 1021 DM enthalten Fehlerprotokoll–Informationen. Weitere In-formationen über das Fehlerprotokoll finden Sie in Kapitel 9 Fehlersuche.CPM2A/CPM2CDM–Worte 0000 bis 1999 und DM 2022 bis DM 2047 können beliebig im Pro-gramm verwendet werden; anderen DM–Worten sind spezielle, nachstehendbeschriebene Funktionen zugeordnet.
5-1AbschnittSpeicherbereichsfunktionen
291
DM 2000 bis DM 2021 enthält die Fehlerprotokoll–Informationen. Sehen Sie Kapitel 9 Fehlersuche für weitere Informationen zum Fehlerprotokoll.
SRM1(-V2)DM–Worte 0000 bis 1999 können beliebig im Programm verwendet werden; an-deren DM–Worten sind spezielle, nachstehend beschriebene Funktionen zuge-ordnet.
DM 2000 bis DM 2021 enthält die Fehlerprotokoll–Informationen. Sehen Sie Kapitel 9 Fehlersuche für weitere Informationen zum Fehlerprotokoll.
Hinweis DM 6600 bis DM 6655 DM enthalten die SPS–Konfiguration. Sehen Sie Kapitel1-1 SPS–Konfiguration für weitere Informationen.
5-1-3 CPM1/CPM1A/SRM1(-V2) Flash–SpeicherDie folgenden Einstellungen müssen vorgenommen werden, um den Flash–Speicherbereich für die CPM1/CPM1A/SRM1(–V2)–SPS–Systeme zu verwen-den.
Schreiben von Daten Um den Inhalt des UM–Bereichs, des DM–Nur–Lese–Bereichs (DM 6144 bisDM 6599) und des SPS–Konfigurationsbereichs (DM 6600 bis DM 6655) in demFlash–Speicher zu speichern, muß die SPS aus– und anschließend wieder ein-geschaltet werden.
Hinweis SRM1–C01/02 kondensatorbasierende DatensicherungWerden Änderungen an den zuvor beschriebenen Speicherbereichen vorge-nommen und werden diese nicht in den Flash–Speicher geschrieben, dann ge-hen die Änderungen (im RAM) verloren, wenn die Versorgungsspannung für 20Tagen (bei 25°C) oder mehr abgeschaltet wird. Nach dem Datenverlust wird dernicht geänderte Inhalt des Flash–Speichers beim Einschalten der SPS eingele-sen.
Speicherbereichs–Änderung Beachten Sie beim erstmaligen Betrieb der SRM 1 nach erfolgten Änderungenim UM–, DM–Nur–Lese– (DM 6144 bis DM 6599) und SPS–Konfigurationsbe-reich (DM 6600 bis DM 6655) die Effekte, die sich durch die SRM1–Verzögerungbeim Betrieb mit anderen Geräten ergeben.
Der erste Betrieb der SRM1 nach den oben genannten Änderungen setzt maxi-mal 850 ms später als bei einem normalen Einschalten ohne Änderungen ein.
SRM1–Zykluszeiten Eine Zykluszeit–Überlaufwarnung wird nicht ausgegeben, wenn jede der fol-genden Operationen in der MONITOR–Betriebsart ausgeführt wird. Seien Sievorsichtig mit der Wirkung der On–line–Editierung in bezug auf die SRM1–E/A–Ansprechzeit.
• Änderungen im Programm, wobei die On–line–Editierung verwendet wird.
• Änderungen im DM–Nur–Lese–Bereich (DM 6144 bis DM 6599).
• Änderung im SPS–Konfigurationsbereich (DM 6600 bis DM 6655).
Wird eine der zuvor beschriebenen Operationen durchgeführt, wird dieSRM1–Zykluszeit um maximal 850 ms verlängert. Während dieser Zeitspannewerden Interrupts während des Speicherns des Programms oder des Speicher-inhalts deaktiviert.
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
292
5-2 E/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
5-2-1 CPU–BaugruppenCPM1
Anzahl der E/A(auf der CPU–Baugruppe)
Modell–nummer
E/A Zugewiesene Bits Max. Anzahl derE/A–
Erweiterungs–baugruppen
Max. Anzahl derE/A (sehen Sie
Hinweis 1)
10 CPM1–10CDRj Eingang 6 Eingänge: 00000 ... 00005 1 (sehen SieHi i 1)
300 C 0C j
Ausgang 4 Ausgänge: 01000 ... 01003
(se e S eHinweis 1)
30
20 CPM1–20CDRj Eingang 12 Eingänge: 00000 ... 00011 1 (sehen SieHi i 1)
400 C 0C j
Ausgang 8 Ausgänge: 01000 ... 01007
(se e S eHinweis 1)
0
30 CPM1–30CDRj Eingang 18 Eingänge:00000 bis 0001100100 bis 00105
1 (sehen SieHinweis 1)
50
Ausgang 12 Ausgänge:01000 bis 0100701100 bis 01103
30 CPM1-30CDR-j-V1 Eingang 18 Eingänge:00000 bis 0001100100 bis 00105
3 (sehen SieHinweis 2)
90
Ausgang 12 Ausgänge:01000 bis 0100701100 bis 01103
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-halten auch die E/A von E/A–Erweiterungsbaugruppen.
2. Beim Einsatz einer anderen CPM1–CPU–Baugruppe als derCPM1–30CDRj–V1 kann eine der folgenden E/A–Erweiterungsbaugrup-pen mit 20 Anschlüssen an die SPS angeschlossen werden:
• CPM1–20EDR (Relaisausgänge)
• CPM1A–20EDT (NPN–Transistorausgänge)
• CPM1A–20EDT1 (PNP–Transistorausgänge)
3. Beim Einsatz einer CPM1–30CDRj–V1 können bis zu drei 3CPM1/CPM1A–E/A–Erweiterungs– oder CPM1A-MAD01 Analog–E/A–Baugruppen an die SPS angeschlossen werden.
CPM1AAnzahl der E/A(auf der CPU–Baugruppe)
Modell–nummer
E/A Zugewiesene Bits Max. Anzahl derE/A–
Erweiterungs–baugruppen
Max. Anzahlder E/A
(sehen SieHinweis 1)
10 CPM1A-10CDR-jCPM1A-10CDT-D
Eingang 6 Eingänge: 00000 ... 00005 Kein 10CPM1A-10CDT-DCPM1A-10CDT1-D Ausgang 4 Ausgänge: 01000 ... 01003
20 CPM1A-20CDR-jCPM1A-20CDT-DCPM1A 20CDT1 D
Eingang 12 Eingänge: 0000 bis 00011
Kein 20
CPM1A-20CDT1-D Ausgang 8 Ausgänge: 01000 ... 01007
30 CPM1A-30CDR-jCPM1A-30CDT-DCPM1A-30CDT1-D
Eingänge 18 Eingänge:00000 bis 0001100100 bis 00105
3 (sehen Sie denHinweis)
90
Ausgang 12 Ausgänge:01000 bis 0100701100 bis 01103
40 CPM1A-40CDR-jCPM1A-40CDT-DCPM1A-40CDT1-D
Eingänge 24 Eingänge:00000 bis 0001100100 bis 00111
3 (sehen Sie denHinweis)
100
Ausgang 16 Ausgänge:01000 bis 0100701100 bis 01107
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-halten auch die E/A von E/A–Erweiterungsbaugruppen.
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
293
2. Beim Einsatz einer CPM1A–CPU–Baugruppe mit 30 oder 40 E/A könnenbis zu drei 3 E/A–Erweiterungsbaugruppen an die CPU–Baugruppe ange-schlossen werden.
CPM2AAnzahl der E/A(auf der CPU–Baugruppe)
Modell–nummer
E/A Zugewiesene Bits Max. Anzahl derE/A–
Erweiterungs–baugruppen
Max. Anzahlder E/A
(sehen SieHinweis 1)
20 CPM2A-20CDR-jCPM2A-20CDT-DCPM2A 20CDT1 D
Eingang 12 Eingänge: 0000 bis 00011
3 80
CPM2A-20CDT1-D Ausgang 8 Ausgänge: 01000 ... 01007
30 CPM2A-30CDR-jCPM2A-30CDT-DCPM2A-30CDT1-D
Eingang 18 Eingänge:00000 bis 0001100100 bis 00105
3 90
Ausgang 12 Ausgänge:01000 bis 0100701100 bis 01103
40 CPM2A-40CDR-jCPM2A-40CDT-DCPM2A-40CDT1-D
Eingang 24 Eingänge:00000 bis 0001100100 bis 00111
3 100
Ausgang 16 Ausgänge:01000 bis 0100701100 bis 01107
60 CPM2A-60CDR-jCPM2A-60CDT-DCPM2A-60CDT1-D
Eingang 36 Eingänge:00000 bis 0001100100 bis 0011100200 bis 00211
3 120
Ausgang 24 Ausgänge:01000 bis 0100701100 bis 0110701200 bis 01207
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-halten auch die E/A von E/A–Erweiterungsbaugruppen.
2. Beim Einsatz einer CPM2A–CPU–Baugruppe können bis zu 3 Erweite-rungsbaugruppen oder E/A–Erweiterungsbaugruppen an die SPS ange-schlossen werden.
CPU–Baugruppenzuweisung• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsbits werden von IR 00000 an beginnend zugeordnet.
• Ausgangsbits werden von IR 01000 an beginnend zugeordnet.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,können nicht als Arbeitsmerker verwendet werden.
CPU–Baugruppen mit 10 E/A–Anschlüssen
6 EingängeIR 00000 bis IR 00005
4 AusgängeIR 01000 bis IR 01003
CPM1-10CDR-jCPM1A-10CDjj
Eingänge
Ausgänge
IR 000
IR 010
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
Bits
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
294
CPU–Baugruppen mit 20 E/A–Anschlüssen
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
CPM1-20CDR-jCPM1A-20CDj-jCPM2A-20CDj-j
Eingänge
Ausgänge
IR 000
IR 010
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
Bits
CPU–Baugruppen mit 30 E/A–Anschlüssen
18 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00105
12 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01103
CPM1-30CDR-j/CPM1-30CDR-j-V1CPM1A-30CDj-jCPM2A-30CDj-j
EingängeIR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
AusgängeIR 010
IR 011
Bitte nicht verwenden
Bits
CPU–Baugruppen mit 40 E/A–Anschlüssen
24 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00111
16 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01107
CPM1A-40CDj-jCPM2A-40CDj-j
EingängeIR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
AusgängeIR 010
IR 011
Bitte nicht verwenden
Bits
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
295
CPU–Baugruppen mit 60 E/A–Anschlüssen36 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00111IR 00200 bis IR 00211
24 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01107IR 01200 bis IR 01207
CPM1A-60CDj-j
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
IR 002
IR 012
Bits
5-2-2 E/A–ErweiterungsbaugruppenAnzahl der
E/AModell–nummer
E/A Zugewiesene Bits KompatibleCPU–Baugruppen
8 CPM1A-8ED Eingang 8 Eingänge: Wort (m+1), Bit 00 bis 07 CPM1CPM1A-30/40
Ausgang ---CPM1A-30/40CPM2A
8 CPM1A-8ERCPM1A-8ET
Eingang --- CPM1CPM1A-30/40CPM1A-8ET
CPM1A-8ET1 Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07CPM1A-30/40CPM2A
20 CPM1A-20EDRCPM1A-20EDR1
Eingang 12 Eingänge: Wort (m+1), Bit 00 bis 11 CPM1CPM1A-30/40CPM1A 20EDR1
CPM1A-20EDTCPM1A-20EDT1
Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07CPM1A 30/40CPM2A
20 CPM1A-20EDR Eingang 12 Eingänge: Wort (m+1), Bit 00 bis 11 CPM1CPM1A-30/40
Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07CPM1A-30/40CPM2A
Hinweis “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird , falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, falls diese angeschlossen ist.
E/A–Erweiterungsbaugruppenzuweisung• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort(m+1) zugewiesen, wobei “m” das letzte Eingangswort ist, das der CPU–, dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, fall diese bereits angeschlossen ist.
• Ausgangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort(n+1) zugewiesen, wobei “n” das letzte Eingangswort ist, das der CPU–, dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, fall diese bereits angeschlossen ist.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,können nicht als Arbeitsmerker verwendet werden.
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
296
E/A–Erweiterungsbaugruppen mit 8 Eingängen
8 EingängeWort (m+1), Bits 00 bis 07
Keine Ausgänge
CPM1A-8ED
Eingänge m + 1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
Bits
E/A–Erweiterungsbaugruppen mit 8 Ausgängen
Keine Eingänge
8 AusgängeWort (n+1), Bits 00 bis 07
CPM1A-8ERCPM1A-8ETCPM1A-8ET1
Ausgänge n+1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00Bits
E/A–Erweiterungsbaugruppen mit 20 E/A–Anschlüssen
12 EingängeWort (m+1), Bits 00 bis 11
8 AusgängeWort (n+1), Bits 00 bis 07
CPM1-20EDRCPM1A-20EDRCPM1A-20EDR1CPM1A-20EDTCPM1A-20EDT1
Eingänge
Ausgänge
m + 1
n+1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
Bits
5-2-3 ErweiterungsbaugruppenBaugruppe Modell–
nummerE/A Zugewiesene Worte Max. Anzahl der
BaugruppenKompatible
CPU–Baugruppen
Analoge E/A–Baugruppe
CPM1A-MAD01 Eingang 2 Eingänge: m+1, m+2 3 (sehen SieHinweis 2)
CPM1CPM1ABaugruppe
Ausgang 1 Ausgang: n+1Hinweis 2) CPM1A
CPM2A
Temperaturfühler–Bau CPM1A–TS001CPM1A TS101
Eingang 2 Eingänge: m+1, m+2 3 CPM1ACPM2A
e e a u ü e augruppen
C S00CPM1A–TS101 Ausgang ---
3 CCPM2A
CPM1A-TS002CPM1A TS102
Eingang 4 Eingänge: m+1 bis m+4 1 CPM1ACPM2A
C S00CPM1A-TS102 Ausgang ---
CCPM2A
CompoBus/S–E/A–Link B
CPM1A-SRT21 Eingang 1 Eingang: m + 1 3 CPM1ACPM2A
Co o us/S /k–Baugruppe
C S
Ausgang 1 Ausgang: n+1
3 CCPM2A
Hinweis 1. “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oderder vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-gewiesen wird, falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oderder vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-gewiesen wird, falls diese angeschlossen ist.
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
297
2. Nur an CPM1–CPU–Baugruppen mit dem Zusatz “–V1” können 3 Analog–E/A–Baugruppen angeschlossen werden. An CPU–Baugruppen ohne den“–V1”–Zusatz kann nur eine Analog–E/A–Baugruppe angeschlossen wer-den.
3. Nur eine CPM1ATS002/102–Temperaturfühler–Baugruppe kann an dieSPS angeschlossen werden. Wird eine CPM1A–TS002/102–Temperatur-fühler–Baugruppe mit der SPS verbunden, kann nur eine andere Erweite-rungs– oder E/A–Erweiterungsbaugruppe (außer derCPM1A–TS002/102–Temperaturfühler–Baugruppe) angeschlossen wer-den.
Analog–E/A–Baugruppe
2 AnalogeingängeEingang 0: Wort (m+1)Eingang 1: Wort (m + 2)
1 analoge AusgangAusgang 0: Wort (n + 1)
CPM1A-MAD01
Temperaturfühler–Baugruppen
2 TemperatureingängeEingang 0: Wort (m+1)Eingang 1: Wort (m + 2)
Keine Ausgänge
CPM1A-TS001/TS101
4 TemperatureingängeEingang 0: Wort (m+1)Eingang 1: Wort (m+2)Eingang 2: Wort (m+3)Eingang 3: Wort (m+4)
Keine Ausgänge
CPM1A-TS002/TS102
CompoBus/S–E/A–Link–Baugruppen
8 EingängeEingang: Wort (m + 1)
8 AusgängeAusgang: Wort (n + 1)
CPM1A-SRT21
Hinweis Eingangsbits 00 bis 07 des Wortes (m+1) sind Ausgänge des Masters. Aus-gangsbits 00 bis 07 des Wortes (n+1) sind Eingänge des Masters.
5-2-4 Beispiele für die Zuweisung von Erweiterungs– undE/A–Erweiterungsbaugruppen
• Beim Einsatz einer CPM1–CPU–Baugruppe ohne “–V1” am Ende der Modell-nummer kann nur eine E/A–Erweiterungsbaugruppe angeschlossen werden.
• Beim Einsatz einer CPM1–CPU–Baugruppe mit “–V1” am Ende der Modell-nummer können bis zu 3 E/A–Erweiterungsbaugruppen der CPM1A–Serieangeschlossen werden.
• Beim Einsatz einer CPM1A–CPU–Baugruppe mit 30 oder 40 E/A–Anschlüs-sen oder beim Einsatz einer CPM2A–CPU–Baugruppe können bis zu 3 Erwei-terungs– oder E/A–Erweiterungsbaugruppen, außer Temperaturfühler–Bau-gruppen mit 4 Eingängen, angeschlossen werden. Nur eine Temperaturfüh-ler–Baugruppe mit 4 Eingängen kann angeschlossen werden. Wird eine Tem-peraturfühler–Baugruppe mit 4 Eingängen an die SPS angeschlossen, kannzusätzlich nur noch eine weitere Erweiterungs– oder E/A–Erweiterungsbau-gruppe (außer einer anderen Temperaturfühler–Baugruppe mit 4 Eingängen)angeschlossen werden.
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
298
Beispiel: CPU–Baugruppe mit 20 Ein–/Ausgängen mit zusätzlicher E/A–Erweiterungsbaugruppe mit20 E/A
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
EingängeIR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
AusgängeIR 010
IR 011
Bitte nicht verwenden
12 EingängeIR 00100 bis IR 00111
8 AusgängeIR 01100 bis IR 01107
CPU–Baugruppe mit20 E/A–Anschlüssen
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
Bitte nicht verwenden
Bits
• IR 00000 bis IR 00011 und IR 00100 bis IR 00111 werden als Eingangsbits zu-gewiesen. IR 00012 bis 00015 können nicht verwendet werden.
• IR 01000 bis IR 01007 und IR 01100 bis IR 01107 werden als Ausgangsbitszugewiesen. IR 01108 bis IR 01115 können als Arbeitsmerker verwendet wer-den.
• IR 002 bis IR 009 der Eingangsworte und IR 012 bis IR 019 der Ausgangswortekönnen alle als Arbeitsworte verwendet werden.
Beispiel: CPU–Baugruppe mit 30 Ein–/Ausgängen mit 3 zusätzlichen E/A–Erweiterungsbaugruppenmit 20 E/A
18 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00105
12 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01103
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
12 EingängeIR 00200 bis IR 00211
8 AusgängeIR 01200 bis IR 01207
CPU–Baugruppe mit 30 E/A–Anschlüssen
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
Bitte nicht verwenden
12 EingängeIR 00300 bis IR 00311
8 AusgängeIR 01300 bis IR 01307
12 EingängeIR 00400 bis IR 00411
8 AusgängeIR 01400 bis IR 01407
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
IR 012
IR 013
IR 014
Bitte nicht verwenden
Bitte nicht verwenden
Bitte nicht verwenden
IR 002
IR 003
IR 004
Bits
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
299
Beispiel: CPU–Baugruppe mit 60 E/A–Anschlüssen mit 3 zusätzlichen E/A–Erweiterungsbaugruppen
36 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00111IR 00200 bis IR 00211
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
12 EingängeIR 00300 bis IR 00311
CPU–Baugruppe mit 60 E/A–Anschlüssen
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
Bitte nicht verwenden
Keine Eingänge12 EingängeIR 00400 bis IR 00411
E/A–Erweiter.–baugruppe(8 Ausgänge)
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
IR 012
IR 013
IR 014
Bitte nicht verwenden
Bitte nicht verwenden
Bitte nicht verwenden
IR 002
IR 003
IR 004
24 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01107IR 01200 bis IR 01207
8 AusgängeIR 01300 bis IR 01307
8 AusgängeIR 01400 bis IR 01407
8 AusgängeIR 01500 bis IR 01507
IR 015
Bits
5-2AbschnittE/A–Zuweisung für CPM1/CPM1A/CPM2A–SPS–Systeme
300
Beispiel: Konfiguration, einschließlich Analog–E/A–Baugruppe, Temperaturfühler–Baugruppe undE/A–Erweiterungsbaugruppe
36 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00111IR 00200 bis IR 00211
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
2 AnalogeingängeEingang 0: IR 003Eingang 1: IR 004
CPU–Baugruppe mit 60 E/A–Anschlüssen
Analog–E/A–BaugruppeCPM1A–MAD01
Bitte nicht verwenden
2 TemperatureingängeEingang 0: IR 005Eingang 1: IR 006
12 EingängeIR 00700 bis IR 00711
Temperaturfühler–Baugrp.CPM1A–TS001/101
E/A–Erweiter.–baugruppe(20 E/A–Anschlüssen)
IR 012
IR 013
IR 014
Bitte nicht verwenden
Für Eingang 0 der Analog–E/A–Baugruppe verwendet
Für Eingang 1 der Analog–E/A–Baugruppe verwendet
IR 002
IR 003
IR 004
24 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01107IR 01200 bis IR 01207
1 analoger AusgangAusgang 1: IR 013
Keine Ausgänge 8 AusgängeIR 01400 bis IR 01407
Für Eingang 2 der Temperaturfühler–Baugruppe verwendet
Für Eingang 3 der Temperaturfühler–Baugruppe verwendet
IR 005
IR 006
IR 007
Für den Ausgang der Analog–E/A–Baugruppe verwendet
Bitte nicht verwenden
Bits
Mit Ausnahme der CPM1A–TS002/102–Temperaturfühler–Baugruppen kön-nen bis zu 3 Erweiterungsbaugruppen (Analog–E/A–Baugruppen, Temperatur-fühler–Baugruppen oder CompoBus/s–Baugruppen) mit einer CPM1A– oderCPM2A–SPS verbunden werden. Nur eine CPM1A–TS002/102–Temperatur-fühler–Baugruppe kann an die SPS angeschlossen werden. (Sehen Sie Seite301 für einen Beispiel der CPM1A–TS002/102–Zuweisungen.)
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
301
Beispiel: Konfiguration, einschließlich der Temperaturfühler–Baugruppe mit 4 Eingängen undCompoBus/s–Link–Baugruppe
36 EingängeIR 00000 bis IR 00011IR 00100 bis IR 00111IR 00200 bis IR 00211
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
2 TemperatureingängeEingang 0: IR 003Eingang 1: IR 004Eingang 2: IR 005Eingabe 3: IR 006
CPU–Baugruppen mit 60 E/A–Anschlüssen
Temperaturfühler–Baugrp.CPM1A–TS002/102
Bitte nicht verwenden
8 EingangsbitsIR 00700 bis IR 00707
CompoBus/S–E/A–Link–Baugrp. CPM1A-SRT21
IR 012
IR 013
Bitte nicht verwenden
Für Eingang 0 der Temperaturfühler–Baugruppe verwendet
Für Eingang 1 der Temperaturfühler–Baugruppe verwendet
IR 002
IR 003
IR 004
24 AusgängeIR 01000 bis IR 01007IR 01100 bis IR 01107IR 01200 bis IR 01207 Keine Ausgänge
8 AusgangsbitsIR 01300 bis IR 01307
Für Eingang 2 der Temperaturfühler–Baugruppe verwendet
Für Eingang 3 der Temperaturfühler–Baugruppe verwendet
IR 005
IR 006
IR 007 Bitte nicht verwenden
Bits
Nur eine Temperaturfühler–Baugruppe mit 4 Eingängen (CPM1A–TS002/102)kann an die SPS angeschlossen werden. Die CPM1A–TS002/102 kann jedochmit einer E/A–Erweiterungsbaugruppe oder einer anderen Erweiterungsbau-gruppe verbunden werden.
5-3 E/A–Zuweisung für CPM2C–SPS–Systeme
5-3-1 CPU–BaugruppenAnzahl der E/A(auf der CPU–Baugruppe)
Modell–nummer
E/A Zugewiesene Bits Max. Anzahl derE/A–
Erweiterungs–baugruppen
Max. Anzahl derE/A
(sehen SieHinweis 1)
10 CPM2C-10CDR-DCPM2C-10C1DR-DCPM2C-10CDTC-D
Eingang 6 Eingänge: 00000 ... 00005 5 130
CPM2C 10CDTC DCPM2C-10C1DTC-DCPM2C-10C1DTC-DCPM2C-10C1DT1C-D
Ausgang 4 Ausgänge: 01000 ... 01003
20 CPM2C-20CDTC-DCPM2C-20C1DTC-D
Eingang 12 Eingänge: 00000 ... 00011 5 140CPM2C 20C1DTC DCPM2C-20C1DTC-DCPM2C-20C1DT1C-D
Ausgang 8 Ausgänge: 01000 ... 01007
Hinweis 1. Die Werte für die max. Anzahl der E/A in der obenstehenden Tabelle bein-halten auch E/A von E/A–Erweiterungsbaugruppen.
2. Obwohl nur bis zu 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen miteiner CPM2C–SPS verbunden werden können, können nicht mehr als 10Eingangs– und 10 Ausgangsworten zugewiesen werden.
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
302
CPU–Baugruppenzuweisung• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsbits werden von IR 00000 an beginnend zugeordnet.
• Ausgangsbits werden von IR 01000 an beginnend zugeordnet.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,können nicht als Arbeitsmerker verwendet werden.
CPU–Baugruppe mit 10 E/A–Anschlüssen
CPM2C-10CjDjj-j
Eingänge
Ausgänge
IR 000
IR 010
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
6 EingängeIR 00000 bis IR 00005
4 AusgängeIR 01000 bis IR 01003
Bits
CPU–Baugruppe mit 20 E/A–Anschlüssen
CPM2C-20CjDjj-j
Eingänge
Ausgänge
IR 000
IR 010
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
Bits
5-3-2 E/A–ErweiterungsbaugruppenAnzahl der E/A Modellnummer E/A Zugewiesene Bits Max. Anzahl der
Baugruppen
8 CPM2C-8EDC Eingang 8 Eingänge: Wort (m+1), Bit 00 bis 07 58 C C 8 C
Ausgang ---
5
16 CPM2C-16EDC Eingang 16 Eingänge: Wort (m+1), Bits 00 bis 15 56 C C 6 C
Ausgang ---
5
8 CPM2C-8ERCPM2C-8ETC
Eingang --- 5CPM2C-8ETCCPM2C-8ET1C Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07
16 CPM2C-16ETCCPM2C 16ET1C
Eingang --- 56 C C 6 CCPM2C-16ET1C Ausgang 16 Ausgänge: Wort (n+1), Bits 00 bis 15
5
10 CPM2C-10EDR Eingang 6 Eingänge: Wort (m+1), Bits 00 bis 05 50 C C 0
Ausgang 4 Ausgänge: Wort (n+1), Bits 00 bis 03
5
24 CPM2C-24ETCCPM2C 24ET1C
Eingang 16 Eingänge: Wort (m+1), Bits 00 bis 15 5C C CCPM2C-24ET1C Ausgang 8 Ausgänge: Wort (n+1), Bit 00 bis 07
5
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
303
Hinweis “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oder dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, falls diese schon angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oder dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, falls diese schon angeschlossen ist.
E/A–Erweiterungsbaugruppenzuweisung• In den folgenden Diagrammen kennzeichnen schattierte Bereiche Bits, die
physikalische Eingänge oder Ausgänge darstellen.
• Eingangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort(m+1) zugewiesen, wobei “m” das letzte Eingangswort ist, das der CPU–, dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, fall diese angeschlossen ist.
• Ausgangsmerker werden E/A–Erweiterungsbaugruppen, beginnend mit Wort(n+1) zugewiesen, wobei “n” das letzte Eingangswort ist, das der CPU–, dervorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zugewie-sen wird, fall diese angeschlossen ist.
• Alle Bits der Ausgangsworte, die nicht als Ausgangsbits verwendet werden,können als Arbeitsmerker verwendet werden.
• Alle Bits der Eingangsworte, die nicht als Eingangsbits verwendet werden,können nicht als Arbeitsmerker verwendet werden.
E/A–Erweiterungsbaugruppe mit 8 Eingängen
CPM2C-8EDC
Eingänge m + 1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Bitte nicht verwenden
8 EingängeWort (m+1) Bit 00bisWort (m+1) Bit 07
Keine Ausgänge
Bits
E/A–Erweiterungsbaugruppe mit 16 Eingängen
CPM2C-16EDC
Eingänge m + 1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
16 EingängeWort (m+1), Bit 00bisWort (m+1), Bit 15
Keine Ausgänge
Bits
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
304
E/A–Erweiterungsbaugruppen mit 8 Ausgänge
CPM2C-8ERCPM2C-8ETCCPM2C-8ET1C
Ausgänge n+1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Keine Eingänge
8 AusgängeWort (n+1), Bit 00bisWort (n+1), Bit 07
Bits
E/A–Erweiterungsbaugruppe mit 16 Ausgängen
CPM2C-16ETCCPM2C-16ET1C
Ausgänge n+1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Keine Eingänge
16 AusgängeWort (n+1), Bit 00bisWort (n+1), Bit 15
Bits
E/A–Erweiterungsbaugruppe mit 10 E/A–Anschlüssen
CPM2C-10EDR
Eingänge m + 1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
6 EingängeWort (m+1), Bit 00bisWort (m+1), Bit 05
4 AusgängeWort (n+1), Bit 00bisWort (n+1), Bit 03
Ausgänge n+1
Bitte nicht verwenden
Bits
E/A–Erweiterungsbaugruppe mit 24 E/A–Anschlüssen
CPM2C-24ETCCPM2C-24ET1C
Eingänge m + 1
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
16 EingängeWort (m+1), Bit 00bisWort (m+1), Bit 15
8 AusgängeWort (n+1), Bit 00bisWort (n+1), Bit 07
Ausgänge n+1
Bits
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
305
5-3-3 ErweiterungsbaugruppenBaugruppe Modell–
nummerE/A Zugewiesene Worte Max. Anzahl der
Baugruppen
Analoge E/A–Baugruppe CPM2C-MAD11 Eingang 2 Eingänge: m+1, m+2 4a oge / aug u e C C
Ausgang 1 Ausgang: n+1
Temperaturfühler–Baugruppe CPM2C-TS001CPM2C TS101
Eingang 2 Eingänge: m+1, m+2 4e e a u ü e aug u e C C S00CPM2C-TS101 Ausgang ---
CompoBus/S–E/A–Link–B
CPM2C-SRT21 Eingang 1 Eingang: m + 1 5Co o us/S /Baugruppe
C C S
Ausgang 1 Ausgang: n+1
5
Hinweis 1. “m”: bezeichnet das letzte Eingangswort, das der CPU–Baugruppe oderder vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-gewiesen wird, falls diese angeschlossen ist.
“n”: bezeichnet das letzte Ausgangswort, das der CPU–Baugruppe oderder vorhergehenden Erweiterungs– oder E/A–Erweiterungsbaugruppe zu-gewiesen wird, falls diese angeschlossen ist.
2. Da die CPM2C–MAD11–Analog–E/A–Baugruppe und die CPM2C–TS001/101–Temperaturfühler–Baugruppe jeweils 2 E/A–Worte benötigen,können nur vier dieser Baugruppen an die SPS angeschlossen werden.(Die CPU–Baugruppe selbst benötigt ein Eingangswort und ein Ausgangs-wort.) Eine andere Baugruppe, wie eine E/A–Erweiterungsbaugruppe oderCPM2C–SRT21–CompoBus/S–E/A Link–Baugruppe kann jedoch zusätz-lich zu den 4 Analog–E/A–Baugruppen oder Temperaturfühler–Baugrup-pen angeschlossen werden.
Analog–E/A–Baugruppe
CPM2C-MAD11
2 AnalogeingängeEingang 0: Wort (m+1)Eingang 1: Wort (m + 2)
1 analogerAusgangAusgang 0:Wort (n + 1)
Temperaturfühler–Baugruppe
CPM2C-TS001/TS101
2 Temperatur–eingängeEingang 0: Wort (m+1)Eingang 1: Wort (m + 2)
Keine Ausgänge
CompoBus/S–E/A–Link–Baugruppe
CPM2C-SRT21
8 EingangsmerkerEingang: Wort (m + 1)
8 AusgangsmerkerAusgang: Wort (n + 1)
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
306
Hinweis Eingangsmerker 00 bis 07 in Wort (m+1) sind Ausgänge des Masters. Aus-gangsmerker 00 bis 07 in Wort (n+1) sind Eingänge des Masters.
5-3-4 Beispiele für die Zuweisung von Erweiterungs– undE/A–Erweiterungsbaugruppen
Bis zu 5 Erweiterungs– oder E/A–Erweiterungsbaugruppen können mit einerCPM2C SPS verbunden werden. Ein– und Ausgangsbits werden automatischzugewiesen, beginnend mit der CPU–Baugruppe und anschließend die Erwei-terungs– und E/A–Erweiterungsbaugruppen, in der Reihenfolge, in der sie an-geschlossen sind. Der Eingangsbereich besteht aus den 10 Worten von IR 000bis 009 und der Ausgangsbereich aus den 10 Worten von IR 010 bis 019. Ob-wohl E/A–Bits automatisch zugewiesen werden, ist es erforderlich, sicherzu-stellen, dass sowohl die Anzahl der Ein– und der Ausgangsworte 10 nicht über-schreitet. Zum Beispiel benötigen Analog–E/A– und Temperaturfühler–Bau-gruppen jeweils 2 Eingangsworte; somit ist es nicht möglich, 5 dieser Baugrup-pen anzuschließen.
Beispiel: CPU–Baugruppe mit 20 Ein–/Ausgängen und zusätzlicher E/A–Erweiterungsbaugruppemit 24 E/A
EingängeIR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
AusgängeIR 010
IR 011
Bitte nicht verwenden
E/A–Erweiter.–baugrp.(24 E/A–Anschlüssen)
16 EingängeIR 00100bisIR 00115
8 AusgängeIR 01100 bis IR 01107
CPU–Baugruppe(20 E/A–Anschl.)
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
Bits
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
307
Beispiel: CPU–Baugruppe mit 20 Ein–/Ausgängen und 5 zusätzlichenE/A–Erweiterungsbaugruppen mit 24 E/A
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
IR 012
IR 013
IR 014
IR 002
IR 003
IR 004
IR 005
E/A–Erweiterungs–baugruppe
(24 E/A–Anschlüsse)
16 EingängeIR 00100bisIR 00115
8 AusgängeIR 01100 bis IR 01107
CPU–Baugruppe mit20 E/A–Anschlüssen
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
E/A–Erweiterungs–baugruppe
(24 E/A–Anschlüsse)
16 EingängeIR 00200bisIR 00215
8 AusgängeIR 01200 bis IR 01207
E/A–Erweiterungs–baugruppe
(24 E/A–Anschlüsse)
16 EingängeIR 00400bisIR 00415
8 AusgängeIR 01400 bis IR 01407
E/A–Erweiterungs–baugruppe
(24 E/A–Anschlüsse)
16 EingängeIR 00300bisIR 00315
8 AusgängeIR 01300 bis IR 01307
E/A–Erweiterungs–baugruppe
(24 E/A–Anschlüsse)
16 EingängeIR 00500bisIR 00515
8 AusgängeIR 01500 bis IR 01507
IR 015
Bits
Beispiel: Konfiguration, einschließlich E/A–Erweiterungsbaugruppen und einer CompoBus/S–E/ALink–Baugruppe
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
IR 012
IR 013
IR 002
IR 003
E/A–Erweiterungs–baugruppe
(16 Eingänge)
16 EingängeIR 00100bisIR 00115
Keine Ausgänge
CPU–Baugruppe mit20 E/A–Anschlüssen
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
E/A–Erweiterungs–baubaugruppe(16 Eingänge)
16 EingängeIR 00200bisIR 00215
Keine Ausgänge
E/A–Erweiterungs–baugruppe
(16 Ausgänge)
Keine Eingänge
16 AusgängeIR 01200bisIR 01215
E/A–Erweiterungs–baugruppe
(16 Ausgänge)
Keine Eingänge
16 AusgängeIR 01100bisIR 01115
CompoBus/S–E/A–Link–Baugruppe
8 EingangsmerkerIR 00300bisIR 00307
8 AusgangsmerkerIR 01300 bis IR 01307
Bitte nicht verwenden
Bits
5-3AbschnittE/A–Zuweisung für CPM2C–SPS–Systeme
308
Beispiel: Konfiguration, einschließlich Analog–E/A–Baugruppen, Temperaturfühler–Baugruppenund E/A–Erweiterungsbaugruppe
Eingänge
IR 000
IR 001
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Ausgänge
IR 010
IR 011
Bitte nicht verwenden
IR 012
IR 013
IR 002
IR 003
IR 004
IR 005
Analog–E/A–Baugruppe 1
CPM2C–MAD11
2 AnalogeingängeEingang 0: IR 001Eingang 1: IR 002
1 analoger AusgangAusgang: IR 011
CPU–Baugruppe mit20 E/A–Anschlüssen
12 EingängeIR 00000 bis IR 00011
8 AusgängeIR 01000 bis IR 01007
Temperaturfühler–Baugruppen
CPM2C–TS001
2 Temperatur–eingängeEingang 0: IR 003Eingang 1: IR 004
Keine Ausgänge
Temperaturfühler–Baugruppe 2
CPM2C-TS101
2 Temperatur–eingängeEingang 0: IR 007Eingang 1: IR 008
Keine Ausgänge
Analog–E/A–Baugruppe 2
CPM2C–MAD11
2 AnalogeingängeEingang 0: IR 005Eingang 1: IR 006
1 analoger AusgangAusgang: Wort 012
E/A–Erweiterungs–baugrp. (24 E/A)
16 EingängeIR 00900bisIR 00915
8 AusgängeIR 01300 bis IR 01307
IR 006
IR 007
IR 008
IR 009
Für Eingang 0 der Analog–E/A–Baugruppe 1 verwendet
Für Eingang 1 der Analog–E/A–Baugruppe 1 verwendet
Für Eingang 0 der Temperaturfühler–Baugruppe 1 verwendet
Für Eingang 1 der Temperaturfühler–Baugruppe 1 verwendet
Für Eingang 0 der Analog–E/A–Baugruppe 2 verwendet
Für Eingang 1 der Analog–E/A–Baugruppe 2 verwendet
Für Eingang 0 der Temperaturfühler–Baugruppe 2 verwendet
Für Eingang 1 der Temperaturfühler–Baugruppe 2 verwendet
Für den Ausgang von Analog–E/A–Baugruppe 1 verwendet
Für den Ausgang von Analog–E/A–Baugruppe 2 verwendet
Bits
309
Kapitel 6Kontaktplan–Programmierung
Dieses Kapitel enthält eine Einführung in die Grundbegriffe der Kontaktplan–Programmierung. Es stellt die Befehle vor, diedazu verwendet werden, die Basisstruktur des Kontaktplans zu erstellen und die Ausführung zu steuern. Der vollständigeBefehlssatz wird in Kapitel 7 Befehlssatz beschrieben.
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
(Flankengesteuerte Ausführung) 331 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6-1AbschnittGenerelle Vorgehensweise
310
6-1 Generelle VorgehensweiseEs gibt einige grundsätzliche Schritte, die beim Erstellen eines Programms be-achtet werden müssen. Im Anhang D E/A–Zuweisungs–Formblatt und AnhangE Programm–Code–Formblatt sind Formblätter vorbereitet, die eine Hilfestel-lung beim Programmieren bieten.
1, 2, 3... 1. Erstellen Sie eine Liste aller E/A–Geräte mit zugeordneten Ein–/Ausgän-gen und fertigen Sie eine Tabelle an, in der jedem E/A–Gerät die entspre-chenden E/A–Bits zugewiesen werden.
2. Falls Sie LR–Bits für die Link–Verbindung zweier SPS verwenden möch-ten, sollten Sie auch hierfür ein entsprechendes Formblatt anfertigen, dassdie entsprechenden Zuweisungen enthält.
3. Ermitteln Sie, welche Worte für Arbeitsmerker verfügbar sind und fertigenSie eine entsprechende Tabelle an, aus der Sie die Zuweisungen jederzeitentnehmen können.
4. Ferner schlagen wir vor, dass Sie bei der Programmiervorbereitung Tabel-len mit TC– und Sprungnummern erstellen. Bedenken Sie dabei, dass dieSprungnummern 01 bis 99 jeweils nur einmal verwendet werden können.(Sehen Sie für weitere Information zur TC–Nummer den Abschnitt 7-15Zeitgeber– und Zählerbefehle; Sprungnummern werden nachfolgend er-läutert).
5. Erstellen Sie den Kontaktplan.6. Geben Sie das Programm in die CPU ein. Falls Sie hierfür eine Program-
mierkonsole verwenden, so arbeitet diese in AWL.7. Überprüfen Sie das Programm auf Syntaxfehler und korrigieren Sie diese.8. Starten Sie das Programm, um es auf Ausführungsfehler zu überprüfen
und korrigieren Sie diese ggf.9. Ist das vollständige Steuerungssystem nach Installation betriebsbereit,
sollten Sie das Programm starten und noch eventuell erforderliche Feinab-stimmungen vornehmen.
Die Grundlagen der Kontaktplan– und AWL–Programmierung werden in Ab-schnitt 6-3 Kontaktplan–Grundlagen erläutert. Beschreibungen der Programm-vorbereitung und –eingabe über die Programmierkonsole finden Sie in denTechnischen Handbüchern der SPS–Systeme der C–Serie CPM1, CPM1A,CPM2A, CPM2C und SRM1.
Am Ende dieses Kapitels 6 werden fortgeschrittene Programmierfunktionen,Vorsichtsmaßnahmen beim Programmieren und die Programmausführung er-läutert. Eine vollständige Darstellung aller Sonderfunktions–Befehle finden Siein Kapitel 7 Befehlssatz. Sehen Sie die technischen Handbücher der CPM1,CPM1A, CPM2A, CPM2A, CPM2C und SRM1–Master–Baugruppe für weitereInformationen zur Eingabe von Befehlen über die Programmierkonsole undCX–P in SPS–Systeme der C–Serie. Kapitel 9 Fehlersuche enthält Informatio-nen zur Fehlersuche.
6-2AbschnittBefehlsterminologie
311
6-2 BefehlsterminologieBei der Kontaktplan–Programmierung gibt es zwei Befehlsarten. Befehle der ei-nen entsprechen den Bedingungen im Kontaktplan und werden nur bei der Pro-grammkonvertierung in AWL als Befehle angesehen; die andere umfasst Be-fehle, die letztendlich entsprechend den Bedingungen im Kontaktplan ausge-führt werden.
Die meisten Befehle besitzen mindestens einen oder mehrere Operanden, mitdenen sie verknüpft sind. Die Operanden weisen auf Daten hin bzw. übergebendiese, mit denen der Befehl ausgeführt wird. Gelegentlich können sie als echtenumerische Werte eingegeben werden. Gewöhnlich handelt es sich aber umAdressen von Datenbereichs–Worten oder Bits. Zum Beispiel verschiebt einMOVE–Befehl, dem IR 000 als Quellenoperand zugewiesen ist, den Inhalt vonIR 000 auf eine andere Adresse. Diese Zieladresse ist ebenfalls über ein Ope-rand festgelegt. Ein Bit, dessen Adresse als Operand gekennzeichnet ist, heißtOperandenbit; ein Wort, dessen Adresse als Operand gekennzeichnet ist, heißtOperandenwort. Wird ein echter numerischer Wert als Konstante eingegeben,wird ein # vorangestellt, um kenntlich zu machen, dass es sich nicht um eineAdresse handelt.
Weitere Termini zur Befehlsbeschreibung finden Sie in Kapitel 7 Befehlssatz.
6-3 KontaktplanstrukturEin Kontaktplan besteht aus einer auf der linken Seite vertikal nach unten lau-fenden Linie, der Stromschiene, von der nach rechts horizontale Linien, dieNetzwerke, abzweigen. Entlang der Netzwerke sind die Bedingungen aufge-führt, die zu den Befehlen auf der rechten Seite führen. Die logische Verknüfungdieser Bedingungen bestimmt wann und wie die Befehle auf der rechten Seiteausgeführt werden. Nachfolgend sehen Sie ein Kontaktplanbeispiel.
00000 20000
Befehl
Befehl
00403
00001
HR 0109 LR 000325208 20001
00501 00502 00503 00504
20002
00100 00002
00010
00011
00003 HR 0500 00007 TIM 001 LR 0515
21001 21002
00405
21005 21007
Wie aus dieser Zeichnung ersichtlich ist, können die Strompfade verzweigenund wieder zusammengeführt werden. Die vertikalen Linienpaare heißen Be-dingungen. Bedingungen mit vertikalen Linien ohne eine Diagonale repräsen-tieren die Schließer–Bedingung und entsprechen einem LOAD–, AND– oderOR–Befehl. Paarweise vertikale Linien mit einer Diagonalen repräsentieren dieÖffner–Bedingung und entsprechen einem LOAD NOT–, AND NOT– oder ORNOT–Befehl. Die Ziffer oberhalb der Bedingungen zeigt das Operandenbit fürden Befehl. Es ist der Zustand des Bits in Zusammhang mit jeder Bedingung aufdem Strompfad, der die Ausführungsbedingung für den nachfolgenden Befehlbestimmt. Die Art und Weise der Ausführung jedes Befehls entsprechend einerBedingung wird nachfolgend beschrieben. Bevor wir diese jedoch beachten,gibt es einige zu erläuternde Basisbegriffe.
Hinweis Beim Anzeigen von Kontaktplänen mit CX–P wird (wahlweise) eine zweiteStromschiene rechts auf dem Kontaktplan angezeigt, die mit allen Anweisun-gen an deren rechter Seite verbunden ist. Dies ändert nicht an der Kontaktplan–Programmausführung im funktionalen Sinn. Keine Bedingungen können zwi-
6-3AbschnittKontaktplanstruktur
312
schen den Befehlen auf der rechten Seite und der rechten Stromschiene einge-fügt werden, d.h. es müssen alle Befehle auf der rechten Seite direkt mit derrechten Stromschiene verbunden werden. Sehen Sie bitte das CX–P–Bedie-nerhandbuch: SPS der C–Serie für weitere Einzelheiten.
6-3-1 Basis–Begriffe
Abhängig von dem ihr zugewiesenen Operandenbit hat jede Bedingung entwe-der den Status EIN oder AUS. Eine Schließer–Bedingung ist EIN, wenn dasOperandenbit GESETZT ist. Eine Öffner–Bedingung ist EIN, wenn das Operan-denbit NICHT GESETZT ist; sie ist AUS, wenn das Operandenbit GESETZT ist.Allgemein sollte eine Schließer–Bedingung verwendet werden, wenn etwas inFolge des Bitzustands GESETZT geschehen soll. Eine Öffner–Bedingungsollte verwendet werden, wenn etwas in Folge des Bitzustands NICHT GE-SETZT geschehen soll.
Befehl
Befehl
00000
00000Der Befehl wird ausgeführt,wenn IR Bit 00000GESETZT ist.
Der Befehl wird ausgeführt,wenn IR Bit 00000 NICHTGESETZT ist.
Schließer–Bedingung
Öffner–Bedingung
In der Kontaktplan–Programmierung bestimmt die logische Verknüpfung derEIN– und AUS–Bedingungen vor einem Befehl die zusammengesetzte Bedin-gung, unter der der Befehl ausgeführt wird. Diese Bedingung, die entweder EINoder AUS ist, wird Ausführungsbedingung genannt. Alle Befehle, mit Ausnahmeder LOAD–Befehle, besitzen Ausführungsbedingungen.
Jedem Befehl im Kontaktplan kann jedes Bit aus den IR–, SR–, HR–, LR– oderTC–Bereichen als Operand zugewiesen werden. Das bedeutet, dass die Bedin-gungen im Kontaktplan über E/A–Bits, Merker, Arbeitsmerker, Zeitgeber/Zählerusw. bestimmt werden. Die LOAD– und OUTPUT–Befehle können darüber hin-aus Bits aus dem TR–Bereich verwenden; jedoch nur in besonderen Applikatio-nen. Sehen Sie für weitere Informationen Abschnitt 6-3-8 Verzweigungsbe-fehle.
Das Verhältnis der Bedingungen untereinander legt fest, wie Bedingungen undBefehle miteinander korrespondieren. Jede Gruppe von Bedingungen, die imZusammenwirken ein logisches Ergebnis erzeugt, wird logischer Block ge-nannt. Obwohl Kontaktplanprogramme geschrieben werden können, ohne denjeweiligen logischen Block zu analysieren, ist ein Verständnis des logischenBlocks für effizientes Programmieren notwendig und unabdingbar, wenn dasProgramm als AWL erstellt werden soll.
Ein Befehlsblock besteht aus allen Befehlen, die innerhalb des Kontaktplansmiteinander im Verbindung stehen, umfasst also die Befehle, zwischen deneneine waagerechte Line quer über den Kontaktplan gezogen werden kann, ohneeine senkrechte Line zu schneiden und den nächsten Bereich, in dem einegleichartige Linie gezogen werden kann.
6-3-2 AWLDer Kontaktplan kann nicht unmittelbar über eine Programmierkonsole in dieSPS eingegeben werden. Vielmehr ist es notwendig, den Kontaktplan zunächstin die AWL zu konvertieren. Die AWL beinhaltet exakt die gleichen Informatio-nen wie der Kontaktplan, kann jedoch direkt in die SPS eingegeben werden. Eskann auch direkt in AWL programmiert werden; dies ist jedoch für Anfänger oderbei der Erstellung komplexer Programme nicht empfehlenswert. Darüberhinaus
Schließer– und Öffner–Bedingungen
Ausführungsbedingungen
Operandenbits
Logische Blöcke
Befehlsblock
6-3AbschnittKontaktplanstruktur
313
wird unabhängig davon, mit welchem Gerät (PC/AT, Programmierkonsole) pro-grammiert wurde, das Programm selbst als AWL im Speicher abgelegt, so daßes unabdingbar ist, die AWL zu verstehen.
Basierend auf der Bedeutung der Programmierkonsole als Programmiergerätund der Wichtigkeit eines umfassenden Verständnisses der AWL wird diese an-hand des folgenden Kontaktplans erläutert. Die AWL ist nicht erforderlich, wennSie das Programm über den CX–P eingeben (obwohl Sie die AWL mit demCX–P verwenden können, wenn Sie dies vorziehen).
Das Programm belegt im Programmspeicher entsprechende Adressen. Adres-sen des Programmspeichers unterscheiden sich von denen anderer Speicher-bereiche, da sich auf jeder Adresse nicht notwendigerweise die gleiche Anzahlvon Daten befindet. Vielmehr befinden sich auf jeder Adresse die von einem Be-fehl benötigten Definitionen und Operanden (wird nachfolgend ausführlicherbeschrieben) gespeichert. Da einige Befehle keine, andere jedoch bis zu dreiOperanden erfordern, können ein bis zu vier Worte der Programmspeicher–Adressen belegt sein.
Programmspeicher–Adressen beginnen bei 00000 und setzen sich bis zur Ka-pazitätsgrenze des Programmspeichers fort. Das erste Wort auf jeder Adressebestimmt den Befehl. Alle vom Befehl verwendeten Zuweiser sind ebenfalls indiesem ersten Wort enthalten. Auch wenn ein Befehl nur einen einzigen Bitope-randen (ohne Zuweiser) benötigt, wird dieser in der gleichen Zeile wie der Be-fehl programmiert. Die übrigen Worte, die für den Befehl erforderlich sind, bein-halten die Operanden, die angeben, welche Daten verwendet werden. Bei derAWL werden alle Befehle im gleichen Format gespeichert; nämlich ein Wort proZeile und zwar in der Reihenfolge der Kontaktplan–Symbole. Die nachfolgendeTabelle zeigt ein Beispiel für die AWL. Die darin verwendeten Befehle werden inanderen Kapiteln des Handbuches erläutert.
Adresse Befehl Operanden
00000 LD HR 0001
00001 AND 00001
00002 OR 00002
00003 LD NOT 00100
00004 OR 00101
00005 AND LD
00006 MOV (21)
000
DM 0000
00007 CMP (20)
DM 0000
HR 00
00008 AND 25505
00009 OUT 20000
00010 MOV (21)
DM 0000
DM 0500
00011 LD 00502
00012 AND 00005
00013 OUT 20001
In die Adressen– und Befehlsspalten der AWL–Tabelle werden nur Daten desBefehlsworts eingetragen. In allen anderen Zeilen bleiben die beiden linkenSpalten frei. Sollte der Befehl keinen Zuweiser oder Bit–Operanden benötigen,bleibt die Operanden–Spalte in der ersten Zeile leer. Es wird empfohlen, jedeleere Spalte (alle Befehlsworte, die keine Daten benötigen) durchzustreichen,so daß die Datenspalte schnell auf eventuell ausgelassene Operanden über-prüft werden kann.
Programmspeicher–Struktur
6-3AbschnittKontaktplanstruktur
314
Die Programmadressen müssen während der Programmierrung nicht eingege-ben werden, sondern werden automatisch fortlaufend angezeigt. Eine dezi-dierte Eingabe ist jedoch möglich, wenn aus irgendeinem Grund für den Befehleine bestimmte Programmadresse gewünscht wird. Bei der Konvertierung inAWL sollte mit der Programmadresse 00000 begonnen werden, es sei denn,dass aus besonderen Gründen eine andere Start–Programmadresse sinnvollerscheint.
6-3-3 KontaktplanbefehleKontaktplanbefehle sind jene Befehle, die die Bedingungen des Kontaktplansdarstellen. Die Kontaktplanbefehle selbst bzw. in Verbindung mit den im wei-teren erläuterten Befehlsblöcken gestalten die Ausführungsbedingungen, aufdenen die Ausführung aller anderen Befehle beruht.
Diese erste Bedingung steht im Kontaktplan am Anfang eines jeden logischenBlocks und entspricht dem LOAD bzw. LOAD NOT–Befehl. Jeder dieser Be-fehle benötigt in der AWL eine Zeile. Im nachfolgenden Beispiel wird “Befehl” alsPlatzhalter für alle anderen in folgenden Kapiteln des Handbuch erläuterten Be-fehle verwendet.
00000
00000
LOAD–Befehl
LOAD NOT–BEFEHL
Adresse Befehl Operanden
00000 LD 00000
00001 Befehl
00002 LD NOT 00000
00003 Befehl
Ist in dem Strompfad nur eine einzige Bedingung vorhanden, ist die Ausfüh-rungsbedingung für den Befehl WAHR, wenn die Bedingung EIN ist. Für denLOAD–Befehl (d.h. eine Schließer–Bedingung) wäre die Ausführungsbedin-gung WAHR, wenn IR 00000 GESETZT ist; für den LOAD–NOT–Befehl (d.h.eine Öffner–Bedingung) wäre sie WAHR, wenn IR 00000 NICHT GESETZT ist.
Folgen zwei oder mehr Bedingungen in einem Strompfad aufeinander, ent-spricht die erste dem LOAD oder LOAD NOT–Befehl und die übrigen den AND–und AND NOT–Befehlen. Das nachfolgende Beispiel zeigt drei Bedingungen,welche in der Reihenfolge von links nach rechts einem LOAD–, einem ANDNOT und einem AND–Befehl entsprechen. Wiederum benötigt jeder dieser Be-fehle in der AWL eine Zeile.
00000 00100 LR 0000Befehl
Adresse Befehl Operanden
00000 LD 00000
00001 AND NOT 00100
00002 AND LR 0000
00003 Befehl
Die Ausführungsbedingung des Befehls würde nur dann WAHR sein, wenn alledrei Bedingungen WAHR sind, d.h. wenn IR 00000 auf EIN, IR 00100 auf AUSund LR 0000 auf EIN gesetzt sind.
Aufeinanderfolgende AND–Befehle können einzeln betrachtet werden, wobeijeweils die logische AND–Verknüpfung der Ausführungsbedigung (d.h. die Ge-samtheit aller Bedingungen bis zu diesem Punkt) und der Zustand des demAND–Befehl zugeordneten Operandenbits zu beachten ist. Falls beide den Zu-stand WAHR aufweisen, folgt hieraus eine WAHR–Ausführungsbedingung mitdem Zustand WAHR für den nächsten Befehl. Falls irgendeine Bedingung
LOAD und LOAD NOT
AND und AND NOT
6-3AbschnittKontaktplanstruktur
315
FALSCH ist, ist das Gesamtergebnis ebenfalls AUS. Die Ausführungsbedin-gung für den ersten AND–Befehl in einer Befehlsfolge ist die erste Bedingungfür den Strompfad.
Jeder von mehreren aufeinanderfolgenden AND NOT–Befehlen verfügt zwi-schen der Ausführungsbedingung und dem invertierten Operandenbit über einelogische AND–Verknüpfung.
Liegen zwei oder mehr Bedingungungen auf verschiedenen parallel zueinanderverlaufenden Strompfaden, die dann zusammengeführt werden, entspricht dieerste Bedingung einem LOAD oder LOAD NOT–Befehl, die übrigen Bedingun-gen einem OR oder OR NOT–Befehl. Das nachfolgende Beispiel zeigt drei Be-dingungen, die in ihrer Reihenfolge von oben nach unten einem LOAD NOT–,OR NOT– und OR–Befehl entsprechen. Wiederum benötigt jeder dieser Be-fehle in der AWL eine Zeile.
Befehl
00100
LR 0000
00000
Adresse Befehl Operanden
00000 LD NOT 00000
00001 OR NOT 00100
00002 OR LR 0000
00003 Befehl
Die Ausführungsbedingung des Befehls ist WAHR, wenn irgendeine der dreiBedingungen WAHR ist, d.h. wenn IR 00000 NICHT GESETZT ist, IR 00100NICHT GESETZT ist und LR 0000 GESETZT ist.
OR– und OR NOT–Befehle können einzeln betrachtet werden, wobei jeweilsdie logische OR–Verknüpfung zwischen der Ausführungsbedingung und demStatus des dem OR–Befehl zugeordneten Operandenbits zu beachten ist. Isteine der Bedingungen WAHR, folgt hieraus eine WAHR–Ausführungsbedin-gung mit dem Zustand WAHR für den nächsten Befehl.
Sollen in einem komplizierteren Kontaktplan AND– und OR–Befehle miteinan-der verknüpft werden, können sie im Einzelfall einzeln betrachtet werden, wobeijeder Befehl eine logische Folge für die Ausführungsbedingung und das Ope-randenbit bewirkt. Das folgende Beispiel veranschaulicht, dass der Kontaktplanund die AWL der gleichen Logik folgen.
Befehl00002 0000300000 00001
00200
Adresse Befehl Operanden
00000 LD 00000
00001 AND 00001
00002 OR 00200
00003 AND 00002
00004 AND NOT 00003
00005 Befehl
OR und OR NOT
Verknüpfung von AND– undOR–Befehlen
6-3AbschnittKontaktplanstruktur
316
Hier bestimmt die AND–Verknüpfung zwischen dem Zustand von IR 00000 undIR 0001 die Ausführungsbedingung für OR mit dem Zustand von IR 00200. DasErgebnis bestimmt die Ausführungsbedingung für ein AND mit dem Status vonIR 00002, welches wiederum die Ausführungsbedingung für ein AND mit deminvertierten (d.h. und AND NOT) Zustand von IR 00003 festlegt.
In komplizierteren Kontaktplänen ist es jedoch notwendig, sich mit den logi-schen Blöcken auseinanderzusetzen, bevor die Ausführungsbedingung für denendgültigen Befehl ermittelt werden kann. Hier werden die Befehle AND LOADund OR LOAD benötigt. Nachfolgend sollen aber zunächst die Befehle erläutertwerden, die für ein einfaches Programms erforderlich sind.
6-3-4 OUTPUT und OUTPUT NOTDie einfachste Art der Ergebnissausgabe von miteinander verknüpften Ausfüh-rungsbedingungen ist die Verwendung der Befehle OUTPUT und OUTPUTNOT. Diese Befehle steuern den Zustand des gekennzeichneten Operanden-bits entsprechend der Ausführungsbedingung. Mit dem OUTPUT–Befehl wirddas Operandenbit, wenn und solange die Ausführungsbedingung WAHR ist,gesetzt und, wenn und solange die Ausführungsbedingung FALSCH ist, rück-gesetzt. Mit dem OUTPUT NOT–Befehl wird das Operandenbit, wenn und so-lange die Ausführungsbedingung FALSCH ist, gesetzt und, wenn und solangedie Ausführungsbedingung WAHR ist, zurückgesetzt. Dies ist nachfolgend dar-gestellt. Wie nachstehend dargestellt, erfordert jeder dieser Befehle in der AWLeine Zeile.
00000
01001
01000
00001
Adresse Befehl Operanden
00000 LD 00000
00001 OUT 01000
Adresse Befehl Operanden
00000 LD 00001
00001 OUT NOT 01001
Im obigem Beispiel ist IR 01000 solange EIN, wie IR 00000 EIN ist und IR 01001ist solange AUS, wie IR 00001 EIN ist. IR 00000 und IR 00001 sind hier Ein-gangsbits und IR 01000 und IR 01001 Ausgangsbits, die der CPU–Baugruppezugewiesen sind. Dies bedeutet, dass die Signale, die an den Eingängen derzugewiesenen IR 0000 und IR 00001 anliegen, die Ausgänge steuern, denen IR01000 und IR 01001 zugewiesen sind.
Die Zeit, in der ein Bit gesetzt oder nicht gesetzt ist, kann durch Verknüpfung derOUTPUT und OUTPUT NOT–Befehle mit einem Zeitgeber–Befehl gesteuertwerden. Sehen Sie für weitere Informationen Kapitel 7-15-1 Zeitgeber – TIM.
6-3AbschnittKontaktplanstruktur
317
6-3-5 Der END–BefehlDer letzte Befehl in einem einfachen Programm ist der END–Befehl. Wenn dieCPU das Programm durchläuft, führt sie alle Befehle bis zum ersten END–Be-fehl aus, bevor sie zum Programmanfang zurückkehrt und mit der Ausführungvon vorn beginnt. Zum Austesten eines Programms kann der END–Befehl anbeliebiger Stelle des Programms eingefügt werden, mit der Folge, dass alle Be-fehle im Programm nach dem END–Befehl nicht ausgeführt werden. Die Ziffer,die in der AWL hinter dem END–Befehl steht, ist der Funktions–Code, der zurEingabe der meisten Befehle in die SPS benötigt wird. Dieser Funktions–Codewird in nachfolgenden Abschnitten im Handbuch beschrieben. Der END–Befehlerfordert keinen Operanden und läßt sich nicht mit Ausführungsbedingungenverknüpfen.
Befehl00000 00001
END(01)Programmende
Adresse Befehl Operanden
00500 LD 00000
00501 AND NOT 00001
00502 Befehl
00503 END(01) ---
Ein Programm ohne END–Befehl kann nicht ausgeführt werden.
Jetzt sind Ihnen alle Befehle bekannt, die erforderlich sind, um einfache Ein–/Ausgabe–Programme zu schreiben. Bervor die Eingabe des Programms in dieSPS beschrieben wird, sollen noch einige Grundsätze bzgl. logischer Blöcke er-läutert werden.
6-3-6 Logikblock–BefehleLogikblock–Befehle entsprechen nicht etwa bestimmten Bedingungen in demKontaktplan, sondern beschreiben vielmehr die Beziehungen der logischenBlöcke untereinander. Der AND LOAD–Befehl führt eine logische UND–Ver-knüpfung der von zwei logischen Blöcken erzeugten Ausführungsbedingungendurch, während der OR LOAD–Befehl diese Ausführungsbedingungen durchODER verknüpft.
Obwohl auf den ersten Blick einfach strukturiert, erfordert der nachstehendeKontaktplan doch einen AND LOAD–Befehl.
Befehl00002
00003
00000
00001
Adresse Befehl Operanden
00000 LD 00000
00001 OR 00001
00002 LD 00002
00003 OR NOT 00003
00004 AND LD ---
AND LOAD
6-3AbschnittKontaktplanstruktur
318
Die beiden logischen Blöcke sind durch gestrichelte Linien gekennzeichnet.Das Beispiel verdeutlich, dass die Ausführungsbedingung WAHR ist, wenn eineder Bedingungen im linken logischen Block WAHR ist (also entweder IR 00000oder IR 00001 gesetzt ist) und eine der Bedingungen im rechten logischen BlockWAHR ist (also entweder IR 00002 EIN oder IR 00003 AUS ist).
Nur mit den AND– und OR–Befehlen läßt sich der obenstehende Kontaktplannicht in eine AWL konvertieren. Der Versuch einer AND–Verknüpfung zwischenIR 00002 und den Ergebnissen der OR–Verknüpfung zwischen IR 00000 und IR00001 misslingt, denn dann wird die OR NOT–Verknüpfung zwischen IR 00002und IR 00003 gelöscht und OR NOT steht schlußendlich als OR NOT–Verknüp-fung zwischen IR 0003 und dem Ergebnis der AND–Verknüfung zwischen IR00002 und dem ersten OR. Benötigt wird vielmehr ein unabhängiges OR (NOT)mit einer folgenden Möglichkeit der Verknüpfung der Ergebnisse.
Um dies zu erreichen, besteht die Möglichkeit, den LOAD– bzw. LOAD NOT–Befehl zwischen den logischen Blöcken in dem Strompfad zu verwenden. Dasbewirkt, dass die aktuelle Ausführungsbedingung in einem besonderen Puffergespeichert und der logische Prozeß dieses Ergebnisses zunächst übergangenwird. Die Verknüpfung dieser zwischengespeicherten und zunächst “nicht ver-wendeten” Ausführungsbedingung mit der dann aktuellen Ausführungsbedin-gung erfolgt mit den AND LOAD– und OR LOAD–Befehlen. Hier bezieht sich“LOAD” auf das Laden der letzten, nicht verwendeten Ausführungsbedingung.Eine in diesem Sinne nicht verwendete Ausführungsbedingung wird durch dieLOAD– oder LOAD NOT–Befehle für jede, außer der ersten Bedingung auf demStrompfad erzeugt.
Betrachtet man den obigen Kontaktplan unter dem Gesichtspunkt der AWL–Be-fehle, so ist die Bedingung für IR 00000 ein LOAD–Befehl und die anschlie-ßende Bedingung ein OR–Befehl hinsichtlich des Zustands von IR 00000 unddes von IR 00001. Die Bedingung für IR 00002 ist ein weiterer LOAD–Befehl unddie anschließende Bedingung ist ein OR NOT–Befehl; dies bedeutet eine OR–Verknüpfung zwischen dem Zustand von IR 00002 und dem invertierten Zu-stand von IR 00003. Um die endgültige Ausführungsbedingung für den Befehlzu ermitteln, wird das logische AND–Ergebnis der beiden aus den logischenBlöcken resultierenden Ausführungsbedingungen gebildet, was im BeispielfallAND LOAD ist. AND LOAD führt dies aus. Die AWL ist unter dem Kontaktplandargestellt. Der AND LOAD–Befehl erfordert keinen eigenen Operanden, weiler mit der zuvor ermittelten Ausführungsbedingung verknüpft ist. Auch hier wer-den Striche dazu verwendet, anzuzeigen, dass keine Operandenzuweisungoder kein Eingang erforderlich ist.
Im nachfolgenden Kontaktplan ist ein OR LOAD–Befehl zwischen dem oberemund unteren logischen Block erforderlich. Die Ausführungsbedingung für denBefehl ist WAHR, wenn entweder IR 00000 EIN und IR 0001 AUS ist oder wennIR 00002 und IR 00003 EIN sind. Die Behandlung des OR LOAD–Befehls in derAWL ist identisch mit der des AND LOAD–Befehls, mit dem Unterschied, dassdie aktuelle Ausführungsbedingung und die vorherige nicht verwendete Ausfüh-
OR LOAD
6-3AbschnittKontaktplanstruktur
319
rungsbedingung mit einer Oder–Verknüpfung zueinander in Beziehung gesetztwerden.
Befehl00000 00001
00002 00003
Adresse Befehl Operanden
00000 LD 00000
00001 AND NOT 00001
00002 LD 00002
00003 AND 00003
00004 OR LD ---
Selbstverständlich müssen in manchen Kontaktplänen sowohl die AND LOAD–als auch die OR LOAD–Befehle verwendet werden.
Um Kontaktpläne mit aufeinanderfolgenden Logikblock–Befehlen einzugebenmuss zunächst eine Aufgliederung des Plans in logische Blöcke erfolgen. In je-dem Block ist die erste Bedingung mit einem LOAD–Befehl zu programmierenund mit AND LOAD und OR LOAD werden die Blöcke dann logisch miteinanderverknüpft. Letzteres kann auf zwei Arten erreicht werden. Entweder wird der er-ste Logikblock–Befehl nach den ersten beiden Blöcken programmiert und dannmit den einzelnen Blöcken fortgefahren oder jeder Block wird unter Verwendungvon LOAD oder LOAD NOT einzeln eingegeben und dann die Logikblock–Be-fehle programmiert, die die Blöcke untereinander verknüpfen. Bei der zweitenMethode müssen die Befehle für die letzten beiden Blöcke zuerst verknüpft wer-den und dann erfolgt eine Verknüpfung mit dem jeweils vorhergehenden Blockbis zum Anfang. Obwohl mit beiden Methoden die gleichen Ergebnisse erzieltwerden können, kann die zweite nur verwendet werden, wenn höchstens sie-ben Logikblock–Befehle erforderlich sind. Mit der ersten Methode kann eine be-liebige Anzahl von Blöcken verknüpft werden.
Im folgenden Kontaktplan ist ein AND LOAD–Befehl für die Konvertierbarkeit indie AWL erforderlich, da drei Parallelbedingungen paarweise in Reihe geschal-tet sind. Die Programmierung der Programme ist ebenfalls dargestellt:
00000 00002 00004
00001 00003 00005
20000
Adresse Befehl Operanden Adresse Befehl Operanden
00000 LD 00000
00001 OR NOT 00001
00002 LD NOT 00002
00003 OR 00003
00004 AND LD —
00005 LD 00004
00006 OR 00005
00007 AND LD —
00008 OUT 20000
00000 LD 00000
00001 OR NOT 00001
00002 LD NOT 00002
00003 OR 00003
00004 LD 00004
00005 OR 00005
00006 AND LD —
00007 AND LD —
00008 OUT 20000
Auch hier können mit der Methode auf der rechten Seite maximal acht Blöckenverbunden werden. Es gibt keine Grenze der Anzahl der Blöcke, die mit der er-sten Methode verknüpft werden können.
Logikblock–Befehle in Serie
6-3AbschnittKontaktplanstruktur
320
Im folgenden Kontaktplan ist OR LOAD erforderlich, da drei Bedingungspaarein Reihe parallel zueinander geschaltet sind.
00000 00001
00002 00003
00004 00005
20001
Mit LOAD wird die erste Bedingung eines Paares samt zugewiesenem Operan-den kodiert und dann mit der anderen AND–Bedingungen verknüpft. Die beidenersten Blöcke werden zuerst codiert, gefolgt von einem OR LOAD, dem letztenBlock und einem OR LOAD. Bei der zweiten Methode werden alle drei Blöckegefolgt von zwei OR LOADs kodiert. Beide AWL–Varianten sind nachfolgenddargestellt.
00000 LD 00000
00001 AND NOT 00001
00002 LD NOT 00002
00003 AND NOT 00003
00004 OR LD –
00005 LD 00004
00006 AND 00005
00007 OR LD –
00008 OUT 20001
00000 LD 00000
00001 AND NOT 00001
00002 LD NOT 00002
00003 AND NOT 00003
00004 LD 00004
00005 AND 00005
00006 OR LD –
00007 OR LD –
00008 OUT 20001
Adresse Befehl Operanden Adresse Befehl Operanden
Auch hier können mit der Methode auf der rechten Seite maximal acht Blöckenverbunden werden. Es gibt keine Grenze der Anzahl der Blöcke, die mit der er-sten Methode verknüpft werden können.
Sollen AND LOAD und OR LOAD miteinander verknüpft werden, können, so-lange es sich nicht um mehr als acht Blöcke handelt, beide oben dargestelltenProgrammiermethoden verwendet werden.
Der nachfolgende Kontaktplan enthält lediglich zwei logische Blöcke. Es istnicht notwendig, Block b weiter zu unterteilen, da problemlos mit AND und ORprogrammiert werden kann.
00000 00001 00002 00003
00201
20001
00004
Blocka
Blockb
Adresse Befehl Operanden
00000 LD 0000000001 AND NOT 0000100002 LD 0000200003 AND 0000300004 OR 0020100005 OR 0000400006 AND LD –00007 OUT 20001
Verknüpfen von AND LOADund OR LOAD
6-3AbschnittKontaktplanstruktur
321
Obwohl der folgende Kontaktplan dem vorhergehenden sehr ähnlich ist, mussBlock b hier in zwei logische Blöcke aufgegliedert werden, die mit OR LOAD mit-einander zu verknüpfen sind. In diesem Beispiel wurden die drei Blöcke zuerstkodiert. Dann wurden mit OR LOAD die letzten beiden Blöcke verknüpft, gefolgtvon AND LOAD, um die von OR LOAD erzeugte Ausführungsbedingung mit derAusführungsbedingung von Block a zu verknüpfen.
Bei der Programmierung der Logikblock–Befehle am Ende der Logikblöcke, diediese verbinden, müssen die Befehle, wie nachfolgend gezeigt wird, in umge-kehrter Reihenfolge programmiert werden, d.h. der Logikblock–Befehl für dieletzten zwei Blöcke wird zuerst eingegeben, gefolgt von der Ausführungsbedin-gung, die aus dem ersten Logikblock–Befehl resultiert und der Ausführungsbe-dingung des 3. Logikblockes vom Ende aus und zurück zum ersten zu verknüp-fenden Logikblock.
00000 00001 00002 0000320002
00004 00202
Blocka
Blockb
Blockb2
Blockb1
Adresse Befehl Operanden
00000 LD NOT 00000
00001 AND 00001
00002 LD 00002
00003 AND NOT 00003
00004 LD NOT 00004
00005 AND 00202
00006 OR LD –
00007 AND LD –
00008 OUT 20002
Um zu ermitteln, welche Logikblock–Befehle erforderlich sind, um einen Kon-taktplan zu programmieren, ist es manchmal notwendig, den Kontaktplan in zu-nächst größere und dann immer kleinere Blöcke, bis hin zu Blöcken, die ohneLogikblockbefehle programmiert werden können, zu unterteilen. Dann werdenzuerst die kleinen Blöcke programmiert und diese dann mit AND LOAD bzw. ORLOAD mit den größeren Blöcken verknüpft. Dabei verknüpfen AND LOAD bzw.OR LOAD immer die beiden letzten Ausführungsbedingungen, unabhängig da-von, ob diese von einer Einzelbedingung, einem logischen Block oder einemvorhergehenden Logikblock–Befehl stammen.
Bei komplizierten Kontaktplänen sollte die Programmierung der Blöcke grund-sätzlich von links oben nach unten und dann erst nach rechts vorgenommenwerden. Diese Vorgehensweise stellt sicher, dass der OR LOAD–Befehl vordem AND LOAD–Befehl eingegeben wird.
Komplexe Kontaktpläne
6-3AbschnittKontaktplanstruktur
322
Der nachfolgende Kontaktplan muss in zwei Blöcke, und diese dann in zwei wei-tere Blöcke unterteilt werden, bevor er programmiert werden kann. Wie nach-stehend dargestellt, erfordern die Blöcke a und b AND LOAD. Vor AND LOADmuss jedoch OR LOAD verwendet werden, um den oberen und unteren Blockauf beiden Seiten des Kontaktplans zu verknüpfen (a1 und a2 bzw. b1 und b2).
00000 00001 00004 0000520003
Blocka
Blockb
00006 00007
Blockb2
Blockb1
00002 00003
Blocka2
Blocka1
Blocks a1 und a2
Block b1 und b2
Blöcke a und b
Adresse Befehl Operanden
00000 LD 00000
00001 AND NOT 00001
00002 LD NOT 00002
00003 AND 00003
00004 OR LD –
00005 LD 00004
00006 AND 00005
00007 LD 00006
00008 AND 00007
00009 OR LD –
00010 AND LD –
00011 OUT 20003
Der folgende Kontaktplan ist leicht zu kodieren, wenn folgende Reihenfolge ein-gehalten wird: von oben nach unten und dann von links nach rechts. In diesemKontaktplan müssen die Blöcke a und b –wie oben gezeigt– mit AND LOAD ver-knüpft werden. Dann ist Block c zu kodieren, der mit einem zweiten AND LOAD–Befehl mit der aus dem ersten AND LOAD–Befehl folgenden Ausführungsbe-dingung zu verknüpfen ist. Nach dem Kodieren von Block d muss mit einem drit-ten AND LOAD–Befehl dessen Ausführungsbedingung mit der Ausführungsbe-dingung des zweiten AND LOAD–Befehls verknüpft werden und so fort, bis zumErreichen des Blocks n.
Blocka
Blockb
20000
Blockn
Blockc
6-3AbschnittKontaktplanstruktur
323
Der folgende Kontaktplan erfordert einen OR LOAD–Befehl, gefolgt von einemAND LOAD–Befehl, um die oberen der drei Blöcke zu kodieren. Zwei weitereOR LOAD–Befehle vervollständigen die AWL.
00002 00003
LR 0000
00000 00001
00004 00005
00006 00007
Adresse Befehl Operanden
00000 LD 00000
00001 LD 00001
00002 LD 00002
00003 AND NOT 00003
00004 OR LD ––
00005 AND LD ––
00006 LD NOT 00004
00007 AND 00005
00008 OR LD ––
00009 LD NOT 00006
00010 AND 00007
00011 OR LD ––
00012 OUT LR 0000
Das obige Programm ist ausführbar. Wird der Kontaktplan jedoch wie nachste-hend gezeichnet, führt dies zu einer Vereinfachung des Programms und zur Ein-sparung von Speicherplatz, da sowohl der erste OR LOAD– als auch der ersteAND LOAD–Befehl entbehrlich wird.
00002 00003LR 0000
00001
00000
00004 00005
00006 00007
Adresse Befehl Operanden
00000 LD 00002
00001 AND NOT 00003
00002 OR 00001
00003 AND 00000
00004 LD NOT 00004
00005 AND 00005
00006 OR LD --
00007 LD NOT 00006
00008 AND 00007
00009 OR LD ––
00010 OUT LR 0000
Beim folgenden Kontaktplan sollten Sie zunächst die fünf Blöcke programmie-ren und dann, beginnend mit den beiden letzten, die Verknüpfungen rückwärtsmit OR LOAD– und AND LOAD–Befehlen durchführen. Der OR LOAD–Befehlauf Adresse 00008 verknüpft die Blöcke d und e, der nachfolgende AND LOAD–Befehl verknüpft die daraus folgende Ausführungsbedingung mit der von Blockc usw.
LR 0000
00000
00003 00004
00006 00007
00001 00002
00005
Blocke
Blockd
Blockc
BlockbBlock
a
Adresse Befehl Operanden
Blöcke d und e
Block c mit Ergebnis Vorzeile
Block b mit Ergebnis Vorzeile
Block a mit Ergebnis Vorzeile
00000 LD 00000
00001 LD 00001
00002 AND 00002
00003 LD 00003
00004 AND 00004
00005 LD 00005
00006 LD 00006
00007 AND 00007
00008 OR LD ––
00009 AND LD ––
00010 OR LD ––
00011 AND LD ––
00012 OUT LR 0000
6-3AbschnittKontaktplanstruktur
324
Wiederum kann eine Änderung des Kontaktplans zu einer Vereinfachung derProgrammstruktur und zur Einsparung von Speicherplatz führen.
00006 00007LR 0000
00005
00001 00002
00003 00004 00000Adresse Befehl Operanden
00000 LD 00006
00001 AND 00007
00002 OR 00005
00003 AND 00003
00004 AND 00004
00005 LD 00001
00006 AND 00002
00007 OR LD ––
00008 AND 00000
00009 OUT LR 0000
Das nächste und letzte Beispiel erscheint auf den ersten Blick sehr kompliziert,kann aber, unter Verwendung von nur zwei Logikblock–Befehlen, programmiertwerden. Das Netzwerk erscheint wie folgt:
00000 00001
20000
00002 00003
01000 01001
00004 00005
20000
00006
Block cBlock b
Block a
Der erste Logikblock–Befehl dient dazu, die aus Block a und b folgenden Aus-führungsbedigungen zu verknüpfen, während der zweite Logikblock–Befehl dieAusführungsbedingung von Block c mit der Ausführungsbedingung der Öffner–Bedingung, die IR 00003 zugewiesen ist, verknüpft. Der übrige Kontaktplankann mit OR–, AND– und AND NOT–Befehlen kodiert werden. Die nachfol-gende Abbildung veranschaulicht die logischen Abläufe.
00000 00001
20000
00002 00003
01000 01001
00004 0000520000
00006
Block c
Block bBlock a
OR LD
LD 00000UND 00001
OR 20000
AND 00002AND NOT 00003
LD 01000UND 01001
OR 00006
LD 00004AND 00005
AND LD
Adresse Befehl Operanden
00000 LD 00000
00001 AND 00001
00002 LD 01000
00003 AND 01001
00004 OR LD ––
00005 OR 20000
00006 AND 00002
00007 AND NOT 00003
00008 LD 00004
00009 AND 00005
00010 OR 00006
00011 AND LD ––
00012 OUT 20000
6-3AbschnittKontaktplanstruktur
325
6-3-7 Programmierung mehrerer BefehleGibt es mehrere Befehle mit der gleichen Ausführungsbedingung, werden dieseaufeinanderfolgend kodiert. Im nachstehenden Beispiel befindet sich auf demletzten/unteren Strompfad eine Bedingung mehr, die eine zusätzliche AND–Verknüpfung auf IR 00004 erforderlich macht.
00000 00003
00001
0000400002
HR 0000
HR 0001
20000
20001
Adresse Befehl Operanden
00000 LD 00000
00001 OR 00001
00002 OR 00002
00003 OR HR 0000
00004 AND 00003
00005 OUT HR 0001
00006 OUT 20000
00007 AND 00004
00008 OUT 20001
6-3-8 Strompfad–VerzweigungenBei einem mehrfach verzweigenden Strompfad kann es notwendig werden,Verriegelungen oder TR–Bits in der AWL–Darstellung zu verwenden, um dieAusführungsbedingung am Verzweigungspunkt zu erhalten. Die Problemstel-lung besteht darin, dass der Strompfad zunächst von links nach rechts abgear-beitet wird und das Programm erst nach der Ausführung des ersten Befehls zumVerzweigungspunkt zurückkehrt, um dann den abzweigenden Strompfad abzu-arbeiten. Sollte also eine Bedingung auf einem Strompfad hinter einem Ver-zweigungspunkt liegen, könnte sich die Ausführungsbedingung innerhalb die-ser Zeitspanne verändern, mit der Folge, dass eine ordnungsgemäße Pro-grammausführung unmöglich wird. Die folgenden Abbildungen veranschauli-chen dies. In beiden Fällen wird zunächst Befehl 1 ausgeführt, bevor das Pro-gramm zum Verzweigungspunkt zurückkehrt und den Strompfad, der zum Be-fehl 2 führt, abarbeitet.
Befehl 1
00002
00000
Befehl 2
Verzweigungs–punkt
Befehl 1
00002
00000
Befehl 2
Verzweigungs-punkt
Abbildung B: Korrektur des fehlerhaften Ablaufs in AWL–Darstellungerforderlich
Abbildung A: Korrekter Ablauf in KOP und AWL
00001
Adresse Befehl Operanden
00000 LD 00000
00001 Befehl 1
00002 AND 00002
00003 Befehl 2
Adresse Befehl Operanden
00000 LD 00000
00001 AND 00001
00002 Befehl 1
00003 AND 00002
00004 Befehl 2
Wenn sich wie in Abbildung A die Ausführungsbedingung nicht verändert, bevordas Programm zum Verzweigungspunkt zurückkehrt, erfolgt die Ausführunginsgesamt korrekt und besondere Programmiermaßnahmen sind nicht erfor-derlich.
Wenn, wie in Abbildung B, auf dem oberen Strompfad zwischen Verzweigungs-punkt und Befehl eine weitere Bedingung vorhanden ist, kann es dazu führen,dass sich nach Ausführung des ersten Befehls die Ausführungsbedingung amVerzweigungspunkt verändert hat, so daß eine korrekte Abarbeitung des ab-zweigenden Strompfades unmöglich wird.
Es gibt zwei programmiertechnische Möglichkeiten, die Ausführungsbedingungfür den Fall von Verzweigungen zu erhalten. Zum einen können TR–Bits (”Tem-
6-3AbschnittKontaktplanstruktur
326
poräre Merker”), zum anderen die Verriegelungsbefehle IL(02)/IL(03) in derAWL–Darstellung angewendet werden.
Die TR–Bits TR 0 bis TR 7 (also insgesamt 8 Bits) können zum temporären Er-halt der Ausführungsbedingung in der AWL–Darstellung verwendet werden.Wird ein TR–Bit auf einen Verzweigungspunkt gesetzt, wird beim ersten Errei-chen des Verzweigungspunktes die aktuelle Ausführungsbedingung im zuge-wiesenen TR–Bit gespeichert. Bei Rückkehr des Programms zum Verzwei-gungspunkt stellt das TR–Bit die ursprüngliche Ausführungsbedingung wiederher.
Um einen korrekten Ablauf zu gewährleisten, muss der obige, unter B abgebil-dete Kontaktplan gemäß nachfolgender Abbildung verändert werden. In derAWL wird die Ausführungsbedingung am Verzweigungspunkt gespeichert, wo-bei das TR–Bit als Operand des OUTPUT–Befehls verwendet wird. Bei derRückkehr des Programms zum Verzweigungspunkt wird die Ausführungsbedin-gung unter Verwendung des TR–Bits als Operand des LOAD–Befehls wieder-hergestellt.
Befehl 1
00002
00000
Befehl 2
Abbildung B: Korrigierter Ablauf in AWL unter Verwendung eines TR–Bits
00001TR 0 Adresse Befehl Operanden
00000 LD 00000
00001 OUT TR 0
00002 AND 00001
00003 Befehl 1
00004 LD TR 0
00005 AND 00002
00006 Befehl 2
Der obige Code wird wie folgt interpretiert: Der Zustand von IR 00000 wird gela-den (LOAD–Befehl), um die anfängliche Ausführungsbedingung zu erzeugen.Diese Ausführungsbedingung wird dann unter Verwendung des OUTPUT–Be-fehls an TR 0 ausgegeben, um den Zustand am Verzweigungspunkt zu spei-chern. Diese Ausführungsbedingung wird mit dem Zustand von IR 00001 AND–verknüpft und der Befehl 1 entsprechend ausgeführt. Die am Verzweigungs-punkt gespeicherte Ausführungsbedingung wird dann zurückgeladen (einLOAD–Befehl mit TR 0 als Operand), mit dem Zustand von IR 00002 AND–ver-knüpft und dann Befehl 2 entsprechend ausgeführt.
Das folgende Beispiel zeigt eine Anwendung mit zwei TR–Bits.
Befehl 1
00003
00000 00002TR 1
00005
TR 000001
00004
Befehl 2
Befehl 3
Befehl 4
Adresse Befehl Operanden
00000 LD 00000
00001 OUT TR 0
00002 AND 00001
00003 OUT TR 1
00004 AND 00002
00005 Befehl 1
00006 LD TR 1
00007 AND 00003
00008 Befehl 2
00009 LD TR 0
00010 AND 00004
00011 Befehl 3
00012 LD TR 0
00013 AND NOT 00005
00014 Befehl 4
Hier werden TR 0 und TR 1 verwendet, um die Ausführungsbedingungen anden Verzweigungspunkten zu speichern. Nach der Ausführung des Befehls 1wird der in TR 1 gespeicherte Zustand geladen und mit dem AND–Zustand vonIR 00003 verknüpft. Der in TR 0 gespeicherte Zustand wird zweimal geladen,
TR–Bits
6-3AbschnittKontaktplanstruktur
327
das erste Mal für die AND–Verknüpfung mit dem Zustand von IR 00004 und daszweite Mal für eine AND–Verknüpfung mit dem invertierten Zustand von IR00005.
TR–Bits können so oft wie erforderlich verwendet werden, solange nicht dasgleiche TR–Bit mehr als einmal für den selben Befehlsblock verwendet wird. Einneuer Befehlsblock beginnt immer dann, wenn eine Rückkehr zur Stromschieneerfolgt. Sind in einem einzelnen Befehlsblock mehr als acht Verzweigungs-punkte mit zwischenzuspeichernden Ausführungszuständen erforderlich, müs-sen Verriegelungen (eine Begriffserklärung befindet sich weiter hinten im Hand-buch) verwendet werden.
Verwenden Sie beim Entwurf eines Kontaktplanes nur dann TR–Bits, wenndiese wirklich erforderlich sind. Häufig kann ein Programm einfacher, d.h. mitdeutlich weniger Befehlen und übersichtlicher strukturiert werden, was oft dazuführt, dass TR–Bits gar nicht benötigt werden. Die beiden nachfolgenden Bei-spiele veranschaulichen dies. Die jeweils untere Version beinhaltet weniger Be-fehle und keine TR–Bits. Im ersten Beispiel wird dies durch eine Neuorganisa-tion der Teile des Befehlsblockes erreicht: durch Weglassen des zweiten OUT-PUT–Befehls und Einfügen eines weiteren LOAD–Befehls wird eine eindeutigeAusführungsbedingung erzeugt.
Hinweis Neben der Vereinfachung der Programmstruktur, auf die immer Wert gelegtwerden sollte, ist oft auch die Reihenfolge der Befehlsausführung wichtig. Sokann zum Beispiel ein MOVE–Befehl vor der Ausführung eines BINARY ADD–Befehls erforderlich werden, damit dem Operanden–Wort die richtigen Datenzugewiesen werden. Vor Überarbeitung eines Programmes sollte daher dieReihenfolge der Ausführungs immer in die Überlegungen mit einbezogen wer-den.
Befehl 100000
Befehl 2
00001TR 0
Befehl 2
00000
Befehl 100001
Befehl 1
00000
Befehl 2
00003
TR 000001
00004
00002
00001 00003
00000
00004
00002
00001
Befehl 1
Befehl 2
Hinweis TR–Bits müssen nur bei der Programmierung in der AWL vom Anwender selbsteingegeben werden. Bei der Kontaktplan–Programmierung über die Program-miersoftware CX–P werden temporäre Merker (TR) automatisch verarbeitet.Die Einschränkungen bzgl. Anzahl der TR–Bits gilt aber auch in diesem Fall.
Das Problem, Ausführungsbedingungen an Verzweigungspunkten zu spei-chern, kann auch mittels der Befehle INTERLOCK (IL (02)) (Verriegelung) undINTERLOCK CLEAR (ILC (03)) (Verriegelung aufheben) gelöst werden. DieseBefehle bewirken, dass ein Verzweigungspunkt vollständig entfernt wird undstattdessen eine besondere Ausführungsbedigung eine ganze Gruppe von Be-
Verriegelungen
6-3AbschnittKontaktplanstruktur
328
fehlen steuert. INTERLOCK und INTERLOCK CLEAR–Befehle müssen immerpaarweise verwendet werden.
Wird ein INTERLOCK–Befehl vor einen Kontaktplan–Abschnitt gesetzt, steuertdie Ausführungsbedingung dieses INTERLOCK–Befehls die Ausführung allerweiteren Befehle bis hin zum nächsten INTERLOCK CLEAR–Befehl. Ist dieAusführungsbedingung für den INTERLOCK–Befehl FALSCH, werden alle wei-teren Befehle bis zum Erreichen von INTERLOCK CLEAR mit der Ausführungs-bedingung FALSCH ausgeführt und damit der gesamte Abschnitt des Kontakt-plans zurückgesetzt. Sehen Sie für weitere Informationen, insbesondere dieAuswirkung auf andere Befehle, Abschnitt 7-11 INTERLOCK und INTERLOCKCLEAR IL(02) und ILC(03).
Der Kontaktplan – Abbildung B – kann auch mittels eines Verriegelungsbefehlskorrigiert werden. Im ersten Strompfad wird die Bedingung programmiert, dievor dem ursprünglichen Verzweigungspunkt lag. Dieser Strompfad schließt mitdem INTERLOCK–Befehl ab. Jede weitere Bedingung wird auf einem separa-ten Strompfad programmiert und schließlich wird ein weiterer letzter Strompfadhinzugefügt, der mit dem INTERLOCK CLEAR–Befehl abschließt. Keine Bedin-gungen sind auf der INTERLOCK CLEAR–Befehlszeile erlaubt. Beachten Sie,dass weder dem INTERLOCK– noch dem INTERLOCK CLEAR–Befehl einOperand zugewiesen ist.
Befehl 1
00002
00000
Befehl 2
00001
ILC (03)
IL (02) Adresse Befehl Operanden
00000 LD 00000
00001 IL (02) –––
00002 LD 00001
00003 Befehl 1
00004 LD 00002
00005 Befehl 2
00006 ILC (03) ---
Ist in der oben dargestellten, geänderten Version des Kontaktplanes IR 00000GESETZT, bestimmt der Zustand von IR 00001 bzw. IR 00002 die Ausführungs-bedingung für Befehl 1 und 2. Das Setzen von IR 00000 bewirkt das gleiche Er-gebnis wie eine AND–Verknüpfung des Zustands der beiden Bits. Ist IR 00001nicht gesetzt, bewirkt der INTERLOCK–Befehl eine FALSCH–Ausführungsbe-dingung für die Befehle 1 und 2 und die Programmausführung wird dann ent-sprechend dem unteren Strompfad mit dem INTERLOCK CLEAR–Befehl fort-gesetzt.
Gemäß nachfolgender Abbildung kann innerhalb eines Befehlsblocks mehr alsein INTERLOCK–Befehl verwendet werden. Jeder INTERLOCK–Befehl ist biszum nächsten INTERLOCK CLEAR–Befehl wirksam.
Befehl 1
00000
Befehl 2
00001
ILC (03)
IL (02)
00004
Befehl 3
Befehl 400006
00005
00003
00002
IL (02)
Adresse Befehl Operanden
00000 LD 00000
00001 IL (02) –––
00002 LD 00001
00003 Befehl 1
00004 LD 00002
00005 IL (02) –––
00006 LD 00003
00007 AND NOT 00004
00008 Befehl 2
00009 LD 00005
00010 Befehl 3
00011 LD 00006
00012 Befehl 4
00013 ILC (03) ---
6-3AbschnittKontaktplanstruktur
329
Ist IR 00000 im obenstehenden Kontaktplan nicht gesetzt (d.h., wenn die Aus-führungsbedingung für den ersten INTERLOCK–Befehl FALSCH ist), werdendie Befehle 1 bis 4 mit der Ausführungsbedingung FALSCH ausgeführt. Dannwird mit den Befehlen, die auf den INTERLOCK CLEAR–Befehl folgen, fortge-fahren. Ist IR 00000 gesetzt, wird der Zustand von IR 00001 als Ausführungsbe-dingung für Befehl 1 geladen und der Zustand von IR 00002 bestimmt die Aus-führungsbedingung für den zweiten INTERLOCK–Befehl. Ist IR 00002 AUS,werden die Befehle 2 bis 4 mit FALSCH–Ausführungsbedingungen ausgeführt.Ist IR 00002 EIN, bestimmen IR 00003, IR 00005 und IR 00006 die erste Ausfüh-rungsbedingung für weitere Strompfade.
6-3-9 SprungbefehleMit einer entsprechenden Ausführungsbedingung können bestimmte Pro-grammabschnitte übersprungen werden. Die Wirkung eines Sprungbefehls istder Wirkung eines INTERLOCK–Befehls mit der FALSCH–Ausführungsbedin-gung ähnlich. Beim Sprung wird jedoch der Zustand der Befehlsoperanden bei-behalten. Sprungbefehle dienen daher zur Steuerung von Geräten, die Aus-gänge mit Selbsthaltung benötigen, wie z.B. pneumatische und hydraulischeAnlagen. Bei elektronischen Geräten, die diese Art von Ausgängen nicht erfor-dern, wird der INTERLOCK–Befehl verwendet.
Es stehen zwei Sprungbefehle zur Verfügung, JUMP (Sprung) (JMP (04)) undJUMP END (Sprung Ende) (JME (05)). Ist die Ausführungsbedingung für denJUMP–Befehl EIN, läuft das Programm so ab, als gäbe es keine JUMP–Anwei-sung. Ist die Ausführungsbedigung AUS, übergeht das Programm alle Befehlezwischen JUMP und JUMP–END, ohne daß der Zustand der Befehlsoperandengeändert wird.
Den JUMP– und JUMP END–Befehlen werden Sprungnummern zwischen 00und 99 zugewiesen. Es gibt zwei Arten von Sprungbefehlen. Die verwendeteSprungnummer trifft eine Aussage darüber, welche Art von Sprungbefehl ver-wendet wird.
Die Sprungnummern 01 bis 99 können nur jeweils einmal verwendet werden,d.h. jede Nummer kann einmal für einen JUMP– und einmal für einen JUMPEND–Befehl verwendet werden. Sobald das Programm einen solchen Befehlerreicht, springt es zu dem entsprechenden JUMP END–Befehl mit der gleichenNummer. Im folgenden soll Abbildung B (TR–Bit und INTERLOCK–Beispiel) soabgeändert werden, dass auch die Vorgänge beim JUMP–Befehl veranschau-licht werden. Obwohl 01 als Sprungnummer verwendet wurde, könnte jede Zahlzwischen 01 und 99 verwendet werden, solange diese noch nicht in einem an-deren Teil des Programms verwendet wird. Außer der Sprungnummer benöti-gen JUMP und JUMP END keine weiteren Operanden.
Befehl 1
00002
00000
Befehl 2
Abbildung B: Korrigierter Ablauf mit Sprungbefehl
00001
JME (05) 01
JMP (04) 01 Adresse Befehl Operanden
00000 LD 00000
00001 JMP (04) 01
00002 LD 00001
00003 Befehl 1
00004 LD 00002
00005 Befehl 2
00006 JME (05) 01
Die Version der Abbildung B würde eine kürzere Zykluszeit als irgendeine deranderen Kontaktplanversionen besitzen.
6-3AbschnittKontaktplanstruktur
330
Der zweite Sprungtyp wird mit Sprungnummer 00 erzeugt. Sprungnummer 00kann mit beliebig vielen JUMP–Befehlen verwendet werden, die dann nachein-ander ausgeführt werden. Dies bedeutet, dass nur ein einziger JUMP End–Be-fehl mit Sprungnummer 00 für alle JUMP–Befehle mit Sprungnummer 00 benö-tigt wird. Wird 00 als Sprungsnummer für einen JUMP–Befehl verwendet, wirddie Programmausführung mit dem Befehl nach dem nächsten JUMP END–Be-fehl mit der Sprungnummer 00 fortgesetzt. Damit können große Programmab-schnitte übersprungen werden. Da das Programm nach dem nächsten JUMPEND–Befehl mit Sprungnummer 00 suchen muss, wird die Zykluszeit hierdurchverlängert.
Der Ablauf von Programmen mit diesem Mehrfach–Sprungbefehl ähnelt demvon INTERLOCK–Befehlen. Das zuvor aufgezeigte Kontaktplan–Beispiel zurVeranschaulichung des INTERLOCK–Befehls ist nachfolgend noch einmal auf-geführt, jedoch insofern abgeändert, als es die Funktionsweise des JUMP–Be-fehls mit Sprungnummer 00 erläutert. Der wesentliche Unterscheid zwischenbeiden Befehlsarten besteht darin, dass der INTERLOCK–Befehl den Bitzu-stand innerhalb ganzer Programmabschnitte zurücksetzt, während der JUMP–Befehl den Bitzustand überhaupt nicht beeinflußt.
Befehl 1
00000
Befehl 2
00001
JME (05) 00
JMP (04) 00
00004
Befehl 3
Befehl 400006
00005
00003
00002
JMP (04) 00
Adresse Befehl Operanden
00000 LD 00000
00001 JMP (04) 00
00002 LD 00001
00003 Befehl 1
00004 LD 00002
00005 JMP (04) 00
00006 LD 00003
00007 AND NOT 00004
00008 Befehl 2
00009 LD 00005
00010 Befehl 3
00011 LD 00006
00012 Befehl 4
00013 JME (05) 00
6-4AbschnittSteuerung des Bitzustands
331
6-4 Steuerung des BitzustandsEs gibt sieben Basisbefehle, die zur Steuerung des individuellem Bitstatus ver-wendet werden können. Dies sind: OUTPUT, OUTPUT NOT, SET, RESET, DIF-FERENTIATE UP, DIFFERENTIATE DOWN und KEEP. Alle diese Befehle wer-den als letzter Befehl des Strompfads programmiert und besitzen eine Bita-dresse als Operanden. Obwohl Abschnitt 7-8 Bit–Steuerbefehle eine umfang-reiche Beschreibung enthält, erfolgt an dieser Stelle auf Grund der besonderenBedeutung dieser Befehle bereits eine Beschreibung (ohne OUTPUT und OUT-PUT NOT). Obwohl diese Befehle dazu verwendet werden, Ausgangsbits imIR–Bereich zu setzen und zurückzusetzen (d.h., Ausgangssignale an externeGeräte zu senden bzw. diese zu unterbrechen), können diese auch dazu ver-wendet werden, den Zustand anderer Bits im E/A– oder in anderen Speicherbe-reichen zu steuern.
6-4-1 SET und RESETDer SET– bzw. RESET–Befehl ändert den Zustand des Operandenbits. DieWirkungsweise der Befehle ist ähnlich den OUTPUT– und OUTPUT NOT–Be-fehlen, mit dem Unterschied, dass eine Änderung des Bitzustandes nur bei ei-ner WAHR–Ausführungsbedingung erfolgt. Keine der Befehle beeinflusst denZustand seines Operandenbits, wenn die Ausführungsbedingung FALSCH ist.
Der SET–Befehl setzt das Operandenbit, wenn die AusführungsbedingungWAHR wird. Aber anders als beim OUTPUT–Befehl setzt SET das Operanden-bit nicht zurück, sobald die Ausführungsbedingung FALSCH wird. RESET setztdas Operandenbit zurück, wenn die Ausführungsbedingung WAHR wird. Aberanders als OUTPUT NOT setzt RESET das Bit nicht wieder, wenn die Ausfüh-rungsbedingung FALSCH wird.
Im folgenden Beispiel wird IR 20000 nach IR 00100 gesetzt und dieser Zustandbeibehalten, bis IR 00101 gesetzt wird, völlig unabhängig davon, welchen Zu-stand IR 00100 dann einnimmt. Wird IR 00101 gesetzt, wird IR 20000 (RESET)zurückgesetzt.
00100
00101
SET 20000
RSET 20000
Adresse Befehl Operanden
00000 LD 00100
00001 SET 20000
00002 LD 00101
00003 RSET 20000
Hinweis SET und RSET besitzen keine Funktionscodes. Drücken Sie die FUN– undSET–Tasten oder die FUN– und RSET–Tasten, gefolgt von der Bitadresse, umdiese Befehle über die Programmierkonsole einzugeben.
6-4-2 DIFFERENTIATE UP– und DIFFERENTIATE DOWN(Flankengesteuerte Ausführung)
Mit DIFFERENTIATE UP– und DIFFERENTIATE DOWN wird das Operanden-bit für einen Zyklus auf EIN gesetzt. Der DIFFERENTIATE UP–Befehl setzt dasOperandenbit für einen Zyklus, nachdem die Ausführungsbedingung vonFALSCH auf WAHR gewechselt hat; der DIFFERENTIATE DOWN–Befehl setztdas Operandenbit für einen Zyklus, nachdem die Ausführungsbedingung von
6-4AbschnittSteuerung des Bitzustands
332
WAHR auf FALSCH gewechselt hat. Beide Befehle erfordern in der AWL jeweilseine Zeile.
00000
00001
DIFU (13) 20001
DIFD (14) 20002
Adresse Befehl Operanden
00000 LD 00000
00001 DIFU(13) 20001
Adresse Befehl Operanden
00000 LD 00001
00001 DIFD (14) 20002
IR 20001 wird für einen Zyklus gesetzt, nachdem IR 00000 gesetzt ist. WirdDIFU(13) 20001 erneut ausgeführt, wird IR 20001 zurückgesetzt und zwar un-abhängig davon, welchen Zustand IR 00000 einnimmt. Mit dem DIFFERENTIA-TION DOWN–Befehl wird IR 20002 für einen Zyklus gesetzt, nachdem IR 00001rückgesetzt wurde (IR 20002 wird den Zustand bis dahin beibehalten) und wirdrückgesetzt, wenn DIFD(14) 20002 erneut ausgeführt wird.
6-4-3 KEEP (Bistabiles Flip–Flop)Der KEEP–Befehl wird dazu verwendet, den Zustand eines Operandenbits ba-sierend auf zwei Ausführungsbedingungen zu steuern. Dazu wird der KEEP–Befehl mit zwei Strompfaden verknüpft. Ist die Ausführungsbedingung am Endedes ersten Strompfades WAHR, wird das Operandenbit des KEEP–Befehls ge-setzt. Ist die Ausführungsbedingung am Ende des zweiten Strompfades WAHR,wird das Operandenbit zurückgesetzt. Das Operandenbit wird seinen Zustandselbst dann beibehalten, wenn es in einem verriegelten (INTERLOCK) Ab-schnitt des Kontaktplans liegt.
Im folgenden Beispiel wird HR 0000 gesetzt, wenn IR 00002 gesetzt ist und IR00003 nicht gesetzt ist. HR 0000 bleibt EINGESCHALTET, bis entweder IR00004 oder IR 00005 zurückgesetzt wird. Beim KEEP–Befehl, wie bei allen an-deren Befehlen, die aus mehr als einer AWL–Zeile bestehen, werden die Be-fehlszeilen vor dem Befehl, der diese steuert, programmiert.
00002
00004
00003
00005R: Rücksetz–EINGANG
S: Setz–EINGANG KEEP (11)
HR 0000
Adresse Befehl Operanden
00000 LD 00002
00001 AND NOT 00003
00002 LD 00004
00003 OR 00005
00004 KEEP (11) HR 0000
6-4-4 SelbsthaltemerkerManchmal kann es erforderlich werden, dass Selbsthaltemerker, die in einemverriegelten Abschnitt des Kontaktplans liegen, mit zurückgesetzt werden.
Um einen solchen Selbsthaltemerker zu erzeugen, wird das Operandenbit desOUTPUT–Befehls als Bedingung für den gleichen OUTPUT–Befehl in einerOR–Verknüpfung verwendet, so daß das Operandenbit des OUTPUT–Befehlsden Zustand EIN oder AUS solange beibehält, bis sich der Zustand der anderenBits ändert. Mindestens eine weitere Bedingung muss vor dem OUTPUT–Be-fehl gesetzt sein, damit eine Rücksetzung erfolgen kann. Ohne diese Rückset-zung gibt es keine Möglichkeit das Operandenbit des OUTPUT–Befehls zusteuern.
Der obenstehende Kontaktplan kann folgendermaßen verändert werden. Le-diglich die Programmausführung in einem verriegelten Programmabschnitt er-folgt unterschiedlich, wenn nämlich die Ausführungsbedingung für den INTER-LOCK–Befehl WAHR ist. Auch hier, wie im Beispiel zur Veranschaulichung des
6-5AbschnittArbeitsmerker (interne Relais)
333
KEEP–Befehls, werden zwei Rücksetz–Bits verwendet, da HR 0000 entwederdurch Setzen von IR 00004 oder IR 00005 zurückgesetzt werden kann.
00002 00003
HR 0000
HR 0000
00004
00005
Adresse Befehl Operanden
00000 LD 00002
00001 AND NOT 00003
00002 OR HR 0000
00003 LD NOT 00004
00004 OR NOT 00005
00005 AND LD –––
00006 OUT HR 0000
6-5 Arbeitsmerker (interne Relais)In der Programmierung ist es oft äußerst schwierig, entsprechende Ausfüh-rungsbedingungen durch eine direkte Verknüpfung von Bedingungen zu erzeu-gen. Ein einfacher Weg, dieser Problematik zu begegnen, ist dieVerwendungvon besonderen Bits, die andere Befehle indirekt auslösen. Solche Bits werdenArbeitsmerker genannt. Manchmal sind für diesen Zweck ganze Worte erforder-lich, die dann Hilfsworte genannt werden.
Arbeitsmerker werden nicht von der SPS gelesen oder zur SPS übertragen, dasie lediglich ein Hilfsmittel für den Programmiervorgang selbst darstellen. E/A–Bits und bestimmte andere Bits können nicht als Arbeitsmerker verwendet wer-den. Alle Bits des E/A–Bereichs ohne zugewiesene E/A–Funktionen und be-stimmte nicht verwendete Bits des AR–Bereiches stehen als Arbeitsmerker zurVerfügung. Es ist empfehlenswert, die verwendeten Arbeitsmerker als Referenzaufzuzeichnen. Dies erleichtert die Programmplanung und –erstellung und un-terstützt spätere Programmtestläufe.
Im folgenden werden zwei der gebräuchlichsten Anwendungsmöglichkeiten fürArbeitsmerker erläutert, um Anhaltspunkte über deren Verwendungsmöglich-keiten zu geben. Sollten Schwierigkeiten bei der Programmierung eines Steuer-vorgangs auftreten, so sollte die Verwendung von Arbeitsmerkern berücksich-tigt werden, um die Programmierung zu vereinfachen.
Arbeitsmerker werden häufig zusammen mit OUTPUT–, OUTPUT NOT–, DIF-FERENTIATE UP, DIFFERENTIATE DOWN und KEEP–Befehlen verwendet.Zunächst wird der Arbeitsmerker als Operand einer dieser Befehle eingesetzt,so daß es später als Bedingung verwendet werden kann, die bestimmt, wie einBefehl ausgeführt wird. Arbeitsmerker können auch mit anderen Befehlen, wiez.B. SHIFT REGISTER (Schieberegister) (SFT (10)) verwendet werden. In Ab-schnitt 7-16-1 SCHIEBEREGISTER – SFT (10) ist ein Beispiel für die Verwen-dung eines Hilfswortes mit dem SCHIEBEREGISTER–Befehl dargestellt.
Obwohl sie im einzelnen nicht immer so bezeichnet werden, sind viele der in denBeispielen im Kapitel 7 Befehlssatz verwendeten Bits Arbeitsmerker. Ein umfas-sendes Verständnis für deren Funktionsweise ist für eine effiziente Program-mierung unabdingbar.
Arbeitsmerker können die Programmierung vereinfachen, wenn eine be-stimmte Kombination von Bedingungen wiederholt in Verbindung mit anderenBedingungen verwendet wird. Im folgenden Beispiel werden IR 00000, IR00001, IR 00002 und IR 00003 in einem Logikblock verknüpft, der die resultie-rende Ausführungsbedingung als Zustand von IR 21600 speichert. IR 21600wird dann mit diversen anderen Bedingungen verknüpft, um die Ausgangsbe-
Arbeitsmerker–Anwendungen
Vereinfachung komplexerBedingungen
6-5AbschnittArbeitsmerker (interne Relais)
334
dingungen für IR 20000, IR 20001 und IR 20002 zu bestimmen, d.h., um die die-sen Bits zugewiesenen Ausgänge ein– und auszuschalten.
00000
00003
00001
00004
00002
00005
00004
00007
00006
0000521600
21600
21600
21600
20000
20001
20002
Adresse Befehl Operanden
00000 LD 00000
00001 AND NOT 00001
00002 OR 00002
00003 OR NOT 00003
00004 OUT 21600
00005 LD 21600
00006 AND 00004
00007 AND NOT 00005
00008 OUT 20000
00009 LD 21600
00010 OR NOT 00004
00011 AND 00005
00012 OUT 20001
00013 LD NOT 21600
00014 OR 00006
00015 OR 00007
00016 OUT 20002
Differenzierte Bedingungen Arbeitsmerker können auch dann verwendet werden, wenn einige, aber nichtalle Bedingungen unterschiedlich behandelt werden müssen. Im nachfolgen-den Beispiel muss IR 20000 solange gesetzt bleiben, wie IR 00001 gesetzt istund sowohl IR 00002 als auch IR 00003 nicht gesetzt sind oder solange IR00004 gesetzt ist und IR 00005 nicht gesetzt ist. IR 20000 muss jedesmal fürjeweils einen Zyklus gesetzt werden, wenn IR 00000 gesetzt wird (es sei denn,dass eine der vorhergehenden Bedingungen IR 00000 dauerhaft setzt).
Dies wird erreicht, in dem IR 22500 als Arbeitsmerker verwendet wird, der wie-derum als Operand des DIFFERENTIATE UP–Befehls (DIFU(13)) program-miert wird. Wird IR 00000 gesetzt, wird IR 22500 für einen Zyklus gesetzt unddann im nächsten Zyklus durch DIFU(13) zurückgesetzt. Vorausgesetzt, dassdie anderen, IR 20000–steuernden Bedingungen diese nicht dauerhaft gesetzthalten, setzt der Arbeitsmerker IR 22500 IR 20000 nur für einen Zyklus.
22500
DIFU (13) 22500
00000
00001 00002 00003
00004 00005
20000
Adresse Befehl Operanden
00000 LD 00000
00001 DIFU(13) 22500
00002 LD 22500
00003 LD 00001
00004 AND NOT 00002
00005 AND NOT 00003
00006 OR LD –––
00007 LD 00004
00008 AND NOT 00005
00009 OR LD –––
00010 OUT 20000
6-6AbschnittVorsichtsmaßnahmen bei der Programmierung
335
6-6 Vorsichtsmaßnahmen bei der ProgrammierungDie Anzahl der Bedingungen, die in Reihe oder Parallel verwendet werden kön-nen, ist unbegrenzt, solange die Speicherkapazität der SPS nicht überschrittenwird. Verwenden Sie deshalb soviele Bedingungen wie erforderlich, um einenübersichtlichen Kontaktplan zu programmieren. Die nachfolgende Abbildung Azeigt eine Variante, die so nicht programmierbar ist. Der Kontaktplan muss viel-mehr, wie in Abbildung B gezeigt, programmiert werden.
Befehl 2
Befehl 1
00002
00003
00000
00001
00004
Abbildung A: Nicht programmierbar
Befehl 1
00004
00003
00000
00001
Abbildung B: Korrigierte Version
00002
Befehl 2
0000400000
00001
Adresse Befehl Operanden
00000 LD 00001
00001 AND 00004
00002 OR 00000
00003 AND 00002
00004 Befehl 1
00005 LD 00000
00006 AND 00004
00007 OR 00001
00008 AND NOT 00003
00009 Befehl 2
Einem bestimmten Bit können Bedingungen beliebig oft zugewiesen werden.Komplexe Programme sind oft das Ergebnis des Versuchs, die Anzahl der Zu-griffe auf ein bestimmtes Bit zu reduzieren.
Abgesehen von den Befehlen ohne Bedingungen, wie z.B. INTERLOCKCLEAR oder JUMP END, muss jedem Befehl auf dem Strompfad mindestenseine Bedingung zugewiesen werden, um eine Ausführungsbedingung für denAusgangsbefehl (letzter Befehl auf dem Strompfad) festzulegen. Der nachfol-gende Kontaktplan A muss daher als Kontaktplan B programmiert werden. Sollein Befehl fortlaufend ausgeführt werden (z.B. ein dauerhaft zu aktivierenderAusgang), kann der Immer–Ein–Merker (SR 25313) verwendet werden.
Befehl25313
Befehl
Abbildung A: Die meisten Befehle können so nicht programmiert werden
Abbildung B: Korrigierte Version
Adresse Befehl Operanden
00000 LD 25313
00001 Befehl
Es gibt einige Ausnahmen von dieser Regel, insbesondere für die INTERLOCKCLEAR–, JUMP END– und STEP–Befehle. Diese Befehle werden jeweils paar-weise verwendet und von der Ausführungsbedingung des ersten Befehls ge-steuert. Es sollten keine weiteren Bedingungen auf Strompfaden plaziert wer-den, die zu solchen Paarbefehlen führen. Sehen Sie für weitere InformationenKapitel 7 Befehlssatz.
Bei der Erstellung von Kontaktplänen ist es wichtig, sich auf die wirklich notwen-dige Anzahl von Befehlen zu beschränken. In der nachfolgenden Abbildung Aist ein OR LOAD–Befehl erforderlich, um den oberen und unteren Strompfad-
6-7AbschnittProgrammausführung
336
zweig logisch miteinander zu verknüpfen. Gemäß Abbildung B kann dies durchUmstrukturierung des Kontakplans vermieden werden. In Abbildung B sindkeine AND LOAD bzw. OR LOAD–Befehle erforderlich. Sehen Sie für weitereInformationen Abschnitt 7-7-2 AND LOAD und OR LOAD.
00000
00001 20007
20007
00001
00000
2000720007
Abbildung A
Abbildung B
Adresse Befehl Operanden
00000 LD 00000
00001 LD 00001
00002 AND 20007
00003 OR LD –––
00004 OUT 20007
Adresse Befehl Operanden
00000 LD 00001
00001 AND 20007
00002 OR 00000
00003 OUT 20007
6-7 ProgrammausführungBei der ersten Programmausführung durchläuft die CPU–Baugruppe das Pro-gramm von Anfang bis Ende. Dabei werden alle Bedingungen und die Ausfüh-rung aller Befehle überprüft. Es ist wichtig, dass die Befehle in der geeignetenReihenfolge angeordnet werden; z.B. sollte der gewünschte Dateninhalt tat-sächlich in ein Datenwort verschoben werden, bevor dieses Wort als Operandeines Befehls verwendet wird. Bedenken Sie immer, dass ein Strompfad zu-nächst bis zum äußersten rechten Ausgangsbefehl abgearbeitet wird, bevorVerzweigungen zu anderen Ausgangsbefehlen berücksichtigt werden.
Der Programmausführung ist nur eine der Aufgaben, die von der CPU innerhalbder Zykluszeit abgearbeitet wird. Sehen Sie für weitere Informationen Kapitel 8SPS–Betrieb.
337
Kapitel 7Befehlssatz
Die CPM1, CPM1A, CPM2A, CPM2C und SRM1(–V2) verfügen über umfangreiche Befehlssätze, die das Program-mieren auch komplizierter Steuerungsvorgänge erheblich vereinfachen. Dieses Kapitel beschreibt die Kontaktplan–Sym-bole, Speicherbereiche und Merker und ihre sachgerechte Anwendung.
Die Befehlssätze sind nach Gruppen geordnet dargestellt: Kontaktplan–Befehle, Befehle mit festen Funktionscodes undanwenderdefinierte Befehle.Einige Befehle, wie Zeitgeber– und Zähler–Befehle werden verwendet, um andere Befehle zu steuern; so setzt z. B. derZeitgeber fertig–Merker ein Bit, wenn die für den Zeitgeber eingestellte Zeit abgelaufen ist. Obgleich diese anderen Befehleoft dazu verwendet werden, Ausgänge über den OUTPUT–Befehl zu steuern, können diese ebenfalls zur Steuerung der Aus-führung weiterer Befehle verwendet werden. Die in den Beispielen dieses Handbuchs verwendeten OUTPUT–Befehlekönnen auch durch andere Befehle ersetzt werden, um das jeweilige Programm an bestimmte Anwendungen anzuspassen,anstatt nur Ausgänge zu steuern.
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)
DIFU(13) und DIFD(14) 354 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 SchrittbefehleSTEP 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) –
TMHH(––) 366 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
PRV (62) 376 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16 Schiebebefehle 379 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-16-1 SHIFT REGISTER (Schieberegister) – SFT(10) 379 . . . . . . . . . . . . . . . . . 7-16-2 WORD SHIFT (Wortweises Verschieben) – WSFT(16) 380 . . . . . . . . . . .
Abschnitt
338
7-16-3 ARITHMETIC SHIFT LEFT (Verschiebung nach links) – ASL (25) 381 . 7-16-4 ARITHMETIC SHIFT RIGHT (Arithmetisches Verschieben nach rechts) –
ASR(26) 381 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
SLD(74) 383 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-8 ONE DIGIT SHIFT RIGHT (Verschiebung um eine Stelle nach rechts) –
SRD(75) 384 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-9 REVERSIBLE SHIFT REGISTER (Links/Rechts–Schieberegister) –
SFTR(84) 385 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16-10 ASYNCHRONOUS SHIFT REGISTER (Asynchrones Schieberegister) –
ASFT (17) 386 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 . . . . . . . . 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
BCD–Wert konvertieren) – SCL2(––) 399 . . . . . . . . . . . . . . . . . . . . . . . . . 7-18-3 BCD TO SIGNED BINARY SCALING (BCD–Wert in vorzeichenbehafteten
Binärwert konvertieren) – SCL3(––) 401 . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
ZCPL(––) 415 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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–
BIN–Doppelwort–Konvertierung) – BINL(58) 418 . . . . . . . . . . . . . . . . . . 7-20-4 DOOUBLE BINARY–TO–DOUBLE BCD (BIN–Doppelwort–zu–
BCD–Doppelwort–Konvertierung) – BCDL(59) 418 . . . . . . . . . . . . . . . . . 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) –
SDEC(78) 423 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20-8 ASCII CONVERT (ASCII–Konvertierung) – ASC(86) 426 . . . . . . . . . . . . 7-20-9 ASCII–TO–HEXADECIMAL (in Hexadezimal–Wort konvertieren) –
HEX(––) 428 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
SUBL(55) 441 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Abschnitt
339
7-21-9 DOUBLE BCD MULTIPLY (BCD–Doppelwort–Multiplikation) – MULL(56) 442 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . 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) –
XORW(36) 459 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-24-5 EXCLUSIVE NOR (Wortweise EXKLUSIV–ODER–NICHT–Verknüpfung) –
XNRW(37) 460 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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
Unterprogramm–Ende) – SBN(92)/RET(93) 464 . . . . . . . . . . . . . . . . . . . . 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) –
ACC(––) 470 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-27-4 PULSE WITH VARIABLE DUTY RATIO (Impulsausgabe mit
variablem Tastverhältnis) – PWM(––) 473 . . . . . . . . . . . . . . . . . . . . . . . . . 7-27-5 SYNCHRONIZED PULSE CONTROL (Synchronisierte Impulsausgabe) –
SYNC(––) 475 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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) –
STUP(––) 489 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7-3AbschnittDatenbereiche, Zuweiserwerte und Merker
340
7-1 NotationNachfolgend werden alle in diesem Handbuch beschriebenen Befehle mit ihrenmnemonischen Namen bezeichnet. So wird z.B. der OUTPUT–Befehl OUT undder AND LOAD–Befehl AND LD genannt. Sehen Sie Anhang AProgrammierbefehle für weitere Informationen, welcher mnemonischer Namezu welchem Befehl gehört.
Ist einem Befehl ein Funktionscode zugewiesen, wird dieser hinter dem Befehlin Klammern angegeben. Die in 2–stelligen Dezimalzahlen dargestellten Funk-tionscodes dienen der Befehlseingabe in die CPU. Eine nach Funktionscodesgeordnete Tabelle ist ebenfalls Bestandteil von Anhang A Programmierbe-fehle. Eine Tabelle aller Befehle finden Sie in Abschnitt 7-6 Befehlstabelle.
Ein @ vor einem mnemonischen Code bedeutet, dass es sich um einen Befehlmit flankengesteuerter Ausführung handelt. Befehle mit flankengesteuerterAusführung werden in Abschnitt 7-4 beschrieben.
7-2 BefehlsformateDie meisten Befehlen besitzen ein oder auch mehrere Operanden. Die Operan-den weisen auf Daten hin bzw. übergeben diese, mit denen der Befehl ausge-führt wird. Die Eingabe erfolgt entweder als echter numerischer Wert (z.B. beieiner Konstanten), oder, in den meisten Fällen, durch Angabe der Adresse desDatenwortes, dass die Daten enthält, oder von Bits. Ein Bit, dessen Adresse alsOperand gekennzeichnet ist, heißt Operandenbit; ein Wort, dessen Adresse alsOperand gekennzeichnet ist, heißt Operandenwort. In einigen Befehlen zeigtdie in einem Befehl zugewiese Wortadresse das erste von mehreren Worten(Mehrfachwort) an, die die gewünschten Daten enthalten.
Jeder Befehl erfordert ein oder mehrere Worte im Programmspeicher. Das ersteWort ist das Befehlswort, das den Befehl spezifiziert und das alle Zuweiser (die-ser Begriff wird nachfolgen beschrieben) oder Operandenbits enthält, die derBefehl benötigt. Weitere Operanden werden durch die nachfolgenden Wortebereitgestellt, jeweils ein Operand pro Wort. Einige Befehle benötigen bis zu vierWorte.
Ein Zuweiser ist ein Operand, der mit dem Befehl verknüpft ist und der im glei-chen Wort enthalten ist, wie der Befehl selbst. Diese Operanden dienen mehrder Definition des Befehls, als dass sie eine Aussage darüber treffen, welcheDaten verwendet werden. Zuweiser sind zum Beispiel die TC–Nummern, diebei Zeitgeber– und Zählerbefehlen verwendet werden, um Zeitgeber und Zählerzu erstellen oder auch die Sprungnummern, die angeben, welcher Sprungbe-fehl mit welchem Sprung–Ende–Befehl korrespondiert. Bitoperanden könnenim selben Wort wie der Befehl selbst enthalten sein, obwohl diese deshalb nichtetwa als Zuweiser angesehen werden dürfen.
7-3 Datenbereiche, Zuweiserwerte und MerkerIn diesem Abschnitt wird für jeden Befehl das Kontaktplansymbol, die vom Ope-randen zuverwendenden Speicherbereiche und die den Zuweisern zuzuord-nenden Werte aufgeführt. Ebenso werden Einzelheiten über den Datenbereichwie Operandennamen und die Art der Daten, die dieser anfordert, spezifiziert(d.h. Wort oder Bit und bei Worten das Hexadezimal– oder BCD–Format).
Nicht alle Adressen in den spezifizierten Speicherbereichen dürfen als Operan-den verwendet werden. Benötigt ein Operand z.B. zwei Worte, kann das letzteWort innerhalb des Speicherbereichs nicht dem Operanden als erstes Wort zu-gewiesen werden, da die Worte immer im selben Speicherbereich liegen müs-sen. Andere besondere Einschränkungen finden Sie im Abschnitt Einschrän-kungen. Sehen Sie den Abschnitt 5 Speicherbereiche bzgl. Adressierkonven-tionen und Adressen von Merkern und Steuerbits.
!
7-3AbschnittDatenbereiche, Zuweiserwerte und Merker
341
Vorsicht Die IR– und SR–Bereiche werden als separate Speicherbereiche angesehen.Hat ein Operand Zugriff auf den einen Bereich, bedeutet dies nicht notwendiger-weise, dass er auch Zugriff auf den anderen Bereich hat. Die Grenze zwischenIR– und SR–Bereich kann jedoch für einen einzelnen Operanden überschrittenwerden, insofern als das letzte Bit im IR–Bereich für einen Operanden, der mehrals ein Wort benötigt, spezifiziert werden kann, wenn dieser Operand auch imSR–Bereich adressiert werden darf.
Im Unterabschnitt Merker sind die Merker aufgeführt, die durch Ausführung ei-nes Befehls beeinflußt werden. Dies umfaßt auch die nachfolgenden SR–Be-reichsmerker.
Abkürzung Name Bit
ER Befehlsausführungs–Fehlermerker 25503
CY Übertragungsmerker 25504
GR Größermerker 25505
EQ Gleichmerker 25506
LE Kleinermerker 25507
ER ist der Merker, der am häufigsten für die Überwachung einer Befehlsausfüh-rung verwendet wird. Ist ER aktiviert, wird angezeigt, dass ein Fehler bei der ak-tuellen Programmausführung aufgetreten ist. Im Unterabschnitt Merker sind fürjeden Befehl mögliche Gründe für eine Aktivierung des ER–Merkers dargestellt.ER wird immer aktiviert, wenn Operanden fehlerhaft spezifiziert wurden. Be-fehle werden bei gesetztem ER–Merker nicht ausgeführt. Sehen Sie Anhang BFehler– und Arithmetikmerker–Vorgänge für eine Tabelle der Befehle und Mer-ker, die eine Beeinflussung ausüben.
Kann der DM–Bereich für den Operanden spezifiziert werden, kann auch eineindirekte Adresse verwendet werden. Eine indirekte DM–Adressierung wirddurch ein Sternsymbol vor DM angezeigt: *DM.
Wird eine indirekte DM–Adresse angegeben, enthält das zugewiesene DM–Wort die Adresse des DM–Wortes, das die Daten enthält, die als Operand desBefehles verwendet werden sollen. Wird zum Beispiel *DM 0001 als erster undLR 00 als zweiter Operand von MOV( 21) bestimmt, so beinhaltete DM 0001 dieAdressierung für DM 1111. DM 1111 enthält den Wert 5555, der nach LR 00übertragen wird.
MOV(21)
*DM 0001
LR 00
Wort Inhalt
DM 0000 4C59DM 0001 1111DM 0002 F35A
DM 1111 5555DM 1113 2506DM 1114 D541
5555 über-tragen nachLR 00.
Zeigt auf DM 1111.
IndirekteAdresse
Bei der indirekten Adressierung muss das gewünschte Wort in BCD–Form an-gegeben werden. Darüberhinaus muss es ein Wort innerhalb des DM–Berei-ches spezifizieren. Im obenstehenden Beispiel muß der Inhalt von DM 0001 inBCD–Code vorliegen und eine zu verwendende Adresse im DM–Bereich derSPS spezifizieren. Sehen Sie Abschnitt 5 Speicherbereiche für Einzelheiten zuden DM–Bereichen.)
Viele Operanden und alle Zuweiser werden als Konstanten eingegeben. Derverfügbare Wertebereich für einen Zuweiser oder Operanden ist vom verwen-deten Befehl abhängig. Konstanten müssen ebenfalls in den vom entsprechen-den Befehl geforderten Format eingegeben werden, d.h. in BCD oder hexadezi-mal.
Indirekte Adressierung
Zuweisung von Konstanten
7-4AbschnittBefehle mit flankengesteuerter Ausführung
342
7-4 Befehle mit flankengesteuerter AusführungDie meisten Befehle stehen auch mit einer flankengesteuerten Ausführung zurVerfügung. Befehle mit flankengesteuerter Ausführung sind durch ein @–Sym-bol vor dem mnemonischen Code gekennzeichnet.
Ein Befehl ohne flankengesteuerte Ausführung wird abgearbeitet, wenn seineAusführungsbedingung WAHR ist. Ein Befehl mit flankengesteuerter Ausfüh-rung wird nur ein Mal, und zwar nach dem AUS/EIN–Übergang der Ausfüh-rungsbedingung ausgeführt. Hat sich die Ausführungsbedingung seit der letz-ten Überprüfung durch das Programm nicht verändert oder ist er von EIN aufAUS gewechselt, wird der Befehl nicht ausgeführt. Die nachfolgenden Kontakt-pläne zeigen dies am Beispiel von MOV(21) und @MOV(21). Die Daten derdurch den ersten Operanden gekennzeichneten Adresse werden auf die durchden zweiten Operanden gekennzeichnete Adresse übertragen.
00000
MOV(21)
HR 10
DM 0000Abbildung A
00000
@MOV(21)
HR 10
DM 0000Abbildung B
Adresse Befehl Operanden
Adresse Befehl Operanden
00000 LD 00000
00001 MOV (21)
HR 10
DM 0000
00000 LD 00000
00001 @MOV(21)
HR 10
DM 0000
In Kontaktplan A überträgt der nicht flankengesteuerte Befehl MOV(21) jedesMal, wenn er vom Programm angesprochen wird, den Inhalt von HR 10 nach DM0000. Beträgt die Zykluszeit 80 ms und bleibt 00000 für 2 Sekunden gesetzt,wird der Übertragungsvorgang 25 mal ausgeführt und nur der zuletzt nach DM00000 übertragene Wert bleibt erhalten.
In Kontaktplan B überträgt der Befehl mit flankengesteuerter Ausführung@MOV(21) den Inhalt von HR 10 nur ein einziges Mal nach DM 0000, und zwarnachdem 00000 auf EIN gesetzt wurde. Auch wenn 00000 bei gleicher Zyklus-zeit von 80 ms für 2 Sekunden eingeschaltet bleibt, wird die Funktion nur ein ein-ziges Mal, während des ersten Zyklus, nachdem 00000 von AUS auf EIN wech-selt, ausgeführt. Da sich der Inhalt von HR 10 während der 2 Sekunden, in der00000 auf EIN gesetzt ist, durchaus verändern kann, könnte sich der endgültigeInhalt von DM 0000 nach Ablauf der zwei Sekunden unterscheiden, abhängigvon der Verwendung von MOV(21) oder @MOV(21).
Operanden, Kontaktplansymbole und andere Befehlsspezifikationen bleibengleich, unabhängig davon, ob der Befehl mit oder ohne Flankensteuerung aus-geführt wird. Bei der Eingabe über die Programmierkonsole werden die glei-chen Funktionscodes verwendet, jedoch wird NOT hinter dem Funktionscodeeingegeben, um zu kennenzeichnen, dass es sich um einen Befehl mit flanken-gesteuerter Ausführung handelt. Viele, aber nicht alle Befehle verfügen übereine flankengesteuerte Variante.
Sehen Sie Abschnitt 7-11 INTERLOCK und INTERLOCK CLEAR – IL(02) undIL(03) für weitere Informationen über die Auswirkung von INTERLOCK– und IN-TERLOCK–CLEAR–Befehle auf Befehle mit flankengesteuerter Ausführung.
Die CPM2A/CPM2C verfügt ebenfalls über Befehle mit flankengesteuerter Aus-führung: DIFU(13) und DIFD(14). DIFU(13) arbeitet wie ein Befehl mit flanken-gesteuerter Ausführung, aber setzt ein Bit für einen Zyklus auf EIN. DIFD(14)setzt ebenfalls ein Bit für einen Zyklus auf EIN, jedoch bei einem Wechsel derAusführungsbedingung von EIN auf AUS. Sehen Sie Abschnitt 7-8-4Ausführung bei steigender und fallender Flanke – DIFU(13) und DIFD(14) fürweitere Informationen.
7-5AbschnittEingabe von rechts angeordneten Befehlen
343
7-5 Eingabe von rechts angeordneten BefehlenDer AWL–Code für Kontaktpläne wird in Abschnitt 6 Kontaktplan–Programmie-rung beschrieben. Die Konvertierung der Anweisungen in Kontaktplansymboleerfolgt nach dem gleichen Muster und wird im folgenden nicht für jeden Befehlgesondert bechrieben.
Das erste Wort eines Befehls bestimmt sowohl den Befehl selbst als auch alledamit korrespondierenden Zuweiser. Benötigt der Befehl lediglich einen Signal–Bitoperanden und keinen Zuweiser, wird das Bit in die gleiche Zeile wie derAWL–Code geschrieben. Ansonsten werden die Operanden jeweils in geson-derte Zeilen geschrieben, und zwar in der gleichen Reihenfolge, wie sie als Kon-taktplansymbole der Befehle erscheinen.
Die Befehlsspalten der AWL werden ausschließlich mit dem Befehlswort ausge-füllt. In allen anderen Zeilen bleiben die beiden linken Spalten frei. Sollte der Be-fehl weder Zuweiser noch Operanden benötigen, bleibt die Datenspalte in derersten Zeile leer. Es wird empfohlen, jede leere Spalte (alle Befehlsworte, diekeine Daten benötigen) durchzustreichen, so daß die Datenspalte schnell aufeventuell ausgelassene Operanden überprüft werden kann.
Wird in der Datenspalte eine IR– oder SR–Adresse verwendet, wird die IR– undSR–Bezeichnung nicht eingegeben. Bei Adressen aus einem anderen Spei-cherbereich wird die Speicherbereichs–Abkürzung auf der linken Seite vor derAdresse eingetragen. Bei einer Konstanten wird auf der linken Seite vor demWert der Konstanten ein #–Zeichen eingegeben. Die Zuweiser des Befehlswor-tes benötigen kein Ziffernsymbol auf der rechten Seite. Die TC–Bits werden,wenn sie als Zeitgeber oder Zähler definiert sind, über die Präfixe TIM and CNTangesprochen.
Stellen Sie bei der Eingabe eines Befehls mit Funktionscode über die Program-mierkonsole sicher, dass Sie den richtigen Funktionscode eingeben. Das Glei-che gilt für die Eingabe des @–Symbols bei Befehlen mit flankengesteuerterAusführung.
Hinweis Der AWL–Code der Erweiterten Befehle führt hinter dem Befehl ein ”(––)” alsFunktionscode, wodurch eine Kennzeichnung erfolgt, dass es sich um vom An-wender zugewiesene Funktionscodes der Befehlstabelle handelt. Sehen SieSeite 154 für weitere Informationen.
7-5AbschnittEingabe von rechts angeordneten Befehlen
344
Der folgende Kontaktplan und der entsprechende AWL–Code verschaulichendie zuvor beschriebenen Regeln:
Adresse Befehl Daten
00000 LD 00000
00001 AND 00001
00002 OR 00002
00003 DIFU(13) 21600
00004 LD 00100
00005 AND NOT 00200
00006 LD 01001
00007 AND NOT 01002
00008 AND NOT LR 0000
00009 OR LD ––
00010 AND 21600
00011 BCNT (67) ––
# 0001
004
HR 00
00012 LD 00005
00013 TIM 000
# 0150
00014 LD TIM 000
00015 MOV (21) ––
HR 00
LR 00
00016 LD HR 0015
00017 OUT NOT 01000
00100 00200
DIFU (13) 21600
01000
BCNT (67)
#0001
004
HR 00
MOV (21)
HR 00
LR 00
01001 01002 LR 0000
TIM 000
21600
00002
00005
HR 0015
00000 00001
TIM 000
#0150
Setzt ein Befehl mehrere Strompfade voraus (wie z.B. KEEP(11), werden zu-nächst alle Bedingungen auf dem Strompfad, jeweils beginnend mit LD oder LDNOT, eingegeben. Die sich so ergebenden logischen Blöcke werden letztend-lich durch den Befehl ausgewertet. Das nachstehende Beispiel veranschaulichtdies für den Befehl SFT(10).
I
P
R
SFT (10)
HR 00
HR 00
Adresse Befehl Daten
00000 LD 00000
00001 AND 00001
00002 LD 00002
00003 LD 00100
00004 AND NOT 00200
00005 LD 01001
00006 AND NOT 01002
00007 AND NOT LR 0000
00008 OR LD ––
00009 AND 21600
00010 SFT (10) HR 00
HR 00
00011 LD HR 0015
00012 OUT NOT 01001
00100 00200
01001
01001 01002 LR 0000
21600
00002
HR 0015
00000 00001
MehrfacheAnweisungszeilen
7-6AbschnittBefehlstabellen
345
7-6 BefehlstabellenIn diesem Abschnitt befinden sich Tabellen mit den von den CPM1/CPM1A,CPM2A/CPM2C und SRM1(–V2)–SPS–Systemen unterstützten Befehlen. Siekönnen die ersten Tabellen dazu verwenden, die Befehle anhand des Funkti-onscodes zu suchen. Die letzte Tabelle dient zur Auffindung der Befehle anhandder AWL–Bezeichnung. In beiden Tabellen kennzeichnet das @–Symbol, dassder Befehl auch als flankengesteuerte Ausführungsvariante verfügbar ist.
7-6-1 CPM1/CPM1A–FunktionscodesIn der folgenden Tabelle sind die CPM1/CPM1A–Befehle aufgeführt, die festge-legte Funktionscodes besitzen. Sowohl der Befehlsname als auch die AWL–Be-zeichnung sind angegeben. Verwenden Sie die Ziffern in der äußerst linkenSpalte als linke Stelle und die Ziffern in der Spaltenüberschrift als rechte Stelledes Funktionscodes.
LinkeSt ll
Rechte StelleeStelle 0 1 2 3 4 5 6 7 8 9
0 NOPNO OPERATION
END ILINTERLOCK
ILCINTERLOCKCLEAR
JMPJUMP
JMEJUMP END
(@) FALFAILUREALARM AND RESET
FALSSEVEREFAILUREALARM
STEPSTEP DEFINE
SNXTSTEP START
1 SFTSHIFT REGISTER
KEEP CNTRREVER-SIBLE COUNTER
DIFUDIFFEREN-TIATE UP
DIFDDIFFEREN-TIATE DOWN
TIMHHIGH-SPEED TIMER
(@) WSFTWORDSHIFT
(@) ASFTASYNCHRO-NOUS SHIFTREGISTER
--- ---
2 CMPCOMPARE
(@) MOVMOVE
(@) MVNMOVE NOT
(@) BINBCD TO BI-NARY
(@) BCDBINARY TOBCD
(@) ASLSHIFT LEFT
(@) ASRSHIFTRIGHT
(@) ROLROTATELEFT
(@) RORROTATERIGHT
(@) COMCOMPLE-MENT
3 (@) ADDBCD ADD
(@) SUBBCD SUBTRACT
(@) MULBCD MULTIPLY
(@) DIVBCD DIVIDE
(@) ANDWLOGICALAND
(@) ORWLOGICAL OR
(@) XORWEXCLUSIVEOR
(@) XNRWEXCLUSIVENOR
(@) INCINCREMENT
(@) DECDECRE-MENT
4 (@) STCSET CARRY
(@) CLCCLEARCARRY
--- --- --- --- (@) MSGMESSAGEDISPLAY
--- --- ---
5 (@) ADBBINARY ADD
(@) SBBBINARYSUBTRACT
(@) MLBBINARYMULTIPLY
(@) DVBBINARY DIVIDE
(@) ADDLDOUBLEBCD ADD
(@) SUBLDOUBLEBCD SUBTRACT
(@) MULLDOUBLEBCD MULTIPLY
(@) DIVLDOUBLEBCD DIVIDE
--- ---
6 CMPLDOUBLECOMPARE
(@) INIMODE CONTROL
(@) PRVHIGH-SPEED COUNTERPV READ
(@) CTBLCOMPARI-SON TABLELOAD
(@) SPEDSPEED OUTPUT *
(@) PULSSET PULSES*
--- (@) BCNTBIT COUNTER
(@) BCMPBLOCKCOMPARE
(@) STIMINTERVALTIMER
7 (@) XFERBLOCKTRANSFER
(@) BSETBLOCK SET
--- (@) XCHGDATA EXCHANGE
(@) SLDONE DIGITSHIFT LEFT
(@) SRDONE DIGITSHIFTRIGHT
(@) MLPX4-TO-16 DECODER
(@) DMPX16-TO-4 ENCODER
(@) SDEC7-SEGMENTDECODER
---
8 (@) DISTSINGLEWORD DISTRIBUTE
(@) COLLDATA COLLECT
(@) MOVBMOVE BIT
(@) MOVDMOVE DIGIT
(@) SFTRREVER-SIBLE SHIFTREGISTER
(@) TCMPTABLE COMPARE
(@) ASCASCII CONVERT
--- --- (@) INTINTERRUPTCONTROL
9 --- (@) SBSSUBROU-TINE ENTRY
SBNSUBROU-TINE DEFINE
RETSUBROU-TINE RETURN
--- --- --- (@) IORFI/O REFRESH
--- (@) MCROMACRO
Hinweis * Nur für die CPM1A–Transistorausgangs–Modelle.
7-6AbschnittBefehlstabellen
346
7-6-2 CPM2A/CPM2C–FunktionscodesIn der folgenden Tabelle sind die CPM2A/CPM2C–Befehle aufgeführt, die fest-gelegte Funktionscodes besitzen. Sowohl der Befehlsname als auch die AWL–Bezeichnung sind angegeben. Verwenden Sie die Ziffern in der äußersten lin-ken Spalte als linke Stelle und die Nummer in der Spaltenüberschrift als rechteStelle des Funktionscodes.
LinkeSt ll
Rechte StelleeStelle 0 1 2 3 4 5 6 7 8 9
0 NOPNO OPERATION
ENDEND
ILINTERLOCK
ILCINTERLOCKCLEAR
JMPJUMP
JMEJUMP END
(@) FALFAILUREALARM AND RESET
FALSSEVEREFAILUREALARM
STEPSTEP DEFINE
SNXTSTEP START
1 SFTSHIFT REGISTER
KEEPKEEP
CNTRREVER-SIBLE COUNTER
DIFUDIFFEREN-TIATE UP
DIFDDIFFEREN-TIATE DOWN
TIMHHIGH-SPEED TIMER
(@) WSFTWORDSHIFT
(@) ASFTASYNCHRO-NOUS SHIFTREGISTER
--- ---
2 CMPCOMPARE
(@) MOVMOVE
(@) MVNMOVE NOT
(@) BINBCD TO BINARY
(@) BCDBINARY TOBCD
(@) ASLSHIFT LEFT
(@) ASRSHIFTRIGHT
(@) ROLROTATELEFT
(@) RORROTATERIGHT
(@) COMCOMPLE-MENT
3 (@) ADDBCD ADD
(@) SUBBCD SUBTRACT
(@) MULBCD MULTIPLY
(@) DIVBCD DIVIDE
(@) ANDWLOGICALAND
(@) ORWLOGICAL OR
(@) XORWEXCLUSIVEOR
(@) XNRWEXCLUSIVENOR
(@) INCINCREMENT
(@) DECDECRE-MENT
4 (@) STCSET CARRY
(@) CLCCLEARCARRY
--- --- --- --- (@) MSGMESSAGEDISPLAY
(@) RXDRECEIVE
(@) TXDTRANSMIT
---
5 (@) ADBBINARY ADD
(@) SBBBINARYSUBTRACT
(@) MLBBINARYMULTIPLY
(@) DVBBINARY DIVIDE
(@) ADDLDOUBLEBCD ADD
(@) SUBLDOUBLEBCD SUBTRACT
(@) MULLDOUBLEBCD MULTIPLY
(@) DIVLDOUBLEBCD DIVIDE
(@) BINLDOUBLEBCD-TO-DOUBLE BINARY
(@) BCDLDOUBLE BI-NARY-TO-DOUBLEBCD
6 CMPLDOUBLECOMPARE
(@) INIMODE CONTROL
(@) PRVHIGH-SPEEDCOUNTERPV READ
(@) CTBLCOMPARI-SON TABLELOAD
(@) SPEDSPEED OUT-PUT
(@) PULSSET PULSES
(@) SCLSCALING
(@) BCNTBIT COUNTER
(@) BCMPBLOCKCOMPARE
(@) STIMINTERVALTIMER
7 (@) XFERBLOCKTRANSFER
(@) BSETBLOCK SET
--- (@) XCHGDATA EXCHANGE
(@) SLDONE DIGITSHIFT LEFT
(@) SRDONE DIGITSHIFTRIGHT
(@) MLPX4-TO-16 DECODER
(@) DMPX16-TO-4 ENCODER
(@) SDEC7-SEGMENTDECODER
---
8 (@) DISTSINGLEWORD DISTRIBUTE
(@) COLLDATA COLLECT
(@) MOVBMOVE BIT
(@) MOVDMOVE DIGIT
(@) SFTRREVER-SIBLE SHIFTREGISTER
(@) TCMPTABLE COMPARE
(@) ASCASCII CONVERT
--- --- (@) INTINTERRUPTCONTROL
9 --- (@) SBSSUBROU-TINE ENTRY
SBNSUBROU-TINE DEFINE
RETSUBROU-TINE RETURN
--- --- --- (@) IORFI/O REFRESH
--- (@) MCROMACRO
Hinweis Die schattierten Bereiche sind Funktionscodes, denen normalerweise Erwei-terte Befehle zugeordnet sind oder denen der Anwender Erweiterte Befehle zu-ordnen kann. Die folgenden Erweiterten Befehle sind zusätzlich zu denen, dieoben mit Standard–Funktionscodes aufgeführt sind, verfügbar.
AWL–Befehl
Name AWL–Befehl
Name
(@)ACC Beschleunigungssteuerung (@)SCL3 Skalierung eines BCD–Wertes zueinem vorzeichenbehafteten Binärwert
AVG Durchschnittswert (@)SEC Stunden zu Sekunden
(@)FCS FCS–Berechnung (@)SRCH Datensuche
(@)HEX ASCII–zu–Hexadezimal (@)STUP RS–232C–Konfiguration ändern
(@)HMS Sekunden zu Stunden (@)SUM Summenbildung
(@)MAX Finde Maximum SYNC Synchronisierte Impulssteuerung
(@)MIN Finde Minimum TIML Langer Zeitgeber
(@)NEG 2er–Komplement TMHH Sehr schneller Zeitgeber
PID PID–Regelung ZCP Bereichsgrößen vergleichen
(@)PWM Impuls mit variablem Tastverhältnis ZCPL Doppelwort–Bereichsgrößenl i h(@)SCL2 Skalierung eines vorzeichen–
behafteten Binärwertes zu einemBCD–Wert
C o e o e e c sg ößevergleichen
7-6AbschnittBefehlstabellen
347
7-6-3 SRM1(–V2) FunktionscodesIn der folgenden Tabelle sind die SRM1(-V2)–Befehle aufgeführt, die festge-legte Funktionscodes besitzen. Sowohl der Befehlsname als auch die AWL–Be-zeichnung sind aufgeführt. Verwenden Sie die Ziffern in der äußerst linkenSpalte als linke Stelle und die Nummer in der Spaltenüberschrift als rechte Stelledes Funktionscodes.
LinkeSt ll
Rechte StelleeStelle 0 1 2 3 4 5 6 7 8 9
0 NOPNO OPERATION
ENDEND
ILINTERLOCK
ILCINTERLOCKCLEAR
JMPJUMP
JMEJUMP END
(@) FALFAILUREALARM AND RESET
FALSSEVEREFAILUREALARM
STEPSTEP DEFINE
SNXTSTEP START
1 SFTSHIFT REGISTER
KEEPKEEP
CNTRREVER-SIBLE COUNTER
DIFUDIFFEREN-TIATE UP
DIFDDIFFEREN-TIATE DOWN
TIMHHIGH-SPEED TIMER
(@) WSFTWORDSHIFT
(@) ASFTASYNCHRO-NOUS SHIFTREGISTER
--- ---
2 CMPCOMPARE
(@) MOVMOVE
(@) MVNMOVE NOT
(@) BINBCD TO BI-NARY
(@) BCDBINARY TOBCD
(@) ASLSHIFT LEFT
(@) ASRSHIFTRIGHT
(@) ROLROTATELEFT
(@) RORROTATERIGHT
(@) COMCOMPLE-MENT
3 (@) ADDBCD ADD
(@) SUBBCD SUBTRACT
(@) MULBCD MULTIPLY
(@) DIVBCD DIVIDE
(@) ANDWLOGICALAND
(@) ORWLOGICAL OR
(@) XORWEXCLUSIVEOR
(@) XNRWEXCLUSIVENOR
(@) INCINCREMENT
(@) DECDECRE-MENT
4 (@) STCSET CARRY
(@) CLCCLEARCARRY
--- --- --- --- (@) MSGMESSAGEDISPLAY
(@) RXDRECEIVE
(@) TXDTRANSMIT
---
5 (@) ADBBINARY ADD
(@) SBBBINARYSUBTRACT
(@) MLBBINARYMULTIPLY
(@) DVBBINARYDIVIDE
(@) ADDLDOUBLEBCD ADD
(@) SUBLDOUBLEBCD SUBTRACT
(@) MULLDOUBLEBCD MULTIPLY
(@) DIVLDOUBLEBCD DIVIDE
--- ---
6 CMPLDOUBLECOMPARE
--- --- --- --- --- (@) SCLSCALING
(@) BCNTBIT COUNTER
(@) BCMPBLOCKCOMPARE
(@) STIMINTERVALTIMER
7 (@) XFERBLOCKTRANSFER
(@) BSETBLOCK SET
--- (@) XCHGDATA EXCHANGE
(@) SLDONE DIGITSHIFT LEFT
(@) SRDONE DIGITSHIFTRIGHT
(@) MLPX4-TO-16 DECODER
(@) DMPX16-TO-4 ENCODER
(@) SDEC7-SEGMENTDECODER
---
8 (@) DISTSINGLEWORD DISTRIBUTE
(@) COLLDATA COLLECT
(@) MOVBMOVE BIT
(@) MOVDMOVE DIGIT
(@) SFTRREVER-SIBLE SHIFTREGISTER
(@) TCMPTABLE COMPARE
(@) ASCASCII CONVERT
--- --- ---
9 --- (@) SBSSUBROU-TINE ENTRY
SBNSUBROU-TINE DEFINE
RETSUBROU-TINE RETURN
--- --- --- --- --- (@) MCROMACRO
Hinweis Die schattierten Bereiche sind Funktionscodes, denen normalerweise Erwei-terte Befehle zugeordnet sind oder denen der Anwender Erweiterte Befehle zu-ordnen kann. Die folgenden Erweiterten Befehle sind zusätzlich zu denen, dieoben mit Standard–Funktionscodes aufgeführt sind, verfügbar.
AWL–Befehl Name
(@)FCS FCS–Berechnung
(@)HEX ACII–zu–Hexadezimal
(@)NEG* 2er–Komplement
PID* PID–Regelung
(@)STUP RS–232C–Konfiguration ändern
ZCP* Bereichsgrößen vergleichen
Hinweis *SCL(66), NEG(––), PID(––) und ZCP (––) werden nur von denSRM1–C0j–V2–CPUs unterstützt.
7-6AbschnittBefehlstabellen
348
7-6-4 Alphabetischsortierte AWL–ListeStriche (“––”) in der Code–Spalte kennzeichnen Erweiterte Befehle, die nochkeine festgelegten Funktionscodes besitzen. “Keine” kennzeichnet Befehle, fürdie kein Funktionscode verwendet wird.
In der CPU–Baugruppenspalte kennzeichnet “SRM1” alle Versionen derSRM1–CPU–Baugruppen und “SRM1(–V2)” nur die Version 2 derSRM1–CPU–Baugruppe.
AWL–Befehl
Code Worte Name CPU–Baugruppen Seite
ACC(@) –– 4 BESCHLEUNIGUNGSSTEUERUNG CPM2A/CPM2C 470
ADB(@) 50 4 BINÄRE ADDITION Alle 444
ADD(@) 30 4 BCD–ADDITION Alle 434
ADDL(@) 54 4 BCD–DOPPELWORT–ADDITION Alle 440
AND Kein 1 UND Alle 350
AND LD Kein 1 UND LADEN Alle 351
AND NOT Kein 1 UND NICHT Alle 350
ANDW(@) 34 4 LOGISCHES UND Alle 458
ASC(@) 86 4 ASCII–KONVERTIERUNG Alle 426
ASFT(@) 17 4 ASYNCHRONES SCHIEBEREGISTER Alle 386
ASL(@) 25 2 ARITHMETISCHES VERSCHIEBEN NACHLINKS
Alle 381
ASR(@) 26 2 ARITHMETISCHES VERSCHIEBEN NACHRECHTS
Alle 381
AVG –– 4 DURCHSCHNITTSWERT CPM2A/CPM2C 453
BCD(@) 24 3 BINÄR ZU BCD Alle 417
BCDL(@) 59 3 BINÄR–DOPPELWORT ZU BCD–DOPPELWORT CPM2A/CPM2C 418
BCMP(@) 68 4 BLOCK VERGLEICHEN Alle 411
BCNT(@) 67 4 BIT–ZÄHLER Alle 479
BIN(@) 23 3 BCD–BIN–KONVERTIERUNG Alle 416
BINL(@) 58 3 BINÄR–DOPPELWORT ZU BCD–DOPPELWORT CPM2A/CPM2C 418
BSET(@) 71 4 BLOCK–SETZEN Alle 390
CLC(@) 41 1 ÜBERTRAG ZURÜCKSETZEN Alle 434
CMP 20 3 VERGLEICHEN Alle 409
CMPL 60 4 DOPPELWORT VERGLEICHEN Alle 413
CNT Kein 2 ZÄHLER Alle 369
CNTR 12 3 UMKEHRBARER ZÄHLER Alle 370
COLL(@) 81 4 DATEN SAMMELN Alle 393
COM(@) 29 2 KOMPLEMENT Alle 457
CTBL(@) 63 4 VERGLEICHSTABELLE LADEN Alle 371
DEC(@) 39 2 BCD–WERT DEKREMENTIEREN Alle 461
DIFD 14 2 AUSFÜHRUNG BEI FALLENDER FLANKE Alle 354
DIFU 13 2 AUSFÜHRUNG BEI STEIGENDER FLANKE Alle 354
DIST(@) 80 4 EINZELWORT–VERTEILUNG Alle 392
DIV(@) 33 4 BCD–WERT–DIVISION Alle 438
DIVL(@) 57 4 BCD–DOPPELWORT–DIVISION Alle 443
DMPX(@) 77 4 16–ZU–4_ENKODER Alle 421
DVB(@) 53 4 BINÄRDIVISION Alle 447
END 01 1 ENDE Alle 355
FAL(@) 06 2 FEHLERALARM UND RÜCKSETZUNG Alle 359
FALS 07 2 SCHWERWIEGENDER FEHLERALARM Alle 359
FCS(@) –– 4 FCS–BERECHNUNG CPM2A/CPM2C/SRM1(-V2) 479
HEX(@) –– 4 ASCII–ZU–HEXADEZIMAL CPM2A/CPM2C/SRM1(-V2) 428
HMS –– 4 SEKUNDEN ZU STUNDEN CPM2A/CPM2C 431
IL 02 1 VERRIEGELUNG Alle 356
ILC 03 1 VERRIEGELUNG LÖSCHEN Alle 356
INC(@) 38 2 INKREMENTIEREN Alle 460
INI(@) 61 4 BETRIEBSARTENSTEUERUNG Alle 374
7-6AbschnittBefehlstabellen
349
AWL–Befehl
SeiteCPU–BaugruppenNameWorteCode
INT(@) 89 4 INTERRUPT–VERARBEITUNG Alle 481
IORF(@) 97 3 E/A–AUFFRISCHUNG Alle außer SRM1 478
JME 05 2 SPRUNGENDE Alle 358
JMP 04 2 SPRUNG Alle 358
KEEP 11 2 KEEP (R–S–FLIP–FLOP) Alle 353
LD Kein 1 LADEN Alle 350
LD NOT Kein 1 LADEN NICHT Alle 350
MAX(@) –– 4 FINDE MAXIMUM CPM2A/CPM2C 449
MCRO(@) 99 4 MAKRO Alle 464
MIN(@) –– 4 FINDE MINIMUM CPM2A/CPM2C 451
MLB(@) 52 4 BINÄR–MULTIPLIKATION Alle 446
MLPX(@) 76 4 4–ZU–16 DEKODER Alle 419
MOV(@) 21 3 ÜBERTRAGEN Alle 388
MOVB(@) 82 4 BIT ÜBERTRAGEN Alle 395
MOVD(@) 83 4 ZIFFER ÜBERTRAGEN Alle 396
MSG(@) 46 2 MELDUNG Alle 477
MUL(@) 32 4 BCD–MULTIPLIKATION Alle 437
MULL(@) 56 4 BCD–DOPPELWORT–MULTIPLIKATION Alle 442
MVN(@) 22 3 ÜBERTRAGEN INVERTIERT Alle 388
NEG(@) –– 4 2er–KOMPLEMENT CPM2A/CPM2C/SRM1(-V2) 432
NOP 00 1 KEINE BEARBEITUNG Alle 355
OR Kein 1 OR Alle 350
OR LD Kein 1 OR LADEN Alle 351
OR NOT Kein 1 OR NOT Alle 350
ORW(@) 35 4 LOGISCHES ODER Alle 458
OUT Kein 2 AUSGABE Alle 352
OUT NOT Kein 2 INVERTIERTE AUSGABE Alle 352
PID –– 4 PID–REGELUNG CPM2A/CPM2C/SRM1(-V2) 403
PRV(@) 62 4 SCHNELLER ZÄHLER– ISTWERT LESEN Alle außer SRM1 376
PULS(@) 65 4 IMPULSAUSGABE CPM1A/CPM2A/CPM2C(Nur Transistorausgänge)
466
PWM(@) –– 4 IMPULS MIT VARIABLEM TASTVERHÄLTNIS CPM2A/CPM2C 473
RET 93 1 UNTERPROGRAMMRÜCKKEHR Alle 464
ROL(@) 27 2 ROTATION NACH LINKS Alle 382
ROR(@) 28 2 ROTATION NACH RECHTS Alle 382
RSET Kein 2 RÜCKSETZEN Alle 352
RXD(@) 47 4 EMPFANGEN CPM2A/CPM2C/SRM1 486
SBB(@) 51 4 BINÄR–SUBTRAKTION Alle 445
SBN 92 2 UNTERPROGRAMM DEFINIEREN Alle 464
SBS(@) 91 2 UNTERPROGRAMM–ANFANG Alle 462
SCL(@) 66 4 SKALIERUNG CPM2A/CPM2C/SRM1(-V2) 397
SCL2(@) –– 4 SKALIERUNG VORZEICHENBEHAFTETERBINÄRWERT ZU BCD
CPM2A/CPM2C 399
SCL3(@) –– 4 SKALIERUNG BCD–WERT ZUVORZEICHENBEHAFTETEM BINÄRWERT
CPM2A/CPM2C 401
SDEC(@) 78 4 7–SEGMENT–DEKODER CPM2A/CPM2C 423
SEC –– 4 STUNDEN ZU SEKUNDEN CPM2A/CPM2C 430
SET Kein 2 SETZEN Alle 352
SFT 10 3 SCHIEBEREGISTER Alle 379
SFTR(@) 84 4 UMKEHRBARES SCHIEBEREGISTER Alle 385
SLD(@) 74 3 EINE STELLE NACH LINKS VERSCHIEBEN Alle 383
SNXT 09 2 SCHRITTBEGINN Alle 360
SPED(@) 64 4 GESCHWINDIGKEITSAUSGABE CPM1A/CPM2A/CPM2C(Nur Transistorausgänge)
467
SRCH(@) –– 4 DATENSUCHE CPM2A/CPM2C 448
SRD(@) 75 3 EIN STELLE NACH RECHTS VERSCHIEBEN Alle 384
7-7AbschnittKontaktplanbefehle
350
AWL–Befehl
SeiteCPU–BaugruppenNameWorteCode
STC(@) 40 1 ÜBERTRAGSMERKER SETZEN Alle 434
STEP 08 2 SCHRITT DEFINIEREN Alle 360
STIM(@) 69 4 INTERVALL–ZEITGEBER Alle 484
STUP –– 3 RS–232C–KONFIGURATION ÄNDERN CPM2A/CPM2C/SRM1 489
SUB(@) 31 4 BCD–SUBTRAKTION Alle 435
SUBL(@) 55 4 BCD–DOPPELWORT–SUBTRAKTION Alle 441
SUM(@) –– 4 SUM CPM2A/CPM2C 455
SYNC(@) –– 4 SYNCHRONISIERTE IMPULSSTEUERUNG CPM2A/CPM2C 475
TCMP(@) 85 4 TABELLEN VERGLEICHEN Alle 410
TIM Kein 2 ZEITGEBER Alle 363
TIMH 15 3 SCHNELLER ZEITGEBER Alle 364
TIML –– 4 LANGER ZEITGEBER CPM2A/CPM2C 367
TMHH –– 4 SEHR SCHNELLER ZEITGEBER CPM2A/CPM2C 366
TXD(@) 48 4 SENDEN CPM2A/CPM2C/SRM1 487
WSFT(@) 16 3 WORTVERSCHIEBUNG Alle 380
XCHG(@) 73 3 DATENAUSTAUSCH Alle 391
XFER(@) 70 4 BLOCKÜBERTRAGUNG Alle 389
XNRW(@) 37 4 EXKLUSIVES NICHT–ODER Alle 460
XORW(@) 36 4 EXKLUSIVES ODER Alle 459
ZCP –– 4 BEREICHSGRÖßEN VERGLEICHEN CPM2A/CPM2C/SRM1(-V2) 414
ZCPL –– 4 BEREICHSGRÖßEN VERGLEICHEN CPM2A/CPM2C 415
7-7 KontaktplanbefehleKontaktplan– und Logik–Blockbefehle korrespondieren mit den Bedingungenim Kontaktplan. Logikblock–Befehle dienen zur Beschreibung komplexer Ab-schnitte des Kontaktplans.
7-7-1 LOAD, LOAD NOT, AND, AND NOT, OR und OR NOT
B: Bit
IR, SR, AR, HR, TC, LR, TR
Kontaktplansymbol Datenbereiche
LOAD – LDB
B: Bit
IR, SR, AR, HR, TC, LRLOAD NOT – LD NOT
B
B: Bit
IR, SR, AR, HR, TC, LRAND – AND
B
B: Bit
IR, SR, AR, HR, TC, LRAND NOT – AND NOTB
B: Bit
IR, SR, AR, HR, TC, LROR – OR B
B: Bit
IR, SR, AR, HR, TC, LROR NOT – OR NOT B
Die Anzahl der verwendeten Befehle wie auch die Reihenfolge ihrer Anwen-dung wird ausschließlich durch die Speicherkapazität der SPS beschränkt.
Einschränkung
7-8AbschnittBitsteuerungs–Befehle
351
Die oben aufgeführten sechs Basisbefehle entsprechen den Bedingungen ineinem Kontaktplan. Wie in Kapitel 6 Kontaktplan–Programmierung erläutert,bestimmt der Zustand der jedem Befehl zugewiesenen Bits die Ausführungsbe-dingungen für alle anderen Befehle. Jeder Befehl und jede Bitadresse kann sooft wie erforderlich verwendet werden.
Der Zustand des dem LD– oder LD NOT–Befehl zugewiesenen Bitoperanden(B) bestimmt die erste Ausführungsbedingung. AND bewirkt eine logische Und–Verknüpfung zwischen der Ausführungsbedingung und dem Zustand des ihr zu-gewiesenen Bitoperanden; AND NOT bewirkt die UND–Verknüpfung zwischender Ausführungsbedigung und dem invertierten Zustand des Bitoperanden. ORbewirkt eine logische ODER–Verknüpfung zwischen der Ausführungsbedigungund dem Zustand des Operandenbits; OR NOT bewirkt die logische ODER–Verknüpfung zwischen der Ausführungsbedigung und dem invertierten Zustanddes Bitoperanden.
Merker Die vorstehenden Befehle haben keine Auswirkungen auf Merker.
7-7-2 AND LOAD und OR LOAD
Kontaktplansymbol
AND LOAD – AND LD00002
00003
00000
00001
Kontaktplansymbol
OR LOAD – OR LD00000 00001
00002 00003
Werden Befehle so zu Blöcken miteinander verbunden, dass keine logischeVerknüpfung über OR und AND möglich ist, muss AND LD bzw. OR LD verwen-det werden. AND and OR stellen eine logische Verknüpfung zwischen einerAusführungsbedingung und dem Zustand eines Bits her, wohingegen AND LDund OR LD zwei Ausführungsbedingungen, die aktuelle und die zuletzt nichtverwendete, logisch miteinander verknüpft.
Zum Programmieren von Kontaktplänen mit dem CX–Programmer ist es nichterforderlich, AND LD und OR LD–Befehle zu verwenden. Sie sind jedoch erfor-derlich, um Programme als AWL einzugeben.
Um die Anzahl der erforderlichen Programmierungsbefehle zu reduzieren istein grundlegendes Verständnis von Logikblöcken erforderlich. Eine Einführungin Logikblöcken finden Sie in Abschnitt 6-3-6 Logikblock–Befehle.
Merker Die vorstehenden Befehle haben keine Auswirkungen auf Merker.
7-8 Bitsteuerungs–BefehleEs gibt sieben Befehle, die allgemein zur Steuerung des individuellen Bitstatusverwendet werden. Diese sind OUT, OUT NOT, DIFU(13), DIFD(14), SET,RSET und KEEP(11). Diese Befehle werden dazu verwendet, Bits auf verschie-dene Weisen zu setzen und rückzusetzen.
Beschreibung
Beschreibung
7-8AbschnittBitsteuerungs–Befehle
352
7-8-1 OUTPUT und OUTPUT NOT – OUT und OUT NOT
B: Bit
IR, SR, AR, HR, LR, TR
Kontaktplansymbol DatenbereicheOUTPUT – OUT
B
B: Bit
IR, SR, AR, HR, LR
Kontaktplansymbol DatenbereicheOUTPUT NOT – OUT NOT
B
Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, derden Zustand des Bits steuert.
OUT und OUT NOT steuern den Status des zugewiesenen Bits entsprechendder Ausführungsbedingung.
Mit OUT wird das entsprechende Bit mit der Ausführungsbedingung WAHR aufEIN gesetzt und bei der Ausführungsbedigung FALSCH auf AUS zurückge-setzt. Bei einem zugewiesenem TR–Bit erscheint OUT an einem Verzwei-gungspunkt anstatt am Ende des Strompfads. Sehen Sie Abschnitt 6-3-8 Ver-zweigungen für weitere Informationen.
Mit OUT NOT wird das entsprechende Bit mit der AusführungsbedingungFALSCH auf EIN gesetzt und bei der Ausführungsbedigung WAHR auf AUS zu-rückgesetzt.
OUT und OUT NOT bewirkt die Steuerung der Programmausführung durch set-zen und rücksetzen der Bits, die den Bedingungen im Kontaktplan zugewiesensind. Dadurch werden die Ausführungsbedigungen für andere Befehle festge-legt. Dies erlaubt eine komplexe Anordnung von Bedingungen zur Steuerungdes Zustands eines einzelnen Hilfsbits, das seinerseits andere Befehle steuert.
Zur Festlegung der Zeitdauer, die ein bestimmtes Bit den Zustand EIN oder AUSeinnimmt, kann OUT und OUT NOT mit dem Zeitgeberfehl TIM verknüpft wer-den. Sehen Sie Abschnitt 7-15-1 ZEITGEBER – TIM für weitere Informationen.
Merker Die aufgeführten Befehle haben keine Auswirkungen auf Merker.
7-8-2 SET und RESET – SET und RSET
B: Bit
IR, SR, AR, HR, LR
Kontaktplansymbol Datenbereiche
SET B
B: Bit
IR, SR, AR, HR, LRRSET B
Mit SET wird das Operandenbit mit der Ausführungsbedingung WAHR auf EINgesetzt. Der Zustand des Bits bleibt jedoch unbeeinflußt, wenn die Ausfüh-rungsbedingung FALSCH ist. Mit RSET wird das Operandenbit auf AUS ge-setzt, wenn die Ausführungsbedingung WAHR ist. Der Zustand des Bits bleibtjedoch unbeeinflußt, wenn die Ausführungsbedingung FALSCH ist.
Die Funktion von SET unterscheidet sich von der von OUT, da der OUT–Befehldas Operandenbit ausschaltet, wenn die Ausführungsbedingung FALSCH ist.
Einschränkung
Beschreibung
Beschreibung
7-8AbschnittBitsteuerungs–Befehle
353
Ebenso unterscheidet sich RSET von OUT NOT, da OUT NOT das Operanden-bit einschaltet, wenn die Ausführungsbedingung FALSCH ist.
Hinweis Geben Sie SET auf der Programmierkonsole ein, indem Sie die FUN– und SET–Tasten drücken und RSET, indem Sie den FUN– und RESET–Tasten drücken.
Vorsichtsmaßnahmen Sollten die Operandenbits von SET und RSET zwischen IL(02) und ILC(03)oder JMP(04) und JME(05) liegen, so wird ihr Status nicht geändert, falls dieVerriegelungs– oder Sprungbedingung erfüllt ist (Ausführung von IL(02) oderJMP(04) mit einer FALSCH–Ausführungsbedingung).
Merker Die aufgeführten Befehle haben keine Auswirkungen auf Merker.
Beispiele Die folgenden Beispiele veranschaulichen die Unterschiede zwischen denOUT- und SET/RSET–Befehlen. Im ersten Beispiel ( Diagramm A) wird IR20000 immer dann gesetzt oder rückgesetzt, wenn IR 00000 gesetzt oder rück-gesetzt wird.
Im zweiten Beispiel (Diagramm B) wird IR 20000 gesetzt, wenn IR 00001 ge-setzt wird und bleibt gesetzt (auch wenn IR 00001 rückgesetzt wird), bis IR00002 gesetzt wird.
00000
Diagramm A
00002
RSET 20000
Diagramm B
SET 20000
00001
Adresse Befehl Operanden
00000 LD 00000
00001 OUT 20000
Adresse Befehl Operanden
00000 LD 00001
00001 SET 20000
00002 LD 00002
00003 RSET 20000
20000
7-8-3 KEEP (R–S– Flip–Flop) – KEEP(11)
B: Bit
IR, SR, AR, HR, LR
Kontaktplansymbol DatenbereicheS
R
KEEP (11)
B
Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, derden Zustand des Bits steuert.
KEEP(11) wird dazu verwendet, den Status des zugewiesenen Bits, und zwarabhängig von zwei Ausführungsbedingungen, zu erhalten. Die Ausführungsbe-digungen sind S (SETZ–Eingang) und R (RÜCKSETZ–Eingang). KEEP(11) ar-beitet wie ein RS–Flip–Flop, das durch S ein– und durch R ausgeschaltet wird.
Wird die Ausführungsbedigung S WAHR, wird das zugewiesene Bit GESETZTund bleibt GESETZT, völlig unabhängig davon, ob die AusführungsbedingungWAHR bleibt oder auf FALSCH wechselt. Wird die Ausführungsbedingung für RWAHR, wird das zugewiesene Bit ZURÜCKGESETZT und bleibt RÜCKGE-SETZT, völlig unabhängig davon, ob die Ausführungsbedingung WAHR bleibtoder auf FALSCH wechselt. Das Verhältnis zwischen den Ausführungsbedin-
Einschränkung
Beschreibung
7-8AbschnittBitsteuerungs–Befehle
354
gungen und dem durch KEEP(11) erzeugten Bitstatus ist nachfolgend darge-stellt:
S–Ausführungs–bedingung
R–Ausführungs–bedingung
Bitstatus
Merker Der Befehl hat keine Auswirkungen auf Merker.
Seien Sie vorsichtig, wenn ein externer Öffnerkontakt die KEEP–Rücksetzungsteuert. Verwenden Sie niemals ein Eingangsbit mit invertierter Bedingung fürdie RESET(R)–Ausführungsbedingung, falls das Eingangsgerät über eine AC–Spannungsversorgung verfügt. Die Verzögerung beim Abschalten der SPS mitDC–Spannungsversorgung (relativ zur AC–Spannungsversorung am Ein-gangsgerät) kann dazu führen, dass das dem KEEP(11)–Befehl zugewieseneBit RÜCKGESETZT wird. Dies ist nachfolgend dargestellt.
A
Eingangsbaugruppe
A
NIE
S
R
KEEP (11)
B
Bits, die dem KEEP–Befehl zugewiesenen sind, werden nicht in INTER-LOCK(Verriegelungs)–Bereichen ZURÜCKGESETZT. Sehen Sie Abschnitt7-11 INTERLOCK und INTERLOCK CLEAR IL(02) und ILC(03) für weitere In-formationen.
7-8-4 DIFFERENTIATE UP and DOWN (Ausführung beisteigender/fallender Flanke) – DIFU(13) und DIFD(14)
B: Bit
IR, SR, AR, HR, LR
Kontaktplansymbole Datenbereiche
DIFU(13) B
B: Bit
IR, SR, AR, HR, LRDIFD(14) B
Jedes Ausgangsbit kann generell nur mit dem Befehl verwendet werden, derden Zustand des Bits steuert.
DIFU(13) und DIFD(14) werden dazu verwendet, das zugewiesene Bit für ge-nau einen Zyklus auf EIN zu setzen.
Bei jeder Ausführung von DIFU(13) wird die aktuelle Ausführungsbedigung mitder vorhergehenden Ausführungsbedingung verglichen. War die vorherge-hende Ausführungsbedingung FALSCH und ist die aktuelle Ausführungsbedin-gung WAHR, setzt DIFU(13) das zugewiesene Bit auf EIN. War die vorherge-hende Ausführungsbedingung WAHR und die aktuelle Ausführungsbedingungist entweder WAHR oder FALSCH, wird DIFU(13) das entsprechende Bit entwe-der auf AUS setzen, oder, falls es bereits den Zustand AUS hatte, in diesem Zu-stand belassen. Unter der Voraussetzung, dass das zugewiesene Bit in jedemZyklus abgearbeitet wird, führt dies dazu, dass das Bit den Status EIN niemals
Vorsichtsmaßnahmen
Einschränkung
Beschreibung
7-10AbschnittEND (ENDE) – END(01)
355
länger als für einen Zyklus einnimmt (sehen Sie auch die folgenden Vorsichts-maßnahmen).
Bei jeder Ausführung von DIFD(14) wird die aktuelle Ausführungsbedigung mitder vorhergehenden Ausführungsbedingung verglichen. Ist die vorhergehendeAusführungsbedingung WAHR und die gegenwärtige FALSCH, schaltetDIFD(14) das entsprechende Bit ein. War die vorhergehende Ausführungsbe-dingung FALSCH und ist die aktuelle Ausführungsbedingung entweder EINoder AUS, wird DIFD(14) das zugewiesene Bit entweder auf AUS setzen, oder,falls es bereits den Zustand AUS hatte, in diesem Zustand belassen. Unter derVoraussetzung, dass das zugewiesene Bit in jedem Zyklus abgearbeitet wird,führt dies dazu, dass das Bit den Status EIN niemals länger als für einen Zykluseinnimmt (sehen Sie auch die folgenden Vorsichtsmaßnahmen).
Die DIFU(13)– und DIFD(14)–Befehle werden verwendet, wenn für einen be-stimmten Befehl die flankengetriggerte Form (d.h. Befehl mit @–Präfix) nichtverfügbar ist, die Ausführung des Befehls sich aber dennoch auf nur einen Zy-klus beschränken soll. Sie können auch dann verwendet werden, wenn eineflankengetriggerte Form zwar verfügbar ist, die Anwendung von DIFU(13) undDIFD(14) das Programm aber erheblich vereinfacht. Entsprechende Beispielewerden später dargestellt.
Merker Die vorstehenden Befehle haben keine Auswirkungen auf Merker.
Die Ergebnisse der Abarbeitung von DIFU(13) und DIFD(14) sind nicht be-stimmbar, wenn die Befehle zwischen IL und ILC, JMP und JME oder in Unter-programmen verwendet werden. Sehen Sie Abschnitt 7-11 INTERLOCK undINTERLOCK CLEAR – IL(02) und ILC(03), Abschnitt 7-12 JUMP und JUMPEND – JMP(04) und JME(05), Abschnitt 7-26 Unterprogramme und Abschnitt7-29-1 Interrupt–Steuerung – INT (89) für weitere Informationen.
In diesem Beispiel wird IR 20014 für einen Zyklus auf EIN gesetzt, sobald IR00000 GESETZT wird. IR 20015 wird auf EIN gesetzt, sobald IR 00000 ZU-RÜCKGESETZT wird.
DIFU(13) 20014
00000Adresse Befehl Operanden
00000 LD 00000
00001 DIFU(13) 20014
00002 DIFD(14) 20015DIFD(14) 20015
7-9 NO OPERATION (Keine Funktion) – NOP(00)Der NOP(00)–Befehl ist im wesentlichen funktionslos und daher im allgemeinennicht erforderlich. Es gibt kein korrespondierendes Kontaktplansymbol. Bei derProgrammausführung wird NOP(00) übergangen und die Ausführung mit demnächsten Befehl fortgesetzt. Wird vor Beginn der Programmierung der Speichergelöscht, werden alle Adressen mit NOP(00) belegt. NOP(00) kann durch denFunktionscode 00 eingegeben werden.
Merker NOP(00) hat keine Auswirkungen auf Merker.
7-10 END (ENDE) – END(01)
Kontaktplansymbol END(01)
Mit END(01) wird jedes Programm abgeschlossen. Sollten Unterprogrammevorhanden sein, wird END(01) hinter das letzte Unterprogramm gesetzt. Be-fehle hinter dem END(01)–Befehl werden weder erkannt noch ausgeführt.END(01) kann an beliebiger Stelle im Programm verwendet werden. Dies ist
Vorsichtsmaßnahmen
Beispiel
Beschreibung
Beschreibung
7-11AbschnittINTERLOCK und INTERLOCK CLEAR (Verriegelungsbefehle) – IL(02) und ILC(03)
356
insbesondere für Testläufe von Bedeutung, wenn das Programm abschnitt-weise ausgeführt werden soll, um Fehler in der Programmierung einzugrenzen.
Wird kein END(01) im Programm programmiert, kann das Programm nicht aus-geführt werden und die Fehlermeldung “NO END INST” wird angezeigt.
Merker END(01) setzt die Merker ER, CY, GR, EQ und LE zurück.
7-11 INTERLOCK und INTERLOCK CLEAR(Verriegelungsbefehle) – IL(02) und ILC(03)
Kontaktplansymbol IL(02)
Kontaktplansymbol ILC(03)
IL(02) und ILC(03) werden zur Verriegelgung bestimmter Abschnitte im Kon-taktplan verwendet. Die Funktionsweise (Erzeugung von Verzweigungen) istder von TR–Bits ähnlich aber die Abarbeitung der Befehle zwischen IL(02) undILC(03) unterscheidet sich, wenn die Ausführungsbedingung für IL(02)FALSCH ist. Ist die Ausführungsbedingung für IL(02) WAHR, wird das Pro-gramm zwischen IL(02) und ILC(03) wie programmiert ausgeführt. Sehen Sieden Abschnitt 6-3-8 Verzweigungsbefehle für weitere Informationen.
Ist die Ausführungsbedigung für IL(02) FALSCH, wird der verriegelte Abschnittzwischen IL(02) und ILC(03) folgendermaßen abgearbeitet:
Befehl Auswirkung in INTERLOCK–Bereich
OUT und OUT NOT Das zugewiesene Bit wird auf AUS gesetzt.
TIM und TIMH(15) Zeitgeber werden rückgesetzt.
CNT, CNTR(12) Der Istwert bleibt erhalten.
KEEP(11) Der Bitstatus bleibt erhalten.
DIFU(13) und DIFD(14) Die Befehle werden nicht ausgeführt (sehen Sie dienachfolgende Beschreibung).
Alle anderen Befehle Die Befehle werden nicht ausgeführt und alle ihnen zuge-wiesenen IR–, AR–, LR–, HR– und SR–Operandenbitsund –worte werden zurückgesetzt.
IL(02) und ILC(03) müssen nicht unbedingt paarig verwendet werden. IL(02)kann mehrere Male hintereinander verwendet werden, wobei jedes IL(02) einenverriegelten Abschnitt bis hin zum nächsten ILC(03) erzeugt. ILC(03)–Befehlekönnen nicht hintereinander verwendet werden. Zwischen zwei ILC(03)–Befeh-len muss zumindest ein IL(02)-Befehl programmiert werden.
Befinden sich DIFU(13)– oder DIFD(14)–Befehle in einem verriegelten Ab-schnitt und ist die Ausführungsbedingung für IL(02) FALSCH, werden Änderun-gen der Ausführungsbedingungen für DIFU(13) und DIFD(14) nicht ausgewer-tet. Befinden sich DIFU(13) oder DIFD(14) in einem verriegelten Abschnitt desProgramms und werden unmittelbar, nachdem die Ausführungsbedingung fürIL(02) WAHR wurde, ausgeführt, werden die Ausführungsbedingungen vonDIFU(13) und DIFD(14) mit der vor Aktivierung der Verriegelung existierendenAusführungsbedingung verglichen. Die Veränderungen im Kontaktplan und derBitzustände sind nachfolgend dargestellt. Die Verriegelung ist aktiviert, solange00000 nicht gesetzt ist. Beachten Sie, dass 20000 am durch ”A” gekennzei-
Beschreibung
DIFU(13) und DIFD(14) inverriegeltenProgrammabschnitten
7-11AbschnittINTERLOCK und INTERLOCK CLEAR (Verriegelungsbefehle) – IL(02) und ILC(03)
357
chenten Punkt nicht GESETZT wird, auch wenn 00001 zunächst zurückgesetztund dann wieder gesetzt wurde.
00000
IL(02)
DIFU(13) 20000
ILC(03)
00001
00000
00001
EIN
AUS
EIN
AUS
20000EIN
AUS
A
Adresse Befehl Operanden
00000 LD 00000
00001 IL(02)
00002 LD 00001
00003 DIFU(13) 20000
00004 ILC(03)
Einem oder mehreren IL(02) muss ein ILC(03) folgen.
Obwohl beliebig viele IL(02)–Befehle mit einem ILC(03)–Befehl verwendet wer-den können, muss zwischen zwei ILC(03)–Befehlen mindest ein IL(02)–Befehlprogrammiert sein. Bei der Ausführung von ILC(03) werden alle Verriegelungenzwischen der aktuellen ILC(03) und der vorhergehenden ILC(03) zurückge-setzt.
Werden mehrere IL(02) mit einem einzigen ILC(03) verwendet, gibt das Pro-grammiergerät bei der Programmüberprüfung eine Warnmeldung aus. Die Pro-grammausführung wird jedoch fortgesetzt.
Merker Die vorstehenden Befehle haben keine Auswirkungen auf Merker.
Beispiel Das folgende Diagramm zeigt die zweimalige Verwendung von IL(02) mit nureinem ILC(03)–Befehl.
Adresse Befehl Operanden
00000 LD 00000
00001 IL(02)
00002 LD 00001
00003 TIM 000
# 0015
00004 LD 00002
00005 IL(02)
00006 LD 00003
00007 AND NOT 00004
00008 LD 00100
00009 CNT 001
010
00010 LD 00005
00011 OUT 01002
00012 ILC(03)
00000
00001
ILC(03)
IL(02)
00004
00005
00003
00002
IL(02)
01002
CP
R
CNT001
IR 01000100
1.5 s
TIM 000
#0015
Ist die Ausführungsbedingung für den ersten IL(02)–Befehl FALSCH, wird TIM000 auf 1,5 s zurückgesetzt, der Zähler (CNT 001) ändert sich nicht und 01002wird zurückgesetzt. Ist die Ausführungsbedingung für den ersten IL(02)–BefehlWAHR und die Ausführungsbedigung für den zweiten IL(02)–Befehl FALSCH,wird TIM 000 entsprechend dem Zustand von 00001 ausgeführt, CNT 001 wirdnicht geändert und 01002 zurückgesetzt. Sind beide Ausführungsbedingungenfür die IL(02)–Befehle WAHR, wird das Programm wie programmiert ausge-führt.
Vorsichtsmaßnahmen
7-12AbschnittJUMP und JUMP END (Sprungbefehle) – JMP(04) und JME(05)
358
7-12 JUMP und JUMP END (Sprungbefehle) – JMP(04) undJME(05)
N: Sprungnummer
#
Kontaktplansymbol Datenbereiche
JMP(04) N
N: Sprungnummer
#JME(05) N
Die Sprungnummern 01 bis 49 können nur ein einziges Mal mit dem BefehlJMP(04) bzw. JME(05) verwendet werden, d.h. sie definieren nur jeweils eineneinzelnen Sprung. Die Sprungnummer 00 kann beliebig oft verwendet werden.
JMP(04) wird immer paarweise mit JME(05) verwendet, um Sprungfunktionenzu erzeugen, d.h. um von einem bestimmten Punkt im Kontaktplan ganze Ab-schnitte bis zu einem anderen Punkt zu überspringen. Dabei definiert JMP(04)den Punkt, von dem ab der Sprung ausgeführt werden soll und JME(05) das Zieldes Sprungs. Ist die Ausführungsbedingung für JMP(04) WAHR, wird keinSprung durchgeführt und die Programmausführung vielmehr fortgesetzt. Ist dieAusführungsbedingung für JMP(04) FALSCH, erfolgt ein Sprung bis hin zu demüber die gleiche Sprungnummer definierten JME(05) und der Befehl, der aufJME(05) folgt, wird als nächstes ausgeführt.
Liegt die Sprungnummer für JMP(04) zwischen 01 und 49, erfolgen Sprünge so-fort zu JME(05) mit der gleichen Sprungsnummer, ohne dazwischenliegendeBefehle auszuführen. Der Status von Zeitgebern, Zählern und allen anderenBits, die über Befehle gesteuert werden, die den Abschnitt zwischen JMP(04)und JME(05) belegen, wird nicht geändert. Jede der Sprungnummern zwischen01 und 99 kann nur ein einziges Mal verwendet werden. Da alle Befehle zwi-schen JMP(04) und JME(05) übersprungen werden, können die Sprünge 01 bis49 dazu verwendet werden, die Zykluszeit zu reduzieren.
Sprungnummer 00Wird die Sprungnummer 00 mit dem JMP(04)–Befehl verwendet, wird nachdem nächsten JME(05) mit Sprungnummer 00 gesucht. Auf Grund dieses Su-chungsvorgangs verlängert sich die Zykluszeit im Vergleich zu den anderenSprungbefehlen.
Der Status von Zeitgebern, Zählern und allen anderen Bits, die über Befehle ge-steuert werden, wird nicht geändert, sollten sie im Abschnitt zwischen JMP(04)00 und JME(05) 00 liegen. Die Sprungnummer 00 kann beliebig oft verwendetwerden. Ein Sprung von JMP(04) 00 führt immer zum nächsten JME(05) 00 imProgramm. Hierdurch ist es möglich, mehrere JMP(04) 00 nacheinander zu ver-wenden, die dann alle das gleiche Ziel JME(05) 00 haben. Auf der anderen Seiteist es sinnlos, mehrere JME(05) 00 nacheinander zu verwenden, da alleSprünge zum ersten definierten JME(05) 00 führen.
Wurden DIFU(13) und DIFD(14) so programmiert, ein entsprechendes Bit aufEIN zu setzen, so ist dies nicht notwendiger Weise der Fall, wenn die Befehle imBereich zwischen JMP(04) und JME(05) liegen. Hat DIFU(13) bzw. DIFD(14)das Bit gesetzt, bleibt es gesetzt, bis der Befehl erneut abgearbeitet wird. ImNormalfall geschieht dies im nächsten Zyklus. Wurde jedoch ein Sprungbefehlgesetzt, kann eine Statusänderung des Bits erst erfolgen, wenn die Sprungfunk-tion nicht ausgeführt wird. Wird nämlich ein Bit durch DIFU(13) bzw. DIFD(14)auf EIN gesetzt und dann im nächsten Zyklus ein Sprung durchgeführt, so daßDIFU(13) und DIFD(14) übergangen werden, wird das zugewiesene Bit solangegesetzt bleiben, bis die Ausführungsbedigung für JMP(04) das nächste Mal aufEIN gesetzt wird.
Einschränkung
Beschreibung
DIFU(13) und DIFD(14) inSprüngen
7-13AbschnittAnwenderdefinierte Fehlerbefehle
359
Wird TIMH(15) oder TMHH(––) zwischen JMP(04) und JME(05) programmiert,erfogt eine Zeitnahme durch einen Interrupt, wenn die Sprungnummern 01 bis49 verwendet werden; keine Zeitnahme erfolgt, wenn Sprungnummer 00 ver-wendet wird.
Werden JMP(04) und JME(05) nicht paarig verwendet, wird bei der Programm-überprüfung eine entsprechende Warnmeldung ausgegeben. Diese Meldungerfolgt auch dann, wenn JMP(04) 00 und JME(05) 00 nicht paarweise eingege-ben wurden. Die Warnmeldung hat aber auf die korrekte Programmausführungkeine Auswirkung.
Merker Die aufgeführten Befehle haben keine Auswirkungen auf Merker.
Beispiele Beispiele von Sprungfunktion sind in Abschnitt 6-3-9 Sprungbefehle dargestellt.
7-13 Anwenderdefinierte FehlerbefehleFAILURE ALARM AND RESET und SEVERE FAILUREALARM – FAL(06) und FALS(07)
n: FAL–Nummer
# (00 bis 99)
Kontaktplansymbole Datenbereiche
@FAL(06) nFAL(06) n
n: FAL–Nummer
# (01 bis 99)FALS(07) n
FAL(06) und FALS(07) geben Fehlernummern bei Betriebsstörungen, währendder Wartung und bei Testläufen aus. Ist die Ausführungsbedingung WAHR, wirdeine FAL–Nummer im Bereich 00 bis 07 von SR 253 ausgegeben. Diese FAL–Nummer reicht von 01 bis 99 und wird als Operand von FAL(06) und FALS(07)eingegeben. Der Operand 00 von FAL(06) setzt den nachfolgend dargestelltenSpeicherbereich zurück:
25307 25300
X101 X100
FAL–Bereich
FAL(06) erzeugt einen geringfügigen Fehler, FALS(07) einen schwerwiegen-den Fehler. Wird FAL(06) bei der Ausführungsbedingung WAHR ausgeführt,blinkt die ALARM/ERROR–LED auf der Vorderseite der CPU–Baugruppe. DerBetrieb wird allerdings fortgesetzt. Wird FALS(07) mit der Ausführungsbedin-gung WAHR ausgeführt, leuchtet die ALARM/ERROR–LED kontinuierlich undder SPS–Betrieb wird unterbrochen.
Das System generiert auch Fehlercodes im FAL–Bereich.
FAL–Fehlercodes bleiben im Speicher erhalten, wobei jedoch nur ein einzigerCode im FAL–Bereich verfügbar ist. Um auf die anderen FAL–Codes zuzugrei-fen, muss der FAL–Bereich mittels FAL(06) 00 zurückgesetzt werden. JedesMal, wenn FAL(06) 00 ausgeführt wird, wird ein anderer FAL–Fehler in denFAL–Bereich verschoben. Der aktuelle FAL–Code wird dabei gelöscht.
FAL(06) 00 dient auch zum Löschen von Meldungen, die durch MSG(46) ange-zeigt werden.
Kann der FAL–Bereich nicht gelöscht werden, was z.B. regelmäßig dann derFall ist, wenn ein schwerwiegenden Fehler durch FALS(07) angezeigt wurde,
TIMH(15) und TMHH(––) inSprüngen
Vorsichtsmaßnahmen
Beschreibung
Rücksetzen von Fehlern
7-14AbschnittSchrittbefehle
360
muss zunächst die Fehlerursache beseitigt werden. Anschließend kann derFAL–Bereich über die Programmierkonsole gelöscht werden.
7-14 SchrittbefehleSTEP DEFINE und STEP START (Schritt und nächster Schritt) – STEP(08)/SNXT(09)
B: Steuerbit
IR, AR, HR, LR
Kontaktplansymbole Datenbereiche
STEP(08) B STEP(08)
B: Steuerbit
IR, AR, HR, LR
SNXT(09) B
Einschränkung Alle Steuerbits müssen aufeinanderfolgen und im gleichen Wort enthalten sein.
Die Schrittbefehle STEP(08) und SNXT(09) werden paarweise dazu verwen-det, das Programm so zu strukturieren, dass größere Abschnitte als gesonderteEinheiten sowohl ausgeführt als auch zurückgesetzt werden können. Der Pro-grammabschnitt wird normalerweise so definiert, dass er mit einem bestimmtenVorgang in der Anwendung korrespondiert. (Anwendungsbeispiele werdenspäter in diesem Abschnitt dargestellt). Ein Schrittbefehl verhält sich wie jederandere Programmiercode, mit dem Unterschied, dass bestimmte Befehle (wiez.B. END(01), IL(02)/ILC(03), JMP(04)/JME(05) und SBN (92)) in diesem Pro-grammabschnitt nicht enthalten sein dürfen.
STEP(08) verwendet ein Steuerbit aus dem IR– oder HR–Bereich, das den An-fang des durch den Schrittbefehl definierten Programmabschnitts kennzeich-net. STEP(08) erfordert keine Ausführungsbedingung, wird also durch das Bitselbst gesteuert. Die Ausführung der Schrittbefehl wird durch SNXT(09) einge-leitet, wobei das gleiche Steuerbit wie für den STEP(08)–Befehl verwendet wer-den muss. Der Schritt wird ausgeführt, wenn die Ausführungsbedingung fürSNXT(09) WAHR ist. Ist die Ausführungsbedingung FALSCH, wird der Befehlignoriert. Der SNXT(09)–Befehl muss im Programmcode vor dem Abschnitt ste-hen, der durch den Schrittbefehl gesteuert werden soll. Er kann auch mehrfachund verschiedentlich verwendet werden, um z. B. eine Steuerung basierend aufzwei Ausführungsbedingungen zu ermöglichen (sehen Sie das nachfolgendeBeispiel 2). Kein Schritt, der nicht durch SNXT(09) beginnt, wird im Programmausgeführt.
SNXT(09) wird solange ausgeführt, bis das Programm einen STEP(08)–Befehlohne Steuerbit erreicht. Dabei muss dem STEP(08) ohne Steuerbit einSNXT(09) mit einem funktionslosen Pseudosteuerbit, z.B. ein nicht verwende-tes Bit aus dem IR– oder HR–Bereich, vorangegangen sein. Es darf keinesfallsdas Steuerbit sein, das für den STEP(08)–Befehl verwendet wurde.
Beschreibung
7-14AbschnittSchrittbefehle
361
Die Schrittausführung wird entweder durch den folgenden SNXT(09)–Befehloder durch Rücksetzen des entsprechenden Steuerbits beendet. Danach sindalle IR– und HR–Bits im Step–Bereich auf AUS gesetzt. Die Zeitgeber sind aufden Sollwert zurückgesetzt. Zähler, Schieberegister und Bits, die einem KEEP–Befehl zugewiesen sind, behalten ihren Status bei. Nachfolgend zwei Beispiele:
SNXT(09) LR 1005
STEP(08) LR 1005
00000
Schrittsteuerung über LR 1005
SNXT(09) 20200
STEP(08) 20200
00001
Über IR 20200 gesteuerter Schritt
SNXT(09) 23000
STEP(08)
00002
Beginn der Schrittausführung
Ende der Schrittausführung
1. Schritt
2. Schritt
Adresse Befehl Operanden Adresse Befehl Operanden
00000 LD 00000
00001 SNXT(09) LR 1005
00002 STEP(08) LR 1005
Schritt von LR 1005 gesteuert
00100 LD 00001
00101 SNXT(09) 20200
00102 STEP(08) 20200
Schritt über IR 20200 gesteuert
00200 LD 00002
00201 SNXT(09) 23000
00202 STEP(08) –––
Schritte können nacheinander programmiert werden. Jeder Schritt wird durchSTEP(08) eingeleitet und mit SNXT(09) beendet. In diesem Fall sind drei Aus-führungsarten möglich: sequentiell, verzweigend oder parallel. Die Ausfüh-rungsbedingungen für und die Positionierung von SNXT(09) legt fest, wie dieSchritte ausgeführt werden. Die drei nachfolgenden Beispiele veranschauli-chen die drei möglichen Varianten.
Verriegelungen, Sprünge, SBN(92) und END(01) können nicht innerhalb einesSTEP–Bereiches verwendet werden.
Die Steuerbits der STEP–Befehle dürfen ansonsten nicht im Programm ver-wendet werden (sehen Sie das nachfolgende Beispiel 3). Alle Steuerbits müs-sen aufeinanderfolgen und im gleichen Wort enthalten sein.
Werden IR– und LR–Bits als Steuerbits verwendet, geht deren Status bei Span-nungsunterbrechung verloren. Sollte es notwendig sein, den Status aufrecht zuerhalten, müssen HR–Bits verwendet werden.
Vorsichtsmaßnahmen
7-15AbschnittZeitgeber– und Zählerbefehle
362
Merker 25407: Schrittstart–Merker: wird für einen Zyklus gesetzt, wenn STEP(08) aus-geführt wird. Er kann zum Zurücksetzen von Zählern in Schritten ver-wendet werden.
SNXT(09) 20000
CP
R
CNT 001
#0003
00000
00100
25407
STEP(08) 20000
1 Zyklus
25407
20000
Start
Adresse Befehl Operanden Adresse Befehl Operanden
00000 LD 00000
00001 SNXT(09) 20000
00002 STEP(08) 20000
00003 LD 00100
00004 LD 25407
00005 CNT 01
# 0003
7-15 Zeitgeber– und ZählerbefehleTIM und TIMH(15) sind Einschaltverszögerungs–Zeitgeber. Beide erforderneine TC–Nummer und einen voreingestellten Sollwert. STIM (69) wird dazu ver-wendet, Intervallzeitgeber zu steuern, die Interruptprogramme aktivieren.
CNT ist ein Abwärtszähler, CNTR(12) ein umkehrbarer Zähler. Beide erfordernebenfalls eine TC–Nummer und einen Sollwert. Sie sind mehreren Strompfa-den zugeordnet, dem Signaleingang und der Rücksetzleitung. CTBL(63),INI(61) und PRV(62) werden zur Steuerung des Schnellen Zählers verwendet.INI(61) dient auch zum Abbruch der Impulsausgabe.
Eine TC–Nummer darf innerhalb eines Programms nur einmal verwendet wer-den: entweder für einen Zeitgeber– oder einen Zählerbefehl. Hingegen könnensie als Operanden beliebig oft verwendet werden (nicht in Zeitgeber/Zählerbe-fehlen).
TC–Nummern stehen im Bereich von 000 bis 255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127 (CPM1/CPM1A/SRM1(-V2)) zur Verfü-gung. Kein Präfix ist erforderlich, wenn die TC–Nummer als Zuweiser in einemZeitgeber– oder Zählerbefehl verwendet wird. Nachdem die TC–Nummer für ei-nen Zeitgeber spezifiziert wurde, kann diese mit dem Präfix TIM versehen wer-den und als Operand in bestimmten Anweisungen vorangestellt werden. DasTIM–Präfix wird ohne Rücksicht auf den Zeitgeberbefehl verwendet, der zur De-finition des Zeitgebers verwendet wurde. Nachdem die TC–Nummer für einenZähler spezifiziert wurde, kann diese mit dem Präfix CNT versehen und alsOperand in bestimmten Anweisungen vorangestellt werden. Das CNT–Präfixwird ohne Rücksicht auf den Zählerbefehl verwendet, der zur Definition desZählers verwendet wurde.
Als Operanden können TC–Nummern Bit– oder Wortdaten adressieren. Wer-den die TC–Nummern als Operanden mit Bitdatenzugriff definiert, greift die TC–Nummer auf ein Bit zu, das als ‘Fertigmerker’ fungiert und das anzeigt, wenn dieZeitnahme/Zählung abgelaufen ist, d.h. das normalerweise deaktivierte Bit wirdaktiviert, wenn der bezeichnete Sollwert abgelaufen ist. Wird die TC–Nummerals Operand mit Wortdatenzugriff definiert, greift die TC–Nummer auf eine Spei-cheradresse zu, auf der der Istwert des Zeitgebers oder Zählers gespeichert ist.Der Istwert eines Zeitgebers oder Zählers kann so als Operand in CMP(20) oderjedem anderen Befehl verwendet werden, der für den TC–Bereich zulässig ist.
7-15AbschnittZeitgeber– und Zählerbefehle
363
Beachten Sie, das “TIM 000” dazu verwendet wird, den Zeitgeberbefehl mit derTC–Nummer 000 zu definieren, um den Fertigmerker für diesen Zeitgeber zubestimmen und den Istwert dieses Zeitgebers zu kennzeichnen. Die Bedeutungdes Ausdrucks geht aus dem Kontext hervor, d.h. die erste Anwendung ist im-mer ein Befehl, die zweite ist immer ein Bitoperand und die dritte ein Wortope-rand. Das gleiche gilt für alle anderen TC–Nummern, die mit dem Präfix TIModer CNT versehen werden.
Ein Sollwert kann als Konstante eingegeben werden oder als Wortadresse ineinem Datenbereich. Wird ein E/A–Adressbereichswort einer Eingangsbau-gruppe als Wortadresse spezifiziert, kann die Eingangsbaugruppe so verdrah-tet werden, dass der Sollwert extern über Daumenradschalter oder ähnlicheGeräte eingestellt werden kann. Dies ist nur dann möglich, wenn sich die SPS inder RUN– oder MONITOR–Betriebsart befindet. Alle extern einzustellendenSollwerte müssen im BCD–Format eingegeben werden.
7-15-1 TIMER (ZEITGEBER) – TIM
N: TC–Nummer
#
Kontaktplansymbol
Datenbereiche
SW: Sollwert (Wort, BCD)
IR, SR, AR, DM, HR, LR, #
Datenbereiche
TIM N
SV
Der Sollwert kann im Bereich zwischen 000.0 und 999.9 liegen. Der Dezimal-punkt wird nicht eingegeben.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder einenZÄHLERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von000 bis 255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Wird der TIMH(15)–Befehl benötigt, sollten TC 000 bis TC 003 (TC 000 bis TC015 bei der CPM2A/CPM2C) nicht für den normalen TIM–Befehl verwendetwerden. Sehen Sie den Abschnitt 7-15-2 SCHNELLER ZEITGEBER –TIMH(15) für weitere Informationen.
In den SPS der CPM2A/CPM2C–Serien sollte TC 004 bis TC 007 nicht für TIMverwendet werden, wenn TMHH(––) benötigt wird. Sehen Sie 7-15-3 SEHRSCHNELLER ZEITGEBER – TMHH(––) für weitere Informationen.
Ein Zeitgeber wird aktiviert, sobald die entsprechende AusführungsbedingungWAHR wird. Er wird auf den Sollwert zurückgesetzt, wenn die Ausführungsbe-dingung FALSCH wird. Ist er aktiviert, zählt er, bezogen auf den Sollwert, im0,1–Sekundentakt abwärts.
Bleibt die Ausführungsbedingung solange WAHR, bis TIM auf Null zurückge-zählt hat, wird der Fertigmerker für die entsprechende TC–Nummer gesetzt. Erbleibt gesetzt, bis TIM zurückgesetzt wird, d.h. die AusführungsbedingungFALSCH wird.
Die folgende Abbildung veranschaulicht das Verhältnis zwischen der Ausfüh-rungsbedingung für TIM und dem zugewiesenen Fertigmerker.
Ausführungs–bedingung
Fertigmerker
WAHR
FALSCH
WAHR
FALSCH
SW SW
Einschränkungen
Beschreibung
7-15AbschnittZeitgeber– und Zählerbefehle
364
Zeitgeber in einem verriegelten Programmabschnitt werden zurückgesetzt,wenn die Ausführungsbedingung für IL(02) FALSCH ist. Unterbrechungen derSpannungsversorgung führen ebenfalls zur Rücksetzung der Zeitgeber. Sollalso der Istwert des Zeitgebers bei Auftreten eines Stromausfalls erhalten blei-ben, muss eine Zeitgeberschaltung mit nullspannungsicherem Istwert unterVerwendung von Taktimpulsbits aus dem SR–Bereich programmiert werden.Sehen Sie Abschnitt 7-15-5 ZÄHLER – CNT für weitere Informationen.
Der Fertigmerker kann einen Zyklus später gesetzt werden, wenn seinen Zu-stand im Anwenderprogramm gelesen wird.
Setzen Sie in der On–Line–Editierung immer den Zeitgeber neu, nach dem SieTIM in TIMH(15) oder umgekehrt geändert haben. Der Zeitgeber funktioniertnicht richtig, wenn er nicht zurückgesetzt wird.
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird derSollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker irgendwozwischen 0 und 0,1 s aktiviert, nachdem die Ausführungsbedingung des Zeitge-bers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt eigentlich die Zeit);der Fertigmerker kann auch aktivert werden, sobald die Ausführungsbedingungdes Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –0,1 s) in Anwen-dungsprogrammen.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-15-2 HIGH–SPEED TIMER (Schneller Zeitgeber) – TIMH(15)
n: TC–Nummer
#
Kontaktplansymbol
Datenbereiche
SW: Sollwert (Wort, BCD)
IR, SR, AR, DM, HR, LR, #
Datenbereiche
TIMH(15) n
SW
Der zulässige Sollwert liegt zwischen 00,00 und 99,99. (Auch 00,00 und 00,01sind zulässige Werte. Die Eingabe von 00,00 führt jedoch dazu, dass der Zeitge-ber außer Funktion gesetzt wird, da der Fertigmerker sofort gesetzt wird. DerWert 00,01 wird vom System nicht zuverlässig erkannt). Der Dezimalpunkt wirdnicht eingegeben.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
TIMH(15) arbeitet in gleicher Weise wie TIM, mit dem Unterschied, dass dieTaktzeit lediglich 0,01 Sekunden beträgt. Sehen Sie Abschnitt 7-15-1 ZEITGE-BER – TIM für weitere Informationen.
Zeitgeber in einem verriegelten Programmabschnitt werden zurückgesetzt,wenn die Ausführungsbedingung für IL(02) FALSCH wird. Unterbrechungen derSpannungsversorgung führen ebenfalls zur Rücksetzung der Zeitgeber. Sollalso der Istwert des Zeitgebers bei Auftreten eines Stromausfalls erhalten blei-ben, muss eine Zeitgeberschaltung mit nullspannungsicherem Istwert unter
Vorsichtsmaßnahmen
Einschränkungen
Beschreibung
Vorsichtsmaßnahmen
7-15AbschnittZeitgeber– und Zählerbefehle
365
Verwendung von Taktimpulsbits aus dem SR–Bereich programmiert werden.Sehen Sie Abschnitt 7-15-5 ZÄHLER – CNT für weitere Informationen.
Zeitgeber in übersprungenen Programmabschnitten werden nicht zurückge-setzt, wenn die Ausführungsbedingung für JMP(04) FALSCH ist. Der Zeitgeberbeendet die Zeitnahme, wenn Sprungnummer 00 verwendet wird; bei anderenSprungnummern setzt er die Zeitnahme fort.
Setzen Sie in der On–Line–Editierung immer den Zeitgeber neu, nach dem SieTIM in TIMH(15) oder umgekehrt geändert haben. Nehmen Sie auch eine Ände-rung eines TIMH(15)–Befehls mit Interruptauffrischung nur in der PROGRAM–Betriebsart vor.
Verwenden Sie Zeitgebernummern 000 bis 003 für TIMH(15). Schnelle Zeitge-ber mit Zeitgebernummer TC 004 bis TC 127 (TC 016 bis TC 255 für die CPM2A/CPM2C) sollten nicht verwendet werden, wenn die Zykluszeit 10 ms über-schreitet.
SPS Interruptauffrischung jede 10ms
Aufgefrischt, wenn TIMH(15)ausgeführt wird
CPM2A/CPM2C TC 000 bis TC 003 TC 004 bis TC 255
CPM1, CPM1A undSRM1(–V2)
TC 000 bis TC 003 TC 004 bis TC 127
In den SPS der CPM2A/CPM2C–Serien sollte TC 004 bis TC 007 nicht fürTIMH(15) verwendet werden, wenn TMHH(––) benötigt wird. Sehen Sie 7-15-3SEHR SCHNELLER ZEITGEBER – TMHH(––) für weitere Informationen.
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird je-doch TIM000 bis TIM003 verwendet, kann eine Verzögerung auftreten, bevorder Merker aktiviert wird.
Wird der Sollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker ir-gendwo zwischen 0 und 0.01 s aktiviert, nachdem die Ausführungsbedingungdes Zeitgebers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt eigent-lich die Zeit); der Fertigmerker kann auch aktivert werden, sobald die Ausfüh-rungsbedingung des Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –0,01 s) in Anwen-dungsprogrammen.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beispiel Im folgenden Beispiel wird ein Zeitgeber als Konstante eingegeben. CIO 01600wird aktiviert, nachdem CIO 00000 gesetzt wird und behält diesen Zustand für1,5 Sekunden bei. Nach dem Rücksetzen von 00000 werden auch Zeitgeberund CIO 01600 zurückgesetzt.
00000
TIM 000
01600
1.5 s
TIMH(15) Adresse Befehl Operanden
00000 LD 00000
00001 TIMH(15) 000
# 0150
00002 LD TIM 000
00003 OUT 01600
000
#0150
7-15AbschnittZeitgeber– und Zählerbefehle
366
7-15-3 VERY HIGH-SPEED TIMER (Sehr schneller Zeitgeber) – TMHH(––)
n: #
TIM000 bis TIM255
Kontaktplansymbol Datenbereiche
000
Auf 000 setzen.
SW: Sollwert
IR, SR, AR, DM, HR, LR, #
TMHH(––)
n
SV
000
Dieser Befehl wird nur von der CPM2A/CPM2C unterstützt.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER oder ZÄHLER-BEFEHL verwendet werden. TC–Nummern reichen von TIM000 bis TIM255.(Mit der Programmiersoftware SYSWIN 3.4: Sie müssen ”TIM” mit der tatsächli-chen Zeitgebernummer eingeben, wenn Sie TMHH(––) verwenden. Der Befehlfunktioniert nicht, wenn nur die Zahl eingegeben wird.)
Der Sollwert ist ein BCD–Wert zwischen 0000 und 9999 (0 bis 9,999 s).
Setzen Sie den dritten Operanden auf 000. (Dieser Operand wird ignoriert.)
TMHH(––) ist ein dekrementierender Einschalt–Verzögerungszeitgeber, derZeiten in 1 ms–Einheiten zählt. Der Zeitgebersollwert kann 0 bis 9,999 s betra-gen; der Zeitgeber besitzt eine Genauigkeit von 1 ms.
Der sehr schnelle Zeitgeber wird aktiviert, wenn seine AusführungsbedingungWAHR wird und er wird zurückgesetzt (auf den Sollwert), wenn die Ausfüh-rungsbedingung FALSCH wird. Nachdem er aktiviert ist, zählt TMHH(––), be-ginnend mit dem Sollwert, in 1 ms–Schritten herunter.
Der Zeitgeber läuft ab, wenn der Istwert #0000 erreicht (0 ms). Sobald der Zeit-geber abgelaufen ist, wird Istwert– und Fertigmerkerzustand beibehalten. DerZeitgeber kann wieder aktiviert werden, indem seine Ausführungsbedingungkurzzeitig von FALSCH auf WAHR oder sein Istwert mit einem Befehl wieMOV(21) auf einen anderen Wert als #0000 geändert wird.
Der Vorgang der Sehr schnellen Zeitgeber–Ausführung in übersprungenen Pro-grammabschnitten hängt von der TC–Nummer, die zur Definition des Zeitge-bers verwendet wird, ab, wie es in der folgenden Tabellen beschrieben ist.
TC–Nummer
Beschreibung
000 bis 003008 bis 255
Der Zeitgeber unterbricht seinen Betrieb, wenn die Ausführungsbedingungfür JMP(04) FALSCH ist. Dies beeinflusst die Genauigkeit von Zeitgebern inübersprungenen Programmabschnitten in großem Maße.
004 bis 007 Wird Sprungnummer 00 verwendet, unterrbricht der Zeitgeber die Zeitnahme,wenn die Ausführungsbedingung für JMP(04) FALSCH ist. Dies beeinflusstdie Genauigkeit von Zeitgebern in übersprungenen Programmabschnitten ingroßem Maße.
Wird irgendeine andere Sprungnummer verwendet, setzt der Zeitgeber dieZeitnahme fort, wenn die Ausführungsbedingung für JMP(04) FALSCH ist.
Vorsichtsmaßnahmen Sehr schnelle Zeitgeber mit anderen Zeitgebernummern als TC 004 bis TC 007sind u. U. nicht genau, wenn die Zykluszeit 1 ms überschreitet. (Die Zykluszeitwirkt sich nicht auf Sehr schnelle Zeitgeber aus, die mit TC 004 bis TC 007 defi-niert sind.)
Sehr schnelle Zeitgeber in verriegelten Programmabschnitten werden (auf denSollwert) zurückgesetzt, wenn die Ausführungsbedingung für IL(02) FALSCHist.
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird je-
Einschränkungen
Beschreibung
7-15AbschnittZeitgeber– und Zählerbefehle
367
doch TIM004 bis TIM007 verwendet, kann eine Verzögerung auftreten, bevorder Merker aktiviert wird.
Wird der Sollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker ir-gendwo zwischen 0 und 1 ms aktiviert, nachdem die Ausführungsbedingungdes Zeitgebers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt eigent-lich die Zeit); der Fertigmerker kann auch aktivert werden, sobald die Ausfüh-rungsbedingung des Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –1 ms) in Anwen-dungsprogrammen.
Merker ER: n ist keine gültige TC–Nummer.
Im folgenden Beispiel wird CIO 20000 eingeschaltet, nachdem CIO 00000 akti-viert wurde und bleibt für mindestens 1,5 Sekunden eingeschaltet. Wird 00000deaktiviert, werden auch Zeitgeber und CIO 20000 zurückgesetzt.
00000 LD 00000
00001 TMHH(––)
TIM 004
# 1500
000
00002 LD TIM 004
00003 OUT 2000020000
TIM 004
00000
TMHH(––)
TIM004
#1500
000
Adresse Befehl Operanden
1.5 s
7-15-4 LONG TIMER (Langer Zeitgeber) – TIML(––)
n: Zeitgeber–Nr (sehen Sie die Beschränkungen)
TIM000 bis TIM255
Kontaktplansymbol Datenbereiche
C: Steuerdaten
000 oder 001
SW: Sollwert
IR, SR, AR, DM, HR, LR, #
TIML(––)
n
SV
C
Dieser Befehl wird nur von den CPM2A/CPM2C unterstützt.
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER oder ZÄHLER-BEFEHL verwendet werden. Zeitgeberummern reichen von TIM000 bisTIM255. (Mit der Programmiersoftware SYSWIN 3.4:Sie müssen ”TIM” mit dertatsächlichen Zeitgebernummer eingeben, wenn Sie TIML(––) verwenden. DerBefehl funktioniert nicht, wenn nur die Zahl eingegeben wird.)
Der Sollwert im BCD–Format liegt zwischen 0000 und 9999 (0 bis 9.999 s, wennC=000 und 0 bis 99.990 s, wenn C=001).
C muss 000 (1 s–Einheiten) oder 001 (10 s–Einheiten) betragen.
TIML(––) ist ein dekrementierender Einschalt–Verzögerungszeitgeber, der in 1s– oder 10 s–Einheiten zählt. Der Zeitgebersollwert kann 0 bis 9.999 s betragen(die Genauigkeit beträgt 0 bis 1 s), wenn 1 s–Einheiten verwendet werden(C=000) oder 0 bis 99.990 s (die Genauigkeit beträgt 0 bis 10 s), wenn 10 s–Ein-heiten verwendet werden (C=001).
Ein Langer Zeitgeber wird aktiviert, sobald die entsprechende Ausführungsbe-dingung WAHR wird. Er wird auf den Sollwert zurückgesetzt, wenn die Ausfüh-rungsbedingung FALSCH wird. Sobald aktiviert, zählt TIML(––), beginnend mitdem Sollwert, in Einheiten von 1 s oder 10 s herunter (je nach dem Wert von C).
Beispiel
Einschränkungen
Beschreibung
7-15AbschnittZeitgeber– und Zählerbefehle
368
Die TIML(––)–Genauigkeit beträgt 0 bis 1 s bei 1 s–Einheiten oder 0 bis 10 s bei10 s–Einheiten.
Der Zeitgeber läuft ab, wenn der Istwert #0000 erreicht (0 s). Sobald der Zeitge-ber abgelaufen ist, wird Istwert– und Fertigmerkerzustand beibehalten. DerZeitgeber kann wieder aktiviert werden, indem seine Ausführungsbedingungkurzzeitig von FALSCH auf WAHR oder sein Istwert mit einem Befehl wieMOV(21) auf einen anderen Wert als #0000 geändert wird.
Lange Zeitgeber in Programmabschnitten, die mit Sprungbefehlen übersprun-gen werden, werden nicht zurückgesetzt, wenn die Ausführungsbedingung fürJMP(04) FALSCH ist. Der Zeitgeber stellt jedoch seine Funktion ein und der Ist-wert wird beibehalten. Die Zeitnahme wird fortgesetzt, wenn die Ausführungs-bedingung für JMP(04) wieder WAHR ist. Dies beeinflusst die Genauigkeit vonLangen Zeitgebern in übersprungenen Programmabschnitten in großem Maße.
Vorsichtsmaßnahmen TIML(––) ist u. U. ungenau, wenn die Zykluszeit 1 s (C=000) oder 10 s über-schreitet (C=001).
Lange Zeitgeber in verriegelten Programmabschnitten werden (auf den Soll-wert) zurückgesetzt, wenn die Ausführungsbedingung für IL(02) FALSCH ist.
Die Zeiteinheiten in C können geändert werden, während der Lange Zeitgeberaktiv ist. Die Änderung der Zeiteinheiten während des Betriebs reduziert dieZeitgebergenauigkeit um bis zu 10 s.
Mit der Programmiersoftware SYSWIN 3.4: Sie müssen ”TIM” mit der tatsächli-chen Zeitgebernummer eingeben, wenn Sie TIML(––) verwenden. Der Befehlfunktioniert nicht, wenn nur die Zahl eingegeben wird.)
Wird der Sollwert des Zeitgebers auf 0000 eingestellt, wird der Fertigmerker ak-tiviert, sobald die Ausführungsbedingung des Zeitgebers WAHR wird. Wird derSollwert des Zeitgebers auf 0001 eingestellt, wird der Fertigmerker irgendwozwischen 0 und 1 s oder 0 und 10 s aktiviert, nachdem die Ausführungsbedin-gung des Zeitgebers WAHR wurde (d.h. die Zeitgebergenauigkeit bestimmt ei-gentlich die Zeit); der Fertigmerker kann auch aktivert werden, sobald die Aus-führungsbedingung des Zeitgebers WAHR wird.
Beachten Sie immer die Genauigkeit des Zeitgebers (0 bis –1 s oder 0 bis –10 s)in Anwendungsprogrammen.
Merker ER: n ist keine gültige Zeitgebernummer.
C ist nicht 000 oder 001.
Im folgenden Beispiel wird CIO 20000 eingeschaltet, nachdem CIO 00000 akti-viert wurde und bleibt für mindestens 1.500 Sekunden eingeschaltet. Wird00000 deaktiviert, werden auch Zeitgeber und CIO 20000 zurückgesetzt.
00000 LD 00000
00001 TIML(––)
TIM 002
# 0150
001
00002 LD TIM 002
00003 OUT 2000020000
TIM 002
00000
TIML(––)
TIM002
#0150
001
Adresse Befehl Operanden
1500 s
Beispiel
7-15AbschnittZeitgeber– und Zählerbefehle
369
7-15-5 COUNTER (Zähler) – CNT
n: TC–Nummer
#
Kontaktplansymbol
Datenbereiche
SW: Sollwert (Wort, BCD)
IR, SR, AR, DM, HR, LR, #
Datenbereiche
CP
R
CNT n
SW
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
CNT arbeitet, ausgehend vom Sollwert (Zählvorgabe), als Abwärtszähler. DerZähler wird aktiviert, wenn bei der Ausführungsbedingung WAHR eine stei-gende Flanke des Zähleingangsimpulses (CP) anliegt. Dies bedeutet, dass derIstwert (Zählwert) schrittweise um 1 herabgesetzt wird, wann immer CNT mitder Ausführungsbedingung WAHR für CP ausgeführt wird und die Ausführungs-bedingung während der letzten Ausführung FALSCH war. Bleibt die Ausfüh-rungsbedingung unverändert oder wechselt sie von EIN auf AUS, ändert sichder CNT–Zählwert nicht. Der Fertigmerker für einen Zähler wird gesetzt, sobaldder Zählwert 0000 erreicht ist.
CNT wird über das Rücksetz–Eingangssignal R zurückgesetzt. Der Zählerwechselt von seinem Istwert wieder auf den voreingestellten Sollwert, sobald erdurch ein Signal zurückgesetzt wird. Das Abwärtszählen beginnt aber erst wie-der dann, wenn an R kein Signal mehr anliegt. In verriegelten Programmab-schnitten oder bei Spannungsunterbrechungen wird der Istwert (Zählwert) nichtzurückgesetzt.
Die nachfolgende Abbildung stellt die Vorgänge, bezogen auf Ausführungsbe-dingungen, Fertigmerker und Zählwerte, dar. Die Istwert–Linienhöhe zeigt nurÄnderungen des Istwert an.
Ausführungsbedingungfür den Zähleingangsimpuls(CP)
Ausführungsbedingungfür Rücksetz–Eingangs–signal (R)
WAHR
FALSCH
WAHR
FALSCH
FertigmerkerWAHR
FALSCH
Zählwert (IW)
SW
SW – 1
SW – 2
0002
0001
0000
SW
Die Programmausführung wird auch fortgesetzt, wenn der Sollwert nicht alsBCD–Wert eingegeben wurde. Es wird dann jedoch mit einer falschen Zählvor-gabe gearbeitet.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Einschränkungen
Beschreibung
Vorsichtsmaßnahmen
!
7-15AbschnittZeitgeber– und Zählerbefehle
370
Beispiel Im folgenden Beispiel wird CNT dazu verwendet, erweiterte Zeitgeber durchZählen von Taktimpulsbits aus dem SR–Bereich zu erzeugen.
CNT 001 zählt, wieviele Male das 1–Sekunden–Taktimpuls–Bit (SR 25502) ge-setzt und rückgesetzt wird. Auch in diesem Beispiel wird IR 00000 als Steuerbitfür CNT verwendet.
Weil in diesem Beispiel die Zählvorgabe für CNT 001 700 ist, wird der Fertigmer-ker für CNT 002 gesetzt, sobald 700 Mal eine Sekunde verstrichen ist (11 Minu-ten und 40 Sekunden). Als Ergebnis wird IR 20002 auf EIN gesetzt.
CP
R
CNT001
#0700
00000 25502
00001
CNT 00120002
Adresse Befehl Operanden
00000 LD 00000
00001 AND 25502
00002 LD NOT 00001
00003 CNT 001
# 0700
00004 LD CNT 001
00005 OUT 20002
Vorsicht Eine kürzere Taktzeit führt nicht unbedingt zu einem genauere Zeitgeberverhal-ten. Wenn die Zeitdauer, für die das Bit gesetzt wird, sehr kurz ist, kann es vor-kommen, dass die Erkennung bei langen Zyklen unpräzise wird. Das bedeutet,dass Taktzeiten zwischen 0,02–Sekunden und 0,1–Sekunden bei mit CNT–Be-fehlen gebildeten Zeitgebern vermieden werden sollten.
7-15-6 REVERSIBLE COUNTER (Aufwärts–/Abwärtszähler) – CNTR(12)
N: TC–Nummer
#
Kontaktplansymbol
Datenbereiche
SW: Sollwert (Wort, BCD)
IR, SR, AR, DM, HR, LR, #
Datenbereiche
II
DICNTR (12)
N
SVR
Jede TC–Nummer kann als Operand für nur einen ZEITGEBER– oder ZÄH-LERBEFEHL verwendet werden. TC–Nummern stehen im Bereich von 000 bis255 (für SPS der CPM2A/CPM2C–Serie) und von 000 bis 127(CPM1/CPM1A/SRM1(-V2)) zur Verfügung.
Der CNTR(12)–Befehl ist ein aufwärts–/abwärtszählender Ringzähler. Er zähltvon 0 bis zum Sollwert, entsprechend den Ausführungsbedingungen von zweiEingängen, nämlich des Inkrement– (II) und des Dekrementeingangs (DI).
Der aktuelle Wert (Istwert) wird um 1 inkrementiert, wenn am II–Eingang vonCNTR(12) ein EIN–Signal anliegt und dieses Signal im letzten Zyklus AUS war.Der aktuelle Istwert wird um1 dekrementiert, wenn am DI–Eingang vonCNTR(12) ein EIN–Signal anliegt und dieses Signal im letzten Zyklus AUS war.Der Istwert ändert sich nicht, wenn an beiden Eingängen (II und DI) steigendeFlanken auftraten.
Der Istwert von CNT ändert sich nicht, falls sich die Ausführungsbedingungennicht änderten oder nur EIN/AUS–Änderungen für II als auch DI auftraten.
Soll von 0000 ausgehend dekrementiert werden, wird der Istwert als Zählvor-gabe (Sollwert) gesetzt und der Fertigmerker bleibt solange gesetzt, bis der Ist-wert erneut dekrementiert wird. Wird die Zählvorgabe überschritten, wird der Ist-wert auf 0000 gestellt und der Fertigmerker gesetzt, solange, bis der Istwert wie-der inkrementiert wird.
Einschränkungen
Beschreibung
7-15AbschnittZeitgeber– und Zählerbefehle
371
CNTR(12) wird über den Rücksetzeingang zurückgesetzt. Der Istwert wird we-der inkrementiert noch dekrementiert, solange ein Signal an R anliegt. Der Zähl-vorgang beginnt wieder, wenn R auf AUS gesetzt wird. In verriegelten Pro-grammabschnitten wird der Istwert für CNTR(12) nicht zurückgesetzt. EineRücksetzung erfolgt ebenfalls nicht bei einer Spannungsunterbrechung.
Änderungen der II– und DI–Ausführungsbedingungen, des Fertigmerkers unddes Istwertes sind nachfolgend als Ausschnitt des CNTR(12)–Betriebs darge-stellt (d.h. nach dem Rücksetzen beginnt der Zählvorgang wieder bei Null). DieHöhe der Istwertlinie kennzeichnet nur Änderungen des Istwert.
Inkrement–Eingang(II)
Dekrement–Eingang(DI)
EIN
AUS
EIN
AUS
FertigmerkerEIN
AUS
Zählwert (IW)SW
SW – 1
SW – 20001
0000 0000
SW
SW – 1
SW – 2
Die Programmausführung wird auch fortgesetzt, wenn der Sollwert nicht alsBCD–Wert eingegeben wurde. Der Zähler arbeitet dann jedoch mit einer fal-schen Sollvorgabe.
Merker ER: Indirekt adressierte DM–Worte sind nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-15-7 REGISTER COMPARISON TABLE (Vergleichstabelle) – CTBL(63)
P:Schnittstellen–Spezifikation
000
Kontaktplansymbol Datenbereiche
@CTBL(63)
P
C
TBTB: Erstes Vergleichswort
IR, SR, AR, DM, HR, LR
C: Steuerdaten
000 bis 003
CTBL (63)
P
C
TB
Dieser Befehl wird nicht von SRM1(–V2)–SPS–Systemen unterstützt.
Einschränkungen Das erste und das letzte Vergleichstabellen–Wort muss sich jeweils im gleichenDatenbereich befinden. (Die Länge der Vergleichstabelle ist von den Einstellun-gen abhängig.)
P muss 000 sein und C zwischen 000 und 003.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird CTBL(63) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, erstellt CTBL(63) eine Vergleichstabelle, derenWerte mit dem Istwert des Schnellen Zählers verglichen werden. Je nach demfür C spezifizierten Wert kann der Vergleich mit dem Istwert des Schnellen Zäh-lers sofort beginnen oder separat mit dem INI(61)–Befehl ausgeführt werden.
Über P wird der Schnelle Zähler spezifiziert, der für den Vergleich eingesetztwird. P muss immer auf 000 eingestellt sein.
Die Funktion des CTBL(63)–Befehls wird über die in der nachfolgenden Tabelleaufgeführten Steuerdaten C festgelegt. Die Beschreibung der Funktionen er-folgt entsprechend der Tabelle.
Vorsichtsmaßnahmen
7-15AbschnittZeitgeber– und Zählerbefehle
372
C CTBL(63)–Funktion
000 Erstellen einer Zielwertvergleichstabelle und Starten des Vergleichs.
001 Erstellen einer Bereichsvergleichstabelle und Starten des Vergleichs.
002 Erstellen einer Zielwertvergleichstabelle. Starten des Vergleiches mit INI(61).
003 Erstellen einer Bereichsvergleichstabelle. Starten des Vergleiches mit INI(61).
Stimmt der Istwert mit dem Zielwert überein oder liegt er innerhalb des spezifi-zierten Bereichs, wird das spezifizierte Unterprogramm aufgerufen und ausge-führt. Sehen Sie Abschnitt 2-3-5 Schnelle Zähler–Interrupts für weitere Informa-tionen über Tabellenvergleiche.
Wird der Schnelle Zähler in der SPS–Konfiguration (DM6642) aktiviert, startetdieser zu Beginn des CPM2A/CPM2C–Betriebes einen Zählvorgang von Nullbeginnend. Der Istwert wird erst mit der Vergleichstabelle verglichen, nachdemdiese erstellt und der Vergleich mit INI(61) oder CTBL(63) gestartet wurde. DerVergleich kann beendet und gestartet oder der Istwert über INI(61) zurückge-setzt werden.
Ein Zielwertvergleich unterscheidet sich von einem Bereichsvergleich, aber diezwei Funktionen besitzen einige Gemeinsamkeiten.
1, 2, 3... 1. Die Unterprogrammnummern 000 bis 049 können verwendet werden unddie gleiche Unterprogrammnummer kann mehr als einmal in der Tabelleverwendet werden.
2. Eine undefinierte Unterprogrammnummer oder FFFF kann für die Unter-programmnummer spezifiziert werden, wenn keine Interrupt–Verarbeitungerforderlich ist.
3. Der Vergleich kann mit INI(61) abgebrochen werden. Ein gespeicherte Ta-belle ist gültig, bis der SPS–Betrieb abgebrochen oder eine neue Ver-gleichstabelle gespeichert wird.
4. CTBL(63) kann nicht ausgeführt werden, wenn der schnelle Zähler in derSPS–Konfiguration deaktiviert ist (DM 6642). (Ein Fehler tritt in diesem Fallauf.)
Zielwertvergleich Eine Zielwertvergleichstabelle enthält bis zu sechzehn 8–stellige Zielwerte undeine jedem Zielwert entsprechende Unterprogrammnummer. Eine Unterpro-grammnummer wird ebenfalls für jeden Zielwert gespeichert. Stimmt der Istwertmit dem Zielwert überein, wird das betreffende Unterprogramm aufgerufen undausgeführt. (Ist eine Interrupt–Verarbeitung nicht erforderlich, kann eine undefi-nierte Unterprogrammnummer eingegeben werden.)
• In der CPM1/CPM1A erfolgen Zielwertvergleiche wertmäßig jeweils einzelnund in der Reihenfolge der Vergleichtabelle. Erreicht der Istwert den erstenZielwert in der Tabelle, wird das Interrupt–Unterprogramm ausgeführt und derVergleich wird mit dem nächsten Wert in der Tabelle fortgesetzt. Ist der Ver-gleich für den letzten Tabellenwert abgeschlossen, beginnt der Vorgang vonvorn.
• In der CPM2A/CPM2C wird der Istwert jedesmal mit allen Zielwerten in der Ta-belle verglichen, wenn CTBL(63) ausgeführt wird. Stimmt der Istwert mit demZielwert überein, wird das betreffende Unterprogramm aufgerufen und ausge-führt.
Das folgende Diagramm zeigt die Struktur einer Zielwertvergleichstabelle. Ziel-werte müssen einmalig sein; ein Fehler tritt auf, wenn ein Zielwert mehr als ein-mal in der Tabelle vorhanden ist.
TB Anzahl der Zielwerte (0001 bis 0016, BCD–Wert)
TB+1 Zielwert #1, niederwertige 4 Ziffern
TB+2 Zielwert #1, höherwertige 4 Ziffern
TB+3 Unterprogrammnummer für Nr. 1 (s. S. d. Hinw.)
Eine Zielwert–einstellung
Gemeinsamkeiten vonZielwert– undBereichvergleichen
7-15AbschnittZeitgeber– und Zählerbefehle
373
Hinweis Die Unterprogrammnummer zur Aktivierung des Unterprogramms bei der De-krementierung kann zwischen F000 und F049 liegen und bei der Inkrementie-rung zwischen 0000 und 0049. Ein Fehler tritt auf, wenn der schnelle Zähler aufeinen Inkrementalbetrieb eingestellt wird, aber eine dekrementierende Unter-programmnummer (F000 bis F049) spezifiziert wird.
Bereichsvergleich Eine Bereichsvergleichstabelle enthält 8 Bereiche, die durch einen 8–stelligenunteren und einen 8–stelligen oberen Grenzwert sowie durch die entspre-chende Unterprogrammnummern spezifiziert werden. Der Vergleich findet in je-dem Zyklus und am Ende der Programmausführung statt und kann während derProgrammausführung mit INI(61) initiiert werden.
Das entsprechende Unterprogramm wird aufgerufen und ausgeführt, wenn derIstwert in einem vorgegebenem Bereich liegt. (Ist eine Interrupt–Verarbeitungnicht erforderlich, kann eine undefinierte Unterprogrammnummer eingegebenwerden. Bereiche können sich überschneiden, so kann der Istwert in mehr alseinem Bereich vorhanden sein; befindet sich der Istwert in zwei oder mehrerenBereiche, wird das Unterprogramm für den ersten der Bereiche ausgeführt.
Das folgende Diagramm zeigt die Struktur einer Bereichsvergleichstabelle. 8Bereiche stehen zur Verfügung. Benötigen Sie weniger als 8 Bereiche, definie-ren Sie die nicht benötigten Unterprogrammnummern als FFFF.
TB Unterer Grenzwert Nr1, niederwertige 4 Ziffern (BCD)
TB+1 Unterer Grenzwert Nr1, höherwertige 4 Ziffern (BCD)
TB+2 Oberer Grenzwert Nr1, niederwertige 4 Ziffern (BCD)
TB+3 Oberer Grenzwert Nr1, höherwertige 4 Ziffern (BCD)
TB+4 Unterprogrammnummer (sehen Sie Hinweis 2)
TB+35 Unterer Grenzwert Nr 8, niederwertige 4 Ziffern (BCD)
TB+36 Unterer Grenzwert Nr 8, höherwertigte 4 Ziffern (BCD)
TB+37 Oberer Grenzwert Nr 8, niederwertige 4 Ziffern (BCD)
TB+38 Oberer Grenzwert Nr 8, höherwertige 4 Ziffern (BCD)
TB+39 Unterprogrammnummer (sehen Sie Hinweis 2)
Erste Bereichs–einstellung
Achte Bereichs–einstellung
Hinweis 1. Der untere Grenzwert jedes Bereichs muss unterhalb des oberen Grenz-wertes liegen. Ein Fehler tritt auf, wenn der untere Grenzwert größer ist alsder obere.
2. Die Unterprogrammnummer kann zwischen 0000 bis 0049 liegen und dasUnterprogramm wird ausgeführt, solange sich der Istwert des Zählers in-nerhalb des angegebenen Bereichs befindet. Der Wert FFFF zeigt an, dasskein Unterprogramm ausgeführt werden soll.
3. Stellen Sie, da der Vergleich gewöhnlich nur einmal pro Zyklus ausgeführtwird, sicher, die Zykluszeit in Betracht zu ziehen, wenn die oberen und un-teren Grenzen Zeitwerte darstellen.
4. Eine Unterprogrammnummer kann mehr als einmal in der Tabelle verwen-det werden.
Merker ER: Die Vergleichtabelle überschreitet die Datenbereichsgrenze oder es istein Fehler in den Vergleichstabellen–Einstellungen vorhanden.
Indirekt adressierte DM–Worte sind nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-reichsgrenze wurde überschritten).
P ist nicht 000 oder C liegt nicht zwischen 000 und 003.
Ein CTBL(63)–Befehl mit einem anderen Vergleichsformat steht im Un-terprogramm, das über einen anderen CTBL(63)–Befehl aufgerufenwird.
Während des Vergleichs wird der CTBL(63)–Befehl mit einem anderenVergleichsformat ausgeführt.
7-15AbschnittZeitgeber– und Zählerbefehle
374
CTBL(63) wird in einem Interrupt–Unterprogramm ausgeführt, wäh-rend einer Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
Zielwertvergleichsfehler:
Die Anzahl der Zielwerte (in TB) liegt nicht zwischen 0001 und 0016.
Ein Zielwert liegt nicht zwischen F838 8608 und 0838 8607 (Differen-tial–Phasenbetrieb, Impuls– und Richtungseingangsmodus und Auf-wärts–/Abwärtseingangsmodus).
Ein Zielwert liegt nicht zwischen 0000 0000 und 1677 7215 oder eineUnterprogrammnummer liegt nicht zwischen 0000 und 0049 (Inkre-mentalmodus).
Bereichvergleichsfehler:
Der oberer Grenzwert eines Bereichs ist kleiner als sein unterer Grenz-wert.
Ein Zielwert liegt nicht zwischen F838 8608 und 0838 8607 (Differen-tial–Phasenbetrieb, Impuls– und Richtungseingangsmodus und Auf-wärts–/Abwärtseingangsmodus).
Ein Zielwert liegt nicht zwischen 0000 0000 und 1677 7215 oder eineUnterprogrammnummer liegt nicht zwischen 0000 und 0049 (Inkre-mentalmodus).
7-15-8 MODE CONTROL (Zählersteuerung) – INI(61)
P:Schnittstellen–Spezifikation
000, 010, 100, 101, 102, 103
Kontaktplansymbol Datenbereiche
@INI(61)
P
C
P1P1: Erstes Istwert–Wort
IR, SR, AR, DM, HR, LR (oder 000)
C: Steuerdaten
000 to 005
INI(61)
P
C
P1
Dieser Befehl wird nicht von SRM1(–V2)–SPS–Systemen unterstützt.
Einschränkungen Bei der CPM1/CPM1A muss P = 000 und C = 000 bis 003 sein.
In CPM2A/CPM2C–SPS–Systemen muss P den Wert 000, 010, 100, 101, 102oder 103 besitzen und C den Wert 000 bis 005.
P1 muss 000 sein, wenn C nicht 002 oder 004 entspricht.
P1 und P1+1 müssen sich im gleichen Datenbereich befinden.
Wird für P1 eine DM–Adresse verwendet, muss diese im les–/beschreibbarenDM–Bereich liegen.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird INI(61) nicht ausgeführt. Ist dieAusführungsbdingung EIN, steuert INI(61) den Betrieb des Schnellen Zählersoder beendet die Impulsausgabe.
7-15AbschnittZeitgeber– und Zählerbefehle
375
Über P wird die Nummer des Schnellen Zählers oder des Impulsausgangs spe-zifiziert, der gestartet werden soll.
P Funktion
000 Spezifiziert einen Schnellen Zähler–Eingang (Eingänge 00000, 00001 und 00002),Einzelphasen–Impulsausgang 0 ohne Beschleunigung/Abbremsung (Ausgang01000), Einzelphasen–Impulsausgang 0 mit trapezförmiger Beschleunigung/Ab-bremsung (Ausgang 01000).
010* Spezifiziert den einphasigen Impulsausgang 1 ohne Beschleunigung/Abbrem-sung(Ausgang 01001).
100* Spezifiziert eingangsgesteuerten Interrupt 0 im Zählmodus (Eingang 00003).
101* Spezifiziert eingangsgesteuerten Interrupt 1 im Zählmodus (Eingang 00004).
102* Spezifiziert eingangsgesteuerten Interrupt 2 im Zählmodus (Eingang 00005).
103* Spezifiziert eingangsgesteuerten Interrupt 3 im Zählmodus (Eingang 00006).
Hinweis *Diese Einstellungen können nur in den CPM2A/CPM2C–SPS–Systemen ver-wendet werden.
Die Funktion von INI(61) wird durch die Steuerdaten C definiert.
C P1 INI(61)–Funktion
000 000 Startet den CTBL(63)–Tabellenvergleich.
001 000 Beendet den CTBL(63)–Tabellenvergleich.
002 Neuer Ist-wert
Ändert den Istwert des Schnellen Zählers oder eines eingangsgesteu-erten Interrupts im Zählmodus.
003 000 Anhalten der Impulsausgabe
004* NeuerIstwert
Ändert den Istwert der Impulsausgabe.
005* 000 Beendet die synchronisierte Impulsausgabe.
Hinweis *Diese Einstellungen können nur in den CPM2A/CPM2C–SPS–Systemen ver-wendet werden.
Bei C = 000 bzw. 001 beginnt bzw. beendet INI(61) den Vergleich des SchnellenZähler–Istwertes mit der über CTBL(63) erstellten Vergleichstabelle. Ein Fehlertritt auf, wenn diese Funktion ausgeführt wird, ohne zuvor eine Vergleichstabellemit CTBL(63) zu erstellen.
Im allgemeinen sollte @INI(61) verwendet werden, wenn C=000 ist, da der Be-fehl nur einmal ausgeführt werden muss, um den Tabellenvergleich zu begin-nen.
Bei C=002 ändert INI(61) den Istwert des spezifizierten Schnellen Zählers odereingangsgesteuerten Interrupts (Zählmodus).
Schneller Zähler–Istwert (P=000)INI(61) ändert den Istwert des Schnellen Zählers in den auf P1 und P1+1 ge-speicherten 8–stelligen BCD–Wert.
Der neue Istwert kann zwischen F838 8608 und 0838 8607 (Differential–Pha-senbetrieb, Impuls– und Richtungseingangsmodus oder Aufwärts–/Abwärts–eingangsmodus) liegen. (Das hexadezimale “F” auf der ersten Stellen kenn-zeichnet einen negativen Wert.)
Der neue Istwert kann zwischen 0000 0000 und 1677 7215 im Inkrementalmo-dus liegen.
Eingangsgesteuerter Interrupt–Istwert (P=100 bis 103)INI(61) ändert den Istwert des spezifizierten eingangsgesteuerten Interrupts(Zählermodus) in den auf P1 gespeicherten 4–stelligen Hexadezimalwert (0000bis FFFF).
Bei C = 003 beendet INI(61) die Impulsausgabe.
INI(61) ändert den Istwert des Impulsausgangs in den auf P1 und P1+1 gespei-cherten 8–stelligen BCD–Wert. Der Istwert kann nicht geändert werden, wäh-rend die Impulsausgabe stattfindet.
Anfang oder Ende desVergleichs(C=000 oder C=001)
Istwert ändern(C=002)
Pulsausgabe beenden(C=003)
Istwert ändern(C=004)
7-15AbschnittZeitgeber– und Zählerbefehle
376
Der neue Istwert kann zwischen –16,777,215 und 16.777.215 liegen. Bit 15 vonP1+1 kennzeichnet das Vorzeichen; der Wert ist negativ, wenn Bit 15 aktiviert(EIN) ist, und positiv, wenn es deaktiviert (AUS) ist.
Entspricht C=005, beendet INI(61) die synchronisierte Impulsausgabe.
Merker ER: Schnittstellenbezeichner und Steuerdaten sind nicht kompatibel.(Zum Beispiel: P=010 und C 000)
Es liegt ein Fehler in den Operandeneinstellungen vor oder der spezifi-zierte Istwert liegt nicht innerhalb des akzeptablen Bereichs.
Die für P1 oder P1+1 spezifizierte Adresse überschreitet die Datenbe-reichsgrenze.
Indirekt adressierte DM–Worte sind nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenbereichs-grenze wurde überschritten).
Die spezifizierte Funktion ist nicht kompatibel mit dem tatsächlichenSPS–Betrieb. Setzen Sie zum Beispiel nicht C auf 005, wenn keine syn-chronisierte Impulssteuerung verwendet wird.
INI(61) wird ausgeführt, um den Istwert einer Impulsausgabe (C=004)zu ändern, während die Impulsausgabe aktiv ist.
INI(61) wird in einem Interrupt–Unterprogramm ausgeführt, währendeine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
INI(61) wird in einem Interrupt–Unterprogramm ausgeführt, währendeine Impulsausgabe oder ein Schneller Zähler–Befehl im Hauptpro-gramm ausgeführt wird.
7-15-9 HIGH–SPEED COUNTER PV READ (Schneller Zähler–Istwerteinlesen) – PRV (62)
P:Schnittstellen–Spezifikation
000, 010, 100, 101, 102, 103
Kontaktplansymbol Datenbereiche
@PRV(62)
P
C
DD: Erstes Zielwort
IR, SR, AR, DM, HR, LR
C: Steuerdaten
000, 001, 002, oder 003
PRV (62)
P
C
D
Dieser Befehl wird nicht von SRM1(–V2)–SPS–Systemen unterstützt.
Einschränkungen Bei CPM1/CPM1A–SPS–Systemen muss P = 000 und C = 000 bis 002 sein.
In CPM2A/CPM2C–SPS–Systemen muss P den Wert 000, 010, 100, 101, 102oder 103 besitzen und C den Wert 000 bis 003.
D und D+1 müssen sich im gleichen Datenbereich befinden.
Wird für D eine DM–Adresse verwendet, muss diese im les–/beschreibbarenDM–Bereich liegen.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird PRV( 62) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, liest PRV(62) den Schnellen Zähler–Istwert,Impulsausgabe–Istwert, eingangsgesteuerter Interrupt–Istwert (Zählmodus)
SynchronisierteImpulsausgabe beenden(C=005)
7-15AbschnittZeitgeber– und Zählerbefehle
377
oder die Eingangsfrequenz für eine synchronisierte Steuerung, wie dies durch Pund C spezifiziert wird.
Über P wird die Nummer des Schnellen Zählers oder des Impulsausgangs spe-zifiziert, der gelesen werden soll.
P Funktion
000 Spezifiziert einen Schnellen Zähler–Eingang (Eingang 00000, 00001 und 00002),eine Eingangsfrequenz für eine synchronisierte Impulssteuerung (Eingang 00000,00001 und 00002), eine Einzelphasen–Impulsausgabe 0 ohne Beschleunigung/Ab-bremsung (Ausgang 01000), eine Einzelphasen–Impulsausgabe 0 mit trapezförmigeBeschleunigung/Abbremsung (Ausgang 01000) oder eine synchronisierte Impuls-ausgabe 0 (Ausgang 01000).
010* Spezifiziert eine Einzelphasen–Impulsausgabe 1 ohne Beschleunigung/Abbremsung(Ausgang 01001) oder eine synchronisierte Impulsausgabe 1 (Ausgang 01001).
100* Spezifiziert den eingangsgesteuerten Interrupt 0 im Zählmodus (Eingang 00003).
101* Spezifiziert den eingangsgesteuerten Interrupt 1 im Zählmodus (Eingang 00004).
102* Spezifiziert den eingangsgesteuerten Interrupt 2 im Zählmodus (Eingang 00005).
103* Spezifiziert den eingangsgesteuerten Interrupt 3 im Zählmodus (Eingang 00006).
Hinweis *Diese Einstellungen können nur in den CPM2A/CPM2C–SPS–Systemen ver-wendet werden.
C bestimmt den Datentyp, auf den zugegriffen wird.
C Funktion Zielwort (s)
000 Liest den Istwert des Schnellen Zählers oder eingangsge-steuerten Interrupts (Zählmodus) oder die Eingangsfre-quenz der synchronisierten Impulssteuerung.
D und D+1
001 Liest den Zustand des Schnellen Zählers oder der Impuls-ausgabe.
D
002 Liest die Ergebnisse des Bereichvergleichs. D
003* Liest den Istwert der Impulsausgabe. D und D+1
Hinweis *Diese Einstellung kann nur in den CPM2A/CPM2C–SPS–Systemen verwen-det werden.
Bei C=000 liest PRV(62) den Istwert des spezifizierten Schnellen Zählers odereingangsgesteuerten Interrupts (Zählmodus).
Schneller Zähler–Istwert oder Eingangsfrequenz (P=000)Wird nur der Schnelle Zähler verwendet, liest PRV(62) den Istwert des spezifi-zierten Schnellen Zählers und speichert den 8–stelligen BCD–Wert Wert auf Dund D+1. (Die äußerst linken 4 Stellen werden in D+1 gespeichert.)
Der neue Istwert kann zwischen F838 8608 und 0838 8607 (Differential–Pha-senbetrieb, Impuls– und Richtungseingangsmodus oder Aufwärts–/Abwärt-seingangsmodus) liegen. (Das hexadezimale “F” auf der ersten Stellen kenn-zeichnet einen negativen Wert.)
Der neue Istwert kann im Inkrementalmodus zwischen 0000 0000 und1677 7215 liegen.
Wird der Schnelle Zähler für eine synchronisierte Impulssteuerung verwendet,liest PRV(62) die Eingangsfrequenz und speichert den 8–stelligen BCD–Wertauf D und D+1. Die Eingangsfrequenz kann zwischen 0000 0000 und 0002 0000liegen.
Eingangsgesteuerter Interrupt–Istwert (P=100 bis 103)PRV(62) liest den Istwert des spezifizierten eingangsgesteuerten Interrupts(Zählmodus) und speichert den 4–stelligen hexadezimalen Wert (0000 bisFFFF) auf D.
Ist C = 001, wird der aktuelle Status des Schnellen Zählers oder des Impulsaus-gangs gelesen und die Daten werden auf D gespeichert.
Istwert lesen (C=000)
Status lesen (C=001)
7-15AbschnittZeitgeber– und Zählerbefehle
378
Schnelle Zähler– oder Impulsausgabe 0–Status (P=000)Die folgende Tabelle zeigt die Funktionen der Bits in D, wenn P=000. Die nichtverwendeten Bits sind nicht aufgeführt und auf 0 gesetzt.
Verwendung Bit Funktion
Schneller Zäh-ler
00 Schneller Zähler–Vergleichsmodus(0: deaktiviert; 1: aktiviert)
01 Schneller Zähler–Über–/Unterlauf(0: normal; 1: Über–/Unterlauf.)
Impulsaus-gabe
05 Gesamtzahl der Impulsen, die für Impulsausgang 0 spezifiziert sind(0: nicht spezifiziert; 1: spezifiziert)g
06 Impulsausgabe 0 abgeschlossen (0: nicht beendet; 1: beendet)
07 Impulsausgang 0–Status (0: keine Ausgabe; 1: Ausgabe)
08 Impulsausgabe 0–Istwert–Unter–/Überlauf(0: normal; 1: Über–/Unterlauf.)
09 Impulsausgabe 0–Beschleunigung0: konstant; 1: beschleunigt oder verlangsamt
Impulsausgabe 1–Status (P=010)Die folgende Tabelle zeigt die Funktion der Bits in D, wenn P=010. Die nicht ver-wendeten Bits sind nicht aufgeführt und auf 0 gesetzt.
Bit Funktion
05 Gesamtanzahl der Impulse, die für Impulsausgabe 1 spezifiziert sind(0: nicht spezifiziert; 1: spezifiziert)
06 Impulsausgabe 1 abgeschlossen. (0: nicht beendet; 1: beendet)
07 Impulsausgabe 1–Status (0: keine Ausgabe; 1: Ausgabe)
08 Impulsausgabe 1–Istwert–Unter–/Überlauf(0: normal; 1: Über–/Unterlauf.)
09 Impulsausgabe 1–Beschleunigung (0: konstant; 1: beschleunigt oder verlangsamt
Ist C = 002, liest der PRV(62)–Befehl die Vergleichsergebnisse der Istwerte ausden 8 Bereichen und speichert diese Daten in Wort D. Die Bits 00...07 des Wor-tes D enthalten die Vergleichsergebnismerker der Bereiche 1...8 (0: außerhalbdes Bereichs; 1: innerhalb des Bereichs).
Ist C=003, liest PRV(62) den Impulsausgabe–Istwert und speichert den 8–stel-ligen BCD–Wert in D und D+1. (Die äußerst linken 4 Stellen werden in D+1 ge-speichert.)
Der Istwert kann zwischen –16,777,215 und 16.777.215 liegen. Bit 15 von D+1kennzeichnet das Vorzeichen; der Wert ist negativ, wenn Bit 15 aktiviert (EIN)ist, und positiv, wenn es deaktiviert (AUS) ist.
Merker ER: Schnittstellenbezeichner und Steuerdaten sind nicht kompatibel.(Zum Beispiel: P=010 und C 000)
Die für D oder D+1 spezifizierte Adresse überschreitet die Datenbe-reichsgrenze.
Fehler bei der Operandeneinstellungen.
Indirekt adressierte DM–Worte sind nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenbereichs-grenze wurde überschritten).
PRV(62) wird in einem Interrupt–Unterprogramm ausgeführt, währendeine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
Lesebereich–Vergleichs–ergebnisse (C=002)
Impulsausgabe–Istwertlesen (C=003)
7-16AbschnittSchiebebefehle
379
7-16 Schiebebefehle
7-16-1 SHIFT REGISTER (Schieberegister) – SFT(10)
St: Anfangswort
IR, SR, AR, HR, LR
E: Endwort
IR, SR, AR, HR, LR
DatenbereicheKontaktplansymbol
I
P
SFT (10)
St
ER
E muss größer oder gleich dem Wert für St sein und St und E müssen sich imgleichen Datenbereich befinden.
Wird eine Bitadresse in einem der im Schieberegister verwendeten Worte auchin einem Befehl verwendet, der den individuellen Bitzustand steuert (z.B. OUT,KEEP(11) ), wird ein Fehler (“COIL/OUT DUPL”) erzeugt, wenn die Programm-syntax auf der Programmierkonsole oder einem anderen Programmierungsge-rät überprüft wird. Das Programm wird jedoch in der geschriebenen Form aus-geführt. Sehen Sie Beispiel 2: Steuerung von Bits in Schieberegistern.
SFT(10) wird über die drei Eingänge I, P und R gesteuert. Wird SFT(10) ausge-führt und ist 1) Eingang P auf EIN gesetzt und war dieser bei der letzten Ausfüh-rung auf AUS gesetzt und ist 2) Eingang R auf AUS gesetzt, dann wird der Ein-gang I in das äußerst rechte Bit eines zwischen St und E definierten Schiebere-gisters verschoben, d.h., ist Eingang I auf EIN gesetzt, wird eine 1 im Registerverschoben und ist Eingang I auf AUS gesetzt, wird eine 0 verschoben. Wird derWert von Eingang I ins Register geschoben, werden alle im Register befindli-chen Bits nach links verschoben und die im äußerst linken Bit gespeicherte In-formation des Register geht verloren.
Eingang IDatenver-lust
E St+1, St+2 ... St
Eingang P arbeitet wie ein flankengesteuerter Befehl, d.h. der Wert von EingangI wird nur dann in das Register verschoben, wenn Eingang P auf EIN gesetzt istund bei der letzten Ausführung von SFT(10) auf AUS gesetzt war. Hat sich derStatus von P nicht geändert oder wechselte P von EIN auf AUS, dann bleibt dasSchieberegister unbeeinflußt.
St weist das äußerste rechte Wort des Schieberegisters und E das äußerstelinke Wort zu. Das Schieberegister beinhaltet sowohl diese beiden Worte, wieauch alle dazwischenliegenden Worte. Das gleiche Wort kann St und E zuge-wiesen werden, um ein 16–Bit (d.h.1 Wort)–Schieberegister zu erstellen.
Wird Eingang R auf EIN gesetzt, werden alle Bits im Schieberegister auf AUSgesetzt (d.h. auf 0 gesetzt) und das Schieberegister ist solange deaktiviert, bisEingang R wieder auf AUS gesetzt wird.
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-ßer als E.
Im folgenden Beispiel wird das 1 Sekunden–Impulstakt–Bit (25502) verwendet,so dass jede Sekunde die durch 00000 erzeugte Ausführungsbedingung in HR
Einschränkungen
Beschreibung
Beispiel
7-16AbschnittSchiebebefehle
380
00 verschoben wird. Eine ”1” wird in HR 0007 verschoben, wenn Ausgang20000 auf EIN gesetzt ist.
I
P
SFT (10)
HR 00
HR 00R
00000
25502
00001
Adresse Befehl Operanden
00000 LD 00000
00001 LD 25502
00002 LD 00001
00003 SFT (10) HR 00
HR 00
00004 LD HR 0007
00005 OUT 2000020000
HR 0007
7-16-2 WORD SHIFT (Wortweises Verschieben) – WSFT(16)
Kontaktplansymbol Datenbereiche
WSFT (16)
St
E
@WSFT(16)
St
E
St: Anfangswort
IR, SR, AR, DM, HR, LR
E: Endwort
IR, SR, AR, DM, HR, LR
St und E müssen sich im gleichen Datenbereich befinden und E muss größeroder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird WSFT (16) nicht ausgeführt. Istder Eingang EIN, verschiebt der WSFT(16)–Befehl Daten zwischen St und E inWorteinheiten. Nullen werden in St geschrieben und der Inhalt von E ist verlo-ren.
F 0 C 2 3 4 5 2 1 0 2 9E St + 1 St
3 4 5 2 1 0 2 9 0 0 0 0E St + 1 St
Datenverlust
0000
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder Stist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Einschränkungen
Beschreibung
7-16AbschnittSchiebebefehle
381
7-16-3 ARITHMETIC SHIFT LEFT (Verschiebung nach links) – ASL (25)
Wd: Schiebewort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
ASL (25)
Wd
@ASL(25)
Wd
Einschränkung DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird ASL(25) nicht ausgeführt. Ist derEingang EIN, verschiebt der Befehl ASL(25) eine 0 in Bit 00 von Wd, wodurchdie Bits von Wd um ein Bit nach links und der Status von Bit 15 nach CY verscho-ben wird.
1 0 0 1 1 1 0 0 0 1 0 1 0 0 1 1
CYBit 00
Bit 15
0
Bei jedem Zyklus wird eine 0 in Bit 00 geschoben, falls der Befehl ASL(25) (ohneflankengesteuerte Ausführung) verwendet wird. Verwenden Sie den Befehl(@ASL(25)) (flankengesteuerte Ausführung) oder verknüpfen Sie ASL(25) mitDIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Übernimmt die Daten von Bit 15.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls aufAUS gesetzt.
7-16-4 ARITHMETIC SHIFT RIGHT (Arithmetisches Verschieben nachrechts) – ASR(26)
Wd: Schiebewort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
ASR (26)
Wd
@ASR(26)
Wd
Einschränkung DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird ASR (26) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, verschiebt der Befehl ASR (26) eine 0 in Bit 15von Wd, wodurch die Bits von Wd um ein Bit nach rechts und der Status von Bit00 nach CY verschoben wird.
1 0 0 1 0 1 1 0 0 1 1 0 0 1 01
Bit 00
Bit 15 CY
0
Bei jedem Zyklus wird eine 0 in Bit 15 geschoben, falls der Befehl ASR(26) (ohneflankengesteuerte Ausführung) verwendet wird. Verwenden Sie den Befehl(@ASR(26)) (flankengesteuerte Ausführung) oder verknüpfen Sie ASR(26) mitDIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Beschreibung
Vorsichtsmaßnahmen
Beschreibung
Vorsichtsmaßnahmen
7-16AbschnittSchiebebefehle
382
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Übernimmt die Daten von Bit 00.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls aufAUS gesetzt.
7-16-5 ROTATE LEFT (Rotation nach links) – ROL(27)
Wd: Rotationswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
ROL (27)
Wd
@ROL(27)
Wd
Einschränkung DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird ROL(27) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, verschiebt ROL(27) alle Wd–Bits um ein Bitnach links, wodurch CY in Bit 00 von Wd und Bit 15 von Wd nach CY verschobenwird.
1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 10
CYBit 00
Bit 15
Verwenden Sie, bevor Sie eine Rotation ausführen, den Befehl STC(41) zumSetzen oder CLC(41) zum Löschen von CY, um sicherzustellen, dass CY vorAusführung von ROL(27) den richtigen Wert besitzt.
Wird der Befehl ROL(27) (ohne flankengesteuerter Ausführung) verwendet,wird CY bei jedem Zyklus in Bit 00 verschoben. Verwenden Sie den Befehl(@ROL(27)) (flankengesteuerte Ausführung) oder verknüpfen Sie ROL(27) mitDIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Übernimmt die Daten von Bit 15.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls aufAUS gesetzt.
7-16-6 ROTATE RIGHT (Rotation nach rechts) – ROR(28)
Wd: Rotationswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
ROR (28)
Wd
@ROR(28)
Wd
Einschränkung DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Beschreibung
Vorsichtsmaßnahmen
7-16AbschnittSchiebebefehle
383
Ist die Ausführungsbedingung FALSCH, wird ROR(28) nicht ausgeführt. Istdiese jedoch WAHR, verschiebt ROR(28) alle Wd–Bits um ein Bit nach rechts,wodurch CY in Bit15 von Wd und Bit 00 von Wd nach CY verschoben wird.
0 1 0 1 0 1 0 0 0 1 1 1 0 0 0 10
Bit 15CY
Bit 00
Verwenden Sie, bevor Sie eine Rotation ausführen, den Befehl STC(41) zumSetzen oder CLC(41) zum Löschen von CY, um sicherzustellen, dass CY vor derAusführung von ROR(28) den richtigen Wert enthält.
Wird der Befehl ROR(28) (ohne flankengesteuerte Ausführung) verwendet,wird CY bei jedem Zyklus nach Bit15 verschoben. Verwenden Sie den Befehl(@ROR(28)) (flankengesteuerte Ausführung) oder verknüpfen Sie ROR(28)mit DIFU(13) oder DIFD(14), um nur eine einzige Verschiebung auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Übernimmt die Daten von Bit 00.
EQ: Auf EIN gesetzt, wenn der Inhalt von Wd gleich Null ist; andernfalls aufAUS gesetzt.
7-16-7 ONE DIGIT SHIFT LEFT (Eine Stelle nach links verschieben) –SLD(74)
Kontaktplansymbol Datenbereiche
SLD (74)
St
E
@SLD(74)
St
E
St: Anfangswort
IR, SR, AR, DM, HR, LR
E: Endwort
IR, SR, AR, DM, HR, LR
St und E müssen sich im gleichen Datenbereich befinden und E muss größeroder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird SLD(74) nicht ausgeführt. Istdiese jedoch WAHR, verschiebt SLD(74) Daten zwischen St und E (einsch-ließlich) um eine Stelle (vier Bits) nach links. In die äußerst rechte Stelle von Stwird 0 geschrieben und der Inhalt der äußerst linken Stelle von E geht verloren.
5
E
8 1
St
F C 97D
Datenverlust 0
...
Tritt ein Stromausfall während einer Verschiebung von mehr als 50 Worte ein,kann die Verschiebung vorzeitig abgebrochen werden.
Je Zyklus wird eine 0 in die niederwertigste Stelle von St verschoben, wenn derBefehl SLD(74) (ohne flankengesteuerter Ausführung) verwendet wird. Ver-wenden Sie den Befehl (@SLD(74)) (flankengesteuerte Ausführung) oder ver-knüpfen Sie SLD(74) mit DIFU(13) oder DIFD(14), um nur eine einzige Ver-schiebung auzuführen.
Beschreibung
Vorsichtsmaßnahmen
Einschränkungen
Beschreibung
Vorsichtsmaßnahmen
7-16AbschnittSchiebebefehle
384
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder Stist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-16-8 ONE DIGIT SHIFT RIGHT (Verschiebung um eine Stelle nachrechts) – SRD(75)
Kontaktplansymbol Datenbereiche
SRD (75)
E
St
@SRD(75)
E
St
E: Endwort
IR, SR, AR, DM, HR, LR
St: Anfangswort
IR, SR, AR, DM, HR, LR
St und E müssen sich im gleichen Datenbereich befinden und E muss kleineroder gleich St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird SRD(75) nicht ausgeführt. Istdiese jedoch WAHR, verschiebt SRD(75) Daten zwischen St und E (einsch-ließlich) um eine Stelle (vier Bits) nach rechts. In die äußerst linke Stelle von Stwird 0 geschrieben und der Inhalt der äußerst rechten Stelle von E ist verloren.
2
St
3 1
E
4 5 C8F
Datenverlust0
...
Tritt ein Stromausfall während einer Verschiebung von mehr als 50 Worte ein,kann die Verschiebung vorzeitig abgebrochen werden.
Je Zyklus wird eine 0 in die hochwertigste Stelle von St verschoben, wenn derBefehl SRD(75) (ohne flankengesteuerter Ausführung) verwendet wird. Ver-wenden Sie den Befehl (@SRD(75)) (flankengesteuerte Ausführung) oder ver-knüpfen Sie SRD(75) mit DIFU(13) oder DIFD(14), um nur eine einzige Ver-schiebung auszuführen.
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereiche oder Stist kleiner als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Einschränkungen
Beschreibung
Vorsichtsmaßnahmen
7-16AbschnittSchiebebefehle
385
7-16-9 REVERSIBLE SHIFT REGISTER (Links/Rechts–Schieberegister)– SFTR(84)
C: Steuerwort
IR, SR, AR, DM, HR, LR
St: Anfangswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol
Datenbereiche
E: Endwort
IR, SR, AR, DM, HR, LR
SFTR(84)
C
St
E
@SFTR(84)
C
St
E
St und E müssen sich im gleichen Datenbereich befinden und St muss kleineroder gleich E sein.
DM 6144 bis DM 6655 können nicht für C, St, oder E verwendet werden.
Mit SFTR(84) wird ein Schieberegister, bestehend aus einem oder mehrerenWorten erstellt, um Daten nach rechts oder links zu verschieben. Weisen Sie beieinem Einzelwort–Register St und E das gleiche Wort zu. Das Steuerwort spezi-fiziert die Verschieberichtung, den in das Register einzufügenden Status, denVerschiebungsfreigabe– und den Rücksetzeingang. Die Zuweisung des Steu-erwortes ist im folgenden dargestellt:
Nicht verwendet
Verschieberichtung1 (EIN): Links (LSB zu MSB)0 (AUS): Rechts (MSB zu LSB)
In das Register einzufügender Status
Verschiebungsfreigabe–Bit
Rücksetzbit
15 14 13 12
Die Daten im Schieberegister werden um ein Bit in die dem Bit 12 zugewieseneRichtung verschoben, wobei das letzte bzw. erste Bit nach CY und der Statusvon Bit 13 auf das andere Ende verschoben wird, wenn die Ausführungsbedin-gung für SFTR(84) WAHR ist, solange das Rücksetzbit auf AUS und Bit 14 aufEIN gesetzt ist, ausgeführt wird. Wird die Ausführungsbedingung von SFTR(84)FALSCH oder mit Bit 14 auf AUS ausgeführt, bleibt das Schieberegister unver-ändert. Wird die Ausführungsbedingung SFTR(84) WAHR und ist das Rück-setzbit (15) auf EIN gesetzt, dann wird das gesamte Schieberegister und CY aufNull gesetzt.
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-ßer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Übernimmt, je nach Verschieberichtung, die Daten von Bit 00 in St odervon Bit 15 in E.
Im folgenden Beispiel werden IR 00000, IR 00001, IR 00002 und IR 00003 dazuverwendet, die in @SFTR(84) verwendeten Bits von C zu steuern. Das Schie-
Einschränkungen
Beschreibung
Beispiel
7-16AbschnittSchiebebefehle
386
beregister befindet sich in DM 0010 – DM 0011 und wird durch IR 00004 gesteu-ert.
00000 LD 00000
00001 OUT 20012
00002 LD 00001
00003 OUT 20013
00004 LD 00002
00005 OUT 20014
00006 LD 00003
00007 OUT 20015
00008 LD 00004
00009 @SFTR(84)
200
DM 0010
DM 0011
20012
00000
20013
20014
20015
00001
00002
00003
00004
Verschieberichtung
Eingangsstatus
Verschiebungs–freigabe–Bit
Rücksetzbit
@SFTR(84)
200
DM 0010
DM 0011
Adresse Befehl Operanden
7-16-10 ASYNCHRONOUS SHIFT REGISTER (AsynchronesSchieberegister) – ASFT (17)
ASFT (17)
C
St
E
Kontaktplansymbol
@ASFT(17)
C
St
E
C:Steuerwort
IR, SR, AR, DM, HR, LR, #
St: Anfangswort
IR, SR, AR, DM, HR, LR
E: Endwort
IR, SR, AR, DM, HR, LR
Datenbereiche
Hinweis ASFT(17) ist ein Erweiteter Befehl für die SRM1(–V2). Der Funktionscode 17 istwerksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-den.
Einschränkungen St und E müssen sich im gleichen Datenbereich befinden und E muss größeroder gleich dem Wert für St sein.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Beschreibung Ist die Ausführungsbedingung FALSCH, besitzt der Befehl ASFT(17) keine Aus-wirkung und das Programm führt den nächsten Befehl aus. Ist diese jedochWAHR, erstellt und steuert ASFT(17) ein umkehrbares, asynchones Wort–Schieberegister zwischen St und E. Dieses Register verschiebt nur dann Worte,wenn das nächste Wort im Register Null ist, d.h. wenn keines der RegisterworteNull enthält, findet keine Verschiebung statt. Zusätzlich gilt, dass pro nullenent-haltendes Registerwort nur ein Wort verschoben wird. Wird der Inhalt einesWortes auf das nächste Wort verschoben, wird der Inhalt des ursprünglichenWortes auf Null gesetzt. Bei einer Registerverschiebung tauscht also praktischjedes Nullwort den Platz mit dem nächsten Wort. (Sehen Sie dazu das nachfol-gende Beispiel).
Die Verschieberichtung (d.h. ob das ”nächste Wort” das nächstniedrige oder –höhere ist), wird durch C spezifiziert. C wird auch zur Rücksetzung des Regi-sters verwendet. Ein beliebiger Teil des Registers kann zurückgesetzt werden,indem der gewünschte Teil mit St und E spezifiziert wird.
7-16AbschnittSchiebebefehle
387
Steuerwort Bits 00 bis12 von C werden nicht verwendet. Bit 13 enthält die Verschieberich-tung. Setzen Sie Bit 13 auf EIN, um abwärts zu verschieben (auf Worte mit nie-driger Adresse) und auf AUS, um aufwärts zu verschieben (auf Worte mit höhe-rer Adresse). Bit 14 ist das Verschieben aktivieren–Bit: setzen Sie dieses Bit aufEIN, um eine Registerverschiebung gemäß Bit 13 zu aktivieren und auf AUS,um diese zu deaktivieren. Bit 15 ist das Rücksetzbit: das Register wird im Be-reich zwischen St und E zurückgesetzt (auf Null), wenn der Befehl ASFT(17)ausgeführt wird, während Bit 15 auf EIN gesetzt ist. Setzen Sie Bit 15 für einenormale Funktion auf AUS.
Hinweis Wird der Befehl ASFT(17) ohne flankengesteuerte Ausführung verwendet, wer-den die Daten, solange der Eingang auf EIN ist, bei jedem Zyklus verschoben.Verwenden Sie die flankengesteuerte Ausführung, um dies zu verhindern.
Merker ER: Die St– und E–Worte befinden sich in verschiedenen Bereichen oder Stist größer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beispiel Im folgenden Beispiel wird der Befehl ASFT(17) dazu verwendet, die Worte ineinem Schieberegister, das 11 Worte umfasst und das mit C=#6000 im Bereichzwischen DM 0100 und DM 0110 erstellt wird, zu verschieben. Daten, die keineNullen enthalten, werden nach St (DM 0100) verschoben.
@ASFT (17)
#6000
DM 0100
DM 0110
00000Adresse Befehl Operanden
00000 LD 00000
00001 @ASFT (17)
# 6000
DM 0100
DM 0110
DM 0100 1234 1234 1234
DM 0101 0000 0000 2345
DM 0102 0000 2345 3456
DM 0103 2345 0000 4567
DM 0104 3456 3456 5678
DM 0105 0000 4567 6789
DM 0106 4567 0000 789a
DM 0107 5678 5678 0000
DM 0108 6789 6789 0000
DM 0109 0000 789a 0000
DM 0110 789a 0000 0000
Vor der Ausführung
Nach einerAusführung
Nach siebenAusführungen
Hinweis Mit C=4000 werden die Nullen “aufwärts” verschoben; das gesamte Schiebere-gister wird auf Null gesetzt, wenn C=8000 ist.
7-17AbschnittDatenübertragungsbefehle
388
7-17 Datenübertragungsbefehle
7-17-1 MOVE (Übertragen) – MOV(21)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR, #
D: Zielwort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
MOV(21)
S
D
@MOV(21)
S
D
Einschränkung DM 6144 bis DM 6655 können nicht für D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl MOV(21) nicht ausge-führt. Ist diese jedoch WAHR, kopiert MOV(21) den Inhalt von S nach D.
Quellwort Zielwort
Bitstatus unverändert.
TC–Nummern können nicht für D spezifiziert werden, um den Istwert des Zeit-gebers oder des Zählers zu ändern. Sie können den Istwert eines Zeitgebersoder Zählers jedoch einfach mit dem Befehl BSET(71) ändern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn alle Nullen auf D übertragen wurden.
Beispiel Im folgenden Beispiel wird der Befehl @MOV(21) dazu verwendet, den Inhaltvon IR 001 nach HR 05 zu kopieren, wenn IR 00000 von AUS auf EIN wechselt.
@MOV(21)
001
HR 05
00000Adresse Befehl Operanden
00000 LD 00000
00001 @MOV(21)
001
HR 05
0 1 1 1 0 0 1 1 1 0 0 0 1 0 1HR 05
0 1 1 1 0 0 1 1 1 0 0 0 1 0 1IR 001 0
0
7-17-2 MOVE NOT (Invertiertes Übertragen) – MVN(22)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR, #
D: Zielwort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
MVN(22)
S
D
@MVN(22)
S
D
Einschränkung DM 6144 bis DM 6655 können nicht für D verwendet werden.
Beschreibung
Vorsichtsmaßnahmen
7-17AbschnittDatenübertragungsbefehle
389
Ist die Ausführungsbedingung FALSCH, wird der Befehl MVN(22) nicht ausge-führt. Ist diese jedoch WAHR, überträgt MVN(22) den invertierten Inhalt von S(spezifiziertes Wort oder vierstellige, hexadezimale Konstante) nach D, d.h., fürjedes auf EIN gesetzte Bit in S wird das entsprechende Bit in D auf AUS gesetztund für jedes auf AUS gesetzte Bit in S, wird das entsprechende Bit in D auf EINgesetzt.
Quellwort Zielwort
invertierter Bitstatus
TC–Nummern können nicht für D spezifiziert werden, um den Istwert des Zeit-gebers oder Zählers zu ändern. Sie können den Istwert eines Zeitgebers oderZählers jedoch einfach mit dem Befehl BSET(71) ändern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn alle Nullen auf D übertragen wurden.
Beispiel Im folgenden Beispiel wird der Befehl @MVN(22) dazu verwendet, das Komple-ment von #F8C5 nach DM 0010 zu kopieren, wenn IR 00001 von AUS auf EINwechselt.
@MVN(22)
#F8C5
DM 0010
00001Adresse Befehl Operanden
00000 LD 00001
00001 @MOV(21)
# F8C5
DM 0010
0 0 0 0 0 1 1 1 0 0 1 1 0 1 0DM 0010
1 1 1 1 1 0 0 0 1 1 0 0 1 0 1#F8C5 0
1
7-17-3 BLOCK TRANSFER (Blockweise übertragen) – XFER(70)
N: Anzahl der Worte (BCD)
IR, SR, AR, DM, HR, TC, LR, #
S: Anfangs–Quellwort
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol
Datenbereiche
D: Anfangs–Zielwort
IR, SR, AR, DM, HR, TC, LR
XFER (70)
N
S
D
@XFER(70)
N
S
D
S und S+N sowie D und D+N müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Beschreibung
Vorsichtsmaßnahmen
Einschränkungen
7-17AbschnittDatenübertragungsbefehle
390
Ist die Ausführungsbedingung FALSCH, wird der Befehl XFER(70) nicht ausge-führt. Ist diese jedoch WAHR, kopiert XFER(70) den Inhalt von S, S+1, ..., S+Nnach D, D+1, ..., D+N.
2
D
3 4 5
1
D+1
3 4 5
2
D+2
3 4 2
2
D+n
6 4 5
2
S
3 4 5
1
S+1
3 4 5
2
S+2
3 4 2
2
S+n
6 4 5
Merker ER: n liegt nicht im BCD–Format vor.
S und S+n oder D und D+n befinden sich nicht im gleichen Datenbe-reich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-17-4 BLOCK SET (Blockweise vorbesetzen) – BSET(71)
S: Quelldaten
IR, SR, AR, DM, HR, TC, LR, #
St: Anfangswort
IR, SR AR, DM, HR, TC, LR
Kontaktplansymbol
Datenbereiche
E: Endwort
IR, SR, AR, DM, HR, TC, LR
BSET (71)
S
St
E
@BSET(71)
S
St
E
St muss kleiner oder gleich E sein und St und E müssen sich im gleichen Daten-bereich befinden.
DM 6144 bis DM 6655 können nicht für St oder E verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl BSET(71) nicht ausge-führt. Ist diese jedoch WAHR, kopiert BSET(71) den Inhalt von S in alle Wortevon St bis E.
2
S
3 4 5 2
St
3 4 5
2
St+1
3 4 5
2
St+2
3 4 5
2
E
3 4 5
Beschreibung
Einschränkungen
Beschreibung
7-17AbschnittDatenübertragungsbefehle
391
Mit dem Befehl BSET(71) kann der Zeitgeber/Zähler–Istwert geändert werden.(Dies kann nicht mit MOV(21) oder MVN(22) erfolgen). Mit BSET(71) könnenauch Abschnitte eines Datenbereiches, d.h. des DM–Bereichs, gelöscht wer-den, um die Ausführung anderer Befehle vorzubereiten. Er kann auch dazu ver-wendet werden, Worte durch Übertragung von nur Nullen zu löschen.
Merker ER: St und E befinden sich nicht im gleichen Datenbereich oder ST ist grö-ßer als E.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Im folgenden Beispiel wird der BSET(71)–Befehl dazu verwendet, eine Kon-stante (#0000) auf einen Block des DM–Bereiches (DM 0000 bis DM 0500) zukopieren, wenn IR 00000 auf EIN gesetzt ist.
@BSET(71)
#0000
DM 0000
DM 0500
00000 Adresse Befehl Operanden
00000 LD 00000
00001 @BSET(71)
# 0000
DM 0000
DM 0500
7-17-5 DATA EXCHANGE (Datenaustausch) – XCHG(73)
E1: Austauschwort 1
IR, SR, AR, DM, HR, TC, LR
E2: Austauschwort 2
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol Datenbereiche
XCHG (73)
E1
E2
@XCHG(73)
E1
E2
DM 6144 bis DM 6555 können nicht für E1 oder E2 verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl XCHG(73) nicht ausge-führt. Ist diese jedoch WAHR, tauscht XCHG(73) den Inhalt von E1 und E2 aus.
E2E1
Falls Sie den Inhalt von Blöcken mit mehr als einem Wort austauschen möchten,verwenden Sie Arbeitsworte als Zwischenpuffer, um einen der Blöcke unterdreimaliger Anwendung von XFER(70) zu speichern.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beispiel
Einschränkung
Beschreibung
7-17AbschnittDatenübertragungsbefehle
392
7-17-6 SINGLE WORD DISTRIBUTE (Datenverteilung) – DIST(80)
S: Quelldaten
IR, SR, AR, DM, HR, TC, LR, #
DBs : Anfangswort des Zielbereiches
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol
Datenbereiche
C: Steuerwort (BCD)
IR, SR, AR, DM, HR, TC, LR, #
DIST (80)
S
DBs
C
@DIST(80)
S
DBs
C
C muss im BCD–Format vorliegen.
DM 6144 bis DM 6655 können nicht für DBs oder C verwendet werden.
Der DIST(80)–Befehl kann, abhängig von dem im Steuerwort C vorhandenenInhalt, als Übertragungsbefehl für ein einzelnes Wort oder als Stapelbefehl ver-wendet werden.
Sind die Bits 12 bis 15 von C=0, kann DIST(80) für die Verteilung eines einzel-nen Wortes verwendet werden. Der gesamte Inhalt von C spezifiziert einen Off-set Of (0000 bis 2047 in BCD).
Ist die Ausführungsbedingung FALSCH, wird der Befehl DIST(80) nicht ausge-führt. Ist diese jedoch WAHR, kopiert DIST(80) den Inhalt von S nach DBs+Of,d.h. Of wird zu DBs addiert, um das Zielwort zu spezifizieren.
Hinweis DBs und DBs+Of müssen sich im gleichen Datenbereich befinden und könnennicht zwischen DM 6144 und DM 6655 liegen.
Im folgenden Beispiel kopiert der DIST(80)–Befehl #00FF nach HR 10 + Offset.Der Inhalt von LR 10 ist #0005, wodurch #00FF nach HR 15 (HR 10 + 5) kopiertwird, wenn IR 00000 auf EIN gesetzt ist.
@DIST(80)
#00FF
HR 10
LR 10
00000 Adresse Befehl Operanden
00000 LD 00000
00001 @DIST(80)
# 00FF
HR 10
LR 10
F
#00FF
0 0 F 0
HR 10
0 0 0
F
HR 15
0 0 F
5
LR 10
0 0 0
Stapeloperationen Sind die Bits 12 bis 15 von C=9, kann der Befehl DIST( 80) für die Stapelopera-tion verwendet werden. Die anderen 3 Stellen von C spezifizieren die Anzahl derim Stapel (000 bis 999 in BCD) befindlichen Worte. Der Inhalt von DBs ist derStapelzeiger.
Ist die Ausführungsbedingung FALSCH, wird der DIST(80)–Befehl nicht ausge-führt. Ist diese jedoch WAHR, kopiert DIST(80) den Inhalt von S nach DBs+1 +den Inhalt des DBs. Mit anderen Worten,1 und der Inhalt von DBs wird zu DBsaddiert, um das Zielwort zu spezifizieren. Der Inhalt von DBs wird dann um 1inkrementiert.
Einschränkungen
Beschreibung
Verteilung eines einzelnenWortes
Beispiel
7-17AbschnittDatenübertragungsbefehle
393
Hinweis 1. Der DIST(80)–Befehl wird bei jedem Zyklus ausgeführt, wenn nicht die flan-kengesteuerte Ausführung des Befehls (@DIST(80)) oder DIST(80) mitDIFU(13) oder DIFD(14) verwendet wird.
2. Initialisieren Sie den Stapelzeiger vor Verwendung des DIST(80)–Befehlsin Stapeloperationen.
Im folgenden Beispiel wird mit dem DIST(80)–Befehl ein Stapel zwischen DM0001 und DM 0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
@DIST(80)
200
DM 0000
216
00000 Adresse Befehl Operanden
00000 LD 00000
00001 @DIST(80)
200
DM 0000
216
DM 0000 0000
DM 0001 0000
DM 0002 0000
DM 0003 0000
DM 0004 0000
DM 0005 0000
Stapelzeiger inkrementiert
Erste Ausführung
DM 0000 0001
DM 0001 FFFF
DM 0002 0000
DM 0003 0000
DM 0004 0000
DM 0005 0000
Stapelzeiger inkrementiert
ZweiteAusführung
IR 200 FFFF
IR 216 9005
DM 0000 0002
DM 0001 FFFF
DM 0002 FFFF
DM 0003 0000
DM 0004 0000
DM 0005 0000
Merker ER: Der Offset oder die Stapellänge im Steuerwort liegt nicht im BCD–For-mat vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Während der Stapeloperation überschreitet der Wert des Stapelzei-gers+1 die Stapellänge.
EQ: Auf EIN gesetzt, wenn der Inhalt von S Null ist; andernfalls auf AUS ge-setzt.
7-17-7 DATA COLLECT (Daten sammeln) – COLL(81)
SBs : Quell–Basiswort
IR, SR, AR, DM, HR, TC, LR
C: Steuerwort (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
D: Zielwort
IR, SR, AR, DM, HR, TC, LR
COLL (81)
SBs
C
D
@COLL(81)
SBs
C
D
C muss im BCD–Format vorliegen.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Der Befehl COLL(81) arbeitet abhängig von dem Wert in C als Daten–Sammel–,FIFO– oder LIFO–Stapelbefehl.
Sind die Bits 12 bis 15 von C=0, kann COLL(81) für die Stapeloperation verwen-det werden. Der gesamte Inhalt von C spezifiziert einen Offset Of (0000 bis 2047in BCD).
Beispiel
Einschränkungen
Beschreibung
Datenerfassung
7-17AbschnittDatenübertragungsbefehle
394
Ist die Ausführungsbedingung FALSCH, wird COLL(81) nicht ausgeführt. Istdiese jedoch WAHR, kopiert COLL(81) den Inhalt von SBs + Of nach D, d.h. derWert von Of wird zu SBs addiert, um das Quellwort zu bestimmen.
Hinweis SBs und SBs+Offset müssen sich im gleichen Datenbereich befinden.
Im folgenden Beispiel kopiert COLL(81) den Inhalt von DM 0000+Offset nachLR 00. Der Inhalt von 200 ist #0005, also wird der Inhalt von DM 0005 (DM 0000+ 5) nach LR 00 kopiert, wenn IR 00001 auf EIN gesetzt ist.
@COLL(81)
DM 0000
200
LR 00
00001 Adresse Befehl Operanden
00000 LD 00001
00001 @DIST(80)
DM 0000
200
LR 00
F
LR 00
0 0 F0
DM 0000
0 0 0
F
DM 0005
0 0 F
5
200
0 0 0
FIFO–Stapeloperationen Sind die Bits12 bis15 von C=9, arbeitet COLL(81) in der FIFO–Stapeloperation.Die anderen 3 Stellen von C spezifizieren die Anzahl der im Stapel (000 bis 999in BCD) befindlichen Worte. Der Inhalt von SBs ist der Stapelzeiger.
Ist die Ausführungsbedingung WAHR, verschiebt COLL(81) den Inhalt jedesWortes innerhalb des Stapels um eine Adresse und verschiebt schließlich dieDaten von SBs (der erste, in den Stapel geschriebene Wert) in das Zielwort (D).Der Inhalt des Stapelzeigers (SBs) wird dann um 1 dekrementiert.
Hinweis COLL(81) wird in jedem Zyklus ausgeführt, wenn nicht die flankengesteuerteAusführung des Befehls (@COLL(81)) oder COLL(81) mit DIFU (13) oderDIFD(14) verwendet wird.
Im folgenden Beispiel wird mit COLL(81) ein Stapel zwischen DM 0001 und DM0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
Wechselt IR 00000 von AUS auf EIN, verschiebt COLL(81) den Inhalt von DM0002 bis DM 0005 um eine Adresse und anschließend die Daten von DM 0001nach IR 001. Der Inhalt des Stapelzeigers (DM 0000) wird dann um 1 dekremen-tiert.
@COLL(81)
DM 0000
216
001
00000 Adresse Befehl Operanden
00000 LD 00000
00001 @COLL(81)
DM 0000
216
001
DM 0000 0005
DM 0001 AAAA
DM 0002 BBBB
DM 0003 CCCC
DM 0004 DDDD
DM 0005 EEEE
Dekrementie-rung des Stapelzeigers
IR 216 9005
DM 0000 0004
DM 0001 BBBB
DM 0002 CCCC
DM 0003 DDDD
DM 0004 EEEE
DM 0005 EEEE
IR 001 AAAA
Beispiel
Beispiel
7-17AbschnittDatenübertragungsbefehle
395
LIFO–Stapeloperationen Sind die Bits12 bis15 von C=8, wird COLL(81) in der LIFO–Stapeloperation ver-wendet. Die anderen 3 Stellen von C spezifizieren die Anzahl der im Stapel (000bis 999) befindlichen Worte. Der Inhalt von SBs ist der Stapelzeiger.
Ist der Eingang EIN, kopiert COLL(81) die Daten des durch den Stapelzeiger(SBs+den Inhalt von SBs) spezifizierten Wortes in das Zielwort (D). Der Inhaltdes Stapelzeigers (SBs) wird anschließend um 1 dekrementiert.
Der Stapelzeiger ist das einzige Wort, das im Stapel geändert wird.
Hinweis COLL(81) wird in jedem Zyklus ausgeführt, wenn nicht die flankengesteuerteAusführung des Befehls (@COLL(81)) oder COLL(81) mit DIFU (13) oderDIFD(14) verwendet wird.
Im folgenden Beispiel wird mit COLL(81) ein Stapel zwischen DM 0001 undDM 0005 erstellt. DM 0000 arbeitet als Stapelzeiger.
Wechselt IR 00000 von AUS auf EIN, kopiert COLL(81) den Inhalt von DM 0005(DM 0000+5) nach IR 001. Der Inhalt des Stapelzeigers (DM 0000) wird an-schließend um 1 dekrementiert.
@COLL(81)
DM 0000
216
001
00000 Adresse Befehl Operanden
00000 LD 00000
00001 @COLL(81)
DM 0000
216
001
DM 0000 0005
DM 0001 AAAA
DM 0002 BBBB
DM 0003 CCCC
DM 0004 DDDD
DM 0005 EEEE
Dekrementie-rung des Stapelzeigers
IR 216 8005
DM 0000 0004
DM 0001 AAAA
DM 0002 BBBB
DM 0003 CCCC
DM 0004 DDDD
DM 0005 EEEE
IR 001 EEEE
Merker ER: Der Offset oder die Stapellänge im Steuerwort liegt nicht im BCD–For-mat vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Während der Stapeloperation überschreitet der Wert des Stapelzeigersdie Stapellänge; es wurde versucht, ein Wort über die Stapellänge hin-aus zu schreiben.
EQ: Auf EIN gesetzt, wenn der Inhalt von D Null wird; andernfalls auf AUSgesetzt.
7-17-8 MOVE BIT (Bit übertragen) – MOVB(82)
S: Quellwort
IR, SR, AR, DM, HR, LR, #
Bi: Bitkennzeichner (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
D: Zielwort
IR, SR, AR, DM, HR, LR
MOVB (82)
S
Bi
D
@MOVB(82)
S
Bi
D
Beispiel
7-17AbschnittDatenübertragungsbefehle
396
Einschränkungen Die äußerst rechten zwei Stellen und die äußerst linken zwei Stellen von Bi müs-sen sich je zwischen 00 und 15 befinden.
DM 6144 bis DM 6655 können nicht für Bi oder D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl MOVB(82) nicht aus-geführt. Wird die Ausführungsbedingung WAHR, kopiert MOVB (82) das spezi-fizierte Bit von S auf das spezifizierte Bit in D. Die Bits in S und D werden durch Bispezifiziert. Die äußerst rechten zwei Stellen von Bi weisen das Quellbit und dieäußerst linken zwei Stellen das Zielbit zu.
1
Bi
1 2 0
Quellbit (00 bis 15)
Zielbit (00 bis 15)
0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1
Bit 15
Bit 00
0 1 0 1 0 1 0 0 0 1 1 1 0 0 0 1
0 1 0 0 0 1 0 0 0 1 1 1 0 0 0 1
S
D
Bi
1 2 0 1Bit 15
Bit 15
Bit 00
Bit 00
LSBMSB
Merker ER: Bi liegt nicht im BCD–Format vor oder spezifiziert ein nicht vorhande-nes Bit (d.h. die Bitspezifikation muss zwischen 00 und 15 liegen).
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-17-9 MOVE DIGIT (Digit–Übertragung) – MOVD(83)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR, #
Di:Stellenkennzeichner (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
D: Zielwort
IR, SR, AR, DM, HR, TC, LR
MOVD(83)
S
Di
D
@MOVD(83)
S
Di
D
Einschränkungen Die äußerst rechten drei Stellen müssen jeweils einen Wert zwischen 0 und 3besitzen.
DM 6144 bis DM 6655 DM können nicht für Di oder D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl MOVD(83) nicht aus-geführt. Ist diese jedoch WAHR, kopiert MOVD(83) den Inhalt der spezifiziertenStelle(n) in S in die spezifizierten Stelle(n) in D. Bis zu vier Stellen können aufeinmal übertragen werden. Die erste zu kopierende Stelle, die Anzahl der zu ko-pierenden Stellen und die erste Stelle, die die Kopie empfängt, werden, wienachstehend dargestellt, Di zugewiesen. Die Stellen von S werden, angefangenvon der ersten bis zur letzten zugewiesenen Stelle, in die aufeinanderfolgender
Beschreibung
Beschreibung
7-18AbschnittDatensteuerungsbefehle
397
Stellen von D kopiert. Wird die letzte Stelle in S oder D erreicht, werden weitereStellen, angefangen bei der Stelle 0, verwendet.
Erste Stelle in S (0 bis 3)
Anzahl der Stellen (0 bis 3)0: 1 Stelle1: 2 Stellen2: 3 Stellen3: 4 Stellen
Erste Stelle in D (0 bis 3)
Nicht verwendet (Auf 0 gesetzt).
Stellen: 3 2 1 0
Im folgenden Beispiel werden die Datenbewegungen für diverse Werte von Didargestellt.
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
S
Di: 0031 Di: 0023
Di: 0030Di: 0010
S
SS
0
1
2
3
D
0
1
2
3
D
0
1
2
3
D
0
1
2
3
D
Merker ER: Mindestens eine der äußerst rechten drei Stellen von Di liegt nicht zwi-schen 0 und 3.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-18 Datensteuerungsbefehle
7-18-1 SCALING (Skalierung) – SCL(66)
S:Quellwort
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbole Datenbereiche
@SCL(66)
S
P1
RR Ergebniswort
IR, SR, AR, DM, HR, LR
P1:Erstes Parameterwort
IR, SR, AR, DM, HR, TC, LR
SCL (66)
S
P1
R
Einschränkungen Dieser Befehl ist nur verfügbar in der CPM2A/CPM2C/SRM1–V2 .
P1 bis P1+3 müssen sich in dem gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für P1 bis P1+3 oder R verwendet werden.
Stellenkennzeichner
7-18AbschnittDatensteuerungsbefehle
398
Beschreibung Der Befehl SCL(66) wird zur linearen Konvertierung eines 4–stelligen Hexade-zimal– in einen 4–stelligen BCD–Wert eingesetzt. Im Gegensatz zu demBCD(24)–Befehl, der einen 4–stelligen Hexadezimalwert in sein 4–stelligesBCD–Äquivalent konvertiert (Shex→SBCD), konvertiert SCL(66) den hexadezi-malen Wert in Abhängigkeit von einer speziellen linearen Funktion. Diese li-neare Funktion wird durch zwei Punkte in den Parameterworten P1 bis P1+3definiert.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SCL(66) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert SCL (66) einen 4–stelligen Hexadezi-malwert des Quellwortes S in einen 4–stelligen BCD–Wert in Abhängigkeit vonder linearen Funktion (Geraden), die durch die Parameter P1, P1+1 (Ay, Ax) undP1+2, P1+3 (By, Bx) definiert ist. Das Ergebnis wird in das Ergebniswort R ge-schrieben. Ergebnisse werden auf die nächste Ganzzahl abgerundet. Ist dasErgebnis kleiner als 0000, wird der Wert 0000 in R gespeichert. Ist das Ergebnisgrößer als 9999, wird der Wert 9999 in R gespeichert.
Die folgende Tabelle enthält die Funktionen und Bereiche der Parameterworte:
Parameter Funktion Bereich Bemerkungen
P1 BCD–Punkt Nr. 1 (AY) 0000 ... 9999 –––
P1+1 Hex. Punkt Nr. 1 (AX) 0000 ... FFFF Nicht auf P1+1=P1+3 setzen
P1+2 BCD–Punkt Nr. 2 (BY) 0000 ... 9999 –––
P1+3 Hex. Punkt Nr. 2 (BX) 0000 ... FFFF Nicht auf P1+3 =P1+1 setzen
Das folgende Diagramm zeigt die Konvertierung des Quellwortes S nach DM inAbhängigkeit von der über die Punkte (Ay, Ax) und (By, Bx) definierten Geraden.
Ax S Bx
Wert nach derKonvertierung (BCD)
By
R
Wert vor der Konvertierung(hexadezimal)
Ay
Die Ergebnisse können durch die Konvertierung aller BCD–Werte und Berech-nung über folgende Formel ermittelt werden:
Ergebnisse = BY – [(BY – AY)/(BX – AX) × (BX – S)]
Merker ER: Der Wert in P1+1 stimmt mit dem in P1+3 überein.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-reichsgrenze wurde überschritten).
P1 und P1+3 befinden sich nicht im gleichen Datenbereich oder ein an-derer Einstellungsfehler liegt vor.
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
Beispiel Ist 00000 im folgenden Beispiel auf EIN gesetzt, werden die BCD–Quelldaten inDM 0100 (#0100) in einen Hexadezimalwert gemäß den Parametern in DM
7-18AbschnittDatensteuerungsbefehle
399
0150 bis DM 0153 konvertiert. Das Ergebnis (#0512) wird dann in DM 0200 ge-speichert.
@SCL(66)
DM 0150
DM 0100
00000
DM 0200
Adresse Befehl Operanden
00000 LD 00000
00001 @SCL(66)
DM 0100
DM 0150
DM 0200
DM 0150 0010
DM 0151 0005
DM 0152 0050
DM 0153 0019
DM 0100 0100
DM 0200 0512
7-18-2 SIGNED BINARY TO BCD SCALING (VorzeichenbehaftetenBinärwert in BCD–Wert konvertieren) – SCL2(––)
S:Quellwort
IR, SR, AR, DM, HR, LR
Kontaktplansymbole Datenbereiche
@SCL2(––)
S
P1
RR Ergebniswort
IR, SR, AR, DM, HR, LR
P1:Erstes Parameterwort
IR, SR, AR, DM, HR, LR
SCL2(––)
S
P1
R
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
P1 bis P1+2 muss sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung Der Befehl SCL2(––) wird zur linearen Konvertierung eines vorzeichenbehafte-ten 4–stelligen Hexadezimalwertes in einen 4–stelligen BCD–Wert eingesetzt.Im Gegensatz zu dem Befehl BCD(24), der einen 4–stelligen Hexadezimalwertin sein 4–stelliges Äquivalent konvertiert (SHex→SBCD), konvertiert SCL2(––)den vorzeichenbehafteten hexadezimalen Wert entsprechend einer spezifi-schen Linearbeziehung. Die Konvertierungsgerade wird durch den X–Schnitt-punkt definiert und die Neigung der Geraden in den Parameterworten P1 bisP1+2.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SCL2(––) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert SCL2(––) den 4–stelligen vorzeichen-behafteten Hexadezimalwert in S in den 4–stelligen BCD–Wert auf der Gera-den, die durch die X–Schnittpunkte (P1,0) und die Neigung (P1+2÷P1+1) defi-niert ist und speichert die Ergebnisse in R. Das Ergebnis wird auf die nächstlie-gende Ganzzahl gerundet.
Ist das Ergebnis negativ, wird CY auf 1 gesetzt. Ist das Ergebnis kleiner als–9999, wird –9999 in R gespeichert. Ist das Ergebnis größer als 9999, wird 9999in R gespeichert.
Die folgende Tabelle enthält die Funktionen und Bereiche der Parameterworte:
Parameter Funktion Bereich
P1 X–Schnittpunkt (Hex.–Wert mit Vorzeichen).
8000 ... 7FFF (–32.768 ... 32.767)
P1+1 ∆X (Hex.–Wert mit Vorzeichen) 8000 ... 7FFF (–32.768 ... 32.767)
P1+2 ∆Y (BCD) 0000 ... 9999
7-18AbschnittDatensteuerungsbefehle
400
Das folgende Diagramm zeigt das Quellwort S, das entsprechend der Gerade,die über den Punkt (P1, 0) und die Neigung ∆Y/∆X definiert ist, in R konvertiertwird.
S
Wert nach derKonvertierung (BCD)
R
Wert vor der Konvertierung(Hex.–Wert mit Vorzei-chen)
X–Schnitt-punkt
∆X
∆Y
Das Ergebnis kann berechnet werden, indem zuerst alle vorzeichenbehaftetenHexadezimalwerte in BCD–Werte konvertiert werden und dann folgende For-mel angewendet wird:
R + DYDX
(S–P1)
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-reichsgrenze wurde überschritten).
P1 und P1+2 befinden sich nicht im gleichen Datenbereich oder es liegtein anderer Einstellfehler vor.
CY: Auf EIN gesetzt, wenn das Ergebnis von R negativ ist.
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
Beispiel Wird 00500 im folgenden Beispiel auf EIN gesetzt, werden die vorzeichenbehaf-teten binären Quelldaten in 200 (#FFE2) in das BCD–Format, entsprechendden Parametern in DM 0000 bis DM 0002, konvertiert. Das Ergebnis (#0018)wird dann in LR 00 geschrieben und CY auf EIN gesetzt, da das Ergebnis nega-tiv ist.
@SCL2(––)
DM 0000
200
00500
LR 00
Adresse Befehl Operanden
00000 LD 00500
00001 @SCL2(––)
200
DM 0000
LR 00
DM 0000 FFFD
DM 0001 0003
DM 0002 0002
IR 200 FFE2
LR 00 0018
FFFD3
2
CY=1
FFE2
–0018
Der CY–Merker wird gesetzt, da dasKonvertierungsergebnis negativ ist.R + 0002
0003 (FFE2–FFFD)
+ 23
(–1B) + –18
7-18AbschnittDatensteuerungsbefehle
401
7-18-3 BCD TO SIGNED BINARY SCALING (BCD–Wert invorzeichenbehafteten Binärwert konvertieren) – SCL3(––)
S:Quellwort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
@SCL3(––)
S
P1
RR: Ergebniswort
IR, SR, AR, DM, HR, LR
P1:Erstes Parameterwort
IR, SR, AR, DM, HR, LR
SCL3(––)
S
P1
R
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
P1+1 muss im BCD–Format vorliegen.
P1 bis P1+4 müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung SCL3(––) wird dazu verwendet, einen 4–stelligen BCD–Wert in einen 4–stel-ligen, vorzeichenbehafteten Hexadezimalwert linear zu konvertieren. SCL3(––)konvertiert den BCD–Wert entsprechend einer spezifizierten Linearbeziehung.Die Konvertierungsgerade wird durch den Y–Schnittpunkt definiert und die Nei-gung der Geraden in den Parameterworten P1 bis P1+2 spezifiziert.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SCL3(––) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert SCL3(––) den 4–stelligen BCD–Wertin S in den 4–stelligen vorzeichenbehafteten Hexadezimalwert auf der Gera-den, die durch den Y–Schnittpunkt (0, P1) und die Neigung (P1+2÷P1+1) defi-niert ist und speichert das Ergebnis in R. Das Ergebnis wird auf die nächstlie-gende Ganzzahl gerundet.
Der Inhalt von S kann einen Wert von 0000 bis 9999 besitzen. S wird jedoch alsein negativer Wert behandelt, wenn CY= 1 ist. Daher liegt der wirksame Bereichvon S eigentlich bei –9999 bis 9999. Vergewissern Sie sich, daß Sie das ge-wünschte Vorzeichen in CY mit Hilfe von STC(40) oder CLC(41) setzen.
Die Parameterworte P1+3 und P1+4 definieren obere und untere Grenzen fürdas Ergebnis. Überschreitet das Ergebnis die obere, mit P1+3 spezifizierteGrenze, wird die obere Grenze in R gespeichert. Unterschreitet das Ergebnisdie mit P1+4 spezifizierte untere Grenze, wird die untere Grenze in R gespei-chert.
Hinweis Der obere und untere Grenzwert für eine 12 Bit–A/D–Wandler–Baugruppe be-trägt 07FF und F800.
Die folgende Tabelle enthält die Funktionen und Bereiche der Parameterworte:
Parameter Funktion Bereich
P1 Y–Schnittpunkt (Hex.–Wert mit Vorzeichen)
8000 ... 7FFF (–32.768 ... 32.767)
P1+1 ∆X (BCD) 0001 ... 9999
P1+2 ∆Y (Hex.–Wert mit Vorzeichen) 8000 ... 7FFF (–32.768 ... 32.767)
P1+3 Obere Grenze (Hex.–Wert mit Vorzeichen)
8000 ... 7FFF (–32.768 ... 32.767)
P1+4 Untere Grenze (Hex.–Wert mit Vorzeichen)
8000 ... 7FFF (–32.768 ... 32.767)
7-18AbschnittDatensteuerungsbefehle
402
Das folgende Diagramm zeigt das Quellwort S, das entsprechend der Gerade,die über den Punkt (0, P1) und die Neigung ∆Y/∆X definiert ist, in R konvertiertwird.
S
Wert nach der Konvertierung(Hex.–Wert mit Vorzeichen)
R
Wert vor der Konvertierung (BCD)
Y–Schnitt-punkt
∆X
∆Y
Untere Grenze
ObereGrenze
Das Ergebnis wird berechnet, indem zuerst alle BCD–Werte in vorzeichenbe-haftete Binärwerte konvertiert werden und dann die folgende Formel angewen-det wird:
R + ÒDYDX
SÓ ) P1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwort–Be-reichsgrenze wurde überschritten).
Der Inhalt von S liegt nicht im BCD–Format vor.
CY: CY wird nicht von dem Befehl SCL3(––) verändert. (CY beinhaltet dasVorzeichen von S vor der Ausführung).
EQ: Auf EIN gesetzt, wenn das Ergebnis in R = 0000 ist.
!
7-18AbschnittDatensteuerungsbefehle
403
Beispiel Der Zustand von 00101 bestimmt das Vorzeichen des BCD–Quellwortes im fol-genden Beispiel. Ist 00101 auf EIN gesetzt, ist das Quellwort negativ. Ist 00100auf EIN gesetzt, werden die BCD–Quelldaten in LR 02 in vorzeichenbehafteteBinärdaten, entsprechend den Parametern in DM 0000 bis DM 0004, konver-tiert. Das Ergebnis wird dann in DM 0100 geschrieben. (In der zweiten Konver-tierung liegt das entsprechende vorzeichenbehaftete binäre Äquivalent von–1035 unterhalb der in DM 0004 spezifizierten unteren Grenze. Daher wird dieuntere Grenze in DM 0100 gespeichert).
CLC(41)
STC(40)
00100
Adresse Befehl Operanden
00000 LD 25313
00001 CLC(41)
00002 LD 00101
00101 STC (40)
00004 LD 00100
00005 SCL3(––)
LR 02
DM 0000
DM 0100
25313(Immer EIN)
00101
@SCL3(––)
DM 0000
LR 02
DM 0100
DM 0000 0005
DM 0001 0003
DM 0002 0006
DM 0003 07FF
DM 0004 F800
LR 02 0100
DM 0100 00CD
00053
6CY=0
BCD–Daten
Hex.–Wert mit Vorzeichen.
LR 02 1035
DM 0100 F800
CY=1
7-18-4 PID CONTROL (PID–Regelung) – PID(––)
IW: Eingangsdatenwort (Istwert)
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
OW: Ausgangsdatenwort (Stellgröße)
IR, SR, AR, DM, HR, LR
P1:Erstes Parameterwort
IR, SR, DM, HR, LR
PID(––)
IW
P1
OW
Einschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
DM 6144 bis DM 6655 können nicht für P1 oder OW verwendet werden.
P1 bis P1+32 müssen sich im gleichen Datenbereich befinden.
Vorsicht Insgesamt müssen für eine fehlerfreie Funktion 33 aufeinanderfolgende Wortefür PID(––) verwendet werden. Darüberhinaus darf PID(––) nicht verwendetwerden in – Interrupt–Programmen– zwischen IL(02) und ILC(03)– zwischen JMP(04) und (JME(05), sowie in– Schrittprogrammen (STEP(08)/SNXT(09)).
!
7-18AbschnittDatensteuerungsbefehle
404
Beschreibung PID(––) führt eine PID–Regelung aus, die auf den in P1 bis P1+6 spezifizier-ten Parametern basiert.
Ist die Ausführungsbedingung FALSCH, wird PID(––) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, führt PID(––) eine PID–Regelung, entspre-chend den zuwiesenen Parametern, aus. Der Befehl übernimmt die Binärdatenvom Inhalt von IW und führt die PID–Regelung entsprechend den spezifiziertenParametern durch. Das Ergebnis wird dann als Stellwert in OW gespeichert.
Die nachfolgende Tabelle enthält die Funktionen der Parameterworte.
Wort Bits Parameter–bezeichnung
Funktion/Einstellbereich
P1 00 bis 15 Sollwert (SV). Dies ist der Zielwert bei einer PID–Regelung. Er kann auf einen beliebigen Binär-wert eingestellt werden, wobei die Anzahl der Bits durch den Eingangsbereichs–Parameter spezifiziert wird.
P1+1 00 bis 15 Proportionalband–Breite
Dieser Parameter spezifiziert das Verhältnis zwischen Propotionalband–Breiteund Eingangsbereich (0,1% bis 999,9%). Dieser Wert muss als BCD–Wert von0001 bis 9999 spezifiziert werden.
P1+2 00 bis 15 Nachstellzeit (Tik)/ Ab-tastintervall (τ)
Stellt die Höhe der Integralwirkung ein. Das Vergrößern dieses Wertes verstärktdie Integralwirkung. Dieser Wert muss als BCD–Wert von 0001 bis 8191 oder9999 spezifiziert werden. Eine Einstellung von 9999 deaktiviert die Integralrege-lung.
Stellen Sie die Nachstellzeit dividiert durch den Abtastintervall ein.
P1+3 00 bis 15 Vorhaltezeit (Tdk)/Ab-tastintervall (τ)
Stellt die Höhe der Vorhaltewirkung ein. Das Vergrößern dieses Wertes verstärktdie Vorhaltewirkung. Dieser Wert muss als BCD–Wert von 0001 bis 8191 oder0000 spezifiziert werden(Eine Einstellung von 0000 deaktiviert die Differential–Regelung.)
Stellen Sie die Vorhaltezeit dividiert durch das Abtastintervall ein.
P1+4 00 bis 15 Abtastintervall (τ) Stellt das Intervall zwischen den Abtastungen der Eingangsdaten ein. Dieser Wertmuss als BCD–Wert von 0001 bis 1023 spezifiziert werden. Der Zeitraum ist von0,1 bis 102,3 s
P1+5 00 bis 03 Spezifikation des Betriebs
Spezifiziert die Vorwärts– oder Rückwärtsregelung. (0 = rückwärts, 1 = vorwärts).
04 bis 15 Eingangsfilter–Koeffizient (α)
Bestimmt die Stärke des Eingangsfilters. Je kleiner der Koeffizient, desto schwä-cher der Filter.
Für diesen Wert muss 000 oder ein BCD–Wert von 100 bis 199 spezifiziert wer-den. Die Einstellung 000 spezifiziert den Vorgabewert (0,65) und eine Einstellungvon 100 bis 199 den Koeffizienten von 0,00 bis 0,99.
P1+6 00 bis 03 Ausgangsbereich Bestimmt die Anzahl der Ausgangsbits. Diese Einstellung muss zwischen 0 und 8liegen. Hierdurch wird für den Ausgangsbereich ein Wert zwischen 8 und 16 Bitsspezifiziert.
08 bis 15 Eingangsbereich Bestimmt die Anzahl der Eingangsbits. Diese Einstellung muss zwischen 00 und08 liegen. Hierdurch wird für den Eingabebereich ein Wert zwischen 8 und 16 Bitsspezifiziert.
P1+7 bisP1+32
00 bis 15 Arbeitsbereich Nicht verwenden.(Wird vom System verwendet).
Vorsicht Änderungen der Parameter sind erst wirksam, wenn die Ausführungsbedin-gung für PID(––) von AUS auf EIN wechselt.
Hinweis Liegt einer der nachfolgenden Umstände vor, sollten Sie PID(––) nicht verwen-den, da eine ordnungsgemäße Ausführung nicht gewährleistet ist:in Interrupt–Programmen, in Unterprogrammen, in verriegelten Programmabschnitten (zwischen IL und ILC)in übersprungenen Abschnitten (zwischen JMP und JME)in Schritt–Programmabschnitten (durch STEP–Befehl erzeugt).
Ist die Ausführungsbedingung WAHR, führt PID(––) die PID–Berechnung mitden Eingangsdaten durch, wenn das Abtast–Intervall abgelaufen ist. Das Ab-tast–Intervall ist die Zeit, die verstrichen sein muß, bevor neue Eingangsdatenfür die Verarbeitung gelesen werden.
7-18AbschnittDatensteuerungsbefehle
405
Die folgende Abbildung zeigt das Verhältnis zwischen dem Abtast–Intervall undder PID–Verarbeitung. Die PID–Verarbeitung findet nur statt, wenn das Abtast–Intervall (in diesem Fall 100 ms) abgelaufen ist.
70 ms
1 Zyklus
60 ms 70 ms 70 ms
PID–Verarbeitungmit Anfangswerten(0 ms)
Keine Vearbeitung(70 ms)
PID–Verarbeitung(70+30=100 ms,kein Übertrag)
Keine Verarbeitung(70 ms)
PID–Verarbeitung(130 ms, 30 ms Übertrag)
PID–Regelvorgang Ausführungsbedingung AUSAlle eingestellten Daten werden beibehalten. Ist die Ausführungsbedingungdeaktiviert, kann der Stellwert ins Ausgangswort (OW) geschrieben werden, umeine manuelle Regelung zu ermöglichen.
Steigende Flanke der AusführungsbedingungDer Arbeitsbereich wird, basierend auf den eingestellten PID–Parametern, ini–tialisiert und der PID–Regelvorgang beginnt. Plötzliche und radikale Änderun-gen der Stellwertausgabe erfolgen nicht beim Beginn, um einen ungünstig Ein-fluss auf das geregelte System (kurze Einschwingabweichungen) zu vermei-den.
Werden PID–Parameter geändert, werden sie erst gültig, nachdem sich dieAusführungsbedingung von AUS nach EIN geändert hat.
Ausführungsbedingung EINDie PID–Vorgänge werden in den Abständen, die dem Abtastintervall entspre-chen und entsprechend den eingestellten den PID–Konstanten, ausgeführt.
Abtastintervall und PID–AusführungszeitverhaltenDas Abtastintervall bestimmt die Zeitpunkte, an denen Eingangsdaten eingel-sen werden. PID(––) wird jedoch entsprechend dem CPU–Zyklus ausgeführt,es kann Fälle geben, in denen das Abtastintervall überschritten wird. In solchenFällen wird der Zeitabstand bis zum nächsten Abtasten reduziert.
PID–Regelverfahren PID–Regelvorgängen werden mittels PID–Regelung mit Störgrößenaufschal-tung ausgeführt (zwei Freiheitsgrade).
Wird das Überschwingen durch eine einfache PID–Regelung verhindert, wirdder Störungsausgleich verlangsamt (1). Wird der Störungsausgleich dagegenbeschleunigt, tritt ein Überschwingen auf und die Antwortzeit gegenüber demZielwert wird verlangsamt (2). Bei PID–Regelung mit Störgrößenaufschaltungtritt kein Überschwingen auf und sowohl Antwortzeit in Richtung Zielwert alsauch Störungsausgleich können beide beschleunigt werden (3).
Einfache PID–Regelung PID–Regelung mit Störgrößenaufschaltung
Während die Störungsreaktion sich verlang-samt, verschlechtert sich die Reaktion auf Stö-rungen.
Während die Störgrößenreaktion schneller wird,verschlechtert sich die Zielantwort.Überschwingen
Zielantwort Störungsreaktion
(1)
(2)
7-18AbschnittDatensteuerungsbefehle
406
Regelvorgänge Proportionalregelung (P)Die Proportionalregelung ist ein Vorgang, bei dem ein Proportionalband in Hin-sicht auf den Sollwert definiert wird und sich der Stellwert innerhalb dieses Ban-des proportional zur Regelabweichung verhält. Ein Beispiel für die Rückwärts-regelung ist in der folgenden Abbildung dargestellt
Wird die Proportionalregelung verwendet und ist der Istwert kleiner als das Pro-portionalband, beträgt der Stellwert 100% (d.h. Maximalwert). Innerhalb desProportionalbandes verhält sich der Stellwert proportional zur Regel–abwei-chung (der Unterschied zwischen Sollwert und Istwert) und wird bis zur Soll-wert– und Istwert–Entsprechung allmählich verringert (d.h. bis die Regelabwei-chung 0 beträgt); zu diesem Zeitpunkt beträgt der Stellwert 0% (d.h. Minimal-wert). Der Stellwert beträgt ebenfalls 0%, wenn der Istwert größer als der Soll-wert ist.
Das Proportionalband wird als Prozentsatz des vollständigen Eingangsbe-reichs ausgedrückt. Je kleiner das Proportionalband, desto größer ist die pro-portionale Konstante und je stärker ist die Nachregelung. Bei der Proportional-regelung tritt gewöhnlich ein Offset (restliche Regelabweichung) auf, aber derOffset kann reduziert werden, indem das Proportionalband verringert wird. Re-gelschwingungen treten auf, falls es zu stark verringert wird.
Proportionalregelung (Rückwärtsregelung) Einstellung des Proportionalbandes
Soll–wert
Zu schmales Proportionalband (Regelschwingungen treten auf)
Richtiges Proportionalband
Zu breites Proportionalband (großer Offset)
OffsetStellwert
Proportional-band
100%
0%
Sollwert
Integralbetrieb (I)Die Kombination von Integralbetrieb und Proportionalregelung reduziert denOffset entsprechend der vergangenen Zeit. Die Stärke des Integralbetriebs wirddurch die Nachstellzeit ausgewiesen, dies ist die Zeit, die der Stellwert bei Inte-gralbetrieb benötigt, um die gleiche Ebene wie der Stellwert der Proportionalre-gelung in Hinsicht auf die Sprungabweichung zu erreichen, wie es in der folgen-den Abbildung gezeigt wird. Je kürzer die Nachstellzeit, desto stärker ist die Kor-rektur durch den Integralbetrieb. Ist die Nachstellzeit zu kurz, erfolgt eine zukräftige Korrektur, wodurch Regelschwingungen auftreten.
Integralbetrieb
PI–Betrieb und Nachstellzeit
Regelabweichung
Stellwert
Sprungantwort
PI–Regelung
P action
Ti: Nachstellzeit
Regelabweichung
Stellwert
Sprungantwort
I–Regelung
7-18AbschnittDatensteuerungsbefehle
407
Vorhaltebetrieb (D)Da Proportionalregelung und Integralbetrieb beide Korrekturen in Hinsicht aufdie Regelergebnisse vornehmen, tritt unvermeidlicherweise eine Ansprechver-zögerung auf. Der Vorhaltebetrieb kompensiert diesen Nachteil. Als Reaktionauf eine plötzliche Störung liefert er einen großen Stellwert und stellt den ur-sprünglichen Zustand schnell wiederher. Eine Korrektur erfolgt mit dem Stell-wert, der sich proportional der Neigung (abgeleiteter Koeffizient), die durch dieRegelabweichung entsteht, verhält.
Die Stärke des Vorhaltebetriebs wird durch die Vorhaltezeit ausgewiesen, diesist die Zeit, die der Stellwert bei Vorhaltebetrieb benötigt, um die gleiche Ebenewie der Stellwert der Proportionalregelung in Hinsicht auf die Sprungregelab-weichung zu erreichen, wie es in der folgenden Abbildung angezeigt wird. Jelänger die Vorhaltezeit, desto stärker ist die Korrektur durch den Vorhaltebe-trieb.
Vorhaltebetrieb
PD–Regelung und Vorhaltezeit
Sprungantwort
PD–RegelungP action
Td: Vorhaltezeit
D–Regelung
Rampenförmige ReaktionRegelabweichung
Stellwert
Regelabweichung
Stellwert
PID–VerhaltenDie PID–Regelung verbindet Proportionalregelung (P), Integralbetrieb (I) undVorhaltebetrieb (D). Diese ermöglicht überlegene Regelergebnisse sogar fürRegelobjekte mit Totzeit. Es wendet die Proportionalregelung an, um eine glatteRegelung ohne Regelschwingungen sicherzustellen, den Integralbetrieb, um ir-gendeinen Offset automatisch zu korrigieren und einen Vorhaltebetrieb, um dieStörungsreaktion zu beschleunigen.
Sprungantwort des PID–Regelungsausgangs
Rampenförmige Reaktion der PID–Regelungsausgaben
PID–VerhaltenI–RegelungP–AktionD–Regelung
SprungantwortRegelabweichung
Stellwert
PID–VerhaltenI–Regelung
P–Aktion
D–Regelung
Rampenförmige ReaktionRegelabweichung
Stellwert
7-18AbschnittDatensteuerungsbefehle
408
Regelwirkungsweise Beim Einsatz der PID–Regelung kann eine der beiden der folgenden zwei Re-gelwirkungsweise ausgewählt werden. In jeder Richtung nimmt der Stellwert zu,wenn die Differenz zwischen dem Sollwert und Istwert zunimmt.
• Vorwärtsregelung: Der Stellwert wird vergrößert, wenn der Istwert größer alsder Sollwert ist.
• Rückwärtsregelung: Der Stellwert wird vergrößert, wenn der Istwert kleiner alsder Sollwert ist.
Stellwert
Rückwärtsregelung
NiedrigeTemperatur Soll–
wert
HoheTemperatur
Vorwärtsregelung
100%
0%
Sollwert
100%
0%
Proportional-band
Stellwert
Proportional-band
NiedrigeTemperatur
HoheTemperatur
Die allgemeine Beziehung zwischen PID–Parameter und Regelzustand istnachfolgend dargestellt.
• Ist der Zeitfaktor für das Erreichen des Sollwertes (Nachstellzeit) vernachläs-sigbar, es aber wichtig ist, kein Überschwingen zu verursachen, dann könnenSie das Proportionalband vergrößern.
SV
Mit vergrößertem Proportionalband
• Ist ein Überschwingen kein Problem, soll jedoch die Regelung schnell stabili-siert werden, dann kann das Proportionalband verengt werden. Wird diesesjedoch zu stark verengt, dann können Regelschwingungen auftreten.
Mit verengtem Proportionalband
SV
• Treten große Regelschwingungen auf oder wird die Regelung durch Über–und Unterschwingen beeinträchtigt, greift der Integralanteil zu stark ein. Re-gelschwingungen werden reduziert, wenn die Nachstellzeit oder das Propor-tionalband vergrößert wird.
(Wenn Regelschwingungen auftreten)
Vergößern von I oder P.
SV
Einstellung derPID–Parameter
7-19AbschnittVergleichsbefehle
409
• Treten Regelschwingungen mit kurzer Periode auf, kann trotz schneller Reak-tion des Systems eine zu große Vorhaltezeit vorliegen. Reduzieren Sie in die-sem Fall den Vorhalteanteil.
(Regelschwingungen mit kurzer Periode)
D–Anteil verringern.
SV
Merker ER: Es liegt ein Fehler in der Parametereinstellung vor.
Die Zykluszeit ist mehr als doppelt so lang wie das Abtastintervall, da-her kann PID(––) nicht genau ausgeführt werden. PID(––) wird in die-sem Fall jedoch ausgeführt.
P1 und P1+32 befinden sich nicht im gleichen Bereich oder eine Para-metereinstellung befindet sich nicht innerhalb des spezifizierten Be-reichs.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenbereichs-grenze wurde überschritten).
CY: Auf EIN gesetzt, wenn eine PID–Regelung stattfindet. (Auf AUS ge-setzt, wenn das Abtastintervall noch nicht abgelaufen ist).
7-19 Vergleichsbefehle
7-19-1 COMPARE (Vergleich) – CMP(20)
Cp1: Erstes Vergleichswort
IR, SR, AR, DM, HR, TC, LR, #
Cp2: Zweites Vergleichswort
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol Datenbereiche
CMP (20)
Cp1
Cp2
Beim Vergleichen eines Wertes mit dem Istwert eines Zeitgebers oder Zählersmuss der Wert im BCD–Format vorliegen.
Ist die Ausführungsbedingung FALSCH, wird der Befehl CMP(20) nicht ausge-führt. Ist diese jedoch WAHR, vergleicht CMP(20) Cp1 und Cp2 und überträgtdas Ergebnis auf die GR–, EQ–, und LE–Merker im SR–Bereich.
Werden andere Befehle zwischen CMP(20) und die Programmierbefehle, diedie EQ–, LE–, und GR–Merker auswerten, gesetzt, kann dies den Status dieserMerker verändern. Werten Sie diese Merker aus, bevor der Zustand geändertwird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn Cp1 gleich Cp2 ist.
LE: Auf EIN gesetzt, wenn Cp1 kleiner als Cp2 ist.
GR: Auf EIN gesetzt, wenn Cp1 größer als Cp2 ist.
Einschränkungen
Beschreibung
Vorsichtsmaßnahmen
7-19AbschnittVergleichsbefehle
410
Merker Adresse C1 < C2 C1 = C2 C1 > C2
GR 25505 AUS AUS EIN
EQ 25506 AUS EIN AUS
LE 25507 EIN AUS AUS
Im folgenden Beispiel wird die sofortige Speicherung des Vergleichergebnissesdargestellt. Ist der Inhalt von HR 09 größer als der von DM 0000, wird 20000 aufEIN gesetzt. Sind die beiden Inhalte gleich, wird 20001 auf EIN gesetzt. Ist derInhalt von HR 09 kleiner als der von DM 0000, wird 20002 auf EIN gesetzt. Ineinigen Anwendungen ist nur eine der drei Ausgaben erforderlich, wodurch dieVerwendung von TR 0 unnötig wird. Bei dieser Programmierart wird 20000,20001 und 20002 nur bei Ausführung von CMP(20) geändert.
00000 LD 00000
00001 OUT TR 0
00002 CMP (20)
HR 09
DM 0000
00003 AND 25505
00004 OUT 20000
00005 LD TR 0
00006 AND 25506
00007 OUT 20001
00008 LD TR 0
00009 AND 25507
00010 OUT 20002
Adresse Befehl Operanden Adresse Befehl Operanden
CMP (20)
DM 0000
HR 09
00000
2550520000
2550720002
TR0
25506
20001
Größer als
Gleich
Kleiner als
7-19-2 TABLE COMPARE (Tabellenvergleich) – TCMP(85)
CD: Zu vergleichende Daten
IR, SR, DM, HR, TC, LR, #
TB: Erstes Vergleichswort
IR, SR, DM, HR, TC, LR
Kontaktplansymbol
Datenbereiche
R Ergebniswort
IR, SR, DM, HR, TC, LR
TCMP (85)
CD
TB
R
@TCMP(85)
CD
TB
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl TCMP(85) nicht ausge-führt. Ist diese jedoch WAHR, vergleicht TCMP(85) CD mit dem Inhalt vonTB,TB+1, TB+2, ... und TB+15. Stimmt der Inhalt von CD mit dem Inhalt einer dieserWorte überein, wird das entsprechende Bit in R gesetzt, z.B. wenn CD mit demInhalt von TB übereinstimmt, wird Bit 00 auf EIN gesetzt. Besteht eine Überein-stimmung mit TB+1, wird Bit 01 auf EIN gesetzt, usw. Die restlichen Bits in Rwerden auf AUS gesetzt.
Beispiel: CMP (20)–Ergebnisspeichern
Einschränkung
Beschreibung
7-19AbschnittVergleichsbefehle
411
Merker ER: Die Vergleichstabelle (d.h. TB bis TB+15) überschreitet den Datenbe-reich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Das folgende Beispiel zeigt die durchgeführten Vergleiche und die Ergebnissefür TCMP(85). Ist IR 00000 auf EIN gesetzt, findet je Zyklus ein Vergleich statt.
CD: HR 00 Obere Grenzen R: 216
HR 00 0210 DM 0000 0100 IR 21600 0
DM 0001 0200 IR 21601 0
DM 0002 0210 IR 21602 1
DM 0003 0400 IR 21603 0
DM 0004 0500 IR 21604 0
DM 0005 0600 IR 21605 0
DM 0006 0210 IR 21606 1
DM 0007 0800 IR 21607 0
DM 0008 0900 IR 21608 0
DM 0009 1000 IR 21609 0
DM 0010 0210 IR 21610 1
DM 0011 1200 IR 21611 0
DM 0012 1300 IR 21612 0
DM 0013 1400 IR 21613 0
DM 0014 0210 IR 21614 1
DM 0015 1600 IR 21615 0
TCMP(85)
HR 00
DM 0000
216
00000
Vergleicht die Daten in HR 00mit den angegebenen Berei-chen.
Adresse Befehl Operanden
00000 LD 00000
00001 TCMP (85)
HR 00
DM 0000
216
7-19-3 BLOCK COMPARE (Blockweiser Vergleich) – BCMP(68)
CD: Zu vergleichende Daten
IR, SR, AR, DM, HR, TC, LR, #
CB: Erstes Vergleichs–Blockwort
IR, SR, DM, HR, TC, LR
Kontaktplansymbol
Datenbereiche
R Ergebniswort
IR, SR, AR, DM, HR, TC, LR
BCMP (68)
CD
CB
R
@BCMP(68)
CD
CB
R
Hinweis BCMP(68) ist ein erweiteter Befehl für die SRM1(–V2). Der Funktionscode 68 istwerksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-den.
Einschränkungen Jedes untere Grenzwort im Vergleichsblock muss kleiner oder gleich der oberenGrenze sein.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beispiel
7-19AbschnittVergleichsbefehle
412
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl BCMP(68) nicht ausge-führt. Ist diese jedoch WAHR, vergleicht BCMP(68) CD mit den durch einenBlock, bestehend aus CB, CB+1, CB+2,, ... CB+31, spezifizierten Bereiche. Je-der Bereich wird durch zwei Worte definiert. Das erste Wort spezifiziert den un-teren und das zweite den oberen Grenzwert. Befindet sich CD innerhalb einesdieser Bereiche ( einschließlich der oberen und unteren Grenzwerte), wird dasentsprechende Bit in R gesetzt. Die angestellten Vergleiche und das entspre-chende Bit in R, das für jeden Vergleich gesetzt wird, sind nachstehend darge-stellt. Die restlichen Bits in R werden auf AUS gesetzt.
CB ≤ CD ≤ CB+1 Bit 00CB+2 ≤ CD ≤ CB+3 Bit 01CB+4 ≤ CD ≤ CB+5 Bit 02CB+6 ≤ CD ≤ CB+7 Bit 03CB+8 ≤ CD ≤ CB+9 Bit 04CB+10 ≤ CD ≤ CB+11 Bit 05CB+12 ≤ CD ≤ CB+13 Bit 06CB+14 ≤ CD ≤ CB+15 Bit 07CB+16 ≤ CD ≤ CB+17 Bit 08CB+18 ≤ CD ≤ CB+19 Bit 09CB+20 ≤ CD ≤ CB+21 Bit 10CB+22 ≤ CD ≤ CB+23 Bit 11CB+24 ≤ CD ≤ CB+25 Bit 12CB+26 ≤ CD ≤ CB+27 Bit 13CB+28 ≤ CD ≤ CB+29 Bit 14CB+30 ≤ CD ≤ CB+31 Bit 15
Merker ER: Der Vergleichsblock (d.h. CB bis CB+31) überschreitet den Datenbe-reich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-19AbschnittVergleichsbefehle
413
Beispiel Das folgende Beispiel zeigt die angestellten Vergleiche und die Ergebnisse fürBCMP(68). Ist IR 00000 auf EIN gesetzt, findet je Zyklus ein Vergleich statt.
HR 00 Unteren Grenzen Obere Grenzen R:LR 05
HR 00 0210 DM 0010 0000 DM 0011 0100 LR 0500 0
DM 0012 0101 DM 0013 0200 LR 0501 0
DM 0014 0201 DM 0015 0300 LR 0502 1
DM 0016 0301 DM 0017 0400 LR 0503 0
DM 0018 0401 DM 0019 0500 LR 0504 0
DM 0020 0501 DM 0021 0600 LR 0505 0
DM 0022 0601 DM 0023 0700 LR 0506 0
DM 0024 0701 DM 0025 0800 LR 0507 0
DM 0026 0801 DM 0027 0900 LR 0508 0
DM 0028 0901 DM 0029 1000 LR 0509 0
DM 0030 1001 DM 0031 1100 LR 0510 0
DM 0032 1101 DM 0033 1200 LR 0511 0
DM 0034 1201 DM 0035 1300 LR 0512 0
DM 0036 1301 DM 0037 1400 LR 0513 0
DM 0038 1401 DM 0039 1500 LR 0514 0
DM 0040 1501 DM 0041 1600 LR 0515 0
BCMP(68)
HR 00
DM 0010
LR 05
00000
Vergleicht die Daten in HR00 (die 0210 enthalten), mitden angegebenen Berei-chen.
Adresse Befehl Operanden
00000 LD 00000
00001 BCMP (68)
HR 00
DM 0010
LR 05
7-19-4 DOUBLE COMPARE (Doppeltgenauer Vergleich) – CMPL(60)
Cp2: Erstes Wort des 2. Vergleichswort–Paares
IR, SR, AR, DM, HR, TC, LR
Cp1: Erstes Wort des 1. Vergleichswort–Paares
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol Datenbereiche
CMPL (60)
Cp1
Cp2
––
Hinweis CMPL(60) ist ein erweiteter Befehl für die SRM1(–V2). Der Funktionscode 60 istwerksseitig eingestellt und kann bei Bedarf für die SRM1(–V2) geändert wer-den.
Einschränkungen Cp1 und Cp1 müssen sich im gleichen Datenbereich befinden.
Cp2 und Cp2 müssen sich im gleichen Datenbereich befinden.
Setzen Sie den dritten Operanden auf 000.
Beschreibung Ist die Ausführungsbedingung FALSCH, wird der Befehl CMPL(60) nicht ausge-führt. Ist diese jedoch WAHR, verknüpft CMPL(60) den 4–stelligen Hexadezi-malwert von Cp1+1 mit dem von Cp1 und den von Cp2+1 mit dem von Cp2, umzwei 8–stellige Hexadezimalwerte, Cp+1, Cp1 und Cp2+1, Cp2 zu erstellen. Diezwei 8–stelligen Werte werden dann verglichen und das Ergebnis wird an dieGR–, EQ–, und LE–Merker im SR–Bereich ausgegeben.
Vorsichtsmaßnahmen Werden andere Befehle zwischen CMPL(60) und die Programmierbefehle, diedie EQ–, LE–, und GR–Merker auswerten, gesetzt, kann dies den Status dieserMerker verändern. Werten Sie diese Merker aus, bevor der Zustand geändertwird.
7-19AbschnittVergleichsbefehle
414
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
GR: Auf EIN gesetzt, wenn Cp1+1, Cp1 größer als Cp2+1,Cp2 ist.
EQ: Auf EIN gesetzt, wenn Cp1+1, Cp1 gleich Cp2+1,Cp2 ist.
LE: Auf EIN gesetzt, wenn Cp1+1, Cp1 kleiner als Cp2+1,Cp2 ist.
Im folgenden Beispiel wird die sofortige Speicherung des Vergleichergebnissesdargestellt. Ist der Inhalt von HR 10, HR 09 größer als der von DM 0001, DM0000, wird 20000 auf EIN gesetzt. Sind die beiden Inhalte gleich, wird 20001 aufEIN gesetzt. Ist der Inhalt von HR10, HR09 kleiner als der von DM 0001,DM 0000, wird 20002 auf EIN gesetzt. In einigen Anwendungen ist nur eine derdrei Ausgaben erforderlich, wodurch die Verwendung von TR 0 unnötig wird. Beidieser Programmierart wird 20000, 20001 und 20002 nur bei Ausführung vonCMPL(60) geändert.
CMPL (60)
DM 0000
HR 09
00000
2550520000
2550720002
TR0
25506
20001
Größer als
Gleich
Kleiner als
–––
Adresse Befehl Operanden
00000 LD 00000
00001 OUT TR 0
00002 CMPL (60)
HR 09
DM 0000
00003 AND 25505
00004 OUT 20000
00005 LD TR 0
00006 AND 25506
00007 OUT 20001
00008 LD TR 0
00009 AND 25507
00010 OUT 20002
7-19-5 – AREA RANGE COMPARE (Bereichsvergleich) – ZCP(––)
CD: Zu vergleichende Daten
IR, SR, AR, DM, HR, TC, LR, #
LL : Unterer Grenzbereich
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
UL: Oberer Grenzbereich
IR, SR, AR, DM, HR, TC, LR, #
ZCP(––)
CD
LL
UL
Einschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C/SRM1(–V2) verfügbar.
LL muss kleiner oder gleich UL sein.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ZCP(––) nicht ausge-führt. Ist diese jedoch WAHR, vergleicht ZCP(––) CD mit dem Bereich, derdurch die untere Grenze LL und die obere Grenze UL definiert ist und setzt er-gebnisabhängig die GR–, EQ–, und LE–Merker im SR–Bereich. Der resultie-rende Merkerzustand ist in der nachfolgenden Tabelle dargestellt.
Vergleichsgebnis Merkerzustande g e c sgeb s
GR (SR 25505) EQ (SR 25506) LE (SR 25507)
CD < LL 0 0 1
LL ≤ CD ≤ UL 0 1 0
UL < CD 1 0 0
Beispiel:CMPL(60) –Ergebnissespeichern
Beschreibung
7-19AbschnittVergleichsbefehle
415
Werden andere Befehle zwischen ZCP(––) und die Programmierbefehle, diedie EQ–, LE– und GR–Merker auswerten, gesetzt, kann dies den Zustand die-ser Merker verändern. Werten Sie diese Merker aus, bevor der Zustand geän-dert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
LL ist größer als UL.
EQ: Auf EIN gesetzt, wenn LL ≤ CD ≤ UL.
LE: Auf EIN gesetzt, wenn CD < LL.
GR: Auf EIN gesetzt, wenn CD > UL.
Beispiel Im folgenden Beispiel wird der Inhalt von IR 200 (#6FA4) mit dem Bereich #0010bis #AB1F verglichen. Da #0010 ≤ #6FA4 ≤ #AB1F ist, wird der EQ– Merkerund IR 01001 auf EIN gesetzt.
00000 LD 00000
00001 OUT TR 0
00002 ZCP(––)
200
# 0010
# AB1F
00003 AND 25505
00004 OUT 01000
00005 LD TR 0
00006 AND 25506
00007 OUT 01001
00008 LD TR 0
00009 AND 25507
00010 OUT 01002
ZCP(––)
#0010
200
00000
2550501000
2550701002
TR0
25506
01001
Größer als(über dem Bereich)
Gleich(innerhalb des
Bereichs)
Kleiner als(unter dem
Bereich)
Adresse Befehl Operanden Adresse Befehl Operanden
#AB1F
UL: #AB1FA B 1 F<CD: 200
6 F A 4<LL: #00100 0 1 0
01000: AUS01001: EIN01002: AUS
7-19-6 DOUBLE AREA RANGE COMPARE (Doppelwort–Bereichsvergleich) – ZCPL(––)
CD: Zu vergleichende Daten
IR, SR, AR, DM, HR, LR
LL : Unterer Grenzbereich
IR, SR, AR, DM, HR, LR
Kontaktplansymbol
Datenbereiche
UL: Oberer Grenzbereich
IR, SR, AR, DM, HR, LR
ZCPL(––)
CD
LL
UL
Vorsichtsmaßnahmen
7-20AbschnittKonvertierungsbefehle
416
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
Der 8–stellige Wert in LL+1, LL muss kleiner als oder gleich UL+1, UL sein.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ZCPL(––) nicht ausge-führt. Ist diese jedoch WAHR, vergleicht ZCPL(––) den 8–stelligen Wert in CD,CD+1 mit dem Bereich, der durch eine untere Grenze LL+1, LL und eine obereGrenze UL+1, UL definiert ist und setzt ergebnisabhängig die GR-, EQ- und LE-Merker im SR–Bereich. Der resultierende Merkerzustand ist in der nachfolgen-den Tabelle dargestellt.
Vergleichsgebnis Merkerzustande g e c sgeb s
GR(SR 25505)
EQ(SR 25506)
LE(SR 25507)
CD, CD+1< LL+1, LL 0 0 1
LL+1, LL ≤ CD, CD+1 ≤ UL+1, UL 0 1 0
UL+1, UL < CD, CD+1 1 0 0
Werden andere Befehle zwischen ZCPL(––) und die Programmbefehle, die dieEQ-, LE- und GR-Merker auswerten, gesetzt, kann dies den Zustand dieserMerker verändern. Werten Sie diese Merker aus, bevor der Zustand geändertwird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
LL+1, LL ist größer als UL+1, UL.
EQ: Auf EIN gesetzt, wenn LL+1, LL ≤ CD, CD+1 ≤ UL+1, UL
LE: Auf EIN gesetzt, wenn CD, CD+1 < LL+1, LL.
GR: Auf EIN gesetzt, wenn CD, CD+1 > UL+1, UL.
7-20 Konvertierungsbefehle
7-20-1 BCD–TO–BINARY (BCD–Binär–Konvertierung) – BIN(23)
S: Quellwort (BCD)
IR, SR, AR, DM, HR, TC, LR
R Ergebniswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
BIN (23)
S
R
@BIN(23)
S
R
Einschränkung DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird BIN(23) nicht ausgeführt. Ist diesejedoch WAHR, konvertiert BIN(23) den BCD–Inhalt von S in numerisch gleich-wertige binäre Bits und speichert den binären Wert in R. Nur der Inhalt von Rwird geändert; der Inhalt von S bleibt unverändert.
S
R
BCD–Daten
Binär
Beschreibung
Vorsichtsmaßnahmen
Beschreibung
7-20AbschnittKonvertierungsbefehle
417
Mit dem Befehl BIN(23) werden BCD–Werte in binäre Daten konvertiert, damitdie Anzeigen auf der Programmierkonsole oder jedem anderen Programmier-gerät in hexadezimalem anstatt in dezimalem Format angezeigt werden. DerBefehl kann zur Konvertierung binärer Werte verwendet werden, um binärearithmetische Operationen anstatt arithmetische Operationen im BCD–Codedurchzuführen z.B., wenn BCD– und Binärwerte addiert werden müssen.
Merker ER: Der Inhalt von S liegt nicht im BCD–Format vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
7-20-2 BINARY–TO–BCD (BIN–BCD–Konvertierung) – BCD(24)
S: Quellwort (Binär)
IR, SR, AR, DM, HR, LR
R Ergebniswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
BCD (24)
S
R
@BCD(24)
S
R
Überschreitet der Inhalt von S den Wert 270F, würde das konvertierte Ergebnis9999 überschreiten und BCD(24) wird nicht ausgeführt. In diesem Fall bleibt derInhalt von R unverändert.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
BCD(24) konvertiert den binären (Hexadezimalwert) Inhalt von S in numerischgleichwertige BCD–Bits und speichert diese in R. Nur der Inhalt von R wird ge-ändert; der Inhalt von S bleibt unverändert.
S
RBCD–Daten
Binär
Mit dem Befehl BCD(24) werden binäre Daten in BCD–Werte konvertiert, damitdie Anzeigen auf der Programmierkonsole oder jedem anderen Programmier-gerät in dezimalem anstatt in hexadezimalem Format angezeigt wird. Der Be-fehl kann zur Konvertierung von BCD–Werten verwendet werden, um arithmeti-sche Operationen im BCD–Format anstatt binäre arithmetische Operationendurchzuführen, z.B., wenn BCD– und Binärwerte addiert werden müssen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
Einschränkungen
Beschreibung
7-20AbschnittKonvertierungsbefehle
418
7-20-3 DOUBLE BINARY–TO–DOUBLE BCD (BCD–Doppelwort–zu–BIN–Doppelwort–Konvertierung) – BINL(58)
S: Erstes Quellwort (BCD)
IR, SR, AR, DM, HR, TC, LR
R Erstes Ergebniswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Operanden–Datenbereiche
BINL (58)
S
R
@BINL(58)
S
R
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl BINL(58) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert BINL(58) eine 8–stellige Zahl in S undS+1 in 32–Bit binäre Daten und speichert die konvertierten Daten in R und R+1.
S + 1 S
R + 1 R
BCD–Daten
Binär
Merker ER: Der Inhalt der S– und/oder S+1–Worte liegt nicht im BCD–Format vor.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
7-20-4 DOOUBLE BINARY–TO–DOUBLE BCD (BIN–Doppelwort–zu–BCD–Doppelwort–Konvertierung) – BCDL(59)
S: Erstes Quellwort (binär)
IR, SR, AR, DM, HR, LR
R Erstes Ergebniswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol Datenbereiche
BCDL (59)
S
R
@BCDL(59)
S
R
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
Überschreitet der Inhalt von S den Wert 05F5E0FF, überschreitet das konver-tierte Ergebnis 99999999 und BCDL(59) wird nicht ausgeführt. In diesem Fallbleibt der Inhalt von R und R+1 unverändert.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung
7-20AbschnittKonvertierungsbefehle
419
BCDL(59) konvertiert den 32 Bit umfassenden binären Inhalt von S und S+1 in8–stellige BCD–Daten und speichert die konvertierten Daten in R und R+1.
S + 1 S
R + 1 RBCD–Daten
Binär
Merker ER: Der Inhalt von R und R+1 überschreitet 99999999.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
7-20-5 4–TO–16 DECODER (4–in–16–Dekoder) – MLPX(76)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR
Di: Stellenkennzeichnung
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR, LR
MLPX (76)
S
Di
R
@MLPX(76)
S
Di
R
Die beiden äußerst rechten Stellen von Di müssen jeweils einen Wert zwischen0 und 3 aufweisen.
Alle Ergebnisworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl MLPX(76) nicht ausge-führt. Ist diese jedoch WAHR, werden über MLPX(76) bis zu vier Hexadezimal-stellen (mit jeweils vier Bits) vom Quellwort S in Dezimalwerte von 0 ...15 kon-vertiert. Jeder dieser Dezimalwerte kennzeichnet eine Bitposition. Das Bit, des-sen Nummer mit allen konvertierten Werten übereinstimmt, wird in einem Er-gebniswort auf EIN gesetzt. Wird mehr als eine Stelle spezifiziert, wird jeweilsein Bit der nach R folgenden Worte auf EIN gesetzt. (Sehen Sie nachfolgendesBeispiel).
Folgendes Beispiel zeigt eine 1–stellige Dekodieroperation der ersten Stellevon S, d.h., Di besitzt hier den Wert von 0001.
Quellwort
Erstes Ergebniswort
C
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
Bit C (d.h. Bitnummer 12) auf EIN gesetzt.
Die erste Stelle und die Anzahl der zu konvertierenden Stellen wird Di zugewie-sen. Werden mehr Stellen als in S verbleiben zugewiesen (Zählanfang ist dieerste zugewiesene Stelle), werden die verbleibenden Stellen wieder dem An-
Beschreibung
Einschränkungen
Beschreibung
7-20AbschnittKonvertierungsbefehle
420
fang von S zugewiesen. Das für die Speicherung des konvertierten Ergebnisses(R plus die Anzahl der zu konvertierenden Stellen) erforderliche Endwort musssich im gleichen Datenbereich wie R befinden, d.h., werden 2 Stellen konver-tiert, kann die letzte Wortadresse in einem Datenbereich nicht zugewiesen wer-den. Werden 3 Stellen konvertiert, können die letzten zwei Worte in einem Da-tenbereich nicht zugewiesen werden.
Die Stellen von Di werden wie folgt gesetzt.
Spezifiziert die erste zu konvertierende Stelle (0 bis 3)
Anzahl der zu konvertierenden Stellen (0 bis 3) 0: 1 Stelle1: 2 Stellen2: 3 Stellen3: 4 Stellen
Nicht verwendet (Auf 0 setzen)
Stellen: 3 2 1 0
Einige Beispiele der Di–Werte und die daraus resultierenden Umwandlungen(Stelle–zu–Wort) sind nachfolgend dargestellt.
0
1
2
3
R
R + 1
R
R + 1
R + 2
0
1
2
3
0
1
2
3
0
1
2
3
R
R + 1
R + 2
R + 3
R
R + 1
R + 2
R + 3
S
Di: 0031 Di: 0023
Di: 0030Di: 0010
S
SS
Merker ER: Undefinierte Stellenkennzeichnung oder R plus die Anzahl der Stellenüberschreitet einen Datenbereich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Stellenkennzeichner
7-20AbschnittKonvertierungsbefehle
421
Das folgende Programm konvertiert die Stellen 1 bis 3 von DM 0020 in die Bit-stellungen und setzt die entsprechenden Bits in drei aufeinanderfolgenden Wor-ten, beginnend mit HR 10, auf EIN. Die Stelle 0 wird nicht konvertiert.
00000MLPX (76)
DM 0020
#0021
HR 10
Adresse Befehl Operanden
00000 LD 00000
00001 MLPX (76)
DM 0020
# 0021
HR 10
S: DM 0020 R: HR 10 R+1: HR 11 R+2: HR 12
DM 0020 00 HR 1000 0 HR 1100 0 HR 1200 1
DM 0020 01 HR 1001 0 HR 1101 0 HR 1201 0
DM 0020 02 HR 1002 0 HR 1102 0 HR 1202 0
DM 0020 03 HR 1003 0 HR 1103 0 HR 1203 0
DM 0020 04 1 HR 1004 0 HR 1104 0 HR 1204 0
DM 0020 05 1 HR 1005 0 HR 1105 0 HR 1205 0
DM 0020 06 1 HR 1006 0 HR 1106 1 HR 1206 0
DM 0020 07 1 HR 1007 0 HR 1107 0 HR 1207 0
DM 0020 08 0 HR 1008 0 HR 1108 0 HR 1208 0
DM 0020 09 1 HR 1009 0 HR 1109 0 HR 1209 0
DM 0020 10 1 HR 1010 0 HR 1110 0 HR 1210 0
DM 0020 11 0 HR 1011 0 HR 1111 0 HR 1211 0
DM 0020 12 0 HR 1012 0 HR 1112 0 HR 1212 0
DM 0020 13 0 HR 1013 0 HR 1113 0 HR 1213 0
DM 0020 14 0 HR 1014 0 HR 1114 0 HR 1214 0
DM 0020 15 0 HR 1015 1 HR 1115 0 HR 1215 0
15
6
0
Nichtkonvertiert
7-20-6 16–TO–4 ENCODER (16–in–4–Enkoder) – DMPX(77)
SB: Erstes Quellwort
IR, SR, AR, DM, HR, TC, LR
R: Ergebniswort
IR, SR, AR, DM, HR, LR
Kontaktplansymbol
Datenbereiche
Di: Stellenkennzeichner
IR, SR, AR, DM, HR, TC, LR, #
DMPX (77)
SB
R
Di
@DMPX(77)
SB
R
Di
Die beiden äußersten rechten Stellen von Di müssen jeweils einen Wert zwi-schen 0 und 3 aufweisen.
Alle Quellenworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für SB, R oder Di verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl DMPX(77) nicht ausge-führt. Ist diese jedoch WAHR, bestimmt DMPX(77) die Position des höchstenauf EIN gesetzten Bits in S. Diese Bitnummer wird dann in einen hexadezimalenWert umgewandelt und an eine spezifizierte Stelle des Ergebniswortes R über-tragen. Die Definition dieser spezifizierten Stelle wird über die Stellenkenn-zeichnung Di vorgenommen. Dort wird auch die Anzahl der zu kodierendenStellen festgelegt.
Beispiel
Einschränkungen
Beschreibung
7-20AbschnittKonvertierungsbefehle
422
Folgendes Beispiel zeigt eine 1–stellige Kodieroperation der 1. Stelle von R,d.h., Di besitzt hier den Wert 0001.
Ergebniswort
Erstes Quellwort
C
0 0 0 1 0 0 0 1 0 0 0 1 0 1 1 0
Der hexadezimale Wert C wird übertragenund kennzeichnet die höchste Bit–Position(12), die auf EIN gesetzt ist.
Bis zu vier Stellen von vier aufeinanderfolgenden Quellenworten, beginnend mitSB, können kodiert werden und die Stellen werden, beginnend mit der erstenzugewiesenen Stelle in R, geschrieben. Werden mehr Stellen zugewiesen als inR (Zählanfang ist die zugewiesene erste Stelle) verbleiben, werden die verblei-benden Stellen dem Anfang von R zugewiesen.
Das zu konvertierende Endwort (SB plus die Anzahl der zu konvertierendenStellen), muss sich im gleichen Datenbereich wie SB befinden.
Die Stellen von Di werden wie folgt gesetzt.
Spezifiziert die erste Stelle, in die die konvertierten Da-ten geschrieben werden (0 bis 3).
Anzahl der zu konvertierenden Worte (0 bis 3) 0: 1 Wort1: 2 Worte2: 3 Worte3: 4 Worte
Nicht verwendet
Stellen: 3 2 1 0
Einige Beispiele der Di–Werte und die daraus resultierenden Umwandlungen(Wort–in–Stelle) sind nachfolgend dargestellt.
0
1
2
3
R
Di: 0011
S
S + 1
0
1
2
3
S
S + 1
S + 2
S + 3
Di: 0030
R
S
S + 1
S + 2
S + 3
0
1
2
3
Di: 0032R
Di: 0013
0
1
2
3
S
S + 1
R
Merker ER: Undefinierte Stellenkennzeichnung, oder S + die Anzahl der Stellenüberschreitet einen Datenbereich.
Inhalt eines Quellwortes ist 0.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Stellenkennzeichner
7-20AbschnittKonvertierungsbefehle
423
Ist 00000 auf EIN gesetzt, wird folgender Kodierprozess eingeleitet: IR 200 und201 werden kodiert und in die beiden ersten Stellen von HR 20 übertragen; LR010 und LR 011 in die beiden letzten Stellen von HR 20. Obwohl der Status jedesQuellenwort–Bits nicht angezeigt wird, wird vorausgesetzt, dass das darge-stellte Bit mit dem Status 1 (EIN), das höchste auf EIN gesetzte Bit im Wort ist.
00000DMPX (77)
200
HR 10
#0010
LR 10
HR 10
#0012
IR 200
01000
:
01011 1
01012 0
: : :
01015 0
LR 10
LR 1000
LR 1001 1
LR 1002 0
: : :
: : :
LR 1015 0
Stelle 0
IR 201
01100
:
01109 1
01110 0
: : :
01115 0
Stelle 1
Stelle 2
Stelle 3
B
9
1
8 LR 11
LR 1100
:
LR 1108 1
LR 1109 0
: : :
LR 1115 0
HR 10
DMPX (77)
Adresse Befehl Operanden
00000 LD 00000
00001 DMPX (77)
200
HR 10
# 0010
00002 DMPX (77)
LR 10
HR 10
# 0012
7-20-7 7–SEGMENT DECODER (Dekodierung für 7–Segment–Anzeige) –SDEC(78)
S: Quellwort (Binär)
IR, SR, AR, DM, HR, TC, LR
Di: Stellenkennzeichner
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
D: Erstes Zielwort
IR, SR, AR, DM, HR, LR
SDEC (78)
S
Di
D
@SDEC(78)
S
Di
D
Di muss sich innerhalb der nachstehend aufgeführten Werte befinden.
Alle Zielworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SDEC(78) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert SDEC(78) die zugewiesene Stelle(n)von S in den gleichwertigen 8 Bit–Wert zur Ansteuerung einer 7– Segmentan-zeige und speichert ihn in dem/den mit D beginnenden Zielwort(en).
Beispiel
Einschränkungen
Beschreibung
7-20AbschnittKonvertierungsbefehle
424
Jede oder alle der in S vorhandenen Stellen werden, ausgehend von der zuge-wiesenen ersten Stelle, konvertiert. Die Zuweisung der ersten Stelle, die Anzahlder zu konvertierenden Stellen und die Hälfte von D, in der der erste 7–Seg-ment–Displaycode (die äußerst rechten oder linken 8 Bits) gespeichert wird, er-folgt in Di. Werden mehrere Stellen zugewiesen, erfolgt die Reihenfolge ausge-hend von der zugewiesenen Hälfte von D, wobei jede zwei Stellen benötigt.Werden mehr Stellen zugewiesen als in S (Zählfolge von der zugewiesenen er-sten Stellen) verbleiben, werden weitere Stellen, beginnend bei S, verwendet.
Die Stellen von Di werden wie folgt gesetzt.
Spezifiziert die erste zu konvertierende Stelle von S (0 bis 3).
Anzahl der zu konvertierenden Stellen(0 bis 3)0: 1 Stelle1: 2 Stellen2: 3 Stellen3: 4 Stellen
Erste zu verwendende Hälfte von D0: Äußerst rechte 8 Bits (1. Hälfte)1: Äußerst linke 8 Bits (2. Hälfte)
Nicht verwendet; auf 0 gesetzt.
Stellen: 3 2 1 0
Einige Beispiele der Di–Werte und die daraus resultierende Umwandlung von4 Bit–Binärwerten in eine 7–Segment–Anzeige sind nachstehend dargestellt.
0
1
2
3
S–Stellen
Di: 0011
D
0
1
2
3
Di: 0030
S–Stellen
0
1
2
3
Di: 0130S–Stellen
Di: 0112
0
1
2
3
S–Stellen
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D+2
1. Hälfte
2. Hälfte
Stellenkennzeichner
7-20AbschnittKonvertierungsbefehle
425
Das folgende Beispiel zeigt die erforderlichen Daten zur Anzeige einer 8. DieKleinbuchstaben geben an, welche Bits den Segmenten der 7–Segment–An-zeige entsprechen. Die nachstehende Tabelle zeigt die ursprünglichen Datenund den konvertierten Code aller Hexadezimalziffern.
20
21
22
23
20
21
22
23
20
21
22
23
20
21
22
23
0
1
0
0
0
0
0
1
0
1
1
1
1
0
1
1
0
1
2
3
1
1
1
1
1
1
1
0
DM 0010
gf b
c
d
e
aIR 200
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
x100
x101
x102
x103
0: Eine Ziffer zudekodieren
0 oder 1: 0 Bits 00 bis 071 Bits 08 bis 15.
Nicht verwendet
a
b
c
d
e
f
g
Bit 07
8
1: Beginn bei 2. Stelle
LR 07
Bit 00
00000@ SDEC(78)
DM 0010
LR 07
200
Ursprungsdaten Konvertierter Code (Segmente) AnzeigeStelle Bits – g f e d c b a
0 0 0 0 0 0 0 1 1 1 1 1 1
1 0 0 0 1 0 0 0 0 0 1 1 0
2 0 0 1 0 0 1 0 1 1 0 1 1
3 0 0 1 1 0 1 0 0 1 1 1 1
4 0 1 0 0 0 1 1 0 0 1 1 0
5 0 1 0 1 0 1 1 0 1 1 0 1
6 0 1 1 0 0 1 1 1 1 1 0 1
7 0 1 1 1 0 0 1 0 0 1 1 1
8 1 0 0 0 0 1 1 1 1 1 1 1
9 1 0 0 1 0 1 1 0 1 1 1 1
A 1 0 1 0 0 1 1 1 0 1 1 1
B 1 0 1 1 0 1 1 1 1 1 0 0
C 1 1 0 0 0 0 1 1 1 0 0 1
Z 1 1 0 1 0 1 0 1 1 1 1 0
E 1 1 1 0 0 1 1 1 1 0 0 1
F 1 1 1 1 0 1 1 1 0 0 0 1
Merker ER: Falsche Stellenkennzeichnung oder Zieldatenbereich überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beispiel
7-20AbschnittKonvertierungsbefehle
426
7-20-8 ASCII CONVERT (ASCII–Konvertierung) – ASC(86)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR
Di: Stellenkennzeichner
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Datenbereiche
D: Erstes Zielwort
IR, SR, AR, DM, HR, LR
ASC (86)
S
Di
D
@ASC(86)
S
Di
D
Di muss sich innerhalb der nachstehend aufgeführten Werte befinden.
Alle Zielworte müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ASC(86) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert ASC(86) die zugewiesene Stelle(n )von S in den gleichwertigen 8 Bit–ASCII–Code und speichert diesen in dem/denmit D beginnenden Zielwort(en).
Einige oder alle der in S vorhandenen Stellen werden, ausgehend von der zuge-wiesenen ersten Stelle, konvertiert. Die Zuweisung der ersten Stelle, die Anzahlder zu konvertierenden Stellen und die Hälfte von D, in der der erste ASCII–Code (die äußerst rechten oder linken 8 Bits) gespeichert wird, erfolgt in Di. Wer-den mehrere Stellen zugewiesen, erfolgt die Reihenfolge ausgehend von derzugewiesenen Hälfte von D, wobei jede zwei Stellen benötigt. Werden mehrStellen zugewiesen als in S (Zählfolge von der zugewiesenen ersten Stelle) ver-bleiben, werden weitere Stellen, beginnend bei S, verwendet.
Hinweis Eine Tabelle der ASCII–Zeichen finden Sie im Anhang G.
Die Stellen von Di werden wie folgt gesetzt.
Spezifiziert die erste zu konvertierende Stelle (0 bis 3).
Anzahl der zu konvertierenden Stellen (0 bis 3) 0: 1 Stelle1: 2 Stellen2: 3 Stellen3: 4 Stellen
Erste zu verwendende Hälfte von D0: Äußerst rechte 8 Bits (1. Hälfte)1: Äußerst linke 8 Bits (2. Hälfte)
Parität 0: keine1: gerade2: ungerade
Stellen: 3 2 1 0
Einschränkungen
Beschreibung
Stellenkennzeichner
7-20AbschnittKonvertierungsbefehle
427
Einige Beispiel der Di Werte und die daraus resultierende Umwandlung von4 Bit–Binärwerte in 8 Bit–ASCII–Werte sind nachstehend dargestellt.
0
1
2
3
S
Di: 0011
D
0
1
2
3
Di: 0030
S:
0
1
2
3
Di: 0130S
Di: 0112
0
1
2
3
S
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D
1. Hälfte
2. Hälfte
D+1
1. Hälfte
2. Hälfte
D+2
1. Hälfte
2. Hälfte
Das äußerst linke Bit jedes ASCII–Zeichens (2–stellig) kann automatisch aufgerade oder ungerade Parität gesetzt werden. Wird keine Parität zugewiesen,ist das äußerst linke Bit immer 0.
Wird eine gerade Parität zugewiesen, wird das äußerst linke Bit so gesetzt, daßdie Gesamtzahl der auf EIN gesetzten Bits gerade ist, d.h., ist eine gerade Pari-tät eingestellt, wird aus ASCII “31” (00110001) “B1” (10110001: das Paritätsbitwird auf EIN gesetzt, um eine gerade Anzahl von auf EIN gesetzte Bits zu erstel-len); ASCII “36” (00110110) wird “36” (00110110: das Paritätsbit wird auf AUSgesetzt, weil die Anzahl der auf EIN gesetzen Bits bereits gerade ist). Der Zu-stand des Paritätsbits wirkt sich nicht auf die Bedeutung des ASCII–Codes aus.
Wird eine ungerade Parität zugewiesen, wird das äußerste linke Bit jedesASCII–Zeichens so gesetzt, daß eine ungerade Zahl von auf EIN gesetzten Bitsanliegt.
Merker ER: Falsche Stellenkennzeichnung oder Ziel–Datenbereich überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Parität
7-20AbschnittKonvertierungsbefehle
428
7-20-9 ASCII–TO–HEXADECIMAL (in Hexadezimal–Wort konvertieren) –HEX(––)
S: Erstes Quellwort
IR, SR, AR, DM, HR, TC, LR, #
Di: Stellenkennzeichner
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Operanden–Datenbereiche
D: Zielwort
IR, SR, AR, DM, HR, LR
HEX(––)
S
Di
D
@HEX(––)
S
Di
D
Einschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C/SRM1(–V2) verfügbar.
Di muss sich innerhalb der nachstehend aufgeführten Werte befinden.
Alle Quellenworte müssen sich im gleichen Datenbereich befinden.
Bytes in Quellworten müssen das ASCII–Code–Äquivalent der Hexadezimal-werte enthalten, d.h., 30 bis 39 (0 bis 9) oder 41 bis 46 (A bis F).
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl HEX(––) nicht ausge-führt. Ist diese jedoch WAHR, konvertiert HEX(––) das/die zugewiesene(n)Byte(s) des ASCII–Codes von dem Quellwort(e) in das hexadezimale Äquiva-lent und speichert es in D.
Es können bis zu 4 ASCII–Codes, beginnend mit dem ersten, S zugewiesenemByte konvertiert werden. Die konvertierten Hexadezimalwerte werden dann inReihenfolge der zugewiesenen Stelle in D abgelegt. Das erste Byte (dieäußersten rechten oder linken 8 Bits), die Anzahl der zu konvertierenden Bytesund die Stelle von D, die den ersten hexadezimalen Wert empfängt, werden in Dizugewiesen. Werden mehrere Bytes zugewiesen, so werden diese, beginnendmit der zugewiesenen Hälfte von S und falls erforderlich, fortlaufend mit S+1 undS+2 konvertiert.
Werden mehr Stellen zugewiesen als in D verbleiben (beginnend bei der zuge-wiesenen ersten Stelle), werden weitere Stellen beginnend bei D verwendet.Stellen in D, auf die keine konvertierten Daten übertragen werden, bleiben un-verändert.
Die Stellen von Di werden wie folgt gesetzt.
Spezifiziert die erste zu verwendende Stelle von D (0 bis 3).
Anzahl der zu konvertierenden Bytes sind (0 bis 3)0: 1 Byte (2–stelliger ASCII–Code)1: 2 Bytes2: 3 Bytes3: 4 Bytes
Erstes, zu verwendendes Byte von S.0: Äußerst rechte 8 Bits (erstes Byte)1: Äußerst linke 8 Bits (zweites Byte)
Parität 0: keine1: gerade2: ungerade
Stellen: 3 2 1 0
Beschreibung
Stellenkennzeichner
7-20AbschnittKonvertierungsbefehle
429
Einige Beispiele von Di–Werten und deren Konvertierung von 8 Bit–ASCII– in4 Bit Hexadezimalwerte sind nachfolgend dargestellt.
0
1
2
3
D
Di: 0011
S
Di: 0030
Di: 0133Di: 0023
1. Byte
2. Byte
S
1, Byte
2. Byte
S+1
1. Byte
2. Byte
0
1
2
3
D
S
1. Byte
2. Byte
S+1
1. Byte
2. Byte
0
1
2
3
D S
1. Byte
2. Byte
S+1
1. Byte
2. Byte
0
1
2
3
D
S+2
1. Byte
2. Byte
ASCII–Codetabelle Die folgende Tabelle zeigt die ASCII–Codes vor der Konvertierung und die He-xadezimalwerte nach der Konvertierung. Eine Tabelle der ASCII–Zeichen fin-den Sie im Anhang G.
Ursprüngliche Daten Konvertierte Daten
ASCII–Code Bitstatus (siehe Hinweis.) Ziffer Bits
30 * 0 1 1 0 0 0 0 0 0 0 0 0
31 * 0 1 1 0 0 0 1 1 0 0 0 1
32 * 0 1 1 0 0 1 0 2 0 0 1 0
33 * 0 1 1 0 0 1 1 3 0 0 1 1
34 * 0 1 1 0 1 0 0 4 0 1 0 0
35 * 0 1 1 0 1 0 1 5 0 1 0 1
36 * 0 1 1 0 1 1 0 6 0 1 1 0
37 * 0 1 1 0 1 1 1 7 0 1 1 1
38 * 0 1 1 1 0 0 0 8 1 0 0 0
39 * 0 1 1 1 0 0 1 9 1 0 0 1
41 * 1 0 0 0 0 0 1 A 1 0 1 0
42 * 1 0 0 0 0 1 0 B 1 0 1 1
43 * 1 0 0 0 0 1 1 C 1 1 0 0
44 * 1 0 0 0 1 0 0 D 1 1 0 1
45 * 1 0 0 0 1 0 1 E 1 1 1 0
46 * 1 0 0 0 1 1 0 F 1 1 1 1
Hinweis Das äußerst linke Bit jedes ASCII–Codes wird auf Parität eingestellt.
Das äußerst linke Bit jedes ASCII–Zeichens (2 Stellen) wird automatisch auf ge-rade oder ungerade Parität gesetzt.
Ohne Parität muss das äußerst linke Bit immer Null sein. Bei ungerader odergerader Parität muss das äußerst linke Bit jedes ASCII–Zeichens so gesetztwerden, daß eine ungerade oder gerade Anzahl von auf EIN gesetzten Bits be-steht.
Falls die Parität des ASCII–Codes in S nicht mit der in Di spezifizierten Paritätübereinstimmt, wird der ER–Merker (SR 25503 ) auf EIN gesetzt und der Befehlnicht ausgeführt.
Merker ER: Falsche Stellenkennzeichnung oder Zieldatenbereich überschritten.
Parität
7-20AbschnittKonvertierungsbefehle
430
Die Quellworte enthalten keine ASCII–Daten, die in Hexadezimalwertekonvertiert werden können, d.h.Werte, die zwischen 0 und 9 oder A bisF liegen.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beispiel Im folgenden Beispiel wird das zweite Byte von LR 10 und das erste Byte von LR11 in hexadezimale Werte konvertiert und diese Werte werden in das erste undzweite Byte von IR 200 geschrieben.
@HEX(––)
HR 10
LR 10
00000
200
Adresse Befehl Operanden
00000 LD 00000
00001 @HEX(––)
LR 10
HR 10
200
3 1 3 0LR 104 2 3 2
Konvertierung zuhexadezimal
LR 11
0 0 2 1200
3 5 3 4LR 12
0 1 1 0HR 10
7-20-10 HOURS–TO–SECONDS (Stunden–in–Sekunden) – SEC(––)
S: Anfangs–Quellwort (BCD)
IR, SR, AR, DM, HR, TC, LR
R Anfangs–Ergebniswort (BCD)
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol Datenbereiche
000: Keine Funktion
000
SEC(––)
S
R
000
@SEC(––)
S
R
000
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
S und S+1 müssen sich innerhalb des gleichen Datenbereichs befinden. R undR+1 müssen sich innerhalb des gleichen Datenbereichs befinden. S und S+1müssen im BCD–Format vorliegen und das Stunden/Minuten/Sekunden–For-mat muss eingehalten werden.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung Der Befehl SEC(––) wird zur Konvertierung einer Zeitangabe in Stunden/Minu-ten/Sekunden in eine reine Sekundenangabe verwendet.
Bei den Quelldaten sind die Sekunden in den Bits 00 bis 07 und die Minuten inden Bits 08 bis 15 des Wortes S spezifiziert. Die Stunden werden in S+1 spezifi-ziert. Das Maximum liegt daher bei 9999 Stunden, 59 Minuten und 59 Sekun-den.
Das Ergebnis wird an R und R+1 ausgegeben. Der Maximalwert liegt bei35.999.999 Sekunden.
Merker ER: S und S+1 oder R und R+1 befinden sich nicht im gleichen Datenbe-reich.
7-20AbschnittKonvertierungsbefehle
431
S und/oder S+1 liegen nicht im BCD–Format vor.
Anzahl der Sekunden und/oder Minuten überschreitet 59.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
Beispiel Ist 00000 auf AUS (d.h. die Ausführungsbedingung ist EIN), konvertiert der fol-gende Befehl den Stunden–, Minuten– und Sekunden–Wert von HR 12 und HR13 in einen Sekunden–Wert und speichert das Ergebnis in DM 0100 und DM0101.
SEC(––)
HR 12
DM 0100
00000
HR 12 3 2 0 7HR 13 2 8 1 5
DM 0100 5 9 2 7DM 0101 1 0 1 3
2.815 Std., 32 Min.,07 Sek.
10.135.927 s
Adresse Befehl Operanden
00000 LD NOT 00000
00001 SEC(––)
HR 12
DM 0100
000
7-20-11 SECONDS–TO–HOURS (Sekunden–in–Stunden) – HMS(––)
S: Anfangs–Quellwort (BCD)
IR, SR, AR, DM, HR, TC, LR
R Anfangs–Ergebniswort (BCD)
IR, SR, AR, DM, HR, TC, LR
Kontaktplansymbol Datenbereiche
000: Keine Funktion
000
HMS(––)
S
R
000
@HMS(––)
S
R
000
Einschränkungen Dieser Befehl ist nur für die CPM2A/CPM2C verfügbar.
S und S+1 müssen sich innerhalb des gleichen Datenbereichs befinden. R undR+1 müssen sich innerhalb des gleichen Datenbereichs befinden. S und S+1müssen im BCD–Format vorliegen und zwischen 0 und 35.999.999 Sekundenliegen.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschreibung HMS(––) wird zur Konvertierung einer Zeitangabe in Sekunden in eine Zeitan-gabe in Stunden/Minuten/Sekunden verwendet.
Die Anzahl der in S und S+1 spezifizierten Sekunden wird in Stunden/Minuten/Sekunden konvertiert und in R und R+1 gespeichert.
Das Ergebnis für die Sekunden wird in den Bits 00 bis 07 des Wortes R gespei-chert und das für die Minuten in den Bits 08 bis 15. Die Stunden werden in R+1gespeichert. Das Maximum liegt bei 9999 Stunden, 59 Minuten und 59 Sekun-den.
Merker ER: S und S+1 oder R und R+1 befinden sich nicht im gleichen Datenbe-reich.
S und/oder S+1 liegen nicht im BCD–Format vor oder die Anzahl derSekunden überschreitet 36.000.000 Sekunden.
7-20AbschnittKonvertierungsbefehle
432
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
Beispiel Ist 00000 auf AUS gesetzt (d.h. die Ausführungsbedingung ist EIN), konvertiertder folgende Befehl den Sekunden–Wert von HR 12 und HR 13 in ein Stunden–,Minuten– und Sekunden–Wert und speichert das Ergebnis in DM 0100 und DM0101.
HMS(––)
HR 12
DM 0100
00000
HR 12 5 9 2 7HR 13 1 0 1 3
DM 0100 3 2 0 7DM 0101 2 8 1 5
10.135.927 s
2.815 Std., 32 Min., 07 Sek.
Adresse Befehl Operanden
00000 LD NOT 00000
00001 HMS(––)
HR 12
DM 0100
000
7-20-12 2’S COMPLEMENT (2er–Komplement) – NEG(––)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol Datenbereiche
R Ergebniswort
IR, SR, AR, DM, HR, LR
NEG(––)
S
R
000
@NEG(––)
S
R
000000
Nicht verwendet Auf 000 setzen.
Einschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C/SRM1(–V2) verfügbar.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Erstellt das Zweierkomplement des vierstelligen Hexadezimalwertes des Quell-wortes (S) und speichert das Ergebnis in dem Ergebniswort (R). Diese Funktionist ähnlich der Subtraktion von S von 0000 und dem Speichern des Ergebnissesin R. Der Absolutwert der Binärdaten mit negativem Vorzeichen wird berechnet.
Ist der Inhalt von S auf 0000 gesetzt, wird nach der Ausführung der Inhalt von Rebenfalls auf 0000 und EQ (SR 25506) auf EIN gesetzt.
Entspricht der Inhalt von S = 8000, wird nach der Ausführung der Inhalt von Rebenfalls auf 8000 und UF (SR 25405) auf EIN gesetzt.
Hinweis Sehen Sie Abschnitt 2-16 Berechnung mit vorzeichenbehaftete Binärwert–Da-ten für weitere Einzelheiten.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn der Inhalt von R nach der Ausführung Null ist;andernfalls auf AUS gesetzt.
UF: Auf EIN gesetzt, wenn der Inhalt von S = 8000 ist; andernfalls auf AUSgesetzt.
N: EIN, wenn Bit 15 von R auf EIN ist; sonst AUS.
Beschreibung
7-20AbschnittKonvertierungsbefehle
433
Das folgende Beispiel zeigt die Anwendung von NEG(––), um das Zweierkom-plement des Inhaltes von DM 0005 zu bilden und das Ergebnis an IR 15 auszu-geben.
00000 LD 00100
00001 NEG(––)
DM 0005
15
000
NEG(––)
DM 0005
15
000
00100Adresse Befehl Operanden
#0000
#001F
#FFE1
–Ausgabe an IR 15.
Inhalt von DM 0005.
Beispiel
7-21AbschnittBCD–Rechenbefehle
434
7-21 BCD–Rechenbefehle
7-21-1 SET CARRY (Übertragsmerker setzen) – STC(40)
Kontaktplan–Symbol
STC(40) @STC(40)
Ist die Ausführungsbedingung FALSCH, wird CTBL(40) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, schaltet STC(40) CY ein (SR 25504).
Hinweis Die sich auf CY auswirkenden Befehle finden Sie in einer Tabelle in Anhang BFehler– und Arithmetische Merkeroperationen.
7-21-2 CLEAR CARRY (Übertragsmerker rücksetzen) – CLC(41)
Kontaktplan–Symbol
CLC(41) @CLC(41)
Ist die Ausführungsbedingung FALSCH, wird CLC(41) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, schaltet STC(41) CY aus (SR 25504).
Der Befehl CLEAR CARRY wird zum Rücksetzen (auf AUS) von CY (SR 25504)auf 0 verwendet.
Hinweis Die sich auf CY auswirkenden Befehle finden Sie in einer Tabelle in Anhang BFehler– und Arithmetische Merkeroperationen.
7-21-3 BCD ADDITION (BCD–Addition) – ADD(30)
Au : 1. Summand (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Ad : 2. Summand (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
ADD (30)
Au
Ad
R
@ADD(30)
Au
Ad
R
Beschränkungen DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ADD(30) nicht ausge-führt. Ist diese jedoch WAHR, addiert ADD( 30) den Inhalt von Au, Ad und CYund speichert das Ergebnis in R. CY wird gesetzt, wenn das Ergebnis 9999überschreitet.
Au + Ad + CY CY R
Merker ER: Au bzw. Ad ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis einen Übertrag aufweist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Erläuterungen
7-21AbschnittBCD–Rechenbefehle
435
Ist 00002 auf EIN gesetzt, löscht das im nachstehenden Diagramm dargestelleNetzwerk CY mit dem Befehl CLC(41). Der Inhalt von IR 200 wird zu der Kon-stanten (6103) addiert und das Ergebnis in DM 0100 gespeichert. Abhängigvom Zustand von CY (25504) werden dann alle Nullen oder 0001 nach DM 0101übertragen. Status von CY (25504). Dadurch wird sichergestellt, dass jederÜbertrag der letzten Stelle in R+1 erhalten bleibt und das Gesamtergebnis spä-ter als 8–stellige Daten verwendet werden können.
TR 0
MOV (21)
#0001
DM 0101
00002CLC(41)
ADD (30)
200
#6103
DM 0100
MOV (21)
#0000
DM 0101
25504
25504
Adresse Befehl Operanden
00000 LD 00002
00001 OUT TR 0
00002 CLC (41)
00003 ADD(30)
200
# 6103
DM 0100
00004 AND 25504
00005 MOV (21)
# 0001
DM 0101
00006 LD TR 0
00007 AND NOT 25504
00008 MOV (21)
# 0000
DM 0101
Obwohl die 8–stellige BCD–Addition mit zwei ADD(30)–Befehlen durchgeführtwerden kann, dient der Befehl ADDL(54) speziell diesem Zweck.
7-21-4 BCD SUBTRACT (BCD–Subtraktion) – SUB(31)
Mi: Minuend (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Su: Subtrahend (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
SUB(31)
Mi
Su
R
@SUB(31)
Mi
Su
R
Beschränkungen DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SUB(31) nicht ausge-führt. Ist diese jedoch WAHR, subtrahiert SUB(31) den Inhalt von Su und CY vonMi und speichert das Ergebnis in R. Ist das Ergebnis negativ, wird CY gesetztund das Zehner–Komplement des Ergebnisses in R abgelegt. Um das Zehner–Komplement in ein echtes Ergebnis zu konvertieren, subtrahieren Sie den Inhaltvon R von Null (sehen Sie dazu das folgende Beispiel).
Mi – Su – CY CY R
Merker ER: Mi bzw. Su ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis negativ ist, d.h., wenn Mi kleiner istals Su + CY.
Beispiel
Erläuterungen
!
7-21AbschnittBCD–Rechenbefehle
436
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Vorsicht Vor der Ausführung des SUB(31)–Befehls muss in jedem Fall der Übertrags-merker mit dem CLC(41)–Befehl gelöscht werden, falls der vorherige Zustandnicht benötigt wird. Überprüfen Sie den Zustand von CY nach einer Subtraktionmit SUB(31). Wird CY infolge der Ausführung von SUB(31) (d.h. wenn das Er-gebnis negativ ist) auf EIN gesetzt, wird das Ergebnis als Zehner–Komplementausgegeben. Um das Ausgabeergebnis in den echten Wert zu konvertieren,subtrahieren Sie den Wert in R von 0.
Ist 00002 auf EIN gesetzt, wird im folgenden Netzwerk CY gelöscht, der Inhaltvon DM 0100 und CY vom Inhalt von 201 subtrahiert und das Ergebnis in HR 10abgelegt.
Wird CY durch SUB(31) gesetzt, wird das Ergebnis in HR10 von Null subtrahiert(um ein genaues Ergebnis zu erhalten, wird CLC(41) wieder benötigt), das Er-gebnis wieder in HR10 abgelegt und HR1100 wird zur Anzeige eines negativenErgebnisses auf EIN gesetzt.
Wird CY nicht durch SUB(31) gesetzt, ist das Ergebnis positiv, die zweite Sub-traktion wird nicht durchgeführt und HR1100 nicht auf EIN gesetzt. HR1100 wirdals Selbsthaltung programmiert, so daß eine Zustandsänderung von CY ihn beieinem erneuten Programmdurchlauf nicht auf AUS setzt.
In diesem Beispiel wird der Befehl SUB(31) mit flankengesteuerter Ausführungverwendet, somit wird die Subtraktion nur einmal ausgeführt, wenn 00002 aufEIN gesetzt wird. Soll eine weitere Subtraktion durchgeführt werden, muss00002 für mindestens einen Zyklus (Rücksetzung von HR 1100) auf AUS unddann wieder auf EIN gesetzt werden.
CLC(41)
@SUB(31)
201
DM 0100
HR 10
CLC(41)
@SUB(31)
#0000
HR 10
HR 10
TR 0
25504HR 1100
00002
25504
HR 1100
ErsteSubtrak-tion
ZweiteSubtrak-tion
Auf EIN gesetzt, um einnegatives Ergebnis anzu-zeigen
Beispiel
7-21AbschnittBCD–Rechenbefehle
437
00000 LD 00002
00001 OUT TR 0
00002 CLC (41)
00003 @SUB(31)
201
DM 0100
HR 10
00004 AND 25504
00005 CLC (41)
00006 @SUB(31)
# 0000
HR 10
HR 10
00007 LD TR 0
00008 LD 25504
00009 OR HR 1100
00010 AND LD ---
00011 OUT HR 1100
Adresse Befehl Operanden
Die erste und zweite Subtraktion dieses Netzwerks sind unter Verwendung vonBeispieldaten für 201 und DM 0100 dargestellt.
Hinweis Bei der eigentlichen SUB(31)–Operation wird Su und CY von 10000 + Mi subtra-hiert. Für positive Ergebnisse wird die äußerst linke Stelle abgeschnitten. Fürnegative Ergebnisse wird das Zehner–Komplement erhalten. Das Verfahren zurFestlegung des richtigen Ergebnisses ist nachstehend beschrieben.
Erste SubtraktionIR 201 1029DM 0100 – 3452CY – 0
HR 10 7577 (1029 + (10000 – 3452))CY 1 (negatives Ergebnis)
Zweite Subtraktion0000
HR 10 –7577CY –0
HR 10 2423 (0000 + (10000 – 7577))CY 1 (negatives Ergebnis)
Im obigen Fall setzt das Programm HR 1100 auf EIN und zeigt damit einen nega-tiven Wert in HR 10 an.
7-21-5 BCD MULTIPY (BCD–Multiplikation) – MUL(32)
Md: Multiplikand (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Mr: Multiplikator (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR LR
MUL (32)
MD
Mr
R
@MUL(32)
MD
Mr
R
Beschränkungen DM 6144 bis DM 6655 können nicht für R verwendet werden.
7-21AbschnittBCD–Rechenbefehle
438
Ist die Ausführungsbedingung FALSCH, wird der Befehl MUL(32) nicht ausge-führt. Ist diese jedoch WAHR, multipliziert MUL(32) Md mit dem Inhalt von Mrund legt das Ergebnis in R und R+1 ab.
MD
Mr
R +1 R
X
Ist IR 00000 im folgenden Programm auf EIN gesetzt, wird der Inhalt von IR 013 mit DM 0005 multipliziert und das Ergebnis in HR 07 und HR 08 abgelegt.Beispieldaten und Berechnungen werden nach dem Netzwerk dargestellt.
MUL (32)
013
DM 0005
HR 07
00000
R+1: HR 08 R: HR 070 0 0 8 3 9 0 0
Md: IR 0133 3 5 6
Mr: DM 00050 0 2 5
X
Adresse Befehl Operanden
00000 LD 00000
00001 MUL (32)
013
DM 0005
HR 07
Merker ER: Md bzw. Mr ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis einen Übertrag aufweist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-21-6 BCD DIVIDE (BCD–Division) – DIV(33)
Dd: Dividend (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplansymbol
Dr: Divisor (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Datenbereiche
DIV(33)
Dd
Dr
R
R: Erstes Ergebniswort (BCD)
IR, SR, AR, DM, HR, LR
R und R+1 müssen sich im gleichen Datenbereich befinden. DM 6144 bis DM6655 können nicht für R verwendet werden.
Erläuterungen
Beispiel
Beschränkungen
7-21AbschnittBCD–Rechenbefehle
439
Ist die Ausführungsbedingung FALSCH, wird der Befehl DIV(33) nicht ausge-führt und das Programm führt den nächsten Befehl aus. Ist diese jedoch WAHR,wird Dd durch Dr dividiert und das Ergebnis in R und R + 1 abgelegt: der Quotientin R und der Rest in R + 1.
R+1 R
DdDr
QuotientRest
Merker ER: Dd oder Dr ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Ist IR 00000 im folgenden Netzwerk auf EIN gesetzt, wird der Inhalt von IR 216durch den Inhalt von HR 09 dividiert und das Ergebnis in DM 0017 und DM 0018abgelegt. Beispieldaten und Berechnungen werden nach dem Programm dar-gestellt.
DIV(33)
216
HR 09
DM 0017
00000
R: DM 0017 R + 1: DM 00181 1 5 0 0 0 0 2
Dd: IR 2163 4 5 2
Quotient Rest
Dd: HR 090 0 0 3
Adresse Befehl Operanden
00000 LD 00000
00001 DIV(33)
216
HR 09
DM 0017
7-21-7 DOUBLE BCD ADD (BCD–Doppelwort–Addition) – ADDL(54)
Au : 1. Summand (BCD)
IR, SR, AR, DM, HR, TC, LR
Ad : 2. Summand (BCD)
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR, LR
ADDL(54)
Au
Ad
R
@ADDL(54)
Au
Ad
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Erläuterungen
Beispiel
Beschränkungen
7-21AbschnittBCD–Rechenbefehle
440
Ist die Ausführungsbedingung FALSCH, wird der Befehl ADDL(54) nicht ausge-führt. Ist diese jedoch WAHR, addiert ADDL(54) den Inhalt von CY zum 8–stel-ligen Wert in Au und Au+1 und zum 8–stelligen Wert in Ad und Ad+1 und legt dasErgebnis in R und R+1 ab. CY wird gesetzt, wenn das Ergebnis 99999999 über-schreitet.
Au + 1 Au
Ad + 1 Ad
R + 1 R
+ CY
CY
Merker ER: Au bzw. Ad ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis einen Übertrag aufweist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Ist 00000 auf EIN gesetzt, erfolgt im folgenden Programmabschnitt eine Addi-tion zweier 12–stelliger Zahlen, wobei sich die erste in LR 00 bis LR 02 und diezweite in DM 0010 bis DM 0012 befindet. Das Ergebnis wird in HR 10 bis HR 13abgelgt.
Die äußerst rechten 8 Stellen der zwei Zahlen werden über den ADDL(54)–Be-fehl addiert, d.h. der Inhalt von LR 00 und LR 01 wird zu DM 0010 und DM 0011addiert und die Ergebnisse in HR 10 und HR 11 abgelegt. In der zweiten Additionwerden die äußersten linken 4 Stellen jeder Zahl mit dem ADD(30)–Befehl ad-diert und beinhaltet den Übertrag aus der ersten Addition. Mit dem letzten BefehlADB(50) (sehen Sie Abschnitt 7-22-1 BINARY ADD – ADB(50) (Binäre Addi-tion)) werden zwei aus Nullen bestehende Konstanten addiert, um den Übertragaus der zweiten Addition in HR 13 abzulegen.
@ADDL(54)
LR 00
DM 0010
HR 10
CLC(41)
00000
@ADD(30)
LR 02
DM 0012
HR 12
@ADB(50)
#0000
#0000
HR 13
Adresse Befehl Operanden
00000 LD 00000
00001 CLC(41)
00002 @ADDL(54)
LR 00
DM 0010
HR 10
00003 @ADD(30)
LR 02
DM 0012
HR 12
00004 @ADB(50)
# 0000
# 0000
HR 13
Erläuterungen
Beispiel
7-21AbschnittBCD–Rechenbefehle
441
7-21-8 DOUBLE BCD SUBTRACT (BCD–Doppelwort–Subtraktion) –SUBL(55)
Mi: Minuend (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Su: Subtrahend (BCD)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR, LR
SUBL (55)
Mi
Su
R
@SUBL(55)
Mi
Su
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SUBL(55) nicht ausge-führt. Ist diese jedoch WAHR, subtrahiert SUBL(55) CY und den 8–stelligen In-halt von Su und Su+1 vom 8–stelligen Wert in Mi und Mi+1 und legt das Ergebnisin R und R+1 ab. Ist das Ergebnis negativ, wird CY gesetzt und das Zehner–Komplement des aktuellen Ergebnisses wird in R abgelegt. Um das Zehner–Komplement in ein echtes Ergebnis zu konvertieren, subtrahieren Sie den Inhaltvon R von Null. Da eine 8–stellige Konstante nicht direkt eingeben werden kann,verwenden Sie den BSET(71)–Befehl (sehen Sie Abschnitt 7-17-4 BLOCK SET– BSET(71) (Blockweise vorbesetzen)), um eine 8–stellige Konstante zu gene-rieren.
Mi + 1 Mi
Su + 1 Su
R + 1 R
– CY
CY
Merker ER: Mi, M+1, Su oder Su+1 sind kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis negativ ist, d.h., wenn Mi kleiner alsSu ist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Beschränkungen
Erläuterungen
7-21AbschnittBCD–Rechenbefehle
442
Beispiel Das folgende Beispiel gleicht dem einer Einzelwort–Subtraktion. In diesemBeispiel ist jedoch der Befehl BSET(71) erforderlich, um den Inhalt von DM 0000und DM 0001 zu löschen, so daß ein negatives Ergebnis von 0 subtrahiert wer-den kann (eine 8–stellige Konstante kann nicht eingegeben werden).
CLC(41)
@SUBL(55)
HR 00
220
DM 0100
CLC(41)
@SUBL(55)
DM 0000
DM 0100
DM 0100
TR 0
25504HR 0100
00003
25504
HR 0100
ErsteSubtraktion
Zweite Subtraktion
Auf EIN gesetzt, umein negatives Ergebnisanzuzeigen
@BSET(71)
#0000
DM 0000
DM 0001
00000 LD 00003
00001 OUT TR 0
00002 CLC (41)
00003 @SUBL(55)
HR 00
220
DM 0100
00004 AND 25504
00005 @BSET(71)
# 0000
DM 0000
DM 0001
00006 CLC(41)
00007 @SUBL(55)
DM 0000
DM 0100
DM 0100
00008 LD TR 0
00009 LD 25504
00010 OR HR 0100
00011 AND LD
00012 OUT HR 0100
Adresse Befehl Operanden Adresse Befehl Operanden
7-21-9 DOUBLE BCD MULTIPLY (BCD–Doppelwort–Multiplikation) –MULL(56)
Md: Multiplikand (BCD)
IR, SR, AR, DM, HR, TC, LR
Mr: Multiplikator (BCD)
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR LR
MULL (56)
MD
Mr
R
@MULL(56)
MD
Mr
R
7-21AbschnittBCD–Rechenbefehle
443
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl MULL(56) nicht ausge-führt. Ist diese jedoch WAHR, multipliziert MULL(56) den 8–stelligen Inhalt vonMd und Md+1 mit dem Inhalt von Mr und Mr+1 und legt das Ergebnis in R bis R+3ab.
MD + 1 MD
Mr + 1 Mr
R + 1 RR + 3 R + 2
X
Merker ER: Md, Md+1, Mr oder Mr+1 ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis einen Übertrag aufweist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-21-10 DOUBLE BCD DIVIDE (BCD–Doppelwort–Division) – DIVL(57)
Dd: Dividend (BCD)
IR, SR, AR, DM, HR, TC, LR
Dr: Divisor (BCD)
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR LR
DIVL(57)
Dd
Dr
R
@DIVL(57)
Dd
Dr
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl DIVL(57) nicht ausge-führt. Ist diese jedoch WAHR, dividiert DIVL(57) den 8–stelligen Inhalt von Ddund D+1 durch den Inhalt von Dr und Dr+1 und legt das Ergebnis in R bis R+3 ab:der Quotient wird in R und R+1 und der Rest in R+2 und R+3 abgelegt.
R+1 R
QuotientRest
Dd+1 DdDr+1 Dr
R+3 R+2
Merker ER: Dr und Dr+1 enthalten 0.
Dd, Dd+1, Dr oder Dr+1 ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Beschränkungen
Erläuterungen
Beschränkungen
Erläuterungen
7-22AbschnittBinäre Rechenbefehle
444
7-22 Binäre Rechenbefehle
7-22-1 BINÄR ADD (Binäre Addition) – ADB(50)
Au : 1. Summand (binär)
IR, SR, AR, DM, HR, TC, LR, #
Ad : 2. Summand (binär)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
ADB(50)
Au
Ad
R
@ADB(50)
Au
Ad
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ADB(50) nicht ausge-führt. Ist diese jedoch WAHR, addiert ADB(50) den Inhalt von Au, Ad und CY undlegt das Ergebnis in R ab. CY wird gesetzt, wenn das Ergebnis größer als FFFFist.
Au + Ad + CY CY R
ADB(50) kann auch für die Addition von vorzeichenbehafteten binären Datenverwendet werden. Bei der CPM1A, CPM2A und SRM1(–V2) zeigen die Unter-lauf– bzw. Überlaufmerker (SR 25404 und SR 25405) an, ob das Ergebnis denunteren oder oberen Grenzwert des vorzeichenbehafteten16 Bit–Binärdaten-bereichs überschreitet.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis größer als FFFF ist.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
OF: Auf EIN gesetzt, wenn das Ergebnis +32.767 (7FFF) überschreitet.
UF: Auf EIN gesetzt, wenn das Ergebnis –32.768 (8000) unterschreitet.
Beispiel Das folgende Beispiel zeigt eine 4–stellige Addition mit CY zum Schreiben vonentweder #0000 oder #0001 in R+1 zur Sicherung des Übertrags.
CLC(41)
00000
ADB (50)
200
DM 0100
HR 10
MOV (21)
#0000
HR 11
MOV (21)
#0001
HR 11
TR 0
25504
25504
= R
= R+1
= R+1
Adresse Befehl Operanden
00000 LD 00000
00001 OUT TR 0
00002 CLC (41)
00003 ADB (50)
200
DM 0100
HR 10
00004 AND NOT 25504
00005 MOV (21)
# 0000
HR 11
00006 LD TR 0
00007 AND 25504
00008 MOV (21)
# 00001
HR 11
Beschränkungen
Erläuterungen
7-22AbschnittBinäre Rechenbefehle
445
Im nachstehenden Beispiel ist A6E2 + 80C5 = 127A7. Das Ergebnis ist eine5–stellige Summe, wobei CY (SR 25504) = 1 ist und der Inhalt von R + 1 #0001wird.
R+1: HR 11 R: HR 100 0 0 1 2 7 A 7
Au: IR 200A 6 E 2
Ad: DM 01008 0 C 5
+
Hinweis Bei vorzeichenbehafteten binären Berechnungen zeigt der Zustand der UF–und OF–Merker an, ob das Ergebnis den vorzeichenbehafteten binären Daten-bereich überschreitet (–32.768 (8000) bis +32.767 (7FFF)).
7-22-2 SBB(51) – BINARY SUBTRACT (Binäre Subtraktion)
Mi: Minuend (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Su: Subtrahend (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
SBB(51)
Mi
Su
R
@SBB(51)
Mi
Su
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl SBB(51) nicht ausge-führt. Ist diese jedoch WAHR, subtrahiert SBB(51) die Inhalte von Su und CYvon Mi und legt das Ergebnis in R ab. Ist das Ergebnis negativ, wird CY gesetztund das 2–er Komplement des aktuellen Ergebnisses in R abgelegt.
Mi – Su – CY CY R
SBB(51) kann auch zur Subtraktion vorzeichenbehafteter binärer Daten einge-setzt werden. Bei der CPM1A, CPM2A und SRM1(–V2) zeigen die Unterlauf–bzw. Überlaufmerker (SR 25404 und SR 25405) an, ob das Ergebnis den un-teren oder oberen Grenzwert des vorzeichenbehafteten16 Bit–Binärdatenbe-reichs überschreitet.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
CY: Auf EIN gesetzt, wenn das Ergebnis negativ ist, d.h., wenn Mi kleiner istals Su + CY.
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
OF: Auf EIN gesetzt, wenn das Ergebnis +32.767 (7FFF) überschreitet.
UF: Auf EIN gesetzt, wenn das Ergebnis –32.768 (8000) unterschreitet.
Beispiel Das folgende Beispiel zeigt eine 4–stellige Subtraktion. Ist IR 00001 auf EIN ge-setzt, wird der Inhalt von LR 00 und CY vom Inhalt von IR 200 subtrahiert unddas Ergebnis in HR 01 gespeichert.
Beschränkungen
Erläuterungen
7-22AbschnittBinäre Rechenbefehle
446
Bei einem negativen Ergebnis wird CY auf EIN gesetzt. Werden normale Datenverwendet, muss ein negatives Ergebnis (vorzeichenbehafteter Binärwert) un-ter Anwendung des NEG(––)–Befehls in normale Daten konvertiert werden. Se-hen Sie Abschnitt 7-20-12 2’s COMPLEMENT (2–er Komplement) – NEG(––)für weitere Informationen.
CLC(41)
00001
SBB (51)
200
LR00
HR 01
Adresse Befehl Operanden
00000 LD 00001
00001 OUT TR 1
00002 CLC (41)
00003 SBB (51)
200
LR 00
HR 01
Im nachstehenden Beispiel wird der Inhalt von LR 00 (#7A03) und CY von IR002 (#F8C5) subtrahiert. Da das Ergebnis positiv ist, ist CY= 0.
Bei einem negativen Ergebnis wird der Übertragsmerker CY auf 1 gesetzt. Fürnormale Daten (ohne Vorzeichen) wird das Ergebnis dann in ein 2–er Komple-ment konvertiert.
Mi: IR 002F 8 C 5
Su: LR 007 A 0 3
–
0 0 0 0–
CY = 0(von CLC(41))
R: HR 017 E C 2
Hinweis Bei vorzeichenbehafteten binären Berechnungen zeigt der Zustand der UF–und OF–Merker an, ob das Ergebnis den vorzeichenbehafteten binären Daten-bereich überschreitet (–32.768 (8000) bis +32.767 (7FFF)).
7-22-3 BINARY MULTIPLY (Binäre Multiplikation) – MLB(52)
Md: Multiplikand (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Mr: Multiplikator (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR LR
MLB(52)
MD
Mr
R
@MLB(52)
MD
Mr
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Der Befehl MLB(52) kann nicht für die Multiplikation von vorzeichenbehaftetenbinären Daten verwendet werden.
Beschränkungen
7-22AbschnittBinäre Rechenbefehle
447
Ist die Ausführungsbedingung FALSCH, wird der Befehl MLB(52) nicht ausge-führt. Ist diese jedoch WAHR, multipliziert MLB(52) den Inhalt von Md mit demInhalt von Mr, wobei die äußerst rechten 4 Stellen des Ergebnisses in R und dieäußerst linken 4 Stellen in R+1 abgelegt werden.
MD
Mr
R +1 R
X
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-22-4 BINARY DIVIDE (Binäre Division) – DVB(53)
Dd: Dividend (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Dr: Divisor (Binär)
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Erstes Ergebniswort
IR, SR, AR, DM, HR LR
DVB(53)
Dd
Dr
R
@DVB(53)
Dd
Dr
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Der Befehl DVB(53) kann nicht für die Division von vorzeichenbehafteten binä-ren Daten verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl DVB(53) nicht ausge-führt. Ist diese jedoch WAHR, dividiert DVB(53) den Inhalt von Dd durch den In-halt von Dr und das Ergebnis wird in R und R+1 abgelegt: der Quotient in R undder Rest in R+1.
DdDr
R R + 1
Quotient Rest
Merker ER: Dr ist auf 0 gesetzt.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Erläuterungen
Beschränkungen
Erläuterungen
7-23AbschnittSpezielle mathematische Befehle
448
7-23 Spezielle mathematische Befehle
7-23-1 DATA SEARCH (Datenbereiche durchsuchen) – SRCH(––)
R1: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
N: Anzahl der Worte
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol Datenbereiche
@SRCH(––)
N
R1
CC: Vergleichsdaten, Ergebniswort
IR, SR, AR, DM, HR, LR
SRCH(––)
N
R1
C
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
N muss ein BCD–Wert zwischen 0001 und 9999 sein.
R1 und R1 +N–1 müssen sich in dem gleichen Datenbereich befinden.
Der Datenwortbereich DM 6144 bis DM 6655 kann für C nicht verwendet wer-den.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird SRCH(––) nicht ausgeführt. Ist dieAusführungsbedigung WAHR, durchsucht SRCH(––) den Speicherbereich vonR1 bis R1+N–1 nach Adressen, die die in C spezifizierten Vergleichsdaten ent-halten. Befinden sich die Vergleichsdaten auf einer oder mehreren Adressen,wird der EQ–Merker (SR 25506) gesetzt und die niedrigste Adresse, die die Ver-gleichdaten enthält, wir in C+1 ausgegeben. Die Adresse wird, entsprechenddem DM–Bereich, auf verschiedene Arten identifiziert:
1, 2, 3... 1. Bei einer Adresse im DM–Bereich, wird die Wortadresse in C+1 gespei-chert. Ist zum Beispiel DM 0114 die niedrigste Adresse, die die Vergleichs-daten enthält, wird #0114 in C+1 gespeichert.
2. Bei einer Adresse in einem anderen Datenbereich wird die Anzahl der seitdem Suchbeginn überprüften Adressen in C+1 gespeichert. Ist zum Bei–spiel IR 014 die niedrigste Adresse, die die Vergleichsdaten enthält und istdas erste Wort des Suchbereichs IR 04, wird #010 in C+1 gespeichert.
Enthält keine der Adressen des Bereichs die Vergleichsdaten, wird der EQ–Merker (SR 25506) zurückgesetzt und C+1 bleibt unverändert.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
N ist kein BCD–Wert zwischen 0001 und 9999.
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Es wurden passende Vergleichsdaten im Suchbereich gefunden.
Beispiel Im folgenden Beispiel wird ein aus 10 Worten (DM 200 bis DM 209) bestehen-der Bereich nach Adressen durchsucht, die die gleichen Daten enthalten wie
7-23AbschnittSpezielle mathematische Befehle
449
DM 0100 (89AB). Da IR 204 die gleichen Daten enthält, wird der EQ–Merker(SR 25506) gesetzt und #0004 in DM 0101 gespeichert.
@SRCH(––)
200
#0010
00000
DM 0100
Adresse Befehl Operanden
00000 LD 00000
00001 @SRCH(––)
# 0010
0200
DM 0100
IR 200 1234
IR 201 5678
IR 202 ABCD
IR 203 EF13
IR 204 89AB
IR 205 8860
IR 206 90CD
IR 207 00FF
IR 208 89AB
IR 209 810C
DM 0101 0004
DM 0100 89AB
← Suchdaten gefunden
← Suchdaten gefunden
Offset des ersten Wor-tes, dass die Suchdatenenthält
Offset: 0004
Hinweis Die passenden Suchdaten in IR 208 werden ignoriert, da die Suchdaten in ei-nem Wort mit niedrigerer Adresse im Bereich gefunden wurden.
7-23-2 FIND MAXIMUM (Maximum suchen) – MAX(––)
R1: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
C: Steuerdaten
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol Datenbereiche
@MAX(––)
C
R1
DD: Zielwort
IR, SR, AR, DM, HR, LR
MAX(––)
C
R1
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
N muss ein BCD–Wert zwischen 0001 und 9999 sein.
R1 und R1 +N–1 müssen sich in dem gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl MAX(––) nicht ausge-führt. Ist diese jedoch WAHR, sucht MAX(––) in dem Speicherbereich von R1 bisR1+N–1 nach der Adresse, die den Maximalwert enthält und speichert diesen indem Zielwort (D).
Die Adresse wird, entsprechend des DM–Bereichs, auf verschiedene Artenidentifiziert:
1, 2, 3... 1. Bei einer Adresse im DM–Bereich wird die Wortadresse in C+1 gespeichert.Ist die Adresse des Maximalwertes zum Beispiel DM 0114, wird #0114 inD+1 gespeichert.
2. Handelt es sich um die Adresse eines anderen Datenbereiches, wird dieAnzahl der Adressen nach dem Suchbeginn in D+1 gespeichert. Enthältzum Beispiel die Adresse IR 14 den Maximalwert und ist das erste Wort desSuchbereichs IR 04, dann wird #010 in D+1 gespeichert.
!
7-23AbschnittSpezielle mathematische Befehle
450
Ist Bit 14 des Steuerwortes C gesetzt und enthalten mehrere Adressen den glei-chen Maximalwert, wird die Position der niedrigsten Adresse in D+1 gespei-chert. Die Position wird als DM–Adresse für den DM–Bereich ausgegeben. Eshandelt sich jedoch um die Absolutposition in bezug auf das erste Wort des Be-reiches für alle anderen Bereiche.
Die Anzahl der Worte innerhalb des Bereiches (N) wird in den 3 äußerst rechtenZiffern von C gespeichert und muss ein BCD–Wert zwischen 001 und 999 sein.
Ist Bit 15 des Steuerwortes C auf AUS gesetzt, werden die Daten innerhalb desBereiches als Binärzahl ohne Vorzeichen und bei gesetztem Bit als vorzeichen-behaftete Binärzahl ausgewertet.
15 14 13 12 11 00
Ohne Vorzeichen –auf Null gesetzt.
Anzahl der Worteinnerhalb des Bereiches (N)001 bis 999 BCD)
Nicht verwendet – auf Null gesetzt.
Ausgabe der Adresse an D+1?1 (EIN): Ja.0 (AUS): Nein.
C:
Vorsicht Ist Bit 15 des Steuerwortes C auf EIN gesetzt, werden Werte größer als #8000als negative Zahlen ausgewertet. Die Ergebnisse unterscheiden sich daher jenach spezifiziertem Datentyp. Achten Sie darauf, dass der richtige Datentypspezifiziert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Auf EIN gesetzt, wenn der Maximalwert #0000 ist.
Ist IR 00000 EIN, veranlassen die Steuerdaten in DM 0000 (4010) eine Suchenach dem Maximalwert in den 10 Worten, die bei IR 200 beginnen. Der größte,
Beispiel
7-23AbschnittSpezielle mathematische Befehle
451
vorzeichenlose Wert wird in DM 0500 gespeichert. Der Offset vom Anfang derSuche des Wortes, das den Maximalwert enthält, wird in DM 0501 gespeichert.
00000MAX(––)
DM 0000
200
DM 0500
Adresse Befehl Operanden
00000 LD 00000
00001 MAX(––)
DM 0000
200
DM 0500
DM 0000
10 Worte
IR 200
IR 201
IR 202
IR 203
IR 204
IR 205
IR 206
IR 207
IR 208
IR 209
DM 0500
DM 0501
Maximalwert
Offset des Wortes, das Maximalwert enthält: 2 Worte
Maximalwert
Enthalten zwei Worte den Maximal-wert, wird die erste Adresse inDM 0501 abgelegt.
3F2A
51C3
E02A
7C9F
2A20
A827
2A20
E02A
C755
94DC
4010
E02A
0002
7-23-3 FIND MINIMUM (Minimum suchen) – MIN(––)
R1: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
C: Steuerdaten
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol Datenbereiche
@MIN(––)
C
R1
DD: Zielwort
IR, SR, AR, DM, HR, LR
MIN(––)
C
R1
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
N muss ein BCD–Wert zwischen 0001 und 9999 sein.
R1 und R1 +N–1 müssen sich in dem gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl MIN(––) nicht ausge-führt. Ist diese jedoch WAHR, sucht MIN(––) in dem Speicherbereich von R1 bisR1+N–1 nach der Adresse, die den Minimalwert enthält und speichert diesen imZielwort (D).
Die Adresse wird, entsprechend des DM–Bereichs, auf verschiedene Artenidentifiziert:
1, 2, 3... 1. Bei einer Adresse im DM–Bereich wird die Wortadresse in C+1 gespeichert.Ist die Adresse des Minimalwertes zum Beispiel DM 0114, wird #0114 inD+1 gespeichert.
!
7-23AbschnittSpezielle mathematische Befehle
452
2. Handelt es sich um die Adresse eines anderen Datenbereiches, wird dieAnzahl der Adressen nach dem Suchbeginn in D+1 gespeichert. Enthältzum Beispiel die Adresse IR 014 den Minimalwert und ist das erste Wort desSuchbereichs IR 004, wird #010 in D+1 gespeichert.
Ist Bit 14 des Steuerwortes auf EIN gesetzt und enthalten mehrere Adressenden gleichen Minimalwert, wird die Position der niedrigsten Adresse in D+1 aus-gegeben. Die Position wird als DM–Adresse für den DM–Bereich ausgegeben.Es handelt sich jedoch um die Absolutposition in bezug auf das erste Wort desBereiches für alle anderen Bereiche.
Die Anzahl der Worte innerhalb des Bereiches (N) wird in den 3 äußersten rech-ten Ziffern von C gespeichert und muss ein BCD–Wert zwischen 001 und 999sein.
Ist Bit 15 des Steuerwortes C auf AUS gesetzt, werden die Daten innerhalb desBereiches als Binärzahl ohne Vorzeichen und bei gesetztem Bit als vorzeichen-behaftete Binärzahl ausgewertet.
Anzahl der Worteinnerhalb des Bereiches (N)001 bis 999 BCD)
Nicht verwendet – auf Null gesetzt.
Ausgabe der Adresse an D+1?1 (EIN): Ja.0 (AUS): Nein.
C:15 14 13 12 11 00
Ohne Vorzeichen –auf Null gesetzt.
Vorsicht Ist Bit 15 des Steuerwortes C auf EIN gesetzt, werden Werte größer als #8000als negative Zahlen ausgewertet. Die Ergebnisse unterscheiden sich daher jenach spezifiziertem Datentyp. Achten Sie darauf, dass der richtige Datentypspezifiziert wird.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
EQ: Auf EIN gesetzt, wenn der Minimalwert #0000 ist.
Ist IR 00000 EIN, veranlassen die Steuerdaten in DM 0300 (4010) eine Suchenach dem Maximalwert in den 10 Worten, die bei DM 0000 beginnen. Der klein-
Beispiel
7-23AbschnittSpezielle mathematische Befehle
453
ste, vorzeichenlose Wert wird in DM 0500 gespeichert. Die Adresse des Wortes,das den Mindestwert (0014) enthält, wird in DM 0501 gespeichert.
00000MIN(––)
DM 0300
DM 0010
DM 0500
Adresse Befehl Operanden
00000 LD 00000
00001 MIN(––)
DM 0300
DM 0010
DM 0500
Mindestwert
Adresse des Wortes, das Maximalwert enthält: 0014
Mindestwert
Enthalten zwei Worte den Minimal-wert, wird die erste Adresse inDM 0501 abgelegt.
DM 0300
10 Worte
DM0010
DM0011
DM0012
DM0013
DM0014
DM0015
DM0016
DM0017
DM0018
DM0019
DM 0500
DM 0501
3F2A
51C3
E02A
7C9F
2A20
A827
33BF
E02A
2A20
94DC
4010
2A20
0014
7-23-4 AVERAGE VALUE (Mittelwerte berechnen) – AVG(––)
S: Quellwort
IR, SR, AR, DM, HR, TC, LR
N: Anzahl der Zyklen
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol Datenbereiche
D: Erstes Zielwort
IR, SR, AR, DM, HR, LR
AVG(––)
S
N
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
S muss eine Hexadezimalwert sein.
N muss ein BCD-Wert zwischen #0001 und #0064 sein.
D und D+N+1 müssen sich in dem gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können nicht für S, N oder D bis D+N+1 verwendet wer-den.
Erläuterungen AVG(–) berechnet den Mittelwert von S über N-Zyklen.
Ist die Ausführungsbedingung FALSCH, wird der Befehl AVG(–) nicht ausge-führt.
Bei jeder Befehlsausführung von AVG(–) wird der Inhalt von S in den WortenD+2 bis D+N+1 gespeichert. Bei der 1. Befehlsausführung wird durch AVG(––)der Inhalt von S in D+2 geschrieben; bei der 2. in D+3 usw. Bei der N-ten Be-fehlsausführung wird der Inhalt von S in D+N+1 gespeichert. AVG(–) berechnet
7-23AbschnittSpezielle mathematische Befehle
454
dann den Mittelwert der in D+2...D+N+1 gespeicherten Werte und schreibt die-sen Wert in D.
In der nachfolgenden Abbildung ist die Mittelwertberechnung dargestellt.
D Mittelwert (nach N oder mehr Befehlsausführungen)
D+1 Vom System benutzt.
D+2 Inhalt von S der 1. Befehlsausführung von AVG(––)
D+3 Inhalt von S der 2. Befehlsausführung von AVG(––)
D+N+1 Inhalt von S N–ten Befehlsausführung von AVG(––)
Vorsichtsmaßnahmen Der Mittelwert wird binär berechnet. Stellen Sie sicher, dass der Inhalt von S inBinärdaten vorliegt.
N muss ein BCD-Wert zwischen #0001 und #0064 sein. Ist N ≥ #0065, arbeitetAVG(––) mit dem Wert N = 64.
Der Mittelwert wird auf die nächste Ganzzahl gerundet (0,5 wird auf 1,0 gerun-det).
Stellen Sie den Inhalt von D+1 auf #0000 ein, um AVG(––) direkt mit dem 1. Zy-klus auszuführen.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Ein oder mehrere Operanden sind falsch gesetzt worden.
D und D+N+1 befinden sich nicht im gleichen Datenbereich.
Beispiel In dem folgenden Beispiel wird der Inhalt von IR200 auf #0000 gesetzt und an-schließend in jeden Zyklus inkrementiert. In den ersten zwei Zyklen verschiebtAVG(–) den Inhalt von IR200 nach DM 1002 und DM 1003. Bei dem dritten Zy-
7-23AbschnittSpezielle mathematische Befehle
455
klus und späteren Zyklen berechnet AVG(––) den Durchschnittswert des Inhaltsvon DM 1002 bis DM 1004 und speichert den Durchschnitt Wert in DM 1000.
@MOV(21)
200
#0000
00001
Adresse Befehl Operanden
00000 LD 00001
00001 @MOV(21)
# 0000
200
00002 AVG(––)
200
# 0003
DM 1000
00003 CLC (41)
00004 ADB (50)
200
# 0001
200
AVG(––)
#0003
200
DM 1000
CLC(41)
ADB(50)
#0001
200
200
1. Zyklus 2. Zyklus 3. Zyklus 4.
DM 1000 0000 0001 0001 0002 Durchschnitt
DM 1001 Vom System benutzt.
DM 1002 0000 0000 0000 0003 Vorheriger
DM 1003 ––– 0001 0001 0001 Wert von
DM 1004 ––– ––– 0002 0002 IR 200
1. Zyklus 2. Zyklus 3. Zyklus 4.
IR 200 0000 0001 0002 0003
7-23-5 SUM (Addition) – SUM(––)
C: Steuerdaten
IR, SR, AR, DM, HR, LR, #
R1: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol Datenbereiche
D: Erstes Zielwort
IR, SR, AR, DM, HR, LR
SUM(––)
C
R1
D
@SUM(––)
C
R1
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
Die drei äußersten rechten Stellen von C müssen als BCD–Wert zwischen 001und 999 spezifiziert werden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Ist Bit 14 des Wortes C auf AUS gesetzt (Einstellung für BCD–Daten), müssenalle Daten des Bereiches R1 bis R1+N–1 als BCD–Daten vorliegen.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird der Befehl SUM(––) nicht ausge-führt. Ist diese jedoch WAHR, addiert SUM(––) entweder den Inhalt der WorteR1 bis R1+N–1 oder die Bytes der Worte R1 bis R1+N/2–1 und gibt das Ergebnisin den Worten D und D+1 aus. Die zu addierenden Daten können als Binär– oderBCD–Werten vorliegen und werden in demselben Format ausgegeben. Binär-daten können vorzeichenlos oder vorzeichenbehaftet sein.
7-23AbschnittSpezielle mathematische Befehle
456
Die Funktion der Bits des Wortes C ist im folgenden Diagramm dargestellt undwird anschließend ausführlich erläutert:
Anzahl der Parameter des Bereichs (N, BCD)Anzahl der Worte bzw. Bytes 001 bis 999
Erstes Byte (Bit 13 gesetzt):1 (gesetzt): Äußerst rechte Stellen0 (rückgesetzt): Äußerst linke Stellen
Additionseinheiten1 (gesetzt): Bytes0 (zurückgesetzt): Worte
C:
Datentyp1 (EIN): Binärdaten0 (zurückgesetzt): BCD–Daten
Ohne Vorzeichen – auf Null gesetzt.
15 14 13 12 11 00
Anzahl der Parameter Die Anzahl der Parameter des Bereichs (N) wird in den drei äußerst rechtenStellen von C spezifiziert und muss ein BCD–Wert zwischen 001 und 999 sein.Je nach den zu addierenden Daten wird hier die Anzahl der Worte bzw. Bytesfestgelegt.
Additionseinheiten Ist Bit 13 auf AUS gesetzt, werden Worte addiert. Ist Bit 13 auf EIN gesetzt, wer-den Bytes addiert.
Bei der Spezifikation von Bytes kann der Bereich mit dem äußerst linken bzw.rechten Byte von R1 beginnen. Ist Bit 12 auf EIN gesetzt, wird das äußerst linkeByte von R1 nicht addiert.
MSB LSB
R1 1 2
R1+1 3 4
R1+2 5 6
R1+3 7 8
Ist Bit 12 auf AUS gesetzt, werden die Bytes in der folgenden Reihenfolge ad-diert: 1+2+3+4...
Ist Bit 12 auf EIN gesetzt, werden die Bytes in der folgenden Reihenfolge ad-diert: 2+3+4...
Datentyp Ist Bit 14 des Wortes C auf EIN und Bit15 auf AUS gesetzt, werden die Daten indem Bereich als Binärzahlen ohne Vorzeichen ausgewertet. Sind beide Bits (14und 15) auf EIN gesetzt, werden die Daten als vorzeichenbehaftete Binärwerteausgewertet.
Daten innerhalb des Bereiches werden als BCD–Werte ausgewertet, wenn Bit14 auf AUS gesetzt ist. Der Zustand von Bit 15 ist dabei irrelevant.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
R1 und R1+N–1 befinden sich nicht im gleichen Datenbereich.
Die Anzahl der Bytes/Worte in C ist kein BCD–Wert zwischen 001 und999.
Die zu addierenden Daten liegen nicht im BCD–Format vor, obwohldies spezifiziert wurde.
EQ: Auf EIN gesetzt, wenn das Ergebnis Null ist.
7-24AbschnittLogikbefehle
457
Beispiel Im folgenden Beispiel wird der Inhalt der 8 Worte DM 0000 bis DM 0007 (BCD–Werte) addiert, wenn IR 00001 auf EIN gesetzt ist. Das Ergebnis wird in denWorten DM 0010 und DM 0011 gespeichert.
@SUM(––)
DM 0000
#0008
00001
DM 0010
Adresse Befehl Operanden
00000 LD 00001
00001 @SUM(––)
# 0008
DM 0000
DM 0010
DM 0000 0001
DM 0001 0002
DM 0002 0003
DM 0003 0004
DM 0004 0005
DM 0005 0006
DM 0006 0007
DM 0007 0008
DM 0010 0036
DM 0011 0000
7-24 Logikbefehle
7-24-1 COMPLEMENT (Komplement) – COM(29)
Wd: Komplementwort
IR, SR, AR, DM, HR, LR
Kontaktplan–Symbol Datenbereiche
COM (29)
Wd
@COM(29)
Wd
Beschränkungen DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist sie Ausführungsbedingung FALSCH, wird der Befehl COM(29) nicht ausge-führt. Ist diese jedoch WAHR, löscht COM(29) alle gesetzen Bits und setzt allezurückgesetzten Bits in Wd.
Das Komplement von Wd wird je Zyklus berechnet, falls der COM(29)–Befehlohne flankengesteuerter Ausführung verwendet wird. Verwenden Sie die den@COM(29))–Befehl mit flankengesteuerter Ausführung oder kombinieren SieCOM(29) mit DIFU(13) oder DIFD(14), um das Komplement nur einmal zu be-rechnen.
1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
15 00
15 00
Original
Komplement
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Erläuterungen
Vorsichtsmaßnahmen
Beispiel
7-24AbschnittLogikbefehle
458
7-24-2 LOGICAL AND (Wortweise UND–Verknüpfung) – ANDW(34)
I1: Eingang 1
IR, SR, AR, DM, HR, TC, LR, #
I2: Eingang 2
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
ANDW(34)
I1
I2
R
@ANDW(34)
I1
I2
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl ANDW(34) nicht aus-geführt. Ist diese jedoch WAHR, führt ANDW(34) eine logische UND–Verknüp-fung (Bit–für–Bit) der Inhalte von I1 und I2 durch und legt das Ergebnis in R ab.
1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
15 00
15 00
I1
I2
R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-24-3 LOGICAL OR (Wortweise ODER–Verknüpfung) – ORW(35)
I1: Eingang 1
IR, SR, AR, DM, HR, TC, LR, #
I2: Eingang 2
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
ORW (35)
I1
I2
R
@ORW(35)
I1
I2
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Beschränkungen
Erläuterungen
Beispiel
Beschränkungen
7-24AbschnittLogikbefehle
459
Ist die Ausführungsbedingung FALSCH, wird der Befehl ORW(35) nicht ausge-führt. Ist diese jedoch WAHR, führt ORW(35) eine logische ODER–Verknüfung(Bit–für–Bit) der Inhalte von I1 und I2 durch und legt das Ergebnis in R ab.
1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1
15 00
15 00
I1
I2
R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-24-4 EXCLUSIVE OR (Wortweise EXKLUSIV–ODER–Verknüpfung) –XORW(36)
I1: Eingang 1
IR, SR, AR, DM, HR, TC, LR, #
I2: Eingang 2
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
XORW(36)
I1
I2
R
@XORW(36)
I1
I2
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl XORW(36) nicht aus-geführt. Ist diese jedoch WAHR, führt XORW(36) eine logische EXKLUSIV–ODER–Verknüfung (Bit–für–Bit) der Inhalte von I1 und I2 durch und legt das Er-gebnis in R ab.
1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
15 00
15 00
I1
I2
R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
Erläuterungen
Beispiel
Beschränkungen
Erläuterungen
Beispiel
7-25AbschnittInkrementier/Dekrementier–Befehle
460
7-24-5 EXCLUSIVE NOR (WortweiseEXKLUSIV–ODER–NICHT–Verknüpfung) – XNRW(37)
I1: Eingang 1
IR, SR, AR, DM, HR, TC, LR, #
I2: Eingang 2
IR, SR, AR, DM, HR, TC, LR, #
Kontaktplan–Symbol
Datenbereiche
R: Ergebniswort
IR, SR, AR, DM, HR, LR
XNRW(37)
I1
I2
R
@XNRW(37)
I1
I2
R
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl XNRW(37) nicht aus-geführt. Ist diese jedoch WAHR, führt XNRW(37) eine logischeEXKLUSIVEODER–NICHT–Verknüpfung (Bit–für–Bit) der Inhalte von I1 und I2 aus und legtdas Ergebnis in R ab.
1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
15 00
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
15 00
15 00
I1
I2
R
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-25 Inkrementier/Dekrementier–Befehle
7-25-1 BCD INCREMENT (BCD–Wert inkrementieren) – INC(38)
Wd: Inkrementierungswort (BCD)
IR, SR, AR, DM, HR, LR
Kontaktplan–Symbol Datenbereiche
INC(38)
Wd
@INC(38)
Wd
DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl INC(38) nicht ausge-führt. Ist diese jedoch WAHR, inkrementiert INC(38) Wd, ohne Auswirkung aufCarry (CY).
Der Inhalt von Wd wird in jedem Zyklus inkrementiert, falls der INC(38)–Befehlohne flankengesteuerte Ausführung verwendet wird. Verwenden Sie den(@INC(38))–Befehl mit flankengesteuerter Ausführung oder kombinieren SieINC(38) mit DIFU(13) oder DIFD(14) um Wd nur einmal zu inkrementieren.
Beschränkungen
Erläuterungen
Beschränkungen
Erläuterungen
Vorsichtsmaßnahmen
7-25AbschnittInkrementier/Dekrementier–Befehle
461
Merker ER: Wd ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis der Inkrementierung Null ist.
7-25-2 BCD DECREMENT (BCD–Wert dekrementieren) – DEC(39)
Wd: Dekrementierungswort (BCD)
IR, SR, AR, DM, HR, LR
Kontaktplan–Symbol Datenbereiche
DEC(39)
Wd
@DEC(39)
Wd
DM 6144 bis DM 6655 können nicht für Wd verwendet werden.
Ist die Ausführungsbedingung FALSCH, wird der Befehl DEC(39) nicht ausge-führt. Ist diese jedoch WAHR, dekrementiert DEC(39) Wd, ohne Auswirkung aufCY. DEC(39) funktioniert genauso wie INC(38), außer dass der Wert dekremen-tiert statt inkrementiert wird.
Der Inhalt von Wd wird in jedem Zyklus dekrementiert, falls der DEC(39)–Befehlohne flankengesteuerte Ausführung verwendet wird. Verwenden Sie den(@DEC(39))–Befehl mit flankengesteuerter Ausführung, oder kombinieren SieDEC(39) mit DIFU(13) oder DIFD(14), um Wd nur einmal zu dekrementieren.
Merker ER: Wd ist kein BCD–Wert.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis der Dekrementierung Null ist.
Beschränkungen
Erläuterungen
Vorsichtsmaßnahmen
7-26AbschnittUnterprogramm–Befehle
462
7-26 Unterprogramm–BefehleUnterprogramme unterteilen große Programmbereiche in kleinere Abschnitte.Ruft das Hauptprogramm ein Unterprogramm auf, wird die Steuerung dem Un-terprogramm übergeben und die Befehle im Unterprogramm ausgeführt. DieBefehlsstruktur in einem Unterprogramm ist die gleiche wie im Hauptprogramm.Wurden alle Befehle im Unterprogramm ausgeführt, übernimmt das Hauptpro-gramm wieder die Steuerung und zwar an der Stelle, an der der Unterprogram-maufruf erfolgte (falls in dem Unterprogramm nichts anderes spezifiziert wird).
7-26-1 SUBROUTINE ENTER (Unterprogramm–Aufruf) – SBS(91)
N: Unterprogramm–Nummer
000 bis 049
Kontaktplansymbol Datenbereiche
SBS(91) N
Beschränkungen Die Unterprogrammnummer muss zwischen 000 und 049 liegen.
Beschreibung Der SBS(91)–Befehl wird an die Stelle im Hauptprogramm gesetzt, an der dasUnterprogramm aufgerufen werden soll. Mit der UnterprogrammnummerSBS(91) wird festgelegt, welches Unterprogramm ausgeführt werden soll. Istdie Ausführungsbedingung WAHR, wird SBS(91) ausgeführt. Dann werden zu-nächst alle Befehle, die zwischen SBN(92) mit gleicher Unterprogrammnummerund dem ersten RET(93) liegen, ausgeführt und das Programm kehrt erst dannan die Stelle im Hauptprogramm zurück, die dem Aufruf des Unterprogrammsfolgt.
SBS(91) 000
SBN(92) 000
RET(93)
END(01)
Hauptprogramm
Unterprogramm
Hauptprogramm
SBS(91) kann so oft wie erforderlich verwendet werden, d.h., das gleiche Unter-programm kann an verschiedenen Stellen im Hauptprogramm aufgerufen wer-den.
!
7-26AbschnittUnterprogramm–Befehle
463
SBS(91) kann auch innerhalb eines Unterprogramms verwendet werden, umauch von einem Unterprogramm aus eine Routine mehrfach zu nutzen. Ist dieAusführung des zweiten Unterprogramms abgeschlossen (RET(93) wurde er-reicht), kehrt das Programm zunächst in das erste Unterprogramm zurück undarbeitet dort die noch verbleibenden Befehle ab, bevor es ins Hauptprogrammzurückkehrt. Diese verschachtelte Unterprogramm–Routine (Nesting) kann fürbis zu 16 Ebenen benutzt werden. Das Unterprogramm kann sich nicht selbstaufrufen (d.h. SBS(91) 000 kann nicht mit einem definierten UnterprogrammSBN(92) 000 aufgerufen werden). Die nachfolgende Zeichnung veranschau-licht eine ausgelagerte Zwischenroutine auf zwei Ebenen.
SBN(92) 010 SBN(92) 011 SBN(92) 012
SBS(91) 011
RET(93)
SBS(91) 010 SBS(91) 012
RET(93) RET(93)
Die folgende Abbildung veranschaulicht die Prograummausführung bei unter-schiedlichen Ausführungsbedingungen für zwei SBS(91).
SBS(91) 000
SBS(91) 001
SBN(92) 000
RET(93)
SBN(92) 001
RET(93)
END(01)
Haupt–programm
Unter–programme
A
B
C
D
E
A
A
A
A
B
B
B
B
C
C
C
C
D
D
E
E
AUS Ausführungsbedingungen fürdie Unterprogramme 000 und 001
EIN Ausführungsbedingung nurfür das Unterprogramm 000
EIN Ausführungsbedingung nurfür das Unterprogramm 001
EIN Ausführungsbedingungen fürdie Unterprogramme 000 und 001
Merker ER: Es ist kein Unterprogramm mit der angegebenen Unterprogrammnum-mer vorhanden.
Ein Unterprogramm hat sich selbst aufgerufen.
Ein aktives Unterprogramm wurde aufgerufen.
Vorsicht Ist der ER–Merker gesetzt, wird SBS(91) nicht ausgeführt und das Unterpro-gramm nicht aufgerufen.
7-26AbschnittUnterprogramm–Befehle
464
7-26-2 SUBROUTINE DEFINE und RETURN (Unterprogramm–Anfang undUnterprogramm–Ende) – SBN(92)/RET(93)
N: Unterprogramm–Nummer
000 bis 049
Kontaktplan–Symbol Datenbereiche
SBN(92) N
RET(93)
Beschränkungen Die Unterprogrammnummer muss zwischen 000 und 049 liegen.Jede Unterprogrammnummer kann mit SBN(92) nur einmal verwendet werden.
Der SBN(92)–Befehl spezifiziert den Unterprogrammanfang und derRET(93)–Befehl das Ende. Jedes Unterprogramm wird über eine Unterpro-grammnummer N als Operand des SBN(92)–Befehls definiert. Die gleiche Un-terprogrammnummer wird im SBS(91)–Befehl, der das Unterprogramm aufruft,verwendet (sehe Sie den Abschnitt 7-26-1 SUBROUTINE ENTER – SBS(91)).RET(93) erfordert keine Unterprogrammnummer.
Alle Unterprogramme müssen am Ende des Hauptprogramms programmiertwerden. Sollen mehrere Unterprogramme programmiert werden, wird dasHauptprogramm bis zum ersten SBN(92) ausgeführt, bevor es zur Adresse00000 zurückkehrt, um den nächsten Zyklus zu beginnen. Unterprogrammewerden nur bei Aufruf über SBS(91) ausgeführt.
Das letzte Unterprogramm muss, und zwar nach dem letzten RET(93)–Befehl,mit END(01) abgeschlossen werden. Es ist dann an keiner anderen Stelle imProgramm erforderlich.
Vorsichtsmaßnahmen Wurde SBN(92) irrtümlich im Hauptprogramm verwendet, wird eine weitereProgrammausführung ab diesem Punkt verhindert.
Wurde entweder DIFU(13) oder DIFD(14) in einem Unterprogramm verwendet,wird das Operanden–Bit nicht zurückgesetzt, bis das Unterprogramm erneutausgeführt wird, d.h. das Operanden–Bit bleibt länger als einen Zyklus gesetzt.
Merker Die Befehle haben keine Auswirkungen auf Merker.
7-26-3 MACRO (Unterprogramm–Struktur) – MCRO(99)
I1: Erstes Eingangs–Wort
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol
Datenbereiche
O1: Erstes Ausgangs–Wort
IR, SR, AR, DM, HR, LR
MCRO(99)
N
I1
O1
@MCRO(99)
N
I1
O1
N: Unterprogramm–Nummer
000 bis 49
Die Unterprogrammnummer muss zwischen 000 und 049 liegen.
Wird eine DM–Adresse für O1 verwendet, muss O1 bis O1+3 im DM gelesenund beschrieben werden können.
Mit dem MACRO–Befehl können mehrere Unterprogramme, die eine identischeStruktur, jedoch unterschiedliche Operanden aufweisen, durch ein einzelnesUnterprogramm ersetzt werden. 4 Eingangsworte (SR 232 bis SR 235) und 4Ausgangsworte (SR 236 bis SR 239) werden MCRO(99) zugewiesen. Der In-
Erläuterungen
Beschränkungen
Erläuterungen
7-26AbschnittUnterprogramm–Befehle
465
halt dieser 8 im Unterprogramm verwendenten Worte wird bei der Ausführungdes Unterprogramms aus I1 bis I1+3 und O1 bis O1+3 übernommen.
Ist die Ausführungsbedingung FALSCH, wird MCRO(99) nicht ausgeführt. Istdie Ausführungsbedingung WAHR, kopiert MCRO(99) den Inhalt von I1 bis I1+3zu SR 232 bis SR 235, ruft dann das über N spezifizierte Unterprogramm aufund führt dieses aus. Ist die Ausführung des Unterprogramms beendet, wird derInhalt von SR 236 bis SR 239 wieder auf O1 bis O1+3 zurück übertragen, bevorMCRO(99) beendet wird.
Hinweis Sehen Sie auch Seite 151 für weitere Informationen zu MCRO(99).
Beispiel In diesem Beispiel wird der Inhalt von DM 0010 bis DM 0013 auf SR 232 bis SR235 kopiert, das Unterprogramm 10 aufgerufen und ausgeführt. Ist die Ausfüh-rung des Unterprogramms beendet, wird der Inhalt von SR 236 bis SR 239 aufdie Ausgangsworte DM 0020 bis DM 0023 kopiert.
MCRO(99) 010
DM 0010
DM 0020
SBN(92) 010
RET(93)
END(01)
Hauptprogramm
Unterprogramm
Hauptprogramm
Merker ER: Es ist kein Unterprogramm für die angegebene Unterprogrammnum-mer vorhanden.
Ein Operand hat die Datenbereichsgrenze überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Ein Unterprogramm hat sich selbst aufgerufen.
Es wurde ein aktives Unterprogramm aufgerufen.
7-27AbschnittImpulsausgabe–Befehle
466
7-27 Impulsausgabe–Befehle
7-27-1 SET PULSES (Impulsausgabe) – PULS(65)
P: Schnittstellenspezifikation
000 oder 010
Kontaktplan–Symbol Datenbereiche
@PULS(65)
P
C
NN: Anzahl der Impulse
IR, SR, AR, DM, HR, LR
C: Steuerdaten
000 oder 001
PULS(65)
P
C
N
Beschränkungen Dieser Befehl wird nur von den SPS CPM1A und CPM2A/CPM2C mit Transi–storausgängen unterstützt.
N und N+1 müssen sich im gleichen Datenbereich befinden.
DM 6144 bis DM 6655 können für N nicht verwendet werden.
Erläuterungen Über den PULS(65)–Befehl werden die Parameter der Impulsausgänge, diespäter über SPED(64) oder ACC(––) aktiviert werden, festgelegt. Die Anzahlder mit PULS(65) eingestellten Impulse wird in der Unabhängig–Betriebsartausgegeben.
Die Anzahl der Impulse kann nicht geändert werden, während Impulse ausge-geben werden. Im allgemeinen sollte PULS(65) jedes Mal nur einmal ausge-führt werden, wenn die Anzahl der Impulse spezifiziert werden muss; verwen-den Sie flankengesteuerte Variation (@PULS(65)) oder eine Eingangsbedin-gung, die nur für einen Zyklus aktiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-formationen.
Schnittstellenbezeichner (P)Über die Impuls–Ausgangspezifikation wird der Ausgang festgelegt. Die in Cund N festgelegten Parameter werden im nächsten SPED(64)– oderACC(––)–Befehl genutzt, in dem die gleiche Ausgangsspezifikation festgelegtist.
P Impulsausgabe–Positionen
000 Einphasiger Impulsausgang 0 ohne Beschleunigung oder Abbremsung (Ausgang01000) oder Einphasiger Impulsausgang 0 mit trapezförmiger Beschleunigung und –ab-bremsung (Ausgänge 01000 und 01001)
010 Einphasiger Impulsausgang 1 ohne Beschleunigung/Abbremsung (Ausgang 01001).
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
Steuerdaten (C)Die Steuerdaten bestimmen die Art der Impulse (relativ oder absolut).
C Impulsart
000 Relative Impulsspezifikation
001 Absolute Impulsspezifikation (nur gültig, wenn das absolute Koordinatensystem verwen-det wird.)
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
Anzahl der Ausgabeimpulse (N+1 und N)N+1 und N enthält den 8–stellige BCD–Wert der Anzahl der Ausgabeimpulse fürdie Impulsausgabe in der Unabhängig–Betriebsart. Die Anzahl der Ausgangs-impulse kann –16,777,215 bis 16.777.215 betragen. Bit 15 von N+1 kennzeich-net das Vorzeichen; der Wert ist negativ, wenn Bit 15 aktiviert ist, und positiv,wenn es deaktiviert ist.
7-27AbschnittImpulsausgabe–Befehle
467
Positiv: 0 bis +16,777,215 (0000 0000 bis 1677 7215)Negativ: –16,777,215 bis 0 (9677 7215 bis 8000 0000)
N+1 enthält die äußerst linken 4 Stellen und N die äußerst rechten 4 Stellen.
Die Anzahl der Bewegungsimpulse hängt von der Anzahl der Ausgabeimpulse(N+1 und N) und der Impulsart (C) ab.
Koordinaten-system
Bewegungsimpulse
Relativ Anzahl der Bewegungsimpulse = Anzahl der Ausgabeimpulse
Absolut Impulsart: Relativ (C=000)Anzahl der Bewegungsimpulse = Anzahl der Ausgabeimpulse
Impulsart: Absolut (C=001, nur CPM2A/CPM2C)Anzahl der Bewegungsimpulse = Anzahl der Ausgabeimpulse – Istwert
Nachdem PULS(65) ausgeführt wurde, wird die errechnete Anzahl der Bewe-gungsimpulse nicht geändert, auch wenn INI(61) ausgeführt wird, um den Im-pulsausgabe–Istwert zu ändern.
Eine Spezifikation, die die Bewegung außerhalb des erlaubten Istwertbereichsermöglicht (–16,777,215 bis 16.777.215), kann ohne Probleme spezifiziert wer-den.
PULS(65) wird nicht ausgeführt und ein Fehler tritt auf (SR 25503 EIN), wenndie errechnete Anzahl der Bewegungsimpulse 0 ist.
Arbeitet die Impulsausgabe in der Unabhängig–Betriebsart ohne Beschleuni-gung oder Abbremsung und ist die Anzahl der Bewegungsimpulse negativ, wirdder Absolutwert der Anzahl der Bewegungsimpulse verwendet. (Beträgt zumBeispiel die Anzahl der Bewegungsimpulse –500, wird ein Wert von 500 ver-wendet.)
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
P ist nicht 000 oder 010.
C ist nicht 000 oder 001. (C kann nicht auf 001 eingestellt werden, wennrelative Koordinaten verwendet werden.)
Die Anzahl der Ausgabeimpulsen liegt nicht zwischen –16.777.215 und16.777.215.
PULS(65) wird in einem Interrupt–Unterprogramm ausgeführt, wäh-rend eine Impuls–E/A oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
Nachdem PULS(65) ausgeführt wurde, liegt der Absolutwert der An-zahl der Bewegungspulsen nicht zwischen 1 und 16.777.215.
7-27-2 SPEED OUTPUT (Geschwindigkeitsausgabe) – SPED(64)
P: Schnittstellenspezifikation
000 oder 010
Kontaktplan–Symbol Datenbereiche
@SPED(64)
P
M
FF: Zielfrequenz
IR, SR, AR, DM, HR, LR, #
M: Ausgabebetriebsart
000 oder 001
SPED(64)
P
M
F
Anzahl derBewegungspulsen
7-27AbschnittImpulsausgabe–Befehle
468
Beschränkungen Dieser Befehl wird nur von den SPS CPM1A und CPM2A/CPM2C mit Transi–storausgängen unterstützt.
In der CPM1A: F muss ein BCD–Wert von #0000 oder #0002 bis #0200 sein.In der CPM2A/CPM2C: F muss ein BCD–Wert von #0000 oder #0001 bis #1000sein.
DM 6144 bis DM 6655 kann nicht für F genutzt werden.
Erläuterungen SPED(64) wird verwendet, um die Ausgabeimpulsfrequenz zu spezifizieren unddie Impulsausgabe über den spezifizierten Ausgang zu beginnen. Ist die Aus-führungsbedingung FALSCH, wird der SPED(64)–Befehl nicht ausgeführt. Istdie Ausführungsbedingung WAHR, spezifiziert SPED(64) die Impulsfrequenz Fdes ausgewählten Ausgangs über P. M spezifiziert die Ausgabebetriebsart.
Im allgemeinen sollte SPED(64) jedes Mal nur einmal ausgeführt werden, wenndie Frequenz spezifiziert werden muss; verwenden Sie flankengesteuerte Va-riation (@SPED(64)) oder eine Eingangsbedingung, die nur für einen Zyklus ak-tiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-formationen.
Schnittstellenbezeichner (P)Der Schnittstellenbezeichner spezifiziert den Ausgang, über den die Impulseausgegeben werden.
P Impulsausgabe–Positionen
000 Einphasiger Impulsausgang 0 ohne Beschleunigung/Abbremsung (Ausgang 01000).
010 Einphasiger Impulsausgang 1 ohne Beschleunigung/Abbremsung (Ausgang 01001).
Diese Einstellung wird nur von der SPS CPM2A/CPM2C unterstützt.
Ausgabebetriebsart (M)Der Wert von M legt die Ausgabebetriebsart fest.
M Impulsart
000 Unabhängig–Betriebsart
001 Ununterbrochen–Betriebsart
Der Betrieb in der Unabhängig– und Ununterbrochen–Betriebsart ist nachfol-gend beschrieben.
Zielfrequenz (F)Der 4–stellige BCD–Wert F spezifiziert die Impulsfrequenz in Einheiten von 10Hz, wie es nachfolgend dargestellt ist. Die Impulsausgabe über den spezifizier-ten Ausgang wird beendet, wenn 0000 für F eingestellt wird .
SPS Mögliche Werte für F
CPM1A 0000 (stoppt die Impulsausgabe) oder 0002 bis 0200 (20 Hz bis 2 KHz)
CPM2A/CPM2C 0000 (stoppt die Impulsausgabe) oder 0001 bis 1000 (10 Hz bis 10KHz)
Die über SPED(64) gestartete Impulsausgabe arbeitet weiter, bis einer dernachfolgend aufgeführten Punkte eintritt:
1, 2, 3... 1. Der INI(––)–Befehl wird mit C = 003 ausgeführt.
2. In der Unabhängig–Betriebsart wird die Anzahl der Ausgabeimpulse, diemit PULS(65) spezifiziert wurden, erreicht. (PULS(65) vor SPED(64) aus-führen.)
3. SPED(64) wird mit der Zielfrequenz F = #0000 erneut ausgeführt.
4. Die SPS wird in die PROGRAM–Betriebsart umgeschaltet.
Impulse können gleichzeitig und unabhängig von einander über zwei Ausgängeausgegeben werden.
Werden in der Unabhängig–Betriebsart Impulse ausgegeben, muss die Impul-sanzahl vor der Ausführung des PULS–Befehls festgelegt werden. Die Anzahl
Allgemeiner Betrieb
7-27AbschnittImpulsausgabe–Befehle
469
der Ausgabeimpulse muss erneut mit PULS(65) spezifiziert werden, nachdemdie Impulsausgabe gestoppt wurde.
Die Frequenz kann nicht mit SPED(64) verändert werden, wenn bereits Impulseüber den spezifizierten Ausgang mit ACC(––) oder PWM(––) ausgegeben wer-den. Ein Fehler tritt auf und SR 25503 wird aktiviert, wenn SPED(64) unter die-sen Umständen ausgeführt wird.
In der Unabhängig–Betriebsart wird nur die Anzahl der mit PULS(65) spezifi-zierten Ausgabeimpulse ausgegeben. Die Anzahl der Ausgabeimpulse mussspezifiziert werden, indem PULS(65) vor SPED(64) ausführt. (Impulse werdennicht ausgegeben, wenn die Anzahl der Ausgabeimpulse nicht zuvor spezifiziertwurde.)
Ist die errechnete Anzahl der Bewegungsimpulse negativ, wird der Absolutwertder Anzahl der Bewegungsimpulse verwendet. (Beträgt zum Beispiel die An-zahl der Bewegungsimpulse –500, wird der Wert von 500 verwendet.)
Impulsfrequenz
Zeit
In der Ununterbrochen–Betriebsart werden Impulse unbegrenzt ausgegeben,bis diese über INI(61) mit C=003 oder eine erneute Ausführung von SPED(64)mit F=0000 gestoppt werden oder die SPS in die PROGRAM–Betriebsart um-geschaltet wird.
Impulsfrequenz
Zeit
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
P ist nicht 000 oder 010, M ist nicht 000 oder 001 oder F ist nicht 0000 bis1000.
SPED(64) wird in einem Interrupt–Unterprogramm ausgeführt, wäh-rend eine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
Betrieb in derUnabhängig–Betriebsart
Betrieb in derUnunterbrochen–Betriebsart
7-27AbschnittImpulsausgabe–Befehle
470
7-27-3 ACCELERATION CONTROL (Beschleunigungssteuerung) –ACC(––)
P: Schnittstellenspezifikation
000
Kontaktplan–Symbol Datenbereiche
@ACC(––)
P
M
CC: Erstes Steuerwort
IR, SR, AR, DM, HR, LR
M: Betriebsart–Angabe
000, 002, oder 010 bis 013
ACC(––)
P
M
C
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
P muss mit 000 und M mit 000, 002, 010 – 013 spezifiziert werden.
C bis C+3 müssen sich im gleichen Datenbereich befinden.
Erläuterungen ACC(––) wird dazu verwendet, die Beschleunigungs–/Abbremsgeschwindig-keit zu spezifizieren und die Impulsausgabe mit einer trapezförmiger Beschleu-nigung und –abbremsung zu starten.
Im allgemeinen sollte ACC(––) jedes Mal nur einmal ausgeführt werden, wenndie Beschleunigungs/Abbremsung eingestellt werden muss; verwenden Sieflankengesteuerte Variation (@ACC(––)) oder eine Eingangsbedingung, dienur für einen Zyklus aktiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-formationen.
Schnittstellenbezeichner (P)Stellen Sie den Schnittstellenbezeichner immer auf 000 ein. Die 000 Einstellungspezifiziert den einphasigen Impulsausgang 0 mit trapezförmiger Beschleuni-gung und Abbremsung.
Betriebsartenspezifizierer (M)Der Wert von M legt die Ausgabebetriebsart fest.
M Betriebsart Hinweis
000 Unabhängig–Betriebsart und Aufwärts–/Abwärts–ImpulsAusgabe-betriebsart
–––
002 Unabhängig–Betriebsart und Impuls + Richtungs–Ausgabebetrieb-sart
–––
010 Rechtslauf (Ununterbrochen–Betriebsart undAufwärts/Abwärtz–Impuls–Ausgabebetriebsart)
Rechtslauf: ImUhrzeigersinn
011 Linkslauf (Ununterbrochen–Betriebsart undAufwärts/Abwärtz–Impuls–Ausgabebetriebsart)
g
Linkslauf:Entgegen demUh i i
012 Rechtslauf (Ununterbrochen–Betriebsart und Impuls +Richtungs–Ausgabebetriebsart)
g gUhrzeigersinn
013 Linkslauf (Ununterbrochen–Betriebsart und Impuls– +Richtungs–Ausgabebetriebsart)
In der Unabhängig–Betriebsart wird die Ausgaberichtung eingestellt, wennPULS(65) ausgeführt wird.
Steuerwort (C, C+1 und C+2)Die 3 Steuerworte spezifizieren die Beschleunigungsrampe, Zielfrequenz undAbbremsgeschwindigkeit. (Jede Frequenz wird als ein Mehrfaches von 10 Hzeingestellt.)
7-27AbschnittImpulsausgabe–Befehle
471
Wort Funktion
C Der Inhalt von C bestimmt die Beschleunigungs–/Abbremsrampe.Während der Beschleunigung/Abbremsung wird die Ausgabefrequenz alle 10 ms umden in C spezifizierten Betrag erhöht/reduziert. Der Wert von C+2 wird als BCD–Wertvon 0000 bis 1000 spezifiziert (0 Hz bis 10 kHz).
C+1 Der Inhalt von C+1 spezifiziert die Zielfrequenz.Der Wert von C+1 wird als BCD–Wert von 0001 bis 1000 spezifiziert (10 Hz bis 10kHz).
C+2 Der Inhalt von C+2 bestimmt die Anfangs–/Endfrequenz.Der Wert von C+2 wird als BCD–Wert von 0000 bis 1000 spezifiziert (0 Hz bis 10KHz).
Zwei Impulsausgänge werden von ACC(––) gesteuert.
Auf–/Abwärts–ImpulsAusgabebetriebsart
IR 01000 (Rechtslauf–Betrieb)
IR 01001 (Linkslauf–Betrieb)
Impuls + RichtungsAusgabebetriebsartIR 01000 (Impulsausgabe)
IR 01001 (Richtungsspezifizierer)
Die Impulsausgabe beginnt, wenn ACC(––) ausgeführt wird und die Ausgangs-frequenz jede 10 ms um den Betrag erhöht wird, der in Steuerwort C spezifiziertist. Wird die in C+1 spezifizierte Zielfrequenz erreicht, wird die Beschleunigungabgebrochen, und die Impulsausgabe erfolgt weiter mit einer konstanten Fre-quenz.
Die Impulsausgabe mit trapezförmiger Beschleunigung/Abbremsung kanndurch eine der folgenden Methoden gestoppt werden.
1, 2, 3... 1. Der INI(––)–Befehl wird mit C = 003 ausgeführt. (Unmittelbarer Halt.)
2. In der Unabhängig–Betriebsart wird die Anzahl der Ausgabeimpulsen, dieüber PULS(65) spezifiziert wurden, erreicht. (Verlangsamt sich zu einemHalt.)
3. ACC(––) wird mit der Einstellung der Zielfrequenz 0000 (in C+1) ausge-führt.
a) Werden Impulse in der Unabhängig–Betriebsart ausgegeben, verlang-samt sich die Ausgabe mit der Abbremsgeschwindigkeits–Einstellung,die bei Beginn der Impulsausgabe definiert wurde, zu einem Halt.
b) Werden Impulse in der Ununterbrochen–Betriebsart ausgegeben, ver-langsamt sich die Ausgabe mit der spezifizierten Abbremsgeschwindig-keit zu einem Halt.
4. Umschaltung der SPS in die PROGRAM–Betriebsart. (Unmittelbarer Halt.)
In der Unabhängig–Betriebsart wird nur die Anzahl der mit PULS(65) spezifi-zierten Ausgabeimpulse ausgegeben. Die Anzahl der Ausgabeimpulse mussspezifiziert werden, indem PULS(65) vor ACC(––) ausgeführt wird. (Impulsewerden nicht ausgegeben, wenn die Anzahl der Ausgabeimpulse nicht zuvorspezifiziert wurde.)
Impulsfrequenz
Zeit
Die Anzahl der Ausgabeimpulse muss erneut mit PULS(65) spezifiziert werden,nachdem die Impulsausgabe gestoppt wurde.
In der Unabhängig–Betriebsart verlangsamt sich die Impulsausgabe an demPunkt, der durch die vorher eingestellte Anzahl der Ausgabeimpulsen und überdie Beschleunigungs–/Abbremsgeschwindigkeit festgelegt wird. Die Impuls-
Allgemeiner Betrieb
Betrieb in derUnabhängig–Betriebsart
7-27AbschnittImpulsausgabe–Befehle
472
ausgabe wird abgebrochen, nachdem die zuvor eingestellte Anzahl der Ausga-beimpulse ausgegeben wurde.
Impulsfrequenz
Zeit
(Die Anzahl der Ausgabeimpulsen wird immer genau ausgegeben.)
Überschreitet die Anzahl der Ausgabeimpulse, die für die Beschleunigung undAbbremsung erforderlich ist (die benötigte Zeit, um die Zielfrequenz zu errei-chen) die zuvor eingestellte Anzahl der Impulse, wird die Beschleunigung undAbbremsung abgekürzt und die Impulsausgabe ist eher dreieckig statt trapez-förmig.
Impulsfrequenz
Zeit
(Die Anzahl der Ausgabeimpulsen wird immer genau ausgegeben.)
Wird eine hohe Beschleunigungs–/Abbremsgeschwindigkeit und eine niedrigeAnzahl von Ausgabeimpulsen eingestellt, findet keine Beschleunigung und Ab-bremsung statt. (Die Impulsausgabe erfolgt mit einer konstanten Geschwindig-keit.)
Ist (Zielfrequenz ÷ Beschleunigungs–/Abbremsgeschwindigkeit) kein Integer–Wert, wird die spezifizierte Beschleunigungs–/Abbremsgeschwindigkeit ver-größert oder verringert. Im folgenden Beispiel beträgt die Beschleunigung undAbbremsung 10 ms; (1) ist die Beschleunigungs–/Abbremsgeschwindigkeit und(2) die Zielfrequenz.
Impulsfrequenz
Zeit10 ms 10 ms
In der Ununterbrochen–Betriebsart werden Impulse unbegrenzt ausgegeben,bis die Ausgabe gestoppt wird, indem INI(61) mit C=003 oder ACC(––) wiedermit der Zielfrequenz 0000 (in C+1) ausgeführt oder die SPS in die PROGRAM–Betriebsart umgeschaltet wird.
Impulsfrequenz
Zeit
Die folgenden Bedingungen gelten, wenn ACC(––) ausgeführt wird, währendImpulse bereits mit trapezförmiger Beschleunigung/Abbremsung ausgegebenwerden.
• Die Ausführung von ACC(––) hat keine Wirkung, wenn die Impulsausgabe be-schleunigt oder verlangsamt wird.
• Wird ACC(––) ausgeführt, während Impulse in der Ununterbrochen–Betrieb-sart ausgegeben werden, kann die Frequenz auf eine neue Zielfrequenz
Betrieb in derUnunterbrochen–Betriebsart
7-27AbschnittImpulsausgabe–Befehle
473
(0001 bis 1000: 10 Hz bis 10 kHz) mit eingestellter Beschleunigungs–/Ab-bremsgeschwindigkeit geändert werden.
• Werden Impulse in der Unabhängig–Betriebsart ausgegeben, kann die Im-pulsausgabe zu einem Halt verlangsamt werden während, indem ACC(––) miteiner Zielfrequenzeinstellung von 0000 (in C+1) ausgeführt wird. Die Be-schleunigungs–/Abbremsgeschwindigkeit und die Anzahl der Ausgabeimpul-sen werden nicht überprüft oder geändert.
• Die Ausführung von ACC(––) hat keine Wirkung, wenn Impulse durch einender folgenden Befehle ausgegeben werden. (Die Impulsausgabe arbeitet un-verändert weiter.)
Impulse, die über SPED(64) an Ausgang 01000 ausgegeben werden.Impulse, die über SPED(64) an Ausgang 01001 ausgegeben werden.Impulse, die über PWM(––) an Ausgang 01000 ausgegeben werden.Impulse, die über PWM(––) an Ausgang 01001 ausgegeben werden.
Hinweis Stellen Sie sicher, den Status der Impulsausgabe zu überprüfen, bevor SieACC(––) ausführen.
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
P beträgt nicht 000.
M beträgt nicht 000, 002 oder 010 bis 013. (Der Betriebsartenspezifizie-rer wird nur gelesen, wenn die Impulsausgabe gestartet wird.)
ACC(––) wird für ein Bit ausgeführt, das bereits Impulse durchPWM(––) oder SPED(64) ausgibt.
ACC(––) wird in einem Interrupt–Unterprogramm ausgeführt, währendeine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
7-27-4 PULSE WITH VARIABLE DUTY RATIO (Impulsausgabe mitvariablem Tastverhältnis) – PWM(––)
P: Schnittstellenspezifikation
000 oder 010
Kontaktplan–Symbol Datenbereiche
@PWM(––)
P
F
DD: Tastverhältnis
IR, SR, AR, DM, HR, LR, #
F: Frequenz
IR, SR, AR, DM, HR, LR, #
PWM(––)
P
F
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
P muss 000 oder 010 betragen, F einen BCD–Wert zwischen 0001 und 9999und D einen BCD–Wert zwischen 0001 und 0100 besitzen.
Erläuterungen PWM(––) wird dazu verwendet, Impulse mit einem spezifizierten Tastverhältnisüber einen definierten Ausgang auszugeben. Die Impulsausgabe wird fortge-setzt, bis PWM(––) wieder mit einem anderen Tastverhältnis oder INI(61) mitC=003 ausgeführt oder die SPS in die PROGRAM–Betriebsart umgeschaltetwird.
7-27AbschnittImpulsausgabe–Befehle
474
Im allgemeinen sollte PWM(––) nur einmal ausgeführt werden, um die Impuls-ausgabe zu starten; verwenden Sie die Variation mit Flankenausführung(@PWM(––)) oder eine Eingangsbedingung, die nur für einen Zyklus aktiviertist.
Impulse mit variablem Tastverhältnis können gleichzeitig und unabhängig vonzwei Ausgängen ausgegeben werden.
Werden Impulse mit variablem Tastverhältnis von einem Ausgang ausgegebenund wird PWM(––) für diesen Ausgang mit einem anderen Tastverhältnis aus-geführt, werden die Impulse mit dem neuen Tastverhältnis ausgegeben. DieFrequenz kann nicht geändert werden.
PWM(––) kann nicht auf einen Ausgang ausgeführt werden, wenn von diesemAusgang SPED(64)– oder ACC(––)–initierte Impulse ausgegeben werden. EinFehler tritt auf und SR 25503 wird aktiviert, wenn PWM(––) unter diesen Um-ständen ausgeführt wird.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-formationen.
Schnittstellenbezeichner (P)Der Schnittstellenbezeichner spezifiziert das Ausgangsbit, über das die Im-pulse ausgegeben werden.
P Impulsausgabe–Positionen
000 Impulse mit variablem Tastverhältnis, Ausgang 0 (Ausgang 01000)
010 Impulse mit variablem Tastverhältnis, Ausgang 1 (Ausgang 01001)
Frequenz (F)Der 4–stellige BCD–Wert von F spezifiziert die Impulsfrequenz in Einheiten von0,1 Hz. Die Frequenz kann zwischen 0001 und 9999 (0,1 bis 999,9 Hz) spezifi-ziert werden.
Tastverhältnis (D)Der 4–stellige BCD–Wert von D spezifiziert das Tastverhältnis der Impulsaus-gabe, d.h. der Prozentsatz der Zeit, in dem der Ausgang aktiviert ist. Das Tast-verhältnis kann zwischen 0001 und 0100 (1% bis 100%) spezifiziert werden.Das Tastverhältnis beträgt im nachfolgenden Diagramm 75%.
T
ton
ton
T+ D (1% to 100%)
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbereichs-grenze wurde überschritten).
P beträgt nicht 000 oder 010, F besitzt keinen BCD–Wert zwischen0001 und 9999 oder D keinen BCD–Wert zwischen 0001 und 0100. (DieFrequenzeinstellung in F wird nur gelesen, wenn die Impulsausgabegestartet wird.)
PWM(––) wird für einen Ausgang ausgeführt, der bereits durchACC(––)– oder SPED(64)–initiierte Impulse ausgibt.
PWM(––) wird in einem Interrupt–Unterprogramm ausgeführt, wäh-rend eine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
7-27AbschnittImpulsausgabe–Befehle
475
7-27-5 SYNCHRONIZED PULSE CONTROL (SynchronisierteImpulsausgabe) – SYNC(––)
P1: Eingangsschnittstellen–Spezifizierer
000
Kontaktplan–Symbol Datenbereiche
@SYNC(––)
P1
P2
CC: Skalierfaktor
IR, SR, AR, DM, HR, LR, #
P2: Ausgabeschnittstellenbezeichner
000 oder 010
SYNC(––)
P1
P2
C
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C verfügbar.
P1 muss 000 betragen und P2 muss 000 oder 010 betragen.
Erläuterungen SYNC(––) übernimmt die Frequenz der Eingangsimpulse, die über einenSchnellen Zähler–Eingang anliegen, multipliziert mit einem festen Skalierfaktorund gibt Impulse über den spezifizierten Ausgang mit der resultierenden Fre-quenz aus.
Ausgangsfrequenz = Eingangsfrequenz × Skalierfaktor/100
Im allgemeinen sollte SYNC(––) nur einmal dann ausgeführt werden, um diesynchronisierte Impulsausgabe zu spezifizieren; verwenden Sie die Variationmit flankengesteuerter Ausführung (@SYNC(––)) oder eine Eingangsbedin-gung, die nur für einen Zyklus aktiviert ist.
Hinweis Sehen Sie ebenfalls Abschnitt 2-5 Impulsausgabefunktionen für weitere In-formationen.
Eingangsschnittstellenbezeichner (P1)P1 muss immer auf 000 eingestellt sein.
Ausgabeschnittstellenbezeichner (P2)Der Wert von P2 legt fest, wo die skalierte Impulsfrequenz ausgegeben wird.
P2 Impulsausgabe–Positionen
000 Synchronisierter Impulsausgang 0 (Ausgang 01000)
010 Synchronisierter Impulsausgang 1 (Ausgang 01001)
Skalierfaktor (C)Der 4–stellige BCD–Wert von C spezifiziert den Skalierfaktor, mit dem die Ein-gangsfrequenz multipliziert wird. Der Skalierfaktor kann zwischen 0001 und1000 (1 bis 1.000%) eingestellt werden.
Die Zählereingangs–Betriebsart für Eingänge 00000 und 00001 wird in Bits 00bis 03 von DM 6642 eingestellt.
DM 6642, Bits 00 bis 03 Schnelle Zähler–Einstellung
0 Differential–Phasenbetrieb (5 kHz)
1 Impuls– + Richtungseingangs–Betriebsart (20 kHz)
2 Ab–/Aufwärts–Eingangsmodus (20 kHz)
4 Inkrementalmodus (20 kHz)
EingangsfrequenzbereichDer Eingangsfrequenzbereich für die synchronisierte Impulsausgabe wird in
SPS–Konfigurations–einstellungen undallgemeiner Betrieb
7-27AbschnittImpulsausgabe–Befehle
476
Bits 08 bis 15 von DM 6642 eingestellt, wie es in der folgenden Tabelle gezeigtwird.
DM 6642, Bits 08 bis 15 Funktion der Eingänge 00000 und 00001
02 Verwendet für eine synchronisierte Impulsausgabe (10 bis 500Hz)
03 Verwendet für eine synchronisierte Impulsausgabe (20 Hz bis1 kHz).
04 Verwendet für eine synchronisierte Impulsausgabe (300 Hz bis20 kHz).
Es kann keine synchronisierter Impulsausgabe ausgeführt werden, wenn dieEingänge 00000 bis 00003 nicht für eine synchronisierte Impulsausgabe in Bits08 bis 15 (Einstellungen 02, 03 und 04) eingestellt wurden. Ein Fehler tritt aufund SR 25503 wird aktiviert, wenn SYNC(––) ausgeführt wird aber DM 6642nicht für eine synchronisierte Impulsausgabe konfiguriert wurde.
Die schnellen Zähler– und Impulsausgabefunktionen können nicht verwendetwerden, während eine synchronisierte Impulsausgabe aktiv ist. Hierbei tritt einFehler auf und SR 25503 wird eingeschaltet, wenn ein entsprechender Impuls-ausgabebefehl ausgeführt wird, um eine dieser Funktionen aufzurufen.
Überschreitet die Eingangsfrequenz den in der Tabelle gezeigten Maximalwert,wird die höchste Eingangsfrequenz für diesen Bereich verwendet. Fällt die Ein-gangsfrequenz unter den Minimalwert, wird die Eingangsfrequenz 0 Hz verwen-det.
AusgabefrequenzbereichDer Ausgabefrequenzbereich beträgt 10 Hz bis 10 kHz. Überschreitet die er-rechnete Ausgabefrequenz (Eingangsfrequenz × Skalierfaktor/100) 10 kHz,werden Impulse mit 10 kHz ausgegeben. Fällt die errechnete Ausgabefrequenzunter 10 Hz, werden keine Impulse ausgegeben (0 Hz).
Änderung des Skalierfaktors oder der AusgabeschnittstelleDer Skalierfaktor kann geändert werden, während die synchronisierte Impuls-ausgabe aktiv ist, indem der SYNC(––)–Befehl erneut mit einem anderen Ska-lierfaktor ausgeführt ist; der Ausgabeschnittstellenbezeichner kann jedochnicht während des Betriebs geändert werden.
Anhalten der synchronisierten ImpulsausgabeDie synchronisierte Impulsausgabe kann gestoppt werden, indem INI(61) mitC=005 ausgeführt oder die SPS auf die PROGRAM–Betriebsart umgeschaltetwird.
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
P1 beträgt nicht 000, P2 nicht 000 oder 010 bzw. C besitzt keinen BCD–Wert zwischen 0001 und 1000.
SYNC(––) wird ausgeführt, wenn Bits 08 bis 15 von DM 6642 nicht aufeine synchronisierte Impulsausgabe eingestellt sind.
SYNC(––) wird in einem Interrupt–Unterprogramm ausgeführt, wäh-rend eine Impulsausgabe oder ein Schneller Zähler–Befehl (INI(61),PRV(62), CTBL(63), SPED(64), PULS(65), ACC(––), PWM(––) oderSYNC(––)) im Hauptprogramm ausgeführt wird.
7-28AbschnittSpezielle Befehle
477
7-28 Spezielle Befehle
7-28-1 MESSAGE DISPLAY (Meldungsanzeige) – MSG(46)
FM: Erstes Meldungswort
IR, SR, AR, DM, HR, LR
Kontaktplan–Symbol Datenbereiche
MSG(46)
FM
@MSG(46)
FM
DM 6649 bis DM 6655 können nicht für Meldungen benutzt werden.
Ist die Ausführungsbedingung WAHR, liest MSG(46) acht Worte im erweitertenASCII–Codes von FM bis FM+7 und zeigt die Meldung auf der Programmierkon-solenanzeige an. Die angezeigte Meldung ist bis zu 16 Zeichen lang, d.h. jedesASCII–Zeichen erfordert acht Bits. Sehen Sie Anhang G für weitere Informatio-nen bezüglich des ASCII–Codes.
Werden nicht alle acht Worte für die Meldung benötigt, kann die Textausgabe zujedem Zeitpunkt durch Eingabe von “0D” begrenzt werden. Ist 0D Inhalt einerMeldung, werden keine weiteren Worte gelesen und die Worte, die eigentlich fürdie Meldung Verwendung finden würden, können für andere Zwecke benutztwerden.
Bis zu drei Meldungen können im Speicher gepuffert werden. Sie werden dannin der Reihenfolge ihres Eingangs wieder ausgegeben. Da es vorkommen kann,dass in einem Zyklus mehr als drei MSG(46)–Befehle ausgeführt werden, exi-stiert ein Reihenfolge–Schema. Abhängig von dem Speicherbereich, in dem dieMeldung gespeichert ist, wird eine Auswahl über welche dieser Meldungen ge-puffert werden sollen, getroffen.
Die Anzeigenreihenfolge ist wie folgt:
LR > IR > HR > AR > TC > DMStammen alle Meldungen aus dem gleichen Speicherbereich, hat dieMeldung mit der niedrigsten Adresse die höchste Anzeigepriorität.
Bei der Verarbeitung indirekt adressierter Meldungen (d.h. *DM) besit-zen die mit den niedrigen DM–Adressen höhere Priorität.
Um die Meldungen zu löschen muss FAL(06) ausgeführt werden. Die Meldun-gen können auch über die Programmkonsole oder die Programmiersoftwaregelöscht werden.
Ändert sich der Dateninhalt, ändert sich auch unmittelbar die Anzeige.
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
Beschränkungen
Erläuterungen
Meldungs–Puffer undAnzeigepriorität
Löschen der Meldungen
MSGABCDEFGHIJKLMNOP
!
7-28AbschnittSpezielle Befehle
478
Im folgenden Bespiel wird die Meldung bei über 00000 = EIN angezeigt. Sie wirdgelöscht, sobald 00001 gesetzt wird.
MSG(46)
DM 0010
FAL(06) 00
00000
00001
Adresse Befehl Operanden
00000 LD 00000
00001 MSG(46)
DM 0010
00002 LD 00001
00003 FAL(06) 00
DM–Inhalt ASCIIÄquivalent
DM 0010 4 1 4 2 A B
DM 0011 4 3 4 4 C D
DM 0012 4 5 4 6 E F
DM 0013 4 7 4 8 G H
DM 0014 4 9 4 A I J
DM 0015 4 B 4 C K L
DM 0016 4 D 4 E M N
DM 0017 4 F 5 0 O P
7-28-2 I/O REFRESH (E/A–Auffrischung) – IORF(97)
St: Anfangswort
IR 000 bis IR 019
Kontaktplansymbol
E: Endwort
IR 000 bis IR 019
Datenbereiche
IORF(97)
St
E
Hinweis Dieser Befehl wird nicht von SRM1(–V2)–SPS–Systemen unterstützt.
Beschränkungen St muss ≤ E sein.
Um E/A–Worte aufzufrischen, muss das erste (St) und letzte (E) E/A–Wort spe-zifiziert werden. Ist die Ausführungsbedingung für IORF(97) WAHR, werden alleWorte zwischen (St) und (E) aufgefrischt. Dies geschieht zusätzlich zur norma-len E/A–Auffrischung, die während jedes Programmzyklus ausgeführt wird.
(Ist St > E, wird IORF(97) als NOP(00) behandelt.)
Normalerweise wird die E/A–Auffrischung nur einmal pro Zyklus am Ende derProgrammausführung ausgeführt, aber IORF(97) kann dazu verwendet wer-den, E/A–Worte sofort während der Programmausführung zu auffrischen.
Vorsicht Obwohl IORF(97) in Interrupt–Unterprogrammen verwendet werden kann,müssen Sie bezüglich des IORF(97)–Ausführungsintervalls vorsichtig sein.Wird IORF(97) zu häufig ausgeführt, kann ein schwerwiegender Systemfehler(FALS 9F) auftreten, wodurch der Betrieb abgebrochen wird. Der Abstand zwi-schen den Ausführungen von IORF(97) sollte mindestens 1,3 ms + gesamteAusführungszeit des Interrupt–Unterprogramms betragen.
Merker ER: St oder E ist nicht innerhalb des erlaubten Bereichs (IR 000 bis IR 019).
St ist größer als E (ist St > E, wird IORF(97) als NOP(00) behandelt).
Der Befehl hat keine Auswirkungen auf Merker.
Beispiel
Erläuterungen
7-28AbschnittSpezielle Befehle
479
7-28-3 BIT COUNTER (Bits zählen) – BCNT(67)
N: Anzahl der Worte (BCD)
IR, SR, AR, DM, HR, TC, LR, #
SB: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
Datenbereiche
R: Zielwort
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol
BCNT(67)
N
SB
R
@BCNT(67)
N
SB
R
Hinweis BCNT(67) ist ein Erweiterter Befehl in der CPM2A/CPM2C und SRM1(–V2).Der Funktions–Code 67 ist werkseitig voreingestellt und kann, falls gewünscht,geändert werden.
Beschränkungen N kann nicht den Wert 0 annehmen.
DM 6144 bis DM 6655 können nicht für R verwendet werden.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird BCNT(67) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, zählt BCNT(67) die Gesamtzahl aller Bits allerWorte zwischen SB und SB+(N–1), die auf EIN gesetzt sind. Das Ergebnis wirdin R ausgegeben.
Merker ER: N ist keine BCD–Zahl bzw. N ist gleich 0; SB und SB+(N–1) befindensich nicht im gleichen Datenbereich.
Eine DM–Adresse wird für SB verwendet, aber SB bis SB+ (N–1) befin-den sich nicht alle in Lese/Schreib–DM–Bereich.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
EQ: Auf EIN gesetzt, wenn das Ergebnis 0 ist.
7-28-4 FRAME CHECKSUM (Rahmenprüfsumme berechnen) – FCS(––)
C: Steuerdaten
IR, SR, AR, DM, HR, LR, #
R1: Erstes Wort des Bereiches
IR, SR, AR, DM, HR, TC, LR
Kontaktplan–Symbol Datenbereiche
D: Erstes Zielwort
IR, SR, AR, DM, HR, LR
FCS(––)
C
R1
D
@FCS(––)
C
R1
D
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C/SRM1(–V2) verfügbar.
Die drei äußersten rechten Stellen von C müssen als BCD–Wert zwischen 001und 999 spezifiziert werden.
DM 6144 bis DM 6655 können nicht für D verwendet werden.
Erläuterungen FCS(––) dient zur Überwachung der Datenübertragung über Kommunikations-schnittstellen.
7-28AbschnittSpezielle Befehle
480
Ist die Ausführungsbedingung FALSCH, wird FCS(––) nicht ausgeführt. Ist dieAusführungsbedigung WAHR, berechnet FCS(––) die Rahmenprüfsumme desspezifizierten Bereichs. Dazu werden die Inhalte der Worte R1 bis R1+N–1 bzw.die Bytes in den Worten R1 bis R1+N–1 durch ein exklusives ODER miteinanderverknüpft. Der Rahmenprüfsummenwert (Hexadezimalzahll) wird anschlie-ßend in das ASCII–Format konvertiert und über die Zielworte (D and D+1) aus-gegeben.
Die Funktion der Bits des Wortes C ist im folgenden Diagramm dargestellt undwird anschließend ausführlich erläutert:
15 14 13 12 11 00
Anzahl der Bytes/Worte des Bereichs (N, BCD) 001 bis 999 Worte oder Bytes.
Erstes Byte (Bit 13 gesetzt):1 (gesetzt): äußerst rechten Stellen0 (rückgesetzt): äußerst linken Stellen
Berechnungseinheiten1 (gesetzt): Bytes0 (zurückgesetzt): Worte
C:
Nicht verwendet (auf 0 gesetzt).
Anzahl der Bytes/Worte Die Anzahl der Bytes/Worte des Bereichs (N) wird in den drei äußerst rechtenStellen von C spezifiziert und muss ein BCD–Wert zwischen 001 und 999 sein.
Berechungseinheiten Ist Bit 13 zurückgesetzt, wird die wortweise Rahmenprüfsumme berechnet. IstBit 13 gesetzt, wird die byteweise Rahmenprüfsumme berechnet.
Bei der Spezifikation von Bytes kann der Bereich mit dem äußerst linken bzw.rechten Byte von R1 beginnen. Das äußerste linke Byte von R1 wird ignoriert,wenn Bit 12 gesetzt ist.
MSB LSB
R1 1 2
R1+1 3 4
R1+2 5 6
R1+3 7 8
Ist Bit 12 auf AUS gesetzt, werden die Bytes in der folgenden Reihenfolge XOR–verknüpft: 1, 2, 3, 4, ....
Ist Bit 12 auf EIN gesetzt, werden die Bytes in der folgenden Reihenfolge XOR–verknüpft: 2, 3, 4, 5, ....
ASCII–Konvertierung Das Ergebnis der byteweisen Rahmenprüfsummen–Berechnung ist ein 2–stel-liger Hexadezimalwert, der anschließend in den entsprechenden 4–stelligenASCII–Wert konvertiert wird. Bei der wortweisen Rahmenprüfsummen–Be-rechnung wird ein 4–stelliger Hexadezimalwert ausgegeben, der, wie nachste-hend dargestellt, in den entsprechenden 8–stelligen ASCII–Wert konvertiertwird.
3 4 4 1
Byte–Rahmenprüfsummen–Wert
D
4A
4 6 3 1
Wort–Rahmenprüfsummen–Wert
D
F10B
3 0 4 2D+1
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
7-29AbschnittInterrupt–Verarbeitungsbefehle
481
Der Anzahl der Bytes/Worte–BCD–Wert liegt nicht im Bereich zwischen001 bis 999.
Beispiel Ist im folgenden Beispiel IR 00000 gesetzt, wird die Rahmenprüfsumme (0008)für die 8 Worte von DM 0000 bis DM 0007 berechnet und der entsprechendeASCII–Wert (30 30 30 38) in DM 0010 und DM 0011 gespeichert.
@FCS(––)
DM 0000
#0008
00000
DM 0010
Adresse Befehl Operanden
00000 LD 00000
00001 @FCS(––)
# 0008
DM 0000
DM 0010
DM 0000 0001
DM 0001 0002
DM 0002 0003
DM 0003 0004
DM 0004 0005
DM 0005 0006
DM 0006 0007
DM 0007 0008
0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
0 800
Rahmenprüfsum-men–Berechnung
3 0 3 8DM 00103 0 3 0DM 0011
Konver-tierungin denASCII–Code
7-29 Interrupt–VerarbeitungsbefehleDieser Abschnitt beschreibt die Funktion der Befehle INT(89) und STIM (69).Sehen Sie zur Interrupt–Verarbeitung in den SPS–Systemen der SerienCPM1/CPM1A, CPM2A/CPM2C oder SRM1(–V2) den in der folgenden Tabellegezeigten Abschnitt.
SPS Beschreibung
CPM1/CPM1A Sehen Sie Abschnitt 2-3 CPM1–/CPM1A–Interruptfunktionen.
CPM2A/CPM2C Sehen Sie Abschnitt 2-1 CPM2A–/CPM2C–Interruptfunktionen.
SRM1(-V2) Sehen Sie Abschnitt 2-4 SRM1–Interrupt–Funktionen.
7-29-1 INTERRUPT CONTROL (Interrupt–Steuerung) – INT(89)
C1: Steuercode
# (000 bis 004, 100 oder 200)
000: Keine Funktion
000
Kontaktplan–Symbol
Datenbereiche
C2: Steuerdaten
IR, SR, AR, DM, HR, TC, LR, #
INT(89)
C1
000
C2
@INT(89)
C1
000
C2
Hinweis Dieser Befehl wird nicht von SRM1(–V2)–SPS–Systemen unterstützt.
Beschränkungen DM 6144 bis DM 6655 können nicht für C2 verwendet werden, wenn C1=002 ist.
Ist die Auführungsbedingung FALSCH, wird INT(89) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, wird INT(89) zur Steuerung von Interrupts ver-
Erläuterungen
7-29AbschnittInterrupt–Verarbeitungsbefehle
482
wendet und führt eine der sieben, im folgenden gezeigten Funktionen aus, ab-hängig vom Wert von C1.
C1 INT(89)–Funktion
000 Maskieren/demaskieren von eingangsgesteuerten Interrupts
001 Eingangsgesteuerte Interrupts löschen
002 Gegenwärtigen Maskenzustand von eingangsgesteuerten Interruptslesen
003 Abwärtszähler neu starten, eingangsgesteuerte Interrupts demaskie-ren
004* Aufwärtszähler neu starten, eingangsgesteuerte Interrupts demaskie-ren
100 Maskieren aller Interrupts
200 Löschen der Maskierung aller Interrupts
Hinweis *Diese Einstellung kann nur in den CPM2A/CPM2C–SPS–Systemen verwen-det werden.
Diese Funktion wird dazu verwendet, die Interrupt–Eingänge 00003 bis 00006zu maskieren und zu demaskieren. Zustände maskierter Eingänge werden ge-speichert, aber nicht ausgeführt. Ist ein Eingang maskiert, wird dessen Inter-rupt–Unterprogramm gestartet, sobald das Zustandsbit demaskiert wird (es seidenn, es wird zuvor durch Ausführung von INT(89) mit C1=001 gelöscht).
Setzen Sie das ensprechende Bit in C2 auf 0 oder 1, um einen eingangsgesteu-erten Interrupt zu maskieren bzw. zu demaskieren. Bits 00 bis 03 entsprechenden Eingängen 00003 bis 00006. Die Bits 04...15 sollten auf Null gesetzt wer-den.
Interrupt–Eingang 00003 (0: demaskieren, 1: maskieren)Interrupt–Eingang 00004 (0: demaskieren, 1: maskieren)Interrupt–Eingang 00005 (0: demaskieren, 1: maskieren)Interrupt–Eingang 00006 (0: demaskieren, 1: maskieren)
Wort C2–Bits: 3 2 1 0
Alle eingangsgesteuerten Interrupts werden bei Beginn des SPS–Betriebsmaskiert; um eingangsgesteuerte Interrupts zu verwenden, müssen die Inter-rupts demaskiert werden.
Diese Funktion wird dazu verwendet, die Interrupts der Interrupt–Eingänge00003 bis 00006 zu löschen. Durch das Zurücksetzen wird verhindert, dassbeim Aufheben der Maskierung eines Interrupts, das zum Interrupt gehörendeUnterprogramm, aufgerufen wird.
Das Zurücksetzen eines eingangsgesteuerten Interrupts erfolgt durch Setzendes entsprechenden Maskenbits des Wortes C2. Bits 00 bis 03 entsprechenden Eingängen 00003 bis 00006. Die Bits 04...15 sollten auf Null gesetzt wer-den.
Wort C2–Bits: 3 2 1 0
Interrupt–Eing. 00003 (0: n. zurücksetzen, 1: zurücksetzen)Interrupt–Eing. 00004 (0: n. zurücksetzen, 1: zurücksetzen)Interrupt–Eing. 00005 (0: n. zurücksetzen, 1: zurücksetzen)Interrupt–Eing. 00006 (0: n. zurücksetzen, 1: zurücksetzen)
Diese Funktion liest den gegenwärtigen Maskierungszustand der Interrupt–Ein-gänge 00003 bis 00006 und schreibt diese Informationen in Wort C2. Das ent-sprechende Bit wird gesetzt, wenn der Eingang maskiert ist. Bits 00 bis 03 ent-sprechen den Eingängen 00003 bis 00006.
Wort C2–Bits: 3 2 1 0
Interrupt–Eingang 00003 (0: nicht maskiert, 1: maskiert)Interrupt–Eingang 00004 (0: nicht maskiert, 1: maskiert)Interrupt–Eingang 00005 (0: nicht maskiert, 1: maskiert)Interrupt–Eingang 00006 (0: nicht maskiert, 1: maskiert)
EingangsgesteuerteInterruptsmaskieren/demaskieren(C1=000)
EingangsgesteuerteInterrupts (C1=001) löschen
AktuellenMaskierungsstatus(C1=002) lesen
7-29AbschnittInterrupt–Verarbeitungsbefehle
483
Diese Funktionen werden dazu verwendet, eingangsgesteuerte Interrupts(Zählmodus) neuzustarten, indem man den Zähler–Sollwert (in SR 240 bis SR243) auffrischt und den Interrupt–Eingang (00003 bis 00006) demaskiert.
Setzen Sie C1=3, um die Abwärtszähler neu zu starten oder C1=4 (nur CPM2A/CPM2C SPS), um die Aufwärtszähler neu zu starten.
Setzen Sie das entsprechende Bit in C2 auf 0, um den Zähler–Sollwert des Ein-gangs aufzufrischen und den eingangsgesteuerten Interrupt zu demaskieren.Die Bits 00 bis 03 entsprechen den Eingängen 00003 bis 00006.
Zähler, Interrupt–Eingang 00003Zähler, Interrupt–Eingang 00004Zähler, Interrupt–Eingang 00005Zähler, Interrupt–Eingang 00006
Wort C2–Bits: 3 2 1 0
Verwenden Sie die Variation mit flankengesteuerter Ausführung (@INT(89))oder eine Eingangsbedingung, die nur für einen Zyklus aktiviert ist, wenn SieINT(89) mit C1=003 oder C1=004 ausführen. Während der Zähler arbeitet, wirdder Zähler–Istwert auf den Sollwert zurücksetzt, wenn INT(89) ausgeführt wird,deshalb wird der Interrupt nie generiert, wenn INT(89) jeden Zyklus ausgeführtwird.
Wird INT(89) mit C1=003 oder C1=004 ausgeführt und enthält das Sollwert–Wort einen Sollwert ungleich Null (0001 bis FFFF), wird der entsprechende Zäh-ler (Abwärts/Aufwärts) gestartet und der entsprechende Interrupt in dem Zähl-modus aktiviert. Erreicht die Zählung den Sollwert, wird ein Interrupt generiertund der Istwert wird auf den Sollwert zurückgesetzt; Interrupts werden deshalbwiederholt generiert, bis der Zähler gestoppt wird.
Das Schreiben von 0000 auf das Sollwert–Wort eines Zählers (SR 240 bis SR243) und das Ausführen von INT(89), um den Sollwert aufzufrischen, hält denZähler an und deaktiviert den entsprechenden Interrupt. Schreiben Sie einenSollwert ungleich Null in das Sollwert–Wort und führen Sie INT(89) aus, um denZähler neu zu starten. (Die Sollwert–Worte werden bei Beginn des SPS–Be-triebs auf 0000 zurückgesetzt, somit muss der Sollwert des Zählers vom Kon-taktplanprogramm in das Sollwert–Wort geschrieben werden.)
Wurde bereits ein Interrupt aktiviert (demaskiert), kann der Sollwert nicht auf-frischt werden, indem man nur einen neuen Wert ins Sollwert–Wort schreibt. Fri-schen Sie den Sollwert auf, indem Sie INT(89) mit C1=003 ausführen (C1=004für einen Aufwärtszähler).
Ein Zählmodus–Interrupt kann maskiert werden, indem Sie INT(89) mit C1=000ausführen und das entsprechende Bit in C2 auf 1 setzen; ein Eingang arbeitet imeingangsgesteuerten Interrupt–Modus nicht im Zählmodus, wenn das entspre-chende Bit in C2 auf 0 gesetzt wird.
Alle Interrupts (eingangsgesteuerte Interrupts, Intervall–Zeitgeber–gesteuerteInterrupts und zählergesteuerte Interrupts) können als Gruppe maskiert oderdemaskiert werden, indem Sie INT(89) mit C1=100 oder C1=200 ausführen.Maskierte, eingangsgesteuerte Interrupts werden gespeichert, aber nicht aus-geführt.
Die globale Maske wird zusätzlich zu beliebigen Masken auf die individuellenInterrupt–Arten angewendet. Überdies löscht das Zurücksetzen der Masken al-ler Interrupts nicht die Masken der individuellen Interrupt–Arten, aber stellt fürdiese die maskierenden Bedingungen wiederher, die existierten, bevor INT(89)ausgeführt wurde, um sie als Gruppe zu maskieren.
Verwenden Sie nicht INT(89), um Interrupts zu maskieren, es sei denn, dass eserforderlich ist, alle Interrupts vorläufig zu maskieren. Verwenden SieINT(89)–Befehle immer in Paaren; verwenden Sie den ersten INT(89)–Befehl,um alle Interrupts zu maskieren und den zweiten Befehl, um alle zu demaskie-ren.
INT(89) kann nicht dazu verwendet werden, alle Interrupts innerhalb von Inter-rupt–Routinen zu maskieren und diese zu demaskieren.
Zähler–Neustart undDemaskieren eineseingangsgesteuertenInterrupts(C1=003 oder C1=004)
Maskierung oderDemaskieren allerInterrupts(C1=100 oder C1=200)
7-29AbschnittInterrupt–Verarbeitungsbefehle
484
Maskieren von Interrupts (C1=100)Verwenden Sie den INT(89)–Befehl mit C1=100, um alle Interrupts zu maskie-ren.
(@)INT(89)
100
000
000
Wird ein Interrupt generiert, während Interrupts maskiert werden, wird die Inter-rupt–Verarbeitung nicht ausgeführt, aber der Interrupt wird für den Eingang, denIntervall–Zeitgeber und den Schnellen Zähler gespeichert. Die Interrupts wer-den ausgeführt, sobald die Interrupts demaskiert sind.
Demaskieren von Interrupts (C1=200)Verwenden Sie den INT(89)–Befehl mit C1=200 , um Interrupts wie folgt zu de-maskieren:
(@)INT(89)
200
000
000
Merker ER: Eine Datenbereichsgrenze wird überschritten.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–Wortes ist nicht im BCD–Format oder die Datenbereichsgrenze wurdeüberschritten).
C1 ist nicht auf 000 bis 004,100 oder 200 gesetzt.
C2 ist nicht auf 0000 bis 000F gesetzt.
INT(89) wurde mit C1=100 oder C1=200 ausgeführt, während ein Inter-rupt–Programm ausgeführt wurde.
INT(89) wurde mit C1=100 ausgeführt, nachdem schon alle Interruptsmaskiert wurden.
C1=200, wenn bereits alle Interrupts demaskiert wurden.
7-29-2 INTERVAL TIMER (Intervall–Zeitgeber) – STIM(69)
C1: Steuerdaten #1
000, 003, 006, 010
Kontaktplan–Symbol Datenbereiche
@STIM(69)
C1
C2
C3C3: Steuerdaten #3
IR, SR, AR, DM, HR, TC, LR, #
C2: Steuerdaten #2
IR, SR, AR, DM, HR, TC, LR, #
STIM (69)
C1
C2
C3
Hinweis STIM(69) ist ein Erweiterter Befehl in der CPM2A/CPM2C und SRM1(–V2). DerFunktions–Code 69 ist werkseitig voreingestellt und kann, falls gewünscht, ge-ändert werden.
C1 muss auf 000, 003, 006 oder 010 gesetzt sein.
Ist C1=000 oder 003, stellt C3 eine Unterprogrammnummer (BCD–Wert) bis zu0049 dar.
Beschränkungen
7-29AbschnittInterrupt–Verarbeitungsbefehle
485
Ist C1=006, können keine Konstanten für C2 oder C3 verwendet werden.Ist C1 = 010, müssen sowohl C2 als auch C3 auf 000 gesetzt werden.
Erläuterungen STIM (69) steuert mit Hilfe von vier Basisfunktionen die Intervall–Zeitgeber:Starten des Zeitgebers im Wischermodus (einmalig), Starten des Zeitgebers mitzeitgesteuertem, periodischen Interrupt, Anhalten des Zeitgebers und Lesendes Zeitgeber–Istwertes. Spezifizieren Sie den Wert von C1 entsprechend demin der nachfolgenden Tabelle gezeigten Code, um die jeweilige Funktion auszu-führen. Sehen Sie Kapitel 2 Besonderheiten für eine detailliertere Beschreibungder Intervall–Zeitgeber–Interrupts. STIM(69) wird nach der Tabelle in Einzelhei-ten beschrieben.
C1–Wert Funktion
000 Startet den Wischer–Interrupt–Zeitgeber (einmalig)
003 Startet den zeitgesteuerten Interrupt–Zeitgeber (periodisch)
006 Liest den Zeitgeber–Istwert
010 Stoppt den Zeitgeber
Setzen Sie C1 auf 000, um den Wischer–Interrupt–Zeitgeber (einmalig) zu akti-vieren. Setzen Sie C1 auf 003, um den zeitgesteuerten Interrupt–Zeitgeber (pe-riodisch) zu starten.
C2, das den Sollwert des Zeitgebers spezifiziert, kann als Konstante eingege-ben werden oder als Adresse des ersten von zwei Worten, die den entsprechen-den Sollwert enthalten. Die Einstellungen unterscheiden sich je nach ange-wandter Methode geringfügig.
C2 = KonstanteIst C2 eine Konstante, spezifiziert sie den Sollwert des Abwärtszählers alsBCD–Wert. Der Einstellbereich beträgt 0000 bis 9999 (0 bis 9.999 ms). (DieZeiteinheit beträgt 1 ms.)
C3 spezifiziert die Unterprogrammnummer: 0000 bis 0049.
C2 = WortadresseIst C2 eine Wortadresse, enthält C2 den Sollwert des Abwärtszählers (BCD–Wert, 0000 bis 9999).Der Inhalt von C2+1 spezifiziert die Zeiteinheiten (BCD–Wert, 0005 bis 0320) inEinheiten von 0,1 ms. so daß es Werte zwischen 0,5 bis 32 ms einnehmen kann.
Der Zeitgeber–Sollwert ist: (Inhalt von C2) Z (Inhalt von C2+1) ms Z 0,1 ms
C3 spezifiziert die Unterprogrammnummer: 0000 bis 0049.
Setzen Sie C1 auf 006, um den Zeitgeber–Istwert zu lesen.
C2 spezifiziert das erste von zwei Zielworten, die die Adressaten der Istwerteder Zeitgebers darstellen. C2 enthält den Zählwert des Abwärtszählers (BCD,0000 bis 9999) und C2+1 die Zeiteinheiten (BCD in 0,1 ms–Einheiten).
C3 spezifiziert das Zielwort, in dem die Zeit gespeichert wird, die seit dem letztenDekrementieren des Zeitgebers vergangen ist (BCD in 0,1 ms–Schritten).
Hinweis Die Gesamtzeit, die seit dem Start des Zeitgebers verstrichen ist, berechnetsich wie folgt:((Inhalt von C2) Z (Inhalt von C2 +1)) + ((Inhalt von C3) Z 0,1 ms.
Setzen Sie C1 auf 010, um den Zeitgeber anzuhalten. C2 und C3 haben in die-sem Zusammenhang keine Funktion und sollten auf 000 gesetzt werden.
Merker ER: C1 ist nicht auf 000, 003, 006 oder 010 gesetzt.
Eine spezifizierte Unterprogrammnummer liegt nicht zwischen 0000und 0049.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
Eine Datenbereichsgrenze wurde überschritten.
Starten desInterrupt–Zeitgebers(C1= 000 oder 003)
Lesen desZeitgebers–Istwertes(C1=006)
Anhalten des Zeitgebers(C=010)
!
7-30AbschnittKommunikationsbefehle
486
7-30 Kommunikationsbefehle
7-30-1 RECEIVE (Empfangen) – RXD(47)
D: Erstes Zielwort
IR, SR, AR, DM, HR, TC, LR
C: Steuerwort
#
Kontaktplan–Symbol Datenbereiche
N: Byteanzahl
IR, SR, AR, DM, HR, TC, LR, #
RXD(47)
D
C
N
@RXD(47)
D
C
N
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
D und D+(N÷2)–1 müssen sich im gleichen Datenbereich befinden.
Der Datenwortbereich DM 6144 bis DM 6655 kann nicht für D oder N verwendetwerden.
N muss ein BCD–Wert zwischen #0000 und #0256 sein (#0000 bis #0061 in derHost–Link–Betriebsart).
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird RXD(––) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, liest RXD(––) N Datenbytes, die über die imSteuerwort spezifizierte Schnittstelle empfangen wurden und speichert die Da-ten in den Worten D bis D+(N÷2)–1. Es können maximal 256 Datenbytes auf ein-mal gelesen werden.
Werden weniger als N Bytes empfangen, wird nur die empfangene Anzahl vonBytes gelesen.
Hinweis Sehen Sie Abschnitt 4-1 Kommunikationsfunktionen für weitere Informationenüber den RXD(47)–Befehl, Kommunikationseinstellungen, usw.
Vorsicht Werden die empfangenen Daten nicht über den RXD(––)–Befehl gelesen, kanndie SPS nach Übertragung von 256 Bytes keine weiteren Daten mehr empfan-gen. Nach dem Setzen des EMPFANG–ABGESCHLOSSEN–Merkers (AR0806 für die RS–232C–Schnittstelle und AR 0814 für die Peripherieschnitt-stelle) sollten die betreffenden Daten daher möglichst bald gelesen werden.
Steuerwort Der Wert des Steuerwortes spezifiziert die Schnittstelle, von der Daten gelesen,sowie die Reihenfolge, in der die Daten in den Speicher übertragen werden.
Byte–Reihenfolge0: Die höchstwertigen Bytes zuerst1: Die geringstwertigen Bytes zuerst
Nicht verwendet (auf Null gesetzt)
Schnittstelle0: RS-232C–Schnittstelle1: Peripherieschnittstelle
Stellen: 3 2 1 0
7-30AbschnittKommunikationsbefehle
487
Die Reihenfolge, in der die Daten in den Speicher übertragen werden, ist vomWert der Stelle 0 des Steuerwortes C abhängig. Die acht Datenbytes12345678... werden folgendermaßen gespeichert:
MSB LSB
D 1 2
D+1 3 4
D+2 5 6
D+3 7 8
Stelle 0 = 0MSB LSB
D 2 1
D+1 4 3
D+2 6 5
D+3 8 7
Stelle 0 = 1
Merker ER: Die Einstellungen in C sind nicht richtig.
N ist größer als 256.
Die SPS–Konfiguration ist nicht auf den Ohne–Protokoll–Modus einge-stellt.
RXD (47) wird bereits ausgeführt.
AR 08: AR 0806 wird gesetzt, wenn Daten über die RS–232C–Schnittstelleohne Fehler empfangen wurden und wird nach der Ausführung vonRXD(47) zurückgesetzt.AR 0814 wird gesetzt, wenn Daten über die Peripherieschnittstelleohne Fehler empfangen wurden und wird nach der Ausführung vonRXD(47) zurückgesetzt.
AR 09: Enthält die Anzahl der Bytes, die über die RS–232C–Schnittstelle emp-fangen wurden, und wird nach der Ausführung von RXD(47) auf 0000zurückgesetzt.
AR 10: Enthält die Anzahl der Bytes, die über die Peripherieschnittstelle emp-fangen wurden, und wird nach der Ausführung von RXD(47) auf 0000zurückgesetzt.
Hinweis Kommunikationsmerker und Zähler werden durch Spezifikation von 0000 für Noder über die Schnittstellen–Rücksetzbits (SR 25208 für die Peripherie– undSR 25209 für die RS–232C–Schnittstelle) zurückgesetzt.
7-30-2 TRANSMIT (Daten senden) – TXD(48)
S: Erstes Quellwort
IR, SR, AR, DM, HR, TC, LR
C: Steuerwort
#
Kontaktplan–Symbol Datenbereiche
N: Byteanzahl
IR, SR, AR, DM, HR, TC, LR, #
TXD(48)
S
C
N
@TXD(48)
S
C
N
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
S und S+(NP2)–1 müssen sich im gleichen Datenbereich befinden.
Der Datenwortbereich DM 6144 bis DM 6655 kann für S oder N nicht verwendetwerden.
N muss ein BCD–Wert zwischen #0000 und #0256 sein (#0000 bis #0061 in derHost–Link–Betriebsart).
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird TXD(48) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, liest TXD(48) N Datenbytes von den Worten S
7-30AbschnittKommunikationsbefehle
488
bis zu S+(N÷2)–1, konvertiert diese in ASCII und gibt die Daten über die spezifi-zierte Schnittstelle aus. Die Funktionsweise von TXD(48) ist von der Betriebsart(Host–Link bzw. R–232C) abhängig. Daher werden diese einzeln beschrieben.
Hinweis 1. Der Merker AR 0805 wird gesetzt, wenn die SPS Daten über die RS–232C–Schnittstelle übertragen kann. Ist AR 0813 gesetzt, kann die SPS Datenüber die Peripheriegeräteschnittstelle übertragen.
2. Sehen Sie Abschnitt 4-1 Kommunikationsfunktionen für weitere Informatio-nen über den RXD(47)–Befehl, Kommunikationseinstellungen, usw.
Host–Link–Betriebsart N muss ein BCD–Wert zwischen #0000 bis #0061 (d.h. bis zu 122 Bytes imASCII–Format) enthalten. Der Wert des Steuerwortes bestimmt die Schnitt-stelle, über die Daten ausgegeben werden (siehe folgende Abbildung).
Nicht verwendet (auf 000 gesetzt).
Schnittstelle 0: spezifiziert RS-232C.1: spezifiziert Peripherieschnittstelle
Stellen: 3 2 1 0
Die spezifizierte Byteanzahl wird aus S bis S+(N/2)–1 gelesen und über die spe-zifizierte Schnittstelle übertragen. Die Bytes der nachfolgend dargestelltenQuelldaten werden in der Reihenfolge: 12345678... übertragen.
MSB LSB
S 1 2
S+1 3 4
S+2 5 6
S+3 7 8
Die folgende Abbildung zeigt das Format des von der CPM2A/CPM2C gesen-deten Host–Link–Befehls (TXD). Präfixe und Suffixe, wie z.B. Teilnehmernum-mern, Header und Rahmenprüfsumme, werden von der CPM2A/CPM2C auto-matisch generiert.
@ E X ......... ∗ CR
Header Code
Daten (max. 122 ASCII–Zeichen) Rahmenprüfsumme
Stations–Nummer
Abschluß–zeichen
RS-232C–Betriebsart N muss ein BCD–Wert zwischen #0000 und #0256 sein. Der Wert des Steuer-wortes bestimmt die Schnittstelle, über die Daten ausgegeben, sowie die Rei-henfolge, in der die Daten übertragen werden.
Steuerwort Der Wert des Steuerwortes spezifiziert die Schnittstelle, über die die Daten ge-sendet sowie die Reihenfolge, in der die Daten übertragen werden.
Byte–Reihenfolge0: Höchstwertige Bytes zuerst1: Niederwertige Bytes zuerst
Nicht verwendet (auf Null gesetzt).
Schnittstelle0: spezifiziert RS-232C.1: spezifiziert Peripherieschnittstelle
Stellen: 3 2 1 0
7-30AbschnittKommunikationsbefehle
489
Die spezifizierte Anzahl der Bytes wird aus S bis S+(N/2)–1 gelesen und überdie definierte Schnittstelle übertragen.
MSB LSB
S 1 2
S+1 3 4
S+2 5 6
S+3 7 8
Enthält Stelle 0 des Wortes C eine 0, werden die Bytes der zuvor dargestelltenQuelldaten in der Reihenfolge 12345678... übertragen.
Enthält Stelle 0 des Wortes C eine 1, werden die Bytes der zuvor dargestelltenQuelldaten in der Reihenfolge 21436587... übertragen.
Hinweis Werden Start– und Endecodes spezifiziert, muss die gesamte Datenlänge,einschließlich der Start– und Endecodes, maximal 256 Bytes betragen.
Merker ER: Die Einstellungen in C sind nicht richtig.
N beträgt mehr als 256 für den Ohne–Protokoll–Modus oder mehr als61 für den für Host–Link–Modus.
Die SPS–Konfiguration ist nicht auf den richtigen Kommunikationsmo-dus eingestellt.
Indirekt adressiertes DM–Wort ist nicht vorhanden. (Der Inhalt des*DM–Wortes liegt nicht im BCD–Format vor oder die Datenwortbe-reichsgrenze wurde überschritten).
TXD(48) wird bereits ausgeführt.
AR 08: AR 0805 wird gesetzt, wenn Daten über die RS–232C–Schnittstelleübertragen werden können. AR 0813 wird gesetzt, wenn Daten über diePeripherieschnittstelle übertragen werden können.
7-30-3 CHANGE RS-232C SETUP (RS–232C–Konfiguration ändern) –STUP(––)
N: RS-232C–Spezifikation
000
S: Erstes Quellwort
IR, SR, AR, DM, HR, LR, #
Kontaktplan–Symbol Datenbereiche
STUP(––)
N
S
@STUP(––)
N
S
Der dritte Operand wird ignoriert.– –
Beschränkungen Dieser Befehl ist nur in der CPM2A/CPM2C und SRM1(–V2) verfügbar.
N muss den Wert 000 besitzen.
S und S+4 müssen sich im gleichen Datenbereich befinden.(S kann auf #0000 gesetzt werden, um die RS–232C–Schnittstelle auf die Vor-gabewerte zurückzusetzen.)
STUP(––) kann nicht in einem Unterprogramm ausgeführt werden.
Erläuterungen Ist die Ausführungsbedingung FALSCH, wird STUP(––) nicht ausgeführt. Ist dieAusführungsbedingung WAHR, ändert STUP(––) die Konfigurationseinstellun-gen für die integrierte RS–232C–Schnittstelle. Die Einstellungen werden in derSPS–Konfiguration geändert, aber sie werden nicht in Flash–Speicher ge-
7-30AbschnittKommunikationsbefehle
490
schrieben, bis die SPS in die PROGRAM–Betriebsart umgeschaltet (von derRUN– oder MONITOR–Betriebsart) oder die SPS aus– und anschließend wie-der eingeschaltet wird.
In SPS–Systemen der CPM2A/CPM2C und SRM1(–V2) Serien muss N=000sein, da STUP(––) nur die RS–232C–Einstellungen für die integrierteRS–232C–Schnittstelle (DM 6645 bis DM 6649) ändern kann.
Wenn S eine Wortadresse ist, wird der Inhalt von S bis S+4 nach DM 6645 bisDM 6649 kopiert.
Wird S als Konstante #0000 eingegeben, werden die Einstellungen für die inte-grierte RS–232C–Schnittstelle auf die Vorgabewerte zurückgesetzt.
S Funktion
Wortadresse Der Inhalt von S bis S+4 wird nach DM 6645 bis DM 6649 ko-piert.
Konstante(#0000)
Die Einstellungen in DM 6645 bis DM 6649 werden auf ihreStandardwerte zurückgesetzt.
Hinweis 1. Der RS–232C–Konfiguration ändern–Merker (SR 25312) ist akti-viert, während STUP(––) ausgeführt wird; er wird deaktiviert, wennSTUP(––) beendet ist.
2. In der CPM2A/CPM2C tritt ein Fehler auf und STUP(––) wird nicht ausge-führt, wenn der Kommunikationsschalter auf der Vorderseite der CPU–Bau-gruppe eingeschaltet ist. Ist dieser Schalter eingeschaltet, wird dieRS–232C–Kommunikation durch die Vorgabeeinstellungen bestimmt.
Anwendungsbeispiel Das nachfolgende Beispiel zeigt ein Netzwerk, dass den Inhalt des Datenbe-reichs DM 100 bis DM 0104 in den SPS–Konfigurationsbereich für dieRS–232C–Schnittstelle überträgt.
00000 LD 00000
00001 @STUP(––)
000
DM 0100
–––
@STUP(––)
000
DM 0100
000
00000 Adresse Befehl Operanden
Die Einstellungen werden, wie nachfolgend dargestellt, übertragen. DerRS–232C–Konfiguration ändern–Merker (SR 25312) wird nach erfolgter Daten-übertragung zurückgesetzt.
Die folgende Tabelle zeigt die Funktionen der übertragenen Konfigurationsda-ten.
Quell-wort
Zielwort Inhalt Funktion
DM 0100 DM 6645 1001 Aktiviert die Kommunikationseinstellungen inDM 0101 und stellt den Kommunikationsmo-dus auf Ohne–Protokoll ein.
DM 0101 DM 6646 0803 Stellt die folgenden Kommunikationspara-meter ein:9.600 Baud, 1 Startbit, 8 Datenbits, 1 Stop-bit, keine Parität
DM 0102 DM 6647 0000 Keine Übertragungsverzögerung (0 ms)
DM 0103 DM 6648 2000 Aktiviert den End–Code CR,LF.
DM 0104 DM 6649 0000 (Keine Funktion, wenn DM 6648 auf 2000eingestellt wird.)
Merker ER: Indirekt adressiertes DM–Wort ist nicht vorhanden. (Inhalt des *DM–Wortes liegt nicht als BCD–Zahl vor oder die Datenbereichsgrenzewurde überschritten).
Der Schnittstellenbezeichner (N) ist nicht 000.
In der CPM2A/CPM2C ist der Kommunikationsschalter auf der Vorder-seite der CPU–Baugruppe eingeschaltet.
7-30AbschnittKommunikationsbefehle
491
Ein anderer STUP(––)–Befehl oder die Befehlsabarbeitung wird bereitsausgeführt.
Das spezifizierte Quellwort überschreitet die Bereichsgrenze.
Der Befehl wird von einem Unterprogramm ausgeführt.
Das SPS–Konfiguration ist schreibgeschützt.
493
Kapitel 8SPS–Betrieb und –Verarbeitungszeiten
Dieser Abschnitt beschreibt die interne Verarbeitung der CPM1, CPM1A, CPM2A, CPM2C und SRM1 (–V2) sowie die fürdie Verarbeitung und Ausführung erforderliche Zeit. Sehen Sie diesen Abschnitt für eine Beschreibung des Zeitverhaltens derSPS–Funktionen.
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 . . . . . . . . . . . . . . . . . . . . . . . .
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
494
8-1 CPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
8-1-1 Der CPM1/CPM1A–ZyklusDer gesamte Ablauf der CPM1/CPM1A–Verarbeitung ist im folgenden Ablauf-diagramm dargestellt.
Anlegen der Vers.spannung
Hardware und Programm-speicher überprüfen
Überprüfung OK?
Zykluszeit–Überwachungszeiteinstellen
Anwenderprogramm ausführen
Programmende?
Zykluszeiteinstellung überprüfen
MinimaleZykluszeit einge-
stellt?
Warten, bis Mindestzykluszeitvergangen ist.
Zykluszeit berechnen
Eingangsmerker und Ausgän-gen auffrischen
Service der Peripherieschnittstellen
Fehlermerker setzen undAnzeigen aktivieren
FEHLER oder ALARM?
Nein
ERROR–LED(leuchtet)
ALARM(blinkt)
Initialisierung
Betriebs–vorgänge
Programm-ausführung
Zykluszeit–abarbeitung
E/A–Auffri-schung
Service derPeripherie-schnittstelle
Zy-klus-zeitNein
Ja
Nein
Ja
Ja
Initialisierungsprozesse
Hinweis Initialisierungsprozesse beinhalten das Löschen von IR–, SR– und AR–Berei-chen, das Voreinstellen der Systemzeitgeber und das Überprüfen der E/A–Bau-gruppen.
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
495
8-1-2 CPM1/CPM1A–ZykluszeitDie Prozesse, die in einem einzelnen CPM1/CPM1A–Zyklus enthalten sind,sind in der folgenden Tabelle dargestellt und ihre jeweiligen Verarbeitungszeitenwerden beschrieben.
Prozess Inhalt Erforderliche Zeit
Betriebsvorgang Einstellung des Zykluszeit–Watchdog–Zeitgebers, E/A–Bus–Überprüfung, Überprüfung des Programmspeicherbe-reichs, Uhrauffrischung, Auffrischung der den neuen Funk-tionen zugewiesenen Bits usw.
0,6 ms
Programmausführung Ausführung des Anwenderprogramms Gesamtzeit für die Befehlsausführung(diese ändert sich in Abhängigkeit vondem Inhalt des Anwenderprogramms.)
Zykluszeit–Berechnung Bereitschaftsbetrieb (Stand–by) bis zur spezifizierten Zeit,wenn die Mindest–Zykluszeit in der Konfiguration in DM6619 spezifiziert wird.
Berechnung der Zykluszeit.
Die Berechnung erfolgt fast unmittelbar(gilt nicht für den Bereitschaftsbetrieb).
E/A–Auffrischung Die Eingangsdaten der Eingangsbaugruppen werden in denEingangsbits gespeichert.Die Ausgangsdaten (Ergebnisseder Programmausführung) werden in den Ausgangsbits derAusgangsbaugruppen gespeichert.
CPU mit 10 Anschlüsse:0,06 msCPU mit 20 Anschlüsse:0,06 msCPU mit 30 Anschlüsse:0,3 msErweiterungs–E/A–Baugruppen0,3 ms
Service der Peripherie-schnittstelle
Bearbeitung der mit der Peripherieschnittstelle verbunde-nen Geräte.
min. 0,26 ms, 5% der Zykluszeit oder ein-stellbar bis zu 66 ms (sehen Sie den Hin-weis)
Hinweis Die Prozentwerte können in der Konfiguration (DM 6617) geändert werden.
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den CPM1/CPM1A–Betrieb ist in der folgendenTabelle dargestellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entwe-der die Zykluszeit verringert oder die Ansprechzeit mit Interrupt–Programmenverbessert werden.
Zykluszeit Betriebsbedingungen
10 ms oder länger Bei Verwendung der Zeitgeber/Zähler TC 004 bis TC 127 wird TIMH(15) möglicherweise mit geringerer Präzi-sion ausgeführt. (Bei Verwendung von TC 000 bis TC 003 ist ein normaler Betrieb gewährleistet).
20 ms oder länger Die Programmierung ist bei Verwendung des 0,02 s–Taktbits (SR 25401) möglicherweise ungenau.
100 ms oder länger TIM ist evtl. ungenau. Die Programmierung ist bei Verwendung des 0,1 s–Taktbits (SR 25500) möglicher-weise ungenau. Ein Fehler (Zykluszeit–Überschreitung) wird generiert (SR 25309 wird gesetzt – sehen SieHinweis 1).
120 ms oder länger Der Sollwert der Zyklus–Überwachungszeit wird überschritten und und ein Systemfehler (FALS 9F) generiert,der den Betrieb stoppt. (Sehen Sie Hinweis 2).
200 ms oder länger Die Programmierung ist bei Verwendung des 0,2 s–Taktbits (SR 25501) möglicherweise ungenau.
Hinweis 1. Die Erkennung der Zykluszeit–Überschreitung kann in der Konfiguration(DM 6655) deaktiviert werden.
2. Die Zyklus–Überwachungszeit kann in der Konfiguration (DM 6618) geän-dert werden.
Berechnung der Zykluszeit In diesem Beispiel wird die Zykluszeit für eine CPM1/CPM1A mit 20 Ein–/Aus-gängen (12 Eingänge und 8 Ausgänge) berechnet. Folgende E/A–Konfigura-tion wird verwendet:
Eingänge: 1 Wort (00000 bis 00011)Ausgänge: 1 Wort (01000 bis 01007)
Weiterhin werden folgende Betriebsbedingungen vorausgesetzt:
Programmspeicher: 500 Befehle (nur bestehend aus LD und OUT)Zykluszeit: Variabel (kein Minimum spezifiziert)
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
496
In diesem Beispiel wird vorausgesetzt, dass die durchschnittliche Verarbei-tungszeit für einen einzelnen Befehl in dem Anwenderprogramm 2,86 µs be-trägt. Die Zykluszeiten sind in der nachfolgendenTabelle dargestellt.
Prozess Berechnung Zeit mit Programmiergerät
Zeit ohne Programmiergerät
1. Betriebsvorgänge Fest 0,6 ms 0,6 ms
2. Programmausführung 2,86 × 500 (µs) 1,43 ms 1,43 ms
3. Zykluszeit–Berechnung Vernachlässigbar 0 ms 0 ms
4. E/A–Auffrischung 0,01 × 1 + 0,05 × 1 (ms) 0,06 ms 0,06 ms
5. Service der Peripherie-schnittstelle
Mindestzeit 0,26 ms 0 ms
Zykluszeit (1) + (2) + (3) + (4) + (5) 2,35 ms 2,09 ms
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 ge–spei-chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab undstimmt möglicherweise nicht mit dem berechneten Wert überein.
8-1-3 E/A–AnsprechzeitDie E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung undVerarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabedes Verarbeitungsergebnisses an ein Ausgangsbit) benötigt. Die E/A–An-sprechzeit ist vom Zeitverhalten und von den Verarbeitungsbedingungen ab-hängig.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend dar-gestellt. Hierzu wird das folgende Beispielprogramm verwendet.
EingangAUSGANG
Zur Berechnung der E/A–Ansprechzeiten werden in diesem Beispiel die folgen-den Bedingungen vorausgesetzt:
Eingang–EIN–Verzögerung: 8 ms (Eing.–Zeitkonstante: Vorgabeeinstellung)
Überwachungszeit: 1 ms (einschl. E/A–Auffrischung fürCPM1A)Befehlsausführungs–Zeit: 14 msAusgangs–EIN–Verzögerung: 10 msPeripherieschnittstelle: Nicht verwendet
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit ist gegeben, wenn die CPM/CPM1A unmittelbar vorder Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal empfängt.Diese ist in der folgenden Abbildung dargestellt.
Eingang–EIN–Verzögerung (8 ms)
E/A–Auffrischung
Ein–gangs–anschluss
Ein–gangs-bit
Aus–gangs–anschluss
E/A–AuffrischungProgrammausführung und andere Vorgänge (15 ms)
Minimale–E/A–Ansprechzeit = 8+15+10 = 33 ms
Ausgang–EIN–Verzögerung (10 ms)
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
497
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit ist gegeben, wenn die CPM1/CPM1A unmittelbarnach der Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal emp-fängt (sehen Sie die folgende Abbildung). In diesem Fall tritt eine Verzögerungvon ungefähr einem Zyklus auf.
Eingang–EIN–Verzögerung (8 ms)
E/A–Auffrischung
Ein–gangs–an–schlussEin–gangs-bit
Aus-gangs-an-schluss
Programmausführungund andere
Vorgänge (15 ms)
Maximale E/A–Ansprechzeit = 8+15 × 2+10 = 48 ms
Ausgang–EIN–Verzögerung (10 ms)
E/A–AuffrischungProgrammausführung
und andere Vorgänge (15 ms)
E/A–Auffrischung
8-1-4 1:1–PC–Link–E/A–AnsprechzeitWerden zwei CPM1/CPM1A–Steuerungen in der 1:1–Kommunikation verwen-det, ist die E/A–Ansprechzeit die Zeit vom Anlegen eines Eingangssignals andie eine CPM1/CPM1A bis zur Ausgabe eines Signals an die andereCPM1/CPM1A.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend amBeispiel der folgenden, auf dem Master und dem Slave ausgeführten Befehleerläutert. In diesem Beispiel erfolgt die Kommunikation vom Master zum Slave.
Eingang Aus-gang(LR)
Eingang (LR)AUS-GANG
Master Slave
Zur Berechnung der E/A–Ansprechzeiten werden in diesem Beispiel die folgen-den Bedingungen vorausgesetzt: In der SPS der Serie CPM1/CPM1A werdendie LR–Bereichsworte LR 00 bis LR 15 in einer 1:1–Verbindung verwendet unddie Übertragungszeit ist auf 12 ms festgelegt.
Eingang–EIN–Verzögerung: 8 ms (Eing.–Zeitkonstante: Vorgabeeinstellung)
Master–Zykluszeit: 10 msSlave–Zykluszeit: 15 msAusgang–EIN–Verzögerung: 10 msPeripherieschnittstelle: Nicht verwendet
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit der CPM1/CPM1A ist unter den folgenden Bedin-gungen gegeben:
1, 2, 3... 1. Die CPM1/CPM1A empfängt ein Eingangssignal unmittelbar vor der Ein-gangsauffrischung innerhalb des Zyklus.
2. Die Master/Slave–Übertragung beginnt sofort.
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
498
3. Der Kommunikations–Service des Slave tritt unmittelbar nach Abschlussder Übertragung ein.
Ausgangs–anschluss
Master–Zykluszeit (10 ms)
Programm-ausführung
Übertragungszeit (12 ms)
Slave–Zykluszeit (15 ms)
Min. E/A–Ansprechzeit = 8+10+12+15+10 = 55 ms
Eingangs–anschluss
Ein–gangsbit
E/A–Auffrischung
Betriebssystem, Kommunikation usw.Eingang–EIN–Verzögerung (8 ms)
Master ⇒ Slave
Ausgang–EIN–Verzögerung(10 ms)
Programm-ausführung
CPU–Verarbeitung
CPU–Verarbeitung
Master
Slave
Berechnungsformel = Eingang–EIN–Ansprechzeit + die Zykluszeit des Masters+ Zykluszeit des Slaves + Ausgang–EIN–Ansprechzeit
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit der CPM1/CPM1A ist unter den folgenden Bedin-gungen gegeben:
1, 2, 3... 1. Die CPM1/CPM1A empfängt ein Eingangssignal unmittelbar nach der Ein-gangsauffrischung innerhalb des Zyklus.
2. Die Master/Slave–Übertragung beginnt mit einer Verzögerung.
3. Die Übertragung ist unmittelbar nachdem der Slave den Kommunikations–Service ausgeführt hat, abgeschlossen.
Maximale E/A–Ansprechzeit Eingang–EIN–Ansprechzeit + Zykluszeit des Masters x 2 + Übertragungszeit x3 + Ausgang–EIN–Ansprechzeit
Ausgangs-anschluss
E/A–Auffrischung
Service der Peripherieschnittstelle
Eingangs–anschluss
Ein–gangsbit
Progr.–ausführ.
CPU–Verarbeitung
Master
Slave
Eingang–EIN–Ansprechzeit
Master–Zyklus 1Übertra-gungs-zeit
(Datenübertragung entsprechend Eingang)
Progr.ausführ.
Progr.–ausführ.
Progr.–ausführ.
CPU–Verarbeitung
Progr.–ausführ.
Progr.–ausführ.
Slave–Zyklus 1
Progr.–ausführ.
Progr.–ausführ.
Slave–Zyklus 2 Slave–Zykl. 3
Master ⇒ Slave
Übertra-gungs-zeit
Slave ⇒ Master ÜbertragungszeitMaster ⇒ Slave
Maximale E/A–Ansprechzeit = 8 + 10 x 2 + 12 x 3 + 15 x 3 + 10 = 119 (ms)
Ausgang–AUS–Ansprechzeit
8-1-5 Interrupt–VerarbeitungszeitIn diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangs-zustand erläutert. Diese Beschreibung gilt für Eingangs–Interrupts, Intervall–Zeitgeber–Interrupts und Schneller–Zähler–Interrupts.
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
499
1, 2, 3... 1. Interrupt–Auslösung
2. Interrupt–EIN–Verzögerung
3. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
4. Wechsel zur Interrupt–Verarbeitung
5. Interrupt–Unterprogramm
6. Rückkehr in den Ausgangszustand
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss desInterrupt–Unterprogrammes bis zur Rückkehr in den Ausgangszustand aufge-führt.
Spezifikation Beschreibung Zeit
Interrupt–EIN–Verzögerung Verzögerungszeit vom Setzen des Interrupt–Eingangsbits bis zur Ausführung desInterrupts. Diese ist von weiteren Interrupts unabhängig.
100 µs
Bereitschaft bis zum Abschluss der Interrupt–Maskie-rungsverarbeitung
Zeit, in der Interrupts auf den Abschluss einer laufenden Verarbeitung warten. Diesesist bei der Ausführung einer Maskierungs–verarbeitung der Fall. Sehen Sie die nachfolgende, ausführlichere Beschreibung.
Sehen Siedie nachfol-gende Be-schreibung.
Wechsel zur Interrupt–Verarbeitung
Dies ist die für den Wechsel zu der Interrupt–Verarbeitung erforderliche Zeit. 30 µs
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbro-chenen Programmabschnitt.
30 µs
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interruptsbleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeitenmaskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung desFehlerinhalts in der CPM1 bzw. bei der Rücksetzung eines Fehlers werdenInterrupts für maximal 100 µs bis zum Abschluss der Verarbeitung maskiert.
On–line–Editierung:
Erfolgt während des Betriebs eine On–line–Editierung, werden Interruptsfür maximal 600 ms (d.h., Editierung von DM 6144 bis DM 6655) maskiert.Während dieses Vorgangs kann die Wartezeit der Systemverarbeitung biszu maximal 170 µs betragen.
Beispielberechnung In diesem Beispiel wird die Berechnung der Interrupt–Ansprechzeit (d.h. die Zeitvom Setzen des Interrupt–Eingangs auf EIN bis zum Start der Interrupt–Verar-beitungsroutine) bei der Verwendung von Interrupts unter den folgenden Bedin-gungen erläutert.
Minimale Ansprechzeit
Interrupt–Eingang–EIN–Verzögerung: 100 µsInterrupt–Maskierungs–Bereitschaftszeit: 0 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µsMinimale Ansprechzeit: 130 µs
Maximale Ansprechzeit(Außer für die On–line–Editierung von DM 6144 bis DM6655)
Interrupt–Eingang–EIN–Verzögerung: 100 µsInterrupt–Maskierungs–Bereitschaftszeit: 170 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µsMaximale Ansprechzeit: 300 µs
Zusätzlich zu der im Beispiel berechneten Ansprechzeit muss die für die Aus-führung des Interrupt–Unterprogramms erforderliche Zeit sowie eine Zeit von30 µs für die Rückkehr in den unterbrochenen Programmabschnitt berücksich-tigt werden.
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
500
8-1-6 Befehlsausführungszeiten der CPM1/CPM1A Die folgende Tabelle enthält die Ausführungszeiten der CPM1/CPM1A–Be-fehle.
BasisbefehleCode AWL–Code EIN–Ausfüh-
it ( )Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)Code Code us ü
rungszeit ( µs)ed gu ge (obe , u e a )
RSET IL JMP
------
LDLD NOT
1,72 Beliebig –––
------------
ANDAND NOTOROR NOT
1,32
------
AND LDOR LD
0,72
------
OUTOUT NOT
4,0
––– SET 5,8
––– RSET 5,9
––– TIM 10,0 Konstante für Sollwert 16,2 16,0 6,40,0
:DM für Sollwert 31,4 31 6,4
––– CNT 12,5 Konstante für Sollwert 14,1 6,2 6,6C ,5
:DM für Sollwert 29,1 6,2 6,6
Befehle mit FunktionsnummernCode AWL–Code EIN–Ausfüh-
rungszeit ( µs)Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)
00 NOP 0,36 Beliebig
01 END 10,8
e eb g
02 IL 4,6 2,6
03 ILC 3,6 3,6
04 JMP 4,3 2,405 JME 4,7 4,706 FAL 38,5 5,507 FALS 5,0 5,408 STEP 14,9 11,109 SNXT 14,2 7,610 SFT Rückset-
zungIL JMP
21,9 Mit 1 Wort–Schieberegister 19,7 2,6 2,6
34,1 Mit 10 Worte–Schieberegister 26,5 2,6 2,6
93,6 Mit 100 Worte–Schieberegister 60,1 2,6 2,6
11 KEEP 6,2 Beliebig Rück-setzung
IL JMP
6,1 3,1 3,112 CNTR Rückset-
zungIL JMP
25,8 Konstante für Sollwert 16,8 12,2 12,241,2 :DM für Sollwert
16,8 12,2 12,2
13 DIFU 11,8 Beliebig Ver–schie-bung
IL JMP
10,1 12,2 12,2
14 DIFD 11,0 Beliebig SHIFT IL JMP,0 Beliebig10,0 9,9 2,3
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
501
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL–Code
15 TIMH Rückset-zung
IL JMP
19,0 Reguläre Ausführung, Konstante für Sollwert 25,7 28,4 15,8
20,2 Interrupt–Ausführung, Konstante für Sollwert
5, 8, 5,8
19,0 Normale Ausführung, :DM für Sollwert 41,2 43,6 15,8
20,2 Interrupt–Ausführung, :DM für Sollwert
, 3,6 5,8
16 WSFT 29,2 Mit 1 Wort–Schieberegister 5,66 S
40,7 Mit 10 Worte–Schieberegister
5,6
1,42 ms Mit 1024 Worte–Schieberegister bei Verwendung von:DM
17 ASFT 29,6 Verschieben eines Wortes 5,6S
50,2 Verschieben von 10 Worten
5,6
1,76 ms Verschieben von 1023 Worten mit :DM
20 CMP 15,8 Vergleichen einer Konstanten mit einem Wort 5,60 C
17,2 Vergleichen von zwei Worten
5,6
46,3 Vergleichen von zwei :DM
21 MOV 16,3 Übertragen einer Konstanten auf ein Wort 5,6O
17,7 Übertragen eines Wortes auf ein anderes Wort
5,6
45,5 Übertragen von :DM auf :DM
22 MVN 16,4 Übertragen einer Konstanten auf ein Wort 5,617,5 Übertragen eines Wortes auf ein anderes Wort
5,6
45,7 Übertragen von :DM auf :DM
23 BIN 31,6 Konvertieren eines Wortes in ein Wort 5,63
45,7 Konvertieren von :DM auf :DM
5,6
24 BCD 29,5 Konvertieren eines Wortes in ein Wort 5,6C
57,3 Konvertieren von :DM auf :DM
5,6
25 ASL 17,3 Verschieben eines Wortes 5,55 S
31,3 Verschieben von :DM
5,5
26 ASR 16,9 Verschieben eines Wortes 5,56 S
31,1 Verschieben von :DM
5,5
27 ROL 14,5 Rotieren eines Wortes 5,5O
28,5 Rotieren von :DM
5,5
28 ROR 14,5 Rotieren eines Wortes 5,58 O
28,5 Rotieren von :DM
5,5
29 COM 18,1 Invertieren eines Wortes 5,59 CO
32,1 Invertieren von :DM
5,5
30 ADD 29,5 Konstante + Wort → Wort 5,630
30,9 Wort + Wort → Wort
5,6
72,7 :DM + :DM → :DM
31 SUB 29,3 Konstante + Wort → Wort 5,63 SU
30,5 Wort – Wort → Wort
5,6
72,5 :DM – :DM → :DM
32 MUL 49,1 Konstante Wort → Wort 5,63 U
50,5 Wort Wort → Wort
5,6
95,1 :DM :DM → :DM
33 DIV 47,7 Wort ÷ Konstante → Wort 5,633
50,9 Wort ÷ Wort → Wort
5,6
94,3 :DM ÷ :DM → :DM
34 ANDW 27,1 Konstante Wort → Wort 5,63
28,7 Wort Wort → Wort
5,6
70,7 :DM :DM → :DM
35 ORW 27,1 Konstante V Wort → Wort 5,635 O
28,7 Word V word → word
5,6
70,7 :DM V :DM → :DM
36 XORW 27,1 Konstante V Wort → Wort 5,636 O
28,7 Wort V Wort → Wort
5,6
70,5 :DM V :DM → :DM
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
502
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL–Code
37 XNRW 27,0 Konstante V Wort → Wort 5,63
28,6 Wort V Wort → Wort
5,6
70,5 :DM V :DM → :DM
38 INC 17,9 Inkrementieren eines Wortes 5,538 C
31,9 Inkrementieren von :DM
5,5
39 DEC 18,3 Dekrementieren eines Wortes 5,539 C
32,3 Dekrementieren von :DM
5,5
40 STC 6,3 Beliebig 5,541 CLC 6,3
g
5,546 MSG 21,5 Meldung in Worten 5,56 SG
35,7 Meldung in :DM
5,5
50 ADB 30,5 Konstante + Wort → Wort 5,650
32,1 Wort + Wort → Wort
5,6
73,9 :DM + :DM → :DM
51 SBB 30,9 Konstante – Wort → Wort 5,65 S
32,7 Wort – Wort → Wort
5,6
74,5 :DM – :DM → :DM
52 MLB 34,7 Konstante Wort → Wort 5,65
36,3 Wort Wort → Wort
5,6
80,7 :DM :DM → :DM
53 DVB 35,1 Wort ÷ Konstante → Wort 5,653
36,7 Wort ÷ Wort → Wort
5,6
81,1 :DM ÷ :DM → :DM
54 ADDL 48,9 Wort + Wort → Wort 5,65
94,7 :DM + :DM → :DM
5,6
55 SUBL 48,9 Wort – Wort → Wort 5,655 SU
94,7 :DM – :DM → :DM
5,6
56 MULL 138,7 Wort Wort → Wort 5,656 U
184,3 :DM :DM → :DM
5,6
57 DIVL 136,7 Wort ÷ Wort → Wort 5,65
181,3 :DM ÷ :DM → :DM
5,6
60 CMPL 30,4 Vergleichen von Worten 5,660 C
60,8 Vergleichen von :DM
5,6
61 INI 112,0 Ausführen des wortweisen Vergleichs 5,66
126,0 Ausführen des Vergleichs über:DM
5,6
48,0 Ende des wortweisen Vergleichs
48,0 Ende des Vergleichs über :DM
120,0 Istwert–Änderung über ein Wort
128,0 Istwert–Änderung über :DM
46,0 Ende der wortweisen Impulsausgabe
60,0 Ende der Impulsausgabe über :DM
62 PRV 62,2 Ausgangszuweisung über ein Wort 5,66
78,0 Ausgangszuweisung über :DM
5,6
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
503
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL–Code
63 CTBL 106,3 Zieltabelle mit einem Ziel in Wort und Start 5,663 C
120,3 Zieltabelle mit einem Ziel in :DM und Start
5,6
775,5 Zieltabelle mit 16 Zielen in Worten und Start
799,5 Zieltabelle mit 16 Zielen in :DM und Start
711,5 Bereichstabelle über Wort und Start
722,5 Bereichstabelle in :DM und Start
91,9 Zielltabelle mit 1 Ziel in Worten
106,3 Zieltabelle mit einem Ziel in :DM
693,5 Zieltabelle mit 16 Zielen in Worten
709,5 Zieltabelle mit 16 Zielen in :DM
607,5 Bereichstabelle in Worten
621,5 Bereichstabelle in :DM
64 SPED 73,6 Spezifizieren einer Konstante 5,66 S
75,0 Spezifizieren eines Wortes
5,6
88,8 Spezifizieren :DM 5,6
65 PULS 62,0 Spezifizieren eines Wortes 5,665 U S
78,0 Spezifizieren :DM
5,6
67 BCNT 52,6 Zählen eines Wortes 5,66 C
4,08 ms Zählen von 6656 Worten über :DM
5,6
68 BCMP 79,6 Vergleichen einer Konstanten, Ergebnisse an einWort
5,6
80,8 Vergleichen eines Wortes, Ergebnisse an ein Wort
123,2 Vergleichen von :DM, Ergebnisse an :DM
69 STIM 47,5 Start des wortweise spezifizierten Intervall–Interrupts 5,669 S
58,7 :DM-weise spezifizierten Monoflop–Inter-vall–Interrupt starten
5,6
47,9 Start des wortweise spezifizierten periodischen Inter-rupts
59,1 :DM-weise periodischen Interrupt starten
33,5 Lesen des wortweise spezifizierten Zeitgebers
63,5 :DM–weise spezifizierten Zeitgeber lesen
25,7 Stop des wortweise spezifizierten Zeitgebers
54,1 :DM–weise spezifizierten Zeitgeber anhalten
70 XFER 45,5 Übertragen einer Konstanten auf ein Wort 5,60
47,1 Übertragen eines Wortes auf ein Wort
5,6
1,78 ms Übertragen von 1024 Worten mit Hilfe von :DM
71 BSET 28,1 Kopieren einer Konstanten in ein Wort 5,6S
38,3 Kopieren einer Wortkonstante in 10 Worte
5,6
1,12 ms Kopieren von :DM in 1024 Worte
73 XCHG 30,5 Wort → Wort 5,63 C G
59,1 :DM → :DM
5,6
74 SLD 25,9 Verschieben eines Wortes 5,6S
51,7 Verschieben von 10 Worten
5,6
3,02 ms Verschieben von 1024 Worten mit Hilfe von :DM
75 SRD 25,9 Verschieben eines Wortes 5,65 S
51,7 Verschieben von 10 Worten
5,6
3,02 ms Verschieben von 1024 Worten mit Hilfe von :DM
76 MLPX 47,7 Decodierung eines Wortes in ein Wort 5,66
92,7 Decodieren von :DM auf :DM
5,6
77 DMPX 59,5 Kodieren eines Wortes in ein Wort 5,695,5 Kodieren von :DM auf :DM
5,6
78 SDEC 51,1 Dekodieren eines Wortes in ein Wort 5,68 S C
96,3 Dekodieren von :DM auf :DM
5,6
8-1AbschnittCPM1/CPM1A–Zyklus– und E/A–Ansprechzeit
504
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL–Code
80 DIST 39,1 Kopieren einer Konstanten in ein Wort + ein Wort 5,680 S
40,9 Kopieren eines Wortes in ein Wort + ein Wort
5,6
84,7 Kopieren von :DM auf :DM +:DM
63,4 Kopieren einer Konstanten auf einen Stack
65,0 Kopieren eines Wortes auf einen Stack
109,6 Kopieren von :DM auf einen Stack über :DM
81 COLL 42,6 Kopieren einer Konstanten + ein Wort in ein Wort 5,68 CO
43,6 Kopieren eines Wortes + ein Wort in ein Wort
5,6
83,4 Kopieren von :DM + :DM auf :DM
78,0 Kopieren eines Wortes + Konstante auf einen FIFO–Stack
79,2 Kopieren eines Wortes + Wort auf einen FIFO–Stack
1,76 ms Kopieren des :DM + :DM auf einen FIFO–Stapelüber :DM
66,8 Kopieren eines Wortes + Konstante auf einen LIFO–Stack
68,0 Kopieren eines Wortes + Wort auf einen LIFO–Stack
112,0 Kopieren des :DM + :DM auf einen LIFO–Stapelüber :DM
82 MOVB 32,5 Übertragen einer Konstanten auf ein Wort 5,68 O
37,5 Übertragen eines Wortes auf ein anderes Wort
5,6
79,1 Übertragen von :DM auf :DM
83 MOVD 28,3 Übertragen einer Konstanten auf ein Wort 5,683 O
33,3 Übertragen eines Wortes auf ein anderes Wort
5,6
75,5 Übertragen von :DM auf :DM
84 SFTR 39,3 Verschieben eines Wortes 5,68 S
52,9 Verschieben von 10 Worten
5,6
1,42 ms Verschieben von 1024 Worten mit Hilfe von :DM
85 TCMP 57,7 Vergleichen einer Konstanten mit Worten der spezifi-zierten Tabelle
5,6
58,9 Vergleichen eines Wortes mit Worten der spezifizier-ten Tabelle
101,9 Vergleichen von :DM auf :DM der spezifiziertenTa-belle
86 ASC 56,7 Wort → Wort 5,686 SC
103,9 :DM → :DM
5,6
89 INT 32,3 Wortweise Maskierung 5,689
46,3 Einstellen von Masken über :DM
5,6
29,1 Wortweise Interrupt–Rücksetzung
43,1 Interrupts löschen über :DM
27,3 Wortweises Auslesen des Maskierungszustands
41,5 Maskierungsstatus lesen über :DM
29,7 Wortweise Änderung des Zähler–Sollwerts
43,7 Zähler–Sollwert ändern über :DM
15,3 Wortweise Maskierung aller Interrupts
15,3 Maskieren aller Interrupts über :DM
15,9 Wortweise Rücksetzung aller Interrupts
15,9 Rücksetzen aller Interrupts über DM
91 SBS 36,6 Beliebig 5,592 SBN 1,7
g
1,793 RET 15,0 2,597 IORF 40,0 Auffrischen von IR 000 6,09 O
142,6 Auffrischen eines Eingangswortes
6,0
135,4 Auffrischen eines Ausgangswortes
99 MCRO 74,0 Mit wortweise spezifizierten E/A–Operanden 5,699 C O
116,4 Mit:DM–weise spezifizierten E/A–Operanden
5,6
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
505
8-2 CPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
8-2-1 CPM2A/CPM2C–ZykluszeitDie Prozesse, die in einem einzelnen CPM2A/CPM2C–Zyklus enthalten sind,sind in der folgenden Tabelle dargestellt und ihre jeweiligen Verarbeitungszeitenwerden beschrieben.
Prozess Inhalt zeitanforderungen
Betriebs–vorgänge
Einstellung des Zykluszeit–Watchdog–Zeitgebers, E/A–Bus–Überprüfung, Überprüfung des Programmspeicherbe-reichs, Uhrzeit–Auffrischung, Auffrischung der den neuenFunktionen zugewiesenen Bits usw.
0,3 ms
Programm–ausführung
Ausführung des Anwenderprogramms Gesamtzeit für die Befehlsausführung (diese ändertsich in Abhängigkeit von dem Inhalt des Anwender-programms.)
Berechnung der Zykluszeit
Automatische Verzögerung bis zur Mindest–Zykluszeit,wenn eine Mindest–Zykluszeit in DM 6619 der SPS–Konfi-guration eingestellt wurde.
Berechnung der Zykluszeit.
Unbedeutend, bis auf die Verzögerung selbst, wenndiese erforderlich ist.
E/A–Auffrischung
Ausgangsdaten (Ergebnisse der Programmausführung)werden in den Ausgangsbits der Ausgangsbaugruppengespeichert.
Die Eingangsdaten der Eingangsbaugruppen werden aufden Eingangsbits gespeichert.
CPM2C–CPU–Baugruppe: 0,06 ms20–E/A CPM2A CPU–Baugrupp.: 0,06 ms30–E/A CPM2A CPU–Baugrupp.: 0,3 ms40-E/A CPM2A CPU–Baugrupp.: 0,3 ms60-E/A CPM2A CPU–Baugrupp.: 0,54 msErweiterungs–E/A–Baugruppen: 0,3 ms
Service derRS–232C–Schnittstelle
Bearbeitung der mit der RS–232C–Schnittstelle verbunde-nen Geräte.
Min. 0,55 ms, 5% oder Prozentsatz der Zykluszeit biszu 131 ms
(Der Prozentsatz der Zykluszeit, die dem RS–232C–Service zugewiesen wird, kann in DM 6616 einge-stellt werden.)
Service der Peripherieschnitt-stelle
Kommunikationsverarbeitung, wenn ein Programmiergerätoder ein Kommunikationsadapter an die Peripherie–Schnittstelle angeschlossen wird.
Min. 0,55 ms, 5% oder Prozentsatz der Zykluszeit biszu 131 ms
(Der Prozentsatz der Zykluszeit, die dem Peripherie–Service zugewiesen wird, kann in DM 6617 einge-stellt werden.)
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den CPM2A/CPM2C–Betrieb ist in der folgendenTabelle dargestellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entwe-der die Zykluszeit verringert oder die Ansprechzeit mit Interrupt–Programmenverbessert werden.
Zykluszeit Betriebsbedingungen
1 ms oder länger TMHH(––) ist evtl. ungenau, wenn TC 000 bis TC 003 oder TC 008 bis TC 255 verwendet wird (die Funktionist bei TC 004 bis TC 007 normal).
10 ms oder länger Bei Verwendung von TC 004 bis TC 255 wird TIMH(15) möglicherweise mit geringerer Präzision ausgeführt.(Bei Verwendung von TC 000 bis TC 003 ist ein normaler Betrieb gewährleistet).
20 ms oder länger Die Programmierung ist bei Verwendung des 0,02 s–Taktbits (SR 25401) möglicherweise ungenau.
100 ms oder länger TIM ist evtl. ungenau. Die Programmierung ist bei Verwendung des 0,1 s–Taktbits (SR 25500) möglicher-weise ungenau. Ein Fehler (Zykluszeit–Überschreitung) wird generiert (SR 25309 wird gesetzt).
120 ms oder länger Der Sollwert der Überwachungszeit wird überschritten und und ein Systemfehler (FALS 9F) generiert, der denBetrieb stoppt.
200 ms oder länger Die Programmierung ist bei Verwendung des 0,2 s–Taktbits (SR 25501) möglicherweise ungenau.
Berechnung der Zykluszeit In diesem Beispiel wird die Zykluszeit für eine CPM2A/CPM2C mit 30 Ein–/Aus-gängen (18 Eingänge und 12 Ausgänge) berechnet. Folgende E/A–Konfigura-tion wird verwendet:
18 Eingänge: 2 Worte (00000 bis 00011, 00100 bis 00105)12 Ausgänge: 2 Worte (01000 bis 01007, 01100 bis 01103)
Weiterhin werden folgende Betriebsbedingungen vorausgesetzt:
Programmspeicher: 500 Befehle (nur bestehend aus LD und OUT)Zykluszeit: Variabel (kein Minimum spezifiziert)
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
506
In diesem Beispiel wird vorausgesetzt, dass die durchschnittliche Verarbei-tungszeit für einen einzelnen Befehl in dem Anwenderprogramm 1,26 µs be-trägt. Die Zykluszeiten sind in der nachfolgendenTabelle dargestellt.
Prozess Berechnung Zeit mit Programmiergerät
Zeit ohneProgrammiergerät
1. Betriebsvorgänge Fest 0,3 ms 0,3 ms
2. Programmausführung 1,26 × 500 (µs) 0,6 ms 0,6 ms
3. Zykluszeit–Berechnung Vernachlässigbar 0 ms 0 ms
4. E/A–Auffrischung Fest 0,3 ms (CPM2C: 0,06 ms) 0,3 ms (CPM2C: 0,06 ms)
5. Service der Peripherie-schnittstelle
Mindestzeit 0,55 ms 0 ms
Zykluszeit (1) + (2) + (3) + (4) + (5) 1,75 ms (CPM2C: 1,51 ms 1,2 ms (CPM2C: 0,96 ms)
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 gespei-chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab undstimmt möglicherweise nicht mit dem berechneten Wert überein.
8-2-2 E/A–AnsprechzeitDie E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung undVerarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabedes Verarbeitungsergebnisses an ein Ausgangsbit) benötigt. Die E/A–An-sprechzeit ist vom Zeitverhalten und den Verarbeitungsbedingungen abhängig.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend dar-gestellt. Hierzu wird das folgende Beispielprogramm verwendet.
EingangAUSGANG
Zur Berechnung der E/A–Ansprechzeiten werden in diesem Beispiel die folgen-den Bedingungen vorausgesetzt:
Eingang–EIN–Verzögerung: 10 ms (Eing.Zeitkonstante: Vorgabe–einstellung)
Überwachungszeit: 1 ms (einschließlich E/A–Auffrischung)Befehls–Ausführungszeit: 14 msAusgangs–EIN–Verzögerung: 15 msKommunikationsschnittstellen: Nicht verwendet
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit ist gegeben, wenn die CPM2A/CPM2C unmittelbarvor der Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal emp-fängt. Diese ist in der folgenden Abbildung dargestellt.
Eingang–EIN–Verzögerung (10 ms)
E/A–Auffrischung
Ein-gangs–an-schluss
Ein–gangs-bit
Aus-gangs-an-schluss
E/A–AuffrischungProgrammausführung und andere Vorgänge (15 ms)
Minimale–E/A–Ansprechzeit = 10+15+15 = 40 ms
Ausgang–EIN–Verzögerung (10 ms)
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit ist gegeben, wenn die CPM2A/CPM2C unmittelbarnach der Eingangsauffrischung, innerhalb des Zyklus, ein Eingangssignal emp-
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
507
fängt (sehen Sie die folgende Abbildung). In diesem Fall tritt eine Verzögerungvon ungefähr einem Zyklus auf.
Eingang–EIN–Verzögerung (10 ms)
E/A–Auffrischung
Ein-gangs-an-schlussEin–gangs-bit
Aus-gangs-an-schluss
Programmausführungund andere
Vorgänge (15 ms)
Maximale E/A–Ansprechzeit = 10+15 × 2+15 = 55 ms
Ausgang–EIN–Verzögerung (10 ms)
E/A–AuffrischungProgrammausführung
und andere Vorgänge (15 ms)
E/A–Auffrischung
8-2-3 1:1–PC–Link–E/A–AnsprechzeitSind zwei CPM2A/CPM2C–Steuerungen 1:1 verbunden, ist die E/A–Ansprech-zeit die Zeit vom Anlegen eines Eingangssignals an die eine CPM2A/CPM2Cbis zur Ausgabe eines Signals an die andere CPM2A/CPM2C.
Die minimalen und maximalen E/A–Ansprechzeiten werden nachfolgend amBeispiel der folgenden auf dem Master und dem Slave ausgeführten Befehle er-läutert. In diesem Beispiel erfolgt die Kommunikation vom Master zum Slave.
EingangAusgang (LR) Eingang (LR) AUSGANG
Master Slave
Zur Berechnung der E/A–Ansprechzeiten werden in diesem Beispiel die folgen-den Bedingungen vorausgesetzt: In der SPS der Serie CPM2A/CPM2C werdendie LR–Bereichsworte LR 00 bis LR 15 in einer 1:1–Verbindung verwendet; dieÜbertragungszeit beträgt 12 ms.
Eingang–EIN–Verzögerung: 10 ms (Eingangs–Zeitkonstante: Vorgabeeinstellung)
Master–Zykluszeit: 10 msSlave–Zykluszeit: 15 msAusgang–EIN–Verzögerung: 15 ms
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit der CPM2A/CPM2C ist unter den folgenden Bedin-gungen gegeben:
1, 2, 3... 1. Die CPM2A/CPM2C empfängt ein Eingangssignal unmittelbar vor der Ein-gangsauffrischung innerhalb des Zyklus.
2. Die Master/Slave–Übertragung beginnt sofort.
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
508
3. Der Kommunikations–Service des Slave tritt unmittelbar nach Abschlussder Übertragung ein.
Ausgangs-anschluss
Master–Zykluszeit (10 ms)
Programm-ausführung
Übertragungszeit (12 ms)
Slave–Zykluszeit (15 ms)
Min. E/A–Ansprechzeit = 10+10+12+15+15 = 62 ms
Eingangs–anschluss
Ein–gangs-bit
E/A–Auffrischung
Betriebsvorgänge, Kommunika-tions–Service, etc.
Eingang–EIN–Verzögerung (10 ms)
Master ⇒ Slave
Ausgang–EIN–Verzögerung(15 ms)
Programm-ausführung
CPU–Verarbeitung
CPU–Verarbeitung
Master
Slave
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit der CPM2A/CPM2C ist unter den folgenden Bedin-gungen gegeben:
1, 2, 3... 1. Die CPM2A/CPM2C empfängt ein Eingangssignal unmittelbar nach derEingangsauffrischung innerhalb des Zyklus.
2. Die Master/Slave–Übertragung beginnt mit einer Verzögerung.
3. Die Übertragung ist unmittelbar nachdem der Slave den Kommunikations–Service ausgeführt hat, abgeschlossen.
Maximale E/A–Ansprechzeit Eingang–EIN–Ansprechzeit + Zykluszeit des Masters × 2 + Übertragungszeit ×3 + Zykluszeit des Slaves × 2 + Ausgang–EIN–Ansprechzeit
Ausgangs-anschluss
E/A–Auffrischung
Service der Peripherieschnittstelle
Eingangs–anschluss
Ein–gangs-bit
Progr.–ausführ.
CPU–Verarbeitung
Master
Slave
Eingang–EIN–Ansprechzeit
Master–Zyklus 1Übertra-gungs-zeit
(Datenübertragung entsprechend Eingang)
Progr.–ausführ.
Progr.–ausführ.
Progr.–ausführ.
CPU–Verarbeitung
Progr.–ausführ.
Progr.–ausführ.
Slave–Zyklus 1
Progr.–ausführ.
Progr.–ausführ.
Slave–Zyklus 2 Slave–Zykl. 3
Master ⇒ Slave
Übertra-gungs-zeit
Slave ⇒ Master ÜbertragungszeitMaster ⇒ Slave
Maximale E/A–Ansprechzeit = 10 + 10 × 2 + 12 × 3 + 15× 2 + 15 = 111 ms
Ausgang–AUS–Ansprechzeit
8-2-4 Interrupt–VerarbeitungszeitIn diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in den Ausgangs-zustand erläutert. Diese Beschreibung gilt für Eingangs–Interrupts, Intervall–Zeitgeber–Interrupts und Schnelle Zähler–Interrupts.
1, 2, 3... 1. Interrupt–Auslösung
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
509
2. Interrupt–EIN–Verzögerung
3. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
4. Wechsel zur Interrupt–Verarbeitung
5. Interrupt–Unterprogramm (nur CPM1A/CPM2A/CPM2C)
6. Rückkehr in den Ausgangszustand
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss desInterrupt–Unterprogrammes bis zur Rückkehr in den Ausgangszustand aufge-führt.
Spezifikation Beschreibung Zeit
Interrupt–EIN–Verzögerung
Verzögerungszeit vom Setzen des Interrupt–Eingangs bis zur Ausführung des Inter-rupts. Diese Verzögerung wirkt sich nicht auf andere Interrupts aus.
100 µs
Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
Wird ein Prozess, der den Interrupt deaktiviert (maskiert), ausgeführt, ist dies die erfor-derliche Zeit, damit dieser Prozess beendet wird.
Sehen Siedie nachfol-gende Be-schreibung.
Wechsel zur Interrupt–Verar-beitung
Dies ist die für den Wechsel zur Interrupt–Verarbeitung erforderliche Zeit. 30 µs
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbroche-nen Programmabschnitt.
30 µs
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interruptsbleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeitenmaskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung desFehlerinhalts in der SPS bzw. bei der Rücksetzung eines Fehlers werdenInterrupts für maximal 100 µs maskiert.
On–line–Editierung:
Der Vorgang wird unterbrochen und Interrupts werden für bis zu 600 msmaskiert (für DM 6144 bis DM 6655), wenn die On–line–Editierung ausge-führt wird oder die Einstellungen mit STUP(––) während des Vorgangs ge-ändert werden. Das Programm oder die SPS–Konfiguration kann währenddieser Verzögerung überschrieben werden.
Zusätzlich zur On–line–Editierungs–Verzögerung können Interrupts für biszu 170 µs für die Systemverarbeitung maskiert werden.
Beispielberechnung In diesem Beispiel wird die Berechnung der Interrupt–Ansprechzeit (d.h. die Zeitvom Setzen des Interrupt–Eingangs auf EIN bis zum Start der Interrupt–Verar-beitungsroutine) bei der Verwendung von Interrupts unter den folgenden Bedin-gungen erläutert.
Minimale Ansprechzeit
Interrupt–Eingang–EIN–Verzögerung: 100 µsInterrupt–Maskierungs–Bereitschaftszeit: 0 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µsMinimale Ansprechzeit: 130 µs
Maximale Ansprechzeit(außer für die On–line–Editierung von DM 6144 bis DM 6655)
Interrupt–Eingang–EIN–Verzögerung: 100 µsInterrupt–Maskierungs–Bereitschaftszeit: 170 µs
+ Wechsel zur Interrupt–Verarbeitung: 30 µsMaximale Ansprechzeit: 300 µs
Zusätzlich zu der im Beispiel berechneten Ansprechzeit muss die für die Aus-führung des Interrupt–Unterprogrammes erforderliche Zeit sowie eine Zeit von30 µs für die Rückkehr in den unterbrochenen Programmabschnitt berücksich-tigt werden.
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
510
8-2-5 Befehlsausführungszeiten der CPM2A/CPM2C Die folgende Tabelle enthält die Ausführungszeiten der CPM2A/CPM2C–Be-fehle.
BasisbefehleCode AWL EIN–Ausfüh-
it ( )Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)Code us ü
rungszeit ( µs)ed gu ge (obe , u e a )
RSET IL JMP
------
LDLD NOT
0,64 Beliebig –––
------------
ANDAND NOTOROR NOT
0,52
------
AND LDOR LD
0,26
------
OUTOUT NOT
1,88
––– SET 2,58
––– RSET
,58
––– TIM 4,76 Konstante für Sollwert 7,8 7,6 2,9, 6
:DM für Sollwert 15,6 15,4 2,9
––– CNT 4,50 Konstante für Sollwert 6,8 2,9 3,1C ,50
:DM für Sollwert 14,5 2,9 3,1
Befehle mit FunktionsnummernCode AWL EIN–Ausfüh-
rungszeit ( µs)Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)
00 NOP 0,15 Beliebig
01 END 6,2
e eb g
02 IL 1,1 2,1
03 ILC 1,6 1,6
04 JMP 0,95 1,805 JME 2,1 2,106 FAL 20,5 2,507 FALS 2,9 2,508 STEP 7,3 6,009 SNXT 5,1 3,610 SFT Rückset-
zungIL JMP
10,4 Mit 1 Wort–Schieberegister 9,2 0,98 0,98
15,3 Mit 10 Worte–Schieberegister 11,9 1,0 1,0
39,6 Mit 53 Worte–Schieberegister 26,2 1,0 1,0
11 KEEP 3,2 Beliebig Rück-setzung
IL JMP
3,1 1,2 1,312 CNTR Rückset-
zungIL JMP
10,9 Konstante für Sollwert 7,9 5,5 5,618,8 :DM für Sollwert
7,9 5,5 5,6
13 DIFU 5,5 Beliebig Ver–schie-bung
IL JMP
5,1 4,8 0,96
14 DIFD 5,3 Beliebig Ver–schie-bung
IL JMP
5,4 4,7 0,97
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
511
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
15 TIMH Rückset-zung
IL JMP
9,0 Reguläre Ausführung, Konstante für Sollwert 13,0 12,6 6,1
9,6 Interrupt–Ausführung, Konstante für Sollwert 14,4 14,0 7,5
9,8 Normale Ausführung, :DM für Sollwert 20,8 20,5 6,1
10,7 Interrupt–Ausführung, :DM für Sollwert 22,2 22,0 7,5
16 WSFT 14,0 Mit 1 Wort–Schieberegister 2,66 S
18,6 Mit 10 Worte–Schieberegister
2,6
1,15 ms Mit 2,048 Worte–Schieberegister unter Verwendungvon :DM
17 ASFT 13,0 Verschieben eines Wortes 2,6S
22,9 Verschieben von 10 Worten
,6
1,51 ms Verschieben von 2,048 Worten über :DM
20 CMP 7,0 Vergleichen einer Konstanten mit einer Konstanten 2,60 C
8,3 Vergleichen von zwei Worten
2,6
12,1 Vergleichen von zwei :DM
21 MOV 7,8 Übertragen einer Konstanten auf ein Wort 2,6O
8,4 Übertragen eines Wort auf ein anderes Wort
2,6
22,8 Übertragen von :DM auf :DM
22 MVN 7,9 Übertragen einer Konstanten auf ein Wort 2,68,4 Übertragen eines Wortes auf ein anderes Wort
2,6
22,8 Übertragen von :DM auf :DM
23 BIN 15,8 Konvertieren eines Wortes in ein Wort 2,63
30,3 Konvertieren von :DM auf :DM
2,6
24 BCD 14,6 Konvertieren eines Wortes in ein Wort 2,6C
29,0 Konvertieren von :DM auf :DM
2,6
25 ASL 8,6 Verschieben eines Wortes 2,55 S
15,8 Verschieben von :DM
2,5
26 ASR 8,4 Verschieben eines Wortes 2,56 S
15,6 Verschieben von :DM
2,5
27 ROL 7,3 Rotieren eines Wortes 2,5O
14,5 Rotieren von :DM
2,5
28 ROR 7,3 Rotieren eines Wortes 2,58 O
14,5 Rotieren von :DM
,5
29 COM 8,9 Invertieren eines Wortes 2,59 CO
16,1 Invertieren von :DM
2,5
30 ADD 14,7 Konstante + Konstante → Wort 2,630
16,0 Wort + Wort → Wort
2,6
37,6 :DM + :DM → :DM
31 SUB 14,6 Konstante – Konstante → Wort 2,63 SU
15,8 Wort – Wort → Wort
2,6
37,5 :DM – :DM → :DM
32 MUL 26,8 Konstante Konstante ” Wort 2,63 U
28,3 Wort Wort → Wort
2,6
51,0 :DM :DM → :DM
33 DIV 25,9 Konstante ÷ Konstante → Wort 2,633
27,5 Wort ÷ Wort → Wort
2,6
50,1 :DM ÷ :DM → :DM
34 ANDW 12,3 Konstante Konstante → Wort 2,63
13,8 Wort Wort → Wort
2,6
35,4 :DM :DM → :DM
35 ORW 12,3 Konstante V Konstante → Wort 2,635 O
13,8 Word V word → word
2,6
35,4 :DM V :DM → :DM
36 XORW 12,3 Konstante V Konstante → Wort 2,636 O
13,8 Wort V Wort → Wort
2,6
35,4 :DM V :DM → :DM
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
512
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
37 XNRW 12,3 Konstante V Konstante→ Wort 2,63
13,8 Wort V Wort → Wort
2,6
35,5 :DM V :DM → :DM
38 INC 8,8 Inkrementieren eines Wortes 2,538 C
15,9 Inkrementieren von :DM
2,5
39 DEC 8,9 Dekrementieren eines Wortes 2,539 C
16,1 Dekrementieren von :DM
2,5
40 STC 3,0 Beliebig 2,541 CLC 3,0
g
2,546 MSG 9,9 Meldung in Worten 2,56 SG
17,8 Meldung in :DM
2,5
47 RXD 71,9 Wortspezifikation, 1 Byte–Eingabe 2,6
314,5 :DM Spezifikation, 256 Byte–Eingabe
,6
48 TXD 32,4 Wortspezifikation, 1 Byte–Eingabe, RS–232C 2,68
264,5 :DM–Spezifikation, 256 Byte–Eingabe, RS–232C
,6
27,7 Wortspezifikation, 1 Byte–Eingabe, Host–Link
42,2 :DM–Spezifikation, 256 Byte–Eingabe, Host–Link
50 ADB 14,1 Konstante + Konstante → Wort 2,650
15,6 Wort + Wort → Wort
2,6
37,4 :DM + :DM → :DM
51 SBB 14,4 Konstante – Konstante → Wort 2,65 S
15,9 Wort – Wort → Wort
2,6
37,7 :DM – :DM → :DM
52 MLB 16,8 Konstante Konstante → Wort 2,65
18,5 Wort Wort ” Wort
2,6
41,2 :DM :DM → :DM
53 DVB 16,9 Konstante ÷ Konstante → Wort 2,653
18,6 Wort ÷ Wort → Wort
2,6
41,3 :DM ÷ :DM → :DM
54 ADDL 25,3 Wort + Wort → Wort 2,65
48,6 :DM + :DM → :DM
2,6
55 SUBL 25,3 Wort – Wort → Wort 2,655 SU
48,6 :DM – :DM → :DM
2,6
56 MULL 79,1 Wort Wort → Wort 2,656 U
102,1 :DM :DM → :DM
2,6
57 DIVL 73,9 Wort ÷ Wort → Wort 2,65
98,6 :DM ÷ :DM → :DM
2,6
58 BINL 23,9 Konvertieren von Wortdaten in ein Wort 2,658
38,5 Konvertieren von :DM auf :DM
,6
59 BCDL 19,1 Konvertieren von Wortdaten in ein Wort 2,659 C
33,7 Konvertieren von :DM auf :DM
,6
60 CMPL 14,8 Vergleichen von Worten 2,660 C
30,6 Vergleichen von :DM
,6
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
513
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
61 INI 68,8 Schnellen Zähler–Vergleich starten 2,66
12,0 Schnellen Zähler–Vergleich beenden
,6
43,3 Spezifizieren einer Konstanten bei der Änderung ei-nes Schnellen Zähler–Istwertes
51,8 Spezifizieren :DM bei der Änderung eines SchnellenZähler–Istwertes
42,8 Spezifizieren des Inkrementalmodus über Konstante
50,8 Spezifizieren des Inkrementalmodus über :DM
60,1 Impulsausgabe beenden
42,7 Spezifizieren einer Konstanten bei der Änderung desImpulsausgabe–Istwertes
50,7 Spezifizieren von :DM bei der Änderung eines Im-pulsausgabe–Istwertes
17,8 Synchronisierte Funktion des schnellen Zählers be-enden
20,0 Spezifizieren einer Konstanten bei der Änderung ei-nes Interrupt–Zähler–Istwertes
27,6 Spezifizieren von :DM bei der Änderung eines Inter-rupt–Zähler–Istwertes
62 PRV 36,9 Schnellen Zähler–Istwert über Wort lesen 2,66
44,7 Lesen des Schnellen Zähler–Istwertes :DM
,6
36,6 Spezifizieren des Inkrementalmodus über Wort
44,3 Spezifizieren des Inkrementalmodus über :DM
38,5 Spezifizieren eines Wortes bei der Verwendung dersynchronisierten Ausgabe
46,2 Spezifizieren :DM bei der Verwendung der synchro-nisierten Ausgabe
20,2 Schnellen Zähler–Impulsausgabestatus über Wortlesen
27,4 Schnellen Zähler–Impulsausgabestatus über :DMlesen
24,4 Lesen der Schnellen Zähler–Lesebereichs–Vergleich-sergebnisse über Wort
32,4 Lesen der Schnellen Zähler–Lesebereichs–Vergleich-sergebnisse über :DM
39,9 Lesen des Impulsausgabe–Istwertes über Wort
47,8 Lesen des Impulsausgabe–Istwertes über :DM
20,1 Lesen des Interruptzähler–Istwertes über Wort
27,1 Lesen des Interruptzähler–Istwertes über :DM
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
514
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
63 CTBL 186,0 Speichern einer Zielwert–Vergleichstabelle und Star-ten des Vergleichs im Inkrementieren/Dekrementie-ren–Impulseingangsmodus über Wort
2,6
807,5 Speichern einer Zielwert–Vergleichstabelle und Star-ten des Vergleichs im Inkrementieren/Dekrementie-ren–Impulseingangsmodus über :DM
185,8 Speichern einer Zielwert–Vergleichstabelle und Star-ten des Vergleichs im Inkrementierenmodus überWort
781,9 Speichern einer Zielwert–Vergleichstabelle und Star-ten des Vergleichs im Inkrementierenmodus über:DM
410,0 Speichern einer Bereichs–Vergleichstabelle und Star-ten des Vergleichs im Inkrementieren/Dekrementie-ren–Impulseingangsmodus über Wort
418,9 Speichern einer Bereichs–Vergleichstabelle und Star-ten des Vergleichs im Inkrementieren/Dekrementie-ren–Impulseingangsmodus über :DM
380,6 Speichern einer Bereichs–Vergleichstabelle und Star-ten des Vergleichs im Inkrementierenmodus überWort
399,7 Speichern einer Bereichs–Vergleichstabelle und Star-ten des Vergleichs im Inkrementierenmodus über:DM
183,4 Nur Speichern einer Zielwert–Vergleichstabelle imInkrementieren/Dekrementieren–Impulseingangsmodus über Wort
810,3 Nur Speichern einer Zielwert–Vergleichstabelle imInkrementieren/Dekrementieren–Impulseingangsmodus über :DM
182,4 Nur Speichern einer Zielwert–Vergleichstabelle imInkrementierenmodus über Wort
776,3 Nur Speichern einer Zielwert–Vergleichstabelle imInkrementierenmodus über :DM
351,0 Nur Speichern einer Bereichs–Vergleichstabelle imInkrementieren/Dekrementieren–Impulseingangsmo-dus über Wort
359,1 Nur Speichern einer Bereichs–Vergleichstabelle imInkrementieren/Dekrementieren–Impulseingangsmo-dus über :DM
331,2 Nur Speichern einer Bereichs–Vergleichstabelle imInkrementierenmodus über Wort
335,9 Nur Speichern einer Bereichs–Vergleichstabelle imInkrementierenmodus über :DM
64 SPED 44,6 Spezifizieren einer Konstanten in der Unabhängig–Betriebsart
2,6
53,8 Spezifizieren von :DM in der Unabhängig–Betrieb-sart
42,9 Spezifizieren einer Konstanten in der Ununterbro-chen–Impulsausgabebetriebsart
52,0 Spezifizieren von :DM in der Ununterbrochen–Im-pulsausgabebetriebsart
34,1 Spezifizieren eines Wortes bei der Änderung der Aus-gangsfrequenz
39,8 Spezifizieren von :DM bei der Änderung der Aus-gangsfrequenz
65 PULS 38,4 Spezifizieren einer relativen Impulsanzahl über einWort
2,6
46,6 Spezifizieren einer relativen Impulsanzahl über :DM
40,0 Spezifizieren einer absoluten Impulsanzahl über einWort
48,1 Spezifizieren einer absoluten Impulsanzahl über:DM
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
515
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
66 SCL 37,9 Spezifizieren eines Parameterwortes; Konstante zuWort
2,6
39,2 Spezifizieren eines Parameterwortes; Wort zu Wort
59,9 Spezifizieren eines Parameters :DM ; :DM auf:DM
67 BCNT 24,9 Beim Zählen von einem Wort 2,66 C
4,32 ms Beim Zählen von 2,048 Worten über :DM
,6
68 BCMP 35,3 Vergleichen einer Konstanten, Ergebnisse an einWort
2,6
38,3 Vergleichen eines Wortes, Ergebnisse an ein Wort
58,1 Vergleichen von :DM, Ergebnisse an :DM
69 STIM 25,7 Konstanten–spezifizierten Monoflop–Interruptstarten 2,669 S
47,8 :DM-weise spezifizierten Monoflop–Interrupt starten
,6
25,9 Konstanten–spezifzierten und periodischen Interruptstarten
47,8 :DM-weise periodischen Interrupt starten
34,0 Konstanten–spezifizierten Zeitgeber lesen
46,4 :DM–weise spezifizierten Zeitgeber lesen
10,6 Anhalten des Zeitgebers
70 XFER 21,3 Übertragen einer Konstanten auf ein Wort 2,60
23,8 Übertragen eines Wortes auf ein Wort
2,6
1,52 ms Übertragen von 2,048 Worten über :DM
71 BSET 13,8 Kopieren einer Konstanten in ein Wort 2,6S
14,3 Kopieren eines Wortes in ein Wort
2,6
971,1 Kopieren von :DM zu 2,048 Worten
73 XCHG 14,5 Wort → Wort 2,63 C G
29,3 :DM → :DM
2,6
74 SLD 12,3 Verschieben eines Wortes 2,6S
23,9 Verschieben von 10 Worten
2,6
2,83 ms Verschieben von 2,048 Worten über :DM
75 SRD 12,3 Verschieben eines Wortes 2,65 S
23,9 Verschieben von 10 Worten
2,6
2,83 ms Verschieben von 2,048 Worten über :DM
76 MLPX 16,8 Decodierung eines Wortes in ein Wort 2,66
46,1 Decodieren von :DM auf :DM
2,6
77 DMPX 19,7 Kodieren eines Wortes in ein Wort 2,652,1 Kodieren von :DM auf :DM
2,6
78 SDEC 19,8 Dekodieren eines Wortes in ein Wort 2,68 S C
48,3 Dekodieren von :DM auf :DM
2,6
80 DIST 18,7 Kopieren einer Konstanten in ein Wort + ein Wort 2,680 S
20,2 Kopieren eines Wortes in ein Wort + ein Wort
2,6
43,1 Kopieren von :DM auf :DM + :DM
31,0 Kopieren einer Konstanten auf einen Stack
32,7 Kopieren eines Wortes auf einen Stack
55,9 Kopieren von :DM auf einen Stack über :DM
81 COLL 21,5 Kopieren einer Konstanten und eines Wortes in einWort
2,6
21,9 Kopieren eines Wortes und eines Wortes in ein Wort
42,5 Kopieren von :DM + :DM auf :DM
31,5 Kopieren eines Wortes + Konstante auf einen FIFO–Stapel
32,0 Kopieren eines Wortes + Wort auf einen FIFO–Stapel
784,7 Kopieren des :DM + :DM auf einen FIFO–Stapelüber :DM
33,6 Kopieren eines Wortes + Konstante auf einen LIFO–Stapel
34,0 Kopieren eines Wortes + Wort auf einen LIFO–Stapel
57,1 Kopieren des :DM + :DM auf einen LIFO–Stapelüber:DM
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
516
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
82 MOVB 17,3 Übertragen einer Konstanten auf ein Wort 2,68 O
18,0 Übertragen eines Wortes ein anderes Wort
2,6
41,7 Übertragen von :DM auf :DM
83 MOVD 13,8 Übertragen einer Konstanten auf ein Wort 2,683 O
16,2 Übertragen eines Wortes ein anderes Wort
2,6
38,1 Übertragen von :DM auf :DM
84 SFTR 22,8 Verschieben eines Wortes 2,68 S
24,3 Verschieben von 10 Worten
2,6
1,15 ms Verschieben von 2,048 Worten über :DM
85 TCMP 27,5 Vergleichen einer Konstanten mit Worten der spezifi-zierten Tabelle
2,6
28,0 Vergleichen eines Wortes mit Worten der spezifizier-ten Tabelle
48,3 Vergleichen von :DM auf :DM–Tabelle
86 ASC 19,1 Wort → Wort 2,686 SC
52,2 :DM → :DM
2,6
89 INT 22,1 Wortweise Maskierung 2,689
30,1 :DM–weise Maskierung
,6
18,4 Interrupt wortweise löschen
26,4 Interrupt :DM–weise löschen
17,2 Wortweises Auslesen des Maskierungsstatus
24,1 :DM–weises Auslesen des Maskierungsstatus
23,1 Wortweise Änderung des Zähler–Sollwerts
31,1 Zähler–Sollwert ändern über :DM
10,7 Wortweise Maskierung aller Interrupts
10,7 :DM–weise Maskierung aller Interrupts
11,0 Wortweises löschen aller Interrupts
11,0 :DM –weises löschen aller Interrupts
91 SBS 10,8 Beliebig 2,692 SBN –––
g
0,7693 RET 6,2 1,097 IORF 16,8 Auffrischen von IR 000 2,89 O
130,7 Auffrischen eines Eingangswortes
2,8
110,7 Auffrischen eines Ausgangswortes
99 MCRO 26,1 Mit wortweise spezifizierten E/A–Operanden 2,699 C O
42,3 Mit :DM–weise spezifizierten E/A–Operanden
2,6
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
517
Erweiterte Befehle ohne Vorgabe–FunktionscodesCode AWL EIN–Ausfüh-
rungszeit ( µs)Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)
––– ACC 66,5 Spezifizieren eines Wortes in der Unabhängig– undRechts–/Linkslauf–Betriebsart
2,6
92,1 Spezifizieren von :DM in der Unabhängig– undRechts–/Linkslauf–Betriebsart
66,2 Spezifizieren eines Wortes in der Unabhängig– undImpuls/Richtungs–Betriebsart
92,2 Spezifizieren von :DM in der Unabhängig– und Im-puls/Richtungs–Betriebsart
65,5 Ausführen der Wortzuweisung in der Ununterbro-chen–Rechtslauf– und Rechts–/Linkslauf–Betriebsart
75,0 Ausführen der :DM–Zuweisung in der Ununterbro-chen–Rechtslauf– und Rechts–/Linkslauf–Betriebsart
45,4 Ändern der Wortzuweisung in der Ununterbrochen–Rechtslauf– und Rechts–/Linkslauf–Betriebsart
53,8 Ändern der :DM–Zuweisung in der Ununterbro-chen–Rechtslauf– und Rechts–/Linkslauf–Betriebsart
65,5 Ausführen der Wortzuweisung in der Ununterbro-chen–Linkslauf– und Rechts–/Linkslauf–Betriebsart
75,0 Ausführen der :DM–Zuweisung in der Ununterbro-chen–Linkslauf– und Rechts–/Linkslauf–Betriebsart
45,5 Ändern der Wortzuweisung in der Ununterbrochen–Linkslauf– und Rechts–/Linkslauf–Betriebsart
53,6 Ändern der :DM–Zuweisung in der Ununterbro-chen–Linkslauf– und Rechts–/Linkslauf–Betriebsart
65,0 Ausführen der Wortzuweisung in der Ununterbro-chen–Rechtslauf– und Impuls/Richtungs–Betriebsart
74,5 Ausführen der :DM–Zuweisung in der Ununterbro-chen–Rechtslauf– und Impuls/Richtungs–Betriebsart
45,4 Ändern der Wortzuweisung in der Ununterbrochen–Rechtslauf– und Impuls/Richtungs–Betriebsart
53,5 Ändern der :DM–Zuweisung in der Ununterbro-chen–Rechtslauf– und Impuls/Richtungs–Betriebsart
65,4 Ausführen der Wortzuweisung in der Ununterbro-chen–Linkslauf– und Impuls/Richtungs–Betriebsart
74,8 Ausführen der :DM–Zuweisung in der Ununterbro-chen–Linkslauf– und Impuls/Richtungs–Betriebsart
45,5 Ändern der Wortzuweisung in der Ununterbrochen–Linkslauf– und Impuls/Richtungs–Betriebsart
53,6 Ändern der :DM–Zuweisung in der Ununterbro-chen–Linkslauf– und Impuls/Richtungs–Betriebsart
––– AVG 23,2 Durchschnitt für 1 Zyklus (Konstantenzuweisung) 3,2G
23,9 Durchschnitt für 1 Zyklus (Wortzuweisung)
3,
84,2 Durchschnitt für 64 Zyklen (:DM–Zuweisung)
––– FCS 27,6 Addieren eines Wortes und Ausgabe an ein Wort 2,6
592,3 Addieren von 999 Worten und Ausgabe an :DM
––– HEX 25,8 Wort → Wort 2,6
72,2 :DM → :DM
––– HMS 30,7 Konvertieren eines Wortes in Wort 2,6S
45,0 Konvertieren von :DM auf :DM
,6
––– MAX 21,9 Suchen eines Wortes und Ausgabe an ein Wort 2,6
713,9 Suchen von 999 Worten und Ausgabe an :DM
,6
––– MIN 21,9 Suchen eines Wortes und Ausgabe an ein Wort 2,6
713,9 Suchen von 999 Worten und Ausgabe an :DM
,6
––– NEG 12,0 Konvertieren einer Konstanten in ein Wort 3,0G
12,8 Konvertieren eines Wortes in ein Wort
3,0
28,3 Konvertierenvon :DM auf :DM
––– PID 392,5 Erste Ausführung, Wort mit Wort 3,3
418,8 Erste Ausführung, :DM mit :DM
3,3
29,3 Weitere Ausführungen, Wort auf Wort
58,7 Weitere Ausführungen, :DM auf :DM
8-2AbschnittCPM2/CPM2A–Zyklus– und E/A–Ansprechzeit
518
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
––– PWM 30,3 Konstante für Impulsbreitenverhältnis 2,6
43,4 Wort für Impulsbreitenverhältnis
,6
46,0 :DM für Impulsbreitenverhältnis
––– SCL2 35,1 Parameterwortzuweisung, Wort zu Wort 2,6SC
59,3 Parameter :DM–Zuweisung, :DM auf :DM
,6
––– SCL3 37,1 Parameterwortzuweisung, Wort zu Wort 2,6SC 3
62,3 Parameter :DM–Zuweisung, :DM auf :DM
,6
––– SEC 29,8 Beim Konvertieren eines Wortes in Wort 2,6S C
44,0 Konvertierung von:DM in :DM
,6
––– SRCH 28,9 Suchen eines Wortes und Ausgabe an ein Wort 2,6S C
1,40 ms :DM–Spezifikation, Durchsuchen von 2,048 Wortenund Ausgabe an :DM
,6
––– STUP 3,42 ms Konstantenspezifikation, Ausführung im ersten Zyklus 2,6S U
34,1 Konstantenspezifikation, Ausführung im zweiten Zy-klus oder späterer
,6
3,44 ms :DM–Spezifikation, Ausführung im erster Zyklus
39,8 :DM–Spezifikation, Ausführung im zweiten Zyklusoder späterer
––– SUM 22,8 Wortaddition und Ausgabe an Wort 2,6SU
1,44 ms :DM–Spezifikation, 999 Bytes addieren und Aus-gabe an :DM
,6
––– SYNC 34,6 Konstantenverhältnisspezifikation, bei Ausführung 2,6S C
35,3 Wortverhältnisspezifikation, bei Ausführung
,6
42,5 :DM–Verhältnisspezifikation, bei Ausführung
25,3 Wortverhältnisspezifikation, bei Änderung
32,6 :DM–Verhältnisspezifikation, bei Änderung
––– TIML Rückset-zung
IL JMP
12,8 Normale Ausführung, Konstantenspezifikation 17,9 17,5 8,1
13,5 Interrupt–Ausführung, Konstantenspezifikation 25,7 25,5 8,1
––– TMHH Rückset-zung
IL JMP
12,3 Normale Ausführung, Konstantenspezifikation 15,6 15,1 7,4
12,7 Interrupt–Ausführung, Konstantenspezifikation 17,2 16,9 9,1
12,7 Normale Ausführung, :DM–Spezifikation 23,6 23,3 7,7
13,6 Interrupt–Ausführung, :DM–Spezifikation 25,1 24,7 9,1
––– ZCP 9,4 Vergleichen einer Konstanten mit einem Konstanten-bereich und Ausgabe an Wort
2,6
11,8 Vergleichen eines Wortes mit einem Wortbereich undAusgabe an Wort
33,4 Vergleichen von :DM mit :DM und Ausgabe an:DM
––– ZCPL 19,5 Vergleichen eines Wortes mit einem Wortbereich 2,6C
45,2 Vergleichen von :DM mit :DM
,6
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
519
8-3 SRM1(–V2)–Zyklus– und E/A–Ansprechzeit
8-3-1 Der SRM1(–V2)–ZyklusDer gesamte Ablauf der SRM1(–V2)–Verarbeitung ist im folgenden Ablaufdia-gramm dargestellt.
Initialisierung
Betriebs–vorgänge
Programm-ausführung
Zykluszeit-verarbeitung
Service derRS–232C–Schnittstelle
Service derPeripherie-schnittstelle
Zy-klus-zeit
Ausgangs–auffrischung
CompoBus/S–Ende abwarten
Eingangs–auffrischung
Hinweis 1. Die Zykluszeit kann mit Programmiergeräten angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 gespei-chert.
3. Die Änderung der Verarbeitung verursacht, dass sich die Zykluszeiten än-dern; deshalb stimmen errechnete und aktuelle Werte (für Zykluszeit) nichtimmer überein.
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
520
8-3-2 SRM1(–V2)–ZykluszeitDie während eines einzelnen SRM1(–V2)–Zyklus ablaufenden Vorgänge sindin der folgenden Tabelle dargestellt. Darüber hinaus sind die entsprechendenVerarbeitungszeiten aufgeführt.
Prozess Inhalt zeitanforderungen
Betriebsvorgänge Stellen des Zykluswatchdog–Zeitgebers, UM(Anwenderpro-gramm)–Prüfung, usw.
0,18 ms
CompoBus/S–Ende warten
Warten auf das Ende der CompoBus/S–Verarbeitung CompoBus/S–Kommunikationszeit
Eingangsauffrischung Die Eingangsdaten der Eingangsbaugruppen werden in dieEingangsbits eingelesen.
0,02 ms
Programmausführung Ausführung des Anwenderprogramms
Sehen Sie Abschnitt 8-3-6 SRM1(–V2)–Befehlsausfüh-rungszeit.
Gesamtzeit für die Befehlsausführung(diese ändert sich in Abhängigkeit vondem Inhalt des Anwenderprogramms.)
Zykluszeit–Berechnung Bereitschaftsbetrieb (Stand–by) bis zur spezifizierten Zeit,wenn die Mindest–Zykluszeit in der Konfiguration in DM6619 spezifiziert wird.
Berechnung der Zykluszeit.
Die Berechnung erfolgt fast unmittelbar(gilt nicht für den Bereitschaftsbetrieb).
Ausgangsauffrischung Ausgangsdaten (Ergebnisse der Programmausführung)werden in die Ausgangsbits geschrieben.
CompoBus/S–Kommunikation wird gestartet.
0,05 ms
Service der RS–232C–Schnittstelle
Bearbeitung der mit der RS–232C–Schnittstelle verbunde-nen Geräte.
5% oder Prozentsatz der Zykluszeit, aberimmer zwischen 0,55 und 131 ms(in DM 6616 spezifiziert.)
Service der Peripherie-schnittstelle
Bearbeitung der mit der Peripherieschnittstelle verbunde-nen Geräte.
5% oder Prozentsatz der Zykluszeit, aberimmer zwischen 0,55 und 131 ms(in DM 6617 spezifiziert.)
Minimale Zykluszeit In SPS–Systemen der SRM1(–V2)–Serie wird die CompoBus/S–Kommunika-tion gestartet, nachdem die Ausgangsauffrischung beendet ist. Infolgedessenwird, wenn die Betriebsvorgangszeit plus die RS–232C–Schnittstellen–Ser-vice–Zeit plus die Peripherieschnittstellen–Service–Zeit kürzer ist als die Com-poBus/S–Kommunikationsreaktionszeit die Verarbeitung ausgesetzt, bis dieCompoBus/S–Kommunikation beendet ist.
Die Mindest–Zykluszeit ist deshalb die CompoBus/S–Kommunikationsreak-tionszeit plus die Programmausführungs–Zeit plus die Eingangsauffrischungs-zeit plus die Ausgangsauffrischungszeit. Die CompoBus/S–Kommunikations-reaktionszeit hängt von der “Maximalanzahl der Teilnehmer” und der “Kommu-nikationsmodus”–Einstellungen ab, wie im Folgenden dargestellt ist:
Max. Anzahl der Teilnehmer
Kommunikations–modus
CompoBus/S–Kommunikationszeit
32 Schneller Modus 0,8 ms3
Long-Distance–Modus 6,0 ms
16 Schneller Modus 0,5 ms6
Long-Distance–Modus 4,0 ms
Hinweis Die Maximalanzahl der Teilnehmer und der Kommunikationsmodus werden inder SPS–Konfiguration (DM 6603) eingestellt.
Zykluszeit und Betrieb Der Einfluss der Zykluszeit auf den SRM1(–V2)–Betrieb ist nachfolgend darge-stellt. Beeinflußt eine lange Zykluszeit den Betrieb, kann entweder die Zyklus-
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
521
zeit verringert oder die Ansprechzeit mit Interrupt–Programmen verbessert wer-den.
Zykluszeit Betriebsbedingungen
Min. 10 ms oder länger Bei Verwendung der Zeitgeber/Zähler TC 004 bis TC 127 wird TIMH(15) möglicherweise mit geringerer Präzi-sion ausgeführt. (Bei Verwendung von TC 000 bis TC 003 ist ein normaler Betrieb gewährleistet).
20 ms oder länger Die Programmierung ist bei Verwendung des 0,02 s–Taktbits (SR 25401) möglicherweise ungenau.
100 ms oder länger TIM ist evtl. ungenau. Die Programmierung ist bei Verwendung des 0,1 s–Taktbits (SR 25500) möglicher-weise ungenau. Ein Fehler (Zykluszeit–Überschreitung) wird generiert (SR 25309 wird gesetzt – sehen SieHinweis 1).
120 ms oder länger Der Sollwert der Überwachungszeit wird überschritten und und ein Systemfehler (FALS 9F) generiert, der denBetrieb stoppt (sehen Sie Hinweis 2).
200 ms oder länger Die Programmierung ist bei Verwendung des 0,2 s–Taktbits (SR 25501) möglicherweise ungenau.
Hinweis 1. in der Konfiguration (DM 6655) kann die Erkennung der Zykluszeit–Über-schreitung deaktiviert werden.
2. Die Zyklus–Überwachungszeit kann in der Konfiguration (DM 6618) geän-dert werden.
Berechnung der Zykluszeit Nachfolgend ist ein Beispiel für die Berechnung der Zykluszeit aufgeführt.
Folgende Betriebsbedingungen werden vorausgesetzt:
Programmspeicher: 500 Befehle (nur bestehend aus LD und OUT)
Zykluszeit: Variabel (kein Minimum spezifiziert)
RS-232C–Schnittstelle: Nicht verwendet
Max. Anz. Teilnehmer: 32 Teilnehmer und schneller Kommun.modus(CompoBus/S–Kommunikationszeit = 0,8 ms)
Peripherie: 0,7 ms
In diesem Beispiel wird vorausgesetzt, dass die durchschnittliche Verarbei-tungszeit für einen einzelnen Befehl in dem Anwenderprogramm 1,6 µs beträgt.Die Zykluszeiten sind in der nachfolgendenTabelle dargestellt.
Prozess Berechnung Mit Peripherieschnittstelle
Ohne Peripherieschnittstelle
1. Betriebsvorgang Fest 0,18 ms 0,18 ms
2. CompoBus/S–Ende abwarten
Sehen Sie die vorhergehendeSeite
0,00 ms 0,62 ms
3. Eingangsauffrischung Fest 0,02 ms 0,02 ms
4. Programmausführung 1,6 × 500 (µs) 0,8 ms 0,8 ms
5. Zykluszeit–Berechnung Vernachlässigbar 0,00 ms 0,00 ms
6. Ausgangsauffrischung 0,05 ms 0,05 ms
7. Service der RS–232C–Schnittstelle
Wird nicht benötigt 0,00 ms 0,00 ms
8. Service der Peripherie-schnittstelle
5% der Zykluszeit 0,7 ms 0,00 ms
Zykluszeit (1) + (2) + (3) + ...+ (8) 1,75 ms 1,67 ms
Hinweis 1. Die Zykluszeit der SPS kann über ein Programmiergerät angezeigt werden.
2. Die maximale und die aktuelle Zykluszeit wird in AR 14 und AR 15 gespei-chert.
3. Die Zykluszeit hängt von den tatsächlichen Betriebsbedingungen ab undstimmt möglicherweise nicht mit dem berechneten Wert überein.
4. Bei Verwendung der Peripherieschnittstelle gibt es keine “CompoBus/S–Ende abwarten–Zeit”, da sie immer 0 ist.
5. CompoBus/S–Ende abwarten–Verzögerungszeit = 0,8 – 0,18 – 0 – 0 = 0,62(CompoBus/S–Kommunikationszeit – Betriebsvorgänge – RS–232C–Schnittstellen–Service–Zeit – Peripherieschnittstellen–Service–Zeit.
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
522
8-3-3 E/A–ReaktionszeitDie E/A–Ansprechzeit ist die Zeit, die die SPS nach dem Empfang eines Ein-gangssignals (d.h. nach dem Setzen eines Eingangsbits) zur Überprüfung undVerarbeitung der Daten sowie zur Ausgabe eines Steuersignals (zur Ausgabedes Verarbeitungsergebnisses an ein Ausgangsbit) benötigt.
Die CompoBus/S–Kommunikation wird gestartet, wenn die SRM1(–V2) Auffri-schungsausführung beendet ist. Der Ein–/Aus–Zustand wird von den Ein-gangsmodulen während der Eingangsauffrischung gelesen und der Ein–/Aus–Zustand wird während der Ausgangsauffrischung an die Ausgangsmodule aus-gegeben. Hierdurch ändert sich die SRM1(–V2)–E/A–Ansprechzeit entspre-chend der Zykluszeit und dem CompoBus/S–Kommunikations–Zykluszustandoder dem E/A–Zeitverhalten.
Beispielsberechnungen der E/A–Ansprechzeit sind im Folgenden aufgeführt.
Minimale E/A–AnsprechzeitMinimale E/A–Ansprechzeit =Eingang–EIN–Verzögerung + Ausgang–EIN–Verzögerung + CompoBus/S–Kommunikations–Zykluszeit + SRM1(–V2)–Zykluszeit
SRM1(–V2)–Zyklus
Kommunikations-reaktionzeit
Eingang auf dem Slave
Ausgang auf dem Slave
Eingang–EIN–Verzögerung
Zykluszeit
CompoBus/S–Zykluszeit
Ausgangs–verzögerung
Maximale E/A–AnsprechzeitMaximale E/A–Ansprechzeit =Eingang–EIN–Verzögerung + Ausgang–EIN–Verzögerung + CompoBus/S–Kommunikations–Zykluszeit + SRM1(–V2)–Zykluszeit x 2
SRM1(–V2)–Zyklus
Kommunikations-reaktionzeit
Eingang auf dem Slave
Ausgang auf dem Slave
Eingang–EIN–Verzögerung
Zykluszeit
CompoBus/S–Zykluszeit
Ausgangs–verzögerung
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
523
8-3-4 1:1–PC–Link–E/A–AnsprechzeitWerden zwei SRM1–Steuerungen mit der 1:1 PC–Link–Kommunikation ver-wendet, ist die E/A–Ansprechzeit die Zeit vom Anlegen eines Eingangssignalsan die eine SRM1 bis zur Ausgabe eines Signals an die andere SRM1.
Minimale E/A–Ansprechzeit Die minimale Ansprechzeit der SRM1 ist unter den folgenden Bedingungen ge-geben:
1, 2, 3... 1. Die SRM1(–V2) erhält ein Eingangssignal gleich vor der E/A–Auffri-schungsphase des Zyklus.
2. Die Master/Slave–Übertragung beginnt sofort.
3. Der Kommunikations–Service des Slaves tritt unmittelbar nach Abschlussder Übertragung ein.
Ausgangs–anschluss
Master–Zykluszeit (10 ms)
Programm-ausführung
Übertragungszeit (39 ms)
Slave–Zykluszeit (15 ms)
Min. E/A–Ansprechzeit = 8+10+39+15+10 = 82 ms
Eingangs–anschluss
Ein–gangs-bit
E/A–Auffrischung
Betriebsvorgänge, Kommunikationusw.
Eingang–EIN–Verzögerung (8 ms)
Master ⇒ Slave
Ausgang–EIN–Ver-zögerung (10 ms)
Programm-ausführung
Maximale E/A–Ansprechzeit Die maximale Ansprechzeit der SRM1(–V2) ist unter den folgenden Bedingun-gen gegeben:
1, 2, 3... 1. Die SRM1(–V2) erhält ein Eingangssignal gleich nach der E/A–Auffri-schungsphase des Zyklus.
2. Die Master/Slave–Übertragung beginnt mit einer Verzögerung.
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
524
3. Die Übertragung ist unmittelbar nachdem der Slave den Kommunikations–Service ausgeführt hat, abgeschlossen.
Ausgangs-anschluss
Master–Zykluszeit (10 ms)
Übertragungszeit (39 ms × 3)
Slave–Zykluszeit (15 ms)
Maximale E/A–Ansprechzeit = 8 + 10 × 2 + 39 × 3 + 15 × 2 + 10 = 185 ms
E/A–Auffrischung
Betriebssystem, Kommunikation usw.Eingang–EIN–Verzögerung (8 ms)Eingangs–anschluss
Ein–gangsbit
Master ⇒ SlaveSlave ⇒ MasterMaster ⇒ Slave
Ausgang–EIN–Ver-zögerung (10 ms)
Programm-ausführung
Programm-ausführung
Programm-ausführung
Programm-ausführung
8-3-5 Interrupt–VerarbeitungszeitIn diesem Abschnitt wird die Verarbeitungszeit von der Ausführung eines Inter-rupts bis zum Aufruf des Interrupt–Unterprogrammes sowie die Zeit vom Ab-schluss eines Interrupt–Unterprogrammes bis zur Rückkehr in das Hauptpro-gramm erläutert. Diese Erklärung gilt für Intervall–Zeitgeber–gesteuerte Inter-rupts.
1, 2, 3... 1. Interrupt–Auslösung
2. Bereitschaft bis zum Abschluss der Interrupt–Maskierungsverarbeitung
3. Wechsel zur Interrupt–Verarbeitung
4. Interrupt–Unterprogramm
5. Rückkehr in das Hauptprogramm
In der folgenden Tabelle sind die Zeiten von der Generierung eines Interrupt–Si-gnals bis zum Aufruf des Interrupt–Unterprogrammes sowie vom Abschluss desInterrupt–Unterprogrammes bis in das Hauptprogramm aufgeführt.
Spezifikation Beschreibung Zeit
Bereitschaft bis zum Abschluss der Interrupt–Maskie-rungsverarbeitung
Zeit, in der Interrupts auf den Abschluss einer laufenden Verarbeitung warten. Diesesist bei der Ausführung einer Maskierungs–verarbeitung der Fall. Sehen Sie die nachfolgende, ausführlichere Beschreibung.
Sehen Siedie nachfol-gende Be-schreibung.
Wechsel zur Interrupt–Verarbei-tung
Dies ist die für den Wechsel zu der Interrupt–Verarbeitung erforderliche Zeit. 15 µs
Rückkehr Zeit von der Ausführung der RET(93)–Anweisung bis zur Rückkehr in den unterbro-chenen Programmabschnitt.
15 µs
Maskierungsverarbeitung
Interrupts werden durch die nachfolgende Verarbeitung maskiert. Die Interruptsbleiben bis zum Abschluss der Verarbeitung während der angegebenen Zeitenmaskiert.
Generierung und Rücksetzung schwerwiegender Fehler:
Bei der Generierung eines geringfügigen Fehlers und der Speicherung desFehlerinhalts in der SRM1(–V2) bzw. bei der Rücksetzung eines Fehlerswerden Interrupts für maximal 100 µs bis zum Abschluss der Verarbeitungmaskiert.
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
525
On–line–Editierung:
Erfolgt während des Betriebs eine On–line–Editierung, werden Interruptsfür maximal 600 ms (d.h., Editierung von DM 6144 bis DM 6655) maskiert.Zusätzlich kann die Wartezeit der Systemverarbeitung während dieses Vor-gangs bis zu maximal 170 µs betragen.
8-3-6 SRM1(-V2)–BefehlsausführungszeitenDie folgende Tabelle enthält die Ausführungszeiten der SRM1(–V2)–Befehle.
BasisbefehleCode AWL EIN–Ausfüh-
it ( )Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)Code us ü
rungszeit ( µs)ed gu ge (obe , u e a )
RSET IL JMP
––– LD 0,97 Beliebig –––
––– LD NOT 0,97
e eb g
------
ANDAND NOT
0,77
------
OROR NOT
0,78 Beliebig –––
------
AND LDOR LD
0,39 Beliebig –––
------
OUTOUT NOT
2,2
––– SET 2,7
––– RSET 2,8
––– TIM 5,7 Konstante für Sollwert 9,3 9,1 3,55,
:DM für Sollwert 17,4 17,2 3,5
––– CNT 6,6 Konstante für Sollwert 8,0 3,6 3,8C 6,6
:DM für Sollwert 16,3 3,6 3,8
Spezialbefehle und Erweiterte BefehleCode AWL EIN–Ausfüh-
rungszeit ( µs)Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)
00 NOP 0,20 Beliebig
01 END 4,8
e eb g
02 IL 2,5 1,4
03 ILC 1,9 1,9
04 JMP 2,2 1,305 JME 2,5 2,506 FAL 18,4 2,907 FALS 3,6 2,908 STEP 10,7 9,009 SNXT 5,9 4,110 SFT 14,5 Rückset-
zungIL JMP
Mit 1 Wort–Schieberegister 11,0 1,4 1,4
21,0 Mit 10 Worte–Schieberegister 14,9 1,4 1,4
49,1 Mit 100 Worte–Schieberegister 30,8 1,4 1,4
11 KEEP 3,0 Beliebig Rück-setzung
IL JMP
3,4 1,6 1,712 CNTR 14,8 Rückset-
zungIL JMP
Konstante für Sollwert 9,1 6,6 6,523,2 :DM für Sollwert
9,1 6,6 6,5
13 DIFU 6,7 Beliebig Ver–schie-bung
IL JMP
5,8 5,2 1,3
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
526
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
14 DIFD 6,4 Beliebig Ver–schie-bung
IL JMP
5,8 5,7 1,3
15 TIMH 10,3 Rückset-zung
IL JMP
Reguläre Ausführung, Konstante für Sollwert 14,1 13,9 7,0
10,9 Interrupt–Ausführung, Konstante für Sollwert 15,6 15,4 8,5
10,3 Normale Ausführung, :DM für Sollwert 22,8 22,1 7,0
10,9 Interrupt–Ausführung, :DM für Sollwert 23,9 23,6 8,5
16 WSFT 16,2 Mit 1 Wort–Schieberegister 2,96 S
23,0 Mit 10 Worte–Schieberegister
2,9
712,3 Mit 1024 Worte–Schieberegister bei Verwendung von:DM
17 ASFT* 18,6 Verschieben eines Wortes 3,0S
25,9 Verschieben von 10 Worten
3,0
865,7 Verschieben von 1023 Worten mit :DM
20 CMP 9,1 Vergleichen einer Konstanten mit einem Wort 3,00 C
9,9 Vergleichen von zwei Worten
3,0
25,6 Vergleichen von zwei :DM
21 MOV 9,1 Übertragen einer Konstanten auf ein Wort 3,0O
9,5 Übertragen eines Wortes auf ein anderes Wort
3,0
24,9 Übertragen von :DM auf :DM
22 MVN 9,3 Übertragen einer Konstanten auf ein Wort 3,09,8 Übertragen eines Wortes auf ein anderes Wort
3,0
25,1 Übertragen von :DM auf :DM
23 BIN 17,2 Konvertieren eines Wortes in ein Wort 3,03
32,0 Konvertieren von :DM auf :DM
3,0
24 BCD 15,8 Konvertieren eines Wortes in ein Wort 3,0C
30,6 Konvertieren von :DM auf :DM
3,0
25 ASL 9,9 Verschieben eines Wortes 2,95 S
17,3 Verschieben von :DM
2,9
26 ASR 9,7 Verschieben eines Wortes 3,06 S
17,2 Verschieben von :DM
3,0
27 ROL 8,5 Rotieren eines Wortes 2,9O
16,1 Rotieren von :DM
2,9
28 ROR 8,5 Rotieren eines Wortes 2,98 O
16,1 Rotieren von :DM
,9
29 COM 10,5 Invertieren eines Wortes 3,09 CO
17,7 Invertieren von :DM
3,0
30 ADD 15,9 Konstante + Wort → Wort 3,130
16,4 Wort + Wort → Wort
3,1
39,5 :DM + :DM → :DM
31 SUB 15,6 Konstante – Wort → Wort 3,03 SU
16,3 Wort – Wort → Wort
3,0
38,6 :DM – :DM → :DM
32 MUL 29,7 Konstante Wort → Wort 3,03 U
28,5 Wort Wort → Wort
3,0
51,6 :DM :DM → :DM
33 DIV 27,2 Wort ÷ Konstante → Wort 2,933
28,5 Wort ÷ Wort → Wort
2,9
53,1 :DM ÷ :DM → :DM
34 ANDW 14,3 Konstante Wort → Wort 2,93
15,2 Wort Wort → Wort
2,9
37,3 :DM :DM → :DM
35 ORW 14,3 Konstante V Wort → Wort 2,935 O
15,2 Word V word → word
2,9
37,3 :DM V :DM → :DM
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
527
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
36 XORW 14,3 Konstante V Wort → Wort 2,936 O
15,2 Wort V Wort → Wort
2,9
37,3 :DM V :DM → :DM
37 XNRW 14,3 Konstante V Wort → Wort 2,93
15,2 Wort V Wort → Wort
2,9
37,3 :DM V :DM → :DM
38 INC 9,9 Inkrementieren eines Wortes 2,938 C
17,3 Inkrementieren von :DM
2,9
39 DEC 10,2 Dekrementieren eines Wortes 2,939 C
17,4 Dekrementieren von :DM
2,9
40 STC 3,5 Beliebig 2,941 CLC 3,0
g
2,946 MSG 11,3 Meldung in Worten 2,96 SG
19,4 Meldung in :DM
2,9
47 RXD* 39,1 Wortspezifikation, 1 Byte–Eingabe 2,9116,8 :DM Spezifikation, 256 Byte–Eingabe
2,9
48 TXD* 31,3 Wortspezifikation, 1 Byte–Eingabe, (RS–232C) 2,98
266,5 :DM–Spezifikation, 256 Byte–Eingabe, (RS–232C)
2,9
26,7 Wortspezifikation, 1 Byte–Eingabe, Host–Link
34,0 :DM–Spezifikation, 256 Byte–Eingabe, Host–Link
50 ADB 16,8 Konstante + Wort → Wort 3,050
17,6 Wort + Wort → Wort
3,0
39,9 :DM + :DM → :DM
51 SBB 17,0 Konstante – Wort → Wort 3,05 S
17,8 Wort – Wort → Wort
3,0
40,2 :DM – :DM → :DM
52 MLB 19,1 Konstante Wort → Wort 3,05
20,1 Wort Wort → Wort
3,0
43,5 :DM :DM → :DM
53 DVB 19,5 Wort ÷ Konstante → Wort 3,053
20,4 Wort ÷ Wort → Wort
3,0
43,7 :DM ÷ :DM → :DM
54 ADDL 26,7 Wort + Wort → Wort 3,05
49,9 :DM + :DM → :DM
3,0
55 SUBL 26,8 Wort – Wort → Wort 3,055 SU
49,9 :DM – :DM → :DM
3,0
56 MULL 81,4 Wort Wort → Wort 3,056 U
106,2 :DM :DM → :DM
3,0
57 DIVL 76,9 Wort ÷ Wort → Wort 3,05
101,8 :DM ÷ :DM → :DM
3,0
60 CMPL 16,9 Vergleichen von Worten 2,960 C
32,9 Vergleichen von :DM
,9
66 SCL* 69,5 Wortspezifikation 3,066 SC
91,5 :DM–Spezifikation
3,0
67 BCNT* 26,9 Zählen eines Wortes 3,06 C
2,29 ms Zählen von 6656 Worten über :DM
3,0
68 BCMP* 41,4 Vergleichen einer Konstanten, Ergebnisse an einWort
3,0
41,9 Vergleichen eines Wortes, Ergebnisse an ein Wort
64,5 Vergleichen von :DM, Ergebnisse an :DM
69 STIM* 34,7 Wortweise spezifizierten Monoflop–Interrupt starten 3,069 S
49,5 :DM–weise spezifizierten Monoflop–Interrupt starten
3,0
35,3 Wortweise und periodischen Interrupt starten
50,0 :DM–weise und periodischen Interrupt starten
33,9 Wortweise spezifizierten Zeitgeber lesen
49,5 :DM–weise spezifizierten Zeitgeber lesen
11,4 Wortweise spezifizierten Zeitgeber anhalten
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
528
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
70 XFER 22,9 Übertragen einer Konstanten auf ein Wort 3,00
24,0 Übertragen eines Wortes auf ein Wort
3,0
902,0 Übertragen von 1024 Worten mit Hilfe von :DM
71 BSET 15,2 Kopieren einer Konstanten in ein Wort 3,0S
15,7 Kopieren einer Wortkonstanten in 10 Worte
3,0
565,2 Kopieren von :DM in 1024 Worte
73 XCHG 16,2 Wort → Wort 3,13 C G
31,5 :DM → :DM
3,1
74 SLD 13,6 Verschieben eines Wortes 3,0S
26,7 Verschieben von 10 Worten
3,0
1,54 ms Verschieben von 1024 Worten mit Hilfe von:DM
75 SRD 13,6 Verschieben eines Wortes 3,05 S
26,6 Verschieben von 10 Worten
3,0
1,54 ms Verschieben von 1024 Worten mit Hilfe von :DM
76 MLPX 25,5 Dekodieren eines Wortes in ein Wort 3,06
48,9 Dekodieren von :DM auf :DM
3,0
77 DMPX 35,1 Kodieren eines Wortes in ein Wort 3,058,1 Kodieren von :DM auf :DM
3,0
78 SDEC 26,8 Dekodieren eines Wortes in ein Wort 2,98 S C
49,9 Dekodieren von :DM auf :DM
2,9
80 DIST 21,3 Kopieren einer Konstanten in ein Wort + ein Wort 3,080 S
21,9 Kopieren eines Wortes in ein Wort + ein Wort
3,0
45,7 Kopieren von :DM auf :DM +:DM
34,3 Kopieren einer Konstanten auf einen Stack
35,3 Kopieren eines Wortes auf einen Stack
59,3 Kopieren von :DM auf einen Stack über :DM
81 COLL 21,4 Kopieren einer Konstanten + ein Wort in ein Wort 3,08 CO
21,8 Kopieren eines Wortes + ein Wort in ein Wort
3,0
44,9 Kopieren von :DM + :DM auf :DM
34,0 Kopieren eines Wortes + Konstante auf einen FIFO–Stack
33,9 Kopieren eines Wortes + Wort auf einen FIFO–Stack
892,0 Kopieren des :DM + :DM auf einen FIFO–Stapelüber :DM
35,4 Kopieren eines Wortes + Konstante auf einen LIFO–Stack
36,1 Kopieren eines Wortes + Wort auf einen LIFO–Stack
60,5 Kopieren des :DM + :DM auf einen LIFO–Stapelüber :DM
82 MOVB 18,2 Übertragen einer Konstanten auf ein Wort 3,08 O
19,0 Übertragen eines Wortes auf ein anderes Wort
3,0
42,1 Übertragen von :DM auf :DM
83 MOVD 16,3 Übertragen einer Konstanten auf ein Wort 2,983 O
17,6 Übertragen eines Wortes auf ein anderes Wort
2,9
39,9 Übertragen von :DM auf :DM
84 SFTR 21,0 Verschieben eines Wortes 3,08 S
26,9 Verschieben von 10 Worten
3,0
718,5 Verschieben von 1024 Worten mit Hilfe von :DM
85 TCMP 30,0 Vergleichen einer Konstanten mit Worten der spezifi-zierten Tabelle
3,0
30,7 Vergleichen eines Wortes mit Worten der spezifizier-ten Tabelle
53,1 Vergleichen von :DM auf :DM–Einstelltabelle
86 ASC 30,0 Wort → Wort 3,086 SC
53,7 :DM → :DM
3,0
91 SBS 13,2 Beliebig 3,092 SBN –––
g
1,393 RET 7,8 1,3
8-3AbschnittSRM1(–V2)–Zyklus– und E/A–Ansprechzeit
529
Code AUS–Ausführungszeit ( µs)Bedingungen (oben: min, unten: max.)EIN–Ausfüh-rungszeit ( µs)
AWL
99 MCRO 26,8 Mit wortweise spezifizierten E/A–Operanden 3,099 C O
43,5 Mit :DM–weise spezifizierten E/A–Operanden
3,0
Hinweis Die mit einem Sternchen gekennzeichneten Befehle sind Erweiterungsbefehl.
Erweiterte Befehle ohne Vorgabe–FunktionscodesCode AWL EIN–Ausfüh-
rungszeit ( µs)Bedingungen (oben: min, unten: max.) AUS–Ausführungszeit ( µs)
––– FCS 23,4 Addieren eines Wortes und Ausgabe an ein Wort 3,0
643,7 Addieren von 999 Worten und Ausgabe an :DM
––– HEX 43,6 DM → DM 3,0
73,5 :DM → :DM
––– NEG 46,0 Konvertieren einer Konstanten in ein Wort 3,0G
48,0 Konvertieren eines Wortes in ein Wort
3,0
65,5 Konvertieren :DM auf :DM
––– PID 420,0 Erste Ausführung Wort mit Wort 3,0
452,0 Erste Ausführung :DM auf :DM
3,0
63,0 Weitere Ausführungen Wort zu Wort
84,5 Weitere Ausführungen :DM auf :DM
––– STUP 51,2 Übertragen einer Konstanten an Wort 3,0
58,2 Übertragen eines Wortes an Wort
––– ZCP 45,0 Vergleichen einer Konstanten mit einem Wortbereich 3,0C
46,5 Vergleichen eines Wortes mit einem Wortbereich
3,0
69,0 Vergleichen von :DM auf :DM
531
Kapitel 9Fehlersuche
Dieses Kapitel beschreibt die Fehlersuche und –behebung der während des SPS–Betriebs auftretenden Hardware– und Soft-warefehler.
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9-2AbschnittFehlermeldung der Programmierkonsole
532
9-1 EinführungSPS–Fehler können allgemein in die folgenden vier Kategorien eingeteilt wer-den:
1, 2, 3... 1. Programmeingabe–Fehler
Diese Fehler treten bei der Eingabe eines Programms oder bei der Aktivie-rung eines Vorgangs auf, der zur Vorbereitung des SPS–Betriebs dient.
2. Programmierfehler
Diese Fehler werden während der Programmüberprüfung über die entspre-chende Funktion angezeigt.
3. Durch den Anwender definierte Fehler
Der Anwender kann mit Hilfe von drei Befehlen eigene Fehler oder Meldun-gen definieren. Die Befehle werden ausgeführt, wenn eine besondere Be-dingung (durch den Anwender definiert) während des Betriebs auftritt.
4. Betriebsfehler
Diese Fehler treten nach Beginn der Programmausführung auf.
a) Geringfügige Fehler:Der SPS–Betrieb und die Programmausführung werden nach Auftreteneines oder mehrerer dieser Fehler fortgesetzt.
b) Schwerwiegende Fehler:Der SPS–Betrieb und die Programmausführung werden nach Auftretendieses Fehlers beendet und alle Ausgänge der SPS deaktiviert.
Die LEDs der SPS melden einen SPS–Fehler und zeigen eine Fehlermeldungoder den entsprechenden Fehlercode auf der Programmierkonsole oder demHost–Computer an, sofern dieser angeschlossen ist. Der Fehlercode wird dar-überhinaus in dem Systemmerkerbereich SR 25300 bis SR 25307 gespeichert.
Für die zuletzt aufgetretenen Fehler wird sowohl der Fehlertyp als auch der Zeit-punkt ihres Auftretens im SPS–Fehlerprotokollbereich gespeichert. Sehen SieSeite 537 für weitere Informationen.
Für die Fehlersuche können Informationen des SR– und AR–Bereiches ver-wendet werden. Sehen Sie Kapitel 3 Speicherbereiche für weitere Informatio-nen.
Hinweis Zusätzlich zu den oben beschriebenen Fehlern können Kommunikationsfehlerauftreten, wenn die SPS innerhalb eines Host–Link–Systems eingesetzt wird.Sehen Sie Seite 539 für weitere Informationen.
9-2 Fehlermeldung der ProgrammierkonsoleBei Arbeiten mit der Programmierkonsole können folgende Fehler auftreten.Beheben Sie die Fehler wie angegeben und setzen Sie den Betrieb fort. Die inden nachstehenden Anzeigen angegebenen Sternchen werden in der tatsächli-chen Anzeige durch numerische Daten, normalerweise eine Adresse ersetzt.Weitere Informationen (Fehler) werden in der CX–Programmer–Programmier-software angezeigt.
Fehlermeldung Erklärung und Abhilfe
REPL ROM Es wurde versucht, Daten in einem schreibgeschützten Speicherabzulegen. Bit 00 bis 03 von DM 6602 auf “0” setzen.
PROG OVER Der Befehl auf der letzten Adresse im Speicher ist nicht NOP (00).Löschen Sie alle unnötigen Befehle am Ende des Programmes.
ADDR OVER Es wurde eine Adresse spezifiziert, die größer als die höchsteSpeicheradresse im Programmspeicher ist. Geben Sie eine kleinereAdresse an.
SET DATA ERR FALS 00 wurde eingegeben, “00” kann jedoch nicht eingegeben werden.Geben Sie die Daten erneut ein.
I/O NO. ERR Es wurde eine Datenbereichsadresse spezifiziert, die die Grenze desDatenbereiches überschreitet. Dies ist z.B. der Fall, wenn eine Adressezu groß ist. Bestätigen Sie die Bedingungen für den Befehl, und gebenSie die Adresse erneut ein.
9-3AbschnittProgrammierfehler
533
9-3 ProgrammierfehlerDiese Fehler werden bei der Syntaxüberprüfung des Programms erkannt.
Es stehen drei Programmüberprüfungs–Ebenen zur Verfügung. Die ge-wünschte Ebene, die den zu erkennenden Fehlertyp anzeigen soll, muß an-gegeben werden. Die folgende Tabelle enthält die Fehlertypen und –anzei-gen sowie die Erläuterung aller Syntaxfehler. Prüfebene 0 sucht nach A–, B–,und C–Fehlerarten, Prüfebene 1 nach A– und B–Fehlern und Prüfebene 2nur nach A–Fehlern.
Fehlermeldung Erklärung und Abhilfe
????? Das Programm wurde beschädigt und hierdurch ein nicht existierenderFunktionscode erzeugt. Laden Sie das Programm erneut.
CIRCUIT ERR Die Anzahl von Logikblöcken und Logikblock–Befehlen stimmt nichtüberein, d.h. LD oder LD NOT wurde verwendet, um einen Logikblock zustarten, dessen Ausführungsbedingung bisher von keinem anderenBefehl verwendet wurde. Es ist ebenso möglich, dass einLogikblockbefehl verwendet wurde, der nicht die erforderliche Anzahlvon Logikblöcken besitzt. Überprüfen Sie Ihr Programm.
OPERAND ERR Eine für den Befehl eingegebene Konstante befindet sich nicht innerhalbder definierten Werte. Ändern Sie die Konstante so, dass sie innerhalbdes richtigen Bereiches liegt.
NO END INSTR Das Programm enthält keinen END(01)–Befehl. Speichern Sie END(01)auf der Endadresse des Programms.
LOCN ERR Ein Befehl befindet sich im Programm an der falschen Stelle. ÜberprüfenSie die Befehlsbedingungen, und korrigieren Sie das Programm.
JME UNDEFD Es fehlt ein JME(05)–Befehl für einen JMP(04)–Befehl. Korrigieren Siedie Sprungnummer oder fügen Sie den richtigen JME(05)–Befehl ein.
DUPL Es wurde zweimal dieselbe Sprungnummer oder Unter–programmnummer verwendet. Korrigieren Sie das Programm, so dassdieselbe Nummer jeweils nur einmal verwendet wird.
SBN UNDEFD Der SBS(91)–Befehl wurde für eine Unterprogrammnummerprogrammiert, die nicht existiert. Korrigieren Sie dieUnterprogrammnummer oder erstellen Sie das erforderlicheUnterprogramm.
STEP ERR STEP(08) mit und STEP(08) ohne Abschnittsnummer (Steuerbit) wurdenfalsch verwendet. Überprüfen Sie die STEP(08)–Programmierbedingungen und korrigieren Sie das Programm.
Fehlermeldung Erklärung und Abhilfe
IL ILC ERR IL(02) und ILC(03) werden nicht zusammen verwendet. Korrigieren Siedas Programm, so dass jeder IL(02)– einen entsprechendenILC(03)–Befehl besitzt. Das Programm wird trotz dieser Fehlermeldungfortgesetzt, wenn mehr als ein IL(02)–Befehl demselben ILC(03)–Befehlzugeordnet wird. Vergewissern Sie sich, dass Ihr Programm, wiegewünscht, gespeichert wurde, bevor Sie fortfahren.
JMP–JME ERR JMP(04) 00 und JME(05) 00 werden nicht zusammen verwendet.Vergewissern Sie sich, dass Ihr Programm, wie gewünscht, gespeichertwurde, bevor Sie fortfahren.
SBN–RET ERR Wird die Adresse von SBN(92) angezeigt, wurden zwei Unterprogrammemit derselben UnterProgrammnummer spezifiziert. Ändern Sie eine derUnterProgrammnummern oder löschen Sie eines der Unterprogramme.Wird die Adresse von RET(93) angezeigt, wurde RET(93) nicht richtigverwendet. Überprüfen Sie die Bedingungen für RET(93) und korrigierenSie das Programm.
Fehlermeldung Erklärung und Abhilfe
COIL DUPL Das gleiche Bit wird von mehr als einem Befehl (z.B OUT, OUT NOT,DIFU(13), DIFD(14), KEEP(11), SFT(10)) gesteuert (d.h. auf 1 bzw. 0gesetzt). Obwohl dies für bestimmte Befehle möglich ist, überprüfen Siedie Befehlsbedingungen und vergewissern Sie sich, dass das Programmkorrekt ist. Schreiben Sie im anderen Fall das Programm erneut, so dassjedes Bit von nur einem Befehl gesteuert wird.
JMP UNDEFD JME(05) wurde mit einem JMP(04)–Befehl verwendet, der nicht dieselbeSprungnummer besitzt. Fügen Sie einen JMP(04)–Befehl mit derselbenNummer hinzu oder löschen Sie den nicht verwendetenJME(05)–Befehl.
SBS UNDEFD Es existiert ein Unterprogramm, das nicht von SBS(91) aufgerufen wird.Programmieren Sie an der richtigen Stelle einen Unterprogrammaufrufoder löschen Sie das Unterprogramm, falls es nicht erforderlich ist.
Fehler der Ebene A
Fehler der Ebene B
Fehler der Ebene C
!
9-5AbschnittBetriebsfehler
534
Vorsicht Erweiterungsbefehle (die den Funktionscode 17, 18, 19, 47, 48, 60...69, 87, 88und 89 zugewiesen sind) werden nicht überprüft. Es erfolgen keine Programm-überprüfungen für DM 1024 bis DM 6143 bei SPS–Systemen, die diesen Teildes DM–Bereichs nicht unterstützt. Auch wenn diese Daten spezifiziert sind,werden keine Daten gespeichert und die in diesem Bereich gelesenen Datensind immer “0000”.
9-4 Anwenderdefinierte Fehler Dem Anwender stehen vier Befehle zur Verfügung, mit denen er eigene Fehlerbzw. Meldungen definieren kann. Diese Befehle dienen dazu, Meldungen an diemit der SPS verbundene Programmierkonsole zu senden, wenn ein geringfügi-ger oder schwerwiegender Fehler auftritt.
MELDUNG – MSG(46) MSG(46) dient dazu, eine Meldung auf der Programmierkonsole anzuzeigen.Die Meldung, die bis zu 16 Zeichen lang sein kann, wird angezeigt, wenn dieBefehlsausführungsbedingung WAHR ist. Sehen Sie Seite 477 für weitere In-formationen.
FAL(06) ist ein Befehl, der einen geringfügigen Fehler verursacht. Weitere In-formationen siehe Seite 359. Die Verwendung des FAL(06)–Befehls hat fol-gende Auswirkungen:
1, 2, 3... 1. Die ERR/ALM–LED der CPU blinkt. Der SPS–Betrieb wird jedoch fortge-setzt.
2. Die 2–stellige BCD–FAL–Nummer (01...99) des Befehles wird im System-merkerbereich SR 25300...SR 25307 gespeichert.
3. Die FAL–Nummer wird im Fehlerprotokollbereich der SPS gespeichert. DieZeit des Auftretens wird ebenfalls in CPM2A– und CPM2C–SPS–Systemeneingetragen, die mit einer internen Uhr ausgestattet sind.
FAL–Nummern können beliebig eingestellt werden, um bestimmte Bedingun-gen anzuzeigen. Dieselbe kann jedoch nicht gleichzeitig als FAL– und alsFALS–Nummer verwendet werden.
Um einen FAL–Fehler zu löschen, muss die Ursache des Fehlers korrigiert,FAL00 ausgeführt und der Fehler mit Hilfe der Programmierkonsole oder derProgrammiersoftware gelöscht werden.
FALS(07) ist ein Befehl, der einen schwerwiegenden Fehler verursacht. SehenSie Seite 359 für weitere Informationen. Die Verwendung des FALS(07)–Be-fehls hat folgende Auswirkungen:
1, 2, 3... 1. Die Programmausführung wird beendet und die Ausgänge zurückgesetzt(AUS).
2. Die ERR/ALM–Anzeige der CPU leuchtet.
3. Die 2–stellige BCD–FALS–Nummer (01...99) wird im Systemmerkerbe–reich SR 25300...SR 25307 gespeichert.
4. FAL–Nummern werden im Fehlerprotokollbereich der SPS gespeichert.Die Zeit des Auftretens wird ebenfalls in SPS–Systemen der CPM2A– undCPM2C–Serie eingetragen, die mit einer internen Uhr ausgestattet sind.
FAL–Nummern können beliebig eingestellt werden, um bestimmte Bedingun-gen anzuzeigen. Dieselbe kann jedoch nicht gleichzeitig als FAL– und alsFALS–Nummer verwendet werden.
Um einen FAL–Fehler zu löschen, muß die SPS in die PROGRAM–Betriebsartumgeschaltet, die Ursache des Fehlers korrigiert und der Fehler mit Hilfe derProgrammierkonsole oder der Programmiersoftware gelöscht werden.
9-5 BetriebsfehlerZwei Arten von Betriebsfehlern, geringfügige und schwerwiegende Fehler, wer-den generiert. Nach Auftreten eines geringfügigen Fehlers wird der SPS–Be-
FEHLERALARM – FAL(06)
SCHWERWIEGENDERFEHLERALARM – FALS(07)
!
9-5AbschnittBetriebsfehler
535
trieb fortgesetzt. Liegt jedoch ein schwerwiegender Fehler vor, wird der Betriebbeendet.
Vorsicht Überprüfen Sie alle Fehler, unabhängig davon, ob sie schwerwiegend oder ge-ringfügig sind. Beseitigen Sie die Fehlerursache so schnell wie möglich, undschalten Sie die SPS wieder ein. Sehen Sie das CPM1–,CPM2A– oderCPM2C–Technisches Handbuch für Hardware–Informationen und Program-mierkonsolen–Funktionen in Bezug auf Fehler. Fehlercode FAL und Fehlerur-sache werden in der Programmiersoftware CX–Programmer oder SYSWIN beider Online–Verbindung angezeigt.
9-5-1 Geringfügige FehlerDer SPS–Betrieb und die Programmausführung werden nach Auftreten einesoder mehrerer dieser Fehler fortgesetzt. Dennoch sollte die Ursache des Feh-lers korrigiert und der Fehler so bald wie möglich gelöscht werden.
Tritt einer dieser Fehler auf, leuchten die POWER– und RUN–LEDs und dieERR/ALM–LED blinkt.
Fehlermeldung FAL–Nr. Erklärung und Abhilfe
SYS FAIL FAL**(sehen Sie den
01 bis 99 Ein FAL(06)–Befehl wurde im Programm ausgeführt. Überprüfen Sie die FAL–Nummer, um dieFehlerursache zu ermitteln, korrigieren die Ursache und löschen den Fehler.(sehen Sie den
Hinweis) 9B Ein Fehler wurde in der Konfiguration der SPS erkannt. Überprüfen Sie die Merker AR 1300 bisAR 1302 und führen Sie die erforderlichen Korrekturen durch.
AR 1300 gesetzt: Beim Einschalten der SPS wurde eine fehlerhafte Einstellung in der Konfiguration erkannt(DM 6600 bis DM 6614). Korrigieren Sie die Einstellungen in der PROGRAM–Betriebsart undschalten Sie die Versorgungsspannung wieder ein.
AR 1301 gesetzt: Beim Umschalten in den RUN–Betrieb wurde eine fehlerhafte Einstellung in der Konfigurationder SPS (DM 6615 bis DM 6644) erkannt. Korrigieren Sie die Einstellungen in derPROGRAM–Betriebsart und schalten Sie die SPS wieder in den RUN–Betrieb um.
AR 1302 gesetzt: Während des Betriebs wurde eine fehlerhafte Einstellung in der Konfiguration der SPS erkannt(DM 6645 bis DM 6655). Korrigieren Sie die Einstellungen und löschen Sie den Fehler.
BATT LOW(nur CPM2A/CPM2C–SPS–Systeme)
F7 Fällt die Spannung der CPM2A–BAT01– oder CPM2C–BAT01–Sicherungsbatterieunter den Mindestspannungspegel, so blinkt die ERR/ALM–Meldeleuchte und SR25308 wird gesetzt.Ersetzen Sie die Batterie.
SCAN TIME OVER F8 Der Watchdog–Timer hat 100 ms überschritten. (SR 25309 ist gesetzt).
Hierdurch wird angezeigt, dass die Programm–Zykluszeit den Maximalwert überschreitet.Verringern Sie, wenn möglich, die Zykluszeit. (Die SPS–Konfiguration kann eingesellt werden,um diesen Fehler zu ignorieren.)
Hinweis ** ist 01...99 oder 9B.
9-5AbschnittBetriebsfehler
536
9-5-2 Schwerwiegende FehlerBei einem schwerwiegenden Fehler wird der SPS–Betrieb und die Programm-ausführung unterbrochen und alle Ausgänge zurückgesetzt.
Alle CPU–LEDs sind bei einer Unterbrechung der Versorgungsspannung erlo-schen. Bei allen anderen schwerwiegenden Betriebsfehlern leuchten diePOWER– und ERR/ALM–LEDs. Die RUN–LED ist erloschen.
Fehlermeldung FALS–Nr Erklärung und Abhilfe
Unterbrechung derVersorgungs–spannung (keine Meldung)
00 Die Spannung wurde für mindestens 10 ms unterbrochen. Überprüfen Sie dieVersorgungsspannung und die Netzleitungen. Schalten Sie diese erneut ein.
MEMORY ERR F1 AR 1308 gesetzt: Ein nicht spezifizierter Bitbereich ist im Anwenderprogramm vorhanden.Überprüfen Sie das Programm und korrigieren die Fehler.
AR 1309 gesetzt: Ein Fehler ist im Flash–Speicher aufgetreten. Da die Anzahl derSpeichervorgänge des Flash–Speichers überschritten wurde, muss dieCPU–Baugruppe ersetzt werden.
AR 1310 gesetzt: Ein Prüfsummenfehler ist im Nur–Lesen–DM–Bereich (DM6144...DM 6599) aufgetreten. Überprüfen und korrigieren Sie die Einstellungen desNur–Lesen–DM–Bereiches.
AR 1311 gesetzt: Ein Prüfsummenfehler ist in der Konfiguration aufgetreten. Initialisieren Sie diegesamte Konfiguration und geben Sie die Daten erneut ein.
AR 1312 gesetzt: Ein Prüfsummenfehler ist im Programm aufgetreten. Überprüfen Sie dasProgramm und korrigieren Sie alle erkannten Fehler.
AR 1313 gesetzt: Ein Prüfsummefehler ist im Funktionscode–Zuweisungsbereich desErweiterten Befehls aufgetreten. Erweiterte Befehls–Funktionscodes werden auf dieVorgabeeinstellung zurückgesetzt. Weisen Sie die Funktionscodes erneut zu.
AR 1314 gesetzt: Versorgungsspannungsunterbrechungs–Speicherbereich wurde nichtgespeichert. Beseitigen Sie den Fehler und setzen Sie die Einstellungen desVersorgungsspannungsunterbrechungs–Haltebereichs zurück.
AR 1315 gesetzt: Ein Fehler trat in der CompoBus/S–Kommunikation auf. Ersetzen Sie dieCPU–Baugruppe (nur SRM1(–V2)), wenn der Fehler nicht korrigiert werden kann.
NO END INST F0 Die END(01)–Anweisung fehlt im Programm. Schreiben Sie eine END(01)–Anweisung in dasProgrammende.
I/O BUS ERR(sehen Sie Hinweis 1)
C0 Ein Fehler ist während der Datenübertragung zwischen der CPU–Baugruppe und einerErweiterungsbaugruppe oder –E/A–Erweiterungsbaugruppen aufgetreten. Überprüfen Sie dasAnschlusskabel der Baugruppe.
I/O UNIT OVER(sehen Sie Hinweis 1)
E1 Es wurden zuviele Erweiterungs– oder E/A–Erweiterungsbaugruppen angeschlossen.Überprüfen Sie die SPS–Konfiguration.
SYS FAIL FALS**(sehen Sie Hinweis 2)
01 bis 99 Ein FALS(07)–Befehl wurde im Programm ausgeführt. Überprüfen Sie die FALS– Nummer, umdie Fehlerursache zu ermitteln, korrigieren Sie den Fehler und löschen diesen.
9F Die Zykluszeit hat die FALS 9F–Zyklus–Überwachungszeit überschritten (DM 6618). ÜberprüfenSie die Zykluszeit und stellen Sie gegebenenfalls die Zyklus– Überwachungszeit neu ein.
Vorsicht 1. Nur CPM1/CPM1A/CPM2A/CPM2C.
2. ** ist 01...99 oder 9F.
9-5-3 Weitere FehlerDie PWR–Anzeige leuchtet bei den nachfolgend beschriebenen schwerwie-genden Fehlern. Ignorieren Sie den Zustand der anderen Anzeigen bis auf die inder folgenden Tabelle aufgeführten Fälle.
Fehlerstatus FALS–Nr Erklärung und Abhilfe
CompoBus/SKommunikations–fehler
Keine Die ERC–Anzeige zeigt einen Fehler in der CompoBus/S–Kommunikation an. ÜberprüfenSie die Slaves und die Übertragungsleitungen. Starten Sie das System erneut.
Kommunikationsfehlerder RS-232C–Schnittstelle
Keine Tritt ein Kommunikationsfehler an der RS–232C–Schnittstelle auf, so leuchtet dieCOMM–Anzeige nicht mehr und der Fehlermerker (AR 0804) ist gesetzt.Überprüfen Sie die Verbindungskabel und starten Sie das System erneut.
Kommunikationsfehlerder Peripherie–schnittstellen
Keine Tritt ein Fehler in der Kommunikation über die Peripherieschnittstelle auf, leuchtetdie COMM–LED nicht mehr und der Fehlermerker (AR 0812) ist gesetzt.Überprüfen Sie die Verbindungskabel und starten Sie das System erneut.
9-6AbschnittFehlerprotokoll
537
9-6 FehlerprotokollDie Fehlerprotokoll–Funktion speichert den Code der im SPS–Betrieb auftre-tenden geringfügigen/schwerwiegenden Fehler, zusammen mit dem Datumund der Uhrzeit. Sehen Sie Seite 534 für weitere Informationen.
Bei der CPM1/CPM1A wird der Fehlerprotokollbereich in DM 1000...DM 1021gespeichert.
DM 1000 Fehlerprotokoll–Zeiger
DM 1001 Fehlerprotokoll–Aufzeichnung 0DM 1002
DM 1003
DM 1019 Fehlerprotokoll–Aufzeichnung 6DM 1020
DM 1021
bis
Fehlerklassifizierung Fehlercode00 0000 00
Führendes Wort
Führendes Wort + 1
Führendes Wort + 2
Die Adresse zur Speicherung der nächsten Fehleraufzeichnung wird angezeigt. (0...6)
Fehlerklassifizierung: 00: Geringfügig80: Schwerwiegend
Bit 15 8 7 0
Ein einzelner Fehlereintrag ist wie folgt konfiguriert:
SpeicherverfahrenDie Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern und ältereDatensätze löschen. Dies erfolgt durch Verschiebung der Datensätze, wienachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz 0)bei Generierung eines neuen Datensatzes gelöscht.
Fehl.protok.–Aufz. 6
Fehl.protok.–Aufz. 7
Fehl.protok.–Aufz. 1
Fehl.protok.–Aufz. 2
Wird gelöscht
Neue Datensätze hinzugefügt
Alle Datensätze verschoben
2. Sie können nur die ersten 7 Fehlerprotokoll–Datensätze speichern. Alle fol-genden Fehler werden ignoriert.
3. Sie können das Protokoll deaktivieren, so dass keine Aufzeichnungen ge-speichert werden.
Als Grundeinstellung ist die erste Methode eingestellt. Sehen Sie die Fehlerpro-tokoll–Konfiguration auf Seite 24 für weitere Informationen.
Fehlerprotokoll löschenSetzen Sie SR 25214 über ein Programmiergerät auf 1, um das gesamte Feh-lerprotokoll zu löschen. Nachdem das Fehlerprotokoll gelöscht ist, wird SR25214 automatisch zurückgesetzt.
CPM1/CPM1A
9-6AbschnittFehlerprotokoll
538
Bei den SPS der CPM2A/CPM2C–Serie wird der Fehlerprotokollbereich in DM2000 bis DM 2021 gespeichert. Bis zu 7 Fehlerdatensätze können gespeichertwerden.
DM 2000 Fehlerprotokoll–Zeiger
DM 2021 Fehlerprotokoll–Aufzeichnung 1(3 Worte)
DM 2022DM 2023
DM 2019 Fehlerprotokoll–Aufzeichnung 7 (3 Worte)
DM 2020DM 2021
bisFehlerklassifizierung FehlercodeMin Sek.Tag Std.
Führendes WortFührendes Wort + 1
Führendes Wort + 2
Fehlerklassifizierung: 00: Geringfügig80: Schwerwiegend
Jeder Wert wirdals 2–stelligerBCD–Wert gespeichert.
15 8 7 0
Ein einzelner Fehlereintrag ist wie folgt konfi-guriert:
Zeigt die Anzahl der Datensätze an, die in der Protokollierung gespei-chert sind (0 bis 7). 0 bedeutet kein gespeicherter Datensatz.
Hinweis Ein Fehlerdatensatz mit einem Fehlercode von 00 wird im Fehlerprotokoll fürVersorgungsspannungsunterbrechungen gespeichert.
SpeicherverfahrenDie Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern. Ältere Da-tensätze werden ignoriert. Dies erfolgt durch Verschieben der Datensätze,wie nachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz0) bei Generierung eines neuen Datensatzes gelöscht.
Fehl.protok.–Aufz 6
Fehl.protok.–Aufz 7
Fehl.protok.–Aufz.1
Fehl.protok.–Aufz 2
Wird gelöscht
Neue Datensätze hinzugefügt
Alle Datensätze verschoben
2. Sie können nur die ersten 7 Fehlerprotokoll–Datensätze speichern. Alle fol-genden Fehler werden ignoriert.
3. Sie können das Protokoll deaktivieren, so dass keine Aufzeichnungen ge-speichert werden.
Als Grundeinstellung ist die erste Methode eingestellt. Sehen Sie die Fehlerpro-tokoll–Konfiguration auf Seite 24 für weitere Informationen.
Fehlerprotokoll löschen Setzen Sie SR 25214 über ein Programmiergerät auf 1, um das gesamte Feh-lerprotokoll zu löschen. Nachdem das Fehlerprotokoll gelöscht ist, wird SR25214 automatisch zurückgesetzt.
Bei den SPS–Systemen der SRM1(–V2)–Serie wird der Fehlerprotokollbereichin DM 2000 bis DM 2021 gespeichert.
DM 2000 Fehlerprotokoll–Zeiger
DM 2001 Fehl.protok.–Aufz. 1DM 2002DM 2003
DM 2019 Fehlerprotokoll–Aufzeichnung 7DM 2020
DM 2021
bis
Fehlerklassifizierung Fehlercode00 0000 00
Führendes WortFührendes Wort + 1Führendes Wort + 2
Zeigt die Anzahl der Datensätze an, die in der Protokollierung gespei-chert sind (0 bis 7). 0 bedeutet kein gespeicherter Datensatz.
Fehlerklassifizierung: 00: Geringfügig80: Schwerwiegend
Bit 15 8 7 0
Ein einzelner Fehlereintrag ist wie folgt konfiguriert:
CPM2A/CPM2C–Fehlerprotokollbereich
SRM1
9-8AbschnittAblaufdiagramm zur Fehlerbehebung
539
SpeicherverfahrenDie Fehlerprotokoll–Speichermethode wird über die Konfiguration spezifiziert(DM 6655). Wählen Sie eine der nachfolgend beschriebenen Methoden aus:
1, 2, 3... 1. Sie können die letzten 7 Fehlerprotokoll–Datensätze speichern. Ältere Da-tensätze werden ignoriert. Dies erfolgt durch Verschiebung der Datensätze,wie nachfolgend dargestellt ist; somit wird der ältere Datensatz (Datensatz0) bei Generierung eines neuen Datensatzes gelöscht.
Fehl.protok.–Aufz 6
Fehl.protok.–Aufz 7
Fehl.protok.–Aufz. 1
Fehl.protok–Aufz. 2
Wird gelöscht
Neue Datensätze hinzugefügt
Alle Datensätze verschoben
2. Sie können nur die ersten 7 Fehlerprotokoll–Datensätze speichern. Alle fol-genden Fehler werden ignoriert.
3. Sie können das Protokoll deaktivieren, so dass keine Aufzeichnungen ge-speichert werden.
Als Grundeinstellung ist die erste Methode eingestellt. Sehen Sie die Fehlerpro-tokoll–Konfiguration auf Seite 24 für weitere Informationen.
Fehlerprotokoll löschen Setzen Sie SR 25214 über ein Programmiergerät auf 1, um das gesamte Feh-lerprotokoll zu löschen. Nachdem das Fehlerprotokoll gelöscht ist, wird SR25214 automatisch zurückgesetzt.
9-7 Host–Link–FehlerSehen Sie Abschnitt 4-3 Host–Link–Kommunikation für eine Beschreibung desAntwortsformats und der Antwortscodes, die zurückgegeben werden, wenn einBefehl nicht durch einen Host–Computer verarbeitet werden kann.
9-8 Ablaufdiagramm zur FehlerbehebungFehlerbehebungsdiagramme befinden sich in den jeweiligen Bedienierhand–büchern.
Sehen Sie Kapitel 5–6 Fehlersuche–Ablaufdiagramme im CPM1–Bediener–handbuch.
Sehen Sie Kapitel 5–6 Fehlersuche–Ablaufdiagramme im CPM1A–Bediener-handbuch.
Sehen Sie Kapitel 5–6 Fehlersuche–Ablaufdiagramme im CPM2A–Bediener-handbuch.
Sehen Sie Kapitel 5–5 Fehlersuche–Ablaufdiagramme im CPM2C–Bediener-handbuch.
Sehen Sie Kapitel 5–6 Fehlersuche–Ablaufdiagramme im SRM1–Bediener–handbuch.
CPM1–Ablaufdiagramme
CPM1A–Ablaufdiagramme
CPM2A–Ablaufdiagramme
CPM2C–Ablaufdiagramme
SRM1–Ablaufdiagramme
541
Anhang AProgrammierbefehle
Ein SPS–Befehl kann entweder über die entsprechenden Tasten (d.h., LD, AND, OR, NOT) der Programmierkon-sole oder durch Verwendung der Funktionscodes eingegeben werden. Um einen Befehl über den Funktionscodeeinzugeben, drücken Sie die Taste FUN, den Funktionscode und dann WRITE. Sehen Sie die Seiten, auf denenProgrammier– und Befehlseinzelheiten aufgeführt sind.
Code AWL–Code Bezeichnung Funktion Seite
— AND AND Logische UND–Verknüpfung eines spezifizierten Bits mit der gegen-wärtigen Ausführungsbedigung.
350
— AND LD AND LOAD Logische UND–Verknüpfung der resultierenden Ausführungsbedin-gungen der vorhergehenden Logikblöcke.
351
— AND NOT AND NOT Logische UND-Verknüpfung des invertierten spezifizierten Bits mitder Ausführungsbedingung.
350
— CNT COUNTER Ein dekrementierender Zähler. 369
— LD LOAD Definiert den Zustand eines spezifizierten Bits oder Logikblocks alsAusführungsbedingung für die nachfolgenden Befehle (AND LD undOR LOAD) der Befehlszeile.
350
— LD NOT LOAD NOT Invertiert den Status eines spezifizierten Bits als Ausführungsbedin-gung für die nachfolgende Befehlszeile.
350
— OR OR Logische ODER-Verknüpfung eines spezifizierten Bits mit der Aus-führungsbedingung.
350
— OR LD OR LOAD Logische ODER-Verknüpfung der resultierenden Ausführungsbedin-gungen der vorhergehenden Logikblöcke.
351
— OR NOT OR NOT Logische ODER-Verknüpfung des invertierten Zustandes des spezifi-zierten Bits mit der Ausführungsbedingung.
350
— OUT OUTPUT (Ausgabe)
Das Operanden-Bit wird mit der Ausführungsbedingung im WAHR-Zustand auf EIN und mit der Ausführungsbedingung im FALSCH-Zu-stand auf AUS gesetzt.
352
— OUT NOT OUTPUT NOT(Negierte Ausgabe)
Das Operanden-Bit wird mit der Ausführungsbedingung im WAHR-Zustand auf AUS und mit der Ausführungsbedingung im FALSCH-Zustand auf EIN gesetzt (invertierende Operation).
352
— RSET RESET(Zurücksetzen)
Setzt das Operanden–Bit auf AUS, wenn die AusführungsbedingungWAHR ist und hat keine Auswirkung auf den Status des Operanden–Bit, wenn die Ausführungsbedingung FALSCH ist.
352
— SET SET(Setzen)
Setzt das Operanden–Bit auf EIN, wenn die AusführungsbedingungWAHR ist und hat keine Auswirkung auf den Status des Operanden–Bit, wenn die Ausführungsbedingung FALSCH ist.
352
— TIM TIMER(Zeitgeber
Einschaltverzögerter (dekrementierender) Zeitgeber. 363
00 NOP NO OPERATION(Keine Bearbeitung)
Nichts wird ausgeführt und die Programmabarbeitung wird mit demnächsten Befehl fortgesetzt.
355
01 END END(Ende)
Jeweils am Programmende erforderlich. 355
02 IL INTERLOCK(Verriegelung)
Ist eine Verriegelungsbedingung auf AUS gesetzt, werden alle Aus-gänge und Zeitgeber-Istwerte zwischen dem gegenwärtigen IL(02)-und dem nächsten ILC(03)-Befehl auf AUS gesetzt bzw zurückge-
356
03 ILC INTERLOCK CLEAR(Verriegelung löschen)
und dem nächsten ILC(03)-Befehl auf AUS gesetzt bzw. zurückge-setzt. Andere Befehle werden als NOP betrachtet. Die Zähler-Ist-werte bleiben erhalten.
356
04 JMP JUMP(Sprung)
Ist die Ausführungsbedingung für den JMP(04)-Befehl FALSCH,werden alle Befehle zwischen JMP(04) und dem entsprechendenJME(05) ignoriert und übersprungen
358
05 JME JUMP END(Sprungende)
( )JME(05) ignoriert und übersprungen.
358
06 (@)FAL FAILURE ALARM ANDRESET(Fehleralarm und Rück-setzung)
Generiert einen geringfügigen Fehler und zeigt die entsprechendeFAL-Nummer auf der Programmierkonsole an.
359
07 FALS SEVERE FAILUREALARM(Scherwiegender Fehler-alarm)
Generiert einen schwerwiegenden Fehler und zeigt die entspre-chende FALS-Nummer auf der Programmierkonsole an.
359
08 STEP STEP DEFINE(Schrittdefinition)
Bei Verwendung mit einem Steuerbit wird der Anfang eines neuenSchrittes spezifiziert und der vorhergehende Schritt zurückgesetzt.Bei Verwendung ohne N wird das Ende der Schrittausführung spezifi-ziert.
360
09 SNXT STEP START(Schrittstart)
Wird mit einem Steuerbit verwendet, um das Ende des Schrittes zukennzeichnen, diesen Schritt zurückzusetzen und zu beenden sowieden nächsten Schritt zu starten.
360
Anhang AProgrammierbefehle
542
Code SeiteFunktionBezeichnungAWL–Code
10 SFT SHIFT REGISTER(Schieberegister)
Erstellt ein Bit-Schieberegister. 379
11 KEEP KEEP(Halten)
Spezifiziert ein Bit, dessen Zustand (0) oder (1) durch den (S)etzen–und (R)ücksetzen–Eingang gesteuert wird.
353
12 CNTR REVERSIBLE COUNTER(Umkehrbarer Zähler)
Der Istwert wird um eins erhöht bzw. vermindert, wenn ein Inkremen-tier- oder Dekrementier-Eingangssignal von AUS auf EIN wechselt.
370
13 DIFU DIFFERENTIATE UP(Ausführung bei steigen-der Flanke)
Das spezifizierte Bit wird über eine Zyklusdauer, beginnend mit dersteigenden Flanke des Eingangssignals, auf EIN gesetzt.
354
14 DIFD DIFFERENTIATE DOWN (Ausführung bei fallenderFlanke)
Das spezifizierte Bit wird über eine Zyklusdauer, beginnend mit derfallenden Flanke des Eingangssignals, auf EIN gesetzt.
354
15 TIMH HIGH–SPEED TIMER(Schneller Zeitgeber)
Ein Hochgeschwindigkeits–, einschaltverzögerter (dekrementieren-der) Zeitgeber.
364
16 (@)WSFT WORD SHIFT(Wort verschieben)
Die Daten der Worte vom Startwort bis zum Endwort werden in Wor-teinheiten verschoben, wobei in das Startwort Nullen geschriebenwerden.
380
17 bis 19 Für Erweiterte Befehle. 154
20 CMP COMPARE(Vergleichen)
Vergleicht den Inhalt von zwei Worten miteinander und gibt das Er-gebnis an die GR-, EQ- oder LE-Systemmerker aus.
409
21 (@)MOV MOVE(Übertragen)
Verschiebt die Daten des Quellwortes bzw. der -konstante auf dasZielwort.
388
22 (@)MVN MOVE NOT(Übertragen Nicht)
Verschiebt die invertierten Daten des Quellwortes bzw. der -kon-stante auf das Zielwort.
388
23 (@)BIN BCD TO BINARY(BCD–BIN–Konvertie–rung)
Konvertiert die 4-stelligen BCD-Daten des Quellwortes und gibt diekonvertierten Daten über das Ergebniswort als 16 Bit-Binärdatenaus.
416
24 (@)BCD BINARY TO BCD(BIN–BCD–Konvertie–rung)
Konvertiert die Binärdaten des Quellwortes und gibt die konvertiertenDaten über das Ergebniswort als BCD-Daten aus.
417
25 (@)ASL ARITHMETIC SHIFTLEFT(Arithmetisches Verschie-ben nach links)
Jedes Bit in einem einzelnen Datenwort wird um ein Bit nach linksverschoben, wobei Bit 15 auf CY verschoben wird.
381
26 (@)ASR ARITHMETIC SHIFTRIGHT(Arithmetisches Verschie-ben nach rechts)
Jedes Bit in einem einzelnen Datenwort wird um ein Bit nach rechtsverschoben, wobei Bit 00 auf CY verschoben wird.
381
27 (@)ROL ROTATE LEFT(Rotation nach links)
Jedes Bit innerhalb eines einzelnen Datenwortes wird, mit Übertrag(CY), um ein Bit nach links verschoben.
382
28 (@)ROR ROTATE RIGHT(Rotation nach rechts)
Jedes Bit innerhalb eines einzelnen Datenwortes wird, mit Übertrag(CY), um ein Bit nach rechts verschoben.
382
29 (@)COM COMPLEMENT(KOMPLEMENT)
Invertiert den Bitzustand eines Datenwortes. 457
30 (@)ADD BCD ADD(BCD–Addition)
Addiert zwei 4-stellige BCD-Werte und den Inhalt von CY und gibtdas Ergebnis an das spezifizierte Ergebniswort aus.
434
31 (@)SUB BCD SUBTRACT(BCD–Subtraktion)
Subtrahiert den 4-stelligen BCD-Subtrahenden und den Inhalt vonCY von dem 4-stelligen BCD-Minuenden und gibt das Ergebnis andas spezifizierte Ergebniswort aus.
435
32 (@)MUL BCD MUNLTIPLY(BCD–Multiplikation)
Multipliziert zwei 4-stellige BCD-Werte und gibt das Ergebnis an diespezifizierten Ergebnisworte aus.
437
33 (@)DIV BCD DIVIDE(BCD–Division)
Dividiert den 4-stelligen BCD-Dividenden durch den 4-stelligen BCD-Divisor und gibt das Ergebnis an die spezifizierten Ergebnisworteaus.
438
34 (@)ANDW LOGICAL AND(Wortweises logischesAND)
Logische UND-Verknüpfung von zwei 16 Bit-Eingangsworten undsetzen der Bits in dem Ergebniswort, wenn die entsprechenden Bitsin den Eingangsworten beide auf EIN gesetzt sind.
458
35 (@)ORW LOGICAL OR(Wortweises logischesOR)
Logische ODER-Verknüpfung von zwei 16 Bit-Eingangsworten undSetzen der Bits in das Ergebniswort, wenn eines oder beide der ent-sprechenden Bits in den Eingangsworten auf EIN gesetzt ist/sind.
458
36 (@)XORW EXCLUSIVE OR(Wortweises Exklusiv OR)
Exklusive ODER-Verknüpfung von zwei 16 Bit-Eingangsworten undSetzen der Bits in dem Ergebniswort, wenn sich die entsprechendenBits in den Eingangsworten nicht im gleichen Zustand befinden.
459
37 (@)XNRW EXCLUSIVE NORWortweises ExklusivNOR)
Exklusive NOR-Verknüpfung von zwei 16 Bit-Eingangsworten undSetzen der Bits in dem Ergebniswort, wenn sich die entsprechendenBits in den Eingangsworten im gleichen Zustand befinden.
460
38 (@)INC BCD INCREMENT(BCD–Wert inkrementie-ren)
Inkrementiert den Wert eines 4-stelligen BCD-Wortes um 1. 460
39 (@)DEC BCD DECREMENT(BCD–Wert dekrementie-ren)
Dekrementiert den Wert eines 4-stelligen BCD-Wortes um 1. 461
Anhang AProgrammierbefehle
543
Code SeiteFunktionBezeichnungAWL–Code
40 (@)STC SET CARRY(Übertragsmerker setzen)
Setzt den Übertragsmerker (d.h. CY wird auf EIN gesetzt). 434
41 (@)CLC CLEAR CARRY (Übertragsmerker zurück-setzen)
Setzt den Übertragsmerker zurück (d.h. CY wird auf AUS gesetzt). 434
46 (@)MSG MESSAGE(Meldung anzeigen)
Gibt eine 16 Zeichen–umfassende Meldung an eine Programmier-konsole aus.
477
47 bis 48 Für Erweiterte Befehle. 154
50 (@)ADB BINARY ADD(Binäare Addition)
Addiert zwei 4-stellige Hexadezimal-Werte und den Inhalt von CYund gibt das Ergebnis an das spezifizierte Ergebniswort aus.
444
51 (@)SBB BINARY SUBTRACT(BINÄRE Subtraktion)
Subtrahiert den 4-stelligen Hexadezimal-Subtrahenden und den In-halt von CY von dem 4-stelligen Hexadezimal-Minuenden und gibtdas Ergebnis an das spezifizierte Ergebniswort aus.
445
52 (@)MLB BINARY MULTIPLY(Binäre Multiplikation)
Multipliziert zwei 4-stellige Hexadezimal-Werte miteinander und gibtdas Ergebnis an die spezifizierten Ergebnisworte aus.
446
53 (@)DVB BINARY DIVIDE(Binäre Division)
Dividiert den 4-stelligen Hexadezimal-Dividenden durch den 4-stel-ligen Divisor und gibt das Ergebnis an die spezifizierten Ergebnis-worte aus.
447
54 (@)ADDL DOUBLE BCD ADD(Doppelwort–BCD–Addi-tion)
Addiert zwei 8-stellige Werte (je zwei Worte) und den Inhalt von CYund gibt das Ergebnis an die spezifizierten Ergebnisworte aus.
440
55 (@)SUBL DOUBLE BCD SUB-TRACT(Doppelwort–BCD–Sub-traktion)
Subtrahiert den 8-stelligen BCD-Subtrahenden und den Inhalt vonCY von einem 8-stelligen BCD-Minuenden und gibt das Ergebnis andie spezifizierten Ergebnisworte aus.
441
56 (@)MULL DOUBLE BCD MULTIPLY(Doppelwort–BCD–Multi-plikation)
Multipliziert zwei 8-stellige BCD-Werte miteinander und gibt das Er-gebnis an die spezifizierten Ergebnisworte aus.
442
57 (@)DIVL DOUBLE BCD DIVIDE(Doppelwort–BCD–Divi-sion)
Dividiert den 8-stelligen BCD-Dividenden durch einen 8-stelligenBCD-Divisor und gibt das Ergebnis an die spezifizierten Ergebnis-worte aus.
443
58 (@)BINL DOUBLE BCD TODOUBLE BINARY(BCD–Doppelwort zu Bi-när–Doppelwort)
Konvertiert den BCD-Wert der beiden aufeinanderfolgenden Quell-worte in das Binärformat und gibt die konvertierten Daten an die bei-den aufeinanderfolgenden Ergebnisworte aus. (Nur CPM2)
418
59 (@)BCDL DOUBLE BINARY TODOUBLE BCD(Binär–Doppelwort zuBCD–Doppelwort)
Konvertiert den Binärwert der beiden aufeinanderfolgenden Quell-worte in BCD-Daten und gibt die konvertierten Daten an die beidenaufeinanderfolgenden Ergebnisworte aus. (Nur CPM2)
418
60 bis 69 Für Erweiterte Befehle. 154
70 (@)XFER BLOCK TRANSFER(Blockübertragung)
Verschiebt den Inhalt mehrerer, aufeinanderfolgender Quellworte aufeinander folgende Zielworte.
389
71 (@)BSET BLOCK SET(Blockeinstellung)
Kopiert den Inhalt eines Wortes oder einer Konstanten auf mehrere,aufeinanderfolgenden Worte.
390
73 (@)XCHG DATA EXCHANGE(Datenaustausch)
Vertauscht den Inhalt von zwei Worten. 391
74 (@)SLD ONE DIGIT SHIFT LEFT(Eine Stelle nach linksverschieben)
Verschiebt alle Daten zwischen dem Startwort und dem Endwort umeine Ziffer (vier Bits) nach links.
383
75 (@)SRD ONE DIGIT SHIFT RIGHT(Eine Stelle nach rechtsverschieben)
Verschiebt alle Daten zwischen dem Startwort und dem Endwort umeine Ziffer (vier Bits) nach rechts.
384
76 (@)MLPX 4-TO-16 DECODER(4–in–16–Dekoder)
Konvertiert maximal vier Hexadezimal-Ziffern des Quellwortes inDezimalwerte zwischen 0 und 15 und setzt das/die der Position ent-sprechende(n) Bit(s) des/der Ergebnisworte(s) auf EIN.
419
77 (@)DMPX 16-TO-4 ENCODER(16–in–4–Dekoder)
Bestimmt die Position des äußersten, linken, auf EIN gesetzten Bitsdes/der Quellworte(s) und setzt das/die entsprechenden Bit(s) derspezifizierten Ziffer des Ergebniswortes auf EIN.
421
78 (@)SDEC 7-SEGMENT DECODER(Dekodierung für 7–Seg-ment–Anzeige)
Konvertiert die Hexadezimalwerte des Quellwortes in 7-Segment-An-zeigedaten.
423
80 (@)DIST SINGLE WORT DISTRI-BUTE(Einzelwort verteilen)
Kopiert ein Quelldaten-Wort in das Zielwort, dessen Adresse durchdas Zielbasis-Wort und den Offset spezifiziert wird.
392
81 (@)COLL DATA COLLECT(Daten sammeln)
Liest Daten aus dem Quellwort und speichert diese im Zielwort. 393
82 (@)MOVB MOVE BIT (Bit übertragen)
Überträgt das spezifizierte Bit des Quellwortes oder der Konstantenin das spezifizierte Bit des Zielwortes.
395
83 (@)MOVD MOVE DIGIT(Ziffer übertragen)
Verschiebt den hexadezimalen Inhalt von bis zu vier spezifiziertenQuellziffern des Quellwortes auf die bis zu vier spezifizierten Zielzif-fern.
396
Anhang AProgrammierbefehle
544
Code SeiteFunktionBezeichnungAWL–Code
84 (@)SFTR REVERSIBLE SHIFT RE-GISTER(Umkehrbares Schiebere-gister)
Verschiebt die Bits des spezifizierten Wortes bzw. der spezifiziertenWortfolge nach links bzw. rechts.
385
85 (@)TCMP TABLE COMPARE(Tabellenvergleich)
Vergleicht einen 4-stelligen Hexadezimalwert mit aus 16 Worten be-stehenden Tabellen.
410
86 (@)ASC ASCII CONVERT(ASCII–Konvertierung)
Konvertiert die Hexadezimalwerte des Quellwortes in 8-stelligeASCII-Werte, beginnend mit der äußersten linken oder rechten Hälftedes ersten Zielwortes.
426
87 bis 89 Für Erweiterte Befehle. 154
91 (@)SBS SUBROUTINE ENTRY(Unterprogrammaufruf)
Aufruf und Ausführung des Unterprogrammes N. 462
92 SBN SUBROUTINE DEFINE(Unterprogrammanfang)
Markiert den Anfang des Unterprogrammes N. 464
93 RET RETURN(Unterprogrammende)
Markiert das Ende eines Unterprogrammes und gibt die Steuerungan das Hauptprogramm zurück.
464
97 (@)IORF I/O REFRESH(E/A–Auffrischung)
Frischt alle E/A-Worte zwischen dem Anfangs- und Endwort auf.Kann nicht mit der SRM1(–V2) verwendet werden.
478
99 (@)MCRO MACRO(Makro)
Ruft ein E/A-Worte ersetzendes Unterprogramm auf und führt diesesaus.
464
Erweiterte BefehleDie folgende Tabelle enthält die Befehlen, die als Erweiterte Befehle in den SPS–Systemen der CPM2A–,CPM2C– und SRM1(–V2)–Serie betrachtet werden können. Der Funktionscode für standardmäßig zugewieseneBefehle ist ebenfalls aufgeführt.
Code AWL–Code Bezeichnung Funktion CPU–Baugruppe
Seite
17 (@)ASFT ASYNCHRONOUS SHIFTREGISTER(Asynchrones Schieberegi-ster)
Erstellt ein Schieberegister, das den Inhalt zweierbenachbarter Worte austauscht.
Alle 386
47 (@)RXD RECEIVE(Empfangen)
Empfängt Daten über eine Kommunikationsschnitt-stelle.
Alle 486
48 (@)TXD TRANSMIT(Übertragen)
Sendet Daten über eine Kommunikationsschnitt-stelle.
Alle 487
60 CMPL DOUBLE COMPARE(Doppelwort–Vergleich)
Vergleicht zwei 8-stellige Hexadezimal-Werte mitein-ander.
Alle 413
61 (@)INI MODE CONTROL(Zählersteuerung)
Beginnt und stoppt Zähloperationen, vergleicht undändert Zähler-Istwerte und stoppt Impulsausgaben.
Alle 374
62 (@)PRV HIGH-SPEED COUNTER PVREAD(Schnellen Zähler–Istwert ein-lesen)
Liest Istwerte und Statusdaten des Schnellen Zäh-lers.
CPM2A/CPM2C
376
63 (@)CTBL COMPARISON TABLE LOAD(Vergleichstabelle)
Vergleicht Zähler-Istwerte und erstellt eine Ver-gleichstabelle.
CPM2A/CPM2C
371
64 (@)SPED SPEED OUTPUT(Geschwindigkeitsausgabe)
Ausgabe von Impulsen mit der spezifizierten Fre-quenz. (10 Hz bis 10 kHz in 10 Hz-Schritten). DieImpulsfrequenz kann während der Ausgabe geändertwerden.
CPM2A/CPM2C
467
65 (@)PULS SET PULSES(Impulsausgabe)
Ausgabe einer spezifizierten Anzahl von Impulsenmit der spezifizierten Frequenz. Die Ausgabe kannerst unterbrochen werden, nachdem die eingestellteAnzahl von Impulsen ausgegeben wurde.
CPM2A/CPM2C
466
66 (@)SCL SCALING(Skalierung)
Führt eine Skalierung des berechneten Wertes aus.
Verwenden Sie die Programmierkonsole oder CX–Programmer/SYSWIN, um auf diesen Befehl für dieSRM1(–V2) zuzugreifen.
CPM2SRM1–V2
397
67 (@)BCNT BIT COUNTER(Bit–Zähler)
Zählt alle Bits, die in einem Block mit spezifizierterWortanzahl auf EIN gesetzt sind.
Alle 479
68 (@)BCMP BLOCK COMPARE(Blockvergleich)
Ermittelt, ob sich der Wert eines Wortes innerhalbvon 16 Grenzwerten befindet (untere und obereGrenzwerte werden spezifiziert).
Alle 411
69 (@)STIM INTERVAL TIMER(Intervall–Zeitgeber)
Steuert Interval-Zeitgeber, die für zeitgesteuerte In-terrupts verwendet werden.
Alle 484
Anhang AProgrammierbefehle
545
Code SeiteCPU–Baugruppe
FunktionBezeichnungAWL–Code
89 (@)INT INTERRUPT CONTROL(Interrupt–Steuerung)
Steuert Interrupt-Funktionen wie das Maskieren undAusmaskieren von Interrupts.
CPM2A/CPM2C/CPM1
481
--- (@)ACC ACCELERATION CONTROL(Beschleunigungs–steurung)
ACC(--) steuert zusammen mit PULS(--) die Erhö-hung bzw. Verringerung von Impulsfrequenzen, dieüber 2 Impulsausgänge ausgegeben werden.
CPM2A/CPM2C
470
--- AVG AVERAGE VALUE(Durchschnittwert)
Addiert die spezifizierte Anzahl von Hexadezimal-Werten und berechnet den Mittelwert. Rundet auf dienächste Ganzzahl ab.
CPM2A/CPM2C
453
--- (@)FCS FCS CALCULATE(Rahmen–Prüfsumme)
Berechnet die Check–Summe für die mit einem HostLink-Befehl gesendeten Daten und wandelt diese inASCII–Zeichen um.
Außer CPM1alle anderen
479
--- (@)HEX ASCII-TO-HEXADECIMAL(ASCII–in–Hex)
Konvertiert ASCII-Daten in Hexadezimal-Daten. Alle 428
--- (@)HMS SECONDS TO HOURS(Sekunden in Stunden)
Konvertiert Sekunden in Stunden und Minuten. CPM2A/CPM2C
431
--- (@)MAX FIND MAXIMUM(Finde Maximum)
Findet den Maximalwert innerhalb eines spezifizier-ten Speicherbereiches und speichert diesen Wert ineinem anderen Wort.
CPM2A/CPM2C
449
--- (@)MIN FIND MINIMUM(Finde Minimum)
Findet den Minimalwert innerhalb eines spezifiziertenSpeicherbereiches und speichert diesen Wert in ei-nem anderen Wort.
CPM2A/CPM2C
451
--- (@)NEG 2’S COMPLEMENT(2er–Komplement)
Erstellt für den vierstelligen hexadezimalen Inhalt derQuellwort-Adresse das Zweierkomplement und spei-chert das Ergebnis in R.
Alle
(Aber nur fürVersion 2 derSRM1)
432
--- PID PID CONTROL(PID–Regelung)
Führt eine PID-Regelung mit Hilfe spezifizierter Para-meter durch.
Alle
(Aber nur fürVersion 2 derSRM1)
403
--- (@)PWM PULSE WITH VARIABLEDUTY RATIO(Impulsausgabe mit variablemTastverhältnis)
Gibt Impulse mit dem spezifizierten Tastverhältnis(0% bis 99%) über den Impulsausgang 10.00 oder10.01 aus.
CPM2A/CPM2C
473
--- (@)SCL2 SIGNED BINARY TO BCDSCALING(VorzeichenbehaftetenBinärwert in BCD–Wertkonvertieren)
Konvertiert linear einen vorzeichenbehafteten, 4-stel-liger Hexadezimalwert in einen 4-stelligen BCD-Wert.
CPM2A/CPM2C
399
--- (@)SCL3 BCD TO SIGNED BINARYSCALING(BCD–Wert invorzeichnebehaftetenBinärwert konvertieren)
Konvertiert linear einen 4-stelligen BCD-Wert in ei-nen vorzeichenbehafteten 4-stelligen Hexadezimal-wert.
CPM2A/CPM2C
401
--- (@)SEC HOURS TO SECONDS(Stunden–in–Sekunden)
Konvertiert Stunden und Minuten in Sekunden. CPM2A/CPM2C
430
--- (@)SRCH DATA SEARCH(Datenbereiche durchsuchen)
Durchsucht den spezifizierten Speicherbereich nachden spezifizierten Daten und gibt die Wortadressedes Wortes innerhalb des Bereiches aus, in dem diegesuchten Daten gespeichert sind.
CPM2A/CPM2C
448
--- (@)STUP CHANGE RS-232C SETUP(RS–232C–Konfigurationändern)
Ändert die Kommunikationsparameter in der SPS–Konfiguration für eine spezifizierte Schnittstelle.
Außer CPM1alle anderen
489
--- (@)SUM SUM CALCULATE(Summe)
Berechnet die Summe des Inhaltes der Worte einesspezifizierten Speicherbereiches.
CPM2A/CPM2C
455
--- SYNC SYNCHRONIZED PULSECONTROL(SynchronisierteImpulsausgabe)
Multipliziert eine Eingangs–Impulsfrequenz mit einemfesten Skalierfaktor und gibt die Impulse über denspezifizierten Ausgang mit der resultierenden Fre-quenz aus.
CPM2A/CPM2C
475
--- TIML LONG TIMER(Langer Zeitgeber)
Ein dekrementierender Einschalt–Verzögerungszeit-geber mit einem Sollwert von bis zu 99.990 s
CPM2A/CPM2C
367
--- TMHH VERY HIGH-SPEED TIMER(Sehr schneller Zeitgeber)
Ein schneller, dekrementierender Einschalt–Verzöge-rungszeitgeber, der Zeiten in 1 ms–Einheiten zählt.
CPM2A/CPM2C
366
Anhang AProgrammierbefehle
546
Code SeiteCPU–Baugruppe
FunktionBezeichnungAWL–Code
--- ZCP AREA RANGE COMPARE(Bereichsvergleich)
Vergleicht ein Wort mit einem Bereich, der durchobere und untere Grenzen definiert ist und setzt er-gebnisabhängig die GR-, EQ- und LE-Merker.
Außer CPM1alle anderen
(Aber nur fürVersion 2 derSRM1)
414
--- ZCPL DOUBLE AREA RANGECOMPARE(Doppelwort–Bereichsvergleich)
Vergleicht einen 8-stelligen Wert mit einem Bereich,der durch untere und obere Grenzen definiert ist undsetzt ergebnisabhängig die GR-, EQ- und LE-Merker.
CPM2A/CPM2C
415
547
Anhang BFehler– und arithmetischen Merker
Die folgende Tabelle enthält Befehle, die die ER, CY–, GR-, LE- und EQ-Merker beeinflussen. Der ER-Merker wirdim allgemeinen gesetzt, wenn Operandendaten außerhalb des erforderlichen Bereiches liegen. Der CY-Merkerkennzeichnet die Ergebnisse von Rechen- oder Datenverschiebeoperationen. Der GT-Merker zeigt an, daß einVergleichswert größer ist als festgelegte Werte. Der LT-Merker kennzeichnet kleinere und der EQ-Merker gleich-große Werte. Darüber hinaus wird der EQ-Merker gesetzt, wenn das Ergebnis einer Rechenoperation Null ist.Sehen Sie Kapitel 7 Befehlssatz für weitere Informationen.
Die senkrechten Pfeile in der Tabelle kennzeichnen Merker, die, entsprechend des Befehlsergebnisses, gesetztoder rückgesetzt werden.
Kontaktplan-Befehle sowie die Befehle TIM und CNT werden bei gesetztem ER-Merker ausgeführt. Die mit einemsenkrechten Pfeil unter der Spalte ER gekennzeichneten Befehle jedoch nicht. Alle anderen Merker der Tabellewerden bei gesetztem ER-Merker nicht gesetzt.
Die nicht aufgeführten Befehle beeinflussen die in der Tabelle aufgeführten Merker nicht. Hier wird nur die nicht-flankengesteuerte Version jedes Befehls dargestellt, Befehle mit flankengesteuerter Ausführung beeinflussen dieMerker jedoch in derselben Weise.
Die ER-, CY-, GT-, LT- und EQ-Merker werden rückgesetzt, wenn END(01) ausgeführt wird. Ihr Status kann alsonicht durch die Programmierkonsole überwacht werden.
Der Status der ER–, CY–, GT–, LT– und EQ–Merker wird von der Ausführungsbedingung beeinflußt. Wird ein siebeeinflußender Befehl ausgeführt, so ändert sich ihr Status. Befehle mit flankengesteuerter Ausführung werdenjedoch nur einmal bei einem Wechsel ihrer Ausführungsbedingung ausgeführt (bei einem Wechsel von EIN aufAUS oder von AUS auf EIN). Sie werden erst wieder bei der nächsten spezifizierten Änderung ihrer Ausführungs-bedingung ausgeführt. Der Status der ER–, CY–, GT–, LT– und EQ–Merker wird somit von einem Befehl mit flan-kengesteuerter Ausführung nur beeinflußt, wenn sich die Ausführungsbedingung ändert und wird nicht währendder Überwachung, in der keine Befehle ausgeführt werden, d.h., wenn der spezifizierte Wechsel nicht in der Aus-führungsbedingung eintritt. Wird ein Befehl mit flankengesteuerter Ausführung nicht ausgeführt, ändert sich derStatus der ER–, CY–, GT–, LT– und EQ–Merker nicht und behält den vom letzten ausgeführten Befehl generiertenStatus.
Befehle 25503 (ER) 25504 (CY) 25505 (GR) 25506 (EQ) 25507 (LE) 25402 (N) Seite
TIM Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 363
CNT 369
END(01) AUS AUS AUS AUS AUS AUS 355
STEP(08) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 360
SNXT(09)
U bee uß U bee uß U bee uß U bee uß U bee uß
360
CNTR(12) 370
TIMH(15) 364
WSFT(16) 380
CMP(20) Unbeeinflußt Unbeeinflußt 409
MOV(21) Unbeeinflußt Unbeeinflußt Unbeeinflußt 388
MVN(22) 388
BIN(23) AUS 416
BCD(24) Unbeeinflußt 417
ASL(25) Unbeeinflußt Unbeeinflußt 381
ASR(26) AUS 381
ROL(27) 382
ROR(28) 382
COM(29) Unbeeinflußt Unbeeinflußt Unbeeinflußt 457
ADD(30) Unbeeinflußt 434
SUB(31) 435
Anhang BFehler– und arithmetischen Merker
548
Befehle Seite25402 (N)25507 (LE)25506 (EQ)25505 (GR)25504 (CY)25503 (ER)
MUL(32) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 437
DIV(33) 438
ANDW(34) 458
ORW(35) 458
XORW(36) 459
XNRW(37) 460
INC(38) Unbeeinflußt 460
DEC(39) 461
STC(40) Unbeeinflußt EIN Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 434
CLC(41)
U bee uß
AUS
U bee uß U bee uß U bee uß U bee uß
434
MSG(46) Unbeeinflußt 477
ADB(50) Unbeeinflußt Unbeeinflußt 444
SBB(51) 445
MLB(52) Unbeeinflußt Unbeeinflußt Unbeeinflußt 446
DVB(53) Unbeeinflußt Unbeeinflußt Unbeeinflußt 447
ADDL(54) Unbeeinflußt 440
SUBL(55) 441
MULL(56) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 442
DIVL(57) 443
BINL(58) AUS 418
BCDL(59) Unbeeinflußt 418
XFER(70) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 389
BSET(71) 390
XCHG(73) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 391
SLD(74) 383
SRD(75) 384
MLPX(76) 419
DMPX(77) 421
SDEC(78) 423
DIST(80) Unbeeinflußt Unbeeinflußt Unbeeinflußt 392
COLL(81) 393
MOVB(82) Unbeeinflußt Unbeeinflußt 395
MOVD(83) 396
SFTR(84) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 385
TCMP(85) Unbeeinflußt 410
ASC(86) Unbeeinflußt 426
SBS(91) 462
MCRO(99) 464
Anhang BFehler– und arithmetischen Merker
549
Erweiterte Befehle (CPM2A/CPM2C und SRM1(–V2))Befehle 25503 (ER) 25504 (CY) 25505 (GR) 25506 (EQ) 25507 (LE) 25402 (N) Seite
ASFT(17) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 386
RXD(47)
U bee uß U bee uß U bee uß U bee uß U bee uß
486TXD(48) 487
CMPL(60) 413
INI(61) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 374
PRV(62) 376
CTBL(63) 371
SPED(64) 467
PULS(65) 466
SCL(66) Unbeeinflußt 397
BCNT(67) 479
BCMP(68) Unbeeinflußt 411
STIM(69) 484
INT(89) 481
SRCH(––) 448
MAX(––) 449
MIN(––) 451
HMS(––) Unbeeinflußt 431
NEG(––)*
U bee uß
432
SEC(––) 430
SUM(––) 455
FCS(––) Unbeeinflußt Unbeeinflußt 479
HEX(––)
U bee ußUnbeeinflußt 428
AVG(––) 453
PID(––) 403
ZCP(––) Unbeeinflußt 414
*Hinweis Je nach den Konvertierungsergebnissen kann NEG(––) ebenfalls den Zustand des Unterlauf-Merkers(SR 25405) beeinflussen.
Erweiterte Befehle (nur CPM2A/CPM2C)Befehle 25503 (ER) 25504 (CY) 25505 (GR) 25506 (EQ) 25507 (LE) Seite
PWM(––) Unbeeinflußt Unbeeinflußt Unbeeinflußt Unbeeinflußt 473
ZCPL(––)
U bee uß
415
ACC(––) 470
SCL2(––) Unbeeinflußt Unbeeinflußt 399
SCL3(––) Unbeeinflußt 401
SYNC(––)
U bee uß
401
551
Anhang CSpeicherbereiche
CPM1/CPM1A–DatenbereicheDatenbereich–StrukturDie folgenden Datenbereiche können in der CPM1/CPM1A verwendet werden.
Datenbereich Worte Bits Kommentare
E/A–Bereich1
Eingangs–Bereich
IR 000 bis IR 009(10 Worte)
IR 00000 bis IR 00915(160 Bits)
Diese Bits können den externen E/A–Klemmenzugewiesen werden.
Ausgangs–Bereich
IR 010 bis IR 019(10 Worte)
IR 01000 bis IR 01915(160 Bits)
g
Arbeits–bereich
IR 200 bis IR 231(32 Worte)
IR 20000 bis IR 23115(512 Bits)
Arbeitsmerker können innerhalb des Programmsbeliebig verwendet werden.
SR (Systemmerker–be-reich)
SR 232 bis SR 255(24 Worte)
SR 23200 bis SR 25515(384 Bits)
Diese Systemmerker besitzen spezielle Funktio-nen, z.B. als Merker– und Steuerbits.
TR (TemporärerMerkerbereich)
--- TR 0 bis TR 7(8 Bits)
Diese Merker dienen zur temporären Speiche-rung des EIN/AUS–Zustandes in Programmver-zweigungen.
HR–Bereich2 HR 00 bis HR 19(20 Worte)
HR 0000 bis HR 1915(320 Bits)
Diese Merker speichern Daten und behalten ih-ren Zustand (gesetzt/rückgesetzt) auch nachAusschalten der Versorgungsspannung.
AR–Bereich2 AR 00 bis AR 15(16 Worte)
AR 0000 bis AR 1515(256 Bits)
Diese Systemmerker besitzen spezielle Funktio-nen, z.B. als Merker– und Steuerbits.
LR1 (Schnittstellenmerker–bereich
LR 00 bis LR 15(16 Worte)
LR 0000 bis LR 1515(256 Bits)
Wird zur 1:1-Datenübertragung mit einer anderenSPS verwendet.
Zeitgeber–/Zählerbereich2
TC 000 bis TC 127 (Zeitgeber–/Zähler–Nr.)3 Für Zeitgeber und Zähler werden die Nummernaus dem selben Bereich verwendet.
DM (Daten-merker-b i h)
Lesen/Schreiben2
DM 0000 bis DM 0999DM 1022 bis DM 1023(1002 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Worte werden auch beim Ausschaltender Versorgungsspannung aufrecht erhalten.
bereich) Fehler–protokoll2
DM 1000 bis DM 1021(22 Worte)
--- Wird verwendet, um den Fehlercode der aufge-tretenen Fehler zu speichern. Diese Worte kön-nen als normale Lese–/Schreib–DM verwendetwerden, wenn die Fehlerprotokoll–Funktion nichtangewendet wird.
Nur Lesen4 DM 6144 bis DM 6599(456 Worte)
--- Können nicht vom Programm überschrieben wer-den.
SPS–Konfi-guration4
DM 6600 bis DM 6655(56 Worte)
--- Speichert verschiedene Steuerparameter vonSPS–Operationen.
Hinweis 1. IR– und LR–Bits, denen keine bestimmte Funktionen zugewiesen sind, können als Arbeitsmerkerverwendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Schreib–/Lese–Bereichs wird bei einem Stromausfallüber einen Kondensator nullspannungssicher beibehalten. Die Sicherungszeit variiert mit der Um-gebungstemperatur; bei 25_C versorgt der Kondensator den Speicher 20 Tage. Überschreitet dieDauer der Versorgungsspannungs–Untebrrechung die Sicherungszeit, wird der Speicherinhalt ge-löscht und AR1314 aktiviert. (Dieser Merker wird eingeschaltet, wenn Daten nicht mehr durch deneingebauten Kondensator beibehalten werden können.) In Abschnitt 2-1-2 Merkmale des Techni-schen Handbuches der CPM1 finden Sie hierzu eine Graphik mit der Gegenüberstellung von Spei-cherzeit und Temperatur.
3. Beim Zugriff auf einen Istwert werden TC–Worte als Wortdaten verwendet. Beim Zugriff auf Fertig-merker als Bitdaten.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-grammiergerät geändert werden.
SR–BereichDiese Bits dienen hauptsächlich als Merker bei CPM1/CPM1A–Betrieb oder sie enthalten Ist– und Sollwerte fürverschiedene Funktionen. Die Funktionen des SR–Bereichs sind in der nachstehenden Tabelle beschrieben.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen, aber sie können nicht überden Kontaktplan gesetzt werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gelesenen.
Anhang CSpeicherbereiche
552
Wort(e) Bit(s) Kommentare Lesen/Speichern
Seite
SR 232bisSR 235
00 bis 15 Eingabebereich der MakrofunktionEnthält den Eingabeoperand für MCRO(99).(Kann als Arbeitsmerker verwendet werden, wenn MCRO(99) nicht verwendetwird.)
Lesen/Speichern
151
SR 236bisSR 239
00 bis 15 Ausgabebereich der MakrofunktionEnthält den Ausgabeoperand für MCRO(99).(Kann als Arbeitsmerker verwendet werden, wenn MCRO(99) nicht verwendetwird.)
SR 240 00 bis 15 Eingangsgesteuerter Interrupt 0–Sollwert, im ZählmodusSollwert, wenn Eingangsgesteuerter Interrupt 0 im Zählmodus verwendet wird(4–stelliger Hexadezimalwert, 0000 bis FFFF).(Wird der eingangsgesteuerte Interrupt 0 nicht im Zählmodus verwendet, könnendiese Merker als Arbeitsmerker eingesetzt werden).
75
SR 241 00 bis 15 Eingangsgesteuerter Interrupt 1–Sollwert, im ZählmodusSollwert, wenn Eingangsgesteuerter Interrupt 1 im Zählmodus verwendet wird(4–stelliger Hexadezimalwert, 0000 bis FFFF).(Wird der eingangsgesteuerte Interrupt 1 nicht im Zählmodus verwendet, könnendiese Merker als Arbeitsmerker eingesetzt werden).
SR 242 00 bis 15 Eingangsgesteuerter Interrupt 2–Sollwert, im ZählmodusSollwert, wenn Eingangsgesteuerter Interrupt 2 im Zählmodus verwendet wird(4–stelliger Hexadezimalwert, 0000 bis FFFF).(Wird der eingangsgesteuerte Interrupt 2 nicht im Zählmodus verwendet, könnendiese Merker als Arbeitsmerker eingesetzt werden).
SR 243 00 bis 15 Eingangsgesteuerter Interrupt 3–Sollwert, im ZählmodusSollwert, wenn Eingangsgesteuerter Interrupt 3 im Zählmodus verwendet wird(4–stelliger Hexadezimalwert, 0000 bis FFFF).(Wird der eingangsgesteuerte Interrupt 3 nicht im Zählmodus verwendet, könnendiese Merker als Arbeitsmerker eingesetzt werden)
SR 244 00 bis 15 Eingangsgesteuerter Interrupt 0–Istwert minus 1, im ZählmodusZähler–Istwert minus 1, wenn der eingangsgesteuerte Interrupt 0 im Zählmodusverwendet wird (4–stelliger Hexadezimalwert).
Nur Lesen 76
SR 245 00 bis 15 Eingangsgesteuerter Interrupt 1–Zähler–Istwert minus 1, im ZählmodusZähler–Istwert minus 1, wenn der eingangsgesteuerte Interrupt 1 im Zählmodusverwendet wird (4–stelliger Hexadezimalwert).
SR 246 00 bis 15 Eingangsgesteuerter Interrupt 2–Zähler–Istwert minus 1, im ZählmodusZähler–Istwert minus 1, wenn der eingangsgesteuerte Interrupt 2 im Zählmodusverwendet wird (4–stelliger Hexadezimalwert).
SR 247 00 bis 15 Eingangsgesteuerter Interrupt 3 Zähler–Istwert minus 1, im ZählmodusZähler–Istwert minus 1, wenn der eingangsgesteuerte Interrupt 3 im Zählmodusverwendet wird (4–stelliger Hexadezimalwert).
SR 248,SR 249
00 bis 15 Istwert–Bereich des Schnellen ZählersKann als Arbeitsmerker verwendet werden, wenn der Schnelle Zähler nicht verwen-det wird.
82
SR 250 00 bis 15 Werteingabe–Poti 0Wird zur Speicherung des 4–stelligen BCD–Sollwertes (0000 bis 0200) von Wert-eingabe–Poti 0 verwendet.
145
SR 251 00 bis 15 Werteingabe–Poti 1Wird zur Speicherung des 4–stelligen BCD–Sollwertes (0000 bis 0200) von Wert-eingabe–Poti 1 verwendet.
Anhang CSpeicherbereiche
553
Wort(e) SeiteLesen/Speichern
KommentareBit(s)
SR 252 00 Schneller Zähler–Rücksetzmerker Lesen/Speichern
83
01 bis 07 Nicht verwendet
08 Peripherieschnittstellen–Rücksetzmerker Aktivieren Sie diesen Merker zur Rücksetzung der Peripherieschnittstelle(nichtgültig, wenn ein Programmiergerät angeschlossen ist.) Er wird nach beendeterRücksetzung automatisch deaktiviert.
Lesen/Speichern
251
09 Nicht verwendet
10 SPS–Konfigurations–RücksetzmerkerAktivieren Sie diesen Merker zur Rücksetzung der Konfiguration (DM 6600 bis DM6655). Er wird nach beendeter Rücksetzung automatisch deaktiviert. (Hierzu musssich die SPS in der PROGRAM–Betriebsart befinden.)
Lesen/Speichern
2
11 Zwangssetzungsstatus–Systemhaftmerker (sehen Sie den Hinweis.)GESETZT: Der Zustand der zwangsweise gesetzen/rückgesetzten Mer-
ker wird beim Umschalten von der PROGRAM– in die MONI-TOR–Betriebsart aufrechterhalten.
RÜCKGESETZT: Der Zustand der zwangsweise gesetzten/rückgesetzten Mer-ker wird beim Umschalten von der PROGRAM– in die MONI-TOR–Betriebsart aufgehoben.
Über eine SPS–Konfigurationseinstellung kann der Status dieses Bits nach demAbschalten der SPS–Versorgungsspannung aufrechterhalten werden.
20
12 E/A–Systemhaftmerker (sehen Sie den Hinweis.)GESETZT: Der Zustand von IR– und LR–Merkern wird am Anfang und
Ende des Betriebs aufrechterhalten.RÜCKGESETZT: Der Zustand von IR– und LR–Merker wird am Anfang und
Ende des Betriebs zurückgesetzt.Über eine SPS–Konfigurationseinstellung kann der Status dieses Bits nach demAbschalten der SPS–Versorgungsspannung aufrechterhalten werden.
20
13 Nicht verwendet
14 Fehlerprotokoll löschen–SystemmerkerAktivieren Sie diesen Merker zum Löschen des Fehlerprotokolls. Er wird nach demLöschen automatisch zurückgesetzt.
Lesen/Speichern
537
15 Nicht verwendet
SR 253 00 bis 07 FAL–FehlercodeBei einem Fehler wird der betreffende Fehlercode (2–stellig) in diesem Bereichgespeichert. Bei der Ausführung von FAL(06) bzw. FALS(07) wird dieser Bereichzur Speicherung der FAL–Nummer verwendet. Bei der Ausführung eines FAL00–Befehls bzw. beim Löschen des Fehlers über ein Programmiergerät wird diesesWort auf 00 zurückgesetzt.
Nur Lesen 359
08 Nicht verwendet
09 Zykluszeit überschritten–MerkerDieser Merker wird bei einer Überschreitung der Zykluszeit (d.h. bei einer Zyklus-zeit von mehr als 100 ms) gesetzt.
Nur Lesen ---
10 bis 12 Nicht verwendet
13 Immer–EIN–Merker Nur Lesen ---
14 Immer–AUS–Merker
u ese
---
15 Erster–Zyklus–Merker Dieser Merker wird zu Beginn des Betriebs für die Dauer eines Zyklus gesetzt.
---
SR 254 00 1 Minute–Taktimpuls (30 Sekunden EIN, 30 Sekunden AUS) ---S 5
01 0,02 Sekunden–Taktimpuls (0,01 Sekunden EIN, 0,01 Sekunden AUS) ---
02 Negativ(N)–Merker ---
03 bis 05 Nicht verwendet
06 Flankenausführungs–Überwachung beendet–MerkerDieser Merker wird nach Beendigung der Flankenausführungs–Überwachung ge-setzt.
Nur Lesen 154
07 STEP(08)–Ausführungs–MerkerDieser Merker wird nur am Anfang der auf STEP(08) basierenden Verarbeitung fürdie Dauer eines Zyklus gesetzt.
360
08 bis 15 Nicht verwendet
Anhang CSpeicherbereiche
554
Wort(e) SeiteLesen/Speichern
KommentareBit(s)
SR 255 00 0,1 Sekunden–Taktimpuls (0,05 Sekunden EIN, 0,05 Sekunden AUS) Nur Lesen ---S 55
01 0,2 Sekunden–Taktimpuls (0,1 Sekunden EIN, 0,1 Sekunden AUS)
u ese
---
02 1,0 Sekunden–Taktimpuls (0,5 Sekunden EIN, 0,5 Sekunden AUS) ---
03 Befehlsausführungsfehler(ER)–MerkerDieser Merker wird während der Befehlsausführung bei einem Fehler gesetzt.
---
04 Übertrags(CY)–MerkerDieser Merker wird gesetzt, wenn in dem Ergebnis einer Befehlsausführung einÜbertrag auftritt.
---
05 GRÖßER(GR)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GRÖßER ist.
---
06 GLEICH(EQ)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GLEICH oder dasErgebnis einer Befehlsausführung 0 ist.
---
07 KLEINER(LE)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs KLEINER ist.
---
08 bis 15 Nicht verwendet
Hinweis DM 6601 in der SPS–Konfiguration kann gesetzt werden, um den vorhergehenden Status des E/A–Sy-stemhaftmerkers (SR 25212) und den des Zwangssetzungsstatus–Haftmerkers (SR 25211) nach demAusschalten der Versorgungsspannung beizubehalten. Liegt jedoch keine Versorgungsspannung füreinen längeren Zeitraum als die Sicherungszeit an, wird der Status gelöscht. Sehen Sie für Einzelheitenbezüglich der Sicherungszeit das CPM1Aoder CPM1–Bedienerhandbuch. Sehen Sie Abschnitt 1-1-2CPM1–/CPM1A–SPS–Konfigurationseinstellungen für Einzelheiten zur SPS–Konfiguration.
AR–BereichDiese Bits dienen hauptsächlich als Merker für den CPM1/CPM1A–Betrieb. Diese Merker behalten auch dannihren Zustand bei, wenn die Versorgungsspannung der CPM1/CPM1A abgeschaltet wurde oder bei Betriebsbe-ginn oder –ende.
Wort(e) Bit(s) Kommentare Seite
AR 00,AR 01
00 bis 15 Nicht verwendet
AR 02 00 Erweiterungsbaugruppen–Fehlermerker für 1. Baugruppe Dieser Merker wird aktiviert,i F hl i d t
---0
01 Erweiterungsbaugruppen–Fehlermerker für 2. Baugruppe(Wird nicht von der CPM1 CPU–Baugruppe ohne “–V1”–Zusatzverwendet.)
ese e e d a e ,wenn ein Fehler in der ent-sprechenden Baugruppeauftritt.
02 Erweiterungsbaugruppen–Fehlermerker für 3. Baugruppe(Wird nicht von der CPM1 CPU–Baugruppe ohne “–V1”–Zusatzverwendet.)
03 bis 07 Nicht verwendet
08 bis 11 Anzahl der angeschlossenen E/A–Baugruppen. ---
12 bis 15 Nicht verwendet
AR 03 bisAR 07
00 bis 15 Nicht verwendet
AR 08 00 bis 07 Nicht verwendet08
08 bis 11 Programmiergeräte–Fehlercode0: Normale Beendigung1: Paritätsfehler2: Rahmenfehler3: Überlauffehler
252
12 Programmiergeräte–Fehlermerker
13 bis 15 Nicht verwendet
AR 09 00 bis 15 Nicht verwendet
AR 10 00 bis 15 Ausschaltzähler (4–stelliger BCD–Wert)Zählt, wie oft die Versorgungsspannung ausgeschaltet wurde.Geben Sie zur Rücksetzung des Zählers ”0000” über ein Programmiergerät ein.
---
Anhang CSpeicherbereiche
555
Wort(e) SeiteKommentareBit(s)
AR 11 00 bis 07 Schneller Zähler–Bereichsvergleichs-Merker s00 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 101 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 202 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 303 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 404 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 505 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 606 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 707 GESETZT: Zähler–Istwert befindet sich innerhalb Vergleichsbereich 8
85
08 bis 14 Nicht verwendet
15 Impuls–AusgangszustandGESETZT: unterbrochenRÜCKGESETZT: Impulsausgabe
---
AR 12 00 bis 15 Nicht verwendet
AR 13 00 SPS–Konfigurationsfehler beim Einschalten–MerkerDieser Merker wird bei einem Fehler in DM 6600 bis DM 6614 gesetzt (Teil des Konfigurationsbe-reichs, der beim Einschalten gelesen wird).
535
01 Einschalt–SPS–Konfigurations–FehlermerkerDieser Merker wird bei einem Fehler in DM 6615 bis DM 6644 gesetzt (Teil des Konfigurationsbe-reichs, der zu Beginn des Betriebs gelesen wird).
02 RUN–SPS–Konfigurations–FehlermerkerDieser Merker wird bei einem Fehler in DM 6645 bis DM 6655 gesetzt (Teil des Konfigurationsbe-reichs, der immer gelesen wird).
03, 04 Nicht verwendet
05 Zykluszeit zu lang–Merker Dieser Merker wird gesetzt, wenn die aktuelle Zykluszeit die in DM 6619 spezifizierte Zykluszeitüberschreitet.
---
06, 07 Nicht verwendet
08 Speicherbereich–Spezifikation–FehlermerkerWird auf EIN gesetzt, wenn eine nicht vorhandene Datenbereichs–Adresse im Programm spezifi-ziert wird.
---
09 Flash–Speicher–FehlermerkerWird bei einem Fehler im Flash–Speicher auf EIN gesetzt.
---
10 DM–Nur lesen–Fehlermerker (Sehen Sie Hinweis 3.)Wird auf EIN gesetzt, wenn im DM–Nur–Lese–Bereich (DM 6144 bis DM 6599) ein Prüfsummen-fehler auftritt und dieser Bereich initialisiert wird.
536
11 SPS–Konfigurations–FehlermerkerWird bei einem Prüfsummenfehler im SPS–Konfigurationsbereich auf EIN gesetzt.
12 Programm–Fehlermerker Dieser Merker wird bei einem Prüfsummenfehler in dem UM (Programmspeicher)–Bereich oderbei der Ausführung eines falschen Befehls gesetzt.
---
13 Nicht verwendet
14 Datenspeicher–FehlermerkerWird aktiviert, wenn die Spannung wieder eingeschaltet wird, nachdem die Daten nicht über deneingebauten Kondensator aufrechtgehalten werden konnten. Der eingebaute Kondensator er-möglicht die Nullspannungssicherung der Daten der folgenden Bereiche:DM–Bereich (schreib–/lesefähig: DM 0000 bis 0999 und DM 1022 bis 1023)HR–Bereich (HR 00 bis 19)Zählerbereich (CNT 000 bis 127)SR–Bereich, Wort 252, Bit 11, 12 (wenn die SPS–Konfiguration in DM 6601 eingestellt wurde,um den Status zu erhalten)AR–Bereich, Wort 10 (Ausschaltzähler)Betriebsart (wenn die SPS–Konfiguration in DM 6600 DM eingestellt wurde, die letzte, vor demSpannungsausfall verwendete Betriebsart nach der Rückkehr der Versorgungsspannung fortzu-setzen)
Falls keine Daten in den oben aufgeführten Bereichen gespeichert werden können:Die DM–, Fehlerprotokoll–, HR–, Zähler–, SR(Wort 252, Bit 11 und 12)– und AR(Wort 10)–Berei-che werden gelöscht.Die Betriebsart wechselt zu PROGRAM.
(Sehen Sie für Einzelheiten bezüglich der Sicherungszeit das CPM1A–Bedienerhandbuch.)
---
15 Nicht verwendet
Anhang CSpeicherbereiche
556
Wort(e) SeiteKommentareBit(s)
AR 14 00 bis 15 Maximale Zykluszeit (4–stelliger BCD–Wert) (sehen Sie Hinweis 1)Die längste Zykluszeit seit dem Beginn des Betriebs wird gespeichert. Sie wird zu Beginn undnicht am Ende des Betriebs gelöscht.
In Abhängigkeit von der Einstellung der Überwachungszeit (DM 6618) wird eine der folgendenZeiteinheiten verwendet: Vorgabe: 0,1 ms; 10 ms–Einstellung: 0,1 ms; 100 ms–Einstellung: 1 ms;1 s–Einstellung: 10 ms
519
AR 15 00 bis 15 Aktuelle Zykluszeit (4–stelliger BCD–Wert) (sehen Sie Hinweis 1)Die letzte Zykluszeit während des Betriebs wird gespeichert. Die aktuelle Zykluszeit wird nachEnde des Betriebs in der STOP–Betriebsart nicht gelöscht.
In Abhängigkeit von der Einstellung der Überwachungszeit (DM 6618) wird eine der folgendenZeiteinheiten verwendet: Vorgabe: 0,1 ms; 10 ms–Einstellung: 0,1 ms; 100 ms–Einstellung: 1 ms;1 s–Einstellung: 10 ms
Hinweis 1. Die Angaben sind wie folgt, je nach der Einheiteneinstellung der Zyklus–Überwachungszeit(DM 6618):Anfänglicher Status: 0,1 ms–EinheitBei Einstellung der 10 ms–Einheit: 0,1 ms–EinheitBei Einstellung der 100 ms–Einheit: 1 ms–EinheitBei Einstellung der 1 s–Einheit: 10 ms–Einheit
2. Bereiche, die nicht verwendet werden können, werden gelöscht, wenn die Spannung wieder einge-schaltet wird.
3. Der Inhalt von AR 10 wird vom eingebauten Kondensator abgesichert. Liegt jedoch keine Versor-gungsspannung für einen längeren Zeitraum als die Sicherungszeit an, wird der Inhalt gelöscht.Sehen Sie für Einzelheiten bezüglich der Sicherungszeit das CPM1Aoder CPM1–Bedienerhand-buch.
CPM2A/CPM2C–Speicherbereiche
Datenbereich–StrukturDie folgenden Datenbereiche können in der CPM2A/CPM2C verwendet werden.
Datenbereich Worte Bits Kommentare
E/A–Bereich1
Eingangs–bereich
IR 000 bis IR 009(10 Worte)
IR 00000 bis IR 00915(160 Bits)
Diese Bits können den externen E/A–Klemmenzugewiesen werden.
Ausgangs–bereich
IR 010 bis IR 019(10 Worte)
IR 01000 bis IR 01915(160 Bits)
g
Arbeits–bereich
IR 020 bis IR 049IR 200 bis IR 227(58 Worte)
IR 02000 bis IR 04915IR 20000 bis IR 22715(928 Bit)
Arbeitsmerker können innerhalb des Programmsbeliebig verwendet werden.
SR (Systemmerker–be-reich)
SR 228 bis SR 255(28 Worte)
SR 22800 bis SR 25515(448 Bits)
Diese Systemmerker besitzen spezielle Funktio-nen, z.B. als Merker– und Steuerbits.
TR (TemporärerMerkerbereich)
--- TR 0 bis TR 7(8 Bits)
Diese Bits dienen zur temporären Speicherungdes EIN/AUS–Zustandes in Programmverzwei-gungen.
HR–Bereich2 HR 00 bis HR 19(20 Worte)
HR 0000 bis HR 1915(320 Bits)
Diese Bits speichern Daten und behalten ihrenZustand (gesetzt/rückgesetzt) auch nach Aus-schalten der Versorgungsspannung.
AR–Bereich2 AR 00 bis AR 23(24 Worte)
AR 0000 bis AR 2315(384 Bits)
Diese Systemmerker besitzen spezielle Funktio-nen, z.B. als Merker– und Steuerbits.
LR1 (Schnittstellenmerker–bereich1
LR 00 bis LR 15(16 Worte)
LR 0000 bis LR 1515(256 Bits)
Wird zur 1:1-Datenübertragung mit einer anderenSPS verwendet.
Zeitgeber–/Zählerbereich2
TC 000 bis TC 255 (Zeitgeber–/Zähler–Nr.)3 Für Zeitgeber und Zähler werden Nummern ausdem selben Bereich verwendet.
DM (Daten-merker-b i h)
Lesen/Schreiben2
DM 0000 bis DM 1999DM 2022 bis DM 2047(2,026 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Worte werden auch beim Ausschaltender Versorgungsspannung aufrecht erhalten.
bereich) Fehler–protokoll2
DM 2000 bis DM 2021(22 Worte)
--- Wird verwendet, um den Fehlercode der aufge-tretenen Fehler zu speichern. Diese Worte kön-nen als normale Lese–/Schreib–DM verwendetwerden, wenn die Fehlerprotokoll–Funktion nichtangewendet wird.
Nur Lesen4 DM 6144 bis DM 6599(456 Worte)
--- Können nicht vom Programm überschrieben wer-den.
SPS–Konfi-guration4
DM 6600 bis DM 6655(56 Worte)
--- Speichert verschiedene Steuerparameter vonSPS–Operationen.
Anhang CSpeicherbereiche
557
Hinweis 1. IR– und LR–Worte, die keiner bestimmten Funktion zugewiesen sind, können als Arbeitsworte ver-wendet werden.
2. Der Inhalt des HR–, AR–, Zähler– und DM–Schreib/Lese–Bereichs wird durch die Batterie derCPU–Baugruppe abgesichert. Wird die Batterie entfernt oder fällt diese aus, gehen die Daten die-ser Bereiche verloren und werden auf die Standardwerte zurückgesetzt. (In der CPM2C–CPU–Baugruppen ohne Batterie werden diese Bereiche durch einen Kondensator nullspannungssichergespeichert. Bei einer Temperatur von 25_C hält der Kondensator den Speicher für 10 Tage auf-recht.)
3. Wird eine TC–Nummer als Wortoperand verwendet, greift sie auf den Istwert des Zeitgebers oderZählers zu; wird diese als Bitoperand verwendet, greift sie auf den Fertigmerker zu.
4. Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-grammiergerät geändert werden. Das Programm und die Daten in DM 6144 bis DM 6655 werdenim Flash–Speicher abgesichert.
SR–Bereich
Diese Bits dienen hauptsächlich als Merker beim CPM2A/CPM2C–Betrieb oder sie enthalten Ist– und Sollwertefür verschiedene Funktionen. Die Funktionen des SR–Bereichs werden in der nachstehenden Tabelle erläutert.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen aber sie können nicht überden Kontaktplan geschrieben werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gele-senen.
Wort(e) Bit(s) Kommentare Lesen/Speichern
Seite
SR 228,SR 229
00 bis 15 Impulsausgabe–Istwert 0Enthält den Impulsausgabe–Istwert (–16.777.215 bis 16.777.215). SR 22915 fun-giert als das Vorzeichenbit; ein negativer Wert wird angezeigt, wenn SR 22915gesetzt ist.(Die gleichen Istwertdaten können sofort mit PRV(62) gelesen werden.)
Nur der Impulsausgabe–Istwert 0 wird für ACC(––) verwendet.
Nur Lesen 101
SR 230,SR 231
00 bis 15 Impulsausgabe–Istwert 1Enthält den Impulsausgabe–Istwert (–16.777.215 bis 16.777.215). SR 23115 fun-giert als Vorzeichenbit; ein negativer Wert wird angezeigt, wenn SR 23115 gesetztist.(Die gleichen Istwertdaten können sofort mit PRV(62) gelesen werden.)
SR 232bisSR 235
00 bis 15 Eingangsbereich der MakrofunktionEnthält den Eingangsoperand für MCRO(99).(Kann als Arbeitsmerker verwendet werden, wenn MCRO(99) nicht verwendetwird.)
Lesen/Speichern
151
SR 236bisSR 239
00 bis 15 Ausgangsbereich der MakrofunktionEnthält den Ausgangsoperand für MCRO(99).(Kann als Arbeitsmerker verwendet werden, wenn MCRO(99) nicht verwendetwird.)
SR 240 00 bis 15 Sollwert für Interrupt–Eingang 00003 im ZählmodusSollwert bei Verwendung von Interrupt–Eingang 00003 im Zählmodus (4–stelligerHexadezimalwert, 0000 bis FFFF).(Wird Interrupt–Eingang 00003 nicht im Zählmodus verwendet, können diese Mer-ker als Arbeitsmerker eingesetzt werden).
67
SR 241 00 bis 15 Sollwert bei Interrupt–Eingang 00004 im ZählmodusSollwert bei Verwendung von Interrupt–Eingang 00004 im Zählmodus (4–stelligerHexadezimalwert, 0000 bis FFFF).(Wird Interrupt–Eingang 00004 nicht im Zählmodus verwendet, können diese Mer-ker als Arbeitsmerker eingesetzt werden).
SR 242 00 bis 15 Sollwert bei Interrupt–Eingang 00005 im ZählmodusSollwert bei Verwendung von Interrupt–Eingang 00005 im Zählmodus (4–stelligerHexadezimalwert, 0000 bis FFFF).(Wird Interrupt–Eingang 00005 nicht im Zählmodus verwendet, können diese Mer-ker als Arbeitsmerker eingesetzt werden).
SR 243 00 bis 15 Sollwert bei Interrupt–Eingang 00006 im ZählmodusSollwert bei Verwendung von Interrupt–Eingang 00006 im Zählmodus (4–stelligerHexadezimalwert, 0000 bis FFFF).(Wird Interrupt–Eingang 00006 nicht im Zählmodus verwendet, können diese Mer-ker als Arbeitsmerker eingesetzt werden).
(Eingang 00006 ist in CPM2C–CPU–Baugruppen mit 10 E/A–Anschlüssen nichtvorhanden.)
Anhang CSpeicherbereiche
558
Wort(e) SeiteLesen/Speichern
KommentareBit(s)
SR 244 00 bis 15 Interrupt–Eingang 00003–Istwert im ZählmodusZähler–Sollwert bei Verwendung von Interrupt–Eingang 00003 im Zählmodus(4–stelliger Hexadezimalwert, 0000 bis FFFF).
Nur Lesen 69
SR 245 00 bis 15 Interrupt–Eingang 00004–Istwert im ZählmodusZähler–Sollwert bei Verwendung von Interrupt–Eingang 00004 im Zählmodus(4–stelliger Hexadezimalwert, 0000 bis FFFF).
SR 246 00 bis 15 Interrupt–Eingang 00005–Istwert im ZählmodusZähler–Sollwert bei Verwendung von Interrupt–Eingang 00005 im Zählmodus(4–stelliger Hexadezimalwert, 0000 bis FFFF).
SR 247 00 bis 15 Interrupt–Eingang 00006–Istwert im ZählmodusZähler–Sollwert bei Verwendung von Interrupt–Eingang 00006 im Zählmodus(4–stelliger Hexadezimalwert, 0000 bis FFFF).
(Eingang 00006 ist in CPM2C–CPU–Baugruppen mit 10 E/A–Anschlüssen nichtvorhanden.)
SR 248,SR 249
00 bis 15 Istwert–Bereich des Schnellen ZählersKann als Arbeitsmerker verwendet werden, wenn der Schnelle Zähler nicht verwen-det wird.
54
SR 250 00 bis 15 Einstellung Werteingabe–Poti 0 (nur CPM2A–SPS–Systeme)Wird zur Speicherung des 4–stelligen BCD–Sollwertes (0000 bis 0200) von Wert-eingabe–Poti 0 verwendet.
145
SR 251 00 bis 15 Einstellung Werteingabe–Poti 1 (nur CPM2A–SPS–Systeme)Wird zur Speicherung des 4–stelligen BCD–Sollwertes (0000 bis 0200) von Wert-eingabe–Poti 1 verwendet.
SR 252 00 Rücksetzmerker Schneller–Zähler 0 Lesen/Speichern
46
01 bis 03 Nicht verwendet
04 Impulsausgang 0–Istwert–RücksetzmerkerAktivieren Sie diesen Merker, um den Istwert von Impulsausgang 0 zurückzusetzen.
Lesen/Speichern
91
05 Impulsausgang 1–Istwert–RücksetzmerkerAktivieren Sie diesen Merker, um den Istwert von Impulsausgang 1 zurückzusetzen.
06, 07 Nicht verwendet
08 Peripherieschnittstellen–RücksetzmerkerDurch das Setzen dieses Merkers wird die Peripherieschnittstelle zurückge-setzt.Nach Beendigung der Rücksetzung wird der Merker automatisch zurückge-setzt.
Lesen/Speichern
---
09 RS–232C–Schnittstellen–RücksetzmerkerDurch das Setzen dieses Merkers wird die RS–232C–Schnittstelle zurückgesetzt.Nach Beendigung der Rücksetzung wird der Merker automatisch zurückgesetzt.
---
10 SPS–Konfigurations–RücksetzmerkerDurch das Setzen dieses Merkers wird die Initialisierung der Konfiguration (DM6600 bis DM 6655) durchgeführt. Er wird nach beendeter Initialisierung automatischdeaktiviert. (Hierzu muss sich die SPS in der PROGRAM–Betriebsart befinden.)
2
11 Zwangssetzungsstatus–Systemhaftmerker (sehen Sie den Hinweis)GESETZT: Der Zustand der zwangsweise gesetzen/rückgesetzten Mer-
ker wird beim Umschalten zwischen der PROGRAM– undMONITOR–Betriebsart aufrechterhalten.
RÜCKGESETZT: Der Zustand der zwangsweise gesetzten/rückgesetzten Mer-ker wird beim Umschalten zwischen der PROGRAM– undMONITOR–Betriebsart aufgehoben.
Die Konfiguration kann so eingestellt werden, dass der Status dieses Merkers auchnach dem Abschalten der SPS–Versorgungsspannung aufrechterhalten wird.
20
12 E/A–Systemhaftmerker (sehen Sie den Hinweis)GESETZT: Der Zustand der IR– und LR–Merker wird am Anfang und
Ende des Betriebs aufrechterhalten.RÜCKGESETZT: IR– und LR–Merker werden am Anfang und Ende des Be-
triebs zurückgesetzt.Die Konfiguration kann so eingestellt werden, dass der Status dieses Merkers auchnach dem Abschalten der SPS–Versorgungsspannung aufrechterhalten wird.
20
13 Nicht verwendet
14 Fehlerprotokoll löschen–SystemmerkerDieser Merker wird zum Löschen des Fehlerprotokolls gesetzt. Er wird nach demBeenden automatisch zurückgesetzt.
Lesen/Speichern
537
15 Nicht verwendet
Anhang CSpeicherbereiche
559
Wort(e) SeiteLesen/Speichern
KommentareBit(s)
SR 253 00 bis 07 FAL–FehlercodeBei einem Fehler wird der betreffende Fehlercode (2–stellige Zahl) in diesem Be-reich gespeichert. Bei der Ausführung von FAL(06) bzw. FALS(07) wird dieser Be-reich zur Speicherung der FAL–Nummer verwendet. Bei der Ausführung eines FAL00–Befehls bzw. beim Löschen des Fehlers über ein Programmiergerät wird diesesWort auf 00 zurückgesetzt.
Nur Lesen
359
08 BatteriefehlermerkerWird aktiviert, wenn die Spannung der CPU–Baugruppen–Sicherungsbatterie zuniedrig ist.
---
09 Merker für Zykluszeit–ÜberschreitungDieser Merker wird bei einer Überschreitung der Zykluszeit (d.h. bei einer Zyklus-zeit von mehr als 100 ms) gesetzt.
---
10,11 Nicht verwendet
12 RS–232C–Konfiguration ändern–MerkerWird aktiviert, wenn die Einstellungen der RS–232C–Schnittstelle geändert werden.
Nur Lesen
---
13 Merker ständig auf EIN gesetzt Nur L
---
14 Merker ständig auf AUS gesetzt
uLesen ---
15 Erster–Zyklus–Merker Dieser Merker wird zu Beginn des Betriebs für die Dauer eines Zyklus gesetzt.
---
SR 254 00 1–Minute–Taktimpuls (30 Sekunden EIN, 30 Sekunden AUS) ---S 5
01 0,02–Sekunden–Taktimpuls (0,01 Sekunden EIN, 0,01 Sekunden AUS) ---
02 Negativ(N)–Merker ---
03 Nicht verwendet
04 Überlauf(OF)–MerkerWird aktiviert, wenn ein Überlauf in einer vorzeichenbehafteten Binärwert–Berech-nung auftritt.
Nur Lesen
---
05 Unterlauf(UF)–MerkerWird aktiviert, wenn ein Unterlauf in einer vorzeichenbehafteten Binärwert–Berech-nung auftritt.
---
06 Flankenausführung abgeschlossen–MerkerDieser Merker wird nach Beendigung der flankengesteuerten Ausführung gesetzt.
154
07 STEP(08)–Ausführungs–MerkerDieser Merker wird nur am Anfang der auf STEP(08) basierenden Verarbeitung fürdie Dauer eines Zyklus gesetzt.
360
08 bis 15 Nicht verwendet
SR 255 00 0,1–Sekunden–Taktimpuls (0,05 Sekunden EIN, 0,05 Sekunden AUS) Nur L
---S 55
01 0,2–Sekunden–Taktimpuls (0,1 Sekunden EIN, 0,1 Sekunden AUS)
uLesen ---
02 1,0–Sekunden–Taktimpuls (0,5 Sekunden EIN, 0,5 Sekunden AUS) ---
03 Befehlsausführungs–Fehler(ER)–MerkerDieser Merker wird bei einem Fehler während der Befehlsausführung, gesetzt.
---
04 Übertrags(CY)–MerkerDieser Merker wird gesetzt, wenn in dem Ergebnis einer Befehlsausführung einÜbertrag auftritt.
---
05 GRÖßER(GR)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GRÖßER ist.
---
06 GLEICH(EQ)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GLEICH ist oderdas Ergebnis einer Befehlsausführung 0 ist.
---
07 KLEINER(LE)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs KLEINER ist.
---
08 bis 15 Nicht verwendet
Hinweis DM 6601 in der SPS–Konfiguration kann gesetzt werden, um den vorhergehenden Status des Zwangs-setzungsstatus–Systemhaftmerkers (SR 25211) und den des E/A–Systemhaftmerker (SR 25212)nach dem Ausschalten der Versorgungsspannung aufrechtzuerhalten. Sehen Sie Abschnitt 1-1-3CPM2A–/CPM2C–SPS–Konfigurationseinstellungen für Einzelheiten zur SPS–Konfiguration.
AR–Bereich
Diese Bits dienen hauptsächlich als Merker bei dem CPM2A/CPM2C–Betrieb. Diese Merker behalten auch dannihren Zustand, wenn die Versorgungsspannung der CPM2A/CPM2C abgeschaltet wurde oder bei Betriebsbeginnoder –ende.
Anhang CSpeicherbereiche
560
Wort(e) Bit(s) Kommentare Seite
AR 00,AR 01
00 bis 15 Nicht verwendet
AR 02 00 Erweiterungsbaugruppen–Fehlermerker für 1. Baugruppe Dieser Merker wird aktiviert,i F hl i d t
---0
01 Erweiterungsbaugruppen–Fehlermerker für 2. Baugruppe
ese e e d a e ,wenn ein Fehler in der ent-sprechenden Baugruppe
02 Erweiterungsbaugruppen–Fehlermerker für 3. Baugruppesprechenden Baugruppeauftritt.
03 Erweiterungsbaugruppen–Fehlermerker für 4. Baugruppe(wird nicht von der CPM2A verwendet)
auftritt.
04 Erweiterungsbaugruppen–Fehlermerker für 5. Baugruppe(wird nicht von der CPM2A verwendet)
05 bis 07 Nicht verwendet
08 bis 11 Anzahl der angeschlossenen Erweiterungs– und E/A–Erweiterungsbaugruppen ---
12 bis 15 Nicht verwendet
AR 03 bisAR 07
00 bis 15 Nicht verwendet
AR 08 00 bis 03 RS–232C–Schnittstellen–Fehlercode0: Normale Beendigung1: Paritätsfehler2: Rahmenfehler3: Überlauffehler
230,238
04 RS–232C–Kommunikations–FehlermerkerDieser Merker wird bei einem RS–232C–Kommunikationsfehler gesetzt.
05 RS–232C–Sendebereit–MerkerWird aktiviert, wenn die SPS bereit zum Senden von Daten ist. (Ohne Protokoll und nur Host–Link)
06 RS–232C–Empfang beendet–MerkerWird aktiviert, wenn die SPS das Lesen der Daten beendet hat. (Nur Ohne Protokoll)
07 RS–232C–EmpfangsüberlaufmerkerWird aktiviert, wenn ein Überlauf vorgekommen ist. (Nur Ohne Protokoll)
08 bis 11 Peripherieschnittstellen–Fehlercode0: Normale Beendigung1: Paritätsfehler2: Rahmenfehler3: Überlauffehler
12 Peripherieschnittstellen–KommunikationsfehlermerkerDieser Merker wird bei einem Peripherieschnittstellen–Kommunikationsfehler gesetzt.
13 Peripherieschnittstellen–Sendebereit–MerkerWird aktiviert, wenn die SPS bereit zum Senden von Daten ist. (Ohne Protokoll und nur Host–Link)
14 Peripherieschnittstellen–Empfang beendet–MerkerWird aktiviert, wenn die SPS das Lesen der Daten beendet hat. (Nur Ohne Protokoll)
15 Peripherieschnittstellen–EmpfangsüberlaufmerkerWird aktiviert, wenn ein Überlauf vorgekommen ist. (Nur Ohne Protokoll)
AR 09 00 bis 15 RS–232C–Schnittstellen–Empfangszähler4–stelliger BCD–Wert (nur gültig bei Verwendung der Ohne Protokoll–Kommunikation)
238
AR 10 00 bis 15 Peripherieschnittstellen–Empfangszähler (4–stelliger BCD–Wert)Nur gültig bei der Ohne Protokoll–Kommunikation.
238
Anhang CSpeicherbereiche
561
Wort(e) SeiteKommentareBit(s)
AR 11
(Hinweis 1)
00 bis 07 Bereichs-Vergleichs-Merker des schnellen Zähler s00 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 101 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 202 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 303 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 404 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 505 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 606 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 707 GESETZT: Istwert-Zähler befindet sich innerhalb Vergleichsbereich 8
55
08 Schneller Zähler–VergleichGESETZT: wird ausgeführtRÜCKGESETZT: angehalten
09 Schneller Zähler Istwert–Über–/UnterlaufmerkerGESETZT: Ein Über–/Unterlauf ist aufgetretenRÜCKGESETZT: Normaler Betrieb
10 Nicht verwendet
11 Impulsausgang 0–AusgangsstatusGESETZT: Impulsausgang 0 beschleunigt oder bremst ab.RÜCKGESETZT: Impulsausgang 0 arbeitet mit einer konstanten Rate.
98
12 Impulsausgang 0–Überlauf/UnterlaufmerkerGESETZT: Ein Über–/Unterlauf ist aufgetretenRÜCKGESETZT: Normaler Betrieb
13 Impulsausgang 0–Impulsanzahl eingestellt–MerkerGESETZ: Impulsanzahl wurde eingestellt.RÜCKGESETZT: Impulsanzahl wurde nicht eingestellt.
14 Impulsausgang 0–Impulsausgabe beendet–MerkerGESETZT: BeendetRÜCKGESEZT: Nicht beendet
15 Impulsausgang 0–AusgangsstatusGESETZT: ImpulsausgabeRÜCKGESETZT: gestoppt
AR 12 00 bis 11 Nicht verwendet
(Hinweis 1) 12 Impulsausgang 1–Überlauf/UnterlaufmerkerGESETZT: ein Über–/Unterlauf ist aufgetretenRÜCKGESETZT: normaler Betrieb
98
13 Impulsausgang 1–Impulsanzahl eingestellt–MerkerGESETZT: Impulsanzahl wurde eingestellt.RÜCKGESETZT: Impulsanzahl wurde nicht eingestellt.
14 Impulsausgang 1–Impulsausgabe beendet–MerkerGESETZT: beendetRÜCKGESETZT: nicht beendet
15 Impulsausgang 1–Ausgabestatus GESETZT: Impulsausgabe.RÜCKGESETZT: gestoppt
Anhang CSpeicherbereiche
562
Wort(e) SeiteKommentareBit(s)
AR 13 00 Merker für Konfigurationsbereichsfehler beim EinschaltenDieser Merker wird bei einem Fehler in DM 6600 bis DM 6614 gesetzt (Teil des Konfigurations-bereichs, der beim Einschalten gelesen wird).
535
01 Merker für Konfigurationsbereichsfehler zu Beginn des BetriebsDieser Merker wird bei einem Fehler in DM 6615 bis DM 6644 gesetzt (Teil des Konfigurations-bereichs, der zu Beginn des Betriebs gelesen wird).
02 Merker für Konfigurationsbereichsfehler im BetriebDieser Merker wird bei einem Fehler in DM 6645 bis DM 6655 gesetzt (Teil des Konfigurations-bereichs, der immer gelesen wird).
03, 04 Nicht verwendet
05 Zykluszeit zu lang–MerkerDieser Merker wird gesetzt, wenn die gegenwärtige Zykluszeit die in DM 6619 spezifizierteZykluszeit überschreitet.
---
06, 07 Nicht verwendet
08 Speicherbereich–Spezifikation–FehlermerkerWird auf EIN gesetzt, wenn eine nicht vorhandene Datenbereichs–Adresse im Programm spe-zifiziert wird.
---
09 Flash–Speicher–FehlermerkerWird bei einem Fehler im Flash–Speicher auf EIN gesetzt.
---
10 Fehlermerker des Nur–Lese–DM–BereichsWird auf EIN gesetzt, wenn im Nur–Lese–DM–Bereich (DM 6144 bis DM 6599) ein Prüfsum-menfehler eintritt und dieser Bereich initialisiert wird.
536
11 SPS–Konfigurations–FehlermerkerWird bei einem Prüfsummenfehler im SPS–Konfigurationsbereich auf EIN gesetzt.
12 Merker für ungültiges ProgrammDieser Merker wird bei einem Prüfsummenfehler in dem UM (Programmspeicher)–Bereich oderbei der Ausführung eines falschen Befehls gesetzt.
---
13 Erweiterte Befehle–Bereichsfehler–MerkerDieser Merker wird gesetzt, wenn ein Prüfsummenfehler im Erweiterte Befehle–Zuweisungsbereich auf-getreten ist. Der Erweiterte Befehle–Zuweisungen werden auf die Vorgabeeinstellungen zurückgesetzt.
14 Datenspeicher–FehlermerkerWird aktiviert, wenn Daten nicht über die Sicherungsbatterie aufrechterhalten werden können.
Die folgenden Worte werden normalerweise über die Batterie nullspannungssicher gespeichert:DM Lese/Schreib–Worte (DM 0000 bis DM 1999 und DM 2022 bis DM 2047), Fehlerprotokoll(DM 2000 bis DM 2021), HR–Bereich, Zählerbereich, SR 25511, SR 25512 (wenn DM 6601 aufE/A–Speicher halten beim Einschalten eingestellt wurde), AR 23, Betriebsart (wenn DM 6600DM eingestellt wird, um die vorhergehende Betriebsart zu verwenden) und Uhrworte (AR 17 bisAR 21, für CPU–Baugruppen mit Uhren).
Können die obenstehenden Worte nicht beibehalten werden, werden alle Daten gelöscht, mitder Ausnahme, dass AR 2114 gesetzt wird. Die CPU–Baugruppe beginnt den Betrieb in derPROGRAM–Betriebsart, wenn DM 6600 gesetzt wird, um die vorhergehende Betriebsart zuverwenden. (Wird DM 6604 DM gesetzt, um einen Fehler zu generieren, beginnt die SPS injedem Fall den Betrieb in der PROGRAM–Betriebsart.)
---
15 Nicht verwendet
AR 14 00 bis 15 Maximale Zykluszeit (4–stelliger BCD–Wert, sehen Sie den Hinweis 3)Die längste Zykluszeit seit Beginn des Betriebs wird gespeichert. Der Merker wird nicht ge-löscht, wenn der Betrieb abbricht, aber er wird gelöscht, wenn Betrieb fortgesetzt wird.
505
AR 15 00 bis 15 Aktuelle Zykluszeit (4–stelliger BCD–Wert, sehen Sie Hinweis 3)Die jeweils letzte Zykluszeit wird während des Betriebs gespeichert. Die aktuelle Zykluszeitwird am Ende des Betriebs nicht gelöscht.
AR 16 00 bis 15 Nicht verwendet
AR 17
(S h Si
00 bis 07 Minute (00 bis 59, BCD–Wert) 158(Sehen SieHinweis 2) 08 bis 15 Stunde (00 bis 23, BCD–Wert)
AR 18
(S h Si
00 bis 07 Sekunde (00 bis 59, BCD–Wert)
(Sehen SieHinweis 2) 08 bis 15 Minute (00 bis 59, BCD–Wert)
AR 19
(S h Si
00 bis 07 Stunde (00 bis 23, BCD–Wert)
(Sehen SieHinweis 2) 08 bis 15 Tag des Monats (01 bis 31, BCD–Wert)
AR 20
(S h Si
00 bis 07 Monat (01 bis 12, BCD–Wert)
(Sehen SieHinweis 2) 08 bis 15 Jahr (00 bis 99, BCD–Wert)
Anhang CSpeicherbereiche
563
Wort(e) SeiteKommentareBit(s)
AR 21
(Sehen SieHinweis 2)
00 bis 07 Wochentag (00 bis 06, BCD–Wert)00: Sonntag 01: Montag 02: Dienstag 03: Mittwoch04: Donnerstag 05: Freitag 06: Samstag
158
Hinweis 2)08 bis 12 Nicht verwendet
13 30–Sekunden–KompensationsmerkerDieser Merker wird aktiviert, um die nächste Minute auf–/abzurunden. Bei 00 bis 29 Sekundenwerden die Sekunden auf 00 gestellt und der Rest der Zeiteinstellung bleibt unverändert. Bei 30bis 59 Sekunden werden die Sekunden auf 00 gestellt und die Zeit wird um eine Minute inkre-mentiert.
158
14 Uhr stoppen–MerkerAktivieren Sie dieses Bit, um die Uhr anzuhalten. Die Zeit/das Datum kann überschrieben wer-den, während dieser Merker gesetzt ist.
15 Uhrzeit einstellen–MerkerAktivieren Sie, um die Zeit/das Datum zu ändern, AR 2114 und schreiben Sie die/das neueZeit/Datum (stellen Sie sicher, dass AR 2114 gesetzt bleibt); setzten Sie dann diesen Merker,um die neue Zeit–/Datumseinstellung zu aktivieren. Die Uhr läuft wieder an und sowohlAR 2114 als auch AR 2115 werden automatisch zurückgesetzt.
AR 22 00 bis 15 Nicht verwendet
AR 23 00 bis 15 Ausschaltzähler (4–stellige BCD–Zahl)Zählt, wie oft die Versorgungsspannung ausgeschaltet wurde.Geben Sie zur Rücksetzung des Zählers ”0000” über ein Programmiergerät ein.
---
Hinweis 1. Die gleichen Daten können sofort mit PRV(62) gelesen werden.
2. Die Uhrzeit und das Datum können eingestellt werden, während AR 2114 gesetzt ist. Die neue Ein-stellung tritt in Kraft, wenn AR 2115 aktiviert wird. (AR 2114 und AR 2115 werden automatisch zu-rückgesetzt, wenn die neue Einstellung wirksam wird.)Diese Worte enthalten 0000 in CPM2C CPU–Baugruppen, die nicht mit der Uhrfunktion ausgestat-tet sind.
3. Die Einheiten für die maximale und aktuelle Zykluszeit werden durch die Einstellung in Bit 08 bis 15von DM 6618 bestimmt. Eine Einstellung von 00 spezifiziert 0,1 ms–Einheit, 01 spezifiziert 0,1 ms–Einheit, 02 spezifiziert 1 ms–Einheit und 03 spezifiziert 10 ms–Einheit.
Anhang CSpeicherbereiche
564
SRM1–Datenbereich
Datenbereich–StrukturDie folgenden Datenbereiche können in der SRM1 verwendet werden.
Datenbereich Worte Bits Kommentare
E/A–Bereich1
Eingangs–Bereich
IR 000 bis IR 007(8 Worte)
IR 00000 bis IR 00715(128 Bits)
Diese Bits sind den externen E/A–Modulen zuge-ordnet. Der EIN/AUS–Zustand der E/A–Bits ent-spricht dem EIN/AUS–Zustand der Ein–/Aus-gänge.
Ausgangs–Bereich
IR 010 bis IR 017(8 Worte)
IR 01000 bis IR 01715(128 Bits)
gänge.
(Wird der CompoBus/S in der 128 Bit–Betriebsartverwendet, können IR 004 bis IR 007 und IR 014bis IR 017 als Arbeitsmerker verwendet werden.)
Arbeits–bereich
IR 008 bis IR 009IR 018 bis IR 019IR 200 bis IR 239(44 Worte)
IR 00800 bis IR 00915IR 01800 bis IR 01915IR 20000 bis IR 23915(704 Bit)
Arbeitsmerker können innerhalb des Programmsbeliebig verwendet werden. IR 232 bis IR 239werden jedoch als MAKRO–Eingangsbereichbenötigt, wenn MCRO(99) verwendet wird.
SR (Systemmerker–be-reich)
SR 240 bis SR 255(16 Worte)
SR 24000 bis SR 25507(248 Bits)
Diese Bits speichern Merker und Sollwerte/Ist-werte für den SRM1–Betrieb. Sehen Sie SR–Be-reich.
TR (TemporärerMerkerbereich)
--- TR 0 bis TR 7(8 Bits)
In einem komplizierten Kontaktplan werden dieseBits für die Zwischenspeicherung des EIN/AUS–Zustands in Programmverzweigungen intern ver-wendet. Sie werden nur in AWL dargestellt. Diesetemporären Bits können nicht innerhalb des sel-ben Blocks verwendet werden. Bei unterschiedli-chen Blöcken können jedoch einige verwendetwerden. Der EIN/AUS–Zustand dieser Bits kannnicht mit der Überwachungsfunktion eines Pro-grammiergerätes überwacht werden.
HR–Bereich2 HR 00 bis HR 19(20 Worte)
HR 0000 bis HR 1915(320 Bits)
Diese Haftmerker speichern Daten und behaltenihren Zustand (gesetzt/rückgesetzt) auch nachdem Ausschalten der Versorgungsspannung oderbei Betriebsbeginn oder –ende bei. Sie werdenwie Hilsbits verwendet.
AR–Bereich2 AR 00 bis AR 15(16 Worte)
AR 0000 bis AR 1515(256 Bits)
Diese Systemmerker besitzen spezielle Funktio-nen, z.B. als Merker– und Steuerbits. AR 04 bis07 werden als Slave–Bits verwendet. Sehen SieAR–Bereich.
LR1 (Schnittstellenmerker–bereich
LR 00 bis LR 15(16 Worte)
LR 0000 bis LR 1515(256 Bits)
Wird für die 1:1–Datenübertragung mit einer an-deren SRM1, CQM1H oder C200H usw. verwen-det.
Zeitgeber–/Zählerbereich2
TC 000 bis TC 127 (Zeitgeber–/Zähler–Nr.)3 Zeitgeber und Zähler verwenden die TIM–,TIMH(15)–, CNT– and CNTR(12)–Befehle. FürZeitgeber und Zähler werden Nummern aus demselben Bereich verwendet.
Für die Istwerte des Zeitgebers/Zählers müssendie Zeitgeber–/Zähler–Nummern als Worte spezi-fiziert werden. Die Daten des Zählers bleibenauch nach Abschalten der SRM1–Versorgungs-spannung oder bei Betriebsbeginn oder –endegespeichert.
Werden die Zeitgeber/Zähler als Fertig–Merkerbehandelt, müssen die Nummern als Bitdatenspezifiziert werden.
DM (Daten-merker-bereich)
Lesen/Schreiben2
DM 0000 bis DM 1999(2.000 Worte)
--- In diesem Bereich erfolgt der Datenzugriff wort-weise. Die Worte werden auch beim Ausschaltender Versorgungsspannung oder bei Beginn oderAbschalten des Betriebes aufrechterhalten.
Die Lese–/Schreib–Bereiche können beliebig in-nerhalb des Programms gelesen und beschrie-ben werden.
Fehler–Protokoll4
DM 2000 bis DM 2021(22 Worte)
--- Speichert Zeitpunkt und Fehlercode. Sehen SieAbschnitt 7-5 Codierung von Befehlen.
Nur Lesen4 DM 6144 bis DM 6599(456 Worte)
--- Können nicht vom Programm überschrieben wer-den.
SPS–Konfi-guration4
DM 6600 bis DM 6655(56 Worte)
--- Speichert verschiedene Steuerparameter vonSPS–Operationen.
Hinweis 1. IR– und LR–Bits, die keiner bestimmten Funktion zugewiesen sind, können als Arbeitsmerker ver-wendet werden.
Anhang CSpeicherbereiche
565
2. Der Inhalt des HR–, LR–, Zähler– und DM–Schreib–/Lese–Bereichs wird bei einem Stromausfallüber einen Kondensator nullspannungssicher beibehalten. Die Sicherungszeit variiert mit der Um-gebungstemperatur; bei 25_C versorgt der Kondensator den Speicher 20 Tage. In Abschnitt 2-1-2Merkmale des Technischen Handbuches der SRM1 finden Sie dazu eine Graphik mit der Gegen-überstellung von Speicherzeit und Temperatur.
3. Beim Zugriff auf einen Istwert werden TC–Worte als Wortdaten verwendet. Beim Zugriff auf Fertig–Merker als Bitdaten.
4. Die Daten in DM 6144 bis DM 6655 können vom Programm nicht überschrieben aber über ein Pro-grammiergerät geändert werden.
SR–BereichDiese Bits dienen hauptsächlich als Merker bei SRM1–Betrieb oder sie enthalten Ist– und Sollwerte für verschie-dene Funktionen. Die Funktionen des SR–Bereichs werden in der nachstehenden Tabelle erläutert.
Hinweis “Nur Lese”–Worte und –Bits werden beim SPS–Betrieb als Status gelesen aber sie können nicht überden Kontaktplan gesetzt werden. ”Nicht verwendete”–Bits und Worte werden ebenfalls nur gelesenen.
Wort(e) Bit(s) Kommentare Lesen/Spei-chern
Seite
SR 240bisSR 247
00 bis 15 Nicht verwendet
SR 248,SR 249
00 bis 15 Reserviert.
SR 250,SR 251
00 bis 15 Nicht verwendet
SR 252 00 Nicht verwendet (wird vom System verwendet)S 5
01 bis 07 Nicht verwendet
08 Rücksetzmerker für PeripherieschnittstelleDieser Merker wird zur Rücksetzung der Peripherieschnittstelle gesetzt (Nicht gültig,wenn ein Programmiergerät angeschlossen ist.) Nach der Rücksetzung wird der Mer-ker automatisch zurückgesetzt.
Lesen/Spei-chern
251
09 Rücksetzmerker für RS–232C–SchnittstelleWird nach der Rücksetzung automatisch zurückgesetzt.
10 SPS–Konfigurations–RücksetzmerkerDieser Merker wird zur Initialisierung der Konfiguration (DM 6600 bis DM 6655) ge-setzt. Er wird nach beendeter Rücksetzung automatisch deaktiviert. (Hierzu musssich die SPS in der PROGRAM–Betriebsart befinden.)
2
11 Zwangssetzungsstatus–SystemhaftmerkerGESETZT: Der Zustand der zwangsweise gesetzen/rückgesetzten Merker
wird beim Umschalten von der PROGRAM– in die MONITOR–Betriebsart aufrechterhalten.
RÜCKGESETZT: Der Zustand der zwangsweise gesetzten/rückgesetzten Merkerwird beim Umschalten von der PROGRAM– in die MONITOR–Betriebsart aufgehoben.
20
12 E/A–SystemhaftmerkerRÜCKGESETZT: IR– und LR–Merker werden am Anfang und Ende des Betriebs
zurückgesetzt.GESETZT: Der Zustand der IR– und LR–Merker wird am Anfang und Ende
des Betriebs aufrechterhalten.
20
13 Nicht verwendet
14 Fehlerprotokoll löschen–SystemmerkerDieser Merker wird zum Löschen des Fehlerprotokolls gesetzt. Er wird nach demBeenden automatisch zurückgesetzt.
Lesen/Spei-chern
537
15 Nicht verwendet
Anhang CSpeicherbereiche
566
Wort(e) SeiteLesen/Spei-chern
KommentareBit(s)
SR 253 00 bis 07 FAL–FehlercodeBei einem Fehler wird der betreffende Fehlercode (2–stellig) in diesem Bereich ge-speichert. Bei der Ausführung von FAL(06) bzw. FALS(07) wird dieser Bereich zurSpeicherung der FAL–Nummer verwendet. Bei der Ausführung eines FAL 00–Befehlsbzw. beim Löschen des Fehlers über ein Programmiergerät wird dieses Wort auf 00zurückgesetzt.
Nur Le-sen
359
08 Nicht verwendet
09 Merker für Zykluszeit–ÜberschreitungDieser Merker wird bei einer Überschreitung der Zykluszeit gesetzt.
Nur Le-sen
---
10 bis 11 Nicht verwendet
12 RS–232C–Konfiguration ändern–MerkerWird aktiviert, wenn die Einstellungen der RS–232C–Schnittstelle geändert werden.
Nur Le-sen
13 Merker ständig auf EIN gesetzt Nur Le- ---
14 Merker ständig auf AUS gesetzt
u esen ---
15 Erster–Zyklus–Merker Dieser Merker wird zu Beginn des Betriebs für die Dauer eines Zyklus gesetzt.
---
SR 254 00 1–Minute–Taktimpuls (30 Sekunden EIN, 30 Sekunden AUS) ---S 5
01 0,02–Sekunden–Taktimpuls (0,01 Sekunden EIN, 0,01 Sekunden AUS) ---
02 Negativ(N)–Merker ---
03 Nicht verwendet
04 Überlauf–Merker Nur Le- ---
05 Unterlauf–Merker
u esen ---
06 Merker für den Abschluss der FlankenüberwachungDieser Merker wird nach der Flankenüberwachung gesetzt.
154
07 STEP(08)–Ausführungs–MerkerDieser Merker wird nur am Anfang der auf STEP(08) basierenden Verarbeitung für dieDauer eines Zyklus gesetzt.
360
08 bis 15 Nicht verwendet
SR 255 00 0,1–Sekunden–Taktimpuls (0,05 Sekunden EIN, 0,05 Sekunden AUS) Nur Le- ---S 55
01 0,2–Sekunden–Taktimpuls (0,1 Sekunden EIN, 0,1 Sekunden AUS)
u esen ---
02 1,0–Sekunden–Taktimpuls (0,5 Sekunden EIN, 0,5 Sekunden AUS) ---
03 Befehlsausführungs–Fehler(ER)–MerkerDieser Merker wird bei einem Fehler, während der Befehlsausführung, gesetzt.
---
04 Übertrags(CY)–MerkerDieser Merker wird gesetzt, wenn in dem Ergebnis einer Befehlsausführung ein Über-trag auftritt.
---
05 GRÖßER(GR)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GRÖßER ist.
---
06 GLEICH(EQ)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs GLEICH ist oder dasErgebnis einer Befehlsausführung 0 ist.
---
07 KLEINER(LE)–MerkerDieser Merker wird gesetzt, wenn das Ergebnis eines Vergleichs KLEINER ist.
---
08 bis 15 Nicht verwendet
AR–Bereich
Diese Bits dienen hauptsächlich als Merker für den SRM1–Betrieb. Diese Merker behalten auch dann ihren Zu-stand bei, wenn die Versorgungsspannung der SRM1 abgeschaltet wurde oder bei Betriebsbeginn oder –ende.
Wort(e) Bit(s) Kommentare Seite
AR 00,AR 01
00 bis 15 Nicht verwendet
AR 02 00 bis 07 Nicht verwendet0
08 bis 11 Nicht verwendet (wird vom System verwendet)
12 bis 15 Nicht verwendet
AR 03 00 bis 15 Nicht verwendet
AR 04 bisAR 07
00 bis 15 Slave–Zustands–Merker ---
Anhang CSpeicherbereiche
567
Wort(e) SeiteKommentareBit(s)
AR 08 00 bis 03 RS-232C–Fehler–Code (1-stellige Zahl)0: Normale Beendigung1: Paritätsfehler2: Rahmenfehler3: Überlauffehler
---
04 RS-232C–Kommunikationsfehler ---
05 RS–232C–Übertragung freigegeben–MerkerNur gültig bei Verwendung der Host–Link, Ohne Protokoll–Kommunikation.
---
06 RS–232C–Empfang beendet–MerkerNur gültig bei der Ohne Protokoll–Kommunikation.
---
07 RS–232C–EmpfangsüberlaufmerkerNur gültig bei der Ohne Protokoll–Kommunikation.
---
08 bis 11 Programmiergeräte–Fehlercode0: Normale Beendigung1: Paritätsfehler2: Rahmenfehler3: Überlauffehler
252
12 Programmiergeräte–Fehlermerker
13 Programmiergerät–Übertragung freigegeben–MerkerNur gültig bei Host–Link, Ohne Protokoll–Kommunikation.
---
14 Programmiergeräte–Empfang beendet–MerkerNur gültig bei Ohne Protokoll–Kommunikation.
---
15 Programmiergeräte–Empfangsüberlauf–MerkerNur gültig bei Ohne Protokoll–Kommunikation.
---
AR 09 00 bis 15 Wird die Ohne Protokoll–Kommunikationsbetriebsart verwendet:RS–232C–Empfangszähler (4–stelliger BCD–Wert)
---
Wird die 1:n–NT–Link–Kommunikationsbetriebsart verwendet (nur –V2):Kommunikation mit NT–Merker (Bit 00 bis 07 sind Merker für die NTs 0 bis 7.)Registrierte NT–Merker (Bit 08 bis 15 sind Merker für die NTs 0 bis 7.)
---
AR 10 00 bis 15 Peripherieschnittstellen–Empfangszähler (4–stelliger BCD–Wert)Nur gültig für die Ohne Protokoll–Kommunikation.
---
AR 11 00 bis 15 Ausschaltzähler (4–stellige BCD–Zahl)Zählt, wie oft die Versorgungsspannung ausgeschaltet wurde.Geben Sie zur Rücksetzung des Zählers ”0000” über ein Programmiergerät ein.
---
AR 12 00 bis 15 Nicht verwendet
AR 13 00 Merker für Konfigurationsbereichsfehler beim EinschaltenDieser Merker wird bei einem Fehler in DM 6600 bis DM 6614 gesetzt (Teil des Konfigurationsbe-reichs, der beim Einschalten gelesen wird).
535
01 Merker für Konfigurationsbereichsfehler zu Beginn des BetriebsDieser Merker wird bei einem Fehler in DM 6615 bis DM 6644 gesetzt (Teil des Konfigurationsbe-reichs, der zu Beginn des Betriebs gelesen wird).
02 Merker für Konfigurationsbereichsfehler im BetriebDieser Merker wird bei einem Fehler in DM 6645 bis DM 6655 gesetzt (Teil des Konfigurationsbe-reichs, der immer gelesen wird).
03, 04 Nicht verwendet
05 Merker für lange ZykluszeitDieser Merker wird gesetzt, wenn die tatsächliche Zykluszeit die in DM 6619 spezifizierte Zyklus-zeit überschreitet.
---
06 Wird bei vollem Programmspeicher (UM) auf EIN gesetzt. ---
07 Wird auf EIN gesetzt, wenn andere Befehle als in der Programmier–Software verwendet werden. ---
08 Speicherbereich–Spezifikation–FehlermerkerWird auf EIN gesetzt, wenn eine nicht vorhandene Datenbereichs–Adresse im Programm spezifi-ziert wird.
---
09 Flash–Speicher–FehlermerkerWird bei einem Fehler im Flash–Speicher auf EIN gesetzt.
---
10 Fehlermerker des Nur–Lese–DM–BereichsWird auf EIN gesetzt, wenn im Nur–Lese–DM–Bereich (DM 6144 bis DM 6599) ein Prüfsummen-fehler auftritt und dieser Bereich initialisiert wird.
536
11 SPS–Konfigurations–FehlermerkerWird bei einem Prüfsummenfehler im SPS–Konfigurationsbereich auf EIN gesetzt.
12 Merker für ungültiges ProgrammDieser Merker wird bei einem Prüfsummenfehler in dem UM (Programmspeicher)–Bereich oderbei der Ausführung eines falschen Befehls gesetzt.
---
13 Nicht verwendet (Gelöscht, wenn die Versorgungsspannung wieder eingeschaltet wird.)
Anhang CSpeicherbereiche
568
Wort(e) SeiteKommentareBit(s)
AR 13 14 Datenspeicher–FehlermerkerWird aktiviert, wenn die Versorgungspannung wieder eingeschaltet wird, falls die Daten der folgenden Be-reiche nicht gesichert werden konnten.DM–Bereich (schreib–/lesefähig), HR–Bereich, CNT–Bereich, SR 252, Bit 11, 12 (wenn DM 6601 in derSPS–Konfiguration gesetzt wurde, um den Status aufrecht zu erhalten), Fehlerprotokoll, Betriebsart (wennDM 6600 in der SPS–Konfiguration gesetzt wurde, um die vor dem Spannungsausfall verwendete Betriebs-art fortzusetzen).
(Sehen Sie für Einzelheiten bezüglich der Sicherungszeit das SRM1–Bedienerhandbuch.)
Falls keine Daten in den oben aufgeführten Bereiche gespeichert werden konnten:DM (schreib–/lesefähig), Fehlerprotokoll, HR– und CNT–Bereiche sowie SR 252, Bit 11 und 12 werdengelöscht. Die Betriebsart wechselt zu PROGRAM.
15 SRM1–CompoBus/S–Kommunikations–Fehlermerker ---
AR 14 00 bis 15 Maximale Zykluszeit (4–stelliger BCD–Wert)Die längste Zykluszeit seit Beginn des Betriebs wird gespeichert. Sie wird nicht am Ende desBetriebs gelöscht sondern erst bei Beginn.
In Abhängigkeit von der Einstellung der Überwachungszeit (DM 6618) wird eine der folgendenZeiteinheiten verwendet:Vorgabe: 0,1 ms; 10 ms–Einstellung: 0,1 ms; 100 ms–Einstellung: 1 ms;1 s–Einstellung: 10 ms
505
AR 15 00 bis 15 Aktuelle Zykluszeit (4–stelliger BCD–Wert)Die jeweils letzte Zykluszeit wird während des Betriebs gespeichert. Die aktuelle Zykluszeit wirdam Ende des Betriebs nicht gelöscht.
In Abhängigkeit von der Einstellung der Überwachungszeit (DM 6618) wird eine der folgendenZeiteinheiten verwendet:Vorgabe: 0,1 ms; 10 ms–Einstellung: 0,1 ms; 100 ms–Einstellung: 1 ms;1 s–Einstellung: 10 ms
569
Anhang DE/A–Zuweisung
Systembezeichnung Hersteller Prüfer Genehmigt von
SPS–Modell Blatt–Nr.
e s e e ü e Ge e g o
IR_____ Baugruppen–Nr.: Modell: IR_____ Baugruppen–Nr.: Modell:
00 00
01 01
02 02
03 03
04 04
05 05
06 06
07 07
08 08
09 09
10 10
11 11
12 12
13 13
14 14
15 15
IR_____ Baugruppen–Nr.: Modell: IR_____ Baugruppen–Nr.: Modell:
00 00
01 01
02 02
03 03
04 04
05 05
06 06
07 07
08 08
09 09
10 10
11 11
12 12
13 13
14 14
15 15
571
Anhang EProgramm–Codierblatt
Systembezeichnung Hersteller Prüfer Genehmigt von
SPS Diagramm–Nr.
e s e e ü e Ge e g o
Adresse Befehl Funktions–code
Operanden
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 0
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
2 0
2 1
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
3 0
3 1
3 2
3 3
3 4
3 5
3 6
3 7
3 8
Anhang EProgramm–Codierblatt
572
Adresse OperandenFunktions–code
Befehl
3 9
4 0
4 1
4 2
4 3
4 4
4 5
4 6
4 7
4 8
4 9
5 0
5 1
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
6 0
6 1
6 2
6 3
6 4
6 5
6 6
6 7
6 8
6 9
7 0
7 1
7 2
7 3
7 4
7 5
7 6
7 7
7 8
7 9
8 0
8 1
8 2
8 3
Anhang EProgramm–Codierblatt
573
Adresse OperandenFunktions–code
Befehl
8 4
8 5
8 6
8 7
8 8
8 9
9 0
9 1
9 2
9 3
9 4
9 5
9 6
9 7
9 8
9 9
575
Anhang FListe der FAL– Nummern
Systembezeichnung Hersteller Prüfer Genehmigt von
SPS–Modell Diagramm–Nr.
g
FAL–Nr.
FAL–Inhalt Behebende Maßnahmen FAL–Nr.
FAL–Inhalt Behebende Maßnahmen
00 35
01 36
02 37
03 38
04 39
05 40
06 41
07 42
08 43
09 44
10 45
11 46
12 47
13 48
14 49
15 50
16 51
17 52
18 53
19 54
20 55
21 56
22 57
23 58
24 59
25 60
26 61
27 62
28 63
29 64
30 65
31 66
32 67
33 68
34 69
Anhang FListe der FAL– Nummern
576
FAL–Nr.
Behebende MaßnahmenFAL–InhaltFAL–Nr.
Behebende MaßnahmenFAL–Inhalt
70 85
71 86
72 87
73 88
74 89
75 90
76 91
77 92
78 93
79 94
80 95
81 96
82 96
83 97
84 99
577
Anhang GErweiteter ASCII–Code
Die folgenden Funktions dienen zur Ausgabe von Zeichen an die Programmierkonsole oder Daten–Zugriffs-konsole unter Verwendung des MSG(46)–Befehls. Sehen Sie dazu die Seite 477.
Vier äußersten linken BitsV
ier
äuß
erst
en r
echt
en B
its
EP
579
Index
Nummern1:1–PC–Link
CPM1/CPM1A, 212 CPM2A/CPM2C, 243 SRM1, 258
7–Segement–Anzeige, Konvertierung der Daten, 423
AAnalog–Eingangsbaugruppen, Mittelwertfunktion, 174
Analog-Eingangsbaugruppen, Schaltung offen-Erfassungs-funktion, 174
analoge Ausgänge, 163 , 175
Analoge Ausgangsbaugruppen, Ausgabebereich, 172
Analoge E/A–Baugruppen, 142 für CPM1A/CPM2A, 160 , 169
analoge E/A–Funktionen, 142 , 160 , 169
analoge Werteinstellungen, 145
Analogeingänge, 163 , 175
Analogeingangs–Baugruppen, Eingangsbereich, 170
Anweisungsvorrat, INI(61), 127
Anzeige, für Temperaturfühler–Baugruppen, 196
Anzeigen, CompoBus/S–LED–Anzeigen, 203
arithmetische Merker, 154 , 341
ASCII, Konvertierung der Daten, 426 , 428
Ausführungsbedingung, Definition, 312
AusgangsbitSteuerung der EIN/AUS–Zeit, 352 Steuerung des Zustandes, 332
Ausgangsbits, Steuerung des Status, 331
AWL, Konvertierung, 312–330
BBefehle
AusführungszeitenCPM1/CPM1A, 500 CPM2A/CPM2C, 510 SRM1, 525
AWL, Kontaktplan, 348 Befehlssatz–Listen, 345 Erweiterung, 154 rechte Hand–Befehle, Programmierung mehrerer, 325 Unterprogramme, 462
Befehle mit flankengesteuerter Ausführung, 342 Funktions–Codes, 340
Befehlsatz, KOP–Befehle, 314
Befehlssatz, 541 ACC(––), 470 ADB(50), 444 ADD(30), 434 ADDL(54), 439 AND, 314 , 350
kombiniert mit OR, 315 AND LD, 317 , 351
kombinieren mit OR LD, 320 Verwendung in Logik–Blöcken, 319
AND NOT, 314 , 350 ANDW(34), 458 ASC(86), 426 ASFT(17), 386 ASL(25), 381 ASR(26), 381 AVG(––), 453 BCD(24), 417 BCDL(59), 418
BCMP(68), 411 BCNT(67), 479 BIN(23), 416 BINL(58), 418 BSET(71), 390 CLC(41), 434 CMP(20), 409 CMPL(60), 413 CNT, 369 CNTR(12), 370 COLL(81), 393 COM(29), 457 CTBL(63), 371 DEC(39), 461 DIFD(14), 331 , 354–363
Verwendung in Sprüngen, 358 Verwendung von Verriegelungen, 356
DIFU(13), 331 , 354–363 Verwendung in Sprüngen, 358 Verwendung von Verriegelungen, 356
DIST(80), 392 DIV(33), 438 DIVL(57), 443 DMPX(77), 421 DVB(53), 447 END(01), 317 , 355 FAL(06), 359 FALS(07), 359 FCS(––), 479 HEX(––), 428 HMS(––), 431 HTS(65), 430 IL(02), 327 , 356–357 ILC(03), 327 , 356–357 INC(38), 460 INI(61), 374 INT(89), 77 , 481 IORF(97), 478 JME(05), 358 JMP(04), 358 JMP(04) und JME(05), 329 KEEP(11), 353
in Steuerung des Bitzustandes, 332 LD, 314 , 350 LD NOT, 314 , 350 MAX(––), 449 MCRO (99), 151 MCRO(99), 464 MIN(––), 451 MLB(52), 446 MLPX(76), 419 MOV(21), 388 MOVB(82), 395 MOVD(83), 396 MSG(46), 477 MUL(32), 437 MULL(56), 442 MVN(22), 388 NOP(00), 355 NOT, 312 Operanden, 311 OR, 315 , 350
kombiniert mit AND, 315 OR LD, 318 , 351
kombinieren mit AND LD, 320 Verwendung in Logik–Blöcken, 320
OR NOT, 315 , 350 ORW(35), 458 OUT, 316 , 352 OUT NOT, 316 , 352 PID(––), 403 PRV(62), 376
Index
580
PULS(65), 126 PWM(––), 473 RESET, 331 RET(93), 464 ROL(27), 382 ROR(28), 382 RSET, 352–353 RXD (47), 232 RXD(47), 255 , 486 SBB(51), 445 SBN(92), 26 , 71 , 464 SBS(91), 462 SCL(66), 397 SCL2(––), 399 SCL3(––), 401 SDEC(78), 423 SET, 331 , 352–353 SFT(10), 379 SFTR(84), 385 SLD(74), 383 SNXT(09), 360 SPED(64), 126 , 467 SRCH(––), 448 SRD(75), 384 STC(40), 434 STEP(08), 360 STIM(69), 484 STUP(––), 489 SUB(31), 435 SUBL(55), 441 SUM(––), 455 SYNC(––), 475 TCMP(85), 410 Terminologie, 311 TIM, 363 TIMH(15), 364
Verwendung in Sprüngen, 359 TIML(––), 367 TMHH(––), 366
Verwendung in Sprüngen, 359 TXD (48), 232 TXD(48), 255 , 487 WSFT(16), 380 XCHG(73), 391 XFER(70), 389 XNRW(37), 460 XORW(36), 459 ZCP(––), 414 ZCPL(––), 415
Bereichscode, 167 , 179
Bereichsvergleichs–Interrupts, CPM2A/CPM2C, 47
Betrieb, Einfluss der Zykluszeit, 495 , 505 , 520
Binärdaten, vorzeichenbehafteter Binärwert, 153
binäre Daten mit Vorzeichen, 153
Bits, steuern, 351
Blockprüfsumme. See Rahmen, FCS
CCompoBus/S E/A–Link–Baugruppe, 143
CompoBus/S E/A–Link–Module, Anwendung, 202
CompoBus/S–E/A–Link–Module, 202
CompoBus/S–E/A–Master–Funktionen, 143
CompoBus/S–E/A–Slave–Funktionen, 143 , 202
DDaten
Berechnungsstandards, 141 dekrementieren, 461 inkrementieren, 460
Dekrementieren. See Daten
EE/A–Ansprechzeit
CPM1/CPM1A. See ZeitverhaltenCPM2A/CPM2C. See ZeitverhaltenKommunikation in einem 1:1–PC–Link–Verbund
CPM2A/CPM2C, 507 SRM1, 523
Kommunikation in einem 1:1–Verbund, CPM1/CPM1A, 497 SRM1. See Zeitverhalten
E/A–Punkte, Auffrischung, 478
Eingänge, mit Impulsspeicherung, 147
Eingangs–Betriebsart, Wahl, 131
Eingangs–Zeitkonstanten, SPS–Konfigurationseinstellungen,22
Eingangsmodus, CPM2A/CPM2C, 44
Einschalt–Betriebsart, SPS–Konfigurationseinstellungen, 19
Einstellschaltungen, 145
Einstellungenändern, 2 Basisbetrieb
Haltebit–Status, 20 Start–Betriebsart, 19
E/A–Betrieb, 19 Schnittstellen–Service–Zykluszeit, 22 Schnittstellen–Zykluszeit, 21
E/A–Vorgänge, Schnittstellen–Service–Zykluszeit, 21 Kommunikation, 208
Host–LinkCPM1/CPM1A, 210 , 214 SRM1, 248
Vorgabe, 2
Erweiterte Befehle, 346 , 347
Erweiterungsbaugruppen, Einsatz, 159
Erweiterungsbefehl, 544
Erweiterungsbefehle, Funktionscodes, 154
FFAL(06), 534
FAL–Bereich, 359
FALS(07), 534
FehlerAllgemein, 532 andere, 536 anwenderdefinierte Fehler, 534 fatal, 536 Fehlerrate von Impulsausgängen, 141 geringfügiger, 535 Kommunikation, 536 Programmier–, 533 Programmierkonsolen–Betrieb, 532 Programmierung von Meldungen, 477 Rücksetzen, 359 SPS–Konfiguration, 3 Typen, 532
Fehler–Codes, Programmierung, 359
Fehlermeldungen, Programmierung, 477
Fehlerprotokoll, SPS–Konfigurationseinstellung, 24
Fehlerprotokollbereich, 534
Flankenauswertung, Funktion, 154
Flankenüberwachung, 154
Funktion –Codes, 340
FunktionenCPM1–/CPM1A–interne Verarbeitung, Ablaufdiagramm, 494
SRM1–interne Verarbeitung, Ablaufdiagramm, 519
FunktionscodesErweiterte Befehle, 346 , 347
Index
581
Erweiterungsbefehle, 154 , 156
HHaltebit–Status, SPS–Konfigurationseinstellungen, 20
Host–LinkCPM1/CPM1A, 210 , 214 SRM1, 248
Host–Link–Befehle**, 283 FK, 277 IC, 284 KC, 278 KR, 276 KS, 275 MF, 274 MM, 279 MS, 272 QQ, 281 R#, 268 R$, 269 RC, 261 RD, 263 RG, 262 RH, 261 RJ, 263 RL, 261 RP, 280 RR, 260 SC, 273 TS, 279 W#, 270 W$, 271 WC, 266 WD, 267 WG, 266 WH, 265 WJ, 268 WL, 265 WP, 280 WR, 264 XZ, 283
Host–Schnittstellenbefehle, EX, 283
IImpulsausgabe
Fehler/Verzögerungen, 141 festes Taktverhältnis, 95 mit Eingangsfrequenz synchronisiert, 129 , 475 variables Taktverhältnis, 106
ImpulsausgabefunktionenCPM1A, 125 CPM2A/CPM2C, 91
indirekte Adressierung, 341
INI (61), 127
Initialisierungsprozesse, CPM1/CPM1A, 494
Inkrementieren, 460
instruction setNEG(––), 432 PULS(65), 466
INT(89), 77
Interrupt–FunktionenCPM1/CPM1A, 71 CPM2A/CPM2C, 26 SRM1(–V2), 88
Interrupt–Signal, CPM1/CPM1A, 73
Interrupt–Signal (Zählmodus), CPM2A/CPM2C, 61
Interrupt–VerarbeitungBerechnung der Ansprechzeit
CPM1/CPM1A, 499 CPM2A/CPM2C, 509
MaskierungCPM1/CPM1A, 499 CPM2A/CPM2C, 509 SRM1, 524
ZeitverhaltenCPM1/CPM1A, 498 CPM2A/CPM2C, 508 SRM1, 524
InterruptsCPM1/CPM1A
Arten, 71 Ausmaskieren, 78 Eingangsgesteuerte Interrupts, 73 Eingangsgesteuerter Interrupt–Modus, 74 Einstellung der Modi, 74 Intervall–Zeitgeber, 34 , 78
zeitgesteuerter Interrupt–Modus, 79 Maskierung, 77 Schneller Zähler, 40 , 80
Überlauf und Unterlauf, 82 Zählermodus, 76
CPM2A/CPM2C, 27 Arten, 26 Demaskierung, 31 , 32 Eingangsgesteuerte Interrupts, 27 Einstellmodi, 31 Intervall–Zeitgeber, zeitgesteuerter Interrupt–Modus, 36 Maskierung, 31 Reihenfolge der Prioritäten, 27 Wählen des zuverwendenden Interrupts, 46
Demaskieren, 484 Maskierung, maskieren, 32 Schneller Zähler, Programmierung, 51 , 84 SRM1
Arten, 88 Intervall–Zeitgeber, 88
zeitgesteuerter Interrupt–Modus, 89 Steuerung, 481
Interval–Zeitgeber–gesteuerte InterruptsCPM1/CPM1A, 34 , 78 SRM1, 88
Istwert, Zeitgeber und Zähler, 363
IW, CNTR(12), 370
KKommunikation
1:1–NT–LinkCPM2A/CPM2C, 240 SRM1, 256
1:1–PC–LinkCPM1/CPM1A, 212 CPM2A/CPM2C, 243 SRM1, 258
1:n–NT–Link, SRM1, 257 Fehler, 536 Host–Link
CPM1/CPM1A, 210 , 214 SRM1, 248
Modi, 208 NT–Link, (CPM1/CPM1A), 211 Verdrahtung, 209
Kommunikation in einem 1:1–PC–Link–Verbund, E/A–An-sprechzeitCPM2A/CPM2C, 507 SRM1, 523
Kommunikation in einem 1:1–Verbund, E/A–Ansprechzeit,CPM1/CPM1A, 497
Kommunikationsfunktionen, 207
Kommunikationsschalter, EinstellungCPM2A, 233 , 241 , 245 CPM2C, 234 , 242 , 246
Konstanten, Operanden, 341
Index
582
KontaktplanBefehle
Format, 340 kombinieren, AND LD and OR LD, 320 Steuerung des Bitzustandes
Verwendung von KEEP(11), 332 Verwendung von OUT und OUT NOT, 352
Kombination von Logikblöcken, 321 Konvertierung in eine AWL, 312–330 Schreibweise, 340 Steuerung des Bitzustandes
Verwendung von DIFU(13) and DIFD(14), 354–363 Verwendung von DIFU(13) und DIFD(14), 331 Verwendung von KEEP(11), 353–354 Verwendung von OUT und OUT NOT, 316 Verwendung von SET und RESET, 331 Verwendung von SET und RSET, 352–353
Struktur, 311 über GPC, FIT, LSS oder SYSWIN anzeigen, 311 Verwendung von Logik–Blöcken, 317 Verzeigung, 325 Verzweigung
IL(02) and ILC(03), 327 mittels TR–Bits, 326
Kontaktplanbefehle, 350–351
LLogik–Block–Befehle, Konvertierung in einen Mnemonik–
Code, 317–324
Logik–Blöcken. See Kontaktplan
MMakrofunktion, Unterprogramm. See Programmierung
Makrofunktionen, Unterprogramme, Programmierung, 151
MaskierungCPM1/CPM1A–Interrupt–Verarbeitung, 499 CPM2A/CPM2C–Interrupt–Verarbeitung, 509 SRM1–Interrupt–Verarbeitung, 524
MCRO(99), 151
Meldungen, Programmierung, 477
Merkerarithmetische, Programmierbeispiele, 410 , 414 CY
Einstellung, 434 Rücksetzen, 434
Fehler– und arithmetische, 547
Mittelwertfunktion, 174
MSG(46), 534
NNOT, Definition, 312
NT–LinkCPM1/CPM1A, 211 CPM2A/CPM2C, 240 SRM1, 256 , 257
OÖffner/Schließer–Bedingung, Definition, 312
Ohne Protokoll–KommunikationCPM2A/CPM2C, 231 Programmbeispiel, 237 , 256 Sendemerker, 233 SRM1, 251 Übertragungsdaten–Konfiguration, 232 , 255 Übertragungsmerker, 255
Operanden, 340 Anforderungen, 340 mögliche Zuweisungen, 340
Operandenbit, 312
PPC–Link, CPM2A/CPM2C, 243
Peripherieschnittstelle, Servicezeit, 21
Peripherieschnittstellen–Abarbeitungszeit, SPS–Konfiguration-seinstellung, 21
Positionierung, 121
Programm–Schreibschutz, SPS–Konfigurationseinstellungen,20
ProgrammeAusführung, 336 Überprüfung, check levels, 533
ProgrammierungBefehlen, 541 Fehler, 533 für die Temperaturüberwachung, 191 Interrupts, 51 , 84 Schneller Zähler, CPM2A/CPM2C, 51 , 84 Schreiben, 310 spezielle Anforderungen, 154 Sprünge, 329 Vorbereitung der Daten in den Datenbereichen, 390 Vorsichtsmaßnahmen, 335
Programmspeicher, Struktur, 313
Prüfsumme, Berechnung der Rahmenprüfsumme, 479
PULS(65), 126
RRahmen, FCS, 221
Rahmenprüfsumme, Berechnung mit FCS(––), 479
rechte Hand–Befehle, Programmierung. See Befehle
RS–232–Schnittstelle, Servicezeit (CQM1/SRM1), 21
RS–232CKommunikation
Empfang, SRM1, 252 Empfangen, CPM2A/CPM2C, 239 Senden, CPM2A/CPM2C, 238 Übertragung, SRM1, 251
Steuerbits, SRM1, 252
RS-232C–Schnittstellen–Servicezeit, SPS–Konfigurationseins-tellungen, 21
RXD(47), 232 , 255
SSBN(92), 26 , 71
Schaltung offen-Erfassungsfunktion, 174
Schneller Zähler, CPM2A/CPM2C, 39
Schneller Zähler–Interrupts, CPM1/CPM1A, 40 , 80
Schreibschutz des Programms, SPS–Konfigurationseinstellun-gen, 20
serielle Kommunikation, CPM2A/CPM2C, 231
SPED(64), 126
SpeicherbereicheAR–Bereichbits
(CPM2A/CPM2C), 559 SRM1, 566
Merker und SteuerbitsCPM1/CPM1A, 551 CPM2A/CPM2C, 557 SRM1, 565
Struktur(SRM1), 288 CPM1/CPM1A, 286 , 551 CPM2A/CPM2C, 287 , 556 SRM1, 564
Sprünge, 358–359
Sprungnummern, 358
SPS–Konfiguration. See Einstellungen
Index
583
SPS–KonfigurationseinstellungenCPM1/CPM1A, 3 , 8 SRM1 (-V2), 15
SWCNTR(12), 370 Zeitgeber und Zähler, 363
synchronisierte Impulsausgabe, 475
synchronisierte Impulssteuerung, 129 Fehler/Verzögerungen, 141
TTaktverhältnis
Impulsausgaben mit festem Taktverhältnis, 95 variable Taktverhältnis–Impulsausgaben, 106
TC–Nummer, 362
Temperaturfühler–Baugruppen, 142 , 181
Temperaturfühler–Eingangsfunktionen, 142
Tipp–Betrieb, 123 CPM2A/CPM2C, 104
TR–Bits, Verwendung in Verzweigungen, 326
TXD (48), 232 , 255
UÜberprüfungsebenen, Programmüberprüfungen, 533
Uhr, 158
Unterprogramm, Interrupt–Unterprogramme, 26
Unterprogramm–Nummer, 464
VVerriegelungen, 356–357
Verwendung von Selbsthaltemerker, 332
Verschachtelung, Unterprogrammen, 463
vorzeichenbehaftete Binärwert–Daten, 153
ZZähler
Programmierung von erweiterten Zeitgebern, 370 Rücksetzbedingungen, 369 , 371 Umkehrbarer Zähler, 370
Zählmodus–Interrupts, CPM2A/CPM2C, 61
ZeitEinstellung der Zeit, 158
Lesen der Zeit, 158
ZeitgeberBedingungen für das Zurücksetzen
TMHH(––), 366 TML(––), 368
Rücksetzbedingungen, 364
ZeitverhaltenBasisbefehle
CPM1/CPM1A, 500 CPM2A/CPM2C, 510 SRM1, 525
BefehlsausführungCPM1/CPM1A. See instructionCPM2A/CPM2C. See instructionSRM1. See Befehl
CPM1/CPM1A–Zykluszeit, 495 CPM2A/CPM2C–Zykluszeit, 505 E/A–Ansprechzeit
CPM1/CPM1A, 496 CPM2A/CPM2C, 506 SRM1, 522
Interrupt–VerarbeitungCPM2A/CPM2C, 508 CQM1, 498 SRM1, 524
SpezialbefehleCPM1/CPM1A, 500 CPM2A/CPM2C, 510 , 517 SRM1, 525 , 529
SRM1–Zykluszeit, 520
Zielwert–Vergleichstabelle, CPM2A/CPM2C, 51
Zuweiser, Definition, 340
Zwei-Dezimalstellen–Anzeige, 196
Zyklusüberwachungszeit, SPS–Konfigurationseinstellung, 21
ZykluszeitCPM1/CPM1A
Auswirkungen auf Vorgänge, 495 Berechnung, 495 Prozesse, 495
CPM2A/CPM2CAuswirkungen auf Vorgänge, 505 Berechnung, 505 Prozesse, 505
SRM1Auswirkungen auf die Operationen, 520 Berechnung, 520 Prozesse, 520
Zykluszeit (min), SPS–Konfigurationseinstellung, 22