Alle Rechte vorbehalten. Kein Teil dieser Veröffentlichung darf in irgendeiner
Form, wie z. B. Druck, Fotokopie oder einem anderen Verfahren, ohne schriftliche
Genehmigung der Firma OMRON, Langenfeld, reproduziert, vervielfältigt oder
veröffentlicht werden.
Änderungen vorbehalten.
ii
Vorwort
In diesem Bedienerhandbuch der SPS CPM1/CPM1A/CPM2A/SRM1(–V2)
finden Sie detaillierte Informationen über die Programmierung der SPS einschließlich der Speicherstruktur, der Speicherbereiche und der Kontaktplan–
Programmierung. Weitere Informationen über die Hardware und den Einsatz
der Programmierkonsole finden Sie in den Technischen Handbüchern der
jeweiligen Steuerung. Die Programmiersoftware SYSWIN ist im SYSWIN–Bedienerhandbuch dargestellt.
Es werden nur die CPM1/CPM1A/CPM2A/SRM1(–V2)–spezifischen Befehle
und Anweisungen in diesem Bedienerhandbuch vorgestellt. Für alle anderen
OMRON–Steuerungen müssen separate Bedienerhandbücher angefordert
werden.
Die englischsprachige Version dieses Handbuches kann unter der Kat–Nr.
W353–E1–3 bestellt werden.
Um die Arbeit mit diesem Handbuch für Sie besonders effizient zu gestalten,
beachten Sie bitte folgendes:
– Das Gesamt–Inhaltsverzeichnis finden Sie im direkten Anschluß an das
Vorwort.
– Die eingesetzten Symbole und deren Bedeutungen sind nachfolgend dar-
gestellt.
GefahrEin Nichtbeachten hat mit hoher Wahrscheinlichkeit den Tod oder schwere
!
Personenschäden zur Folge.
AchtungEin Nichtbeachten hat möglicherweise den Tod oder schwere
!
Personenschäden zur Folge.
VorsichtEin Nichtbeachten kann zu leichten bis mittelschweren Personenschäden,
!
Sachschäden oder Betriebsstörungen führen.
HinweisGibt besondere Hinweise für den effizienten und sachgerechten Umgang mit
dem Produkt.
1, 2, 3...
1. Unterteilt Handlungsabläufe in einzelne Schritte, beinhaltet Checklisten
usw.
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–Konfiguration mit der Programmierkonsole das technische Handbuch der SPS.
Sehen Sie bitte das Bedienerhandbuch W 501 für die SYSWIN–Programmiersoftware für SPS–Systeme der C–Serie. Sehen
Sie das CX-Programmer–Handbuch(W 02–CXPM1) für die CX-Programmer–Programmiersoftware für alle lieferbaren
SPS–Systeme.
Lesen Sie den Abschnitt 1-1 SPS–Konfiguration als Übersicht über die für die CPM1/CPM1A, CPM2A/CPM2C und SRM1
(–V2) verfügbaren Betriebsparameter, wenn Sie nicht mit OMRON SPS–Systemen oder der Kontaktplan–Programmierung
vertraut sind. Des Weiteren würden wir Ihnen empfehlen, die folgenden Kapitel zu lesen: Speicherbereiche, Kontaktplan–Programmierung und Befehle in Befehlssatz.
Bei der Konfiguration werden verschiedene Parameter festgelegt, die den SPSBetrieb steuern. Um die SPS–Systeme bei der Verwendung von Interrupt-Verarbeitungs- und Kommunikationsfunktionen optimal zu nutzen, können die Parameter an die anwendungsspezifischen Betriebsbedingungen angepaßt werden.
Vor dem Versand wurde die SPS–Systeme werksseitig auf die Vorgabewerte für
allgemeine Betriebsbedingungen eingestellt; die Systeme können daher ohne
Änderung der Einstellungen verwendet werden. Die Vorgabewerte müssen jedoch vor dem Betrieb überprüft werden.
StandardwerteDer Standardwert für die SPS–Konfiguration beträgt 0000 für alle W orte (bis auf
den Batteriespannung niedrig–Fehler, dessen Erkennung in DM 6655 Bit 12 bis
15 für CPM2A CPU–Baugruppen aktiviert ist). Die Standardwerte können jederzeit zurückgesetzt werden, indem SR 25210 in der PROGRAM–Betriebsart eingeschaltet wird.
!
VorsichtWird der Datenwortbereich (DM) über ein Programmiergerät gelöscht, werden
die Konfigurationseinstellungen ebenfalls auf Null zurückgesetzt.
1-1-1Änderung der SPS–Konfiguration
Änderungen über ein
Programmiergerät
Die Änderungen der SPS–Konfigurationseinstellungen sind nur zu bestimmtem
Zeitpunkten wirksam (sehen Sie die nachfolgende Beschreibung).
• 6600 DM bis 6614 DM: Nur beim Einschalten der SPS–Spannungsversorgung.
• 6615 DM bis 6644 DM: Nur zu Beginn der Programmausführung wirksam.
• 6645 DM bis 6655 DM: Sofort nach der Übertragung in den SPS–Speicher
wirksam.
Die Konfigurationsänderungen sind nur zu den angegebenen Zeitpunkten wirksam. Die SPS und die Programmausführung muss deshalb neu gestartet werden, damit die Änderungen in DM 6600 bis DM 6614 (SPS) und in DM 6615 bis
DM 6644 (Programm) wirksam werden.
Werden die Bits 00 bis 03 von DM 6602 zum Schutz des Programmspeichers
gesetzt, kann der Programmschutz nicht im SPS–Konfigurationsfenster der
Programmier–Software geändert werden. Ändern Sie DM 6602 direkt in der Datenansicht mit Hex–Werten.
Die SPS–Konfiguration kann vom Anwenderprogramm zwar gelesen, aber
nicht überschrieben werden. Dies kann nur mit einem Programmiergerät erfolgen.
Obwohl die SPS–Konfiguration in den Datenwortbereichen DM 6600 bis
DM 6655 gespeichert wird, können Einstellungen nur über ein Programmiergerät (z.B. über SYSWIN, CX–Programmer oder über eine Programmierkonsole)
vorgenommen und geändert werden. DM 6600 bis DM 6644 können nur in der
PROGRAM-Be–triebsart und DM 6645 bis DM 6655 entweder in der PROGRAM- oder in der MONITOR-Betriebsart eingestellt bzw. geändert werden.
Die Zykluszeit ist verhältnismäßig lang, wenn die SPS–Konfiguration in der MONITOR–Betriebsart geändert wird.
Die folgenden Einstellungen können in der PROGRAM–Betriebsart über
SYSWIN oder den CX–Programmer unter Anwendung von Menüoperationen
erfolgen. Alle anderen Einstellungen müssen per Hexadezimal–Zahlen vorgenommen werden.
• Start–Betriebsart (DM 6600)
• E/A–Haftmerkerstatus und Zwangsetzungs–Haftmerkerstatus (DM 6601)
• Zyklusüberwachungszeit (DM 6618)
• Zykluszeit (DM 6619)
2
1-1AbschnittSPS–Konfiguration
• RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649)
Hinweis Die RS–232C–Schnittstelleneinstellungen (DM 6645 bis DM 6649) werden in
der CPM1/CPM1A nicht verwendet, da diese nicht mit einer RS–232C–Schnittstelle ausgerüstet ist.
Fehler in der SPS–
KonfigurationWird 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 falschen Einstellung verwendet.
1-1-2CPM1–/CPM1A–SPS–Konfigurationseinstellungen
Die SPS–Konfiguration ist in vier Kategorien eingeteilt: 1. Einstellungen in Bezug auf Basis–SPS Betrieb– und E/A–Vorgänge, 2. Einstellungen bezüglich der
Zykluszeit, 3. Interrupt–Einstellungen und 4. Kommunikationseinstellungen. In
diesem Abschnitt werden die Einstellungen, entsprechend dieser Klassifikation,
erläutert.
Die folgende Tabelle zeigt die Einstellungen für die CPM1/CPM1A–SPS in numerischer Reihenfolge. Weitere Informationen finden Sie unter den angegebenen Seiten.
Wort(e)Bit(s)FunktionSeite
Einschaltverarbeitung (DM 6600 bis DM 6614)
Die folgenden Einstellungen sind erst nach der Übertragung in die SPS und nach dem erneuten Einschalten der SPS
wirksam.
DM 6600
DM 6601
DM 6602
DM 660300 bis 15Nicht verwendet
DM 6604
DM 6605 bis
DM 6614
Zykluszeit–Einstellungen (DM 6615 bis DM 6619)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITORBetriebs wirksam.
DM 6615,
DM 6616
00 bis 07Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
00: PROGRAM
01: MONITOR
02: RUN
08 bis 15Spezifikation der Start–Betriebsart
00: Programmierkonsolenschalter
01: Fortsetzen der vor dem Ausschalten verwendeten Betriebsart (sehen Sie den
Hinweis 1)
02: Einstellung in 00 bis 07
00 bis 07Nicht verwendet.
08 bis 1 1E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen
1: Beibehalten (sehen Sie den Hinweis 3)
12 bis 15Zwangssetzungsstatus–Systemmerker(SR 25211)–Status beim Einschalten
0: Rücksetzen
1: Beibehalten (sehen Sie den Hinweis 3)
00 bis 03Programmspeicher–Schreibschutz
0: Programmspeicher ohne Schreibschutz
1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07Programmierkonsolen–Display–Sprache
0: Englisch
1: Japanisch
08 bis 15Nicht verwendet
00 bis 0700: 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 15Nicht verwendet
00 bis 15Nicht verwendet
00 bis 15Nicht verwendet.
19
20
20
3
Wort(e)SeiteFunktionBit(s)
DM 6617
DM 6618
DM 661900 bis 15Zykluszeit
Interrupt–Verarbeitung (DM 6620 bis DM 6639)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITORBetriebs wirksam.
DM 6620
DM 6621
DM 6622
DM 6623
DM 6624
DM 6625
DM 6626 bis
DM 6627
DM 6628
DM 6629 bis
DM 6641
Einstellungen des Schnellen Zählers (DM 6640 bis DM 6644)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITORBetriebs wirksam.
DM 6640 bis
DM 6641
00 bis 07Servicezeit 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 verwendet wird
08 bis 15Aktivierung der Serviceeinstellung für die Peripherieschnittstelle
00: 5% der Zykluszeit
01: Verwendung der in 00 bis 07 eingestellten Zeit
00 bis 07Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden)
00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
08 bis 15Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 s
max.)
00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert)
01: Einheit: 10 ms
02: Einheit: 100 ms
03: Einheit: 1 s
0000: Variable (kein Minimum)
0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 03Eingangs–Zeitkonstante für IR 00000 bis IR 00002
ms
04 bis 07Eingangs–Zeitkonstante für IR 00003 und IR 00004 (Werte wie für Bits 00 bis 03)
08 bis 1 1Eingangs–Zeitkonstante für IR 00005 und IR 00006 (Werte wie für Bits 00 bis 03)
12 bis 15Eingangs–Zeitkonstante für IR 00007 bis IR 00011 (Werte wie für Bits 00 bis 03)
00 bis 07Eingangs–Zeitkonstante für IR 001
08: 128 ms
08 bis 15Eingangs–Zeitkonstante für IR 002 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 003 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 004 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 005 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 006 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 007 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 008 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001)
08 bis 15Nicht verwendet
00 bis 15Nicht verwendet
00 bis 03Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit)
04 bis 07Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit)
08 bis 1 1Interrupt–Aktivierung für IR 00005 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit)
12 bis 15Interrupt–Aktivierung für IR 00006 (0: Standard–Eingang; 1: Interupt–Eingang; 2:
schnelle Ansprechzeit)
00 bis 15Nicht verwendet
00 bis 15Nicht verwendet.
21
21
22
22
73
1-1AbschnittSPS–Konfiguration
4
Wort(e)SeiteFunktionBit(s)
DM 6642
DM 6643,
DM 6644
Einstellungen der Peripherieschnittstelle
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645 bis
DM 6649
DM 6650
DM 6651
DM 665200 bis 15Übertragungsverzögerung (Host–Link) (sehen Sie den Hinweis 4)
DM 6653
DM 665400 bis 15Nicht verwendet
00 bis 03Schnelle Zähler–Betriebsart
0: Aufwärts–/Abwärts–Zählermodus
4: Inkremental–Zähler–Betriebsart
04 bis 07Schneller Zähler–Rücksetzbetriebsart
0: Z–Phase und Software–Rücksetzung
1: Nur Software–Rücksetzung
08 bis 15Aktivierung des Schnellen Zählers
00: Schnellen Zähler nicht verwenden
01: Schnellen Zähler mit Einstellungen in 00 bis 07 verwenden
00 bis 15Nicht verwendet.
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
0000 bis 9999: In ms
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
00 bis 07Teilnehmernummer (Host–Link)
00 bis 31 (BCD)
(Andere Einstellungen verursachen einen geringfügigen Fehler und AR 1302 wird
auf EIN gesetzt)
08 bis 15Nicht verwendet
1-1AbschnittSPS–Konfiguration
80
208
5
Wort(e)SeiteFunktionBit(s)
Fehlerprotokoll–Einstellungen (6655 DM)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6655
00 bis 03Ausführung
0: Verschiebung nach der Speicherung von 7 Aufzeichnungen
1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung)
2 bis F: Kein Speichern der Aufzeichnungen
04 bis 07Nicht verwendet.
08 bis 1 1Aktivierung der Zykluszeitüberwachung
0: Auswertung langer Zyklen als geringfügige Fehler
1: Lange Zyklen werden nicht erkannt
12 bis 15Nicht verwendet
Hinweis 1. Wird die Start–Betriebsart eingestellt, um den zu letzt vor dem Ausschalten
verwendeten Betrieb fortzusetzen, erfolgt die Nullspannungssicherung
über den integrierten Kondensator. Die Daten können verlorengehen,
wenn die Versorgungsspannung für eine die Sicherungszeit des Kondensators übersteigende Zeit ausgeschaltet bleibt. (Sehen Sie das
CPM1–Programmierhandbuch
cherzeit.)
2. Stellen Sie keinen Wert zwischen “05” bis “07” ein. Wird dieser Wert eingestellt, arbeitet die CPM1/CPM1A nicht richtig und der SPS–Konfigurations–
Fehlermerker (AR 1302) wird nicht aktiviert.
3. Beibehaltung des E/A–Speicher–Haltemerker(SR 25212)–Status
Wird der “E/A–Speicher–Haltemerker–Status beim Einschalten (”DM 6601,
Bit 08 bis 11) auf ”Beibehalten” – bei aktiviertem E/A–Speicher–Haltemerker (SR 25212) – gesetzt, kann der Betrieb mit dem E/A–Speicherhaltestatus (E/A, IR, LR) fortgesetzt werden, der anlag, bevor die Versorgungsspannung ausgeschaltet wurde. (Der Eingangsbereich wird jedoch beim Einschalten aufgefrischt, d. h. er wird von dem neuesten aktualisierten Eingangsstatus überschrieben.)
Beibehaltung des Zwangssetzungs–Haftmerkerstatus (SR 25211)
Wird der “Zwangssetzungs–Haftmerker–Status beim Einschalten (”DM
6601, Bit 12 bis 15) auf ”Beibehalten” – bei aktiviertem Zwangssetzungs–
Haftmerker (SR 25211) – gesetzt, wird der Zwangssetzungs–/Rücksetzungsbetrieb fortgesetzt, der anlag, bevor die Versorgungsspannung ausgeschaltet wurde. (Beim Einschalten in der RUN–Betriebsart wird jedoch
der Zwangssetzungs–/Rücksetzungsstatus gelöscht.)
Auch wenn der “E/A–Speicher–Haltemerker–Status beim Einschalten”
oder der “Zwangssetzungsstatus–Haftmerker–Status beim Einschalten”
auf “Beibehalten” eingestellt wird, kann der E/A–Speicher–Haltemerker(SR 25212)– oder Zwangssetzungsstatus–Haftmerker(SR 25211)–Status gelöscht werden, falls die Versorgungsspannung für eine die Sicherungszeit des integrierten Kondensators übersteigende Zeit ausgeschaltet
bleibt. (Sehen Sie das
CPM1A
eine genauere Beschreibung der Sicherungszeit.) Zu diesem Zeitpunkt
wird auch der E/A–Speicher gelöscht; konfigurieren Sie das System deshalb so, dass das Löschen des E/A–Speichers keine Probleme verursacht.
4. Die Übertragungsverzögerung ist die Verzögerung zwischen der vorhergehenden Übertragung und der folgenden Übertragung.
1-1AbschnittSPS–Konfiguration
24
CPM1A
für eine genauere Beschreibung der Spei-
– oder
CPM1–Programmierhandbuch
ode
für
r
Host–Computer
SPS
Befehl
Antwort
Übertragungs–
Verzögerungszeit
Befehl
Antwort
6
1-1AbschnittSPS–Konfiguration
5. Wird ein außerhalb des Bereiches liegender Wert eingestellt, so ergeben
sich die folgenden Kommunikationsbedingungen. Setzen Sie in diesem Fall
den Wert zurück, damit er innerhalb des zulässigen Bereichs liegt.
2 Stopbits, 9,600 Baud
Übertrag.verzögerungszeit Keine
Teilnehmernummer: 00
7
1-1-3CPM2A–/CPM2C–SPS–Konfigurationseinstellungen
Die SPS–Konfiguration ist in vier Kategorien eingeteilt: 1) Einstellungen für
SPS–Basisbetrieb und E/A–Verarbeitungen, 2) Einstellungen für Impulsausgabefunktionen, 3) Interrupt–Einstellungen und 4) Kommunikationseinstellungen.
In diesem Abschnitt werden die Einstellungen, entsprechend dieser Klassifikation, erläutert.
Die folgende Tabelle zeigt die Einstellungen der CPM2A in numerischer Reihenfolge. Weitere Informationen finden Sie unter den angegebenen Seiten.
Wort(e)Bit(s)FunktionSeite
Einschaltverarbeitung (DM 6600 bis DM 6614)
Die folgenden Einstellungen sind erst nach der Übertragung in die SPS und nach dem erneuten Einschalten der SPS
wirksam.
DM 6600
DM 6601
DM 6602
DM 660300 bis 15Nicht verwendet
DM 6604
DM6605 bis
DM 6614
00 bis 07Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
00: PROGRAMM
01: MONITOR
02: RUN
08 bis 15Spezifikation der Start–Betriebsart
00: Entsprechend dem Kommunikationsschnittstellen–DIP–Schalter und
Peripherieschnittstellen–Anschluss
(sehen Sie die Tabelle unten auf dieser Seite)
01: Fortsetzung der vor dem Ausschalten verwendeten Betriebsart.
02: Einstellung in 00 bis 07
00 bis 07Nicht verwendet.
08 bis 1 1E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
12 bis 15Zustand des Zwangssetzungsstatus–Haftmerkers (SR 25211) beim Einschalten
0: Rücksetzen auf 0; 1: vorhergehenden Status beibehalten
00 bis 03Programmspeicher–Schreibschutz
0: Programmspeicher ohne Schreibschutz
1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07Programmierkonsolen–Display–Sprache
0: Englisch
1: Japanisch
08 bis 1 1Codezuweisungen für erweiterte Befehle
0: Standardeinstellungen
1: Anwenderzuweisungen
12 bis 15Nicht verwendet
00 bis 0700: Kein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
nullspannungssicher gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn Daten nicht über den integrierten Kondensator
nullspannungssicher gespeichert werden konnten
08 bis 15Nicht verwendet
00 bis 15Nicht verwendet
19
20
20
156
1-1AbschnittSPS–Konfiguration
Hinweis Die SPS–Betriebsart nach dem Einschalten entspricht der in der folgenden Ta-
belle gezeigten, falls Bits 08 bis 15 von 6600 DM auf 00 gesetzt werden.
Peripherieschnitt–
stelle verbunden
mit
Frei
Programmier–
konsole
Anderes
Programmiergerät
Kommunikationsschnittstellen–DIP–Schalter
Schalter 2 AUSSchalter 2 EIN
Programm
Betriebsart mit dem
Betriebsartenschalter der
Programmierkonsole
eingestellt
PROGRAM (die CPM2C wird
nicht mit einem
Programmiergerät
kommunizieren können.)
RUN
PROGRAM (die CPM2C wird
nicht mit der
Programmierkonsole
kommunizieren können.)
PROGRAM
8
1-1AbschnittSPS–Konfiguration
Wort(e)Bit(s)FunktionSeite
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 661500 bis 15Nicht verwendet
DM 6616
DM 6617
DM 6618
DM 661900 bis 15Kleinste Zykluszeit
Interrupt–Verarbeitung (DM 6620 bis DM 6639)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR–
Betriebs wirksam.
DM 6620
DM 6621
DM 6622
DM 6623
DM 6624
DM 6625
DM 6626 bis
DM 6627
00 bis 07Servicezeit der RS–232C–Schnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 ge-
setzt sind)
00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der RS–232C–
Schnittstelle benötigt wird
08 bis 15Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung
00: 5% der Zykluszeit
01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
00 bis 07Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 gesetzt
sind)
00 bis 99 (BCD): Prozentsatz der Zykluszeit, die zum Service der Peripherieschnittstelle benötigt wird
08 bis 15Aktivierung der Serviceeinstellung für die Peripherieschnittstelle
00: 5% der Zykluszeit
01: Verwendung der über die Bits 00 bis 07 eingestellten Zeit
00 bis 07Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden).
00 bis 99 (BCD): Einstellung (sehen Sie Bits 08 bis 15, unten)
Ein schwerwiegender Fehler wird generiert und der SPS–Betrieb abgebrochen,
wenn die Zykluszeit die hier eingestellte Zyklusüberwachungszeit–Einstellung überschreitet.
08 bis 15Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 × Einheiten;
max. 99 s)
00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert)
01: Einstelleinheit: 10 ms
02: Einstelleinheit: 100 ms
03: Einstelleinheit: 1 s
0000: Variable (keine Mindestzeit)
0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 03Eingangs–Zeitkonstante für IR 00000 bis IR 00002
04 bis 07Eingangs–Zeitkonstante für IR 00003 und IR 00004 (gleiche Einstellung wie für Bits
00 bis 03)
08 bis 1 1Eingangs–Zeitkonstante für IR 00005 und IR 00006 (gleiche Einstellung wie für Bits
00 bis 03)
12 bis 15Eingangs–Zeitkonstante für IR 00007 und IR 00011 (gleiche Einstellung wie für Bits
00 bis 03)
00 bis 07Eingangszeit–Konstante für IR 001
00: 10 ms01: 1 ms02: 2 ms03: 3 ms04: 5 ms
05: 10 ms06: 20 ms07: 40 ms08: 80 ms
08 bis 15Eingangs–Zeitkonstante für IR 002 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 003 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 004 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 005 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 006 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 007 (gleiche Einstellung wie für IR 001)
08 bis 15Eingangs–Zeitkonstante für IR 008 (gleiche Einstellung wie für IR 001)
00 bis 07Eingangs–Zeitkonstante für IR 009 (gleiche Einstellung wie für IR 001)
08 bis 15Nicht verwendet
00 bis 15Nicht verwendet
21
21
21
22
22
9
1-1AbschnittSPS–Konfiguration
Wort(e)SeiteFunktionBit(s)
DM 6628
DM 6629
DM6630 bis
DM6641
Einstellungen des Schnellen Zählers (DM 6640 bis DM 6644)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR–
Betriebs wirksam.
DM 6640 bis
DM 6641
DM 6642
DM 6643,
DM 6644
00 bis 03Interrupt–Aktivierung für IR 00003 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)
04 bis 07Interrupt–Aktivierung für IR 00004 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)
08 bis 1 1Interrupt–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 15Interrupt–Aktivierung für IR 00006 (0: Standard–Eingang; 1: Interrupt–Eingang; 2:
schnelle Ansprechzeit)
(Dieser Eingang ist in CPM2C CPU–Baugruppen mit 10 E/A nicht vorhanden)
00 bis 03Istwert–Koordinatensystem für Impulsausgabe 0
0: Relative Koordinaten; 1: Absolute Koordinaten
04 bis 07Istwert–Koordinatensystem für Impulsausgabe 1
0: Relative Koordinaten; 1: Absolute Koordinaten
08 bis 15Nicht verwendet
00 bis 15Nicht verwendet
00 bis 15Nicht verwendet
00 bis 03Schneller Zähler-Betrieb
0: Differentialphasen–Betriebsart (5 kHz)
1: Impuls– und Richtungseingangs–Betriebsart (20 kHz)
2: Auf–/Abwärts–Eingangs–Betriebsart (20 kHz)
4: Inkremental–Betriebsart (20 kHz)
04 bis 07Schneller Zähler–Rücksetzbetriebsart
0: Z–Phase und Software–Rücksetzung
1: Nur Software–Rücksetzung
08 bis 15Schneller Zähler/synchronisierte Impulssteuerung für IR 00000 bis IR 00002
00: Keine der beiden Funktionen verwenden
01: Als Schneller Zähler verwenden
02: Verwendung für eine synchronisierte Impulssteuerung (10 bis 500 Hz).
03: Verwendung für eine synchronisierte Impulssteuerung (20 Hz bis 1 kHz)
04: Verwendung für eine synchronisierte Impulssteuerung (300 Hz bis 20 kHz)
00 bis 15Nicht verwendet.
27
95
42, 50
10
1-1AbschnittSPS–Konfiguration
Wort(e)SeiteFunktionBit(s)
RS–232C–Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
Ist der Kommunikationsschalter der CPM2A CPU–Baugruppe eingeschaltet, wird die Kommunikation über die
RS–232C–Schnittstelle der CPM2A durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM
6645 bis DM 6649, bestimmt.
Ist Schalter 1 des DIP–Schalters der CPM2C CPU–Baugruppe eingeschaltet, wird die Kommunikation über die
RS–232C–Schnittstelle der CPM2C durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM
6645 bis DM 6649, bestimmt.
DM 6645
DM 6646
DM 664700 bis 15Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis
(Alle anderen Einstellungen spezifizieren Standardeinstellungen (1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits, 9.600 b/sek.), verursachen einen geringfügigen
Fehler und aktivieren AR 1302.)
99.990 ms. ein)
(Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursachen
einen geringfügigen Fehler und aktivieren AR 1302.)
208
208
208
11
Wort(e)SeiteFunktionBit(s)
DM 6648
DM 6649
00 bis 07Teilnehmernummer (Host–Link)
08 bis 1 1Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
12 bis 15Endcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
00 bis 07Startcode 00 bis FF
08 bis 15Bits 12 bis 15 des Datenwortes DM 6648 auf 0 gesetzt:
1-1AbschnittSPS–Konfiguration
208
00 bis 31 (BCD)
(Alle anderen Einstellungen spezifizieren eine Teilnehmernummer von 00, verursa-
chen einen geringfügigen Fehler und aktivieren AR1302)
0: Deaktiviert den Startcode
1: Aktiviert den Startcode in 6649 DM
(Alle anderen Einstellungen deaktivieren den Startcode, verursachen einen geringfügigen Fehler und aktivieren AR 1302)
0: Deaktiviert den Endcode
1: Aktiviert den Endcode in 6649 DM
2: Setzt den Endcode auf CR, LF
(Alle anderen Einstellungen deaktivieren den Endcode, verursachen einen geringfügigen Fehler und aktivieren AR 1302)
208
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 1 1 von DM 6648 auf 1 eingestellt werden.)
spezifiziert die Anzahl der zu empfangenden Bytes (00: 256 Bytes; 01 bis FF: 1 bis
255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6648 auf 1 gesetzt:
Spezifiziert den Ende–Code (00 bis FF)
12
1-1AbschnittSPS–Konfiguration
Wort(e)SeiteFunktionBit(s)
Peripherieschnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
Ist der Kommunikationsschalter der CPM2A CPU–Baugruppe eingeschaltet, wird die Kommunikation über die Periphe-
rieschnittstelle der CPM2A durch die Vorgabeeinstellungen (alle 0), ohne Rücksicht auf die Einstellungen in DM 6650 bis
DM 6654, bestimmt.
Die Kommunikationsschaltereinstellung der CPM2A besitzt keinen Einfluss auf die Kommunikation mit einer an die Peripherieschnittstelle angeschlossenen Programmierkonsole. Die CPM2A CPU–Baugruppe erkennt die Programmierkonsole und baut automatisch die Kommunikation auf.
Schalter 1 des DIP–Schalters der CPM2C CPU–Baugruppe muss aus– und Schalter 2 eingeschaltet sein, damit die
Kommunikation über die Peripherieschnittstelle der CPM2C durch die Einstellungen in DM 6650 DM bis DM 6654 bestimmt werden kann.
Ist Schalter 2 ausgeschaltet, wird die Kommunikation über die Peripherieschnittstelle der CPM2C vom Programmierkonsolen–Protokoll bestimmt. Sind Schalter 1 und 2 des DIP–Schalters der CPM2C CPU–Baugruppe eingeschaltet, wird die
Kommunikation von den Standard–Host–Link–Einstellungen bestimmt (1 Startbit, 7 Datenbits; gerade Parität, 2 Stopbits,
(Alle anderen Einstellungen spezifizieren Standardeinstellungen (1 Startbit, 7 Datenbits, gerade Parität, 2 Stopbits, 9.600 b/sek.), verursachen einen geringfügigen
Fehler und aktivieren AR 1302.)
208
13
Wort(e)SeiteFunktionBit(s)
DM 665200 bis 15Übertragungsverzögerung (0000 bis 9999 BCD stellt eine Verzögerung von 0 bis
99.990 ms. ein)
(Alle anderen Einstellungen spezifizieren eine Verzögerung von 0 ms, verursachen
einen geringfügigen Fehler und aktivieren AR 1302)
DM 6653
DM 6654
Fehlerprotokoll–Einstellungen (DM 6655)
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6655
00 bis 07Teilnehmernummer (Host–Link)
00 bis 31 (BCD)
(Alle anderen Einstellungen spezifizieren eine Teilnehmernummer von 00, verursa-
chen einen geringfügigen Fehler und aktivieren AR1302)
08 bis 1 1Startcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
0: Deaktiviert den Startcode
1: Aktiviert den Startcode in DM 6654
(Alle anderen Einstellungen deaktivieren den Startcode, verursachen einen geringfügigen Fehler und aktivieren AR 1302)
12 bis 15Endcode–Auswahl für eine (RS–232C–)Kommunikation ohne Protokoll
0: Deaktiviert den Endcode
1: Aktiviert den Endcode in DM 6654
2: Setzt den Endcode auf CR, LF.
(Alle anderen Einstellungen deaktivieren den Endcode, verursachen einen geringfügigen Fehler und aktivieren AR 1302)
00 bis 07Startcode 00 bis FF
(Diese Einstellung ist nur gültig, wenn die Bits 8 bis 1 1 von DM 6653 auf 1 eingestellt werden)
08 bis 15Bits 12 bis 15 des Datenwortes DM 6653 auf 0 gesetzt:
spezifiziert die Anzahl der zu empfangenden Bytes. (00: 256 Bytes; 01 bis FF: 1 bis
255 Bytes)
Bits 12 bis 15 des Datenwortes DM 6653 auf 1 gesetzt:
Spezifiziert den Ende–Code (00 bis FF)
00 bis 03Ausführung
0: Verschiebung nach der Speicherung von 7 Aufzeichnungen
1: Speichern der ersten 7 Aufzeichnungen (keine Verschiebung)
2 bis F: Kein Speichern der Aufzeichnungen
04 bis 07Nicht verwendet
08 bis 1 1Aktivierung der Zyklusüberwachungszeit
0: Generiert einen geringfügigen Fehler für eine zu lange Zykluszeit
1: Generiert keinen geringfügigen Fehler
12 bis 15Aktivierung der Fehlergenerierung für eine zu niedrige Batteriespannung
0: Generiert einen geringfügigen Fehler
1: Generiert keinen geringfügigen Fehler
Die Batteriespannung niedrig–Fehlererfassung ist normalerweise in CPU–Baugruppen 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 Batteriespannung niedrig–Fehler wird generiert.
Bits 12 bis 15 sollten immer auf 0 gesetzt werden, wenn die optionale CPM2C–
BAT01 installiert ist
1-1AbschnittSPS–Konfiguration
208
208
24
14
1-1AbschnittSPS–Konfiguration
1-1-4SRM1(–V2) SPS–Konfigurationseinstellungen
Die SPS–Konfiguration wird in drei Kategorien eingeteilt: 1) Einstellungen in bezug auf SPS–Basisbetrieb und E/A–Verarbeitungen, 2) Einstellungen bezüglich
der Zykluszeit und 3) Kommunikations–Einstellungen. In diesem Abschnitt werden die Einstellungen, entsprechend dieser Klassifikation, erläutert.
Die folgende Tabelle zeigt die Einstellungen für die SPS–Systeme der
SRM1(-V2)–Serie in numerischer Reihenfolge. Weitere Informationen finden
Sie unter den angegebenen Seiten.
Wort(e)Bit(s)FunktionSeite
Einschaltverarbeitung (DM 6600 bis DM 6614)
Die folgenden Einstellungen sind erst nach der Übertragung in die SPS und nach dem erneuten Einschalten der SPS
wirksam.
DM 6600
DM 6601
DM 6602
DM 6603
DM 6604
DM6605 bis
DM 6614
Zykluszeit–Einstellungen (DM 6615 bis DM 6619)
Die folgenden Einstellungen sind nach der Übertragung in die SPS und dem erneuten Start des RUN– oder MONITOR–
Betriebs wirksam.
DM 661500 bis 15Nicht verwendet
DM 6616
00 bis 07Start–Betriebsart (wirksam, wenn Bits 08 bis 15 auf 02 gesetzt werden)
00: PROGRAMM
01: MONITOR
02: RUN
08 bis 15Spezifikation der Start–Betriebsart
00: Programmierkonsolenschalter
01: Fortsetzung der vorherigen Betriebsart
02: Einstellung in 00 bis 07
00 bis 07Nicht verwendet
08 bis 1 1E/A–Speicher–Haltemerker(SR 25212)–Status beim Einschalten
0: Rücksetzen
1: Aufrechterhalten (sehen Sie “Vorsicht” auf Seite 20.)
12 bis 15Zwangssetzungsstatus–Haftmerker(SR 25211)–Status beim Einschalten
0: Rücksetzen
1: Status nicht ändern
00 bis 03Programmspeicher–Schreibschutz
0: Programmspeicher ohne Schreibschutz
1: Programmspeicher mit Schreibschutz (außer DM 6602)
04 bis 07Programmierkonsolen–Display–Sprache
0: Englisch
1: Japanisch
08 bis 1 1Erweiterte Befehle
0: Grundeinstellungen
1: Anwendereinstellungen
12 bis 15Nicht verwendet.
00 bis 03Maximale Anzahl der CompoBus/S–Geräte
0: Max. Anzahl 32
1: Max. Anzahl 16
04 bis 07CompoBus/S–Kommunikationsmodus–Einstellung (nur –V2)
08 bis 15Nicht verwendet
00 bis 0700: Kein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungs-
spannungsausfalls (AR 1314 EIN) gespeichert werden konnten
01: Ein Speicherfehler wird generiert, wenn keine Daten auf Grund eines Versorgungsspannungsausfalls (AR 1314 EIN) gespeichert werden konnten
08 bis 15Nicht verwendet
00 bis 15Nicht verwendet
00 bis 07Servicezeit 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ötigten Zykluszeit
08 bis 15Aktivierung der RS–232C–Schnittstellen–Serviceeinstellung
00: 5% der Zykluszeit
01: Verwendung der in 00 bis 07 eingestellten Zeit.
19
20
20
21
15
Wort(e)SeiteFunktionBit(s)
DM 6617
DM 6618
DM 661900 bis 15Zykluszeit
DM 6620 bis
DM 6644
RS–232C–Schnittstelleneinstellungen
Die folgenden Einstellungen sind nach der Übertragung zur SPS wirksam.
DM 6645
00 bis 07Servicezeit der Peripherieschnittstelle (wirksam, wenn Bits 08 bis 15 auf 01 gesetzt
werden)
00 bis 99 (BCD): Prozentsatz der zum Service der Peripherieschnittstelle verwendeten Zykluszeit
08 bis 15Aktivierung der Peripherieschnittstellen–Serviceeinstellung
00: 5% der Zykluszeit
01: Verwendung der in 00 bis 07 eingestellten Zeit
00 bis 07Zykluszeit–Überwachung (wirksam, wenn Bits 08 bis 15 auf 01, 02 oder 03 gesetzt
werden)
00 bis 99 (BCD): Einstellung (sehen Sie 08 bis 15)
08 bis 15Aktivierung der Zykluszeit–Überwachung (Einstellung in 00 bis 07 x Einheit; 99 s
max.)
00: 120 ms (Einstellung in Bits 00 bis 07 deaktiviert)
01: Einheit: 10 ms
02: Einheit: 100 ms
03: Einheit: 1 s
0000: Variable (keine Mindestzeit)
0001 bis 9999 (BCD): Mindestzeit in ms
00 bis 15Nicht verwendet.
00 bis 03Schnittstelleneinstellungen
00: Standard (1 Startbit, 7–Datenbits, gerade Parität, 2 Stopbits, 9.600 Baud)
01: Einstellungen in DM 6646
04 bis 07CTS–Handshake–Einstellungen
0: Deaktiviert
1: Aktiviert
08 bis 1 1Bei Einsatz einer 1:1 Data–Link–Verbindung: Stellt den Schnittstellenbereich auf
1:1–PC–Link ein
0: LR 00 bis LR 15
Ungleich 0: Deaktiviert
Bei Einsatz einer 1:n–NT–Link–Verbindung: Spezifiziert die höchste Bedien–Terminal–Teilnehmernummer
In diesem Abschnitt werden die Konfigurationseinstellungen für den SPS-Standardbetrieb und die E/A-Verarbeitung erläutert.
1-2-1Start–Betriebsart
Die nach dem Einschalten der SPS aktivierte Betriebsart wird, wie nachfolgend
dargestellt, eingestellt.
Bit
15
DM 6600
Start-Betriebsart
00: Betriebsarten-Wahlschalter der Programmierkonsole
(falls keine Programmierkonsole angeschlossen ist: RUN-Betriebsart
01: Betriebsart, die vor dem Ausschalten der SPS aktiviert war
02: Einstellung der Betriebsart über die Bits 00 bis 07
Vorgabe: Betriebsartenschalter der Programmierkonsole oder RUN–
Betriebsart, falls keine Programmierkonsole angeschlossen ist.
Hinweis Wird die “Einschaltbetriebsart” auf 00 eingestellt und Schalter 2 des DIP–Schal-
ters der CPM2C CPU–Baugruppe auf EIN gesetzt, startet die CPM2C in der
RUN–Betriebsart automatisch, wenn keine Programmierkonsole oder kein
CIF–Konverter angeschlossen ist.
0
19
1-2-2Systemhaftmerker–Status
Die folgenden Einstellungen spezifizieren, ob der Zwangssetzungsstatus-Haftmerker (SR 25211) und/oder der E/A–Speicher–Haltemerker (SR 25212) beim
Einschalten der SPS den Zustand beibehalten, der beim letzten Ausschalten
der SPS gültig war oder ob der vorhergehende Zustand zurückgesetzt wird.
Bit
150
DM 6601
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
00
Einstellung des Systemmerkers SR 25211
0: Rücksetzung des Zustands
1: Aufrechterhaltung des Zustands
Einstellung des Systemmerkers SR 25212
0: Rücksetzung des Zustands
1: Aufrechterhaltung des Zustands
Vorgabe: Beide Systemmerker zurückgesetzt.
Immer 00
Der Zwangssetzungsstatus-Haftmerker (SR 25211) bestimmt, ob der Zwangssetzungs-Status (gesetzt/zurückgesetzt) beim Umschalten von der PROGRAM- in die MONITOR-Betriebsart erhalten bleibt.
Der E/A–Speicher–Haltemerker (SR 25212) bestimmt, ob der Zustand der IR–
Bits und der LR–Bits beim Start und bei der Deaktivierung des SPS-Betriebs
beibehalten wird.
!
VorsichtVerwenden Sie nicht den E/A–Speicher–Haltemerker–Status– und Zwangsset-
zungs–Haftmerkerstatus–Merker (DM 6601) der CPM1, wenn die SPS–Spannungsversorgung für einen die Speicherzeit des internen nullspannungssichernden Kondensators überschreitenden Zeitraum abgeschaltet wird. Wird
die Speicherzeit überschritten, ist der Speicherstatus auch dann undefiniert,
wenn der E/A–Speicher–Haltemerker und der Zwangssetzungs–Haftmerkerstatus–Merker verwendet wird. Unvorhersehbare Ergebnisse können auftreten, wenn der Betrieb mit einem undefinierten Speicherstatus versucht wird.
Hinweis 1. Die Speicherzeit des internen Kondensators ist von der Umgebungstempe-
ratur abhängig, beträgt aber 20 Tage bei 25 C. Sehen Sie die Hardware–
spezifikationen zwecks weiterer Informationen.
2. Die Speicherzeit setzt voraus, dass der interne Kondensator voll geladen
wird, bevor die Stromversorgung ausgeschaltet wird. Der Kondensator ist
voll aufgeladen, wenn die Stromversorgung der CPU–Baugruppe mindestens 15 Minuten lang eingeschaltet war.
1-2-3Programmspeicher–Schreibschutz
In den SPS–Systemen der Serien CPM1, CPM1A, CPM2A und CPM2C kann
der Programmspeicher geschützt werden, indem die Bits 00 bis 03 von
DM 6602 auf 1 gesetzt werden. Bits 04 bis 07 bestimmen, ob die Programmierkonsolen–Meldungen auf Englisch oder Japanisch angezeigt werden sollen.
Programmierkonsolen–Meldungen
0: Englisch
1: Japanisch
Programmspeicher
0: Nicht schreibgeschützt
1: Schreibgeschützt
Vorgabe:Anzeige in Englisch, nicht schreibgeschützt
20
Bit
DM 6602
150
00
Immer 00
Hinweis DM 6602 selbst kann noch geändert werden, nachdem der Programmspeicher
durch Setzen der Bits 00 bis 03 von DM 6602 auf 1, mit Schreibschutz versehen
wurde.
1-2-4RS–232C–Schnittstellen–Servicezeit (nur
CPM2A/CPM2C/SRM1(–V2))
Die folgenden Einstellungen spezifizieren den prozentualen Anteil der Zykluszeit für den Service der RS–232C–Schnittstelle.
Aktivierung der Servicezeit-Einstellung
00: Deaktiviert (5% der Zykluszeit)
01: Aktiviert (die Einstellung in den Bits 00 bis 07 wird verwendet)
Servicezeit (%, gültig, wenn die Bits 08 bis 15 auf 01 gesetzt sind)
00 bis 99 (BCD, zweistellig)
Vorgabe: 5% der Zykluszeit
Beispiel:
Wird DM 6616 auf 0110 gesetzt, wird 10% der Zykluszeit für den Service der
RS-232C-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
Bit
DM 6616
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
150
1-2-5Servicezeit der Peripherieschnittstelle
Die folgenden Einstellungen spezifizieren den prozentualen Anteil der Zykluszeit für den Service der Peripherieschnittstelle.
Aktivierung der Servicezeit-Einstellung
00: Deaktiviert (5% der Zykluszeit)
01: Aktiviert (die Einstellung in den Bits 00 bis 07 wird verwendet)
Servicezeit (%, gültig, wenn die Bits 08 bis 15 auf 01 gesetzt sind)
00 bis 99 (BCD, zweistellig)
Vorgabe: 5% der Zykluszeit
Beispiel:
Wird DM 6617 auf 0115 gesetzt, wird 15% der Zykluszeit für den Service der Peripherie-Schnittstelle aufgewendet.
Die Mindest-Servicezeit beträgt 0,34 ms.
1-2-6Zyklusüberwachungszeit
Bit
DM 6618
150
Bit
DM 6617
150
Zykluszeitüberwachung
00: Einstellung deaktiviert (Zeit auf 120 ms fest eingestellt)
01: Einstellung in 00 bis 07 aktiviert; Einheit: 10 ms
02: Einstellung in 00 bis 07 aktiviert; Einheit: 100 ms
03: Einstellung in 00 bis 07 aktiviert; Einheit: 1 s
Einstellung der Zyklusüberwachungszeit
(wenn die Bits 08 bis 15 nicht 00 sind)
00 bis 99 (BCD, zweistellig; Einheiteneinstellung in den Bits 08 bis 15)
Vorgabe: 120 ms.
21
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
Die Zykluszeitüberwachung dient zur Erkennung extrem langer Zykluszeiten,
die zum Beispiel im Falle einer unendlichen Programmschleife auftreten können. Überschreitet die Zykluszeit den für die Zyklusüberwachungzeit spezifizierten Wert, wird ein schwerwiegender Fehler (FALS 9F) generiert.
Hinweis 1. Die Einheiten, die für die im AR–Bereich (AR 14 und AR 15) gespeicherten
Maximal– und Ist–Zyklusdauer verwendet werden, werden durch die Einstellung für die Zyklusüberwachungs–Zeit in DM 6618, wie nachfolgend gezeigt, bestimmt.
Bits 08 bis 15 auf 01 gesetzt:0,1 ms
Bits 08 bis 15 auf 02 gesetzt:1 ms
Bits 08 bis 15 auf 03 gesetzt:10 ms
2. Auch bei Zykluszeiten von 1 s oder länger beträgt die über Programmiergeräte gelesene Zykluszeit maximal 999,9 ms. Die tatsächlichen maximalen
und aktuellen Zykluszeiten werden in den AR–Bereichen gespeichert.
Beispiel
Wird 0230 in DM 6618 spezifiziert, wird ein FALS 9F-Fehler erst bei einer Zykluszeit von mehr als 3 s generiert. Beträgt die Ist–Zykluszeit 2,59 s, enthält der
AR–Bereich den Wert 2590 (ms), die über ein Programmiergerät gelesene Zykluszeit beträgt jedoch 999,9 ms.
Ein ”geringfügiger” Fehler (Zykluszeitüberschreitung) wird generiert, sobald die
Zykluszeit 100 ms überschreitet. Voraussetzung hierfür ist jedoch, dass die Erkennung langer Zykluszeiten über die Einstellung in DM 6655 deaktiviert wurde.
1-2-7Minimum–Zykluszeit
Die folgenden Einstellungen dienen zur Spezifikation der Standard-Zykluszeit
und verhindern Schwankungen der E/A-Ansprechzeit durch Einstellung der minimalen Zykluszeit.
Ist die tatsächliche Zykluszeit kürzer als die minimale Zykluszeit, erfolgt die Ausführung erst nach Ablauf der Mindestzeit. Ist die tatsächliche Zykluszeit länger
als die minimale Zykluszeit, wird der Betrieb entsprechend der tatsächlichen Zykluszeit fortgesetzt. Bei Überschreitung der minimalen Zykluszeit wird AR 1305
gesetzt.
1-2-8Eingangs–Zeitkonstanten
Die folgenden Einstellungen spezifizieren die Zeit, in der die tatsächlichen Eingänge der DC-Eingangsbaugruppe auf AUS oder EIN gesetzt werden bis zur
Auffrischung der entsprechenden Eingangsbits (d.h. bis zur Änderung des EIN/
AUS-Zustandes). Diese Einstellungen dienen zur Spezifikation der Zeit, in der
die Eingänge stabilisiert werden.
Das Vergrößern der Eingangs–Zeitkonstante kann die Wirkungen von prellenden und externen Störungen reduzieren.
Bit
150
DM 6619
Zykluszeit (BCD, vierstellig)
0000: Variable Zykluszeit
0001 bis 9999:Minimale Zykluszeit
Vorgabe: Variable Zykluszeit
(Einheit: 1 ms)
22
Eingang von einem Eingangsgerät wie z.B. Begrenzungsschalter
Eingangsbit–
Status
t
t
Eingangs–Zeitkonstante
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
Die SRM1(–V2) verfügt nicht über diese Einstellung.
CPM1/CPM1A SPSStellen Sie die Eingangs–Zeitkonstanten für die CPM1/CPM1A–Eingänge über
ein Programmiergerät ein.
Eingangs–Zeitkonstanten für IR 000
Bit
150
DM 6620
Zeitkonstante für IR 00007 bis IR 00011 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00005 bis IR 00006 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00003 bis IR 00004 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00000 bis IR 00002 (BCD, einstellig; sehen Sie unten)
Vorgabe: 0000 (8 ms für alle)
Eingangs–Zeitkonstanten für IR 001 bis IR 009
Bit
DM 6621: IR 001 und IR 002
DM 6622: IR 003 und IR 004
DM 6623: IR 005 und IR 006
DM 6624: IR 007 und IR 008
DM 6625: IR 009
DM6621 bis DM6625
150
Zeitkonstante für IR 002, IR 004, IR 006 und IR 008
Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (8 ms für alle)
Die neun möglichen Einstellungen für die Eingangs–Zeitkonstante sind nachfolgend dargestellt. (Geben Sie nur die äußerst rechte Ziffer jeder Einstellung für
IR 000 ein.)
00: 8 ms01: 1 ms02: 2 ms03: 4 ms04: 8 ms
05: 16 ms06: 32 ms07: 64 ms08: 128 ms
Die E/A–Ansprechzeit der CPM1/CPM1A ist die Eingangs–Zeitkonstante (1 ms
bis 128 ms; Vorgabe ist 8 ms) + Zykluszeit.
Sehen Sie Abschnitt 81 CPM1/CPM1A−Zykluszeit und E/A−Ansprechzeit für
weitere Informationen.
CPM2A/CPM2C SPS–Systeme Stellen Sie die Eingangs–Zeitkonstanten für die Eingänge der CPM2A/CPM2C
über ein Programmiergerät ein.
Eingangs–Zeitkonstanten für IR 000
Bit
150
DM 6620
Zeitkonstante für IR 00007 bis IR 00011 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00005 bis IR 00006 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00003 bis IR 00004 (BCD, einstellig; sehen Sie unten)
Zeitkonstante für IR 00000 bis IR 00002 (BCD, einstellig; sehen Sie unten)
Vorgabe: 0000 (10 ms für alle)
Eingangs–Zeitkonstanten für IR 001 bis IR 009
DM 6621: IR 001 und IR 002
DM 6622: IR 003 und IR 004
DM 6623: IR 005 und IR 006
DM 6624: IR 007 und IR 008
DM 6625: IR 009
Zeitkonstante für IR 002, IR 004, IR 006 und IR 008
Zeitkonstante für IR 001, IR 003, IR 005, IR 007 und IR 009
Vorgabe: 0000 (10 ms für alle)
DM6621 bis DM6625
Bit
150
23
Die neun möglichen Einstellungen für die Eingangs–Zeitkonstante sind nachfolgend dargestellt. Für IR 000 muss nur die äußerst rechte Ziffer eingegeben werden.
00: 10 ms01: 1 ms02: 2 ms03: 3 ms 04: 5 ms
05: 10 ms06: 20 ms07: 40 ms08: 80 ms
1-2-9|Fehlerprotokoll–Einstellungen
Fehlererkennung und Fehlerprotokollierung (DM 6655)
Die folgenden Einstellungen spezifizieren, ob ein ”geringfügiger” Fehler generiert wird, wenn die Zykluszeit 100 ms überschreitet oder die Spannung der integrierten Batterie sinkt (nur CPM2A/CPM2C). Darüber hinaus wird das Verfahren für die Speicherung von Datensätzen in dem Fehlerprotokoll beim Auftreten
von Fehlern spezifiziert.
Bit
DM 6655
1-1AbschnittSPS–Basisoperationen und E/A–Verarbeitungen
150
0
Erkennung einer niedrigen
Batteriespannung
0: Erkennung
1: Keine Erkennung
Erkennung einer ZykluszeitÜberschreitung
0: Erkennung
1: Keine Erkennung
FehlerprotokollSpeicherung
0: Die 7 zuletzt aufgetretenen Fehler werden immer gespeichert (ältere Fehler werden
gelöscht).
1: Nur die ersten 7 Fehler werden gespeichert (weitere Fehler werden nicht gespeichert).
2 bis F: Fehler werden nicht gespeichert.
Vorgabe: Niedrige Batteriespannung und Zykluszeit-Überschreitungen
werden als Fehler erkannt und die 7 zuletzt aufgetretenen Fehler gespeichert.
immer 0
Zu geringe Batteriespannungen und Zykluszeit-Überschreitungen werden als
”geringfügige” Fehler eingestuft.
Sehen Sie Kapitel 9 Fehlersuche für weitere Informationen über das Fehlerpro
tokoll.
Hinweis Der Batteriespannung niedrig–Fehler wird nur in der CPM2A/CPM2C generiert.
Diese Ziffer wird nicht in den SPS–Systemen CPM1/CPM1A/SRM1(–V2) und
CPM2C verwendet, die nicht mit einer Batterie ausgestattet sind.
24
KAPITEL 2
Besonderheiten
Dieser Abschnitt beschreibt Besonderheiten der CPM1, CPM1A, CPM2A, CPM2C und SRM1 (V2).
Die CPM2A und CPM2C bieten folgende Arten der Interrupt–Verarbeitung. Interrupts können temporär deaktiviert werden, wenn die Online–Editierung während des Betriebs durchgeführt oder STUP(––) ausgeführt wird, um Einstellungen zu ändern.
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vorhanden. In diesen CPU–Baugruppen sind die Interrupt–Unterprogrammnummern 000 und 001 den Eingängen 00003 und 00004 zugeordnet.
Eingangsgesteuerte Interrupts
Interrupt–Programme werden ausgeführt, wenn CPU–Baugruppen–integrierte
Eingänge (00003 bis 00006*) von AUS nach EIN wechseln. Interrupt–Unterprogrammnummern 000 bis 003* sind den Eingängen 00003 bis 00006* zugeordnet.
Intervall–Zeitgeber–gesteuerte Interrupts
Interrupt–Programme der Intervall–Zeitgeber werden mit einer Genauigkeit von
0,1 ms ausgeführt. Die Interrupt–Unterprogrammnummern 000 bis 049 werden
über Befehle zugewiesen.
Auf–/Abwärtszählungs–gesteuerte Interrupts über Interrupt–Eingänge
(Zählmodus)
Eingangssignale an den in die CPU–Baugruppe–integrierten Eingänge (00003
bis 00006*) werden mit großer Geschwindigkeit (2 kHz) gezählt; das normale
Programm wird unterbrochen und ein Interrupt–Programm ausgeführt. Interrupt–Unterprogrammnummern 000 bis 003* sind den Eingängen 00003 bis
00006* zugeordnet.
Zählsollwert erreicht–gesteuerte Interrupts unter Anwendung des schnellen Zählers
An die Eingängen der CPU–Baugruppe (00000 bis 00002) angelegte Impulse
werden mit großer Geschwindigkeit gezählt (20 kHz/5 kHz) und ein Interrupt–
Programm wird ausgeführt, wenn der Istwert dem Sollwert entspricht oder innerhalb eines spezifizierten Bereichs fällt. Interrupt–Unterprogrammnummern
000 bis 049 werden über Befehle zugewiesen.
Schreiben von
Interrupt–Programmen
1, 2, 3...
Interrupt–Programme werden als Interrupt–Unterprogramme innerhalb des Anwenderprogramms programmiert. Wie bei normalen Unterprogrammen wird
auch ein Interrupt–Unterprogramm durch SBN(92) und RET(93) definiert. Es
wird an das Ende des normalen Programms platziert.
Normales
Programm
Interrupt–
Programm
1. Ein neuer Interrupt kann in einem Interrupt–Unterprogramm festgelegt und
ein vorhandener gelöscht werden.
Unterprogramm
26
2. Innerhalb eines bestimmten Interrupt–Unterprogrammes kann kein anderes Unterprogramm zur Verarbeitung eines anderen Interrupts programmiert werden. Ein anderes Interrupt–Unterprogramm kann nicht zwischen
den SBN(92)– und RET(93)–Befehlen verschachtelt werden.
3. Es ist nicht möglich, ein Unterprogramm innerhalb eines Interrupt–Unterprogrammes zu schreiben. Zwischen den SBN(92) und RET(93)–Befehlen
kann kein Unterprogramm verschachtelt werden.
4. Es ist nicht möglich, ein Interrupt–Unterprogramm innerhalb eines normalen Unterprogramms zu schreiben. Ein Interrupt–Unterprogramm kann
nicht zwischen den SBN(92)– und RET(93)–Befehlen verschachtelt werden.
Wird eine Interrupt–Unterprogramm definiert, wird während der Programmüberprüfung ein “SBS UNDEFINED(nicht definiertes Unterprogramm)”–Fehler
generiert, aber das Programm wird normal ausgeführt.
VorsichtObwohl 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 Systemfehler (FALS 9F) auftreten, wodurch der Betrieb abgebrochen wird. Der Intervall zwischen Ausführungen von IORF(97) sollte mindestens 1,3 ms + gesamte Ausführungszeit des Interrupt–Unterprogramms betragen.
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Reihenfolge der
Die Reihenfolge der Interrupt–Prioritäten ist wie folgt:
Prioritäten der Interrupts
Eingangsgesteuerte
Interrupts
Auf–/Abwärtszählungs–
=>=
gesteuerte Interrupts
Wird während der Interrupt–Programmausführung, ein Interrupt mit einer höheren Priorität generiert, wird der Interrupt, der zur Zeit verarbeitet wird, abgebrochen, und der neue Interrupt zuerst verarbeitet. Dann wird die V erarbeitung des
ursprünglichen Interrupts wieder fortgesetzt, nachdem die Verarbeitung des Interrupts mit der höheren Priorität abgeschlossen ist.
Gleichzeitig generierte Interrupts der gleichen Priorität werden in folgender Reihenfolge verarbeitet:
Durch Umschalten der in der CPU–Baugruppen–integrierten Eingänge von
AUS auf EIN kann das normale Programm unterbrochen und das Interrupt–Programm ausgeführt werden. Diese Interrupts sind vier Eingängen zugeordnet
(00003 bis 00006*).
Intervall–Zeitgeber–
gesteuerte Interrupts
Schnelle Zähler–
Zählwertvergleichs–
Interrupts
27
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Einschaltens des
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vorhanden.
Interrupt–Signal
Normales
Programm
Eingangs–
nummer
(Hinweis 1)
000030000
000041001
000052002
000063003
Interrupt–
Nummer
programm–
(Hinweis 2)
Interrupt–
Programm
Unter–
nummer
signalbreite
50 µs0,3 ms (vom
Unter–
programm
Mindest–
Eingangs–
Interrupt–
Ansprechzeit
Zeitpunkt des
Einschaltens des
Eingangs bis zur
Programm–
ausführung)
Hinweis 1. Eingänge 00003 bis 00006 können für jede der folgenden Funktionen ver-
wendet werden: als Interrupt–Eingänge, als Interrupt–Eingänge (Zählmodus) oder als Eingänge mit Impulsspeicherung. Werden diese Eingänge
nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als
gewöhnliche Eingänge eingesetzt werden.
2. Unterprogrammnummern 000 bis 003 sind die Nummern der Interrupt–Programme, die gestartet werden, wenn eingangsgesteuerte Interrupts oder
Auf–/Abwärtszählungs–gesteuerte Interrupts für eingangsgesteuerte Interrupts (Zählmodus) generiert werden. Werden diese Eingänge nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als gewöhnliche Eingänge eingesetzt werden.
Die folgende Tabelle zeigt die Beziehungen zwischen Interrupt–Eingängen und
anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
28
FunktionEingangsgesteuerter Interrupts
(Zählmodus)
Synchronisierte ImpulssteuerungKann gleichzeitig verwendet werden.
Eingangsgesteuerte Interrupts(Sehen Sie Hinweis 1)
Intervall–Zeitgeber–gest. InterruptsKann gleichzeitig verwendet werden.
Schnelle ZählerKann gleichzeitig verwendet werden.
Eingangsgest. Interrupts (Zählmodus) (Sehen Sie Hinweis 1)
ImpulsausgängeKann gleichzeitig verwendet werden.
Eingänge mit Impulsspeicherung(Sehen Sie Hinweis 1)
Eingangs–Zeitkonstante(Sehen Sie Hinweis 2)
UhrKann gleichzeitig verwendet werden.
Hinweis 1. Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funk-
tionen konfiguriert werden: als Interrupt–Eingang, als Interrupt–Eingang
(Zählmodus) oder als Eingang mit Impulsspeicherung.
2. Werden die Eingänge 00003 bis 00006 als Interrupt–Eingänge (Zählmodus) konfiguriert, werden die Eingangszeit–Konstanten der entsprechenden Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in
der SPS–Konfiguration gespeichert.
Verwendung der Interrupt–Eingänge
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Eingänge
E–gest. Interrupt0
E–gest. Interrupt 1
Verdrahtung der Eingänge.
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan–
Programms.
Kontaktplan–Programmierung
INT(89)–Befehl
Interrupt–Signal–
Freigabe
Eingang: 00003 bis 00006
Definition als Interrupt–Eingänge (eingangsgesteuerte Interrupts–oder Zählmodus).
INT(89): Maskierung und Demaskierung von
Interrupts.
SBN(92) und RET(93): Erstellung von Interrupt–Unterprogrammen.
Interrupt wird
generiert.
Spezifiziertes Unterprogramm
wird ausgeführt.
(92)
(93)
Zuordnung der Interrupt–
Unterprogramme
E–gest. Interrupt 2
E–gest. Interrupt3
SPS–Konfigur.
DM 6628
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden Interrupt–Eingängen fest zugeordnet.
EingangInterrupt–
Nummer
000030000
000041001
000052002
000063003
Unterprogramm–
nummer
Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funktionen konfiguriert werden: als Interrupt–Eingang, als Interrupt–Eingang (Zählmodus) oder als Eingang mit Impulsspeicherung.
29
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
erru
ge
1: Interru t–Eingänge
)
g
Verdrahtung der
Eingänge
Verdrahten Sie, bei einer CPM2A, die Eingangsklemmen wie in der folgenden
Abbildung gezeigt.
Verdrahten S i e d i e E i ngänge einer CPM2C, wie in der folgenden Abbildung gezeigt.
Eing.–klemmen
00004
00003
E–Steckverbind.
00006
00005
00004
00003
SPS–Konfiguration
Hinweis Sehen SIe das technische Handbuch der CPU–Baugruppe für Informationen
über die Verdrahtung.
Die folgende Tabelle enthält die Einstellungen im SPS–Konfigurationsbereich,
die mit der Verwendung von eingangsgesteuerte Interrupts zusammenhängen.
WortBitsFunktionEin–
stellung
DM 6628
00 bis03Einstellung für
Eingang 00003
04 bis07Einstellung für
Eingang 00004
08 bis11Einstellung für
Eingang 00005
12 bis15Einstellung für
Eingang 00006
0: Normaler Eingang
1: Int
(Eingangsgesteuerter
Interrupt– oder Zählmodus)
2: Schneller Eingang mit
Impulsspeicherung
pt–Eingän
1
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vorhanden.
Die Einstellungen werden wirksam, wenn die Betriebsart geändert wird (von
PROGRAM auf MONITOR/RUN) oder wenn die Spannungsversorgung der
CPM2A/CPM2C eingeschaltet wird.
30
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Kontaktplan–
Programmierung
(@)INT(89)
Die folgende Tabelle zeigt die sich auf Interrupts beziehenden Befehlsfunktionen.
BefehlSteuerungBetrieb
(@)INT(89)
Maskierung/Demaskierung der eingangsgesteuerte Interrupts.
Eingangsgesteuerte Interrupts löschen
Liest den gegenwärtigen
Maskenstatus
Maskierung aller Interrupts
Demaskierung aller
Interrupts
Sperrt oder gibt spezifizierte Interrupts
frei.
Löscht einen maskierten (gesperrten) eingangsgesteuerten Interrupt.
Liest den Freigabe/Gesperrt–Status eines
eingangsgesteuerten Interrupts.
Alle eingangsgesteuerten Interrupts sind am Anfang des Betriebs gesperrt (in
entweder der PROGRAM– oder der RUN/MONITOR–Betriebsart). Um eingangsgesteuerte Interrupts zu verwenden, müssen diese über INT(89) freigegeben werden.
Löschen von maskierten, eingangsgesteuerten Interrupts
Diese Funktion wird dazu verwendet, die gespeicherten Zustände der Eingänge
00003 bis 00006 zu löschen (eingangsgesteuerte Interrupts 0 bis 3). Da eingangsgesteuerte Interrupts gespeichert werden, werden maskierte Interrupts
erst abgearbeitet, nachdem die Maske entfernt wurde, es sei denn, die Interrupts werden zuvor gelöscht. Verwenden Sie INT(89), um die Interrupt–Speicherung zu löschen, damit die Interrupts nicht ausgeführt werden, wenn eingangsgesteuerte Interrupts freigegeben werden (d.h. nachdem die Maske entfernt wird).
Während eingangsgesteuerte Interrupts maskiert sind, kann bei mehreren eingegangenen Impulsen nur ein auszuführender Interrupt pro Eingang gespeichert werden.
Lesen des gegenwärtigen Maskenstatus
Diese Funktion wird dazu verwendet, den gegenwärtigen Maskenstatus für die
Eingänge 00003 bis 00006 (eingangsgesteuerte Interrupts 0 bis 3) zu lesen.
(@)INT(89)
002
Interrupt–Steuercode (002: Lesen des gegenwärtigen Maskenstatus)
0: Maske ist gelöscht (Interrupt freigegeben).
1: Maske ist definiert (Interrupt gesperrt).
Maskierung oder Demaskierung aller Interrupts
Diese Funktion wird zur Maskierung/Demaskierung aller Interrupt–Verarbeitungen (eingangsgesteuerte Interrupts (auch im Zählmodus), Intervall–Zeitgeber–
gesteuerte Interrupts und zählergesteuerte Interrupts) verwendet. Maskierte
eingangsgesteuerte Interrupts werden gespeichert, aber nicht ausgeführt.
Maskierung aller Interrupts
32
(@)INT(89)
100
Interrupt–Steuercode (100: Maskierung aller Interrupts)
000
Fest auf 000 (keine Funktion)
Fest auf 000 (keine Funktion)
000
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Demaskierung aller Interrupts
(@)INT(89)
200
Interrupt–Steuercode (200: Demaskierung aller Interrupts)
000
Fest auf 000 (keine Funktion)
Fest auf 000 (keine Funktion)
000
Die Maskierung oder Demaskieren aller Interrupt kann nicht innerhalb eines Interrupt–Unterprogrammes ausgeführt werden.
Treten Interrupts–Signale auf, während alle Interrupts maskiert sind, werden die
Interrupt–Signale aufgezeichnet aber es wird keine Interrupt–Verarbeitung
durchgeführt. Wird “Alle Interrupts demaskieren” ausgeführt, wird die Verarbeitung entsprechend dem Interrupt–Maskenstatus jedes Eingangs durchgeführt.
Interrupt–Masken können nicht einfach durch Ausführung von “Alle Interrupts
demaskieren” gelöscht werden. Die Ausführung von “Alle Interrupts demaskieren” stellt lediglich den Status wieder her , der vor der Ausführung von ”Alle Interrupts maskieren“ wirksam war.
Hinweis INT(89) muss in der Reihenfolge ”Maskierung aller Interrupts“ gefolgt von ”De-
maskierung aller Interrupts“ ausgeführt werden.
Programmbeispiel
Erläuterung
Verdrahtung
Eing.–klemmen
In diesem Beispiel wird ein Interrupt–Unterprogramm ausgeführt, indem Eingang 00003 von AUS nach EIN wechselt. Das Interrupt–Unterprogramm inkrementiert den Inhalt von DM 0000 um 1.
Das folgende Diagramm zeigt die Eingangsverdrahtung der CPM2A.
Eingabegerät
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2C.
E–Steckverbind.
Eingabegerät
Eingabegerät
33
SPS–Konfiguration
Programmierung
EIN für 1 Zyklus am Anfang
des RUN/MONITOR–
Betriebs
(89)
150
DM 6628
Löscht den Inkrementbereich (DM 0000).
Freigabe von des eingangsgesteuerten Interrupts 0 (Eingang 00003).
001
0
Eingang 00003 wird als Interrupt–Eingang verwendet.
(Die Eingänge 00004 bis 00006 werden als normale
Eingänge verwendet.)
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Immer EIN
25313
Ausgeführt, wenn Eingang 00003 von AUS auf EIN wechselt.
2-1-2Intervall–Zeitgeber–gesteuerter Interrupt
Ein Intervall–Zeitgeber (Genauigkeit: 0,1 ms) wird unterstützt und kann auf 0,5
ms bis 319.968 ms eingestellt werden. Es gibt zwei Interrupt–Modi: der Monoflop–Modus, in der ein einzelner Interrupt ausgeführt wird, wenn die Zeit abgelaufen ist und der zeitgesteuerte Modus, in der Interrupts in regelmäßigen Intervallen ausgeführt werden.
Normales
Programm
Intervall–Zeitgeber–Interrupt
34
Interrupt–
Programm
Unter–
programm
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Monoflop–Interrupt–ModusZeitgesteuerter
Interrupt–Modus
VorgangDer Interrupt wird einmal aus-
geführt, wenn die Zeit abge-
laufen ist.
Zeiteinstellung0,5 bis 319.968 ms (Einheit: 0,1 ms)
Interrupt–
Ansprechzeit
0,3 ms (beginnend mit dem Moment des Ablaufs der Zeit bis
zur Ausführung des Interrupt–Programms)
Die folgende Tabelle zeigt die Beziehungen zwischen Intervall–Zeitgeber–gesteuerte Interrupts und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
Synchronisierte ImpulssteuerungKann gleichzeitig verwendet werden.
Eingangsgesteuerte InterruptsKann gleichzeitig verwendet werden.
Intervall–Zeitgeber–gest. Interrupts--Schneller ZählerKann gleichzeitig verwendet werden.
Eingangsgest. Interrupt (Zählmodus)Kann gleichzeitig verwendet werden.
ImpulsausgängeKann gleichzeitig verwendet werden.
Eingänge mit ImpulsspeicherungKann gleichzeitig verwendet werden.
Eingangs–ZeitkonstanteKann gleichzeitig verwendet werden.
UhrKann gleichzeitig verwendet werden.
Interrupts werden in normalen
Intervallen ausgeführt.
Intervall–Zeitgeber–gesteuerte
Interrupts
Verfahren zur Anwendung von Intervall–Zeitgeber–gesteuertern Interrupts
Modus auswählen.Entweder Monoflop– oder zeitgesteuerter Interrupt–Modus
Kontaktplan–ProgrammierungSTIM(69)
Intervall-Zeitgeber
Kontaktplan–Programmierung
STIM(69)
INTERVALL–ZEITGEBER–Befehl
Zeitgeber starten
Monoflop–Betrieb
Zeitgest. Interrupt–Betrieb
Lesen der abgelaufen. Zeit
Interrupt wird
ausgeführt.
Spezifiziertes Unterprogramm
wird ausgeführt.
SBN(92)
RET (93)
Auswählen des Modus
Wählen Sie entweder den Monoflop– oder den zeitgesteuerten Interrupt–
Modus aus.
35
Monoflop–Modus
Normales ProgrammNormales Programm
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
Zeitgesteuerter Interrupt–Modus
Normales Programm
Interrupt–Programm
Intervall–Zeitgeber–Interrupt
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Kontaktplan–
Programmierung
Intervall–Zeitgeber–Betrieb
Zeitgeber starten
Beim zeitgesteuerten Interrupt–Modus wird, nachdem die festgesetzte Zeit abgelaufen ist, der Zeitgeber bei jedem Aufruf des Interrupt–Programms zurückgesetzt; anschließend läuft der Intervall–Zeitgeber wieder an.
Seien Sie in Bezug auf die Ausführungszeit des Interrupt–Programms und der
eingestellten Zeit des Intervall–Zeitgebers vorsichtig. Überschreitet die Ausführungszeit des Interrupt–Programms die festgesetzte Zeit des Intervall–Zeitgebers, kann der zeitgesteuerte Interrupt nicht richtig ausgeführt werden.
Die folgende Tabelle zeigt die sich auf die Interrupt–Verarbeitung beziehenden
Befehlsfunktionen.
BefehlSteuerungBetrieb
(@)STIM(69)
(@)INT(89)
Einschaltwischer startenStartet den Intervall–Zeitgeber in dem
Monoflop–Interrupt–Modus.
Zeitgesteuerten Interrupt–Zeitgeber starten
Zeitgeber–Istwert lesenLiest den Zeitgeber–Istwert.
Zeitgeber anhaltenBricht die Zeitgeberfunktionen ab.
Alle Interrupts maskieren Sperrt alle Interrupts, einschließlich ein-
Alle Interrupts demaskieren
Startet den Intervall–Zeitgeber in dem
zeitgesteuerten Interrupt–Modus.
Gibt alle Interrupts, einschließlich eingangsgesteuerte Interrupts, Intervall–
Zeitgeber–gesteuerte Interrupts, Zählergesteuerte Interrupts, usw. frei
36
Starten der Zeitgeber
Diese Funktion stellt die Betriebsart (Monoflop– oder zeitgesteuerter Interrupt)
und den Sollwert des Zeitgebers ein und startet den Intervall–Zeitgeber.
Monoflop–Modus
(@)STIM(69)
000
Steuerbezeichnung (000: Einschaltwischer starten)
C
2
Erstes Wort des Zeitgeber–Sollwertes
C
Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
3
Zeitgesteuerte Interrupt–Modus
(@)STIM(69)
003
Steuercode (003: zeitgesteuert. Interrupt–Zeitgeber starten
C
2
Erstes Wort des Zeitgeber–Sollwertes
Unterprogramm-Nummer (4-stelliger BCD-Wert): 0000 bis 0049
C
3
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
C
2
C2+1
Anfangswert des dekrementierenden Zählers (4–stelliger Hex–Wert):
0000 bis 9999
Zeitintervall jeder Dekrementierung (4-stelliger BCDWert; Einheit: 0,1 ms): 0005 bis 0320 (0,5ms bis 32 ms)
Die Zeit von der Ausführung des STIM(69)-Befehls bis zum Ablauf der spezifizierten Zeit wird folgendermaßen berechnet:
(Inhalt des Wortes C
) x (Inhalt der Worte C2 + 1) x 0,1 ms
2
(0,5 bis 319.968 ms)
Wird für C
eine Konstante spezifiziert, wird der Sollwert des Abwärtszählers auf
2
diesen Wert gesetzt und das Dekrementierungs-Zeitintervall beträgt 10 (1 ms).
(Der Sollwert wird spezifiziert wie er ist, in ms–Einheiten.)
Lesen der Zeitgeber–Istwerte
Diese Funktion liest die Intervall–Zeitgeber–Istwerte.
(@)STIM(69)
006
Steuercode (006: Zeitgeber–Istwert lesen)
C
2
C
3
C
2
C2+1
C
3
Anzahl der Male, die ein Abwärtszähler heruntergezählt werden soll (4–stelliger Hex–Wert)
Zeitintervall jeder Dekrementierung
(4-stelliger BCD-Wert; Einheit: 0,1 ms)
Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelliger BCD-Wert; Einheit: 0,1 ms)
Anhalten der Zeitgeber
Diese Funktion hält den Intervall–Zeitgeber an.
(@)STIM(69)
010
Steuercode (010: Zeitgeber anhalten)
000
Fest: 000
000
Fest: 000
Maskierung oder Demaskieren aller Interrupts
Sehen Sie Abschnitt
Interrupt–Verarbeitungs–Befehle
2-1-1 Eingangsgesteuerte Interrupts
für Einzelheiten über die Maskierung/Demas-
kierung aller Interrupts.
und Abschnitt
7-29
37
Programmbeispiel
Monoflop–Interrupt–Modus
2-1AbschnittCPM2A/CPM2C–Interrupt–Funktionen
Beschreibung
In diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedingung (00005) von AUS nach EIN umschaltet. W enn die Zeit (ca. 1 s) abgelaufen
ist, wird das Interrupt–Unterprogramm einmal ausgeführt. Wird das Interrupt–
Unterprogramm ausgeführt, wird der Inhalt von DM 0000 um 1 inkrementiert.
Abgelaufene Zeit 100 x 100 x 0,1 = 1.000 ms
Programmierung
EIN für 1 Zyklus am
Anfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999 BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung: 10 ms
(0005 bis 0320 BCD–Wert)
(Ausführungs–
bedingung)
Immer EIN
(69)
Startet den Intervall–Zeitgeber im
Monoflop–Interrupt–Modus.
Führt den Interrupt einmal
aus, nach dem die Zeit abgelaufen ist.
38
Zeitgesteuerter Interrupt–Modus
Beschreibung
In diesem Beispiel wird der Zeitgeber gestartet, wenn die Ausführungsbedingung (00005) von AUS nach EIN umschaltet. Dann wird das Interrupt–Unterprogramm jedes Mal ausgeführt, nachdem die festgesetzte Zeit (ca. 1 s) abgelaufen ist. Der Inhalt von DM 0000 jedesmal um 1 inkrementiert, wenn das Interrupt–Unterprogramm ausgeführt wird.
Abgelaufene Zeit 100 x 100 x 0,1 = 1.000 ms
Programmierung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
EIN für 1 Zyklus am
Anfang des Betriebs
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zählen: 100 (0000 bis 9999, BCD–Wert)
Zählerintervall–Einstellung
Zählerintervall–Einstellung:
10 ms (0005 bis 0320, BCD–Wert)
(Ausführungs–
(69)
bedingung)
Immer EIN
2-2CPM2A/CPM2C Schneller Zähler
CPM2A CPU–Baugruppen und die meisten CPM2C CPU–Baugruppen besitzen fünf Eingänge für schnelle Zähler: einen Eingang für einen schnellen Zähler
mit einer max. Ansprechfrequenz von 20 kHz und vier Eingänge als Interrupt–
Eingänge (Zählmodus).
CPM2C CPU–Baugruppen mit 10 Ein–/Ausgängen besitzen vier Eingänge für
schnelle Zähler: einen Eingang für einen schnellen Zähler mit einer max. Ansprechfrequenz von 20 kHz und zwei Eingänge als Interrupt–Eingänge (Zählmodus).
Startet den Intervall–Zeitgeber im zeitgesteuerte
Interrupt–Modus.
Führt den Interrupt jedes Mal aus, wenn die
festgesetzte Zeit abgelaufen ist.
Schnelle Zähler
Arten von Schnellen
Zählern
Schneller Zähler
1 Eingang
Interrupt–Eingänge
(Zählmodus)
4 Eingänge:
(2 Eingänge in CPM2C CPU–
Baugruppen mit 10 E/A)
Keine
Interrupts
Istzählwert–
Interrupts
Keine Interrupts
Aufwärtszähl–
Interrupts
Zielwert–Vergleich–Interrupts
Bereichsvergleich–Interrupts
Die CPM2A/CPM2C verfügt über einen integrierten Schnellen Zähler und integrierte Interrupt–Eingänge.
39
2-2AbschnittCPM2A/CPM2C Schneller Zähler
g
Schneller Zähler
Der eingebaute schnelle Zähler verwendet die eingebauten Eingänge 00000 bis
00002 der CPU–Baugruppe. Der schnelle Zähler kann entweder zum Inkrementieren/Dekrementieren oder nur zum Inkrementieren, je nach Betriebsarteinstellung, verwendet werden.
Eingangs–
Nr. (sehen
Sie den
Hinweis)
00000
00001
00002
Ansprech–
frequenz
5 kHzDifferentialphasen
20 kHzImpuls und Richtung
Eingangsmodus (Zählwert)Steuerverfahren
(–8388608 bis 8388607)
(–8388608 bis 8388607)
Auf–/Abwärts–Impulse
(–8388608 bis 8388607)
Inkremental
(0 bis 16777215)
Zielwertvergleich–
Interrupts
Bereichsvergleich–
Interrupts
Hinweis Nicht als Zählereingänge verwendet Eingänge können als gewöhnliche Ein-
gänge verwendet werden.
Interrupt–Eingänge (Zählmodus)
Im Zählmodus werden die eingebauten Eingänge 00003 bis 00006 (00003 und
00004 in CPM2C–CPU–Baugruppen mit 10 Ein–/Ausgängen) der CPU–Baugruppe verwendet. Zähler verwenden vier Eingänge und können den Zählwert,
je nach der Betriebsarteinstellung, entweder inkrementieren oder dekrementieren. Da diese Funktion Interrupt–Eingänge zum Zählen verwendet, ist es nicht
möglich, die belegten Eingänge für andere Zwecke zu verwenden.
Eingangs–
Nr. (sehen
Sie den
Hinweis)
00003
00004
00005
00006
Ansprech–
frequenz
2 kHzAufwärtszähler
Eingangsmodus
(Zählwert)
(0000 bis FFFF)
Abwärtszähler
(0000 bis FFFF)
Steuerverfahren
Zählergesteuerte
Interrupts
Hinweis 1. Nicht als Zähleingänge verwendete Eingänge können als gewöhnliche Ein-
Schnelle Zähler–Interrupts
gänge verwendet werden.
2. Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht
vorhanden.
Vom Schnellen Zähler generierte Interrupts (Zählsollwert erreicht–Interrupts)
Zielwertvergleich–Interrupts
Der aktuelle Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, in
der diese in der Tabelle gespeichert wurde. Ein Interrupt–Unterprogramm wird
ausgeführt, wenn der Istwert dem aktuellen Zielwert entspricht. Bis zu 16 Ziel-
40
Zähl–Istwert
Zielwerte in inkrementierender
Richtung
Zielwerte in dekrementierender
Richtung
2-2AbschnittCPM2A/CPM2C Schneller Zähler
werte und Interrupt–Unterprogramme können in der Tabelle für die inkrementierende oder dekrementierende Richtung eingetragen werden.
Oberer Grenzw. 1:
Unterer Grenzw. 1:
Oberer Grenzw. 2:
Unterer Grenzw. 2:
Die Interrupt–Verarbeitung wird ausgeführt, wenn der Istwert einem Zielwert in der
inkrementierenden oder dekrementierenden Richtung entspricht.
Bereichsvergleich–Interrupts
Eine Bereichsvergleich–Tabelle enthält bis zu acht Bereiche, wobei jeder Eintrag aus einem unteren und einem oberen Grenzwert sowie der entsprechenden Unterprogrammnummer gebildet wird. Das entsprechende Unterprogramm wird aufgerufen und ausgeführt, wenn der Zähl–Istwert innerhalb eines
beschriebenen Bereichs liegt.
Zähler–Istwert
Bereichsvergleichs–Bedingung 2 erfüllt.
Übereinstimmung mit
dem Zielwert während
des inkrementierenden
Zählens
Bereichsvergleichs–Bedingung 1 erfüllt.
Bereichsvergleichs–Bedingung 1 erfüllt.
Übereinstimmung mit
dem Zielwert während
des dekrementierenden
Zählens
Bereichsvergleichs–Bedingung 2 erfüllt.
Zeit
Die Interrupt–Verarbeitung wird ausgeführt, wenn eine Bereichsvergleichs–Bedingung
erfüllt ist. Darüberhinaus schalten sich die entsprechenden Bits (0 bis 7) in AR 11 ein,
wenn der Zähler–Istwert innerhalb eines Bereichs zwischen einem oberen und einem
unteren Grenzwert liegt.
Auf–/Abwärtszählungsgesteuerte Interrupts über Interrupt–Eingänge
(Zählmodus)
Ein Interrupt–Unterprogramm wird jedes Mal ausgeführt, wenn die Bedingung
erfüllt ist, d. h., dass der Zähler–Istwert dem Zähler–Sollwert (in der Inkrementier–Betriebsart) oder 0 (Dekrementier–Betriebsart) entspricht.
41
2-2-1Anwendung des Schnellen Zählers
g
gg
Die CPM2A/CPM2C CPU–Baugruppe verfügt über einen eingebauten Kanal
für einen schnellen Zähler, der Impulse bis zu 20 kHz zählen kann. Dessen Einsatz zusammen mit der Interrupt–Funktion ermöglicht eine Zielwert– oder Bereichsvergleichssteuerung, ohne die Zykluszeit zu beeinflussen.
Zählereingänge
Rücksetzeingang
2-2AbschnittCPM2A/CPM2C Schneller Zähler
SensorInkremental–Drehgeber
Angabe
DifferentialphaseImpuls plus
Eingangs–
nummer
Eingangs–
methode
Ansprechfrequenz5 kHz20 kHz20 kHz20 kHz
Zählwert–8388608 bis 83886070 bis 16777215
Zähleristwert–Speicherziel
(sehen Sie den Hinweis 2)
Interrupts
ZählerrückstellverfahrenZ–Phasensignal + Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn IR
00000Eingang Phase–AImpulseingangRechtslaufeingangImpulseingang
00001Eingang Phase–BRichtungseingangLinkslaufeingang(Sehen Sie den
00002Eingang Phase–Z (Rücksetzeingang) (sehen Sie Hinweis 1)
Differentialphasen
–eingänge (4X)
Worte SR 248 (äußerst rechte Ziffern) und SR 249 (äußerst linke Ziffern)
ZielwertvergleichBis zu 16 Zielwerte und Interrupt–Unterprogrammnummern können in der
inkrementierenden oder dekrementierenden Richtung gespeichert werden.
BereichsvergleichBis zu acht Bereiche (mit oberen und unteren Grenzen) und
Unterprogrammnummern können gespeichert werden.
00002 einschaltet, während SR 25200 gesetzt ist.
Software–Rücksetzung: der Zähler wird zurückgesetzt, wenn SR 25200
eingeschaltet wird.
PhaseneingängePhaseneingängePhaseneingänge
Eingangsmodus
Aufwärts/AbwärtsInkremental
Richtung
Hinweis 1)
Hinweis 1. Nicht als Zählereingänge verwendet Eingänge können als gewöhnliche
Eingänge verwendet werden.
2. Werden die W orte nicht als Zähleristwert–Speicherziel verwendet, können
sie als gewöhnliche IR–Worte verwendet werden.
3. SR 25200 wird in jedem Zyklus gelesen. Bis zu einem Zyklus kann für eine
Rücksetzung auf der steigenden Flanke von Phase–Z erforderlich sein.
Die folgende Tabelle zeigt die Beziehungen zwischen dem Schnellen Zähler
und anderen Funktionen der SPS der CPM2A/CPM2C–Serie.
42
Programmbeispiel
2-2AbschnittCPM2A/CPM2C Schneller Zähler
FunktionZählergesteuerte Interrupts
Synchronisierte ImpulssteuerungWird verwendet.
Eingangsgesteuerte InterruptsKann gleichzeitig verwendet werden.
Intervall–Zeitgeber–gest. InterruptsKann gleichzeitig verwendet werden.
Schneller Zähler--Eingangsgest. Interrupts (Zählmodus) Kann gleichzeitig verwendet werden.
ImpulsausgängeKann gleichzeitig verwendet werden.
Eingänge mit ImpulsspeicherungKann gleichzeitig verwendet werden.
Eingangs–ZeitkonstanteSiehe Hinweis.
UhrKann gleichzeitig verwendet werden.
Hinweis Werden die Eingänge 00000 bis 00002 für die V erwendung als Schnelle Zähler–
Eingänge eingerichtet, werden die Eingangszeitkonstanten für die entsprechenden Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in
der SPS–Konfiguration gespeichert.
Wählen Sie den Eingangsmodus
und das Rücksetzverfahren aus
Wählen Sie die zuverwendenden
Interrupts aus
Verdrahtung der Eingänge
SPS–Konfiguration (DM 6642)
Erstellen eines Kontaktplan–
Programms
Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang,
Auf–/Abwärtseingang oder Inkremental
Rücksetzverfahren: Z–Phase und Software–Rücksetzung oder nur Software–Rücksetzung
Keine Interrupts (Lesen des schnellen Zähler–Istwerts oder Lesen der Bereichs–Vergleichsergebnisse)
Zielwertvergleichs–Interrupts
Bereichswertvergleichs–Interrupts
Eingangsnummer: 00000, 00001, 00002
Schnelle Zählereinstellung
Eingangsmodus: Differentialphaseneingang, Impuls– u. Richtungseingang,
Auf–/Abwärtseingang oder Inkrement
Rücksetzverfahren: Z–Phase und Software–Rücksetzung oder Software–Rücksetzung
CTBL(63): Speicher–Vergleichstabelle, Start des Vergleichs
INI(61): Istwert ändern, Vergleich starten
PRV(62): Schnellen Zähler–Istwert lesen, Schnellen Zähler–Vergleichstatus lesen, Bereichsvergleich–
Ergebnisse lesen
SBN(92) und RET(93): Interrupt–Unterprogramm–Programm erstellen (wenn Zählungsprüfungs–
Interrupts verwendet werden)
43
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Geber–
eingänge
Schnelle Zähler–
Funktion
Eingangsmodus
Differential–
Phasenbetrieb
Impuls– u. Richtungseingang
Auf/Ab–Betrieb
Inkrementaleingang
SPS–
Konfiguration
DM 6642, Bits
00 bis 03
Abfrage einmal/Zyklus
Zähleristwert
SR 249 SR 248
Auffrischung
SPS–Konfiguration
DM 6642, Bits 08 bis 15
Zählen
Kontaktplan–Programm
CTBL (63)
INI (61)
Sofort
PRV(62)
Spezifiziertes Unterprogramm wird
ausgeführt (wenn Zählungsprü-
REGISTERVERGLEICHSTABELLEN–Befehl
Registervergleichs–
tabelle
Vergleich starten
BETRIEBSARTENSTEUERUNGS–Befehl
Istwert ändern
Start/Stopp desVergleichs
SCHNELLER ZÄHLER–ISTWERT
LESEN–Befehl
Istwert lesen
Vergleichstatus lesen
Bereichsvergleichs–Ergebnisse lesen
fungs–Interrupts verwendet werden).
Zahlungsprüfungs–
Interrupt generiert
SBN(92)
RET (93)
Bereichsvergleichs–
Ergebnisse
AR 1100 bis AR 1107
Wahl des Eingangsmodus und Rücksetzverfahrens.
Eingangsmodus
Wählen Sie den Eingangsmodus für den schnellen Zähler entsprechend dem
Signaltyp.
Differentialphase
Im Differentialphasen–Eingangsmodus wird der Zählwert, entsprechend den
zwei Differentialphasen–Signalen, mit einem Multiplikator von 4 inkrementiert
oder dekrementiert (Phase A und Phase B).
Maximalfrequenz: 5 kHz
EIN
Phase A
AUS
EIN
Phase B
AUS
Zählwert
Nms → Frequenz =
1,000
N x 4
44
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Impuls und Richtung
Im Impuls– u. Richtungseingangsmodus werden Impuls– und Richtungssignal
angelegt und der Zählwert wird entsprechend dem Richtungssignals–Zustand
inkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
Impuls–
eingang
Richtungseingang
EIN
AUS
EIN
AUS
Zählwert
Nms → Frequenz =
1,000
N
Auf–/Abwärts–Impuls
In dem Auf–/Abwärts–Impulseingangsmodus werden Rechtslauf– (Aufwärts–
impulse) und Linkslauf–Signale (Abwärtsimpulse) angelegt und der Zählwert
wird entsprechend inkrementiert oder dekrementiert.
Maximalfrequenz: 20 kHz
a
InkrementierungDekrementierung
Rechtslauf–
eingang
Linkslauf–
eingang
Zählwert
EIN
AUS
EIN
AUS
Nms → Frequenz =
1,000
N
Inkremental
Im Inkrementalmodus werden Impulssignale angelegt und der Zählwert wird mit
jedem Impuls inkrementiert. IR 00001 kann als gewöhnlicher Eingang verwendet werden.
Maximalfrequenz: 20 kHz
Impuls–
eingänge
EIN
AUS
Zählwert
Nms → Frequenz =
1,000
N
Wird der Differentialphasen–Eingangsmodus verwendet, müssen Eingangssignale über 4X–Differentialphasen–Eingänge angelegt werden. Wird ein Geber
in diesem Modus angeschlossen, entspricht der Zählwert pro Umdrehung dem
Vierfachen der Geberauflösung. Bei der Auswahl eines Gebers muss der max.
Zählwert in Betracht gezogen werden.
Zählwerte
Bereichswerte werden vom schnellen Zähler nur in der Linearzähler–Funktion
verarbeitet. Liegt der Zählwert außerhalb des zulässigen Bereichs, tritt ein
Über– oder Unterlauf ein. Der Istwert wird 0FFFFFFF, wenn ein Überlauf auftritt
45
2-2AbschnittCPM2A/CPM2C Schneller Zähler
oder FFFFFFFF, wenn ein Unterlauf vorkommt; der Vergleich wird anschließend abgebrochen.
Differentialphasen–
Eingangsmodus
Impuls– u. Richtungs–
Eingangsmodus
Auf–/Abwärts–
Impuls–Eingangsmodus
Inkrementalmodus
Unterlauf (FFFFFFFF)
Setzen Sie den Istwert zurück, um die Zählung nach einem Über– oder Unterlauf neuzustarten. (Der Istwert wird automatisch zurückgesetzt, wenn der Betrieb gestartet wird.)
Rücksetzverfahren
Eines der beiden folgenden Verfahren kann gewählt werden, um den Zähleristwert auf 0 zurückzusetzen.
Der Istwert wird zurückgesetzt, wenn ein Z–Phasen–Signal (d.h. ein Rücksetz–
eingang) eingeschaltet wird, während der Rücksetzmerker (25200) des Schnellen Zählers aktiviert ist.
Der Istwert wird zurückgesetzt, wenn der Rücksetzmerker (25200) des Schnellen Zähler gesetzt wird.
1 Abfrage
Rücksetzung
Nicht
zurückgesetzt
Nicht
zurückgesetzt
Nicht
zurückgesetzt
Der Rücksetzmerker (25200) des Schnellen Zählers wird mit jedem Zyklus aufgefrischt; somit bleibt er für mindestens eine Zyklusdauer aktivert und kann sicher gelesen werden.
Auch nach der Rücksetzung des Istwertes werden Vergleichstabellen–Speicherstatus, Vergleichausführungszustand und Bereichsvergleich–Ergebnisse
beibehalten, wie sie vor dem Rücksetzen des Istwertes bestanden. (War ein
Vergleichsvorgang vor der Istwert–Rücksetzung aktiv, wird dieser Vergleich
nach der Rücksetzung ohne Änderung fortgesetzt.)
Nach dem Rücksetzen muss der Rücksetzmerker (25200) des Schnellen Zählers ausgeschaltet werden, damit die nächste Rücksetzung ausgeführt werden
kann. Um sicher zu sein, dass er ausgeschaltet ist, muss er für mindestens einen Zyklus ausgeschaltet bleiben.
Wählen des zuverwendenden Interrupts
Schnelle
Zähler–Interrupts
Schnelle Zähler–Interrupts verwenden eine Vergleichstabelle und führen eine
Zählwertprüfung, entsprechend einer der beiden nachfolgend beschriebenen
46
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Methoden (d.h., Zielwert– oder Bereichsvergleich), durch. Ein Interrupt wird generiert, wenn die Bedingungen erfüllt sind.
Sehen Sie Abschnitt
2-1 Interrupts ”Reihenfolge der Priorität für Interrupts”
Einzelheiten über Interrupt–Prioritäten.
Wird ein Interrupt während der Ausführung eines Steuerbefehls für den Schnel-
len Zähler generiert, d.h. CTBL(63), INI(61) oder PRV(62), werden diese Befehle nicht innerhalb des Interrupt–Programms ausgeführt.
Zielwertvergleich–Interrupts
Bis zu 16 Kombinationen von Vergleichsbedingungen (Zielwert und Zählrichtung) und Interrupt–Unterprogrammnummern können in der Vergleichstabelle
eingetragen werden. Das spezifizierte Unterprogramm wird ausgeführt, wenn
der Zähler–Istwert einem Zielwert in der Vergleichstabelle entspricht.
Das Verhältnis zwischen der Zielwertvergleichs–Zählwertprüfung und der Vergleichstabelle ist bei der CPM1/CPM1A unterschiedlich. Sehen Sie die jeweiligen Handbücher für weitere Einzelheiten.
Es ist nicht möglich, mehr als eine Vergleichs–Richtungsbedingung für den gleichen Zielwert in der Vergleichstabelle zu spezifizieren.
Der Zielwert– oder Bereichsvergleich kann für Schnelle Zähler–Interrupts verwendet werden.
Bereichsvergleichs–Interrupts
Bis zu acht Kombinationen von Vergleichsbedingungen (obere und untere
Grenzwerte) und Interrupt–Unterprogrammnummern können in der Vergleichstabelle eingetragen werden. Das spezifizierte Unterprogramm wird einmal ausgeführt, wenn der Zähleristwert größer/gleich der unteren Grenze und kleiner/
gleich der oberen Grenze in der Vergleichstabelle ist.
Vergleichstabelle
Untere Grenze : 1.000
Obere Grenze: 4.000
Unterprogrammnummer:
10
Untere Grenze : 3.000
Obere Grenze: 5.000
Unterprogrammnummer:
9
Istwert
InterruptInterruptInterrupt
Unterprogramm
10 ausgeführt
Unterprogramm
9 ausgeführt
Unterprogramm
9 ausgeführt
Interrupt
Zeit
Unterprogramm
10 ausgeführt
47
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Werden gleichzeitig zwei oder mehrere Vergleichsbedingungen erfüllt (im gleichen Zyklus), wird der Interrupt für die Bedingung, die dem Anfang der Vergleichstabelle am nächsten ist, ausgeführt.
Der Zielwert– oder Bereichsvergleich kann für Schnelle Zähler–Interrupts verwendet werden.
Wird ein Interrupt während der Ausführung eines Steuerbefehls für den Schnellen Zähler generiert, d.h. CTBL(63), INI(61) oder PRV(62), werden diese Befehle nicht innerhalb des Interrupt–Programms ausgeführt.
Dies gilt ebenfalls für die Generierung eines Interrupts während der Ausführung
eines Steuerbefehls für den Schnellen Zähler im normalen Programm. Diese Situation kann mittels der folgenden Programmierung vermieden werden.
Verdrahtung der
Eingänge
Verfahren 1
Unterbinden von Interrupts
im normalen Programmbereich, während der Ausführung des Befehls.
Verfahren 2
Erneutes Ausführen des
nicht ausführbaren Befehls
im normalen Programmbereich.
Normaler Programmbereich
Interrupt–Programmbereich
Ein Interrupt–Unterprogramm wird durch SBN(92) und RET(93), wie ein normales Unterprogramm definiert.
Eine “SBS UNDEFD”–Warnung wird während einer Interrupt–Unterprogrammdefinition bei der Programmprüfung generiert, aber die Ausführung läuft normal
weiter.
Verdrahten Sie die Eingänge, wie es in den folgenden Abbildungen gezeigt wird,
entsprechend des Eingangsmodus und des Rücksetzverfahrens.
CPM2A–Eingänge
48
Differentialphasen–Eingangsmodus
00000: Eingang Phase A
00001: Eingang Phase B
00002: Eingang Phase Z
Impuls– u. Richtungs–EingangsmodusInkrementalmodus
Zähler–Rücksetzverfahrens
0: Z–Phase und Software–Rücksetzung
1: Software–Rücksetzung
00: Nicht verwenden
01: Als Schneller Zähler
02: Synchronisierte Impulssteuerung
(10 Hz bis 500 Hz)
03: Synchronisierte Impulssteuerung
(20 Hz bis 1 kHz)
04: Synchronisierte Impulssteuerung
(300 Hz bis 20 kHz)
DM 6642, Bits 04 bis 07
stellung
0, 1, 2 oder
4
0 oder 1
01
50
Die neuen Einstellungen der Systemeinstellung werden wirksam, wenn der Betrieb beginnt (Wechsel von der PROGRAM–Betriebsart in die MONITOR– oder
RUN–Betriebsart) oder nach Erneutem Einschalten der Versorgungsspannung
der CPM2A/CPM2C.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
()()
Kontaktplan–
Programmierung
Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung beziehenden Befehle.
BefehlSteuerungBetrieb
(@)CTBL(63)
(@)INI(61)
(@)PRV(62)
(@)INT(89)
Zielwertvergleichstabelle speichern
Bereichsvergleichstabelle speichern
Zielwertvergleichstabelle speichern und
Vergleich beginnen
Bereichsvergleichstabelle speichern und
Vergleich beginnen
Vergleich startenStartet den Vergleich mit der gespeicher-
Vergleich beendenBricht den Vergleich ab.
Istwert ändernÄndert den schnellen Zähler–Istwert.
Istwert lesenLiest Istwert des Schnellen Zählers.
Status lesenLiest den Status des Schnellen Zählers.
Bereichsvergleichs–
Ergebnisse lesen
Maskierung aller
Interrupts
Demaskierung aller
Interrupts
Speichert die Zielwertvergleichstabelle
Speichert die Bereichsvergleichstabelle
Speichert die Zielwertvergleichstabelle
und beginnt den Vergleich
Speichert die Bereichsvergleichstabelle
und beginnt den Vergleich
Die folgende Tabelle enthält die sich auf die Schnelle Zähler–Steuerung beziehende Datenbereiche.
WortBitsNameInhalt
248
249
25200Schneller Zähler–
AR11
00 bis 15
00 bis 15
00 bis 07Schneller Zähler–
08Schneller Zähler–VergleichEIN:Vergleich aktiv
09Schneller Zähler–Istwert–
Schneller Zähler-IstwertLiest den Istwert des
Schnellen Zählers.
Wird dieses Bit eingeschal-
Rücksetzung
Bereichsvergleichs–
Ergebnisse
Überlauf/Unterlauf
tet, wird eine Software–
Rücksetzung für den schnellen Zähler ausgelöst.
EIN:Bedingung erfüllt
AUS: Bedingung nicht erfüllt
AUS: Vergleich abgebrochen
EIN:Überlauf/Unterlauf
AUS: Normal
Zielwertvergleichstabelle speichern
Zielwertvergleichstabelle speichern und Vergleich beginnen
Diese Funktionen speichern für den Zielwertvergleich eine Vergleichstabelle
zur Zählwertüberprüfung in der CPM2A/CPM2C . Es ist auch möglich, den Vergleich zusammen mit der Speicherung zu beginnen.
Zielwertvergleichstabelle speichern
(@)CTBL(63)
000
Schnittstellenbezeichner (000: Schneller Zähler)
002
Modusbezeichnung (002: Nur Zielwertvergleichstabelle speichern)
Anfangswort der Vergleichstabelle
S
51
Zielwertvergleichstabelle speichern und Vergleich beginnen
Zu vergleichenden Zählwert speichern.
Die äußerste linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impulseingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Speichern Sie die Richtung des Vergleichs und die
bei einer Entsprechung auszuführende Unterpro–
grammnummer.
Die höherwertigen Ziffern zeigen die Richtung
an (Inkremental/Dekremental).
Inkrementrichtung: 0000 bis 0049
Dekrementrichtung: F000 bis F049
Es ist nicht möglich, mehr als eine Vergleichs–Richtungsbedingung für den gleichen Zielwert in der Vergleichstabelle zu spezifizieren.
Sobald eine V ergleichstabelle erstellt wurde, wird sie in der CPM2A/CPM2C gespeichert, falls noch keine andere Vergleichstabelle gespeichert wurde und die
Betriebsart nicht auf PROGRAM geändert wird (und solange die Versorgungsspannung nicht ausgeschaltet wird).
Bereichsvergleichstabelle speichern
Speichern der Bereichsvergleichstabelle und Vergleich beginnen
Diese Funktionen speichern eine Vergleichstabelle in der CPM2A/CPM2C für
die Zählwertüberprüfung des Bereichsvergleichs. Es ist auch möglich, den Vergleich zusammen mit der Speicherung zu beginnen.
Bereichsvergleichstabelle speichern
(@)CTBL(63)
000
Schnittstellenbezeichner (000: Schneller Zähler)
003
Modusbezeichnung (003: Nur Bereichsvergleichstabelle speichern)
Anfangswort der Vergleichstabelle
S
Bereichsvergleichstabelle speichern und Vergleich beginnen
(@)CTBL(63)
Schnittstellenbezeichner (000: Schneller Zähler)
000
Modusbezeichnung (001: Bereichsvergleichstabelle speichern und
001
Vergleich beginnen)
S
Anfangswort der Vergleichstabelle
52
Bereichsvergleichstabelle
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Untere Grenze 1
(niederwertige 4 Ziffern)
Untere Grenze 1
(höherwertige 4 Ziffern)
Obere Grenze 1
(niederwertige 4 Ziffern)
Obere Grenze 1
(höherwertige 4 Ziffern)
Unterprogrammnummer
Untere Grenze 8
(niederwertige 4 Ziffern)
Untere Grenze 8
(höherwertige 4 Ziffern)
Obere Grenze 8
(niederwertige 4 Ziffern)
Obere Grenze 8
(höherwertige 4 Ziffern)
Unterprogrammnummer
Acht Bereichsvergleichsbedingungen, bestehend aus
oberen und unteren Grenzen und Unterprogrammnum-
Bereichsvergleichs–
Bedingung 1.
mern müssen spezifiziert werden.
Obere und untere Grenzen (niederwertig, höherwertig)
Obere und untere Grenzen speichern.
Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impulseingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Unterprogrammnummer
Speichern der Unterprogrammnummer, die ausgeführt wird,
wenn die Bereichsvergleichsbedingung erfüllt ist.
Bereichsvergleichs–
Bedingung 8.
0000 bis 0049
Werden weniger als 8 Vergleichsbereiche verwendet,
muss FFFF für den Rest spezifiziert werden.
Werden gleichzeitig zwei oder mehrere Vergleichsbedingungen erfüllt (im gleichen Zyklus), wird der Interrupt für die Bedingung, die dem Anfang der Vergleichstabelle am nächsten ist, ausgeführt.
Sobald eine V ergleichstabelle erstellt wurde, wird sie in der CPM2A/CPM2C gespeichert, falls noch keine andere Vergleichstabelle gespeichert wurde und die
Betriebsart nicht auf PROGRAM geändert wird (und solange die Versorgungsspannung nicht ausgeschaltet wird).
Vergleich beginnen/beenden
Der Vergleich kann, entsprechend der Tabelle, die über CTBL(63) in der
CPM2A/CPM2C gespeichert wurde, begonnen oder beendet werden.
Vergleich beginnen
(@)INI(61)
Vergleich beenden
(@)INI(61)
000
Schnittstellenbezeichner (000: Schneller Zähler)
000
Steuerbezeichnung (000: Vergleich beginnen)
000
Fest: 000
000
Schnittstellenbezeichner (000: Schneller Zähler)
001
Steuerbezeichnung (001: Vergleich beenden)
000
Fest: 000
53
(@)INI(61)
Istwert ändern
Diese Funktion ändert den Istwert des schnellen Zählers.
000
Schnittstellenbezeichner (000: Schneller Zähler)
002
Steuerbezeichnung (002: Istwert ändern)
C
Anfangswort der zu ändernden Istwertdaten
2
2-2AbschnittCPM2A/CPM2C Schneller Zähler
C
2
C2+1
(@)PRV(62)
D
D+1
Niederwertige 4 Ziffern
Höherwertige 4 Ziffern
Zu ändernde Istwert–Daten (nierwertig, höherwertig)
Speichern der zu ändernden Istwert–Daten.
Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–Eingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
Während eines Zielwertvergleichs tritt kein Interrupt auf, auch wenn der in der
Vergleichstabelle eingetragene Zielwert durch INI(61) geändert wird.
Zeitgeber–Istwert lesen
Diese Funktion liest den Istwert des schnellen Zählers.
Einsatz eines Befehls
000
Schnittstellenbezeichner (000: Schneller Zähler)
000
Steuerbezeichnung (000: Istwert lesen)
Anfangswort zur Speicherung des Istwerts
C
2
Niederwertige 4 Ziffern
Höherwertige 4 Ziffern
Istwert (niederwertig, höherwertig)
Der gelesene Istwert wird hier gespeichert.
Die äußerst linke Stelle (0/F) enthält das Vorzeichen (+/–).
Differentialphasen–Eingangsmodus
Impuls– u. Richtungs–Eingangsmodus
Auf–/Abwärts–Impuls–Eingangsmodus
F8388608 bis 08388607
Inkrementalmodus
00000000 bis 16777215
54
Einsatz der Datenbereiche
Der Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in den
Worten 248 und 249 gespeichert.
Anfangswort zur Speicherung des Bereichsvergleich–Ergebnisses
Mit 1. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 2. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 3. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 4. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 5. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 6. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 7. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 8. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Verwendung der Datenbereiche
Das Bereichsvergleich–Ergebnis wird, wie nachfolgend dargestellt, in AR 1100
bis AR 1107 gespeichert.
Mit 1. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 2. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 3. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 4. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 5. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 6. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 7. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
Mit 8. Bedingung übereinstimmend (0: K. Übereinstimm.; 1: Übereinstimm.)
55
Anwendungsbeispiele
Zielwertvergleich
2-2AbschnittCPM2A/CPM2C Schneller Zähler
AR 1100 bis AR 1107 werden bei jedem Zyklus aufgefrischt, somit kann eine
Diskrepanz zum genauen Istwert des Bereichsvergleich–Ergebnisses zu einem
bestimmten Zeitpunkt auftreten.
Wird das Bereichsvergleich–Ergebnis durch Ausführung von PRV(62) gelesen,
werden AR 1100 bis AR 1107 zum gleichen Zeitpunkt aufgefrischt.
Maskieren/demaskieren aller Interrupts
Sehen Sie Abschnitt
Maskierung und Demaskierung aller Interrupts.
Beschreibung
In diesem Beispiel werden spezifizierte Interrupt–Unterprogramme ausgeführt,
indem der Istwert des schnellen Zählers mit fünf Werten, die als Zielwertvergleichstabelle eingerichtet werden, verglichen wird. Mit jedem Interrupt werden
die Daten in 0000 DM bis 0004 DM um Eins inkrementiert.
Verdrahtung (CPM2A)
2-1-1 Interrupt–Eingänge
für Einzelheiten bezüglich der
E6B2–CWZ6C
Inkremental–
Drehgeber
Braun
Orange
Weiß
Schwarz
Blau
56
Verdrahtung (CPM2C)
Eing.–klemmen
2-2AbschnittCPM2A/CPM2C Schneller Zähler
E–steckverbind.
Braun
Orange
Weiß
Schwarz
Braun
Orange
Weiß
Schwarz
Blau
Blau
Inkremental–
Drehgeber
Inkremental–
Drehgeber
SPS–Konfiguration
150
DM 66420
100
0: Differentialphasen–Betrieb
0: Durch Z–Phasen–Signal + Software–Rücksetzung
zurückgesetzt
01: Verwendung als Schneller Zähler
57
EIN für 1 Zyklus am
Anfang des Betriebs
Immer EIN
Immer EIN
Programmierung
(71)
Zielwertvergleichstabelle speichern und Vergleich beginnen
(63)
Schneller Zähler
Zielwertvergleichstabelle speichern und Vergleich beginnen
Anfangswort der Vergleichstabelle
(92)
(38)
(93)
(92)
(38)
(93)
Vergleich 2
Vergleich 4
Anzahl der Vergleiche: 5
Zähler–Istwert:
10000
Inkrement, Unterprogr.–Nr. 049
Zähler–Istwert:
3000
Inkrement, Unterprogr–Nr. 040
Zähler–Istwert:
00000000
Dekrement, Unterprogr.–Nr 010
Zähler–Istwert:
–00003000
Dekrement, Unterprogr.–Nr. 041
Zähler–Istwert:
–00010000
Dekrement, Unterprogr–Nr. 048
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
Immer EIN
Immer EIN
Immer EIN
(92)
(92)
(92)
(38)
(93)
(38)
(93)
(38)
(93)
(01)
Vergleich 5
Vergleich 1
Vergleich 3
58
Bereichsvergleich:
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Beschreibung
In diesem Beispiel werden spezifizierte Interrupt–Unterprogramme ausgeführt,
indem der Istwert des schnellen Zählers mit fünf Bereichen, die als Bereichsvergleichstabelle eingerichtet werden, verglichen wird. Mit jedem Interrupt werden
die Daten in DM 0000 bis DM 0004 um Eins inkrementiert.
Verdrahtung (CPM2A)
E6B2–CWZ6C
Inkremental–
Drehgeber
Verdrahtung (CPM2C)
Eing.–klemmen
Braun
Blau
Orange
Schwarz
Braun
Weiß
Blau
Inkremental–
Drehgeber
E–steckverbind.
Orange
Weiß
Schwarz
Braun
Orange
Weiß
Schwarz
Blau
Inkremental–
Drehgeber
59
SPS–Konfiguration
150
DM 66420
100
2-2AbschnittCPM2A/CPM2C Schneller Zähler
0: Differentialphasen–Betrieb;
0: Durch Z–Phasen–Signal + Software–Rücksetzung
zurückgesetzt
01: Verwendung als Schneller Zähler
60
Programmierung
EIN für 1 Zyklus am Anfang
des RUN/MONITOR–Betriebs
(92)
Immer EIN
(92)
Immer EIN
(92)
Immer EIN
(92)
Immer EIN
(71)
Bereichsvergleichstabelle speichern und Vergleich beginnen
(63)
Schneller Zähler
Bereichsvergleichstabelle speichern und Vergleich beginnen
Anfangswort der Vergleichstabelle
Unt. Grenze:
9.000
Ober. Grenze:
(38)
(93)
(38)
(93)
(38)
(93)
(38)
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
10.000
Unterprogr. 040
Unt. Grenze:
7.000
Ober. Grenze:
8.000
Unterprogr. 041
Unt. Grenze:
–3.000
Ober. Grenze:
3.000
Unterprogr. 010
Unt. Grenze:
–8.000
Ober. Grenze:
–7.000
Unterprogr. 042
Unt. Grenze:
–10.000
Ober. Grenze:
–9.000
Unterprogr. 043
Vergleich 6
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Vergleich 1
Vergleich 2
Vergleich 3
Vergleich 4
Vergleich 5
Nicht verwendet.
(93)
Immer EIN
(92)
(38)
(93)
(01)
Vergleich 7
Vergleich 5
Vergleich 8 Nicht verwendet.
2-2-2Eingangsgesteuerte Interrupts im Zählmodus
Die vier eingebauten Interrupt–Eingänge der CPM2A/CPM2C CPU–Baugruppe können im Zählmodus als Eingänge mit einer Ansprechfrequenz von bis
Nicht verwendet.
61
2-2AbschnittCPM2A/CPM2C Schneller Zähler
FFFF)
zu 2 kHz verwendet werden. Diese Eingänge können als Aufwärts– oder Abwärtszähler verwendet werden, die einen Interrupt auslösen (d.h. Ausführung
eines Interrupt–Unterprogrammes), wenn der Zählwert dem Sollwert entspricht.
Intterupt–
Eingänge
(Zählmodus)
Zähl–Interrupt
Normales
Programm
Interrupt–
Programm
Eingang
(Hinweis 2)
00003
00004
00005
000063003
ZählenInterrupt–
0 bis 65535
(0000 bis
Unter–
programm
Unterprogramm–
Nummer
0000
1001
2002
nummer
(Hinweis 3)
Ansprech–
frequenz
2 kHz
Hinweis 1. Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht
vorhanden.
2. Die Eingänge 00003 bis 00006 können für jede der folgenden Funktionen
verwendet werden: als Interrupt–Eingänge, als Interrupt–Eingänge (Zählmodus) oder als Eingänge mit Impulsspeicherung. Werden diese Eingänge
nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als
gewöhnliche Eingänge eingesetzt werden.
3. Unterprogrammnummern 000 bis 003 sind die Unterprogrammnummern
für Interrupt–Programme, die gestartet werden, wenn Interrupt–Signale
oder Auf–/Abwärtszähl–Interrupts für Interrupt–Eingänge (Zählmodus) generiert werden. Werden diese Eingänge nicht für einen der zuvor beschriebenen Zwecke verwendet, können sie als gewöhnliche Eingänge eingesetzt werden.
62
VorsichtObwohl 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 Systemfehler (FALS 9F) auftreten, wodurch der Betrieb abgebrochen wird. Das Intervall zwischen Ausführungen von IORF(97) sollte mindestens 1,3 ms + gesamte Ausführungszeit des Interrupt–Unterprogramms betragen.
Die folgende Tabelle zeigt die Beziehungen zwischen eingangsgesteuerte Interrupts (Zählmodus) und anderen Funktionen der SPS der CPM2A/CPM2C–
Serie.
FunktionEingangsgesteuerte Interrupts
(Zählmodus)
Synchronisierte ImpulssteuerungKann gleichzeitig verwendet werden.
Eingangsgesteuerte Interrupts(Sehen Sie den Hinweis 1)
Intervall–Zeitgeber–gest. InterruptKann gleichzeitig verwendet werden.
Schneller ZählerKann gleichzeitig verwendet werden.
Eingangsgest. Interrupts (Zählmodus) (Sehen Sie den Hinweis 1)
ImpulsausgängeKann gleichzeitig verwendet werden.
Eingänge mit Impulsspeicherung(Sehen Sie den Hinweis 1)
Eingangs–Zeitkonstante(Sehen Sie den Hinweis 2)
UhrKann gleichzeitig verwendet werden.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Hinweis 1. Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funk-
tionen konfiguriert werden: Interrupt–Eingang, Interrupt–Eingang (Zählmodus) oder Eingang mit Impulsspeicherung.
2. Werden die Eingänge 00003 bis 00006 als Interrupt–Eingänge (Zählmodus) konfiguriert, werden die Eingangszeit–Konstanten der entsprechenden Eingänge deaktiviert. Die Eingangszeit–Konstanten bleiben jedoch in
der SPS–Konfiguration gespeichert.
Verfahren zum Einsatz von Interrupt–Eingängen im Zählmodus
Wählen Sie entweder die Inkrementier– oder Dekrementierzählweise
Verdrahtung der Eingänge
SPS–Konfiguration (DM 6628)
Erstellen eines Kontaktplan–
Programms
Eingangsnummer: 00003 bis 00006 (00003
oder 00004 für CPM2C CPU–Baugruppen mit
10 E/A–Anschlüssen)
1: Verwendung als Interrupt–Eingänge
(eingangsgesteuerte Interrupts oder
Zählmodus).
INI(61): Zähler–Istwert ändern
INT(89): Sollwert* des Zählers auffrischen.
PRV(62): Zähler–Istwert lesen
SBN(92) und RET(93): Zur Erstellung von
Interrupt–Unterprogrammen.
*Verwendung nur für Auf–/Abwärtszähl–Interrupts.
63
Eingänge
Zähler (2 kHz) 0
Eingangsgesteuerte
Interrupts im Zählmodus
Interrupt wird
generiert.
Spezifiziertes Unterprogramm wird
ausgeführt.
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Zähler (2 kHz) 1
Zähler (2 kHz) 2
Zähler (2 kHz) 3
SPS–Konfiguration
DM 6628
Kontaktplan–Programm
INT(89)
INI (61)
INTERRUPT–
Verarbeitungsbefehl
Zähler–Sollwert
Zähler 0
Zähler 1
Zähler 2
Zähler 3
BETRIEBSARTENSTEUERUNGS–Befehl
Istwert ändern
Einmal pro Zyklus
Zähler–Istwert
Zähler 0
Zähler 1
Zähler 2
Zähler 3
SR 240
SR 241
SR 242
SR 243
Auffrischung
SR 244
SR 245
SR 246
SR 247
Sofort
PRV(62)
SBN(92)
RET (93)
SCHNELLER ZÄHLER–
ISTWERT LESEN–Befehl
Zähler–Istwert
lesen
Zuordnung der Interrupt–
Unterprogramme
Hinweis Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
Wahl der Inkrementier–
oder
Dekrementierzählweise.
Die auszuführenden Interrupt–Unterprogramme sind den entsprechenden Interrupt–Eingängen fest zugeordnet.
EingangInterrupt–
Nummer
000030000
000041001
00005*2002
00006*3003
Unterprogramm–
nummer
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vorhanden.
Jeder der Eingänge 00003 bis 00006 kann nur für eine der folgenden Funktionen konfiguriert werden: Interrupt–Eingang, Interrupt–Eingang (Zählmodus)
oder Eingang mit Impulsspeicherung.
Bei eingangsgesteuerten Interrupts im Zählmodus kann entweder eine inkrementierende oder dekrementierende Zählung verwendet werden.
Inkrementierender Zählmodus
Während der Sollwert aufgefrischt wird, wird der Zählwert, beginnend mit 0, in-
64
2-2AbschnittCPM2A/CPM2C Schneller Zähler
krementiert und das Interrupt–Unterprogramm ausgeführt, wenn der Istwert
dem Sollwert entspricht.
Istwert
Das Unterprogramm wird ausgeführt, wenn die
Zählung beendet ist; der Istwert wird auf 0 zu-
Soll–
wert
Inkrementieren
rückgesetzt.
Inkrementieren
Verdrahtung der
Eingänge
Interrupt
Unterprogramm wird ausgeführt
Return
Interrupt
Unterprogramm wird ausgeführt
Zeit
Dekrementierender Zählmodus
Nachdem der Sollwert gelesen wurde, wird der Zählwert in Richtung 0 dekrementiert und das Interrupt–Unterprogramm ausgeführt, wenn der Istwert 0 erreicht.
Istwert
Soll–
wert
Dekrementieren
Interrupt
Unterprogramm wird ausgeführt
Das Unterprogramm wird ausgeführt, wenn
die Zählung beendet ist; der Istwert wird auf
Sollwert zurückgesetzt.
Dekrementieren
Zeit
Interrupt
Unterprogramm wird ausgeführt
Verdrahten Sie die Eingangsklemmen einer CPM2A wie in der folgenden Abbildung gezeigt.
CPU–Baugruppe mit nur 10
Ein–/Ausgängen kann nur als
normaler Eingang verwendet
werden, Eingang 00006 ist
nicht vorhanden.
SPS–Konfiguration
Die folgende Tabelle enthält die Einstellungen im SPS–Konfigurationsbereich,
die mit der Verwendung der Interrupt–Eingänge zusammenhängen.
WortBitsFunktionEin–
stellung
DM 6628
00 bis03Einstellung für
Eingang 00003
04 bis07Einstellung für
Eingang 00004
08 bis11Einstellung für
Eingang 00005
12 bis15Einstellung für
Eingang 00006
0: Normaler Eingang
1: Int
(eingangsgesteuerter
Interrupt oder Zählmodus)
2: Schneller Eingang
pt–Eingän
1
Hinweis *Eingang 00005 in der CPM2C CPU–Baugruppe mit nur 10 Ein–/Ausgängen
kann nur als normaler Eingang verwendet werden, Eingang 00006 ist nicht vorhanden.
Die Einstellung wird wirksam, wenn die Betriebsart geändert wird (von PROGRAM auf MONITOR/RUN) oder die Spannungsversorgung der CPM2A/
CPM2C eingeschaltet wird.
66
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Kontaktplan–
Programmierung
Die folgende Tabelle enthält die Befehlsfunktionen, die sich auf die eingangsgesteuerte Interrupts (Zählmodus) beziehen.
BefehlSteuerungBetrieb
(@)INT(89)
(@)INI(61)Istwert ändernÄndert den Istwert des Zählers.
(@)PRV(62) Istwert lesenLiest den Istwert des Zählers.
Sollwert des Aufwärtszählers auffrischen
Sollwert des Abwärtszählers auffrischen
Alle Interrupts
maskieren
Alle Interrupts
demaskieren
Frischt den Sollwert des Zählers auf und
beginnt die Aufwärtszählung.
Frischt den Sollwert des Zählers auf und
beginnt die Abwärtszählung.
Gibt alle Interrupts, einschließlich eingangsgesteuerte Interrupts, Intervall–Zeitgeber–gesteuerte Interrupts, zählergesteuerte Interrrupts, usw. frei.
Die auf eingangsgesteuerten Interrupts (Zählmodus) bezogenen Funktionen
werden entsprechend den Datenbereichen ausgeführt, die in der folgenden Tabelle dargestellt sind.
WortBitsNameInhalt
24000 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 0
24100 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 1
24200 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 2
24300 bis 15 Sollwert für E–gest. Interrupt (Zählmodus) 3
24400 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 0
24500 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 1
24600 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 2
24700 bis 15 Istwert für E–gest. Interrupt (Zählmodus) 3
Diese Funktionen speichert die Sollwerte der Zähler und frischt diese über
INT(89) auf. Auf diese Weise beginnen die Zähler den Zählbetrieb für die Interrupt–Eingänge (Zählmodus) und erlauben Interrupts.
Speichern von Sollwerten
Die Sollwerte der Zähler werden in den Worten 240, 241, 242 und 243 gespeichert.
SR 240
SR 241
SR 242
SR 243
Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 0: 0000 bis FFFF
Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 1: 0000 bis FFFF
Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 2: 0000 bis FFFF
Sollwert für eingangsgesteuerten Interrupt (Zählmodus) 3: 0000 bis FFFF
67
Beginnen des Zählbetriebs und Freigabe von Interrupts
Aufwärtszähler
(@)INT(89)
004
Interrupt–Steuercode (004: Sollwert des Aufwärtszählers auffrischen)
000
Fest: 000
C
2
Steuerdaten–Wort
Abwärtszähler
(@)INT(89)
003
Interrupt–Steuercode (003: Sollwert des Abwärtszählers auffrischen)
0: Sollwert auffrischen
1: Sollwert nicht auffrischen
Hinweis Wird INT(89) ausgeführt, um Interrupts während des Zählerbetriebs (Interrupt–
Steuerbezeichnung 000) zu maskieren, wird der Zählerbetrieb abgebrochen
und der Zähler–Istwert zurückgesetzt. Um den Zähler erneut zu verwenden,
muss der Zählerbetrieb wieder gestartet werden, wie es zuvor beschrieben
wurde.
Die Worte SR 244 bis SR 247 werden in jedem Zyklus aufgefrischt, somit kann
zu einem bestimmten Zeitpunkt eine Diskrepanz zum genauen Istwert auftreten.
Die Worte SR 244 bis SR 247 können nicht als Arbeitsworte verwendet werden,
auch wenn keine eingangsgesteuerten Interrupts (Zählmodus) verwendet werden.
Wird der Istwert gelesen, indem PRV(62) ausgeführt wird, werden die Worte
244 und 247 zum gleichen Zeitpunkt aufgefrischt.
Maskieren/demaskieren aller eingangsgesteuerte Interrupts
Sehen Sie Abschnitt
2-1-1 Eingangsgesteuerte Interrupts
für Einzelheiten be-
züglich der Maskierung und Demaskierung aller Interrupts.
In diesem Beispiel wird der Istwert jedes Mal dekrementiert, wenn Eingang
00003 eingeschaltet wird, und DM 0000 wird bei jedem hundertsten (64 hex)
Einschalten von Eingang 00003 um Eins durch ein Interrupt–Unterprogramm
inkrementiert.
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2A.
Eing.–klemmen
Eingabegerät
Das folgende Diagramm zeigt die Eingangsverdrahtung in der CPM2C.
E.–steckverbind.
Eingabegerät
Eingabegerät
69
SPS–Konfiguration
Programmierung
DM 66280
EIN für 1 Zyklus am
Anfang des Betriebs
150
001
Spezifiziert 00003 als Interrupt–Eingang (Zählmodus). Die
Eingänge 00004 bis 00006 werden als normale Eingänge verwendet.
Löscht den Inkrementbereich (DM 0000).
Zählereinstellung dekrementieren
Zähler–Sollwert: 64 hex (100 dez.)
Speichert den Sollwert in Wort 240.
(89)
Startet den Zähler mit Eingang 00003 als Interrupt–Eingang (Zählmodus).
Frischt den Zähler–Sollwert (Abwärtszähler) auf.
immer 000
Spezifiziert Eingang 00003.
(Andere werden ausmaskiert.)
2-2AbschnittCPM2A/CPM2C Schneller Zähler
Wird einmal ausgeführt, wenn die Zählung
beendet ist.
70
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
2-3CPM1/CPM1A–Interrupt–Funktionen
In diesem Abschnitt werden die Einstellungen und Verfahren für die Verwendung der CPM1/CPM1A–Interrupt–Funktionen beschrieben.
2-3-1Arten von Interrupts
Die CPM1/CPM1A verfügt über die drei folgenden Interrupt–Funktionen:
Eingangs–Interrupts
Die CPM1/CPM1A verfügen über zwei oder vier Interrupt–Eingänge. Eine Interrupt–Verarbeitung erfolgt, sobald einer dieser Eingänge von einem externen
Gerät auf EIN gesetzt wird.
Intervall–Zeitgeber–Interrupts
Die Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einen
Intervall–Zeitgeber ausgelöst.
Schneller Zähler–Interrupts
Der Schnelle Zähler zählt die an einen der CPU–Eingänge 00000 bis 00002 anliegenden Eingangs–Impulse. Die Interrupt–Verarbeitung wird, entsprechend
des Istwertes des integrierten Schnellen Zählers, ausgeführt.
Interrupt–PrioritätWenn ein Interrupt generiert wird, wird die spezifizierte Interrupt–Verarbei-
tungs–Routine ausgeführt. Interrupts haben die folgende Prioritätsordnung:
Wird während der Interrupt–Verarbeitung ein Interrupt mit höherer Priorität
empfangen, wird der aktuelle Betrieb abgebrochen und stattdessen der neu anliegende Interrupt verarbeitet. Erst nach der vollständigen Ausführung des Unterprogrammes wird die Verarbeitung des vorhergehenden Interrupts wieder
aufgenommen.
Wird während der Interrupt–Verarbeitung ein Interrupt mit geringer oder gleicher Priorität ausgelöst, wird der neu anliegende Interrupt nach der vollständigen Abarbeitung des aktuellen Unterprogrammes verarbeitet.
Werden zwei Interrupts gleicher Priorität gleichzeitig empfangen, werden sie in
folgender Reihenfolge ausgeführt:
Beachten Sie die folgenden Vorsichtsmaßnahmen bei der Verwendung von Interrupt–Programmen:
1. Ein neuer Interrupt kann innerhalb eines Interrupt–Programms bestimmt
werden. Weiterhin kann ein Interrupt innerhalb eines Interrupt–Programms
gelöscht werden.
2. Ein anderes Interrupt–Programm kann nicht innerhalb eines Interrupt–Programms geschrieben werden.
3. Ein Unterprogramm kann nicht innerhalb eines Interrupt–Programms geschrieben werden. Verwenden Sie den SUBROUTINE DEFINE–Befehl
SBN (92) nicht innerhalb eines Interrupt–Programms.
4. Ein Interrupt–Programm kann nicht innerhalb eines Unterprogrammes geschrieben werden. Schreiben Sie kein Interrupt–Programm zwischen einem SUBROUTINE DEFINE–Befehl (SBN (92)) und einem RETURN–Befehl (RET (93)).
Die als Interrupt verwendeten Eingänge können nicht als normale Eingänge
verwendet werden.
Die folgenden Befehle können nicht in einem Interrupt–Unterprogramm ausgeführt werden, wenn ein Befehl zur Steuerung des Schnellen Zählers im Hauptprogramm ausgeführt wird:
INI(61), PRV(62) oder CTBL(63)
Die folgenden Verfahren können zur Umgehung dieser Einschränkung genutzt
werden:
71
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Verfahren 1
Die gesamte Interrupt–Verarbeitung kann während der Befehlsauführung maskiert werden.
@INT(89)
100
000
000
INI (61)
000
000
000
@INT(89)
200
000
000
Verfahren 2
Führen Sie den Befehl wieder im Hauptprogramm aus.
1, 2, 3...
1. In der nachfolgenden Abbildung ist der Programmabschnitt des Hauptprogramms dargestellt.
@PRV(62)
000
002
DM 0000
LR 0000
CTBL (63)
000
000
DM 0000
RSET LR 0000
2. In der nachfolgenden Abbildung ist der Programmabschnitt des Interrupt–
Unterprogrammes dargestellt.
SBN(92) 000
25313
@CTBL(63)
000
000
DM 0000
72
25503
LR
0000
Hinweis 1. Definieren Sie Interruptroutinen am Ende des Hauptprogramms mit dem
Befehl SBN(92) und RET(93) wie bei normalen Unterprogrammen.
2. Bei der Definierung einer Interrupt–Routine tritt eine “SBS UNDEFD”–Warnung während der Programmprüfung auf, das Programm wird
jedoch normal ausgeführt.
2-3-2Eingangs–Interrupts
gpp
j
,
(Zeitbiszur
Int
C
)
g)
CPM1A 30CDj j
Die CPU–Baugruppen mit 10 Ein–/Ausgängen (CPM1–10CDRj und
CPM1A–10CDRj) verfügen über zwei Interrupt–Eingänge (00003 und 00004).
Die CPU–Baugruppen mit 20, 30 und 40 Ein–/Ausgängen (CPM1–20CDRj,
CPM1A–20CDRj, CPM1–30CDRj(–V1), CPM1A–30CDRj und
CPM1A–40CDRj) verfügen über vier Interrupt–Eingänge (00003 bis
00006).
Es gibt zwei Betriebsarten für die Verarbeitung von eingangsgesteuerte Inter-
rupts: den eingangsgesteuerten Interrupt–Modus und den Zählmodus.
CPM1 SPS
CPU–Baugruppen mit 10 Ein–/Ausgängen
(CPM1–10CDRj
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
CPU–Baugruppen mit 20 und 30 Ein–/
)
00003
00004
Ausgängen (CPM1–20CDRj und
CPM1–30CDRj(–V1))
00003
00004
00005
00006
CPM1A SPS
CPU–Baugruppen mit 10
Ein–/Ausgängen
(CPM1A–10CDRj)
Hinweis Werden keine eingangsgesteuerte Interrupts verwendet, können Sie die Ein-
24VDC
CPU–BaugruppeEin–Interrupt–
NC
CPU–Baugruppen mit 20, 30 und 40
Ein–/Ausgängen (CPM1A–20CDRj und
CPM1A–30CDRj) CPM1A–40CDRj)
gangpnummer
Ansprechzeit
Interrupt–
Modus
CPM1-10CDR-j
CPM1A-10CDj-j
CPM1-20CDR-j
CPM1A-20CDj-j
PM1-30CDR-j(-V1
CPM1A-30CDj-j
CPM1A-40CDj-j
0000300
0000401
0000300
0000401
0000502
0000603
max. 0,3 ms1 kHz
(Zeit bis zur
Ausführung des
p
–
errupt–
Programms)
gänge 00003 bis 00006 als normale Eingänge verwenden.
Zählmodus
Interrupt–Eingangs–
Einstellungen
Eingänge 00003 bis 00006 müssen als Interrupt–Eingänge in DM 6628 eingestellt werden, falls sie für eingangsgesteuerte Interrupts in der CPM1/CPM1A
benutzt werden sollen. Die entsprechende Stelle muss auf 1 eingestellt werden,
wenn der Eingang als Interrupt–Eingang (eingesteuerter Interrupt oder Zählmodus) verwenden werden soll; bei einer V erwendung als normaler Eingang muss
0 eingestellt werden.
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–UnterprogrammeDie Interrupts der Eingänge 00003 bis 00006 sind den Interrupt–Nummern 00
bis 03 und den Unterprogrammen 000 bis 003 zugeordnet. Werden keine eingangsgesteuerten Interrupts verwendet, können die Unterprogramme 000 bis
003 als normale Unterprogramme verwendet werden.
EingangInterrupt–
Nummer
000030000
000041001
000052002
000063003
Unterprogramm–
nummer
EingangsauffrischungWird keine Eingangsauffrischung über den IORF–Befehl durchgeführt, ist der
Eingangssignal-Zustand innerhalb des Interrupt-Unterprogramms nicht eindeutig festgelegt. Je nach Eingangs–Zeitkonstante können bei der Eingangs–
Auffrischung die Eingangssignale nicht auf EIN gesetzt werden. Dies gilt auch
für den Status des Interrupt-Eingangsbits, das den Interrupt aktiviert hat.
In dem Interrupt-Unterprogramm für den Eingangs-Interrupt 0 wird IR 00000
beispielsweise erst nach der Auffrischung der E/A gesetzt. In diesem Fall kann
der ständig gesetzte Systemmerker SR 25313 anstelle der Eingangs-Adresse
IR 00000 verwendet werden.
Eing–gest. Interrupt–Modus Wird ein Interrupt–Eingangssignal empfangen, wird das Hauptprogramm unter-
brochen und das Interrupt–Programm sofort ausgeführt, unabhängig davon, in
welchem Zyklus der Interrupt empfangen wird. Das Signal muss für 200 µs oder
länger anliegen, um erfasst zu werden.
Hauptprogramm
Hauptprogramm
74
Interrupt–Programm
Interrupt–Eingangssignal
Verwenden Sie die folgenden Befehle, um eingangsgesteuerte Interrupts in diesem Modus zu programmieren.
Maskierung/Demaskieren von eingangsgesteuerten Interrupts
Durch den INT(89)-Befehl können Maskierungen eingangsgesteuerter Interrupts in der erforderlichen Weise gesetzt bzw. zurückgesetzt werden.
(@)INT(89)
000
000
Die Einstellungen erfolgen über die D-Bits 0 bis 3, die den eingangsgesteuerten Interrupts 0 bis 3 entsprechen.
0: Löschen der Maskierung (Interrupt aktiviert)
1: Setzen der Maskierung (Interrupt deaktiviert)
D
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Am Anfang des Betriebes sind alle eingangsgesteuerte Interrupts maskiert.
Wird der eingangsgesteuerte Interrupt–Modus verwendet, so stellen Sie sicher,
die eingangsgesteuerten Interrupts wie oben mit INT(89) zu aktivieren.
Löschen maskierter Interrupts
Wechselt das an einem Interrupt–Eingang anliegende Signal während der Maskierung auf EIN, wird der betreffende Interrupt gespeichert und nach der Aufhebung der Maskierung direkt ausgeführt. Soll der betreffende Interrupt bei der
Aufhebung der Maskierung nicht ausgeführt werden, muss die Interrupt–Speicherung zuvor gelöscht werden.
Für jede Interrupt-Nummer wird nur ein Interrupt-Signal gespeichert.
Über den INT(89)-Befehl wird die Interrupt–Speicherung gelöscht.
(@)INT(89)
001
000
Werden die dem Interrupt 0 bis 3 entsprechenden D-Bits 0 bis
3 auf 1 gesetzt, werden die gespeicherten Interrupts gelöscht.
0: Interrupt–Speicherung wird nicht gelöscht.
1: Interrupt–Speicherung wird gelöscht.
D
Lesen des Maskierungszustands
Über den INT(89)-Befehl kann der Zustand der Maskierung gelesen werden.
(@)INT(89)
002
000
Der Zustand der äußerst rechten Stellen der in Wort D
gespeicherten Daten (Bits 0 bis 3) zeigt den Maskierungszustand.
0: Maske ist gelöscht
D
(E–gesteuerte Interrupt–Verarbeitung freigegeben)
1: Maske ist definiert:
(E–gesteuerte Interrupt–Verarbeitung gesperrt)
Programmbeispiel
Ist der Eingang 00003 (Interrupt 0) auf EIN gesetzt, wird sofort das Interrupt–
Programm mit der Unterprogrammnummer 000 aufgerufen. Eingänge werden
in DM 6628 auf 0001 gesetzt.
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
@INT(89)
000
000
#000E
Maskierung/Demaskierung der
eingangsgesteuerten Interrupts.
ZählmodusExterne Eingangssignale werden mit hoher Geschwindigkeit gezählt und ein In-
terrupt wird generiert, wenn der Zähler den Sollwert erreicht. Wird ein Interrupt
generiert, wird das Hauptprogramm unterbrochen und das Interrupt–Programm
wird ausgeführt. Es können Signale bis zu 1 kHz gezählt werden.
Hauptprogramm
Interrupt–Programm
Interrupt–Eingangssignal
Sollwert
Hauptprogramm
75
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Führen Sie die folgenden Schritte durch, um Interrupts im Zählermodus zu programmieren.
1, 2, 3...
1. Schreiben Sie die Sollwerte für den Zählerbetrieb in die SR–Worte, wie in
der folgenden Tabelle gezeigt. Die Sollwerte liegen zwischen 0000 und
FFFF (0 bis 65535). Der Wert 0000 deaktiviert den Zählbetrieb, bis ein
neuer Wert spezifiziert und der nachfolgende Schritt 2 wiederholt wird.
Die in dem Zählermodus (SR 240 bis SR 243) verwendeten SR–Worte enthalten hexadezimale Daten und keine BCD–Werte. Wird der Zählermodus
nicht verwendet, können diese Worte als Hilfsbits verwendet werden.
Hinweis Diese Systemmerker werden zu Beginn des Betriebs zurückge-
setzt und müssen von dem Programm neu gesetzt werden.
2. Mit dem INT(89)-Befehl können die in der Zähler-Betriebsart spezifizierten
Sollwerte festgelegt bzw. erneuert werden, wobei die Maskierung dabei
aufgehoben wird.
(@)INT(89)
Werden die den eingangsgesteuerte Interrupts entsprechenden D-Bits 0 bis 3 zurückgesetzt, wird der Sollwert
003
festgelegt und Interrupts sind zulässig.
000
0: Der in der Zähler-Betriebsart spezifizierte Sollwert wird
festgelegt und die Maskierung aufgehoben.
D
1: Nicht aktiviert.
Setzen Sie bei einem unbenutztem eingangsgesteuerten Interrupt das entsprechende Bit auf 1.
Der Interrupt, dessen Sollwert festgelegt wird, wird in der Zähler-Betriebsart aktiviert. Erreicht der Zähler den Sollwert, wird ein Interrupt ausgelöst und der Zähler zurückgesetzt. Die Zählvorgänge/Interrupts werden bis zur Deaktivierung
des Zählers fortgesetzt.
Hinweis 1. Wird der INT(89)-Befehl während des Zählvorgangs aufgerufen, wird der
Istwert auf den Sollwert gesetzt. Für einen Interrupt müssen Sie daher die
differenzierte Form des Befehls verwenden, andernfalls wird kein Interrupt
ausgelöst.
2. Der Sollwert wird bei der Ausführung des INT(89)-Befehls festgelegt. Ist bereits ein Interrupt aktiv, dann kann der Sollwert nicht einfach durch Änderung des Inhaltes von SR 240 bis SR 243 geändert werden. Hierzu muss der
Sollwert durch wiederholte Ausführung des INT(89)-Befehls geändert werden.
Die Maskierung von eingangsgesteuerte Interrupts im Zählmodus erfolgt auf
dieselbe Weise wie im eingangsgesteuerten Interrupt-Modus. Werden Maskierungen jedoch auf dieselbe Weise aufgehoben, wird nicht der Zählmodus deaktiviert, sondern stattdessen der eingangsgesteuerte Interrupt-Modus aktiviert.
Maskierte eingangsgesteuerte Interrupts werden auf die gleiche Weise wie im
eingangsgesteuerten Interrupt-Modus gelöscht.
Zähler–Istwert im Zählmodus
Werden eingangsgesteuerte Interrupts im Zählmodus verwendet, wird der Zähler-Istwert in dem SR-Wort gespeichert, das dem eingangsgesteuerten Interrupt 0 bis 3 entspricht. Die Werte betragen 0000 bis FFFE (0 bis 65534) und entsprechen dem Zähler-Istwert minus 1.
Der Istwert für einen Interrupt, dessen Sollwert 000A beträgt, wird unmittelbar
nach der Ausführung des INT(89)-Befehls als 0009 gespeichert.
Hinweis Auch wenn keine eingangsgesteuerte Interrupts in der Zähler-Betriebsart ver-
wendet werden, können diese SR–Systemmerker nicht als Hilfsbits verwendet
werden.
Programmbeispiel
Wird der Eingang 00003 (Interrupt–Nummer 0) 10 mal auf EIN gesetzt, wird sofort das Interrupt–Programm mit der Unterprogrammnummer 000 aufgerufen.
Die folgende T abelle zeigt, wo die Sollwerte und Istwerte –1 des Zählers gespeichert werden. Eingänge wurden in DM 6628 auf 0001 gesetzt.
Setzt den Sollwert auf 10. (0000 bis FFFF)
Wort, das den Sollwert enthält (SR 240)
Sollwert des Zählers auffrischen.
Frischt nur den Sollwert von 00003
(eingangsgesteuerter Interrupt 0) auf.
Interrupt–Programm
2-3-3Maskierung aller Interrupts
Mit dem INT(89)-Befehl können alle Interrupts, einschließlich der Eingangs-, Intervall-Zeitgeber- und Schnelle Zähler-Interrupts als Gruppe maskiert und ausmaskiert werden. Diese Maskierung steht zusätzlich zur Maskierungen der einzelnen Interrupt–Arten zur Verfügung. Darüber hinaus wird durch Ausmaskierung aller Interrupts die Maskierung einzelner Interrupt-Arten nicht zurückgesetzt. Die Bedingungen vor der Ausführung des INT(89)-Befehls (zur Maskierung der Interrupts als Gruppe) sind weiterhin gültig.
Verwenden Sie INT(89) nur zur Maskierung von Interrupts, wenn alle Interrupts
temporär maskiert werden müssen. INT(89)-Befehle müssen immer paarweise
eingesetzt werden. Der erste INT(89)-Befehl dient zur Maskierung und der
zweite zur Ausmaskierung von Interrupts.
Innerhalb von Interrupt-Routinen kann INT(89) nicht zur (Aus)Maskierung aller
Interrupts verwendet werden.
77
Maskierung von InterruptsDer INT(89)-Befehl dient zur Deaktivierung aller Interrupts.
(@)INT(89)
100
000
000
Wird während der Maskierung ein Interrupt generiert, erfolgt keine InterruptVerarbeitung, sondern der Interrupt (für eingangsgesteuerte Interrupts, Intervall-Zeitgeber–gesteuerte Interrupts und zählergesteuerte Interrupts) wird gespeichert. Interrupts werden unmittelbar nach der Demaskierung abgearbeitet.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Ausmaskierung von
Interrupt–Signalen
Mit Hilfe des INT(89)-Befehls können Interrupts folgendermaßen ausmaskiert
werden:
(@)INT(89)
200
000
000
2-3-4Intervall–Zeitgeber–gesteuerte Interrupts
Die CPM1/CPM1A ist mit einem Intervall–Zeitgeber ausgerüstet. Ist der Intervall–Zeitgeber abgelaufen, wird das Hauptprogramm unterbrochen und das Interrupt–Programm unabhängig von der Position im Zyklus ausgeführt.
Für den Intervall-Zeitgeberbetrieb stehen zwei Modi zur Verfügung. Im Monoflop(ONE–SHOT)-Modus wird nach Ablauf der Zeit nur ein Interrupt ausgelöst.
In der zeitgesteuerten(SCHEDULED) Interrupt–Modus wird das Interrupt–Unterprogramm in einem festen Zeit–Intervall wiederholt.
Der Sollwert des Intervall–Zeitgebers kann zwischen 0,5 und 319968 ms in
Schritten von 0,1 ms eingestellt werden.
BetriebDer folgende Befehl dient zur Aktivierung und Steuerung des Intervall-Zeitge-
bers.
Zeitgeber-Start im Monoflop(ONE–SHOT)-Interrupt–Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber
im Monoflop–Modus.
1, 2, 3...
(@)STIM(69)
C1: Intervall–Zeitgeber, Monoflop–Modus (000)
C
1
C
: Zeitgeber-Sollwert (erste Wortadresse)
C
C
2
2
C
: Unterprogramm-Nummer
3
3
(4-stelliger BCD-Wert): 0000 bis 0049
1. Wird für C2 eine Wortadresse eingegeben:
: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
0,1 ms): 0005 bis 0320 (0,5 ms bis 32 ms)
Im Monoflop-Modus besitzen die Einstellungen die gleiche Bedeutung. Im
zeitgesteuerten Interrupt–Modus wird der Zeitgeber-Istwert jedoch auf den
Sollwert zurückgesetzt und die Dekrementierung beginnt nach dem Aufruf
des Unterprogramms. In diesem Modus werden die Interrupts in festen Zeitintervallen bis zum Betriebsende wiederholt.
2. Wird für C
eine Konstante spezifiziert:
2
Die Einstellungen entsprechen denen des Monoflop–Modus. Interrupts
werden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des Zeitgebers
Entsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit des
Zeitgebers.
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C
1
C
: Führendes Wort von Parameter 1
C
C
2
2
C
: Parameter 2
3
3
Anhalten von Zeitgebern
C2: Anzahl der Abwärtszähler-Dekrementierungen (4-stelliger BCD-Wert)
+ 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)
C
2
: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelliger
C
3
BCD-Wert; Einheit: 0,1 ms)
Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführung
dieses Befehls wird folgendermaßen berechnet:
[(Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
2
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
Entsprechend parametriert hält der STIM(69)-Befehl den Intervall-Zeitgeber an.
(@)STIM(69)
C
1
000
000
C1: Anhalten des Intervall–Zeitgebers (010)
79
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Anwendungsbeispiel
(Monoflop–Modus)
In diesem Beispiel wird 2,4 ms (0,6 ms Z 4), nachdem Eingang 00005 auf EIN
gesetzt wurde, ein Interrupt generiert; der Interrupt löst die Abarbeitung der Interrupt–Unterprogrammnummer 23 aus.
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
00005
MOV (21)
#0004
DM 0010
MOV(21)
#0006
DM 0011
@STIM(69)
000
DM 0010
#0023
SBN (92)023
RET (93)
Setzt den Sollwert des Abwärtszählers auf 4.
(BCD–Wert: 0000 bis 9999)
Setzt das Dekrementierungs–Zeitgeber–
Intervall auf 0,6 ms. (BCD–Wert: 0005 bis
0320)
Startet den Intervall–Zeitgeber im Monoflop–
Modus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
Anwendungsbeispiel
(zeitgesteuerter Modus)
25315 Erster Zyklus–Merker
EIN für 1 Zyklus
00005
In diesem Beispiel wird alle 4,0 ms (1,0 ms Z 4), nachdem der Eingang 00005
auf EIN gesetzt wird, ein Interrupt generiert; der Interrupt löst die Abarbeitung
der Interrupt–Unterprogrammnummer 23 aus.
MOV (21)
#0004
DM 0010
MOV (21)
#0010
DM 0011
@STIM(69)
DM 0010
#0023
SBN (92)023
RET (93)
Setzt den Sollwert des Abwärtszählers auf 4.
(BCD–Wert: 0000 bis 9999)
Setzt das Dekrementierungs–Zeitgeber–
Intervall auf 1,0 ms. (BCD–Wert: 0005 bis
0320)
003
Startet den Intervall–Zeitgeber im zeitgesteuerten
Modus.
Spezifiziert das erste Wort, das den Sollwert enthält.
Spezifiziert die Unterprogrammnummer (23).
Interrupt–Programm
2-3-5Schnelle Zähler–Interrupt
Die CPM1/CPM1A verfügen über eine Schnelle Zähler–Funktion, die für den Inkrementier– oder Aufwärts/Abwärts–Betrieb verwendet werden kann. Der
schnelle Zähler kann mit Eingangs–Interrupts kombiniert werden, um eine Bereichsvergleichs–Steuerung oder Zielwert–Steuerung durchzuführen, die nicht
von der Zykluszeit der SPS beeinflußt wird.
Signale des Schnellen Zählers können über die CPU–Eingänge 00000 bis
00002 angelegt werden.
80
CPM1–SPS
Bis zu 8 Sätze oberer Grenzwerte
00000
00001
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
00002
CPM1A–SPS
ModusVerwendungEingangs–
beschaltung
Aufwärts/
Abwärts
Inkrement–
ierung
00000: Eingang
Phase A
00001: Eingang
Phase B
00002: Eingang
Phase Z
00000: Zähleingang
00001: Sehen Sie den
Hinweis
00002:
Rücksetzeingang
Phasendifferenz,
4 Eingänge
Individuelle
Eingänge
Zähl–
N.C.
Zähl–
bereich
bis
32767
bis
65535
24VDC
frequenz
max. 2,5 kHz –32767
max. 5,0 kHz 0
Steuerverfahren
Zielwert–Steuerung:
Bis zu 16 Zielwerte und Interrupt–
Unterprogrammnummern können
gespeichert werden.
Bereichsvergleichs–Steuerung:
,
unterer Grenzwerte und Interrupt–
Unterprogrammnummern können
gespeichert werden.
Einstellungen des
Schnellen Zählers
Hinweis Im Inkrementmodus kann der Eingang 00001 als normaler Eingang verwendet
werden. Bei der Software–Rücksetzung kann Eingang 00002 als normaler Eingang verwendet werden. Wird der Eingang für das Z–Phasensignal und die
Software–Rücksetzung verwendet, wird der Eingangsstatus von 00002 auch im
E/A–Speicher reflektiert.
Die folgenden Einstellungen müssen in DM6642 erfolgen, wenn die Schnelle
Zähler–Funktion der CPM1/CPM1A verwendet wird.
ZählbereichDer Schnelle Zähler der CPM1/CPM1A arbeitet im Linearbetrieb und der Zähl-
wert (Istwert) wird in SR 248 und SR 249 gespeichert. (Die oberen vier Stellen
werden in SR 249 und die unteren vier Stellen in SR 248 gespeichert).
ModusZähl–
bereich
Aufwärts/AbwärtsF003 2767 bis 0003 2767 (–32.767 bis 32.767)
Inkrementierung
Ein Überlauf tritt auf, wenn der Zählwert die obere Grenze im Zählbereich überschreitet und ein Unterlauf tritt auf, wenn der Zählwert unter der unteren Grenze
im Zählbereich liegt.
FehlerInkrementierungAufwärts/AbwärtsIstwert
ÜberlaufTritt ein, wenn der
Zählerstand bei 65.535
inkrementiert wird.
Unterlauf---Tritt ein, wenn der
VerarbeitungZwei Signalarten eines Impuls–Encoders können angelegt werden. Der für den
Schnellen Zähler verwendete Zählmodus wird von dem Signaltyp bestimmt. Der
Zähl– und Rücksetz–Modus werden in DM6642 spezifiziert; diese Einstellungen werden beim Einschalten der Spannungsversorgung oder des SPS–Betriebs wirksam.
Auf–/Abwärts–Zählmodus:
Ein phasenverschobenes 4x Zweiphasen-Signal (Phase A und B) und ein
Z-Signal werden mit den Eingängen verbunden. Der Zähler wird entsprechend dem Unterschied zwischen den Phasen A und B inkrementiert bzw .
dekrementiert.
Inkrementier–Zählmodus:
Ein einphasiges Impulssignal und ein Zähler-Rücksetzsignal werden verwendet. Der Zähler wird entsprechend des einphasigen Signals inkrementiert.
Die äußerste linke Stelle in SR 248 enthält das Vorzeichen. “F”
bedeutet negativ, “0” positiv.
0000 0000 bis 0006 5535 (0 bis 65.535)
Tritt ein, wenn der
Zählerstand bei 32.767
inkrementiert wird.
Zählerstand bei –32.767
dekrementiert wird.
0FFF FFFF
FFFF FFFF
Phase A
Phase B
Zählen
Aufwärts/Abwärtsmodus
EIN
AUS
EIN
AUS
1234567876543210–1–2
Inkrementierung
Dekrementierung
Impuls–
eingang
Zählen
EIN
AUS
Inkrementiermodus
1234
Nur Inkrementierung
Hinweis Eines der folgenden Verfahren sollte immer zur Rücksetzung des Zählers bei
einem Neustart verwendet werden. Der Zähler wird am Anfang bzw. Ende einer
Programmausführung automatisch zurückgesetzt.
Die folgenden Signalübergänge werden als Vorwärts-Zählimpulse (Inkrementierung) ausgewertet: ansteigende Flanke Phase A - ansteigende Flanke Phase
B - fallende Flanke Phase A - fallende Flanke Phase B. Die folgenden Signalübergänge werden als Rückwärts-Zählimpulse (Dekrementierung) ausgewertet: ansteigende Flanke Phase B - ansteigende Flanke Phase A - fallende
Flanke Phase B - fallende Flanke Phase A.
Im Aufwärts–/Abwärts-Modus wird immer ein 4× phasenverschobenes Eingangssignal verwendet. Die Anzahl der Zählimpulse für jede Encoder-Umdre-
82
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
hung entspricht der vierfachen Zählerauflösung. Wählen Sie einen Encoder auf
der Grundlage des zählbaren Bereiches.
Rücksetz–Modus
Zur Rücksetzung des Zähler-Istwertes (d.h. Istwert auf 0) kann eines der beiden
folgenden Verfahren verwendet werden.
Z–Phasensignal + Software–Rücksetzung:
Der Istwert wird zurückgesetzt, wenn das Z-Phasensignal (Rücksetz-Eingang) nach dem Setzen des SCHNELLER ZÄHLER(0)-RÜCKSETZ-Systemmerkers (SR 25200) auf EIN gesetzt wird.
Software–Rücksetzung:
Der Istwert wird beim Setzen des SCHNELLER-ZÄHLER(0)-RÜCKSETZSystemmerkers (SR 25200) zurückgesetzt.
Z–Phasensignal + Software–Rücksetzung
1 Zyklus
CPU–Verarbeitung
25200
Phase-Z
Progr–
Ausführg
(1)(2)(3)(4)(5)
Nicht
zurückgesetzt
Nicht
zurückgesetzt
Progr–
Ausführg
Rücksetzung
Nr.BetriebszeitverhaltenRücksetzung
(1)Z–Phasensignal wird eingeschaltet,
wenn SR 25200 ausgeschaltet wird.
(2)Z–Phasensignal wird innerhalb eines
Zyklus eingeschaltet, nachdem SR
25200 eingeschaltet wird.
(3)Z–Phasensignal wird nach dem Ab-
lauf von mindestens einem Zyklus,
nachdem SR 25200 eingeschaltet
wurde, aktiviert.
(4)Z–Phasensignal wird innerhalb eines
Zyklus eingeschaltet, nachdem SR
25200 ausgeschaltet wird.
Hinweis Der SCHNELLER ZÄHLER(0)-RÜCKSETZ-Systemmerker (SR 25200) wird in-
nerhalb eines Abfragezyklus einmal aufgefrischt. Zur eindeutigen Identifizierung des Merkerzustands muss dieser daher für mindestens einen Abfragezyklus gesetzt sein.
”Z” in ”Phase Z” steht für ZERO (Null). Dieses Signal zeigt an, dass der Encoder
eine Umdrehung abgeschlossen hat.
Zählen mit der Schnellen Zähler-Interrupt–Funktion
Für einen Interrupt des Schnellen Zählers 0 wird eine mit dem CTBL–Befehl erstellte Vergleichstabelle verwendet. Die Zähler–Istwertprüfung erfolgt mit Hilfe
eines der beiden nachfolgend beschriebenen Verfahren. In der Vergleichstabelle werden Vergleichsbedingungen (für den Vergleich mit dem Istwert) und
Interrupt-Routinen–Nummern gespeichert.
Zähler–Istwert:
83
Maximal 16 Vergleichsbedingungen (Zähler–Istwert und Zählrichtungen)
und Interrupt-Unterprogrammnummern werden in der Vergleichstabelle gespeichert. Entspricht der Zähler-Istwert und die Zählrichtung den Vergleichsbedingungen, wird das spezifizierte Interrupt-Unterprogramm ausgeführt.
Bereichsvergleich:
Acht Vergleichsbedingungen (obere und untere Grenzwerte) und InterruptUnterprogrammnummern werden in der V ergleichstabelle abgelegt. Ist der
Istwert größer oder gleich dem unteren Grenzwert und kleiner oder gleich
dem oberen Grenzwert, wird das spezifizierte Interrupt-Unterprogramm
ausgeführt.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Zielwertvergleiche
Vorgabewert
Bereichsvergleiche
Zählen
Zielwert
Der Ist–Zählwert wird mit den Zielwerten in der Reihenfolge verglichen, in der
die Zielwerte in der Vergleichstabelle gespeichert sind und Interrupts werden
generiert, wenn der Zählwert dem Zielwert entspricht. Nachdem der Zählwert
allen Zielwerten in der Tabelle entsprochen hat, wird der Zeiger auf den ersten
Zielwert in der Tabelle eingestellt; der Vergleich beginnt wiederum mit dem Ist–
Zählwert, bis die zwei Werte gleich sind.
Der Ist–Zählwert wird auf zyklische Art gleichzeitig mit allen Bereichen verglichen, und, basierend auf den Ergebnissen der Vergleiche, werden Interrupts
generiert.
Hinweis Bei der Durchführung von Zielwertvergleichen darf der INI–Befehl nicht wieder-
holt verwendet werden, um den Ist–Zählwert zu ändern und den V ergleichsvorgang zu beginnen. Die Interrupt–Funktion arbeitet evtl. nicht richtig, wenn der
Vergleich sofort nach der Änderung des Istwertes durch das Programm begonnen wird. (Der Vergleich kehrt automatisch zum ersten Zielwert zurück, sobald
ein Interrupt für den letzten Zielwert generiert wurde. Eine wiederholende Abarbeitung ist möglich, indem lediglich der aktuelle Wert geändert wird.)
ProgrammierungVerwenden Sie die folgenden Schritte, um den schnellen Zähler zu program-
mieren.
Der Zählbetrieb des Schnellen Zählers 0 beginnt nach der richtigen Einstellung
im Setup. Vergleiche mit Hilfe der Vergleichstabelle und die Generierung von
Interrupts erfolgen erst nach dem CTBL(63)-Befehl.
Der Schnelle Zähler wird beim Einschalten der SPS und zu Beginn des Betriebs
auf ”0” zurückgesetzt.
Der Istwert des Schnellen Zählers wird in SR 248 und SR 249 gespeichert.
84
Steuerung der Schnellen Zähler-Interrupts
1, 2, 3...
1. Verwenden Sie den CTBL(63)-Befehl, um die Vergleichstabelle in der
CPM1/CPM1A zu speichern und um Vergleiche zu starten.
(@)CTBL(63)
Wird C auf 000 gesetzt, erfolgen Vergleiche nach dem Zielübereinstimmungs-Verfahren. Wird C auf 001 gesetzt, werden Bereiche miteinander
verglichen. Die Vergleichstabelle wird gespeichert und die Vergleiche werden anschließend vorgenommen. Während der Vergleiche werden
schnelle Interrupts, entsprechend der Vergleichstabelle, ausgeführt. Sehen
Sie die Beschreibung des CTBL(63)–Befehls in
weitere Informationen über den Inhalt der gespeicherten Vergleichstabellen.
Hinweis Die Vergleichsergebnisse werden während der Bereichsvergleichs–
Ausführung in AR 1100 bis AR 1107 gespeichert.
C: (3-stelliger BCD-Wert)
P
000:Die Zieltwertetabelle wird erstellt und der
C
TB
001:Die Bereichstabelle wird erstellt und der
002:Nur die Zielwertetabelle wird erstellt
003:Nur die Bereichstabelle wird erstellt
TB: Anfangswort der Vergleichstabelle
Vergleich gestartet.
Vergleich gestartet.
Kapitel 7 Befehlssatz
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
für
Istwerte lesen
Lesen von SR 248 und SR 249
Wird C auf 002 gesetzt, erfolgen V ergleiche nach dem Zielwertübereinstimmungs-Verfahren. Wird C auf 003 gesetzt, werden Bereiche miteinander
verglichen. In beiden Fällen wird die Vergleichstabelle gespeichert, Vergleiche werden jedoch nicht ausgeführt. Hierzu müssen Sie den INI(61)-Befehl
verwenden.
2. Um V ergleiche zu beenden, führen Sie den INI(--)-Befehl, wie nachfolgend
dargestellt, aus.
(@)INI(61)
000
001
000
Um Vergleiche erneut auszuführen, stellen Sie den zweiten Operanden auf
”000” ein (Ausführung der Vergleichstabelle) und führen Sie den
INI(61)-Befehl aus.
Eine gespeicherte Tabelle bleibt während des Betriebs (d.h. während der
Programmausführung) in der CPM1/CPM1A bis zur Speicherung einer anderen Tabelle erhalten.
Zum Lesen der Istwerte stehen zwei Möglichkeiten zur Verfügung. Istwerte können von SR 248 und SR 249 oder mit dem PRV(62)-Befehl gelesen werden.
Der Istwert des Schnellen Zählers 0 wird wie nachfolgend dargestellt in SR 248
und SR 249 gespeichert. Bei negativen Werten ist die äußerst linke Stelle auf F
gesetzt.
Äußerst linke
4 Ziffern
SR 249SR 248F0032767 bis 00032767
Äußerst rechte
4 Ziffern
Aufwärts/Abwärts–
Zählmodus
(-32767)
Inkrementier–
Zählmodus
00000000 bis 00065535
Hinweis 1. Diese Worte werden nur einmal pro Abfragezyklus aufgefrischt. Daher be-
steht möglicherweise ein Unterschied zu dem tatsächlichen Istwert.
2. Wird der Schnelle Zähler nicht verwendet, können die Bits in diesen Worten
als Hilfsbits eingesetzt werden.
85
Verwendung des PRV(62)-Befehls
Der PRV(62)-Befehl dient zum Lesen des Istwertes des Schnellen Zählers.
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Änderung des Istwertes
(@)PRV(62)
P1: Führendes Wort des Istwertes
000
000
P1
Der Istwert des Schnellen Zählers besitzt folgendes Speicherformat. Bei negativen Werten ist die äußerst linke Stelle auf F gesetzt.
Äußerst linke
4 Ziffern
P1+1P1F0032767 bis 00032767
Äußerst rechte
4 Ziffern
Aufwärts/Abwärts–
modus
(-32767)
Inkrementier–
modus
00000000 bis 00065535
Der Istwert wird bei der Ausführung des PRV(62)-Befehls gelesen.
Der Istwert des Schnellen Zählers 0 kann auf zwei Arten geändert werden. Die
erste besteht in der Rücksetzung mit Hilfe des entsprechenden Rücksetzverfahrens. (In diesem Fall wird der Istwert auf 0 zurückgesetzt). Die Verwendung
des INI(61)-Befehls stellt die zweite Möglichkeit dar.
Die Verwendung des INI(61)-Befehls wird nachfolgend erläutert. Eine Beschreibung des Rücksetz-Verfahrens finden Sie am Anfang der Beschreibung des
Schnellen Zählers.
Ändern Sie den Zeitgeber-Istwert, wie nachfolgend gezeigt, mit dem INI(61)-Befehl.
Anwendungsbeispiel
(Inkrementiermodus)
(@)INI(61)
Äußerst linke
4 Ziffern
D+1DF0032767 bis 00032767 00000000 bis 00065535
Äußerst rechte
4 Ziffern
D: Führendes Wort zur Speicherung
der Istwert-Änderungsdaten
000
002
D
Aufwärts/Abwärtsmodus
Inkrementiermodus
Zur Spezifikation einer negativen Zahl setzen Sie die äußerst linke Stelle auf F.
Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zäh-
lers mit einem Eingang im Inkrementiermodus. Vergleiche erfolgen nach dem
Zielwertübereinstimmungs-Verfahren.
Die Vergleichsbedingungen (Zielwerte und Zählrichtungen) werden in der Vergleichstabelle mit den Unterprogrammnummern gespeichert. Es können bis zu
16 Zielwerte gespeichert werden. Das entsprechende Unterprogramm wird
ausgeführt, wenn der Istwert des Zählers dem Zielwert entspricht.
Die folgenden Daten werden für die Vergleichstabelle gespeichert:
DM 00000002Anzahl der Vergleichsbedingungen: 2
DM 00011000Zielwert 1: 1000
DM 00020000
DM 00030030Interrupt–Unterprogramm–Nr. für Vergleich 1: 30
DM 00042000Zielwert 2: 2000
DM 00050000
DM 00060031Interrupt–Unterprogramm–Nr. für Vergleich 2: 31
86
2-3AbschnittCPM1/CPM1A–Interrupt–Funktionen
Das folgende Beispiel zeigt einen Kontaktplan. DM 6642 muss auf 01j4 gesetzt werden, wobei j dem Rücksetzverfahren entspricht, das mit 0 oder 1 spezifiziert wird.
25315 (für den ersten Zyklus auf EIN)
CTBL(63)
000
000
DM 0000
SBN (92)030
RET (93)
SBN (92)031
RET (93)
Speicher–Vergleichstabelle,
Zielwertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 30
Interrupt–Programm 31
Anwendungsbeispiel
(Aufwärts/Abwärts–Betrieb)
Hinweis Spezifizieren Sie immer 8 Bereiche. Werden weniger als 8 Bereiche benötigt,
Das folgende Beispiel zeigt ein Programm zur Verwendung des Schnellen Zählers mit einphasigen Eingängen in der Aufwärts–/Abwärts-Zählmodus. Vergleiche erfolgen über das Bereichsvergleichs–Verfahren.
Die Vergleichsbedingungen (oberen/unteren Beleihungsgrenzen) werden in
der Vergleichstabelle mit den Unterprogrammnummern gespeichert. Es können bis zu 8 Bereiche spezifiziert werden. Das entsprechende Unterprogramm
wird ausgeführt, wenn der Istwert des Zählers innerhalb des Bereiches liegt.
setzen Sie die verbleibenden Unterprogrammnummern auf FFFF. Ein Wert von
FFFF zeigt an, dass kein Unterprogramm ausgeführt wird.
Die folgenden Daten werden für die Vergleichstabelle gespeichert:
DM 00001500
DM 00010000Untere Grenze 1: 1.500 Zählimpulse
DM 00023000
DM 00030000Obere Grenze 1: 3.000 Zählimpulse
DM 00040040Interrupt–Unterprogramm–Nr.: 40
DM 00057500
DM 00060000Untere Grenze 2: 7.500 Zählimpulse
DM 00070000
DM 00080001Obere Grenze 2: 10.000 Zählimpulse
DM 00090041Interrupt–Unterprogramm–Nr.: 41
DM 00100000
DM 00110000
DM 00120000
DM 00130000
DM 0014FFFF Nicht ausgeführt. Interrupt–Unterprog. Bereich 3
..
...
...
...
...
DM 00350000
DM 00360000
DM 00370000
DM 00380000
DM 0039FFFF Nicht ausgeführt. Interrupt–Unterprogr. Bereich 8
87
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
Das folgende Beispiel zeigt einen Kontaktplan. DM 6642 muss auf 01j0 gesetzt werden, wobei j dem Rücksetzverfahren entspricht, das mit 0 oder 1 spezifiziert werden kann.
25315 (für den ersten Zyklus auf EIN)
CTBL (63)
000
000
DM 0000
SBN (92)040
RET (93)
SBN (92)041
RET (93)
Speicher–Vergleichstabelle, Zielwertverfahren
Erstes Wort der Vergleichstabelle
Interrupt–Programm 40
Interrupt–Programm 41
2-4SRM1(–V2) Interrupt–Funktionen
In diesem Abschnitt werden die Einstellungen und Verfahren für die Verwendung der SRM1(–V2)–Interrupt–Funktionen beschrieben.
2-4-1Interrupt–Funktionen
Die SRM1 (–V2) verfügt wie nachstehend beschrieben, nur über eine Interrupt–
Funktion.
Intervall–Zeitgeber–Interrupts
Die Interrupt–Verarbeitung wird mit einer Genauigkeit von 0,1 ms durch einen
Intervall–Zeitgeber ausgelöst.
2-4-2Intervall–Zeitgeber–Interrupts
Die SRM1(–V2) ist mit einem Intervall–Zeitgeber ausgerüstet. Ist der Intervall–
Zeitgeber abgelaufen, wird das Hauptprogramm unterbrochen und das Interrupt–Programm unabhängig von der Position im Zyklus ausgeführt.
Für den Intervall-Zeitgeberbetrieb stehen zwei Modi zur Verfügung. Im ONE
SHOT(Monoflop)-Interrupt–Modus wird nach Ablauf der Zeit nur ein Interrupt
ausgelöst. Im SCHEDULED(zeitgesteuerten) Interrupt–Modus wird das Interrupt–Unterprogramm in einem festen Zeit–Intervall wiederholt.
Der Sollwert des Intervall–Zeitgebers kann zwischen 0,5 und 319.968 ms in 0,1
ms–Schritten eingestellt werden.
BetriebDer folgende Befehl dient zur Aktivierung und Steuerung des Intervall-Zeitge-
bers.
Zeitgeber-Start im ONE–SHOT(Monoflop)-Modus
Entsprechend parametriert startet der STIM(69)-Befehl den Intervall-Zeitgeber
im Monoflop–Interrupt–Modus.
88
(@)STIM(69)
C1: Intervall–Zeitgeber,
C
1
Monoflop–Interrupt–Modus (000)
C
2
C2: Zeitgeber-Sollwert (erste Wortadresse)
C
3
C
: Unterprogrammnummer
3
(4-stelliger BCD-Wert): 0000 bis 0049
2-4AbschnittSRM1(–V2) Interrupt–Funktionen
1, 2, 3...
1. Wird für C2 eine Wortadresse eingegeben:
C2: Sollwert des Abwärtszählers (4-stelliger BCD-Wert): 0000 bis 9999
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 jedoch auf den Sollwert zurückgesetzt und die Dekrementierung beginnt
nach dem Aufruf des Unterprogramms. In diesem Modus werden die Interrupts in festen Zeitintervallen bis zum Betriebsende wiederholt.
2. Wird für C
eine Konstante spezifiziert:
2
Die Einstellungen sind die gleichen wie für den Monoflop–Modus. Interrupts
werden jedoch in festen Zeitintervallen bis zum Betriebsende wiederholt.
Lesen der abgelaufenen Zeit des Zeitgebers
Entsprechend parametriert liest der STIM(69)-Befehl die abgelaufene Zeit des
Zeitgebers.
(@)STIM(69)
C1: Lesen der abgelaufenen Zeit (006)
C
1
C
: Führendes Wort von Parameter 1
C
C
2
2
C
: Parameter 2
3
3
C2: Anzahl der Zähler-Dekrementierungen (4-stelliger BCD-Wert)
+ 1: Zeitintervall des Abwärtszählers (4-stelliger BCD-Wert; Einheit: 0,1 ms)
C
2
: Abgelaufene Zeit seit der vorhergehenden Dekrementierung (4-stelliger
C
3
BCD-Wert; Einheit: 0,1 ms)
Die abgelaufene Zeit vom Starten des Intervall-Zeitgebers bis zur Ausführung
dieses Befehls wird folgendermaßen berechnet:
[(Inhalt von Wort C
) × (Inhalt von Wort C2 + 1) + (Inhalt von Wort C3)] × 0,1 ms
2
Bei einem Stop des spezifizierten Intervall-Zeitgebers wird ”0000” gespeichert.
89
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.