OMRON-Produkte sind zum Gebrauch durch einen qualifizierten Bediener
gemäß angemessenen Verfahren und nur zu den in diesem Handbuch
beschriebenen Zwecken gefertigt.
In diesem Handbuch werden Sicherheitshinweise nach folgenden Konventionen gekennzeichnet und eingeteilt. Beachten Sie stets die in diesen Hinweisen enthaltenen Informationen. Eine Nichtbeachtung der Sicherheitshinweise
kann zu Verletzungen oder Sachschäden führen.
! GEFAHRKennzeichnet eine bevorstehende gefährliche Situation, die zum Tod oder zu ernsthaften
Verletzungen führt, wenn sie nicht vermieden wird.
! VORSICHTKennzeichnet eine potenziell gefährliche Situation, die zum Tod oder zu schweren Verlet-
zungen führen kann, wenn sie nicht vermieden wird.
! AchtungKennzeichnet eine potenziell gefährliche Situation, die zu kleineren oder mittelschweren
Verletzungen oder Sachschäden führen kann, wenn sie nicht vermieden wird.
OMRON-Produktreferenzen
Die in manchen Anzeigen und auf manchen OMRON-Produkten verwendete
Abkürzung „Ch“ bedeutet häufig „Wort“. Die übliche Abkürzung für „Wort“ (im
Sinne von 16 Bits) in Anzeigen und auf OMRON-Produkten ist „Wd“.
Die Abkürzung „SPS“ steht für speicherprogrammierbare Steuerung. In manchen Anzeigen von Programmierkonsolen wird jedoch noch die Abkürzung
„PC“ für „Programmable Controller“ (Programmierbare Steuerung) verwendet.
Dies ist nicht mit der üblichen Bedeutung von PC (Personal Computer) zu verwechseln.
Visuelle Hilfen
HinweisKennzeichnet Informationen von besonderem Interesse für effizienten und
1,2,3...1. Kennzeichnet Auflistungen aller Art, z. B. Verfahren oder Checklisten.
OMRON, 2003
Alle Rechte vorbehalten. Diese Publikation darf ohne vorherige schriftliche Genehmigung von OMRON weder als Ganzes
noch in Auszügen in irgendeiner Form oder auf irgendeine Weise, sei es auf mechanischem oder elektronischem Wege ode
durch Fotokopieren oder Aufzeichnen, reproduziert, auf einem Datensystem gespeichert oder übertragen werden.
In Bezug auf die hierin enthaltenen Informationen wird keine Patenthaftung übernommen. Da OMRON weiterhin an eine
ständigen Verbesserung seiner Qualitätsprodukte arbeitet, sind Änderungen an den in diesem Handbuch enthaltenen Informationen ohne Ankündigung vorbehalten. Bei der Herstellung dieses Handbuchs wurden alle Vorsorgemaßnahmen ergriffen.
Dennoch übernimmt OMRON keine Verantwortung für etwaige Fehler und Auslassungen. Es wird keine Haftung für Schäden übernommen, die aus der Nutzung von in diesem Dokument enthaltenen Informationen zurückzuführen sind.
Die folgenden Überschriften tauchen in der linken Spalte des Handbuchs auf
und helfen Ihnen, verschiedene Arten von Informationen zu finden.
zweckmäßigen Betrieb des Produkts.
v
Baugruppenversionen von CPU-Baugruppen der
CS/CJ-Serie
Baugruppen
versionen
Kennzeichnung der
Baugruppenversionen
auf den Produkten
CS/CJ-Serie CPU-Baugruppe
Eine „Baugruppenversion“ wurde eingeführt, um CPU-Baugruppen der
CS/CJ-Serie entsprechend der Funktionalitätsunterschiede, sich durch Weiterentwicklungen der Baugruppen ergeben, zu kennzeichnen. Dies gilt für die
CPU-Baugruppen CS1-H, CJ1-H, CJ1M und CS1D.
Die Baugruppen-Version ist, wie unten gezeigt, rechts von der Lot-Nummer
auf dem Typenschild der Produkte angegeben.
Produkt-Typenschild
CS1H-CPU67H
CPU UNIT
Chargennr.
Lot No. 040715 0000
OMRON Corporation MADE IN JAPAN
• CS1-H, CJ1-H und CJ1M CPU-Baugruppen (außer Low-End-Modelle),
die am oder vor dem 4. November 2003 hergestellt wurden, besitzen
keine Angabe der Baugruppenversion (d. h. die Stelle für die oben
gezeigte Baugruppenversion ist unbeschriftet).
• Die Baugruppen-Versionsnummern der CS1-H, CJ1-H und CJ1M CPUBaugruppen sowie der CS1D CPU-Baugruppe für Einzel-CPU-Systeme
beginnen mit der Version 2.0.
• Die Baugruppen-Versionsnummern der CS1D CPU-Baugruppe für
Duplex-CPU-Systeme beginnt mit Version 1.1.
• CPU-Baugruppen, für die keine Baugruppenversion angegeben wird,
werden als Vor Version @.@ CPU-Baugruppen bezeichnet, wie z. B. CPU-Baugruppen vor Version 2.0 und CPU-Baugruppen vor Version 1.1.
Ver.
3.0
Baugruppenversion
Beispiel für
Baugruppenversion 3.0
Überprüfung der
Baugruppenversionen
mit Hilfe von
Programmiersoftware
HinweisCX-Programmer Version 3.3 oder frühere Versionen können nicht zur Über-
vi
CX-Programmer Version 4.0 kann zur Prüfung der Baugruppen-Version verwendet werden. Dazu gibt es zwei Möglichkeiten.
• Verwendung der SPS-Informationen
• Bei Verwendung der Baugruppen-Herstellungsinformationen (diese
Methode kann auch für Spezial-E/A-Baugruppen und CPU-Bus-Baugruppen verwendet werden)
prüfung von Baugruppenversionen verwendet werden.
SPS-Information
• Wenn der Geräte- und CPU-Typ bekannt sind, wählen Sie ihn im Dialogfeld Ändern der SPS aus, gehen Sie online, und wählen Sie in den Menüs
SPS - Bearbeiten - Information.
• Wenn Geräte- und CPU-Typ nicht bekannt sind, diese aber direkt über ein
serielles Kabel mit der CPU-Baugruppe verbunden sind, wählen Sie SPS
- Auto Online, um online zu gehen, und wählen Sie dann in den Menüs
SPS - Bearbeiten - Information.
In beiden Fällen wird das nachfolgend abgebildete Dialogfeld PLC Information
(SPS Information) I angezeigt.
Baugruppenversion
Verwenden Sie oben dargestellte Anzeige zur Prüfung der CPU-Baugruppenversion.
Baugruppen-Herstellungsinformationen
Klicken Sie im Fenster IO Table (E/A-Tabelle) mit der rechten Maustaste, und
wählen Sie die Optionen Unit Manufacturing information - CPU Unit (Bau-gruppen-Herstellungsinformationen – CPU-Baugruppe).
Das nachfolgend abgebildete Dialogfeld Unit Manufacturing information (Bau-gruppen-Herstellungsinformationen) wird angezeigt.
vii
Baugruppenversion
Verwenden Sie oben dargestellte Anzeige zur Prüfung der BaugruppenVersion der online verbundenen CPU-Baugruppe.
Verwendung der
BaugruppenVersionsetiketten
Die folgenden Baugruppen-Versionsetiketten werden mit der CPU-Baugruppe
mitgeliefert.
Diese Etiketten können an der Vorderseite von CPU-Baugruppen angebracht
werden, um sie von anderen CPU-Baugruppen abweichender Baugruppenversionen unterscheiden zu können.
viii
Angabe der
Baugruppenversion
In diesem Handbuch wird die Baugruppenversion einer CPU-Baugruppe wie
in der folgenden Tabelle dargestellt angegeben.
Produkt-Typenschild
Bedeutung
Bezeichnung einzelner
CPU-Baugruppen
(z. B. CS1H-CPU67H)
Bezeichnung von Gruppen von CPU-Baugruppen (z. B. CS1-H CPUBaugruppen)
Bezeichnung einer
ganzen Serie von CPUBaugruppen (z. B. CPUBaugruppen der
CS-Serie)
CPU-Baugruppen ohne Angabe einer
Baugruppenversion
Lot No. XXXXXX XXXX
OMRON CorporationMADE IN JAPAN
CS1-H CPU-Baugruppen vor Version 2.0CS1H-CPU67H CPU-Baugruppe Version @.@
CS1-H CPU-Baugruppen vor Version 2.0CS1-H CPU-Baugruppen Version @.@
CS-Serie CPU-Baugruppen vor Version 2.0CS-Serie CPU-Baugruppen Version @.@
Unterstützung von Funktionen nach Baugruppenversion
CS1-H CPU-Baugruppen (CS1@-CPU@@H)
FunktionBaugruppenversion
CPU-Baugruppen vor
Version 2.0
Herunterladen und Heraufladen von einzelnen Tasks---OK
Verbesserter Leseschutz durch Verwendung von Passwörtern---OK
Schreibschutz gegen FINS-Befehle, die über Netzwerke an die
CPU-Baugruppen gesendet werden
Online-Netzwerkverbindungen ohne E/A-Tabellen---OK
Kommunikation über bis zu 8 Netzwerkebenen---OK
Online-Verbindung zu SPS-Systemen über NS-TerminalsOK ab Lot-Nummer
Einstellung der Worte für den ersten SteckplatzOK bei bis zu
Automatische Übertragung bei Einschalten der Versorgungsspannung ohne Parameterdatei
Automatische Erkennung der E/A-Zuweisungsmethode für automatische Übertragung bei Einschalten der Versorgungsspannung
Verbesserter Leseschutz durch
Verwendung von Passwörtern
Schreibschutz gegen FINSBefehle, die über Netzwerke
an die CPU-Baugruppen
gesendet werden
Online-Netzwerkverbindungen
ohne E/A-Tabellen
Kommunikation über bis zu 8
Netzwerkebenen
Online-Verbindung zu SPSSystemen über NS-Terminals
Einstellung der Worte für den
ersten Steckplatz
Automatische Übertragung bei
Einschalten der Versorgungsspannung ohne Parameterdatei
Automatische Erkennung der
E/A-Zuweisungsmethode für
automatische Übertragung bei
Einschalten der Versorgungsspannung
Start-/Endzeiten des Betriebs---OK---OKOK
Neue
Anwendungsbefehle
MILH, MILR, MILC ---OK---OKOK
=DT, <>DT, <DT,
<=DT, >DT, >=DT
BCMP2---OKOKOKOK
GRYOK ab Lot-Num-
TPO---OK---OKOK
DSW, TKY, HKY,
MTR, 7SEG
EXPLT, EGATR,
ESATR, ECHRD,
ECHWR
Lesen aus/Schreiben in CPU-BusBaugruppen mit
IORD/IOWR
PRV2---------OK, jedoch nur
---OK---OKOK
---OK---OKOK
---OK---OKOK
OK, aber nur,
wenn E/ATabellenzuordnung bei Einschalten der
Spannungsversorgung eingestellt ist
OK bei bis zu
8 Gruppen
OK ab Lot-Nummer 030201
---OK---OKOK
---OK---OKOK
---OK---OKOK
---OK---OKOK
mer 030201
---OK---OKOK
---OK---OKOK
---OK---OKOK
(CJ1@-CPU@@H)
CPU-Bau-
gruppen vor
Version 2.0
CPU-Bau-
gruppen
Version 2.0
OKOK, aber nur,
OK bei bis zu
64 Gruppen
OKOK ab Lot-Num-
OKOK ab Lot-Num-
CJ1M CPU-Baugruppen,
außer Low-End-Modelle
(CJ1M-CPU@@)
CPU-Bau-
gruppen vor
Version 2.0
wenn E/ATabellenzuordnung bei Einschalten der
Spannungsversorgung eingestellt ist
OK bei bis zu
8 Gruppen
mer 030201
mer 030201
Version 2.0
OKOK
OK bei bis zu
64 Gruppen
OKOK
OKOK
bei Modellen mit
integrierten E/A
CPU-Bau-
gruppen
CJ1M CPU-
Baugruppen,
Low-End-
Modelle
(CJ1M-
CPU11/21)
CPU-Bau-
gruppen
Version 2.0
OK bei bis zu
64 Gruppen
OK, jedoch nur
bei Modellen mit
integrierten E/A
xiii
Von Baugruppen der Version 3.0 und neuer unterstützte Funktionen
CS1-H CPU-Baugruppen (CS1@-CPU@@H)
FunktionBaugruppenversion
bis einschließlich
Ver. 2.0
Funktionsblöcke (CX-Programmer Ver. 5.0 oder neuer erforderlich) ---OK
Serial Gateway (Konvertierung von FINS-Befehlen in CompoWay/
F-Befehle an der integrierten seriellen Schnittstelle)
Kommentarspeicher (im internen Flash-Speicher)---OK
Erweiterte Easy-Backup-Datensicherung---OK
Neue Anwen-
dungsbefehle
Weitere Befehle TXD(236), RXD(235) (ermöglichen die
TXDU(256), RXDU(255) (ermöglichen die
protokollfreie Kommunikation mittels serieller
Kommunikationsbaugruppen ab Ver. 1.2)
protokollfreie Kommunikation mittels serieller
Kommunikationssteckmodule ab Ver. 1.2)
CS1D CPU-BaugruppenBaugruppenversion 3.0 wird nicht unterstützt.
CJ1-H/CJ1M CPU-Baugruppen (CJ1@-CPU@@H, CJ1G-CPU@@P, C J 1 M -C PU @@)
FunktionBaugruppenversion
Funktionsblöcke (CX-Programmer Ver. 5.0 oder neuer erforderlich) ---OK
Serial Gateway (Konvertierung von FINS-Befehlen in CompoWay/
F-Befehle an der integrierten seriellen Schnittstelle)
Kommentarspeicher (im internen Flash-Speicher)---OK
Erweiterte Easy-Backup-Datensicherung---OK
Neue Anwen-
dungsbefehle
Weitere Befehle PRV(881) und PRV2(883): Neu hinzugekommene
TXDU(256), RXDU(255) (ermöglichen die
protokollfreie Kommunikation mittels serieller
Kommunikationsbaugruppen ab Ver. 1.2)
CS1-H, CJ1-H und
CJ1M CPU-Baugruppen (außer
Low-End-Modelle),
Baugruppenversion 2.0
CS1D CPU-Baugruppen für EinzelCPU-Systeme,
Baugruppenversion 2.0
CS1D CPU-Baugruppen für
Duplex-CPUSysteme, Baugruppenversion 1.
CS/CJ-Serie CPUBaugruppen
Ver. 3.0
Neue Funktionen
bei Baugruppenversion 2.0
Neue Funktionen
bei Baugruppenversion 2.0
Neue Funktionen
bei Baugruppenversion 2.0
Neue Funktionen
bei Baugruppenversion 1.1
Neue Funktionsblock-Funktionen
bei Baugruppenversion 3.0
Bei Verwendung neuer
Funktionen
Ohne Verwendung neuer
Funktionen
Bei Verwendung neuer
Funktionen
Ohne Verwendung neuer
Funktionen
Bei Verwendung neuer
Funktionen
Ohne Verwendung neuer
Funktionen
Bei Verwendung neuer
Funktionen
Ohne Verwendung neuer
Funktionen
Bei Verwendung von
Funktionsblöcken
Ohne Verwendung von
Funktionsblöcken
bis ein-
schließ-
lich
Ver. 3.2
------OKOKKeine Ein-
---OKOKOK
------OKOK
OKOKOKOK
------OKOK
------OKOK
OKOKOKOK
---------OK
OKOKOKOK
Ver. 3.3 Ver. 4.0ab
Ver. 5.0
OK
mierkon-
sole
schränkungen
HinweisWie oben gezeigt, besteht keine Notwendigkeit zur Aktualisierung auf CX-
Programmer Version 4.0, solange die in Baugruppenversion 2.0 bzw. 1.1 hinzugekommenen Funktionen nicht verwendet werden.
Gerätetyp-EinstellungDie Baugruppenversion hat keinen Einfluss auf die mit CX-Programmierer
vorgenommene Einstellung für den Gerätetyp. Wählen Sie den Gerätetyp entsprechend den Angaben in der folgenden Tabelle unabhängig von der Baugruppenversion der CPU-Baugruppe.
SerieCPU-BaugruppengruppeProdukt-
CS-SerieCS1-H CPU-Baugruppen
CS1D CPU-Baugruppen für
Duplex-CPU-Systeme
CS1D CPU-Baugruppen für
Einzel-CPU-Systeme
CJ-SerieCJ1-H CPU-Baugruppen
CJ1M CPU-BaugruppenCJ1M-CPU@@CJ1M
bezeichnung der
CPU-Baugruppe
CS1G-CPU@@H CS1G-H
CS1H-CPU@@H CS1H-H
CS1D-CPU@@HCS1D-H (oder CS1H-H)
CS1D-CPU@@SCS1D-S
CJ1G-CPU@@H CJ1G-H
CJ1H-CPU@@H CJ1H-H
Gerätetyp-Einstellung bei
CX-Programmer Version 4.0 oder
höher
xv
Behebung von Problemen mit Baugruppenversionen in CX-Programmer
ProblemUrsacheLösung
Prüfen Sie das Programm oder
wechseln Sie die CPU-Baugruppe, auf die das Programm
heruntergeladen wird, zu einer
CPU-Baugruppe der Version
2.0 oder neuer.
Prüfen Sie die Einstellungen
im SPS-Setup oder wechseln
Sie die CPU-Baugruppe, auf
die das Setup heruntergeladen
wird, zu einer CPU-Baugruppe
der Version 2.0 oder neuer.
Die neuen Befehle können
nicht unter Verwendung von
CX-Programmer Version 3.3
oder früher heraufgeladen
werden. Verwenden Sie CXProgrammer Version 4.0 oder
höher.
Nach Anzeige der oben abgebildeten Meldung wird im
Meldungsfenster auf der Registerkarte Kompilieren
ein Kompilierungsfehler angezeigt.
„????“ wird in einem Programm angezeigt, das von
der SPS zu CX-Programmer übertragen wurde.
Es wurde der Versuch unternommen, mit Hilfe von CX-Programmer Version 4.0 oder höher ein
Programm mit Befehlen, die nur
von CPU-Baugruppen-Version
2.0 oder neuer unterstützt werden, auf ein CPU-Baugruppe vor
Version 2.0 herunterzuladen.
Es wurde der Versuch unternommen, mit Hilfe von CX-Programmer
Version 4.0 oder höher ein SPSSetup mit Einstellungen (z. B.
andere als Standardwerte), die nur
von CPU-Baugruppen-Version 2.0
oder neuer unterstützt werden, auf
eine CPU-Baugruppe vor Version
2.0 herunterzuladen.
CX-Programmer Version 3.3 oder
früher wurde zum Heraufladen
eines Programms von einer CPUBaugruppe der Version 2.0 oder
neuer verwendet, das Befehle
enthält, die nur von CPU-Baugruppen-Version 2.0 oder neuer
unterstützt werden.
In diesem Handbuch wird die Programmierung von CPU-Baugruppen von speicherprogrammierbare
Steuerungen (SPS) der CS/CJ-Serie beschrieben. Es besteht aus den auf der nächsten Seite aufgeführten Abschnitten. Die Serien CS und CJ werden wie in der folgenden Tabelle gezeigt unterteilt.
BaugruppeCS-SerieCJ-Serie
CPUBaugruppen
E/A-Baugruppen
Spezial-E/ABaugruppen
CPU-BusBaugruppen
SpannungsversorgungsBaugruppen
CS1-H CPU-Baugruppen: CS1H-CPU@@H
CS1 CPU-Baugruppen:CS1H-CPU@@-EV1
CS1D CPU-Baugruppen:
CS1D CPU-Baugruppen für DuplexCPU-Systeme: CS1D-CPU@@H
CS1D CPU-Baugruppen für EinzelCPU-Systeme: CS1D-CPU@@S
CS1D Prozess-CPU-Baugruppen:
CS1D-CPU@@P
Lesen Sie bitte dieses Handbuch und alle in der Tabelle auf der folgenden Seite aufgelisteten, dazugehörigen Handbücher und stellen Sie sicher, dass Sie alle Informationen verstanden haben, bevor Sie
CPU-Baugruppen der CS/CJ-Serie in einem SPS-System installieren oder verwenden.
Dieses Handbuch besteht aus den folgenden Abschnitten.
Abschnitt 1 enthält eine Beschreibung der Grundstruktur und des Betrieb der CPU-Baugruppe.
Abschnitt 2 enthält grundlegende Informationen für das Schreiben, Überprüfen und Eingeben von
Programmen.
Abschnitt 3 enthält eine Übersicht über die Befehle, die beim Schreiben von Anwenderprogrammen
verwendet werden können.
Abschnitt 4 enthält eine Beschreibung der Funktionen von Tasks.
Abschnitt 5 enthält eine Beschreibung der Funktionen des Dateispeichers.
Abschnitt 6 bietet Details zu erweiterten Funktionen: Zykluszeit/Hochgeschwindigkeitsverarbeitung,
Index-Register, serielle Kommunikation, Inbetriebnahme und Wartung, Diagnose und Debugging, Programmiergeräte sowie Einstellungen für die Antwortzeiten von E/A-Baugruppen der CJ-Serie.
Abschnitt 7 enthält eine Beschreibung der Vorgehensweisen für die Programmübertragung an die
CPU-Baugruppe und der Funktionen zum Testen und zum Debugging des Programms.
In den Anhängen finden Sie einen Vergleich der CS/CJ-Serie, Informationen zu Einschränkungen bei
der Verwendung von C200H Spezial-E/A-Baugruppen sowie zu an den Host-Link-Systemen vorgenommenen Änderungen.
SYSMAC CS/CJ-Serie
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H,
CS1D-CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@,
CJ1G/H-CPU@@H, CJ1G-CPU@@P, C J 1 M - C P U @@,
CS1W-SCB21-V1/41-V1, CS1W-SCU21-V1,
CJ1W-SCU21-V1/41-V1
Kommunikationsbefehle Referenzhandbuch
SYSMAC WS02-CXP@@-E
CX-Programmer Handbuch Version 3.@
SYSMAC WS02-CXP@@-E
CX-Programmer Handbuch Version 4.@
SYSMAC WS02-CXP@@-E
CX-Programmer Handbuch Version 5.@
W394Programmierung und Nutzung der Funktionen der
CS/CJ-Serie CPU-Baugruppen. (Dieses
Handbuch)
W339Detaillierte Beschreibung des Konzepts, der
Installation, der Wartung und anderer
grundlegender Aspekte der CS-Serie CPUBaugruppen.
W393Bietet einen Überblick und eine Beschreibung von
Konstruktion, Installation, Wartung und
grundlegender Funktionen von SPS-Systemen
der CJ-Serie.
W395Bietet eine Beschreibung der Funktionen der
integrierten E/A bei CJ1M-CPU-Baugruppen.
W405Bietet einen Überblick und eine Beschreibung von
Konstruktion, Installation, Wartung und
grundlegender Funktionen eines auf CS1D
CPU-Baugruppen basierenden Duplex-Systems.
W340Enthält Beschreibungen der von SPS-Systemen
der CS/CJ-Serie unterstützten Befehle für die
SPS-Programmierung.
W341Enthält Informationen darüber, wie SPS-Systeme
der CS/CJ-Serie über eine Programmierkonsole
programmiert und gesteuert werden.
W342Enthält Beschreibungen der C-Serie- (Host-Link)
und FINS-Kommunikationsbefehle, die mit
SPS-Systemen der CS/CJ-Serie verwendet
werden.
W414Enthält Informationen zur Verwendung von
CX-Programmer, einer Programmiersoftware, die
W425
W437
SPS-Systeme der CS/CJ-Serie unterstützt, sowie
der in CX-Programmer enthaltenen Software
CX-Net.
W438Funktionsblock-spezifische Spezifikationen und
Verfahren. Diese Informationen sind nur für die
Verwendung von Funktionsblöcken mit CXProgrammer Ver. 5.0 in Kombination mit einer
CS1-H/CJ1-H/CJ1M CPU-Baugruppe Ver. 3.0
von Relevanz. Detaillierte Informationen zur
sonstigen Verwendung von CX-Programmer
Ver. 5.0 finden Sie im CX-Programmer Handbuch Version 5.@ (W437).
W336Beschreibung der Nutzung von seriellen
Kommunikations-Modulen und -Baugruppen zur
Kommunikation mit externen Geräten,
insbesondere auch der Verwendung von
Standardsystemprotokollen für OMRONProdukte.
W344Beschreibung der Nutzung von CX-Protocol zum
Erstellen von Protokollmakros für die
Kommunikation mit externen Geräten.
! VORSICHT Falls Sie die in diesem Handbuch enthaltenen Informationen nicht durchlesen oder nicht ver-
stehen, kann dies zur Verletzung oder zum Tod von Personen, zu einem Schaden am Produkt
bzw. zu Fehlfunktionen führen. Lesen Sie jeden Abschnitt vollständig durch, und führen Sie die
vorgestellten Maßnahmen und Bedienverfahren erst durch, wenn Sie sicher sind, dass Sie die
im jeweiligen Abschnitt und den zugehörigen Abschnitten bereitgestellten Informationen verstanden haben.
xix
xx
SICHERHEITSHINWEISE
In diesem Abschnitt finden Sie allgemeine Sicherheitshinweise für die Nutzung der speicherprogrammierbaren
Steuerungen (SPS) der CS/CJ-Serie sowie zugehöriger Geräte.
Die in diesem Abschnitt enthaltenen Informationen sind wichtig für die sichere und zuverlässige Anwendung von
speicherprogrammierbaren Steuerungen. Bevor Sie versuchen, ein SPS-System einzurichten oder zu betreiben,
müssen Sie diesen Abschnitt lesen und die hierin enthaltenen Informationen verstehen.
Das vorliegende Handbuch ist für den folgenden Personenkreis konzipiert,
wobei Kenntnisse elektrischer Systeme vorausgesetzt werden (Elektrotechniker usw.).
• Personen, die mit der Installation von Fabrikautomations-Systemen
befasst sind.
• Personen, die mit der Konstruktion von FA-Systemen befasst sind.
• Personen, die FA-Systeme und -Einrichtungen verwalten.
2Allgemeine Sicherheitshinweise
Das Produkt muss vom Benutzer gemäß den in den Bedienerhandbüchern
beschriebenen Leistungsspezifikationen betrieben werden.
Wenden Sie sich vor der Verwendung dieses Produktes an Ihre OMRON-Vertretung, falls Sie das Produkt unter Bedingungen verwenden, die nicht im
Bedienerhandbuch aufgeführt sind bzw. wenn Sie das Produkt im Bereich der
Nukleartechnik, im Eisenbahnverkehr, in der Luftfahrt, in Fahrzeugen, in Verbrennungssystemen, in medizinischen Geräten, in Spielautomaten, in Sicherheitsausrüstungen oder anderen Systemen, Geräten oder Ausrüstungen
verwenden möchten, bei denen fehlerhafte Verwendung zu schwerwiegenden
Gefahren für Leben und Sachgut führen kann.
Achten Sie darauf, dass die Nenn- und Leistungsdaten des Produkts für die
Systeme, Maschinen und Geräte geeignet sind, und statten Sie die Systeme,
Maschinen und Geräte mit doppelten Sicherheitsmechanismen aus.
Dieses Handbuch enthält Informationen zu Programmierung und Betrieb des
Produkts. Lesen Sie dieses Handbuch vor Verwendung des Produkts durch,
und halten Sie dieses Handbuch während des Betriebs zu Referenzzwecken
immer griffbereit.
! VORSICHTEs ist außerordentlich wichtig, dass SPS und alle SPS-Baugruppen nur für
den vorgegebenen Einsatzzweck und unter den angegebenen Bedingungen
verwendet werden. Dies gilt besonders für Anwendungen, bei denen direkt
oder indirekt die Gefahr von Personenschäden besteht. Wenden Sie sich an
den OMRON-Vertrieb, bevor Sie ein SPS-System für die oben aufgeführten
Anwendungen einsetzen.
3Sicherheitshinweise
! VORSICHTDie CPU-Baugruppe führt E/A-Aktualisierungen auch dann durch, wenn das
Programm angehalten ist (d. h. insbesondere auch im PROGRAM-Modus).
Überprüfen Sie die Sicherheit sorgfältig im Voraus, bevor Sie den Status von
Bits oder Worten des E/A-Speichers ändern, die E/A-Baugruppen, Spezial-E/
A-Baugruppen oder CPU-Bus-Baugruppen zugeordnet sind. Änderungen an
den einer Baugruppe zugeordneten Daten können ein unvorhergesehenen
Verhalten der an die Baugruppen angeschlossenen Lasten (Maschinen) zur
Folge haben. Die folgenden Bedienvorgänge können zu Änderungen von Bits
und Worten des E/A-Speichers führen.
• Übertragen von E/A-Speicherdaten von einem Programmiergerät in die
CPU-Baugruppe.
• Ändern der aktuellen Werte im Speicher von einem Programmiergerät aus.
• Zwangsweises Setzen oder Rücksetzen von Bits über ein Programmiergerät.
• Übertragen von E/A-Speicherdateien von einer Speicherkarte oder dem
EM-Dateispeicher in die CPU-Baugruppe.
• Übertragen von E/A-Speicherdaten von einem Host-Computer oder von
einer anderen SPS im Netzwerk.
xx
! VORSICHTEntnehmen Sie keine Baugruppe bei eingeschalteter Spannungsversorgung
aus dem Rack. Es besteht die Gefahr eines elektrischen Schlags.
Sicherheitshinweise3
! VORSICHTBerühren Sie Klemmen oder Klemmenblöcke nicht bei eingeschalteter Ver-
sorgungsspannung. Es besteht die Gefahr eines elektrischen Schlags.
! VORSICHTVersuchen Sie nicht, Baugruppen zu zerlegen, instand zu setzen oder zu
modifizieren. Bei jedem Versuch besteht das Risiko von Fehlfunktionen sowie
die Gefahr eines elektrischen Schlags bzw. Brandgefahr.
! VORSICHTStatten Sie externe Schaltkreise (d. h., nicht die in der SPS) mit Sicherheits-
maßnahmen aus, damit die Sicherheit im System gewährleistet bleibt, wenn
aufgrund einer Fehlfunktion der SPS oder eines anderen externen Faktors mit
Auswirkungen auf den SPS-Betrieb eine Abweichung auftritt. Dabei kann es
sich z.B. um die im Folgenden genannten Maßnahmen handeln. Andernfalls
besteht die Gefahr von schweren Unfällen.
• Externe Steuerschaltungen müssen mit Not-Aus-Schaltungen, Sperrschaltungen, Wegbegrenzungsschaltungen und ähnlichen Sicherheitseinrichtungen ausgestattet werden.
• Die SPS schaltet alle Ausgänge auf AUS, wenn durch die Selbstdiagnosefunktion ein Fehler (schwerwiegender Systemfehler) erkannt wird oder
wenn ein FALS-Befehl (schwerwiegender anwenderdefinierter Fehler)
ausgeführt wird. Zur Gewährleistung der Sicherheit im System müssen
als Gegenmaßnahme für solche Fehler externe Sicherheitsmaßnahmen
bereitgestellt werden.
• Die SPS-Ausgänge können aufgrund von Ablagerungen oder Verbrennungen an den Ausgangsrelaiskontakten bzw. Zerstörung von Ausgangstransistoren irrtümlicherweise EIN oder AUS geschaltet bleiben. Zur
Gewährleistung der Sicherheit im System müssen als Gegenmaßnahme
für solche Probleme externe Sicherheitsmaßnahmen bereitgestellt werden.
• Wenn der 24-V-DC-Ausgang (Hilfsspannungsversorgung der SPS) überlastet oder kurzgeschlossen wird, fällt möglicherweise die Spannung ab, was
dazu führt, dass die Ausgänge auf AUS geschaltet werden. Zur Gewährleistung der Sicherheit im System müssen als Gegenmaßnahme für solche
Probleme externe Sicherheitsmaßnahmen bereitgestellt werden.
! AchtungÜberprüfen Sie die Sicherheit, bevor Sie unter Verwendung einer Program-
miersoftware im Dateispeicher (Speicherkarte oder EM-Dateispeicher)
gespeicherte Datendateien an den E/A-Bereich (CIO) der CPU-Baugruppe
übertragen. Andernfalls können unabhängig von der Betriebsart der CPUBaugruppe Fehlfunktionen an den mit der Ausgangsbaugruppe verbundenen
Geräten auftreten.
! AchtungDer Kunde muss durch entsprechende Vorkehrungen die Systemsicherheit
für den Fall sicherstellen, dass bedingt durch unterbrochene Signalleitungen,
vorübergehende Spannungsausfälle oder beliebige andere Ursachen falsche,
fehlende oder ungewöhnliche Signale auftreten. Nicht ordnungsgemäßer
Betrieb kann zu schweren Unfällen führen.
! AchtungDas Anwenderprogramm und die Parameterdaten werden von den CS1-H,
CJ1-H, CJ1M und CS1D CPU-Baugruppen beim Schreiben in die CPU-Baugruppe automatisch im Flash-Speicher gesichert. Der E/A-Speicher (einschließlich der DM-, EM- und HR-Bereiche) wird jedoch nicht in den FlashSpeicher geschrieben. Die Inhalte der DM-, EM- und HR-Bereiche können
während eines Ausfalls der Versorgungsspannung durch eine Batterie erhalten werden. Wenn die Batterie nicht ordnungsgemäß funktioniert, sind die
Inhalte dieser Bereiche nach einem Ausfall der Versorgungsspannung evtl.
nicht mehr korrekt. Wenn der Inhalt der DM-, EM- und HR-Bereiche zur
Steuerung externer Ausgänge verwendet wird, müssen geeignete Maßnahmen zur Vermeidung von falschen Ausgaben ergriffen werden, wenn der Batterie-Fehlermerker (A40204) auf EIN gesetzt ist.
! AchtungFühren Sie die Online-Bearbeitung der Programme oder Parameter nur
durch, nachdem Sie überprüft haben, dass eine Verlängerung der Zykluszeit
keine negativen Auswirkungen mit sich bringt. Andernfalls sind die Eingangssignale möglicherweise nicht lesbar.
xxi
Sicherheitshinweise für die Betriebsumgebung4
! AchtungStellen Sie die Sicherheit am Zielknotenpunkt sicher, bevor Sie ein Programm
an einen anderen Knotenpunkt übertragen oder den Inhalt des E/A-Speicherbereichs verändern. Wenn Sie eine dieser Aktionen durchführen, ohne die
Sicherheit zu überprüfen, kann dies zu Verletzungen führen.
! AchtungZiehen Sie die Schrauben am Klemmenblock speziell die der Spannungsver-
sorgungsbaugruppe mit dem im Bedienerhandbuch angegebenen Drehmoment fest. Lose Schrauben können zu Schmorbränden oder Fehlfunktionen
führen.
! AchtungBerühren Sie die Spannungsversorgungsbaugruppe nicht bei eingeschalteter
Versorgungsspannung bzw. direkt nach Ausschalten der Versorgungsspannung. Die Spannungsversorgungs-Baugruppe kann in diesen Fällen heiß
sein, und Sie können sich Verbrennungen zuziehen.
! AchtungLassen Sie beim Anschließen eines PCs oder anderer Peripheriegeräte an
eine SPS besondere Vorsicht walten, wenn an diese eine nicht isolierte, an
eine externe Spannungsversorgung angeschlossene Baugruppe (CS1WCLK12/52(-V1) oder CS1W-ETN01) angeschlossen ist. Wenn die 24-V-Seite
der externen Spannungsversorgung und die 0-V-Seite des Peripheriegerätes
zur gleichen Zeit geerdet sind, tritt ein Kurzschluss auf. Erden Sie beim
Anschluss eines Peripheriegerätes an diese Art von SPS entweder die 0-VSeite der externen Spannungsversorgung, oder erden Sie die externe Spannungsversorgung überhaupt nicht.
4Sicherheitshinweise für die Betriebsumgebung
! AchtungBetreiben Sie die SPS nicht an folgenden Orten:
• Orte, die direkter Sonneneinstrahlung ausgesetzt sind.
• Orte, an denen Temperaturen oder Luftfeuchtigkeit außerhalb der in den
technischen Daten angegebenen Bereiche herrschen.
• Orte, die starken Temperaturschwankungen und damit Kondensatbildung
ausgesetzt sind.
• Orte, an denen korrosive oder entzündliche Gase vorhanden sind.
• Orte, die dem Einfluss von Stäuben (besonders Eisenstaub) oder Salzen
ausgesetzt sind.
• Orte, die dem Einfluss von Feuchtigkeit, Öl oder Chemikalien ausgesetzt
sind.
• Orte, die Stößen oder Schwingungen ausgesetzt sind.
! AchtungErgreifen Sie beim Installieren von Systemen an folgenden Orten angemes-
sene und geeignete Gegenmaßnahmen:
• Orte mit statischer Aufladung und anderen Störungen.
• Orte mit starken elektromagnetischen Feldern.
• Orte, die möglicherweise Radioaktivität ausgesetzt sind.
• Orte in der Nähe von Spannungsversorgungseinrichtungen.
! AchtungDie Betriebsumgebung des SPS-Systems kann große Auswirkungen auf die
Lebensdauer und Zuverlässigkeit des Systems haben. Ungeeignete Betriebsumgebungen können Fehlfunktionen, Ausfälle und andere unvorhergesehene
Probleme in Bezug auf das SPS-System zur Folge haben. Achten Sie darauf,
dass die Betriebsumgebung zum Zeitpunkt der Installation die angegebenen
Bedingungen erfüllt und dass diese Bedingungen während der Lebensdauer
des Systems erfüllt bleiben.
5Sicherheitshinweise zum Einsatz
Beachten Sie bei der Verwendung des SPS-Systems die folgenden Sicherheitshinweise.
• Sie müssen CX-Programmer (Programmier-Software, die unter Windows
läuft) verwenden, wenn Sie mehr als eine Task programmieren möchten.
xxii
Sicherheitshinweise zum Einsatz5
Eine Programmierkonsole kann verwendet werden, um nur eine zyklische
Task plus Interrupt-Tasks zu programmieren. Eine Programmierkonsole
kann jedoch auch zum Bearbeiten von Multitask-Programmen verwendet
werden, die ursprünglich mit CX-Programmer erstellt wurden.
! VORSICHTBeachten Sie stets diese Sicherheitshinweise. Das Nichtbeachten der folgen-
den Sicherheitshinweise kann schwere und möglicherweise tödliche Verletzungen zur Folge haben.
• Achten Sie bei der Installation der SPS auf eine ordnungsgemäße Erdung,
die den geltenden Vorschriften entspricht. Bei fehlender oder nicht vorschriftsmäßiger Erdung besteht die Gefahr eines elektrischen Schlags.
• Eine den Vorschriften entsprechende Erdung ist auch dann erforderlich,
wenn die Schutzerdungsklemme (GR) und die Signalerdungsklemme (LG)
der Spannungsversorgungs-Baugruppe miteinander verbunden werden.
• Schalten Sie die Spannungsversorgung zur SPS immer AUS, bevor Sie
versuchen, eine der folgenden Arbeiten durchzuführen. Bei Nichtabschalten der Versorgungsspannung besteht das Risiko von Fehlfunktionen und
die Gefahr eines elektrischen Schlags.
• Anbringen oder Abbauen von Spannungsversorgungsbaugruppen, E/ABaugruppen, CPU-Baugruppen, internen Modulen oder sonstigen Baugruppen.
• Zusammensetzen der Baugruppen.
• Einstellen der DIP-Schalter oder Drehschalter.
• Anschließen von Kabeln oder Verdrahten des Systems.
• Anschließen oder Lösen von Steckverbindungen.
! AchtungDas Nichtbeachten der folgenden Sicherheitshinweise kann einen fehlerhaf-
ten Betrieb der SPS oder des Systems zur Folge haben, oder es könnten die
SPS oder die SPS-Baugruppen beschädigt werden. Beachten Sie stets diese
Sicherheitshinweise.
• Die Anwenderprogramm- und Parameterbereichsdaten in CS1-H, CS1D,
CJ1-H und CJ1M CPU-Baugruppen werden im integrierten Flash-Speicher gesichert. Die BKUP-Anzeige auf der Vorderseite der CPU-Baugruppe leuchtet, während die Datensicherung ausgeführt wird. Schalten
Sie die Versorgungsspannung der CPU-Baugruppe nicht aus, solange die
BKUP-Anzeige leuchtet. Die Daten werden nicht gesichert, wenn die Versorgungsspannung ausgeschaltet wird.
• Wenn Sie eine CPU-Baugruppe der CS-Serie erstmalig verwenden, setzen Sie die mit Baugruppe mitgelieferte Batterie CS1W-BAT1 ein, und
löschen Sie vor dem Programmieren sämtliche Speicherbereiche mittels
eines Programmiergeräts. Wenn Sie die interne Uhr verwenden, schalten
Sie nach dem Einsetzen der Batterie die Versorgungsspannung ein, und
stellen Sie die Uhr mit Hilfe eines Programmiergeräts oder des Befehls
DATE(735) ein. Die Uhr läuft erst, wenn die Zeit eingestellt wurde.
• Bei Auslieferung der CPU-Baugruppe ist das SPS-Setup so eingestellt,
dass die CPU-Baugruppe in der Betriebsart startet, der mit dem Betriebsartenschalter der Programmierkonsole eingestellt ist. Wenn keine Programmierkonsole angeschlossen ist, startet eine CS1-CPU-Baugruppe
der CS-Serie in der PROGRAM-Betriebsart, die CS1-H, CS1D, CJ1, CJ1H oder CJ1M CPU-Baugruppen starten in der RUN-Betriebsart, so dass
der Betrieb sofort aufgenommen wird. Starten Sie niemals absichtlich
oder unabsichtlich den Betrieb, ohne sich zu vergewissern, dass dies
sicher ist.
• Setzen Sie beim Erstellen einer AUTOEXEC.IOM-Datei über ein Programmiergerät (eine Programmierkonsole oder CX-Programmer) zum
automatischen Übertragen von Daten beim Start die erste Schreibadresse auf D20000, und achten Sie darauf, dass die Größe der
geschriebenen Daten nicht die Größe des DM-Bereichs übersteigt. Wenn
die Datendatei beim Start von der Speicherkarte gelesen wird, werden
beginnend bei D20000 Daten in die CPU-Baugruppe geschrieben, selbst
wenn beim Erstellen der Datei AUTOEXEC.IOM eine andere Adresse eingestellt war. Wird ferner der DM-Bereich überschritten (dies ist beim Verwenden von CX-Programmer möglich), werden die übrigen Daten in den
EM-Bereich geschrieben.
xxiii
Sicherheitshinweise zum Einsatz5
• Schalten Sie die Versorgungsspannung der SPS stets vor der der gesteuerten Anlage ein. Wird die Versorgungsspannung der SPS erst nach der der
gesteuerten Anlage eingeschaltet, können zeitweilig Fehler in Steuerungssystemsignalen auftreten, da die Ausgangsklemmen an DC-Ausgangs-Baugruppen und anderen Baugruppen vorübergehend auf EIN geschaltet
werden, wenn die Versorgungsspannung der SPS eingeschaltet wird.
• Der Kunde muss durch entsprechende Vorkehrungen die Systemsicherheit für den Fall sicherstellen, dass bedingt durch Schäden an internen
Schaltkreisen (Relais, Transistoren oder andere Komponenten) von Ausgangs-Baugruppen intern auf AUS gesetzte Ausgänge weiterhin auf EIN
geschaltet bleiben.
• Der Kunde muss durch entsprechende Vorkehrungen die Systemsicherheit für den Fall sicherstellen, dass bedingt durch unterbrochene Signalleitungen, vorübergehende Spannungsausfälle oder beliebige andere
Ursachen falsche, fehlende oder ungewöhnliche Signale auftreten.
• Der Kunde muss Sperrschaltungen, Wegbegrenzungsschaltungen und
ähnliche Sicherheitsmaßnahmen in externen Schaltungen (d. h. nicht die
in der speicherprogrammierbaren Steuerung) vorsehen.
• Schalten Sie die Spannungsversorgung zur SPS nicht AUS, während
Daten übertragen werden. Schalten Sie die Versorgungsspannung vor
allem dann nicht aus, wenn eine Speicherkarte gelesen oder beschrieben
wird. Entnehmen Sie die Speicherkarte auch nicht, wenn die Anzeige
BUSY leuchtet. Drücken Sie zum Entnehmen einer Speicherkarte
zunächst die Speicherkartentaste, und warten Sie dann, bis die BUSYAnzeige erlischt, bevor Sie die Speicherkarte entnehmen.
• Wenn der E/A-Speicher-Haftmerker auf EIN gesetzt ist, werden die Ausgänge der SPS nicht auf AUS geschaltet und behalten ihren vorherigen
Status bei, wenn die SPS von der RUN- oder MONITOR- in die PROGRAM-Betriebsart umgeschaltet wird. Stellen Sie sicher, dass in diesem
Fall keine Gefahren von den angeschlossenen Geräten ausgehen. (Wenn
der Betrieb wegen eines schwerwiegenden Fehlers (einschließlich
FALS(007)) unterbrochen wird, werden alle Ausgänge aller AusgangsBaugruppen auf AUS geschaltet, und nur der interne Ausgabestatus wird
aufrecht erhalten.)
• Der Speicherinhalt der DM-, EM- und HR-Bereiche in der CPU-Baugruppe wird durch eine Batterie gesichert. Wenn die Spannung der Batterie abfällt, können diese Daten verloren gehen. Ergreifen Sie mit Hilfe des
Batterie-Fehlermerkers (A40204) Vorkehrungen für die Reinitialisierung
von Daten oder andere Maßnahmen für den Fall, dass die Spannung der
Batterie abfällt.
• Wenn eine SPS der CS-Serie mit 200 bis 240 V Wechselspannung versorgt
wird, müssen Sie stets die Drahtbrücken von den Spannungsauswahlklemmen der Spannungsversorgungs-Baugruppe entfernen (mit Ausnahme von
Spannungsversorgungs-Baugruppen mit weitem Eingangsspannungsbereich). Das Produkt wird zerstört, wenn bei angebrachten Drahtbrücken 200
bis 240 V AC angelegt werden.
• Verwenden Sie stets die in den Bedienerhandbüchern angegebenen Versorgungsspannungen. Eine falsche Spannung kann zu Fehlfunktionen
oder Bränden führen.
• Ergreifen Sie geeignete Maßnahmen, um sicherzustellen, dass das Gerät
mit der angegebenen Nennspannung und -frequenz versorgt wird. Lassen Sie an Installationsorten, an denen die Spannungsversorgung nicht
stabil ist, besondere Vorsicht walten. Eine falsche Spannungsversorgung
kann zu Fehlfunktionen führen.
• Installieren Sie externe Trennschalter, und ergreifen Sie weitere Sicherheitsmaßnahmen gegen Kurzschlüsse in externer Verdrahtung. Bei unzureichenden Sicherheitsmaßnahmen gegen Kurzschlüsse besteht Brandgefahr.
• Legen Sie keine Spannungen an die Eingangsbaugruppen an, die die
Nenneingangsspannung übersteigen. Bei zu hohen Spannungen besteht
Brandgefahr.
xxiv
Sicherheitshinweise zum Einsatz5
• Legen Sie keine Spannungen an die Ausgangsbaugruppen an und schließen Sie keine Lasten an die Ausgangsbaugruppen an, die die maximale
Schaltleistung übersteigen. Bei übermäßigen Spannungen oder Lasten
besteht Brandgefahr.
• Trennen Sie vor der Durchführung von Isolationswiderstandsmessungen
oder Spannungsbeständigkeitstests die Signalmasse (LG) von der
Gehäuseerde (GR). Andernfalls kann es zu Verbrennungen kommen.
• Installieren Sie die Baugruppen ordnungsgemäß, wie in den Bedienerhandbüchern angegeben. Bei unsachgemäßer Installation der Baugruppen besteht die Gefahr von Fehlfunktionen.
• Bei SPS-Systemen der CS-Serie muss sichergestellt werden, dass sämtliche Befestigungsschrauben der Baugruppen und des Baugruppenträgers
mit dem in den entsprechenden Handbüchern angegebenen Drehmoment
festgezogen werden. Ein falsches Anzugsdrehmoment kann zu Fehlfunktionen führen.
• Stellen Sie sicher, dass alle Klemmenschrauben und Schrauben von
Steckverbindern mit dem in den entsprechenden Handbüchern angegebenen Drehmoment festgezogen werden. Ein falsches Anzugsdrehmoment kann zu Fehlfunktionen führen.
• Belassen Sie beim Verdrahten die Schutzfolie an der Baugruppe. Beim
Entfernen der Schutzfolie besteht die Gefahr einer Fehlfunktion, wenn
Fremdkörper in die Baugruppe eindringen.
• Entfernen Sie die Schutzfolie nach Abschluss der Verdrahtungsarbeiten,
um eine ordnungsgemäße Wärmeableitung zu gewährleisten. Bei nicht
entfernter Schutzfolie besteht die Gefahr von Fehlfunktionen.
• Verwenden Sie für die Verdrahtung Crimp-Kabelschuhe. Schließen Sie
keine abisolierten Litzendrähte direkt an Klemmen an. Beim Anschließen
von abisolierten Litzendrähten besteht die Gefahr von Schmorbränden.
• Verdrahten Sie alle Anschlüsse ordnungsgemäß.
• Überprüfen Sie die gesamte Verdrahtung und alle Schaltereinstellungen
sorgfältig, bevor Sie die Spannungsversorgung einschalten. Bei unsachgemäßer Verdrahtung besteht Brandgefahr.
• Installieren Sie Baugruppen erst, nachdem Sie die Klemmenblöcke und
Steckverbinder eingehend überprüft haben.
• Stellen Sie sicher, dass die Klemmenblöcke, Speicherbaugruppen, Verlängerungskabel und andere Teile mit Arretierungen ordnungsgemäß eingerastet sind. Bei fehlender Arretierung besteht die Gefahr von Fehlfunktionen.
• Überprüfen Sie vor Beginn des Betriebs die Schaltereinstellungen, den
Inhalt des DM-Bereichs sowie andere Voreinstellungen. Bei Aufnahme
des Betriebs ohne sachgemäße Einstellungen bzw. Daten besteht die
Gefahr von unerwartetem Verhalten.
• Überprüfen Sie das Anwenderprogramm auf ordnungsgemäße Ausführung, bevor Sie es tatsächlich für die SPS einsetzen. Wird das Programm
nicht überprüft, besteht die Gefahr von unerwartetem Verhalten.
• Vergewissern Sie sich, dass keine negativen Auswirkungen im System
auftreten können, bevor Sie eine der folgenden Aktionen durchführen.
Andernfalls besteht die Gefahr von unerwartetem Verhalten.
• Ändern der Betriebsart der SPS.
• Zwangsweises Setzen/Rücksetzen eines Bits im Speicher.
• Ändern des aktuellen Wertes eines Wortes oder eines voreingestellten Wertes im Speicher.
• Ziehen Sie nicht an den Kabeln, und biegen Sie die Kabel nicht über das
natürliche Maß hinaus. Andernfalls können die Kabel dabei brechen.
• Stellen Sie keine Gegenstände auf die Kabel oder andere Leitungen. Die
Kabel können dabei brechen.
• Verwenden Sie keine handelsüblichen RS-232C-Computerkabel, sondern
ausschließlich die hier aufgeführten Spezialkabel. Müssen Kabel angefertigt werden, so beachten Sie unbedingt die Angaben in diesem Handbuch. Bei Verwendung von handelsüblichen Kabeln besteht die Gefahr,
dass externe Geräte oder die CPU-Baugruppe beschädigt werden.
xxv
Konformität mit EU-Richtlinien6
• Verbinden Sie niemals Stift 6 (5-V-Spannungsversorgung) des RS-232CAnschlusses der CPU-Baugruppe mit einem anderen Gerät als den
Adaptern NT-AL001 oder CJ1W-CIF11. Das externe Gerät oder die CPUBaugruppe können andernfalls beschädigt werden.
• Achten Sie beim Austauschen von Komponenten darauf, dass die neue
Komponente die richtigen Nenndaten besitzt. Andernfalls besteht die
Gefahr von Fehlfunktionen oder Brandgefahr.
• Achten Sie vor Berühren der SPS darauf, dass Sie zunächst einen geerdeten Metallgegenstand berühren, um statische Aufladung abzuleiten.
Andernfalls besteht die Gefahr von Fehlfunktionen oder Beschädigungen.
• Bewahren Sie Leiterplatten bei Transport oder Lagerung in antistatischem
Material auf, um sie vor statischer Elektrizität zu schützen. Achten Sie auf
die Einhaltung der zulässigen Lagerungstemperatur.
• Berühren Sie Leiterplatten oder die darauf befindlichen Komponenten
nicht mit bloßen Händen. Auf den Leiterplatten befinden sich scharfe
Anschlussdrähte und andere Teile, die bei unsachgemäßer Handhabung
zu Verletzungen führen können.
• Schließen Sie die Batterieanschlüsse niemals kurz. Die Batterie darf nicht
aufgeladen, zerlegt, erhitzt oder verbrannt werden. Setzen Sie die Batterie keinen starken Erschütterungen aus. Andernfalls besteht die Gefahr,
dass die Batterie undicht wird, bricht, Hitze erzeugt oder sich entzündet.
Entsorgen Sie Batterien, die heruntergefallen sind oder auf sonstige
Weise heftigen Erschütterungen ausgesetzt waren. Batterien, die
Erschütterungen ausgesetzt waren, können beim Gebrauch möglicherweise undicht sein.
• Nach UL-Standards dürfen Batterien nur von erfahrenen Technikern ausgewechselt werden. Lassen Sie die Batterien nicht von Personen austauschen, die nicht dafür qualifiziert sind.
• Bei einer SPS der CJ-Serie müssen die Schieber an den Ober- und
Unterseiten der Spannungsversorgungs-Baugruppen, CPU-Baugruppen,
E/A-Baugruppen, Spezial-E/A-Baugruppen und CPU-Bus-Baugruppen
vollständig verriegelt werden (sie müssen hörbar einrasten). Die SPS
funktioniert möglicherweise nicht ordnungsgemäß, wenn die Schieber
nicht eingerastet sind.
• Bringen Sie bei einer SPS der CJ-Serie stets die Endabdeckung an der
letzten Baugruppe rechts an. Die SPS funktioniert ohne die Endabdekkung nicht ordnungsgemäß.
• Fehlerhaft eingerichtete Data-Link-Tabellen oder -Parameter können zu
unerwartetem Systemverhalten führen. Stellen Sie auch bei korrekt eingerichteten Data-Link-Tabellen und -Parametern vor dem Starten und
Stoppen von Data-Links sicher, dass dies keine unerwünschten Auswirkungen auf das System hat.
• CPU-Bus-Baugruppen werden neu gestartet, wenn Routing-Tabellen von
einem Programmiergerät auf die CPU-Baugruppe übertragen werden.
Das Neustarten der Baugruppen ist zum Lesen und Aktivieren der neuen
Routing-Tabellen erforderlich. Stellen Sie vor dem Neustart der CPU-BusBaugruppen sicher, dass dies keine unerwünschten Auswirkungen auf
das System hat.
6Konformität mit EU-Richtlinien
6-1Anwendbare Richtlinien
• EMV-Richtlinien
• Niederspannungsrichtlinie
6-2Konzepte
EMV-Richtlinien
OMRON-Geräte, die den EU-Richtlinien entsprechen, entsprechen ebenfalls
den damit zusammenhängenden EMV-Normen, so dass sie auf einfachere
Weise in andere Geräte oder die Gesamtanlage integriert werden können.
Die tatsächlichen Produkte wurden auf Konformität mit EMV-Normen geprüft
(siehe folgender Hinweis). Ob die Produkte jedoch in dem vom Kunden verwendeten System den Normen entsprechen, muss der Kunde selbst prüfen.
xxvi
Konformität mit EU-Richtlinien6
Die Abstrahlungseigenschaften von OMRON-Produkten, die den EU-Richtlinien entsprechen, variieren je nach Konfiguration, Verdrahtung und anderen
Bedingungen der Installation oder der Schaltschränke, in denen die OMRONGeräte installiert sind. Der Kunde muss daher eine abschließende Prüfung
durchführen, um die Bestätigung zu erhalten, dass die Geräte und die
Gesamtanlage den EMV-Normen entsprechen.
HinweisDie folgenden EMV-Normen (elektromagnetische Verträglichkeit) sind
Stellen Sie immer sicher, dass Geräte, die mit Spannungen von 50 bis
1.000 V AC bzw. 75 bis 1.500 V DC arbeiten, die erforderlichen Sicherheitsnormen für die SPS erfüllen (EN61131-2).
6-3Konformität mit EU-Richtlinien
Die SPS der CS/CJ-Serie entsprechen den EU-Richtlinien. Um zu gewährleisten, dass die Anlage oder das Gerät, in dem die SPS der CS/CJ-Serie verwendet wird, den EU-Richtlinien entspricht, muss die SPS wie folgt installiert
sein:
1,2,3...1. Die SPS der CS/CJ-Serie muss in einem Schaltschrank installiert sein.
2. Sie müssen eine Schutzisolierung oder eine doppelte Isolierung für die
DC-Spannungsversorgungen verwenden, die an DC-Spannungsversorgungs- oder E/A-Baugruppen angeschlossen werden.
3. SPS der CS/CJ-Serie, die den EU-Richtlinien entsprechen, entsprechen
ebenfalls der allgemeinen Emissionsnorm (EN50081-6-4). Die Abstrahlungseigenschaften (10-m-Bestimmungen) variieren je nach Konfiguration
des verwendeten Schaltschranks, anderen an den Schaltschrank angeschlossenen Geräten, Verdrahtung und weiteren Bedingungen. Daher müssen Sie überprüfen, ob die Gesamtanlage oder -ausrüstung den EURichtlinien entspricht.
6-4Methoden zur Entstörung von Relaisausgängen
Die SPS der CS/CJ-Serie entsprechen den allgemeinen Emissionsnormen
(EN50081-6-4) der EMV-Richtlinien. Eine durch Schalten des Relaisausgangs erzeugte Störung erfüllt diese Norm jedoch möglicherweise nicht. In
diesem Fall muss ein Entstörfilter an der Lastseite angeschlossen werden,
oder für die SPS müssen andere geeignete externe Gegenmaßnahmen eingerichtet werden.
Die zur Erfüllung der Normen vorzunehmenden Gegenmaßnahmen variieren
je nach Gerät auf der Lastseite, Verdrahtung, Konfiguration der Anlagen usw.
Nachfolgend finden Sie Beispiele für Gegenmaßnahmen zur Reduzierung der
erzeugten Störungen.
Gegenmaßnahmen
(Nähere Einzelheiten finden Sie in EN61000-6-4.)
Es sind keine Gegenmaßnahmen erforderlich, wenn die Frequenz der Last-
schaltung im Gesamtsystem, in das die SPS eingebunden ist, unter fünf
Schaltungen pro Minute liegt.
Es sind Gegenmaßnahmen erforderlich, wenn die Frequenz der Lastschaltung im Gesamtsystem, in das die SPS eingebunden ist, über fünf Schaltungen pro Minute liegt.
xxvii
Konformität mit EU-Richtlinien6
Beispiele für Gegenmaßnahmen
Wird eine induktive Last geschaltet, schließen Sie einen Überspannungsschutz,
Dioden usw. parallel zu der Last oder dem Kontakt an, wie unten gezeigt.
Relais oder eine Magnetspule handelt,
gibt es eine Verzögerung zwischen
C
R
Induktive
Last
dem Öffnen des Schaltkreises und dem
Rücksetzen der Last.
Wenn die Versorgungsspannung 24
oder 48 V beträgt, setzen Sie den
Überspannungsschutz parallel zur Last
ein. Wenn die Versorgungsspannung
100 bis 200 V beträgt, setzen Sie den
Überspannungsschutz zwischen den
Kontakten ein.
NeinJaDie antiparallel zur Last geschaltete
Diode (Freilaufdiode) leitet den beim
Abbau des Magnetfelds entstehenden
Strom wieder in die Last, wo er aufgrund des Ohmschen Widerstands der
Induktive
Last
Last in Wärme umgewandelt wird.
Diese durch diese Methode verur-
sachte zeitliche Verzögerung zwischen
dem Öffnen des Schaltkreises und dem
Rücksetzen der Last ist länger als die
durch die Kondensator/WiderstandMethode verursachte.
JaJaDer Varistor wird bei Überschreitung
einer bestimmten Spannung, die größer als die Lastspannung gewählt werden muss, niederohmig. Auf diese
Weise wird der beim Abbau des
Magnetfelds der induktiven Last entste-
Induktive
Last
hende Strom kurzgeschlossen und die
Entstehung eines Schaltfunkens an
den Kontakten verhindert. Es tritt eine
zeitliche Verzögerung zwischen dem
Öffnen des Schaltkreises und dem
Rücksetzen der Last auf.
Beträgt die Versorgungsspannung 24
oder 48 V, so schalten Sie den Varistor
parallel zur Last. Beträgt die Versorgungsspannung 100 oder 200 V, so
schalten Sie den Varistor parallel zu
den Schaltkontakten.
Kondensator: 0,5 bis 1 µF / A Laststrom;
Widerstand: 0,5 bis 1 Ω / V Lastspannung. Diese Werte variieren jedoch je
nach Last und den Eigenschaften des
Relais. Ermitteln Sie experimentell die
optimalen Werte. Berücksichtigen Sie
dabei, dass der Kondensator die Funkenentladung beim Öffnen der Kontakte
unterdrücken und der Widerstand den
beim Schließen der Kontakte fließenden
Ladestrom des Kondensators begrenzen soll.
Die Durchschlagfestigkeit des Kondensators muss zwischen 200 und 300 V
liegen. Wird eine AC-Last geschaltet,
muss ein ungepolter Kondensator eingesetzt werden.
Der Wert für die Durchschlagfestigkeit
der Diode in Sperrrichtung muss mindestens zehnmal so hoch sein wie der
Spannungswert in der Schaltung. Der
Durchlassstrom der Diode muss gleich
oder größer als der Laststrom sein.
Bei Niederspannungsschaltkreisen
genügt es, wenn die Spitzensperrspannung der Freilaufdiode dem Zwei- bis
Dreifachen der Lastspannung entspricht.
---
xxviii
Beim Schalten einer Last mit einem hohen Einschaltstrom, etwa einer Glühlampe, reduzieren Sie den Einschaltstrom wie unten gezeigt.
Abhilfemaßnahme 1Abhilfemaßnahme 2
Ausgang
R
COM
Durch einen Vorschaltwiderstand
fließt bereits ca. ein Drittel des
Nennstroms der Glühlampe.
Ausgang
COM
Verwendung eines
Begrenzungswiderstands
R
ABSCHNITT 1
Betrieb der CPU-Baugruppe
In diesem Kapitel werden die Grundstruktur und der grundlegende Betrieb der CPU-Baugruppe beschrieben.
Inbetriebnahme - erste Schritte (nur CS1 CPU-Baugruppen)Abschnitt 1-1
1-1Inbetriebnahme - erste Schritte (nur CS1 CPU-Baugruppen)
Einsetzen der BatterieVor Inbetriebnahme der CS1 CPU-Baugruppe müssen Sie den Batteriesatz in
die CPU-Baugruppe einsetzen. Gehen Sie dazu wie folgt vor.
1,2,3...1. Führen Sie einen Schlitzschraubendreher in den schmalen Schlitz an der
Unterkante des Batteriefachs ein, und drücken Sie den Deckel zum Öffnen
nach oben.
2
Inbetriebnahme - erste Schritte (nur CS1 CPU-Baugruppen)Abschnitt 1-1
2. Setzen Sie den Batteriesatz mit dem Kabel nach außen in das Batteriefach
ein.
Batteriefach
3. Schließen Sie die Buchse des Batteriesatzes an den entsprechenden eingelöteten Batteriestecker im Batteriefach an. Der rote Draht muss an den
oberen Stift und der weiße Draht an den unteren Stift angeschlossen werden. Im Gerät befinden sich zwei Batteriestecker. Schließen Sie die Batterie an einen der beiden Batteriestecker an. Es ist gleichgültig, ob Sie die
Batterie an den oberen oder an den unteren Batteriestecker anschließen.
Rot
Batterieanschluss
(An einen der Anschlüsse anschließen)
Weiß
3
Inbetriebnahme - erste Schritte (nur CS1 CPU-Baugruppen)Abschnitt 1-1
4. Verstauen Sie das Kabel im Fach, und schließen Sie den Deckel.
Löschen des SpeichersLöschen Sie nach dem Einsetzen der Batterie den Speicher mit Hilfe der Pro-
grammierkonsole. Dadurch wird der RAM-Speicher in der CPU-Baugruppe
initialisiert.
Programmierkonsole
Geben Sie an der Programmierkonsole folgende Tastenfolge ein.
Ausgangsanzeige
NOT
SETRESET
MON
MON
0
(oder
0
)
1
HinweisBeim Löschen von Speicherinhalten über die Programmierkonsole können
Sie immer nur jeweils eine zyklische Task angeben. Sie können eine zyklische
Task und eine Interrupt-Task oder eine zyklische Task und keine InterruptTask angeben. Weitere Informationen zum Löschen des Speichers finden Sie
im Bedienerhandbuch. Weitere Informationen zu Tasks finden Sie in
ABSCHNITT 1 Betrieb der CPU-Baugruppe und in ABSCHNITT 4 Tasks.
CX-Programmer
Der Speicher kann auch mit Hilfe von CX-Programmer gelöscht werden. Eine
Beschreibung der Vorgehensweise hierzu finden Sie im CX-ProgrammerBedienerhandbuch.
Löschen von FehlernNach dem Löschen des Speichers müssen alle in der CPU-Baugruppe
gespeicherten Fehler, einschließlich des Fehlers wegen zu niedriger Batteriespannung, gelöscht werden.
Programmierkonsole
Geben Sie an der Programmierkonsole folgende Tastenfolge ein.
Ausgangsanzeige
MONFUNMON
(Angezeigte Fehlermeldung wird gelöscht)
MON
(Kehrt zur Ausgangsanzeige zurück)
CX-Programmer
Fehler können auch mit Hilfe von CX-Programmer gelöscht werden. Eine
Beschreibung der Vorgehensweise hierzu finden Sie im CX-ProgrammerBedienerhandbuch.
HinweisFalls ein internes Steckmodul installiert ist, bleibt möglicherweise weiterhin
ein Routing-Tabellen-Fehler bestehen, obwohl Sie den Fehler mit Hilfe von
CX-Programmer gelöscht haben. (Bei einem seriellen Kommunikationsmodul
ist A42407 auf EIN gesetzt.) Falls dies der Fall ist, schalten Sie entweder das
Gerät aus und wieder ein, oder führen Sie einen Neustart des internen
Moduls durch. Löschen Sie den Fehler anschließend erneut.
4
Verwenden der internen Uhr (nur CS1 CPU-Baugruppen)Abschnitt 1-2
1-2Verwenden der internen Uhr (nur CS1 CPU-Baugruppen)
Beim Einlegen der Batterie in die CPU-Baugruppe der CS-Serie ist die interne
Uhr der CPU-Baugruppe auf „00 (Jahr), 01 (Monat), 01 (Tag), (00-01-01), 00
(Stunden), (00) Minuten, (00) Sekunden, (00:00:00), und Sonntag (So)“ eingestellt.
Wenn Sie die interne Uhr verwenden möchten, schalten Sie die Spannungsversorgung ein, nachdem Sie die Batterie eingelegt haben. Stellen Sie entweder mit Hilfe eines Programmiergeräts (Programmierkonsole oder CXProgrammer) die Zeit ein, oder führen Sie den Befehl zur Uhreinstellung
CLOCK ADJUSTMENT (DATE) aus. Sie können die interne Uhr auch mit
einem FINS-Befehl zeitgenau und mit dem richtigen Datum starten.
So stellen Sie die interne Uhr mit Hilfe der Programmierkonsole ein:
Tastenfolge
Ausgangsanzeige
FUN
SHIFT
MON
0
Festlegen: Jahr Monat Tag Stunde Minuten Sekunden
CHG
↑
↓
Daten
WRITE
5
Interne Struktur der CPU-BaugruppeAbschnitt 1-3
1-3Interne Struktur der CPU-Baugruppe
1-3-1Übersicht
In der folgenden Abbildung wird die interne Struktur der CPU-Baugruppe dargestellt.
CPU-Baugruppe
Anwenderprogramm
Automatische
Sicherung
FlashSpeicher
(nur CS1-H, CS1D, CJ1-H,
oder CJ1M CPU-Baugruppen)
Automatische
Sicherung
E/A-Speicher
EM-Dateispeicher
SPSEinstellungen
und andere
Parameter
Zugriff
Task 1
Task 2
Task n
Speicherkarte
DIP-Schalter
Das Programm ist in Tasks
unterteilt, und die Tasks
werden in der Reihenfolge
der Task-Nummern ausgeführt.
E/A-Speicher, SPS-Einstellungen,
Programme und EM-Bereich können
als Dateien gespeichert werden.
Das AnwenderprogrammDas Anwenderprogramm wird aus bis zu 288 Programm-Tasks, einschließlich
Interrupt-Tasks, zusammengestellt. Die Tasks werden von der Programmiersoftware CX-Programmer in die CPU-Baugruppe übertragen.
Es gibt zwei Arten von Tasks: Die erste ist eine zyklische Task, die einmal pro
Zyklus (maximal 32) ausgeführt wird, und die andere ist eine Interrupt-Task, die
nur ausgeführt wird, wenn Interrupt-Bedingungen auftreten (maximal 256). Zyklische Tasks werden in numerischer Reihenfolge ausgeführt.
Hinweis1. Mit den CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen können Interrupt-
Tasks – genauso wie zyklische Tasks – auch zyklisch ausgeführt werden. Diese werden als „zyklische Zusatztasks“ bezeichnet. Die Gesamtzahl der Tasks,
die zyklisch ausgeführt werden können, beträgt maximal 288.
2. Wenn Sie mit CX-Programmer arbeiten, müssen Sie für die CS1-H und CJ1H CPU-Baugruppen Version 2.1 oder höher verwenden. Für die CJ1M CPUBaugruppen (außer Low-End-Modelle) beziehungsweise CS1D bei Systemen mit Duplex-CPU muss Version 3.0 oder höher verwendet werden. Wenn
Sie eine Low-End-CJ1M CPU-Baugruppe (CJ1M-CPU11/CPU21) einsetzen,
müssen Sie die CX-Programmer-Version 3.3 oder höher verwenden. Wenn
Sie eine CS1-H, CJ1-H, CJ1M bzw. CS1D CPU-Baugruppe Version 2.0 oder
höher einsetzen, müssen Sie die CX-Programmer-Version 4.0 oder höher verwenden.
Programmbefehle, mit denen über Lese- und Schreibzugriff auf den E/A-Speicher zugegriffen wird, werden der Reihefolge im Programm von oben beginnend
ausgeführt. Nachdem alle zyklische Tasks ausgeführt wurden, werden die E/ADaten für alle Baugruppen aktualisiert, und der Zyklus wird, beginnend mit der
zyklischen Task mit der niedrigsten Nummer, erneut gestartet.
Informationen zur E/A-Aktualisierung finden Sie auch im Abschnitt über den
Betrieb der CPU-Baugruppe im CS/CJ-Serie Bedienerhandbuch.
6
Interne Struktur der CPU-BaugruppeAbschnitt 1-3
E/A-SpeicherDer E/A-Speicher ist der Bereich des RAM, der für das Lesen und Schreiben
aus dem Anwenderprogramm heraus verwendet wird. Er besteht aus einem
Bereich, der beim Ein- beziehungsweise Ausschalten des Geräts gelöscht
wird, und aus einem weiteren Bereich, dessen Daten in diesem Fall erhalten
bleiben.
Der E/A-Speicher ist zudem in einen Bereich, dessen Daten mit sämtlichen
Baugruppen ausgetauscht werden, und in einen Bereich, der ausschließlich
der internen Nutzung dient, unterteilt. Ein Datenaustausch mit allen Baugruppen erfolgt einmal pro Programmausführungszyklus oder wenn spezielle
Befehle ausgeführt werden.
SPS-SetupDas SPS-Setup dient dem Eingeben verschiedener Konfigurationseinstellun-
gen oder anderer Einstellungen mit Hilfe von Software.
DIP-SchalterDIP-Schalter dienen zur Festlegung von Konfigurationseinstellungen oder
anderen Einstellungen.
SpeicherkartenSpeicherkarten werden bei Bedarf dazu verwendet, um Daten, wie zum Bei-
spiel Programme, E/A-Speicherdaten, das SPS-Setup und E/A-Kommentare,
die mit Programmiergeräten erstellt wurden, zu speichern. Wenn die SPS eingeschaltet wird, können Programme und verschiedene Systemeinstellungen
automatisch von der Speicherkarte übertragen werden (automatische Übertragung beim Einschalten).
Flash-Speicher (nur
CS1-H, CJ1-H, CJ1M und
CS1D CPU-Baugruppen)
Bei den CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen werden das Anwenderprogramm und die Daten der Parameterbereiche, wie zum Beispiel SPSSetup, automatisch im integrierten Flash-Speicher gesichert, wenn der Anwender Daten an die CPU-Baugruppe überträgt. Damit ist ein Betrieb ohne Batterie
und ohne Speicherkarte möglich. Der Inhalt des E/A-Speichers einschließlich
des größten Teils des DM-Bereiches werden ohne Batterie nicht gesichert.
1-3-2Blockdiagramm des Speichers einer CPU-Baugruppe
Bei der CS/CJ-Serie besteht der Speicher der CPU-Baugruppe (RAM) aus
den folgenden Blöcken:
• Parameterbereich (SPS-Setup, registrierte E/A-Tabelle, Routing-Tabelle
und CPU-Bus-Baugruppeneinstellungen)
• E/A-Speicherbereiche
• Anwenderprogramm
Daten aus dem Parameterbereich und dem E/A-Speicherbereich werden durch
eine Batterie gesichert (CS-Serie: CS1W-BAT01, CJ1-H: CPM2A-BAT01) und
gehen verloren, wenn die Batteriespannung zu gering ist.
Die CPU-Baugruppen CS1-H, CJ1-H, CJ1M und CS1D besitzen einen integrierten Flash-Speicher, in dem die Daten gesichert werden. Jedes Mal, wenn
der Anwender über ein Programmiergerät (z. B. CX-Programmer oder Programmierkonsole) Daten in die CPU-Baugruppe schreibt, werden das Anwenderprogramm und Parameterbereichsdaten automatisch im eingebauten
Flash-Speicher gesichert. Dies gilt auch bei folgenden Vorgängen: Datenübertragungen, Online-Bearbeitung, Übertragungen von Speicherkarten usw.
Dies bedeutet, dass das Anwenderprogramm und die Daten des Parameterbereichs auch dann nicht verloren gehen, wenn die Batteriespannung abfällt.
7
Interne Struktur der CPU-BaugruppeAbschnitt 1-3
CPU-Baugruppe
Integrierter RAM-Speicher
E/A-Speicherbereich
Flash-Speicher
(nur CS1-H, CJ1-H, CJ1M und
CS1D CPU-Baugruppen)
Auto-
Anwenderprogramm
Parameterbereich
Kommentarspeicherbereich
FB-Programmspeicherbereich
matisches
Schreiben
Automatisches
Schreiben
Hinweis1. Durch Umstellen von Schalter 1 des DIP-Schalterblocks an der Vordersei-
Laufwerk 1: EM-Dateispeicher
(siehe Hinweis 2)
Anwenderprogramm
Parameterbereich
(siehe Hinweis 1)
Aufrechterhaltung
Batterie
Eine frisch installierte Batterie hat bei einer Umgebungstemperatur
von 25 ˚C eine Nutzungsdauer von bis zu fünf Jahren.
Laufwerk 0:
Speicherkarte
(Flash-Speicher)
Dateispeicher
Automatische Sicherung im Flash-Speicher, wenn über ein
Programmiergerät ein Schreibvorgang für den Anwenderspeicherbereich (Anwenderprogramm- oder Parameterbereich) ausgeführt wird.
Für die Speicherung von Symboltabellen, Kommentar- und
Programmindexdateien. Bei der Übertragung von Projekten von
CX-Programmer Ver. 5.0 können bei den CPU-Baugruppen ab
Ver. 3.0 Speicherkarten, EM-Dateispeicher oder Kommentarspeicher
als Ziel ausgewählt werden.
Beim Übertragen von Projekten mit Funktionsblöcken von CXProgrammer in eine CPU-Baugruppe ab Baugruppenversion 3.0
werden die Funktionsblock-Programminformationen automatisch
im FB-Programmspeicherbereich abgelegt.
te der CPU-Baugruppe in die Stellung ON können der Parameterbereich
und das Anwenderprogramm (d. h. der Anwenderspeicher) schreibgeschützt werden.
2. Der EM-Dateispeicher ist Teil des EM-Bereiches, der im SPS-Setup in Dateispeicher umgewandelt wurde. Alle EM-Banken ab der spezifizierten
Bank bis zum Ende des EM-Bereichs können nur als Dateispeicher für die
Speicherung von Daten- und Programmdateien verwendet werden.
3. Vergessen Sie nicht, die mitgelieferte Batterie (CS1W-BAT01) einzulegen,
bevor Sie eine CS1 CPU-Baugruppe zum ersten Mal in Betrieb nehmen.
Löschen Sie nach dem Einlegen der Batterie den RAM-Speicher der SPS
(Parameterbereich, E/A-Speicherbereich und Anwenderprogramm) mit
Hilfe eines Programmiergeräts.
4. In den CPU-Baugruppen CS1-H, CJ1, CJ1-H, CJ1M und CS1D ist ab
Werk eine Batterie eingesetzt. Es ist nicht nötig, den Speicher zu löschen
und die Uhrzeit einzustellen.
5. Die BKUP-Anzeige an der Vorderseite der CPU-Baugruppe leuchtet, während Daten in den Flash-Speicher geschrieben werden. Schalten Sie die
Spannungsversorgung der CPU-Baugruppe erst aus, wenn die Datensicherung abgeschlossen ist (d. h. die BKUP-Anzeige erloschen ist). Weitere Informationen finden Sie im Abschnitt 6-6-11 Flash-Speicher.
8
BetriebsartenAbschnitt 1-4
1-4Betriebsarten
1-4-1Beschreibung der Betriebsarten
Die CPU-Baugruppe besitzt die folgenden Betriebsarten. Diese Betriebsarten
gelten sowohl für das gesamte Anwenderprogramm als auch für alle Tasks.
PROGRAM-BetriebsartIn der PROGRAM-Betriebsart wird die Programmausführung angehalten. Die
RUN-Anzeige leuchtet nicht. Diese Betriebsart wird verwendet, wenn das Programm bearbeitet wird oder andere Vorbereitungen ausgeführt werden, wie
zum Beispiel:
• Registrieren der E/A-Tabelle.
• Ändern des SPS-Setups und anderer Einstellungen.
• Übertragen und Prüfen von Programmen.
• Zwangsweises Setzen beziehungsweise Rücksetzen von Bits, um die
Verdrahtung und die Zuordnung von Bits zu prüfen.
In dieser Betriebsart werden keine zyklischen und Interrupt-Tasks ausgeführt,
d. h. sie werden angehalten. Weitere Informationen zu Tasks finden Sie im
Abschnitt 1-6 Beschreibung von Tasks.
Die E/A-Aktualisierung wird in der PROGRAM-Betriebsart ausgeführt. Weitere Informationen zur E/A-Aktualisierung finden Sie im Bedienerhandbuch.
! VORSICHTDie CPU-Baugruppe führt E/A-Aktualisierungen auch dann durch, wenn das
Programm angehalten ist (d. h. in der PROGRAM-Betriebsart). Überprüfen
Sie die Sicherheit sorgfältig im Voraus, bevor Sie den Status von Bits oder
Worten des E/A-Speichers ändern, die E/A-Baugruppen, Spezial-E/A-Baugruppen oder CPU-Bus-Baugruppen zugeordnet sind. Änderungen an den
einer Baugruppe zugeordneten Daten können ein unvorhergesehenen Verhalten der an die Baugruppen angeschlossenen Lasten (Maschinen) zur
Folge haben. Die folgenden Bedienvorgänge können zu Änderungen von Bits
und Worten des E/A-Speichers führen.
• Übertragen von E/A-Speicherdaten von einem Programmiergerät in die
CPU-Baugruppe.
• Ändern der aktuellen Werte im Speicher von einem Programmiergerät aus.
• Zwangsweises Setzen oder Rücksetzen von Bits über ein Programmiergerät.
• Übertragen von E/A-Speicherdateien von einer Speicherkarte oder dem
EM-Dateispeicher in die CPU-Baugruppe.
• Übertragen von E/A-Speicherdaten von einem Host-Computer oder von
einer anderen SPS im Netzwerk.
MONITOR-BetriebsartDie folgenden Vorgänge können mit Hilfe eines Programmiergerätes ausgeführt
werden, während das Programm in der MONITOR-Betriebsart ausgeführt wird.
Die RUN-Anzeige leuchtet. Diese Betriebsart wird dazu verwendet, Probeläufe
des Programms auszuführen oder andere Anpassungen vorzunehmen.
• Online-Bearbeitung.
• Zwangsweises Setzen/Rücksetzen von Bits.
• Ändern von Werten im E/A-Speicher.
In dieser Betriebsart werden die für die Ausführung beim Systemstart ausgewählten Tasks (siehe Hinweis) und die mit dem Befehl TKON(820) ausführbar
gemachten Tasks ausgeführt, sobald die Programmausführung bei den jeweiligen Tasknummern angelangt ist. Interrupt-Tasks werden ausgeführt, falls die
für sie festgelegten Interrupt-Bedingungen vorliegen.
HinweisDie beim Systemstart auszuführenden Tasks werden in den Programmeigen-
schaften mit Hilfe von CX-Programmer spezifiziert.
9
BetriebsartenAbschnitt 1-4
RUN-BetriebsartDiese Betriebsart wird für die normale Programmausführung verwendet. Die
RUN-Anzeige leuchtet. In dieser Betriebsart sind einige Funktionen der Programmiergeräte, wie zum Beispiel Online-Bearbeitung, zwangsweises Setzen/Rücksetzen und Ändern von Werten im E/A-Speicher, deaktiviert, andere
Funktionen der Programmiergeräte jedoch, wie zum Beispiel die Überwachung des Status der Programmausführung (Programmüberwachung und
Überwachung des E/A-Speichers), stehen zur Verfügung.
Verwenden Sie diese Betriebsart für den normalen Systembetrieb. Die Ausführung der Tasks ist mit der in der MONITOR-Betriebsart identisch.
Weitere Informationen über die Funktionen, die in den einzelnen Betriebsarten zur Verfügung stehen, finden Sie im Abschnitt 10-2, Betriebsarten derCPU-Baugruppe, im Bedienerhandbuch.
1-4-2Initialisierung des E/A-Speichers
In folgender Tabelle wird angezeigt, welche Datenbereiche gelöscht werden,
wenn ein Wechsel der Betriebsart von der PROGRAM-Betriebsart zur RUN-/
MONITOR-Betriebsart oder umgekehrt erfolgt.
BetriebsartenwechselNicht erhaltene
Bereiche
(siehe Hinweis 1)
RUN/MONITOR → PROGRAMGelöscht (Hinweis 3)Bleibt erhalten
PROGRAM → RUN/MONITORGelöscht (Hinweis 3)Bleibt erhalten
RUN ↔ MONITORBleibt erhaltenBleibt erhalten
Erhaltene
Bereiche
(siehe Hinweis 2)
Hinweis1. Nicht erhaltene Bereiche: CIO-Bereich, Arbeitsbereich, Zeitgeber-Istwerte,
Zeitgeberablaufmerker, Indexregister, Datenregister, Task-Merker und Bedingungsmerker.
(Der Status einiger Adressen im Zusatz-Systembereich bleibt erhalten, während andere gelöscht werden.)
2. Erhaltene Bereiche: Haftmerker-Bereich, DM-Bereich, EM-Bereich, ZählerIstwerte und Zählerablaufmerker.
3. Daten im E/A-Speicher bleiben erhalten, wenn der E/A-Speicher-Haftmerker (A50012) auf EIN gesetzt ist. Wenn der E/A-Speicher-Haftmerker
(A50012) auf EIN gesetzt ist und der Betrieb aufgrund eines schwerwiegenden Fehlers (einschließlich FALS(007)) gestoppt wird, bleibt der Inhalt des
E/A-Speichers erhalten, jedoch werden alle Ausgänge aller Ausgangsbaugruppen ausgeschaltet.
10
BetriebsartenAbschnitt 1-4
1-4-3Betriebsart beim Einschalten
Weitere Informationen zu den Einstellungen für die Betriebsart beim Einschalten der CPU-Baugruppe finden Sie im Bedienerhandbuch.
HinweisDie CJ1, CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen werden in der
RUN-Betriebsart gestartet, sofern keine Programmierkonsole angeschlossen
ist. Dies unterscheidet sie von einer CS1 CPU-Baugruppe, die in der werksseitigen Einstellung in der PROGRAM-Betriebsart gestartet wird, sofern keine
Programmierkonsole angeschlossen ist.
BedingungenCS1 CPU-
In den SPS-Einstellungen ist die StartBetriebsart auf „Programmierkonsole
verwenden“ festgelegt, es ist jedoch
keine Programmierkonsole angeschlossen.
Versorgungsspannung eingeschaltet.
Sind die
SPS-Einstellungen
auf die Betriebsart der
Programmierkonsole
eingestellt?
Ja
Programmierkonsole ange-
schlossen?
Nein
Nein
Ja
Baugruppe
PROGRAMBetriebsart
Die CPU-Baugruppe
startet in der in
SPS-Einstellungen
eingestellten Betriebsart.
Die CPU-Baugruppe
startet in der Betriebsart,
auf die die Programmierkonsole eingestellt ist.
CJ1, CS1-H, CJ1-H,
CJ1M und CS1D
CPU-Baugruppen
RUN-Betriebsart
CJ1, CS1-H, CJ1-H und CJ1M
CPU-Baugruppen: CPU-Baugruppe
startet in der RUN-Betriebsart.
CS1 CPU-Baugruppe:
CPU-Baugruppe startet in der
PROGRAM-Betriebsart.
11
Programme und TasksAbschnitt 1-5
1-5Programme und Tasks
Tasks bestimmen die Abfolge und die Interrupt-Bedingungen, unter denen die
einzelnen Programme ausgeführt werden. Sie können allgemein in die folgenden Typen unterteilt werden:
1,2,3...1. Nacheinander ausgeführte Tasks, die als zyklische Tasks bezeichnet werden.
2. Beim Eintreten von Interrupt-Bedingungen ausgeführte Tasks, die als Interrupt-Tasks bezeichnet werden.
HinweisBei den CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen können Interrupt-
Tasks – genauso wie zyklische Tasks – auch zyklisch ausgeführt werden. Diese
werden als „zyklische Zusatztasks“ bezeichnet.
Die zyklischen Tasks zugeordneten Programme werden der Reihe nach entsprechend ihrer Tasknummer ausgeführt und die E/A-Daten werden einmal pro
Zyklus aktualisiert, nachdem sämtliche Tasks (genauer gesagt, alle Tasks im
ausführbaren Status) ausgeführt wurden. Falls während der Verarbeitung der
zyklischen Tasks eine Interrupt-Bedingung eintritt, wird die Ausführung der
zyklischen Task unterbrochen, und das der Interrupt-Task zugeordnete Programm wird ausgeführt.
Weitere Informationen zur E/A-Aktualisierung finden Sie auch im Abschnitt über
den Betrieb der CPU-Baugruppe im CS/CJ-Serie Bedienerhandbuch.
Programm A
Zyklische
Task 0
Zyklische
Task 1
Zyklische
Task n
E/A-Aktualisierung
Interrupt-Bedingung
tritt ein
Zuweisung
Zuweisung
Zuweisung
InterruptTask 100
Programm B
Zuweisung
Programm C
Programm D
Bei dem oben aufgeführten Beispiel würde das Programm in der folgenden
Reihenfolge ausgeführt: Start von A, B, Rest von A, C und dann D. Hierbei
wird davon ausgegangen, dass während der Ausführung von Programm A die
Interrupt-Bedingung die Interrupt-Task 100 erfüllt wird. Wenn die Ausführung
von Programm B abgeschlossen ist, wird der Rest von Programm A ab dem
Punkt ausgeführt, an dem die Ausführung unterbrochen wurde.
Bei älteren SPS von OMRON wird aus mehreren fortlaufenden Teilen ein kontinuierliches Programm gebildet. Die den einzelnen Tasks zugeordneten Programme sind Einzelprogramme, die mit einem END-Befehl enden, genau wie
die Einzelprogramme früherer SPS.
12
Programme und TasksAbschnitt 1-5
Ein Merkmal der zyklischen Tasks ist, dass sie durch die Task-Steuerbefehle
aktiviert (in den ausführbaren Status versetzt) und deaktiviert (in den
Standby-Status versetzt) werden können. Dies bedeutet, dass mehrere Programmkomponenten zu einer Task zusammengestellt werden können und
dass dann nur bestimmte Programme (Tasks), die für das jeweilig aktuelle
Produktmodell oder den zu dem jeweiligen Zeitpunkt auszuführenden Prozess benötigt werden, ausgeführt werden können (Programm-Schritt-Schaltung). Da also nur die jeweils tatsächlich benötigten Programme ausgeführt
werden, wird die Leistung (Zykluszeit) wesentlich gesteigert.
Herkömmliches System
Ein fortlaufendes
Unterprogramm
E/A-Aktualisierung
CS/CJ-Serie
Task 1
Zuweisung
Task 2
Task 3
E/A-Aktualisierung
Tasks können in den
Nichtausführungs-Status
(Standby) versetzt werden.
Eine Task, die ausgeführt wurde, wird in aufeinander folgenden Zyklen ausgeführt und eine Task im Standby-Status bleibt auch in den folgenden Zyklen im
Standby-Status, sofern sie nicht von einer anderen Task ausgeführt wird.
HinweisIm Gegensatz zu früheren Programmen, die mit dem Lesen einer Rolle vergli-
chen werden können, kann das Ausführen von Tasks jetzt mit dem Lesen
eines Satzes einzelner Karten verglichen werden.
• Alle Karten werden in einer vorher festgelegten Reihenfolge beginnend
mit der niedrigsten Nummer gelesen.
• Alle Karten sind entweder als aktiv oder als inaktiv gekennzeichnet. Als
inaktiv gekennzeichnete Karten werden übersprungen. (Die Aktivierung
beziehungsweise Deaktivierung der Karten erfolgt durch Task-Steuerbefehle.)
13
Beschreibung von TasksAbschnitt 1-6
• Eine aktivierte Karte bleibt aktiviert und wird immer wieder gelesen. Eine
deaktivierte Karte bleibt deaktiviert und wird übersprungen, bis sie durch
eine andere Karte wieder aktiviert wird.
Herkömmliches Programm:
Wie eine Schriftrolle
Programm der CS/CJ-Serie:
Wie eine Reihe von Karten, die durch andere
Karten aktiviert oder deaktiviert werden können.
AktiviertDeaktiviert
1-6Beschreibung von Tasks
Tasks sind im Allgemeinen in die folgenden Typen unterteilt:
1,2,3...1. Zyklische Tasks (max. 32)
Tasks, die einmal pro Zyklus ausgeführt werden, falls sie ausführbar sind. Bei
Bedarf kann auch die Ausführung von zyklischen Tasks deaktiviert werden.
2. Interrupt-Tasks
Tasks, die ausgeführt werden, wenn Interrupt-Bedingungen eintreten, unab-
hängig davon, ob gerade eine zyklische Task ausgeführt wird oder nicht. Interrupt-Tasks (siehe Hinweise 1 und 2) können in die folgenden vier Typen
unterteilt werden (fünf Typen einschließlich der zyklischen Zusatz-Tasks bei
den CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen):
a) Interrupt-Task für Spannungsfehler (nicht unterstützt von den CS1D
CPU-Baugruppen für Duplex-CPU-Systeme):
wird ausgeführt, wenn die Spannungsversorgung unterbrochen
wird. (max. 1)
b) Zeitgesteuerte Interrupt-Task für Intervallzeitgeber (nicht unterstützt
von den CS1D CPU-Baugruppen für Duplex-CPU-Systeme):
wird in spezifizierten Zeitabständen ausgeführt. (max. 2)
c) E/A-Interrupt-Task (nicht unterstützt von den CJ1 CPU-Baugruppen
und CS1D CPU-Baugruppen für Duplex-CPU-Systeme):
wird ausgeführt, wenn ein Eingang einer Interrupt-Eingangsbaugruppe auf EIN wechselt (max. 32).
d) Externe Interrupt-Task (nicht unterstützt von den CJ1 CPU-Baugrup-
pen und CS1D CPU-Baugruppen für Duplex-CPU-Systeme):
wird ausgeführt (max. 256), wenn er von einer Spezial-E/A-Baugruppe, einer CPU-Bus-Baugruppe oder einem internen Modul
(nur CS-Serie) angefordert wird.
e) Zyklische Zusatz-Task (nur unterstützt von den CS1-H, CJ1-H, CJ1M
und CS1D CPU-Baugruppen):
Interrupt-Tasks, die als zyklische Tasks behandelt werden. Zyklische Zusatztasks werden, solange sie sich im ausführbaren Status
befinden, einmal pro Zyklus ausgeführt.
Mit CX-Programmer können insgesamt 288 Tasks mit 288 Programmen
erstellt und gesteuert werden. Dazu gehören bis zu 32 zyklische Tasks und
256 Interrupt-Tasks.
14
Beschreibung von TasksAbschnitt 1-6
Hinweis1. Gegenwärtig werden von CJ1 CPU-Baugruppen keine E/A-Interrupt-Ta-
sks und keine externen Interrupt-Tasks unterstützt. Demzufolge beträgt die
Höchstzahl der Tasks für eine CJ1 CPU-Baugruppe 35, d. h. 32 zyklische
Tasks und 3 Interrupt-Tasks. Die Gesamtzahl der Programme, die erstellt
und gesteuert werden können, beträgt ebenfalls 35.
2. Die CS1D CPU-Baugruppen unterstützen keine Interrupt-Tasks. Allerdings können bei CS1D CPU-Baugruppen Interrupt-Tasks als zyklische
Zusatztasks verwendet werden.
Jedes Programm ist durch eine individuelle Programmeigenschaft, die mit
Hilfe von CX-Programmer eingestellt wird, 1:1 einer Task zugeordnet.
Zyklische Task 0
Interrupt-Task 5
Ausführung beginnend bei
der niedrigsten Nummer.
Zyklische Task 1
Interrupt tritt auf
Zyklische Task 2
Hinweis Bedingungsmerker (ER, >, =, usw.) und Befehlsbedingungen
E/A-Aktualisierung
Peripherieverarbeitung
(Verriegelung EIN usw.) werden zu Beginn jeder Task gelöscht.
ProgrammstrukturFür die Erstellung von Programmen können je nach Bedarf Standardunterpro-
gramme erstellt und zu Tasks zugeordnet werden. Dies bedeutet, dass Programme in Modulen (Standardkomponenten) erstellt werden können und das
Debugging bei jeder Task einzeln durchgeführt werden kann.
15
Beschreibung von TasksAbschnitt 1-6
Standard-Unterprogramme
Anwenderprogramm ABCAnwenderprogramm ABD
Task 1 (A)
Task 1 (A)
Ausführbarer und
Standby-Status
Programm
Task 2 (B)
Task 3 (C)
Task 2 (B)
Task 3 (D)
Beim Erstellen von modularen Programmen kann die Standardisierung durch
die Angabe von Adressen mit Hilfe von Symbolen erleichtert werden.
Um eine andere Task in den ausführbaren oder den Standby-Status zu versetzen, können in einer Task die Befehle TASK ON oder TASK OFF
(TKON(820) bzw. TKOF(821)) ausgeführt werden.
Befehle in Tasks, die im Standby-Status sind, werden nicht ausgeführt, aber
ihr E/A-Status bleibt erhalten. Wenn eine Task wieder in den ausführbaren
Status versetzt wird, werden die Befehle mit dem erhalten gebliebenen E/AStatus ausgeführt.
Beispiel: Programmierung mit einer Steuer-Task
In diesem Beispiel ist Task 0 eine Steuer-Task, die bei Beginn des Betriebs
zuerst ausgeführt wird. Mit CX-Programmer (allerdings nicht mit einer Programmierkonsole) kann für weitere Tasks festgelegt werden, ob sie bei
Beginn des Betriebs ausgeführt werden sollen oder nicht.
Wenn die Ausführung des Programms begonnen hat, können die Tasks durch
die Befehle TKON(820) und TKOF(821) gesteuert werden.
Task 0
16
Task 0 (Steuer-Task)
Task 1
Task 2
Task 3
Beispiel:
Task 0 ist auf die Ausführung bei Betriebsstart eingestellt
(in den Programmeigenschaften mit CX-Programmer festgelegt).
Task 1 ist ausführbar, wenn "a" auf EIN gesetzt ist.
Task 1 wird in den Standby-Modus versetzt, wenn "b" auf EIN gesetzt ist.
Tasks 2 und 3 sind ausführbar, wenn "c" auf EIN gesetzt ist.
Tasks 2 und 3 werden in den Standby-Modus versetzt, wenn "d" auf EIN gesetzt ist.
Beschreibung von TasksAbschnitt 1-6
Programm
Task 0
Task 1
Task 0
Task 1
Task 2
Task 3
Task 0
Task 1
Task 2
Task 3
Task 1
starten, wenn
"a" auf EIN
gesetzt ist.
Tasks 2 und
3 starten,
wenn "c" auf
EIN gesetzt
ist.
Task 0
Task 1
Task 2
Task 3
Task 0
Task 1
Task 2
Task 3
Task 1 in den
Standby-Modus
versetzen, wenn
"b" auf EIN
gesetzt ist.
Tasks 2 und
3 in den
StandbyModus
versetzen,
wenn "d" auf
EIN gesetzt
ist.
Task 0
Task 1
Task 2
Task 3
Task 0
Task 1
Task 2
Task 3
Beispiel: Jede Task wird von einer anderen Task gesteuert
In diesem Beispiel wird jede Task von einer anderen Task gesteuert.
Programm für Task 0
Hinweis
Task 2
Beispiel:
Task 1
starten, wenn
"a" auf EIN
Task 0
Task 1
Task 2
TKOF(821) kann in einer Task verwendet werden,
um diese in den Standby-Modus zu versetzen.
gesetzt ist.
Task 0
Task 1
Task 2
Programm für Task 1
Task 0 ist auf die bedingungslose Ausführung bei
Betriebsstart eingestellt.
Task 1 ist ausführbar, wenn "a" auf EIN gesetzt ist.
Task 1 wird in den Standby-Modus versetzt, wenn "b" auf
EIN gesetzt ist.
Task 2 ist ausführbar, wenn "c" auf EIN gesetzt ist und
Task 1 ausgeführt wird.
Task 1 in
den StandbyModus
versetzen,
wenn "b" auf
EIN gesetzt
ist.
Wenn Task 1 ausgeführt ist
Task 2
starten,
wenn "c"
auf EIN
gesetzt
ist.
Task 0
Task 1
Task 2
Task 0
Task 1
Task 2
17
Beschreibung von TasksAbschnitt 1-6
Task-AusführungszeitWährend eine Task im Standby-Status ist, werden die in dieser Task enthalte-
nen Befehle nicht ausgeführt, deren Ausschaltbefehl-Ausführungszeit wird
also nicht zur Zykluszeit addiert.
HinweisAus dieser Sicht entsprechen Befehle in einer Task, die im Standby-Status ist,
den Befehlen in einem übersprungenen Programmabschnitt (JMP-JME).
Da die Zykluszeit durch Befehle in einer nicht ausführbaren Task nicht verlängert wird, kann die Gesamtsystemleistung wesentlich erhöht werden, wenn
das System in eine übergeordnete Steuer-Task und einzelne Tasks unterteilt
wird, von denen die letzteren nur dann ausgeführt werden, wenn dies erforderlich ist.
Herkömmliches System
SPS-Serien CS/CJ
Die meisten
Befehle werden
ausgeführt.
(Unterprogrammbefehle und
Sprünge werden
nur bei Bedarf
ausgeführt.)
Task 0
Task 1
Task 2
Task 3
Befehle werden
nur bei Bedarf
ausgeführt.
18
ABSCHNITT 2
Programmierung
In diesem Abschnitt finden Sie grundlegende Informationen zum Schreiben, Überprüfen sowie zur Eingabe von
Programmen.
SPS der CS/CJ-Serie führen SPS-Programme aus, die in Tasks enthalten
sind. Das SPS-Programm in den einzelnen Tasks endet mit dem Befehl
END(001), wie bei allen anderen SPS auch.
Tasks werden verwendet, um die Ausführungsreihenfolge der SPS-Programme und die Bedingungen für die Ausführung von Interrupts festzulegen.
Programm A
Zugeordnet
Zyklische
Task 1
Interrupt-Bedingung erfüllt.
InterruptTask
Zugeordnet
Programm B
Jedes Programm
endet mit dem
Befehl END(001).
Zyklische
Task n
E/A-Aktualisierung
Zugeordnet
Programm C
In diesem Abschnitt werden die Grundlagen beschrieben, die zum Schreiben
von Programmen für die CS/CJ-Serie erforderlich sind. Weitere Informationen
zu Tasks in Verbindung mit SPS-Programmen finden Sie unter ABSCHNITT 4Tasks.
HinweisTasks und Programmiergeräte
Tasks werden auf Programmiergeräten wie im Folgenden beschrieben
gehandhabt. Weitere Informationen dazu finden Sie unter 4-4 Task-Program-
mierung mit Programmiergerätenund im CS/CJ-Serie Programmierkonsolen
Bedienerhandbuch (W341) sowie im CX-Programmer Bedienerhandbuch.
CX-Programmer
CX-Programmer wird zum Bestimmen von Tasktypen und Tasknummern als
Attribute einzelner Programme verwendet.
Programmierkonsole
Über Programmierkonsolen kann auf Programme zum Bearbeiten zugegriffen
werden, indem CT00 bis CT 31 für zyklische Tasks und IT00 bis IT255 für
Interrupt-Tasks spezifiziert werden. Wenn der Speicher über eine Programmierkonsole gelöscht wird, kann in einem neuen Programm nur die zyklische
Task 0 (CT00) geschrieben werden. Verwenden Sie CX-Programmer zum
Erstellen der zyklischen Tasks 1 bis 31 (CT01 bis CT31).
20
GrundbegriffeAbschnitt 2-1
2-1-2Grundlegende Informationen zu Befehlen
Programme setzen sich aus Befehlen zusammen. In der folgenden Abbildung
wird die Struktur der Eingaben und Ausgaben eines Befehls dargestellt.
Stromfluss (Ausführungsbedingung)
Befehlsbedingung
Merker
Befehl
Operanden
(Quellen)
Speicher
Operanden
(Ziele)
Stromfluss (Ausführungsbedingung)*
Befehlsbedingung*
Merker
*1: Nur Eingangsbefehle
*2: Wird nicht durch alle Befehle
ausgegeben.
2
1
Ausführungsbedingung
Die Ausführungsbedingung wird bei der normalen Ausführung von Programmen zur Steuerung der Ausführung der Befehle verwendet. In einem SPS-Programm ist der Status der Ausführungsbedingung entscheidend für die
Ausführung des nachstehenden Befehls.
Eingabebefehle• Der Befehl Laden kennzeichnet einen logischen Start und erzeugt die
Ausführungsbedingung.
Die
Ausführungsbedingung.
• Die Zwischenbefehle werden abhängig vom Status der Eingangs-Ausführungsbedingung verarbeitet und geben das Verarbeitungsergebnis an einen
Zwischen- oder Ausgabebefehl weiter.
Ausgabe des
Verarbeitungs-
ergebnisses.
=
D00000
#1215
AusgabebefehleAusgabebefehle führen alle Funktionen je nach Status der Ausführungsbedin-
gung aus.
LD
Eingangsblock
Ausgangsblock
Ausführungsbedingung für
Ausgabebefehl
Sequenzsteuerbefehle
Folgende Sequenzsteuerbefehle steuern die Ausführung oder Nicht-Ausführung einer Sequenz von Befehlen in Prigrammabschnitten. Sequenzsteuerbefehle haben bei der Entscheidung zur Ausführung eines Befehls eine höhere
Priorität als normale Befehls-Ausführungsbedingingen. Ein Befehl wird je nach
Ausführung eines Sequenzsteuerbefehls möglicherweise nicht oder anders
ausgeführt. Befehlsausführungsbedingungen aufgrund von Sequenzsteuerbefehlen werden zu Beginn jeder Task zurückgesetzt (aufgehoben), d. h., dass sie
beim Wechsel der Task zurückgesetzt werden.
21
GrundbegriffeAbschnitt 2-1
Die folgenden Befehle werden paarweise verwendet, um bestimmte Befehlsausführungsbedingungen zu setzen oder aufzuheben. Diese Befehlspaare
müssen in derselben Task enthalten sein.
Sequenz-
steuerbefehle
Ausführung
gesperrt
Ausführung von
BREAK(514)
Blockprogrammausführung
Eine Sperre schaltet Teile des Programms aus. Spezielle Bedingungen,
wie das Deaktivieren von Ausgabebits, das Zurücksetzen von Zeitgebern und das Halten von Zählerwerten, sind aktiviert.
Beendet die Schleife FOR(512) - NEXT(513) während der Ausführung.
(Verhindert die Ausführung aller Befehle bis zum nächsten NEXT(513)Befehl.)
Führt einen Sprungbefehl JMP0(515) zu JME0(516) aus.JMP0(515)JME0(516)
Führt einen Programmblock von BPRG(096) bis BEND(801) aus.BPRG(096)BEND(801)
BeschreibungBefehl am
Anfang
IL(002)ILC(003)
BREAK(514) NEXT(513)
Befehl am
Ende
Merker
In diesem Zusammenhang ist ein Merker ein Bit, das als Schnittstelle zwischen
Befehlen dient.
EingabemerkerAusgabemerker
• Flankenauswertungsmerker
Flankenauswertungs-Ergebnismerker. Die Zustände
der Merker dienen als automatische Eingaben für
alle Befehle, die an der steigenden oder fallenden
Signalflanke ausgeführt werden, sowie die Befehle
DIFU(013)/DIFD(014).
• Übertragsmerker (CY)
Der Übertragsmerker wird als unbestimmter Operand bei Datenverschiebungsbefehlen sowie Additions-/Subtraktionsbefehlen verwendet.
• Merker für Spezialbefehle
Dazu gehören u. a. Teach-In-Merker für FPD(269)Befehle und Merker für die Aktivierung der Netzwerkkommunikation.
• Flankenauswertungsmerker
Flankenauswertungs-Ergebnismerker. Die Zustände der Merker
dienen als automatische flankengesteuerte Ausgaben von allen
Befehlen, die an der steigenden oder fallenden Signalflanke ausgeführt werden, sowie der Befehle UP(521)/DOWN(522).
• Bedingungsmerker
Zu den Bedingungsmerker gehören die Immer-EIN/AUS-Merker
sowie Merker, die durch die Ergebnisse einer Befehlsausführung
aktualisiert werden. Bei Anwenderprogrammen können diese Merker anstelle von Adressen durch symbolische Bezeichnungen spezifiziert werden, wie z. B. P_ER, P_CY, P_GT, P_EQ, P_LT.
• Merker für Spezialbefehle
Zu diesen Merker gehören u. a. Speicherkarten-Befehlsmerker und
Merker für abgeschlossene MSG(046)-Befehlsausführung.
Operanden
Operanden legen vorgegebene Befehlsparameter fest (Felder in Kontaktplänen),
die zur Spezifikation der Inhalte von E/A-Speicherbereichen oder Konstanten
verwendet werden. Ein Befehl kann durch die Eingabe einer Adresse oder Konstante als Operand ausgeführt werden. Operanden werden als Quell-, Ziel- oder
Nummer-Operanden klassifiziert.
Beispiel
OperandentypenOperanden-
Quelle
(Source)
Ziel (Ergebnisse)
NummerSpezifiziert eine bestimmte Nummer,
Spezifiziert die Adresse der zu
lesenden Daten oder eine
Konstante.
Spezifiziert die Adresse, in die die
Daten geschrieben werden.
die vom Befehl verwendet wird, beispielsweise eine Jump-Nummer oder
die Nummer eines Unterprogramms.
S (Quelle)
D (Ziel)
Beschreibung
symbol
SQuelloperand Quelloperand außer Steuerdaten (C)
CSteuerdatenKombinierte Daten in einem Quell-
operanden, die je nach Bitstatus eine
andere Bedeutung besitzen.
D (R)---
N---
N (Nummer)
22
GrundbegriffeAbschnitt 2-1
HinweisOperanden werden auch, im Befehl von oben nach unten, als erster Operand,
zweiter Operand usw. bezeichnet.
Erster Operand
Zweiter Operand
2-1-3Befehlsposition und Ausführungsbedingungen
In der folgenden Tabelle werden die möglichen Positionen für Befehle im Kontaktplanprogramm aufgeführt. Befehle sind in Gruppen aufgeteilt, je nachdem, ob für
sie Ausführungsbedingungen erforderlich sind oder nicht. Weitere Informationen
zu einzelnen Befehlen finden Sie in ABSCHNITT 3 Befehlsfunktionen.
BefehlstypMögliche
Position
EingangsbefehleLogischer Start
(Lade-Befehl)
ZwischenbefehleZwischen dem
AusgabebefehleDirekt mit der
Direkt mit der linken Stromschiene
verbunden oder
am Anfang eines
Befehlsblocks.
logischen Start
und einem
Ausgabebefehl.
rechten
Stromschiene
verbunden.
Hinweis1. Es existiert eine weitere Gruppe von Befehlen, die eine ganze Folge von
AWL-Befehlen auf Basis einer einzelnen Eingabe ausführen. Diese werden Blockprogrammierungsbefehle genannt. Weitere Informationen dazu
finden Sie im CS/CJ-Serie CPU-Baugruppen Befehlsreferenzhandbuch.
2. Wenn ein Befehl, der eine Ausführungsbedingung benötigt, ohne logischen Startbefehl direkt mit der linken Stromschiene verbunden ist, tritt bei
der Überprüfung des Programms auf einem Programmiergerät (CX-Programmer oder Programmierkonsole) ein Fehler auf.
Ausführungs-
bedingung
Nicht erforderlichLD, LD TST(350),
ErforderlichAND, OR, AND
ErforderlichDie meisten
Nicht erforderlichEND(001),
KontaktplanBeispiele
LD > (und andere
Symbolvergleichsbefehle)
TEST(350), AND
> (und andere
AND-Symbolvergleichsbefehle),
UP(521),
DOWN(522),
NOT(520) usw.
Befehle, einschließlich OUT
und MOV(021).
JME(005),
FOR(512),
ILC(003) usw.
23
GrundbegriffeAbschnitt 2-1
2-1-4Adressierung im E/A-Speicherbereich
Bit-Adressen
@@@@ @@
Bitnummer (00 bis 15)
Bezeichnet die Wort-Adresse.
Beispiel: Die Adresse von Bit 03 in Wort 0001 im CIO-Bereich ergibt sich wie
unten gezeigt. Diese Adresse wird in diesem Handbuch als „CIO 000103“
angegeben.
0001 03
Bitnummer (03)
Wort-Adresse: 0001
Wort-Adressen
Wort
0000
0001
0002
Bit: CIO 000103
151413121110080706050403090201
@@@@
Bezeichnet die Wort-Adresse.
Beispiel: Die Adresse der Bits 00 bis 15 in Wort 0010 im CIO-Bereich ergibt
sich wie unten gezeigt. Diese Adresse wird in diesem Handbuch als
„CIO 0010“ angegeben.
0010
00
24
Wort-Adresse
Adressen in den DM- und EM-Bereichen wird ein „D“ bzw. „E“ vorangestellt,
wie im Folgenden für die Adresse D00200 dargestellt.
D00200
Wort-Adresse
GrundbegriffeAbschnitt 2-1
Beispiel: Die Adresse für Wort 200 in der Bank 0 des erweiterten Datenspei-
chers (EM) lautet folgendermaßen:
E00200
Wort-Adresse
Die Adresse für Wort 200 in Bank 1 des erweiterten Datenspeichers lautet folgendermaßen:
E1_00200
Wort-Adresse
Banknummer
2-1-5Spezifizieren von Operanden
OperandBeschreibungSchreibweiseAnwendungs-
beispiele
Spezifizieren
von BitAdressen
Spezifizieren
von WortAdressen
Die Wort- und Bitnummern werden zur
Spezifikation eines Bits direkt spezifiziert.
@@@@ @@
Bitnummer
(00 bis 15)
Bezeichnet die Wort-Adresse.
Für den Zugriff auf Zeitgeber/Zähler-
Hinweis
Ablaufmerker und -Istwerte werden dieselben
Adressen verwendet. Für einen Task-Merker
gibt es auch nur eine Adresse.
Die Wortadresse wird zur Spezifikation des
16-Bit-Worts direkt spezifiziert.
@@@@
Bezeichnet die Wort-Adresse.
0001 02
0003
D00200
0001
02
Bitadresse (02)
Wortadresse: 0001
MOV 0003
D00200
Wortadresse: 0003
Wortadresse: 00200
25
GrundbegriffeAbschnitt 2-1
OperandBeschreibungSchreibweiseAnwendungs-
beispiele
Indirektes
Spezifizieren
DM/EMAdressen im
Binärmodus
Der Offset vom Bereichsanfang wird spezifiziert.
Der Adressinhalt wird als Binärdaten (00000 bis
32767) behandelt, um die Wort-Adresse im
Datenspeicher (DM) oder dem erweiterten
Datenspeicher (EM) zu spezifizieren. Stellen Sie
das @-Symbol voran, um eine indirekte Adresse
im Binärmodus zu spezifizieren.
@D@@@@@
Inhalt
D
00000 bis 32767
(0000 Hex bis
7FFF Hex in BIN)
1) D00000 bis D32767 werden spezifiziert,
wenn @D(@@@@@) den Wert 0000 Hex
bis 7FFF Hex (00000 bis 32767) enthält.
2) E0 _00000 bis E0 _32767 von Bank 0 im
erweiterten Datenspeicher werden spezifiziert, wenn @D(@@@@@) den Wert
8000 Hex bis FFFF Hex (32768 bis 65535)
enthält.
@D00300
0 1 0 0
Binär: 256
Spezifiziert D00256
Symbol @ hinzufügen
@D00300
8 0 0 1
Binär: 32769
Spezifiziert E0 00001
MOV #0001
@D00300
Inhalt
Inhalt
3) E@_00000 bis E@_32767 in der spezifizierten Bank werden spezifiziert, wenn
@E@_@@@@@ den Wert 0000 Hex bis
7FFF Hex (00000 bis 32767) enthält.
4) E(@+1)_00000 bis E(@+1)_32767 in der
Bank, die auf die spezifizierte Bank @ folgt,
werden spezifiziert, wenn @E@_@@@@@
den Wert 8000 Hex bis FFFF Hex (32768
bis 65535) enthält.
@E1_00200
0 1 0 1
Binär: 257
Spezifiziert E1_00257
@E1_00200
8 0 0 2
Binär: 32770
Spezifiziert E2_00002
Inhalt
Inhalt
MOV #0001
@E1_00200
HinweisBeim Spezifizieren einer indirekten Adresse im Binärmodus sollte der Datenspeicher (DM)
und der erweiterte Datenspeicher (EM, Bänke 0 bis C) als eine Folge von Adressen behandelt werden. Wenn der Inhalt einer Adresse mit dem @-Symbol den Wert 32767 übersteigt,
wird davon ausgegangen, dass sich diese Adresse im nächsten erweiterten Datenspeicher
befindet (fortlaufend von 00000 in Bank Nr. 0).
Beispiel: Wenn das Datenspeicherwort den Wert 32768 enthält, wird E0_00000 in Bank 0 im erweiter-
ten Datenspeicher (EM) spezifiziert.
HinweisWenn die Banknummer des erweiterten Datenspeichers (EM) als „n“ spezifiziert wird und der
Inhalt des Worts den Wert 32767 übersteigt, wird davon ausgegangen, dass sich die
Adresse im erweiterten Datenspeicher (EM) befindet (fortlaufend von 00000 in Bank n+1).
Beispiel: Wenn Bank 2 im erweiterten Datenspeicher den Wert 32768 enthält, wird E3_00000 in Bank
Nr. 3 im erweiterten Datenspeicher spezifiziert.
26
GrundbegriffeAbschnitt 2-1
OperandBeschreibungSchreibweiseAnwendungs-
beispiele
Spezifizieren
indirekter
DM/EMAdressen im
BCD-Modus
Der Offset vom Bereichsanfang wird spezifiziert.
Der Adressinhalt wird als BCD-Daten (0000 bis
9999) behandelt, um die Wort-Adresse im
Datenspeicher (DM) oder dem erweiterten
Datenspeicher (EM) zu spezifizieren. Fügen Sie
vorne ein Sternchen(*) hinzu, um eine indirekte
Adresse im BCD-Modus zu spezifizieren.
*D@@@@@
Inhalt
D
0000 bis 9999
(BCD)
*D00200
0 1 0 0
Spezifiziert D0100
Sternchen (*) hinzufügen.
OperandBeschreibungSchreib-
Inhalt
Anwendungsbeispiele
MOV #0001
*D00200
weise
Direktes
Spezifizieren eines
Registers
Ein Indexregister (IR) oder ein Datenregister (DR)
wird direkt durch die Angabe von IR@ (@: 0 bis 15)
bzw. DR@ (@: 0 bis 15) spezifiziert.
IR0
IR1
MOVR 000102 IR0
Speichert die SPS-Speicheradresse für
CIO 000102 in IR0.
MOVR 0010 IR1
Speichert die SPS-Speicheradresse für
CIO 0010 in IR1.
Spezifizieren einer
indirekten
Adresse
mittels eines
Registers
Indirekte
Adresse
(Kein
Offset)
Konstanter Offset
Das Bit oder Wort mit der SPS-Speicheradresse, die in IR@ enthalten ist,
wird spezifiziert.
Verwenden Sie ,IR@, um Bits und Worte
für Befehlsoperanden zu spezifizieren.
Das Bit oder Wort mit der SPS-Speicheradresse in IR@ + oder – der angegebenen Konstante wird spezifiziert.
Verwenden Sie +/– Konstante ,IR@. Für
konstante Offsets gilt der Bereich von –
2048 bis +2047 (dezimal). Der Offset
,IR0
,IR1
+5,IR0
+31,IR1
LD ,IR0
Lädt das Bit mit der SPS-Speicheradresse in IR0.
MOV #0001 ,IR1
Speichert #0001 im Wort mit der
SPS-Speicheradresse in IR1.
LD +5 ,IR0
Lädt das Bit mit der SPS-Speicheradresse in IR0 + 5.
MOV #0001 +31 ,IR1
Speichert #0001 im Wort mit der
SPS-Speicheradresse in IR1 + 31
wird in Binärdaten umgewandelt, wenn
der Befehl ausgeführt wird.
Datenregister-Offset
Das Bit oder Wort mit der SPS-Speicheradresse in IR@ + der Inhalt von
DR@ wird spezifiziert.
Verwenden Sie DR@ ,IR@. DR-Inhalte
(Datenregister) werden als Binärdaten
mit Vorzeichen behandelt. Der Inhalt von
DR0 ,IR0
DR0 ,IR1
LD DR0 ,IR0
Lädt das Bit mit der SPS-Speicher-
adresse in IR0 + den Wert in DR0.
MOV #0001 DR0, IR1
Speichert #0001 im Wort mit SPS-Spei-
cheradresse in IR1 + den Wert in DR0.
IR@ ergibt einen negativen Offset, wenn
der Binärwert mit Vorzeichen negativ ist.
AutoInkrement
Der Inhalt von IR@ wird um +1 oder +2
erhöht, nachdem der Wert als eine
SPS-Speicheradresse referenziert
wurde.
+1: Verwenden Sie ,IR@+
+2: Verwenden Sie ,IR@++
,IR0 ++
,IR1 +
LD ,IR0 ++
Inkrementiert den Inhalt von IR0 um 2,
nachdem das Bit mit der SPS-Speicher-
adresse in IR0 geladen wurde.
MOV #0001 ,IR1 +
Inkrementiert den Inhalt von IR1 um 1,
nachdem #0001 im Wort mit der
SPS-Speicheradresse in IR1 gespei-
chert wurde.
AutoDekrement
Der Inhalt von IR@ wird um –1 oder –2
dekrementiert, nachdem der Wert als
eine SPS-Speicheradresse referenziert
wurde.
–1: Verwenden Sie ,–IR@
–2: Verwenden Sie ,– –IR@
,– –IR0
,–IR1
LD ,– –IR0
Nachdem der Inhalt von IR0 um 2
dekrementiert wurde, wird das Bit mit
der SPS-Speicheradresse in IR0
geladen.
MOV #0001 ,–IR1
Nachdem der Inhalt von IR1 um 1
dekrementiert wurde, wird #0001 im
Wort mit der SPS-Speicheradresse in
IR1 gespeichert.
27
GrundbegriffeAbschnitt 2-1
DatenOperandArt der DatenSymbolBereichAnwendungsbeispiel
16-BitKonstante
32-BitKonstante
Textzeichenkette
Alle Binärdaten
oder ein
begrenzter Binärdatenbereich
Binär ohne
Vorz eiche n
Dezimal mit
Vorz eiche n
Dezimal ohne
Vorz eiche n
Alle BCD-Daten
BCD##0000 bis #9999 --oder ein
begrenzter BCDDatenbereich
Alle Binärdaten
oder ein
begrenzter Binärdatenbereich
Binär ohne
Vorz eiche n
Dezimal mit
Vorz eiche n
Dezimal ohne
Vorz eiche n
Alle BCD-Daten
BCD##00000000 bis
oder ein
begrenzter BCDDatenbereich
BeschreibungSymbolBeispiele---
Textzeichenkettendaten werden im
ASCII-Format (1 Byte außer bei
Sonderzeichen) in der Reihenfolge
der Bytes von links nach rechts und
der Worte von rechts (niedrigstes)
nach links gespeichert.
Bei einer ungeraden Zeichenanzahl
wird im äußersten rechten Byte des
letzten Worts 00 Hex (NUL-Code)
gespeichert.
0000 Hex (2 NUL-Codes) wird bei
einer geraden Zeichenanzahl in den
äußersten linken und rechten freien
Bytes vom letzten Wort + 1 gespeichert.
##0000 bis #FFFF ---
±–32768 bis
---
+32767
& (siehe
&0 bis &65535---
Hinweis)
##00000000 bis
---
#FFFFFFFF
+–2147483648 bis
---
+2147483647
& (siehe
Hinweis)
&0 bis
&429467295
---
---
#99999999
---
'ABCDE'
'A''B'
'D'
'C'
'E'
NUL
4142
43
44
00
45
'ABCD'
'B'
'A'
'C'
'D'
NUL
NUL
MOV$ D00100 D00200
D00100
D00101
D00102
D00200
D00201
D00202
41
43
45
4142
43
45
42
44
00
44
00
28
4142
43
44
00
00
Zu den ASCII-Zeichen, die in einer Textzeichenfolge verwendet werden können, gehören alphanumerische
Zeichen, Katakana und Symbole (außer Sonderzeichen). Die Zeichen entnehmen Sie der folgenden Tabelle.
HinweisDie Schreibweise für Dezimal ohne Vorzeichen wird nur bei CX-Programmer
Hinweis Dieses Format entspricht den IEEE754-Standards für einfach genaue Fließkommadaten und
63 62 615251 50 49 48 47 463210
Exponent
Wert = (–1)
Vorzeichen (Bit 31)
Mantisse
Exponent
wird nur bei Befehlen verwendet, mit denen Fließkommadaten konvertiert oder berechnet
werden. Es kann zur Einstellung oder Überwachung im SPS-Speicher- und DatenansichtsFenster im CX-Programmer verwendet werden (wird von den Programmierkonsolen nicht
unterstützt). In dieser Eigenschaft müssen Anwender dieses Format nicht kennen, doch sie
müssen wissen, dass die Formatierung zwei Worte belegt.
Vorzeichen
Binärformat
x 1.[Mantisse] x 2
1: negativ oder 0: positiv
Die 23 Bits von Bit 00 bis Bit 22 enthalten die Mantisse, d. h.,
den Anteil hinter dem Dezimalkomma in 1,@@@..... im
Binärformat.
Die 8 Bits von Bit 23 bis Bit 30 enthalten den Exponenten. Der
Exponent wird im Binärformat als 127 plus n in 2
Exponent
Mantisse
n
ausgedrückt.
------
zimalwerte
mit
doppelter
Präzision
Vorzeichen
der
Mantisse
ExponentMantisse
Binärformat
Wert = (–1)
Vorzeichen (Bit 63)
Mantisse
Exponent
Hinweis
Dieses Format entspricht den IEEE754-Standards für doppelt genaue Fließkommadaten und wird
nur bei Befehlen verwendet, mit denen Fließkommadaten konvertiert oder berechnet werden. E
s kann zur Einstellung oder Überwachung im SPS-Speicher- und Datenansichts-Fenster im CXProgrammer verwendet werden (wird von den Programmierkonsolen nicht unterstützt). In dieser
Eigenschaft müssen Anwender dieses Format nicht kennen, doch sie müssen wissen, dass die
Formatierung vier Worte belegt.
Vorzeichen
x 1.[Mantisse] x 2
1: negativ oder 0: positiv
Die 52 Bits von Bit 00 bis Bit 51 enthalten die Mantisse,
d.h., den Anteil hinter dem Dezimalkomma in 1,@@@..... im
Binärformat.
Die 11 Bits von Bit 52 bis 62 enthalten den Exponenten.
Der Exponent wird im Binärformat als 1023 plus n in 2
ausgedrückt.
Exponent
Binärdaten mit Vorzeichen
Bei Binärdaten mit Vorzeichen gibt das äußerste linke Bit das Vorzeichen von
16-Bit-Binärdaten an. Der Wert wird als 4-stelliger Hexadezimalwert ausgedrückt.
Positive Zahlen: Ein Wert ist positiv oder beträgt 0, wenn das äußerste linke
Bit 0 (AUS) ist. Dies wird in 4-stelligen Hexadezimalwerten als 0000 bis
7FFF Hex ausgedrückt.
Negative Zahlen: Ein Wert ist negativ, wenn das äußerste linke Bit 1 (EIN)
ist. Dies wird in 4-stelligen Hexadezimalwerten als 8000 bis FFFF Hex ausgedrückt. Der Betrag des negativen Wertes (dezimal) wird als Zweierkomplement ausgedrückt.
Beispiel: Wenn –19 in Dezimal als Binär mit Vorzeichen behandelt werden
soll, wird 0013 Hex (der Betrag 19) von FFFF Hex subtrahiert und anschließend wird 0001 Hex addiert, so dass sich FFED Hex ergibt.
n
31
GrundbegriffeAbschnitt 2-1
FF FF
111111111111
1111
Absolutwert
–)
+)
Zweierkomplement
00 1
0000000000010011
FF EC
111111111110
00 0
0000000000000001
FF ED
1111111111101101
3
1100
1
Komplemente
Im Allgemeinen bezieht sich das Komplement zur Basis x auf eine Zahl, die
durch Subtrahieren aller Stellen einer gegebenen Zahl von x – 1 und anschließendem Addieren von 1 zur äußersten rechten Stelle berechnet wird. (Beispiel: Das Zehnerkomplement von 7556 ist 9999 – 7556 + 1 = 2444.) Ein
Komplement wird verwendet, um eine Subtraktion und andere Funktionen als
Addition auszudrücken.
Beispiel: Mit 8954 – 7556 = 1398, 8954 + (das Zehnerkomplement von 7556)
= 8954 + 2444 = 11398. Wenn das äußerste linke Bit ignoriert wird, wird bei
Subtraktion ein Ergebnis von 1398 erzielt.
Zweierkomplemente
Ein Zweierkomplement ist ein Komplement mit Basis 2. Dabei werden alle
Stellen von 1 (2 – 1 = 1) subtrahiert und 1 addiert.
Beispiel: Das Zweierkomplement der Binärzahl 1101 ist 1111 (F Hex) – 1101
(D Hex) + 1 (1 Hex) = 0011 (3 Hex). Im Folgenden wird dieser Wert als 4-stelliger Hexadezimalwert ausgedrückt.
Das Zweierkomplement b Hex von a Hex ist FFFF Hex – a Hex + 0001 Hex =
b Hex. Um das Zweierkomplement b Hex von „a Hex“ zu bestimmen, wird
b Hex = 10000 Hex – a Hex verwendet.
Beispiel: Um das Zweierkomplement von 3039 Hex zu bestimmen, wird
10000 Hex – 3039 Hex = CFC7 Hex verwendet.
Gleichermaßen wird a Hex = 10000 Hex – b Hex zur Bestimmung des Wertes
a Hex vom Zweierkomplement b Hex verwendet.
Beispiel: Um den tatsächlichen Wert des Zweierkomplement CFC7 Hex zu
bestimmen, wird 10000 Hex – CFC7 Hex = 3039 Hex verwendet.
Die CS/CJ-Serie verfügt über die folgenden zwei Befehle: NEG(160)(2’S
COMPLEMENT) und NEGL(161) (DOUBLE 2’S COMPLEMENT), die verwendet werden können, um das Zweierkomplement aus der tatsächlichen
Zahl oder die tatsächliche Zahl aus dem Zweierkomplement zu bestimmen.
BCD-Daten mit Vorzeichen
Bei BCD-Daten mit Vorzeichen handelt es sich um ein spezielles Datenformat, das verwendet wird, um negative Zahlen in BCD auszudrücken. Auch
wenn dieses Format in einigen Anwendungen zu finden ist, ist es dennoch
nicht genau definiert und von der spezifischen Anwendungen abhängig.
32
GrundbegriffeAbschnitt 2-1
Die CS/CJ-Serie unterstützt die folgenden Befehle zur Konvertierung von
Datenformaten: SIGNED BCD-TO-BINARY BINS(470), DOUBLE SIGNED
BCD-TO-BINARY: BISL(472), SIGNED BINARY-TO-BCD: BCDS(471) und
DOUBLE SIGNED BINARY-TO-BCD: BDSL(473). Weitere Informationen finden Sie im CS/CJ-Serie Speicherprogrammierbare Steuerungen Befehlsrefe-renzhandbuch (W340).
+200020002
+100010001
000000000
–1Kann nicht ausgedrückt
–2FFFE
.
.
.
–32.7678001
–32.7688000
(4-stellig hexadezimal)
.
.
.
.
.
.
werden
Binär mit Vorzeichen
(4-stellig hexadezimal)
werden
FFFF
33
GrundbegriffeAbschnitt 2-1
2-1-7Befehlsvarianten
Die folgenden Befehlsvarianten stehen für Ausführungsbedingungen mit Flankenauswertung und zur Aktualisierung der Daten beim Ausführen des Befehls
zur Verfügung (unmittelbare Aktualisierung).
VarianteSymbolBeschreibung
Flankenüberwachung
Direkte Aktualisierung!Aktualisiert Daten im E/A-Bereich, die durch
EIN@Befehl, der ausgeführt wird, wenn die
Ausführungsbedingung auf EIN wechselt.
AUS %Befehl, der ausgeführt wird, wenn die
@
Ausführungsbedingung auf AUS wechselt.
Operanden spezifiziert werden, oder Worte
einer Spezial-E/A-Baugruppe beim Ausführen des Befehls.
(Direkte Aktualisierung wird von CS1D CPUBaugruppen
unterstützt.)
Befehl (AWL)
Flankenvariante
Variante mit direkter Aktualisierung
für Duplex-CPU-Systeme nicht
2-1-8Ausführungsbedingungen
Die CS/CJ-Serie unterstützt die folgenden Arten von Grund- und Spezialbefehlen.
• Befehle ohne Flankenüberwachung, die in jedem Zyklus ausgeführt werden
• Befehle mit Flankenüberwachung, die nur einmalig ausgeführt werden
Befehle ohne Flankenüberwachung
Ausgabebefehle, die Ausführungsbedingungen benötigen, werden einmal in
jedem Zyklus ausgeführt, solange die Ausführungsbedingung gültig ist (EIN
oder AUS).
Ausgabebefehl
ohne Flankenüberwachung
Eingangsbefehle, die logische Starts bewirken, sowie Zwischenbefehle lesen
den Bitstatus, führen Vergleiche durch, testen Bits oder führen andere Verarbeitungen in jedem Zyklus aus. Wenn die Ergebnisse EIN lauten, wird die
Ausführungsbedingung auf EIN gesetzt.
Eingangsbefehl ohne Flankenüberwachung
Beispiel
Beispiel
34
GrundbegriffeAbschnitt 2-1
Befehle mit Eingangs-Flankenüberwachung
Befehle, die an der steigenden Flanke ausgeführt werden (Befehl mit vorangestelltem @)
• Ausgabebefehle: Der Befehl wird nur in dem Zyklus ausgeführt, in dem
die Ausführungsbedingung auf EIN gewechselt ist (AUS → EIN). In den
darauffolgenden Zyklen wird der Befehl nicht ausgeführt.
Beispiel
(@) Befehl für Ausführung an der
steigenden Flanke
Führt den MOV-Befehl einmalig aus, wenn
CIO 000102 von AUS zu EIN wechselt.
• Eingangsbefehle (logische Starts und Zwischenbefehle): Der Befehl
liest den Bitstatus, führt Vergleiche durch, testet Bits oder führt andere Verarbeitungen in jedem Zyklus durch. Auf dieser Basis gibt er eine EIN-Ausführungsbedingung aus, wenn die Ergebnisse von AUS zu EIN wechseln.
Die Ausführungsbedingung wird im nächsten Zyklus auf AUS gesetzt.
@MOV
Eingangsbefehl für Ausführung an
der steigenden Flanke
Beispiel
Die EIN-Ausführungsbedingung wird
nur für einen Zyklus erzeugt, wenn
CIO 000103 von AUS zu EIN wechselt.
• Eingangsbefehle (logische Starts und Zwischenbefehle): Der Befehl
liest den Bitstatus, führt Vergleiche durch, testet Bits oder führt andere
Verarbeitungen in jedem Zyklus durch. Auf dieser Basis gibt er eine AUSAusführungsbedingung aus, wenn die Ergebnisse von AUS zu EIN wechseln. Die Ausführungsbedingung wird im nächsten Zyklus auf EIN gesetzt.
Eingangsbefehl für Ausführung an
der steigenden Flanke
Beispiel
0001
03
AUS-Ausführungsbedingung wird nur für
einen Zyklus erzeugt, wenn CIO 00103
von AUS zu EIN wechselt.
Befehle, die an der fallenden Flanke ausgeführt werden (Befehl mit vorangestelltem %)
• Ausgabebefehle: Der Befehl wird nur in dem Zyklus ausgeführt, in dem
die Ausführungsbedingung auf AUS gewechselt ist (EIN → AUS). In den
darauffolgenden Zyklen wird der Befehl nicht ausgeführt.
(%) Befehl für
Ausführung an der
fallenden Flanke
Beispiel
%SET
Führt den SET-Befehl einmalig aus,
wenn CIO 000102 von EIN zu AUS
wechselt.
35
GrundbegriffeAbschnitt 2-1
• Eingangsbefehle (logische Starts und Zwischenbefehle): Der Befehl
liest den Bitstatus, führt Vergleiche durch, testet Bits oder führt andere
Verarbeitungen in jedem Zyklus durch. Auf dieser Basis gibt er die Ausführungsbedingung aus, wenn die Ergebnisse von EIN zu AUS wechseln.
Die Ausführungsbedingung wird beim nächsten Zyklus auf AUS gesetzt.
Befehl für Ausführung an der fallenden Flanke
Beispiel
HinweisIm Gegensatz zu den Befehlen, die an der steigenden Flanke
ausgeführt werden, steht die Variante für die Ausführung an der
fallenden Flanke (%) nur bei den Befehlen LD, AND, OR, SET und
RSET zur Verfügung. Um eine Ausführung an der fallenden Flanke bei anderen Befehlen zu realisieren, müssen die Befehle mit
den Befehlen DIFD oder DOWN kombiniert werden. Der NOT-Befehl kann nur zu Befehlen hinzugefügt werden, wenn eine CS1-H,
CJ1-H, CJ1M oder CS1D CPU-Baugruppe verwendet wird.
• Eingangsbefehle (logische Starts und Zwischenbefehle): Der Befehl
liest den Bitstatus, führt Vergleiche durch, testet Bits oder führt andere
Verarbeitungen in jedem Zyklus durch. Auf dieser Basis gibt er eine AUSAusführungsbedingung (logischer Stromfluss wird unterbrochen) aus,
wenn die Ergebnisse von EIN zu AUS wechseln. Die Ausführungsbedingung wird im nächsten Zyklus auf EIN gesetzt.
Eingangsbefehl für Ausführung an der
fallenden Flanke
Wird auf EIN gesetzt, wenn CIO 000103 von EIN
zu AUS wechselt, und wird nach einem Zyklus
wieder auf AUS gesetzt.
Beispiel
0001
03
AUS-Ausführungsbedingung wird nur für
einen Zyklus erzeugt, wenn CIO 00103
von EIN zu AUS wechselt.
36
GrundbegriffeAbschnitt 2-1
2-1-9Zeitliches Verhalten von E/A-Befehlen
Im Folgenden finden Sie eine Darstellung der unterschiedlichen Zeitverhalten
einzelner Befehle eines Programms, das nur die Befehle LD und OUT enthält.
Eingang
A
B1
Eingang
gelesen
gelesen
Eingang
gelesen
Eingang
gelesen
Eingang
gelesen
Eingang
gelesen
Eingang
gelesen
E/A-Aktualisierung
Eingang
gelesen
Eingang
gelesen
Eingang gelesen
Eingang
gelesen
Eingang
gelesen
A
A
A
!
A
!
A
A
A
A
A
!
A
!
A
B2
B3
B4
B5
B6
B7
!
B8
!
B9
!
B10
!
B11
!
B12
!
CPU-Verarbeitung
Befehl
ausgeführt.
Befehle mit Flankendifferenzierung
• Ein Befehl mit Flankendifferenzierung verfügt über einen internen Merker,
der angibt, ob der vorherige Wert EIN oder AUS ist. Zu Beginn des
Betriebs werden die Merker für vorherigen Werte bei Befehlen zur Ausführung an der steigenden Flanke (DIFU- und @-Befehle) auf EIN
gesetzt, und die Merker für vorherigen Werte bei Befehlen zur Ausführung
an der fallenden Flanke (DIFD- und %-Befehle) werden auf AUS gesetzt.
Dadurch wird verhindert, dass die Flankenüberwachungsergebnisse versehentlich zu Beginn des Betriebs ausgegeben werden.
• Ein Befehl zur Ausführung an der steigenden Flanke (DIFU- oder @Befehl) gibt nur EIN aus, wenn die Ausführungsbedingung auf EIN und
der Merker für den vorherigen Wert auf AUS gesetzt ist.
37
GrundbegriffeAbschnitt 2-1
• Verwendung in Sperren (IL - ILC-Befehle)
Im folgenden Beispiel behält der Merker für den vorherigen Wert des
Befehls mit Flankendifferenzierung den zuvor gesperrten Wert bei und
gibt an Punkt A keinen Differenzierungsimpuls aus, da der Wert bei aktivierter Sperre nicht aktualisiert wird.
0000
00
0000
01
(002)
IL
(013)
DIFU 001000
(003)
ILC
IL wird
ausgeführt
IL wird
ausgeführt
• Verwendung in Sprungbefehlen (JMP - JME-Befehle): Genau wie bei
Sperren (Interlocks) wird der Merker für den vorherigen Wert eines Flankenüberwachungsbefehls nicht geändert, wenn dieser Befehl übersprungen, d.h. nicht ausgeführt wird, d. h., der vorherige Wert wird beibehalten.
Befehle für zur Ausführung an der steigenden und fallenden Flanke
geben die Ausführungsbedingung nur aus, wenn sich der Eingangsstatus
vom vorherigen unterscheidet.
Hinweis a) Verwenden Sie nicht den Immer-EIN-Merker oder A20011 (Er-
ster-Zyklus-Merker) als Eingangsbit für einen Befehl zur Ausführung an der steigenden Flanke. Dieser Befehl würde niemals
ausgeführt.
b) Verwenden Sie nicht den Immer-AUS-Merker als Eingabebit für
einen Befehl zur Ausführung an der fallenden Flanke. Dieser Befehl würde niemals ausgeführt.
38
GrundbegriffeAbschnitt 2-1
2-1-10 Aktualisierungszeitpunkt
Für die Aktualisierung externer E/A werden die folgenden Methoden verwendet.
• Zyklische Aktualisierung
• Direkte Aktualisierung (!-spezifizierte Befehle, IORF-Befehl)
Informationen zur E/A-Aktualisierung finden Sie auch im Abschnitt über den
Betrieb der CPU-Baugruppe im CS/CJ-Serie Bedienerhandbuch.
Zyklische Aktualisierung
Jedes Programm, das einer ausführungsbereiten zyklischen Task oder einer
Task mit erfüllter Interrupt-Bedingung zugeordnet ist, wird beginnend mit der
Programmstartadresse bis zum END(001)-Befehl ausgeführt. Nachdem alle
ausführungsbereiten zyklischen Tasks oder Tasks mit erfüllter Interrupt-Bedingung ausgeführt wurden, werden alle Ein-/Ausgänge von der zyklischen
Aktualisierung gleichzeitig aktualisiert.
HinweisProgramme können in mehreren Tasks ausgeführt werden. Die E/A werden
nach dem abschließenden END(001)-Befehl im Programm aktualisiert, dem
die höchste Nummer zugewiesen ist (unter allen ausführungsbereiten zyklischen Tasks). Die E/A werden nicht nach dem END(001)-Befehl in Programmen aktualisiert, die anderen zyklischen Tasks zugeordnet sind.
Direkte Aktualisierung
Oben
150
! LD 000101
! OUT 000209
END
Oben
! MOV 0003
END
E/A-Aktualisierung
Zyklische
Aktualisierung
(Stapelverarbeitung)
CIO 0001
CIO 0002
CIO 0003
CIO 0004
150
150
150
Alle tatsächlichen Daten
16-BitEinheiten
16-BitEinheiten
Führen Sie einen IORF-Befehl für alle erforderlichen Worte vor dem
END(001)-Befehl aus, wenn die zwischenzeitliche E/A-Aktualisierung in anderen Tasks benötigt wird.
Befehle mit Aktualisierungsvarianten (!)
Die E/A werden wie im Folgenden gezeigt aktualisiert, wenn ein Befehl ausgeführt wird und ein tatsächliches E/A-Bit als Operand spezifiziert ist.
BaugruppenAktualisierte Daten
C200H E/A-Baugruppen (nur CS-Serie)E/A werden für die 16 Bits aktualisiert,
CJ E/A-Baugruppen
die das Bit enthalten.
39
GrundbegriffeAbschnitt 2-1
• Wenn ein Wortoperand für einen Befehl spezifiziert ist, werden die E/A für
die spezifizierten 16 Bits aktualisiert.
• Die Eingaben werden für die Eingangs- oder Quelloperanden aktualisiert,
unmittelbar bevor ein Befehl ausgeführt wird.
• Die Ausgaben werden für die Ausgangs- oder Zieloperanden (D) aktualisiert, unmittelbar nachdem ein Befehl ausgeführt wurde.
Fügen Sie eine Ausrufezeichen (!) (Direkte Aktualisierung) vor dem Befehl ein.
HinweisDirekte Aktualisierung wird von den CS1D CPU-Baugruppen für Duplex-CPU-
Systeme nicht unterstützt. Diese Systeme unterstützen jedoch die Aktualisierung durch die Befehle IORF(097) und DLNK(226).
Durch den Befehl I/O REFRESH aktualisierte Baugruppen
PositionCPU- oder E/A-Erweiterungs-Racks (jedoch keine SYSMAC
BUS-Slave-Racks)
BaugruppenE/A-Baugruppen CS/CJ-Serie
E/A-Baugruppen
C200H E/A-Baugruppe
(siehe Hinweis)
C200H Multipoint-E/A-
Baugruppen der Gruppe 2
(siehe Hinweis)
Spezial-E/A-BaugruppenNicht aktualisiert
Aktualisiert
Aktualisiert
Nicht aktualisiert
HinweisC200H E/A-Baugruppen können nicht in SPS der CJ-Serie installiert werden.
Oberteil
.
.
.
!LD 000101
.
.
.
!OUT 000209
.
.
.
END
Oberteil
.
.
.
!MOV
.
.
.
END
E/AAktualisierung
0003
0004
Direkte Aktualisierung
Eingang
Ausgang
S
D
CIO 0001
CIO 0002
CIO 0003
CIO 0004
150
150
150
150
16-BitEinheiten
16-BitEinheiten
40
E/A-Aktualisierung
Zyklische Aktualisierung
(Stapelverarbeitung)
Alle tatsächlichen E/A
GrundbegriffeAbschnitt 2-1
Durch IORF(097) oder
DLNK(226) aktualisierte
Baugruppen
Ein E/A-Auffrischungs-Befehl (IORF(097)), der die tatsächlichen E/A-Daten in
einem spezifizierten Wortbereich aktualisiert, steht als Spezialbefehl zur Verfügung. Mit diesem Befehl können die gesamten oder nur ein spezifizierter
Bereich der tatsächlichen E/A-Daten in einem Zyklus aktualisiert werden. Der
IORF-Befehl kann auch dazu verwendet werden, Worte zu aktualisieren, die
Spezial-E/A-Baugruppen zugewiesen sind.
Ein weiterer Befehl, CPU-Spezial-E/A-direkte-Auffrischung (DLNK(226)),
steht zur Aktualisierung der Worte zur Verfügung, die den CPU-Bus-Baugruppen in den CIO- und DM-Bereichen zugeordnet sind. Mit diesem Befehl können außerdem spezielle Aktualisierungen bei den Baugruppen durchgeführt
werden, wie z. B. für Data-Links. Der Befehl DLNK(226) wird nur von den
CS1-H, CJ1-H, CJ1M und CS1D CPU-Baugruppen unterstützt.
Durch IORF(097) aktualisierte Baugruppen
PositionCPU- oder E/A-Erweiterungs-Racks (jedoch keine SYSMAC
Worte, die der Baugruppe im CIO-Bereich
zugeordnet sind
Worte, die der Baugruppe im DM-Bereich
zugeordnet sind
Spezielle Aktualisierung bei der Baugruppe
(Data-Links bei Controller-Link-Baugruppen und
SYSMAC-Link-Baugruppen oder dezentrale E/A
bei DeviceNet-Baugruppen)
Worte, die im CIO- und
DM-Bereich zugeordnet
sind, und spezielle
Aktualisierung
DLNK
#F
CPU-BusBaugruppe mit
Baugruppennummer F
41
GrundbegriffeAbschnitt 2-1
2-1-11 Programmkapazität
In der folgenden Tabelle sind die maximalen Programmkapazitäten von CPUBaugruppen der CS/CJ-Serie für alle Anwenderprogramme (d. h., die Gesamtkapazität aller Tasks) aufgeführt. Alle Kapazitäten sind als maximale Anzahl
von Steps (Programmschritten) angegeben. Die Kapazitäten dürfen nicht überschritten werden, und das Übertragen eines Programms in die SPS wird deaktiviert, wenn ein Versuch unternommen wird, die Kapazität zu überschreiten.
Ein einzelner Befehl ist 1 bis 7 Steps lang. Weitere Informationen zur jeweiligen
Anzahl von Steps in den Befehlen finden Sie unter 10-5, Ausführungszeit undStep-Anzahl der Befehle im Bedienerhandbuch. (Die Länge der einzelnen
Befehle wird um 1 Step erhöht, wenn ein Operand mit doppelter Länge verwendet wird.)
HinweisAnders als bei früheren OMRON SPS-Systemen (wie C200HX/HG/HE und CV-
Serie SPS), bei denen die Programmkapazität in Worten angegeben wurde,
erfolgt die Angabe der Programmkapazität bei CS/CJ-Serie SPS-Systemen in
Steps. Weitere Informationen zu den Richtlinien für die Umrechnung von Programmkapazitäten früherer OMRON SPS finden Sie am Ende von Abschnitt
10-5, Ausführungszeit und Step-Anzahl der Befehle im Bedienerhandbuch Ihrer
SPS.
2-1-12 Grundbegriffe der SPS-Programmierung
Befehle werden in der Reihenfolge ausgeführt, in der sie im Speicher aufgelistet sind (AWL-Reihenfolge). Die Grundkonzepte der Programmierung und
die Ausführungsreihenfolge müssen richtig sein.
42
GrundbegriffeAbschnitt 2-1
Allgemeine Struktur des
Kontaktplanprogramms
Linke Stromschiene
Eingangsbit
Verbindungslinie
Ein Kontaktplan besteht aus den linken und rechten Stromschienen, Verbindungslinien, Eingangsbits, Ausgangsbits und Spezial-Befehlen. Ein Programm
besteht aus mindestens einem Programm-Netzwerk. Ein Programm- Netzwerk
ist eine Einheit, die durch horizontale Aufteilung des Kontaktplans erhalten wird.
In Form von AWL-Code besteht ein Netzwerk aus allen Befehlen zwischen
einem LD/LD NOT-Befehl bis zu dem Ausgabebefehl unmittelbar vor dem nächsten LD/LD NOT-Befehl. Ein Programm- Netzwerk besteht aus Befehlsblöcken,
die mit einem LD/LD NOT-Befehl beginnen, der den logischen Start bildet.
Spezialbefehl
Ausgangsbit
Rechte Stromschiene
Netzwerke
Befehlsblöcke
AWLEin AWL-Programm (Anweisungsliste) besteht aus einer Folge von SPS-
Befehlen, die in AWL-Form angegeben werden. Es besteht aus Programmadressen, und eine Programmadresse entspricht einem Befehl. Programmadressen bestehen aus sechs Stellen beginnend bei 000000.
1,2,3...1. Wenn Kontaktplanprogramme von SPS ausgeführt werden, verläuft der
Signalfluss immer von links nach rechts. Programme, die einen Signalfluss
von rechts nach links benötigen, können nicht ausgeführt werden. Insofern
unterscheidet sich dieser Fluss von dem Stromfluss in realen Schaltungen
aus fest verdrahteten Steuerrelais. Wenn beispielsweise die Schaltung „a“
in ein SPS-Programm eingebunden wird, verläuft der Stromfluss, als ob
die Dioden in Klammern eingesetzt wären, und die Spule R2 kann nicht
über Kontakt D angesteuert werden. Die tatsächliche Ausführungsreihenfolge ist auf der rechten Seite in AWL angegeben. Um die Funktion ohne
diese imaginären Dioden zu erzielen, muss die Schaltung neu geschrieben werden. Auch der Stromfluss in Schaltung „b“ kann nicht direkt programmiert werden und muss neu geschrieben werden.
Schaltung „a“
(1)
A
Signalfluss
(2) ((3))(4)
C
((8))
(6)
B
((5))
D
(9)
E
(7)
R1
(10)
R2
Reihenfolge der Ausführung (AWL)
(1) LD A
(2) LD C
(3) OUT TR0
(4) AND D
(5) OR LD
(6) AND B
(7) OUT R1
(8) LD TR0
(9) AND E
(10) OUT R2
Schaltung „b“
A
CD
B
R1
E
R2
In Schaltung „a“ kann Spule R2 nicht über Kontakt D angesteuert werden.
Bei Schaltung „b“ kann Kontakt E nicht in einen Kontaktplan geschrieben
werden. Das Programm muss geändert werden.
2. Es bestehen keine Beschränkungen der Anzahl von verwendbaren E/ABits, Arbeitsbits, Zeitgebern und anderen Eingangbits. Netzwerke sollten
jedoch so einfach und übersichtlich wie möglich sein, auch wenn dazu
mehr Eingangsbits verwendet werden müssen.
3. Es bestehen keine Einschränkungen bei der Anzahl von Eingangsbits, die
in einer Reihe, parallelen Reihe oder in parallelen Strompfaden verbunden
werden können.
4. Es können zwei oder mehrere Ausgabebits parallel verbunden werden.
44
0000
00
0000
05
TIM 0000#0100
0002
00
GrundbegriffeAbschnitt 2-1
5. Ebenso lassen sich Ausgangsbits als Eingangsverknüpfungen verwenden.
0002
00
0002
00
Beschränkungen
1,2,3...1. Ein Kontaktplanprogramm-Netzwerk muss geschlossen werden, so dass
die Signale (Stromfluss) von der linken Stromschiene zur rechten Stromschiene geleitet werden. Wenn das Programm-Netzwerk nicht geschlossen wird, tritt ein Kompilierungs-Fehler auf.
2. Ausgangsbits, Zeitgeber, Zähler und andere Ausgabebefehle können nicht
direkt mit der linken Stromschiene verbunden werden. Ist ein solcher Ausgabebefehl direkt mit der linken Stromschiene verbunden, wird bei der Programmierüberprüfung durch ein Programmiergerät ein ProgrammnetzwerkFehler angezeigt.
Eingangsbedingung muss angegeben sein.
MOV
Fügen Sie als Öffner den Immer-Aus-Merker oder als Schließer den ImmerEIN-Merker ein, wenn die Eingangs-Ausführungsbedingung ständig auf EIN
gehalten werden muss.
Ungenutztes Arbeitsbit
EIN (Immer-EIN-Merker)
MOV
45
GrundbegriffeAbschnitt 2-1
3. Ein Eingangsbit muss immer vor und nicht hinter einem Ausgabebefehl
eingefügt werden wie ein Ausgangsbit. Wenn es nach einem Ausgabebefehl eingefügt wird, tritt während der Programmüberprüfung durch ein Programmiergerät ein Programmüberprüfungsfehler auf.
0000
00
0000
01
0002
01
0000
03
0002
01
0000
04
4. Das gleiche Ausgangsbit kann nur einmal in einem Ausgabebefehl programmiert werden. Befehle in einem Kontaktplanprogramm werden, mit
dem obersten Strompfad beginnend, der Reihe nach in einem einzelnen
Zyklus ausgeführt, daher beinhaltet das Ausgabebit letztendlich das Ergebnis des Ausgabebefehls des unteren Strompfades, und die Ergebnisse
von vorherigen Befehlen, durch die das gleiche Bit gesteuert wird, werden
überschrieben und nicht ausgegeben.
(Ausgangsbit)
0000
00
(Ausgangsbit)
0000
00
5. Ein Eingangsbit kann nicht in einem OUTPUT-Befehl (OUT) verwendet
werden.
(Eingangsbit)
0000
00
46
6. In jeder Task muss am Ende des Programms ein END(001)-Befehl eingefügt werden.
• Wenn ein Programm ohne einen END(001)-Befehl ausgeführt wird, tritt
ein Programmfehler wegen eines fehlendes END-Befehls auf, die ERR/
ALM-LED auf der Vorderseite der CPU-Baugruppe leuchtet und das Programm wird nicht ausgeführt.
• Wenn in einem Programm mehr als ein END(001)-Befehl enthalten ist,
wird es nur bis zum ersten END(001)-Befehl ausgeführt.
GrundbegriffeAbschnitt 2-1
Task (Programm)
000000
000001
END
Task (Programm)
000000
000001
END
Task (Programm)
000000
000001
END
2-1-13 Eingabe in AWL
Ein logischer Start wird durch einen LD/LD NOT-Befehls gebildet. Der Bereich
vom logischen Start bis zu dem Befehl unmittelbar vor dem nächsten LD/LD
NOT-Befehl wird als einzelner Befehlsblock angesehen.
Erstellen Sie ein einzelnes Netzwerk, das aus zwei Befehlsblöcken besteht.
Entweder mit einem AND LD-Befehl, um eine UND-Verknüpfung der beiden
Blöcke zu erstellen, oder mit einem OR LD-Befehl, um eine ODER-Verknüpfung zwischen den beiden Blöcke zu erstellen. Das folgende Beispiel zeigt ein
komplexes Netzwerk. An diesem wird die Vorgehensweise für die Eingabe in
AWL beschrieben (Zusammenfassung und Reihenfolge).
Task (Programm)
000000
000001
END
END
Task (Programm)
000000
000001
END
END
Task (Programm)
000000
000001
END
Wird nicht ausgeführt.
Wird nicht ausgeführt.
47
GrundbegriffeAbschnitt 2-1
1,2,3...1. Teilen Sie das Netzwerk zunächst in kleine Blöcke (a) bis (f) auf.
0000000000
01
0010
0010
00
01
0005
00
0000000000
(a)
0010000010
(b)
(c)
(1)
(2)
0005
00
0000
0000
03
02
01
01
(d)
0000
02
0000040000
0000
06
0000
03
05
0000040000
(e)
0005
00
05
(5)
0000
(f)
06
(4)
(3)
48
GrundbegriffeAbschnitt 2-1
• Programmieren Sie die Blöcke von oben nach unten und dann von links
nach rechts.
0000
(a)
LD 000000
AND 000001
0000
01
00
OR LD
0010
(b)
00
LD 001000
AND 001001
0010
01
(1)
(2)
0005
(c)
00
OR 000500
0000
(a)
AND 000002
AND NOT 000003
Adresse
000200 LD000000
(a)
000201 AND000001
000202 LD001000
(b)
000203 AND001001
0000
02
03
BefehlOperand
000204 OR LD---
(c)
000205 OR000500
000206 AND000002
(d)
000207 AND NOTT 000003
000208 LD000004
(e)
000209 AND000005
(f)
000210 OR000006
000211 AND LD---
000212 OUT000500
AND LD
0005
00
OUT 000500
(3)
(1)
(c)
0000040000
LD 000004
AND 000005
(f)
OR 000006
(2)
0000
06
05
(5)
(4)
(3)
(5)
(4)
49
GrundbegriffeAbschnitt 2-1
2-1-14 Programmierbeispiele
1,2,3...1. Strompfade parallel/in Reihe
0000000000010000
0002
00
ab
Block ABlock B
0000
03
02
0002
00
BefehlOperanden
LD
AND
OR
AND
AND NOT
OUT
000000
000001
000200
000002
000003
000200
Programmieren Sie die parallele Befehlsausführung in Block A und dann in Block B.
2. Strompfade in Reihe/parallel
0000
0000
01
00
ab
Block A
• Trennen Sie den Strompfad in die Blöcke A und B auf, und programmieren Sie sie einzeln.
• Verknüpfen Sie die Blöcke A und B durch einen AND LD-Befehl.
0000
0002
01
0000
04
02
Block B
0000
03
0002
01
BefehlOperanden
LD
AND NOT
LD
AND
OR
OR
AND LD--OUT
000000
000001
000002
000003
000201
000004
000201
a
b
a
b
• Programmieren Sie Block A.
b
1
Block B1
0000
0000
03
02
0002
04
02
b
2
0002
02
0000000000010000
Block B2
ab
Block A
Block B
• Programmieren Sie Block B1 und danach Block B2.
• Verknüpfen Sie die Blöcke B
1 und B2 durch einen OR LD-Befehl und dann die
Blöcke A und B durch einen AND LD-Befehl.
BefehlOperanden
LD NOT
AND
LD
AND NOT
LD NOT
AND
OR LD--AND LD--OUT
000000
000001
000002
000003
000004
000202
000202
a
b
1
b
2
b1 + b
a · b
2
50
GrundbegriffeAbschnitt 2-1
3. Beispiel einer Reihenverbindung in einem Strompfad in Reihe
a
Block A1
0000
00
0000
02
a
1
0000
01
0002
03
2
b
Block B1
0000
04
0002
06
b
1
2
0000
05
0002
07
0002
03
Block A2Block B2
ab
Block ABlock B
Programmieren Sie Block A
durch einen OR LD-Befehl.
Block A
2
Programmieren Sie B
und Block A2, und verknüpfen Sie dann Block A1 mit
1
und B2 in derselben Weise.
1
Verknüpfen Sie Block A und Block B durch einen AND LD-Befehl.
Wiederholen Sie den Vorgang für alle vorhandenen Blöcke A bis n.
BefehlOperanden
LD
AND NOT
LD NOT
AND
000000
000001
000002
000003
OR LD--LD
AND
LD
AND
000004
000005
000006
000007
OR LD--AND LD--OUT
000203
a
1
a
2
a1 + a
b
1
b
2
b1 + b
a · b
2
2
0005
00
ab
cn
Block ABlock BBlock CBlock n
51
GrundbegriffeAbschnitt 2-1
4. Komplexe Netzwerke
0000
00
0000
04
0000
06
0000
01
0000
02
0000
05
0000
07
0000
03
0002
04
BefehlOperand
LD
LD
LD
AND
OR LD--AND LD--LD
AND
OR LD--LD
AND
OR LD--OUT
000000
000001
000002
000003
000004
000005
000006
000007
000204
0000
00
Z
Die Darstellung oben basiert auf der Darstellung unten.
0000
00
Wenn das Programm wie unten gezeigt umgeschrieben
wird, kann es vereinfacht werden.
0000
02
0000
01
0000
03
0000
0000
Z
01
0000
03
02
Z
0000
00
b
0000
00
ad
BlockBlock
0000
01
0000
03
Block
Block
c
0000
02
0000
04
0000
05
0000060000
07
e
Block
Der oben gezeigtes Netzwerk kann wie folgt umgeschrieben werden:
Wenn ein Haftmerker-Bit verwendet wird, bleibt der
EIN/AUS-Status auch dann im Speicher erhalten,
wenn die Spannungsversorgung ausgeschaltet wird,
und das Fehlersignal ist noch aktiviert, wenn die
Spannungsversorgung wieder eingeschaltet wird.
5. Netzwerke, die besondere Beachtung benötigen oder neu geschrieben
werden müssen.
OR- und OR LD-Befehle
Bei einem OR oder OR NOT-Befehl wird der OR-Befehl auf das Ergebnis der
Kontaktlogik vom LD- oder LD NOT-Befehl zum OR oder OR NOT-Befehl
angewendet. Also können die Netzwerke so umgeschrieben werden, dass
der OR LD-Befehl nicht mehr benötigt wird.
0000
00
0002
07
0000
01
0002
07
0002
07
0000
01
0002
07
0000
00
Beispiel: Ein OR LD-Befehl wird benötigt, wenn die Netzwerke wie gezeigt
ohne Änderungen programmiert werden. Einige Schritte können ausgelassen
werden, indem die Netzwerke wie folgt neu geschrieben werden.
Ausgabebefehlverzweigungen
Sie benötigen ein TR-Bit, wenn vor einem AND- oder AND NOT-Befehl eine
Verzweigung ist. Das TR-Bit wird nicht benötigt, wenn sich die Verzweigung
an einem Punkt befindet, der direkt mit dem Ausgabebefehl und dem ANDbzw. AND NOT-Befehl verbunden ist, oder wenn der Ausgabebefehl so weitergeführt werden kann wie vorher.
Ausgang 1
0000
TR0
00
0000
01
0002
0002
08
09
Ausgang 2
0000
00
0000
01
0002
09
0002
08
Beispiel: Ein Ausgabebefehl und ein Ladebefehl (LD) für das temporäre
Speicherbit TR0 werden an einem Verzweigungspunkt benötigt, wenn die
Netzwerke ohne Änderung programmiert werden. Einige Schritte können ausgelassen werden, indem die Netzwerke umgeschrieben werden.
53
GrundbegriffeAbschnitt 2-1
AWL-Ausführungsreihenfolge
Eine SPS führt SPS-Programme in der Reihenfolge aus, in der die AWL eingegeben ist, daher werden Befehle, abhängig davon, wie die Netzwerke
geschrieben wurden, möglicherweise nicht wie erwartet ausgeführt. Bedenken Sie beim Schreiben von SPS-Programmen immer die Ausführungsreihenfolge der Befehle.
0000
00
0010
0000
0010
00
0002
00
10
00
0000
00
0010
00
0002
10
0010
00
Beispiel: Im oben aufgeführten Beispiel kann CIO 000210 nicht eingeschaltet
werden. Durch das Neuschreiben des Netzwerks, wie oben angezeigt, kann
CIO 000210 für einen Zyklus auf EIN gesetzt werden.
Netzwerke, die umgeschrieben werden müssen
SPS führen Befehle in der Reihenfolge aus, so dass der Signalfluss (Stromfluss) im Kontaktplan von links nach rechts verläuft. Ein Stromfluss von rechts
nach links kann nicht programmiert werden.
0000
00
0000
01
TR0
0000
02
0000
04
0000030002
11
0002
12
0000
0000
0000
0000
01
02
00
0000
04
01
0000
0002
0002
11
12
03
Beispiel: Das Programm kann auf die in der linken Abbildung dargestellte
Weise geschrieben werden, bei der TR0 die Verzweigung erhält. Derselbe
Wert wird jedoch auch von den Netzwerken auf der rechten Seite erhalten,
die leichter nachvollzíehbar sind. Aus diesem Grund empfiehlt es sich, das
links dargestellte Netzwerk in die auf der rechten Seite gezeigten Netzwerke
umzuschreiben.
Das Programm-Netzwerk unten links kann so nicht ausgeführt werden und
muss umgeschrieben werden.
Die gestrichelten Pfeile zeigen den Signalfluss (Stromfluss), wenn der Schaltkreis aus Steuerrelais bestünde.
A
A
C
B
R1
E
D
R2
C
ACE
E
B
R1
D
R2
54
SicherheitshinweiseAbschnitt 2-2
2-2Sicherheitshinweise
2-2-1Bedingungsmerker
Verwenden von
Bedingungsmerkern
Bedingungsmerker werden gemeinsam von allen Befehlen verwendet und
ändern ihren Status im Verlauf eines Zyklus entsprechend den Ausführungsergebnissen der einzelnen Befehle. Stellen Sie daher sicher, Bedingungsmerker mit der gleichen Ausführungsbedingung auf einem verzweigten Ausgang
im unmittelbaren Anschluss an einen Befehl zu verwenden, um die Ergebnisse der Befehlsausführung zu erhalten. Verbinden Sie einen Bedingungsmerker niemals direkt mit der Stromschiene, da der Status des Merkers in
diesem Fall die Ausführungsergebnisse anderer Befehle widerspiegelt.
Beispiel: Verwenden der Ausführungsergebnisse von Befehl A
Ordnungsgemäße
Verwendung
AWL
Bedingungsmerker
Beispiel: =
Befehl A
Gibt Ausführungsergebnisse von
Befehl A wieder.
Befehl B
BefehlOperand
LD a
Befehl
AND=
Befehl
A
B
Für die Befehle A und B wird die gleiche Ausführungsbedingung (a) verwendet, um Befehl B entsprechend den Ausführungsergebnissen von Befehl A
auszuführen. Befehl B wird also nur entsprechend dem Bedingungsmerker
ausgeführt, wenn Befehl A ausgeführt wurde.
Nicht ordnungsgemäße
Verwendung
Vorhergehendes Netzwerk
Befehl A
Gibt die Ausführungsergebnisse des
vorhergehenden Netzwerks wieder,
Bedingungsmerker
Beispiel: =
wenn Befehl A nicht ausgeführt wird.
Befehl B
Wenn der Bedingungsmerker direkt mit der linken Stromschiene verbunden
ist, wird Befehl B entsprechend den Ausführungsergebnissen eines früheren
Strompfads ausgeführt, wenn Befehl A nicht ausgeführt wird.
HinweisBedingungsmerker werden von allen Befehlen innerhalb eines Einzelpro-
gramms (Task) verwendet und gelöscht, wenn die Task wechselt. Daher gelten Ausführungsergebnisse der vorhergehenden Tasks nicht in späteren
Tasks. Da Bedingungsmerker von allen Befehlen gemeinsam verwendet werden, muss sichergestellt werden, dass diese sich nicht innerhalb eines einzelnen SPS-Programms überschneiden. Im Folgenden finden Sie ein Beispiel.
55
SicherheitshinweiseAbschnitt 2-2
Verwenden von Ausführungsergebnissen in Öffner- und SchließerEingangsbedingungen
Die Bedingungsmerker übernehmen die Ausführungsergebnisse von Befehl B
(siehe folgendes Beispiel), selbst wenn die Öffner- und Schließer-Eingangsbedingungen von der gleichen Verzweigung ausgeführt werden.
Befehl A
Nicht ordnungsgemäße
Verwendung
Bedingungsmerker
Beispiel: =
Bedingungsmerker
Beispiel: =
Stellen Sie sicher, dass jedes der Ergebnisse einmal von einem AusgangsBefehl übernommen wird, damit die Ausführungsergebnisse für Befehl B nicht
übernommen werden.
Gibt Ausführungsergebnisse
von Befehl A wieder.
Befehl B
Gibt Ausführungsergebnisse
von Befehl B wieder.
Ordnungsgemäße
Verwendung
Gibt Ausführungsergebnisse von Befehl A
wieder.
Bedingungsmerker
Beispiel: =
Bedingungsmerker
Beispiel: =
Befehl A
Gibt Ausführungsergebnisse von Befehl A
wieder.
Befehl B
56
SicherheitshinweiseAbschnitt 2-2
Beispiel: Im folgenden Beispiel wird #0200 nach D00200 verschoben, wenn
D00100 den Wert #0010 enthält, und #0300 wird nach D00300 verschoben,
wenn D00100 nicht den Wert #0010 enthält.
Nicht
ordnungsgemäße
Verwendung
Gibt die Ausführungsergebnisse on CMP wieder.
(1)
Gibt die Ausführungsergebnisse von MOV wieder.
(2)
Der Gleich-Merker wird auf EIN gesetzt, wenn D00100 im vorherigen Strompfad #0010 enthält. #0200 wird für Befehl (1) nach D00200 verschoben,
anschließend wird jedoch der Gleich-Merker auf AUS gesetzt, da die Quelldaten #0200 ungleich 0000 Hex sind. Der Befehl MOV bei (2) wird anschließend
ausgeführt und #0300 wird nach D0300 verschoben. Daher muss, wie im Folgenden gezeigt, dieses Netwerk erweitert werden, um zu verhindern, dass die
Ausführungsergebnisse des ersten MOVE-Befehls übernommen werden.
Ordnungsgemäße
Verwendung
Gibt die Ausführungsergebnisse
von CMP wieder.
57
SicherheitshinweiseAbschnitt 2-2
Verwenden der Ausführungsergebnisse von Befehlen mit
Flankenauswertung
Bei Befehlen mit Flankenauswertung werden die Ausführungsergebnisse nur in
Bedingungsmerkern widergegeben, wenn die Ausführungsbedingung erfüllt ist.
Die Ergebnisse eines vorhergehenden Netzwerks (und nicht die Ausführungsergebnisse des Befehls mit Flankenauswertung) werden in Bedingungsmerkern des nächsten Zyklus verwendet. Daher muss auf die Bedingungsmerker
des folgenden Zyklus geachtet werden, wenn die Ausführungsergebnisse von
Befehlen mit Flankenauswertung verwendet werden sollen.
Im folgenden Beispiel werden die Befehle A und B nur ausgeführt, wenn die
Ausführungsbedingung C erfüllt ist. Es treten jedoch folgende Probleme auf,
wenn Befehl B Ausführungsergebnisse von Befehl A übernimmt. Wenn die
Ausführungsbedingung C im an die Ausführung von Befehl anschließenden
Zyklus weiter auf EIN gesetzt bleibt, wird Befehl B unerwartet ausgeführt
(durch die Ausführungsbedingung), wenn der Bedingungsmerker aufgrund von
Ergebnissen eines vorhergehenden Netzwerks von AUS auf EIN wechselt.
Vorheriges Netzwerk
Nicht
ordnungsgemäße Verwendung
Bedingungsmerker
Beispiel: =
Befehl A
Gibt Ausführungsergebnisse von Befehl A wieder,
wenn die Ausführungsbedingungen erfüllt sind.
Gibt die Ausführungsergebnisse von einem
vorhergehenden Netzwerk im nächsten Zyklus
wieder.
Befehl B
In diesem Fall handelt es sich bei den Befehlen A und B nicht um Befehle mit
Flankenauswertung. Stattdessen wird der Befehl DIFU (von DIFD) wie im Folgenden gezeigt verwendet, und die Befehle A und B werden beide nur an der
steigenden (oder fallenden) Flanke und somit nur in einem Zyklus ausgeführt.
Vorheriges Netzwerk
Ordnungsgemäße
Verwendung
Befehl A
Gibt Ausführungsergebnisse von Befehl A wieder.
Bedingungsmerker
Beispiel: =
Befehl B
HinweisDie CS1-H, CJ1-H, CJ1M oder CS1D CPU-Baugruppen unterstützen Befehle
zum Speichern (CCS(282)) und Laden (CCL(283)) der Bedingungsmerkerzustände. Mit diesen Befehlen können die Bedingungsmerkerzustände gespeichert
und an anderer Stelle in der Task oder in einer anderen Task verwendet werden.
Hauptbedingungen, unter denen Bedingungsmerker auf EIN gesetzt werden
Fehlermerker
Der Fehlermerker (P_ER) wird unter bestimmten Bedingungen auf EIN gesetzt,
z. B. wenn die Operandendaten eines Befehls ungültig sind. Der Befehl wird
nicht ausgeführt, wenn der Fehlermerker P_ER auf EIN gesetzt wird.
58
SicherheitshinweiseAbschnitt 2-2
Wenn der Fehlermerker P_ER auf EIN gesetzt ist, ändert sich der Zustand
anderer Bedingungsmerker (z. B. der P_LT, P_GT, P_OF- und P_UF-Merker)
nicht und der Zustand der Gleich- und Negativ-Merker hängt vom jeweiligen
Befehl ab.
Weitere Informationen zu den einzelnen Befehlen und den Bedingungen,
unter denen der Fehlermerker auf EIN gesetzt wird, finden Sie im CS/CJ-
Serie Speicherprogrammierbare Steuerungen Befehlsreferenzhandbuch
(W340). Beachten Sie hierbei, dass einige Befehle den Fehlermerker unab-
hängig von den Bedingungen auf AUS setzen.
HinweisDie Einstellungen für das Auftreten eines Befehlsfehlers im SPS-Setup legen
fest, ob der Betrieb angehalten wird, wenn der Fehlermerker auf EIN gesetzt
wird. In der Standardeinstellung wird der Betrieb fortgeführt, wenn der Fehlermerker auf EIN gesetzt wird. Wenn eine Betriebsunterbrechung für den Fall,
dass der Fehlermerker auf EIN gesetzt wird, festgelegt wurde, und der
Betrieb angehalten wird (aufgrund eines Programmfehlers), wird die Programmadresse, an der der Betrieb abgebrochen wurde, in A298 und A299
gespeichert. Gleichzeitig wird A29508 auf EIN gesetzt.
Gleich-Merker
Beim Gleich-Merker handelt es sich um einen temporären Merker für alle
Befehle, es sei denn die Vergleichsergebnisse sind gleich (=). Er wird automatisch vom System gesetzt und ändert seinen Status. Der Gleich-Merker kann
von einem Befehl auf AUS (EIN) gesetzt werden, nachdem er von einem anderen Befehl auf EIN (AUS) gesetzt wurde. Der Gleich-Merker wird beispielsweise auf EIN gesetzt, wenn MOV oder ein anderer Kopierbefehl 0000 Hex als
Quelldaten speichert und bleibt in allen anderen Fällen auf AUS gesetzt. Selbst
wenn ein Befehl den Gleich-Merker auf EIN setzt, wird der Kopierbefehl unverzüglich ausgeführt und der Gleich-Merker wird, je nachdem, ob die Quelldaten
gleich 0000 Hex sind oder nicht, auf EIN oder AUS gesetzt.
Übertragsmerker
Der Übertragsmerker wird für Verschiebebefehle, Additions- und Subtraktionsbefehle mit Übertrag, Additions- und Subtraktionsbefehlsüberträge mit
negativen Überträgen, Spezial-E/A-Baugruppen-Befehle, PID-Befehle und
FPD-Befehle verwendet. Beachten Sie die folgenden Sicherheitshinweise.
Hinweis1. Der Übertragsmerker kann aufgrund der Ausführungsergebnisse eines
bestimmten Befehls EIN (AUS) verbleiben und anschließend für einen anderen Befehl verwendet werden (einen Additions- und Subtraktionsbefehl
mit Übertrag oder einen Verschiebebefehl). Stellen Sie sicher, den Übertragsmerker falls erforderlich zu löschen.
2. Der Übertragsmerker kann von den Ausführungsergebnissen eines bestimmten Befehls auf EIN (AUS) gesetzt und von einem anderen Befehl
auf AUS (EIN) gesetzt werden. Stellen Sie sicher, die richtigen Ergebnisse
zu erhalten, falls der Übertragsmerker berücksichtigt wird.
Kleiner-als- und Größer-als-Merker
Die Merker P_LT und P_GT werden für Vergleichsbefehle sowie u. a. die
Befehle LMT, BAND, ZONE und PID verwendet.
Der P_LT oder P_GT Merker kann von einem anderen Befehl auf AUS (EIN)
gesetzt werden, selbst wenn er von den Ausführungsergebnissen eines
bestimmten Befehls auf EIN (AUS) gesetzt wurde.
Negativ-Merker
Der Negativ-Merker (P_N) wird auf EIN gesetzt, wenn das äußerste linke Bit
des Worts mit den Befehlsausführungs-Ergebnissen bestimmter Befehle „1“
ist. Er ist weiterhin für alle anderen Befehle auf AUS gesetzt.
Spezifizieren von Operanden für mehrere Worte
Bei SPS der CS/CJ-Serie wird ein Befehl wie geschrieben ausgeführt, selbst
wenn ein Operand spezifiziert wurde, der mehrere Worte erfordert, so dass
nicht alle Worte des Operanden im selben Bereich liegen. In diesem Fall werden Worte in der Reihenfolge der SPS-Speicheradressen verwendet. Der
Fehlermerker wird nicht auf EIN gesetzt.
59
SicherheitshinweiseAbschnitt 2-2
So kann beispielsweise eine Blockübertragung mit dem Befehl XFER(070)
ausgeführt werden, bei der 20 Worte, beginnend mit W500, für die Übertragung spezifiziert wurden. In diesem Fall wird der bei W511 endende Arbeitsbereich erweitert und der Befehl ausgeführt, ohne den Fehlermerker auf EIN
zu setzen. In den SPS-Speicheradressen werden die Zeitgeber-Istwerte im
auf den Arbeitsbereich folgenden Speicher gespeichert. Daher werden durch
den folgenden Befehl W500 bis W511 nach D00000 bis D00011 und die Istwerte für T0000 bis T0007 nach D00012 bis D00019 übertragen.
HinweisWeitere Informationen zu den SPS-Speicheradressen finden Sie im Anhang
Aufteilung des SPS-Speicheradressbereichs.
&20
Anzahl der Worte
Erstes Quellwort
Erstes Zielwort
W500
bis
W511
T0000
bis
bis
bis
Übertragen
bis
bis
bis
bis
2-2-2Spezielle Programmabschnitte
Programme für die CS/CJ-Serie verfügen über spezielle Programmabschnitte, die die Befehlsbedingungen steuern. Die folgenden speziellen Programmabschnitte sind verfügbar.
ProgrammabschnittBefehleBefehlsbedingungStatus
UnterprogrammBefehle SBS, SBN und
Abschnitt IL - ILCBefehle IL und ILCAbschnitt ist gesperrtDie Ausgangsbits werden auf AUS
Schritt-Programm-
abschnitt
FOR-NEXT-SchleifeBefehle FOR und
Abschnitt JMP0 - JME0Befehle JMP0 und
Blockprogrammabschnitt Befehle BPRG und
RET
Befehle STEP und
SNXT
NEXT
JME0
BEND
Das Unterprogramm wird
ausgeführt.
Unterbrechung des sequenziellen Programm-Ablaufs:
Blockprogramm wird
ausgeführt.
Der Unterprogrammabschnitt zwischen den Befehlen SBN und RET
wird ausgeführt.
gesetzt und die Zeitgeber zurückgesetzt. Andere Befehle werden nicht
ausgeführt und der vorherige Status
wird beibehalten.
Programmschleifen-Ausführung
Sprung
Das in der AWL zwischen den Befehlen BPRG und BEND aufgelistete
Blockprogramm wird ausgeführt.
Befehlskombinationen
Der folgenden Tabelle können Sie entnehmen, welche Spezialbefehle innerhalb anderer Programmabschnitte verwendet werden können.
Unter-
programm
UnterprogrammNicht möglich Nicht möglichNicht möglichNicht möglichNicht möglichNicht möglich
IL - ILCOKNicht möglichNicht möglichOKOKNicht möglich
Schritt-Pro-
Nicht möglich OKNicht möglichNicht möglichOKNicht möglich
OKOKNicht möglichOKOKNicht möglich
OKOKOKNicht möglichOKNicht möglich
Abschnitt IL -
ILC
Schritt-
Programm-
abschnitt
FOR-NEXT-
Schleife
Abschnitt
JMP0 - JME0
Block-
programm-
abschnitt
60
SicherheitshinweiseAbschnitt 2-2
HinweisBefehle, die Programmbereiche spezifizieren, können nicht für Programme in
anderen Tasks verwendet werden. Ausführliche Informationen hierzu finden
Sie im Abschnitt 4-2-2 Einschränkungen bei Task-Befehlen.
UnterprogrammePlatzieren Sie alle Unterprogramme in sämtlichen Programmen unmittelbar
vor dem Befehl END(001), jedoch hinter anderen Programmabschnitten, die
keine Unterprogramme darstellen. (Daher kann ein Unterprogramm nicht in
einem Schritt-Programmabschnitt, Blockprogramm sowie einem FOR - NEXToder JMP0 - JME0-Abschnitt platziert werden.) Wenn ein Programmabschnitt,
der kein Unterprogramm ist, hinter einem Unterprogramm (SBN bis RET)
platziert wird, wird dieser Programmabschnitt nicht ausgeführt.
Programm
Unterprogramm
Programm
In Unterprogrammen nicht
verfügbare Befehle
HinweisBlockprogrammabschnitte
Unterprogramm
Folgende Befehle dürfen nicht in Unterprogrammen platziert werden.
FunktionBefehlBefehlsausführung
Prozess-Step-SteuerungSTEP(008)Definieren des Schritt-
Programmabschnitts
SNXT(009)Schritte durch Schritt-
Programmabschnitte
ausführen
Ein Unterprogramm kann einen Blockprogrammabschnitt enthalten. Wenn
sich das Blockprogramm jedoch im Status WAIT(Warten) befindet, während
die Ausführung vom Unterprogramm zum Hauptprogramm zurückkehrt, verbleibt der Blockprogrammabschnitt beim nächsten Aufruf im Status
WAIT(Warten).
61
SicherheitshinweiseAbschnitt 2-2
In SchrittProgrammabschnitten
nicht verfügbare Befehle
FunktionAWLBefehl
Sequenzsteuerung
Unterprogramme
Blockprogramme
FOR(512), NEXT(513) und
BREAK(514)
END(001)Programmende
IL(002) und ILC(003)INTERLOCK und INTERLOCK
STEP DEFINE und STEP START
(Schritt, nächster Schritt)
(Blockprogramm-Anfang)
(Fehlerpunkt-Erfassung)
Hinweis1. Blockprogramme können in einem Step-Programmabschnitt verwendet
werden.
2. Ein Blockprogramm kann in einem Sperrabschnitt verwendet werden (zwischen IL und ILC). Der Blockprogrammabschnitt wird nicht ausgeführt,
wenn gesperrt zwischen IL und ILC.
3. Ein Blockprogrammabschnitt kann zwischen Mehrfachsprung (JMP0) und
Mehrfachsprung-Ende (JME0) verwendet werden.
4. Der Sprung-Befehl (JMP) und der bedingte Sprung-Befehl (CJP/CJPN)
können in einem Blockprogrammabschnitt verwendet werden. Die Befehle
Sprung (JMP) und Sprung-Ende (JME), wie auch die Befehle bedingter
Sprung (CJP/CJPN) und Sprung-Ende (JME), können in einem Blockprogrammabschnitt nicht verwendet werden, wenn sie nicht paarweise verwendet werden. Ein Programm kann nicht ordnungsgemäß ausgeführt
werden, wenn die Befehle nicht als Paare verwendet werden.
63
Überprüfen von ProgrammenAbschnitt 2-3
2-3Überprüfen von Programmen
Programme für die CS/CJ-Serie können in den folgenden Stadien überprüft
werden.
• Überprüfung während der Eingabe mit der Programmierkonsole
• Programmüberprüfung durch CX-Programmer
• Befehlsüberprüfung während der Ausführung
• Überprüfung auf schwerwiegende Fehler (Programmfehler) während der
Ausführung
2-3-1Fehler während der Eingabe in das Programmiergerät
Programmierkonsole
Fehler in den folgenden Punkten werden von der Programmierkonsole während der Eingabe angezeigt.
FehleranzeigeUrsache
CHK MEMSchalter 1 des DIP-Schalterblocks der CPU-Baugruppe ist auf ON
IO No. ERREine unzulässige E/A-Eingabe ist aufgetreten.
CX-Programmer
Das Programm wird zu den folgenden Zeitpunkten automatisch von CX-Programmer überprüft.
Alle Operanden aller Befehle und alle Programmierungsschemata
Von der CS/CJ-Serie unterstützte Modelle und alle Operanden
aller Befehle
Kapazität usw.
Die Ergebnisse der Überprüfung werden auf der Textregisterkarte des Ausgabefensters angezeigt. Die linke Stromschiene von unzulässigen Programmabschnitten wird in der Kontaktplanansicht rot dargestellt.
2-3-2Programmprüfungen mit CX-Programmer
In der folgenden Tabelle sind die möglichen Fehler aufgeführt, die von der Programmüberprüfungs-Funktion in CX-Programmer gefunden werden können.
CX-Programmer führt keine Prüfung auf Bereichsfehler bei indirekt adressierten Operanden in Befehlen aus. Fehler bei der indirekten Adressierung werden während der Programmausführungsüberprüfung gefunden und der
P_ER-Merker wird auf EIN gesetzt, wie im folgenden Abschnitt beschrieben.
Ausführliche Informationen hierzu finden Sie im CS/CJ-Serie Speicherpro-grammierbare Steuerungen Befehlsreferenzhandbuch (W340).
Für die Programmüberprüfung durch CX-Programmer kann der Anwender die
Überprüfungsstufen A, B oder C wählen (in Reihenfolge der Schwere des
Fehlers) sowie eine anwenderdefinierte Überprüfungsstufe.
BereichÜberprüfung
Unzulässige
Daten:
Kontaktplanprogrammierung
Befehlsunterstützung durch
SPS
Befehlspositionen
E/A-Linien
Verbindungen
Vollständigkeit von Befehl und Ausführung
Befehls- und Operandenunterstützung durch SPS
Befehlsvarianten (NOT, !, @ und %)
Integrität des Objektcodes
64
Überprüfen von ProgrammenAbschnitt 2-3
BereichÜberprüfung
Bereiche der
Operanden
Programmkapazität der SPS
SyntaxAufrufsüberprüfung bei Befehlspaaren
KontaktplanStruktur
Doppelte
Ausgänge
TasksPrüfung auf Tasks, die auf Starten zu Beginn des Betriebs
Speicherbereiche der Operanden
Datentypen der Operanden
Zugriffsprüfung auf schreibgeschützte Worte
Bereichsüberprüfung der Operanden, einschließlich des
Folgenden.
• Konstanten (#, &, +, –)
• Steuercodes
• Überprüfen der Bereichsgrenzen bei Multi-Wort-Operanden
• Überprüfen der Größenverhältnisse bei Multi-Wort-Operanden
• Überschneidungen der Operandenbereiche
• Multi-Wort-Zuordnungen
• Operanden doppelter Länge
• Überprüfen der Bereichsgrenzen bei Offsets
Anzahl der Steps
Gesamtkapazität
Anzahl der Tasks
•IL–ILC
• JMP–JME, CJP/CJPN-JME
• SBS–SBN–RET, MCRO–SBN–RET
• STEP–SNXT
• BPRG–BEND
•IF–IEND
• LOOP–LEND
Eingeschränkte Programmpositionen für BPRG–BEND
Eingeschränkte Programmpositionen für SBN–RET
Eingeschränkte Programmpositionen für STEP–SNXT
Eingeschränkte Programmpositionen für FOR–NEXT
Eingeschränkte Programmpositionen für Interrupt-Tasks
Erforderliche Programmpositionen für BPRG–BEND
Erforderliche Programmpositionen für FOR–NEXT
Unzulässige Schachtelungen
END(001)-Befehl
Anzahlübereinstimmung
Stapelüberläufe
Überprüfung auf doppelte Ausgänge
•Nach Bit
•Nach Wort
• Zeitgeber- und Zähler-Befehle
• Mehrere Worte (2 Worte und 4 Worte)
• Mehrere zugeordnete Worte
• Start/End-Bereiche
•FAL-Nummern
• Befehle mit mehreren Ausgabeoperanden
eingestellt sind
Task-Programmzuordnung
HinweisZwischen den Tasks werden die doppelten Ausgänge nicht überprüft, lediglich
innerhalb einzelner Tasks.
65
Überprüfen von ProgrammenAbschnitt 2-3
Multi-Wort-OperandenWährend der Programmüberprüfung werden Speicherbereichsgrenzen auf
Multi-Wort-Operanden überprüft, wie in der folgenden Tabelle angegeben.
CX-ProgrammerProgrammierkonsolen
CX-Programmer bietet die folgenden Funktionen für MultiWort-Operanden, die eine Speicherbereichsgrenze überschreiten.
• Das Programm kann nicht auf CPU-Baugruppe übertragen werden.
• Ebenso kann das Programm nicht von der CPU-Baugruppe gelesen werden.
• Kompilierungsfehler wurden für die Programmüberprüfung erzeugt.
• Während der Offline-Programmierung werden Warnungen auf dem Bildschirm angezeigt.
• Während der Online-Bearbeitung in der PROGRAModer MONITOR-Betriebsart werden Warnungen auf
dem Bildschirm angezeigt.
Überprüfung während
der Programmeingabe,
d. h. Operanden, die
eine Speicherbereichsgrenze überschreiten,
können nicht geschrieben werden.
2-3-3Prüfung der Programmausführung
Die Überprüfung von Operanden- und Befehlspositionen bei den Befehlen
wird während der Eingabe durch ein Programmiergerät (einschließlich Programmierkonsole) und ebenso während der Programmüberprüfung durch
Programmiergeräte (ausgenommen Programmierkonsole) durchgeführt. Dies
sind jedoch nicht die abschließenden Überprüfungen.
Die folgenden Überprüfungen werden während der Befehlsausführung durchgeführt.
FehlertypMerker, der im Fehlerfall auf EIN
1. Befehlsverarbeitungs-Fehler P_ER-Merker
Der Befehlsverarbeitungs-Fehlermer-
ker (A29508) wird ebenfalls auf EIN
gesetzt, wenn „Betrieb anhalten“ beim
Auftreten eines Fehlers festgelegt
wurde.
2. ZugriffsfehlerP_AER-Merker
Der Zugriffsfehlermerker (A29510) wird
auf EIN gesetzt, wenn die Betriebsunterbrechung beim Auftreten eines
Fehlers festgelegt wurde.
Ein Befehlsverarbeitungsfehler tritt auf, wenn während der Befehlsausführung
ungültige Daten zur Verfügung gestellt werden oder der Versuch unternommen
wurde, einen Befehl außerhalb einer Task auszuführen. In diesem Fall werden
die zu Beginn der Befehlsverarbeitung notwendigen Daten überprüft, als Ergebnis wurde der Befehl nicht ausgeführt und der P_ER-Merker auf EIN gesetzt.
Abhängig vom Befehl werden die P_EQ- und P_N-Merker beibehalten oder auf
AUS gesetzt.
Betrieb anhalten/fortsetzen
Eine Einstellung im SPS-Setup wird verwendet, um festzulegen, ob der Betrieb bei
Befehlsverarbeitungsfehlern fortgesetzt oder
angehalten wird. In der Standardeinstellung
wird der Betrieb fortgesetzt.
Ein Programmfehler tritt auf, und der Betrieb
wird nur dann unterbrochen, wenn eine
Betriebsunterbrechung festgelegt wurde.
Eine Einstellung im SPS-Setup wird verwendet, um festzulegen, ob der Betrieb bei
Befehlsverarbeitungsfehlern fortgesetzt oder
angehalten wird. In der Standardeinstellung
wird der Betrieb fortgesetzt.
Ein Programmfehler tritt auf, und der Betrieb
wird nur dann unterbrochen, wenn eine
Betriebsunterbrechung festgelegt wurde.
Schwerwiegender Programmfehler
Schwerwiegender Programmfehler
66
Überprüfen von ProgrammenAbschnitt 2-3
Der P_ER-Merker (Fehlermerker) wird auf AUS gesetzt, wenn der Befehl (ausgenommen Eingangsbefehle) normal ausgeführt wurde. Die Bedingungen zur
Steuerung des P_ER-Merkers unterscheiden sich bei den einzelnen Befehlen.
Ausführliche Informationen zu den einzelnen Befehlen finden Sie im CS/CJ-SerieSpeicherprogrammierbare Steuerungen Befehlsreferenzhandbuch (W340).
Falls es im SPS-Setup entsprechend spezifiziert ist, wird der Betrieb beim Auftreten eines Befehlsverarbeitungsfehlers angehalten (schwerwiegender Fehler)
und der Befehlsverarbeitungs-Fehlermerker (A29508) sowie der P_ER-Merker
auf EIN gesetzt.
Fehler wegen unzulässigem Zugriff
Fehler wegen unzulässigem Zugriff zeigen an, dass der Zugriff auf falsche
Bereiche auf eine der folgenden Arten erfolgte, während auf die den Befehlsoperanden spezifizierende Adresse zugegriffen wurde.
a) Es wurde ein Schreib- oder Lesevorgang für einen Parameterbereich
ausgeführt.
b) Es wurde ein Schreibvorgang in einen Speicherbereich ausgeführt,
der nicht vorhanden ist (siehe Hinweis).
c) Es wurde ein Schreibvorgang in einen EM-Bereich ausgeführt, der als
EM-Dateispeicher definiert ist.
d) Es wurde ein Schreibvorgang in einen schreibgeschützten Bereich
ausgeführt.
e) Der in einer indirekten DM/EM-Adresse im BCD-Modus spezifizierte
Wert war nicht in BCD (z. B. *D000001 enthält #A000).
Wenn ein Zugriffsfehler auftritt, wird die Befehlsverarbeitung fortgesetzt und
der P_ER-Merker (Fehlermerker) nicht auf EIN gesetzt, der Zugriffsfehlermerker (P_AER-Merker) wird jedoch auf EIN gesetzt.
HinweisEin Zugriffsfehler tritt in den folgenden Fällen auf:
• Wenn eine spezifizierte EM-Adresse 32767 der aktuellen Bank überschreitet (beispielsweise E32768).
• Die letzte Bank (beispielsweise C) wurde für eine indirekte EM-Adresse im Binär-Modus spezifiziert, und das spezifizierte Wort enthält
8000 bis FFFF Hex (beispielsweise @EC_00001 enthält #8000).
• Die aktuelle Bank (beispielsweise C) wurde für eine indirekte EM-Adresse im Binär-Modus spezifiziert, und die spezifizierten Worte enthalten
8000 bis FFFF Hex (beispielsweise @EC_00001 enthält #8000).
• Ein IR-Register, das die interne Speicheradresse eines Bits enthält,
wird als Wortadresse verwendet, oder ein IR-Register, das die interne
Speicheradresse eines eine Worts enthält, wird als Bit-Adresse verwendet.
Wenn die Befehlsfehler im SPS-Setup entsprechend definiert sind, wird der
Betrieb beim Auftreten eines Zugriffsfehlers angehalten (schwerwiegender
Fehler) und der Fehlermerker für unzulässigen Zugriff (A29510) sowie der
P_AER-Merker auf EIN gesetzt.
Sonstige Fehler
HinweisDer Zugriffsfehlermerker (P_AER-Merker) wird nach der Taskausführung
nicht zurückgesetzt. Wenn die Befehlsfehler auf ein Fortführen des Betriebs
eingestellt sind, kann dieser Merker bis kurz vor den Befehl END(001) überwacht werden, um festzustellen, ob ein Fehler wegen unzulässigem Zugriff im
Taskprogramm aufgetreten ist. (Der Status des letzten P_AER-Merkers nach
der vollständigen Ausführung des Anwenderprogramms wird überwacht,
wenn der P_AER-Merker auf einer Programmierkonsole angezeigt wird.)
Unzulässiger-Befehl-Fehler
Unzulässiger-Befehl-Fehler weisen auf Versuche hin, nicht auf dem System
definierte Befehlsdaten auszuführen. Der Fehler wird gewöhnlich nicht auftreten, wenn das Programm mit einer Programmier-Software für die CS/CJ-Serie
erstellt wurde (oder Programmierkonsole).
67
Überprüfen von ProgrammenAbschnitt 2-3
Sollte dieser Fehler dennoch auftreten wird er als Programmfehler behandelt,
der Betrieb wird angehalten (schwerwiegender Fehler) und der UnzulässigerBefehl-Fehlermerker (A29514) auf EIN gesetzt.
UM-Überlauf-Fehler (Anwenderprogrammspeicher)
UM-Überlauffehler deuten auf den Versuch hin, Befehlsdaten auszuführen,
die jenseits der höchsten Adresse im definierten Anwenderprogrammspeicher (UM) liegen. Der Fehler wird gewöhnlich nicht auftreten, wenn das Programm mit einer Programmier-Software für die CS/CJ-Serie erstellt wurde
(oder Programmierkonsole).
Tritt der Fehler dennoch auf, wird er als Programmfehler behandelt, der
Betrieb wird unterbrochen (schwerwiegender Fehler) und der Anwenderprogrammspeicher-Überlauffehlermerker (A29515) wird auf EIN gesetzt.
2-3-4Überprüfen schwerwiegender Fehler
Im Folgenden werden schwerwiegende Fehler aufgeführt, nach deren Auftreten
die CPU-Baugruppe angehalten wird. Wenn der Betrieb aufgrund eines Programmfehlers angehalten wird, wird die Nummer der Task, in der der Fehler
aufgetreten ist, in A294 und die Programmadresse in A298/A299 gespeichert
Die Ursache des Programmfehlers kann anhand dieser Informationen ermittelt
werden.
AdresseBeschreibungGespeicherte Daten
A294Der Typ und die Nummer der Task, bei der der
Betrieb unterbrochen wurde, werden hier
gespeichert, wenn der Betrieb aufgrund eines
Programm-fehlers angehalten wird.
Sind keine aktiven zyklischen Tasks in einem
Zyklus vorhanden, d. h., wenn keine auszuführenden zyklischen Tasks vorhanden sind, wird
FFFF Hex gespeichert.
A298/A299 in dieser Adresse wird die Programmadresse,
bei der der Betrieb angehalten wurde, in Binär
gespeichert, wenn ein Programmfehler die
Ursache für das Anhalten des Betriebs war.
Wenn kein END(001)-Befehl vorhanden ist
(A29511 ist auf EIN gesetzt), wird die Adresse
gespeichert, an der der END(001)-Befehl
erwartet wurde.
Tritt ein Taskausführungsfehler auf (A29512 ist
auf EIN gesetzt), wird FFFFFFFF Hex in A298
und A299 gespeichert.
Zyklische Task: 0000 bis 001F Hex (zyklische Tasks 0 bis 31)
Interrupt-Task: 8000 bis 80FF Hex (Interrupt-Tasks 0 bis 255)
A298: Der rechte Teil der Programmadresse
A299: Der linke Teil der Programmadresse
HinweisWird der Fehler- oder Zugriffsfehler-Merker auf EIN gesetzt, wird dies als Pro-
grammfehler behandelt und kann zum Anhalten der CPU verwendet werden.
Bestimmen Sie den Betrieb (Fortsetzen/Abbruch) beim Auftreten von Programmfehlern im SPS-Setup.
68
Überprüfen von ProgrammenAbschnitt 2-3
ProgrammfehlerBeschreibungEntsprechende Merker
Kein END-BefehlIm Programm ist kein END-Befehl
Fehler während der TaskausführungIm Zyklus ist keine ausführungsbereite
Befehlsverarbeitungs-Fehler
(P_ER-Merker auf EIN gesetzt) und im
SPS-Setup definierte Betriebsunterbrechung bei Befehlsfehlern
Unzulässiger-Zugriff-Fehler
(P_AER-Merker auf EIN gesetzt) und
im SPS-Setup festgelegte Betriebsunterbrechung bei Befehlsfehlern
BCD-Fehler-bei-indirekter-DM/EMAdressierung und im SPS-Setup festgelegte Betriebsunterbrechung bei
Befehlsfehlern
Flankenauswertungs-Adressenüberlauf-Fehler
UM-Überlauf-Fehler
(Anwenderprogrammspeicher)
Unzulässiger-Befehl-FehlerEs wurde versucht, einen nicht aus-
vorhanden.
Task vorhanden.
Einer Task wurde kein Programm
zugeordnet.
Die entsprechende Interrupt-Tasknum-
mer ist nicht vorhanden, obwohl die
Ausführungsbedingungen für die Interrupt-Task erfüllt sind.
Im Operanden wurden bei einer Versuch der Befehlsausführung falsche
Datenwerte bereitgestellt.
Es wurde ein Schreib- oder Lesevorgang
für einen Parameterbereich ausgeführt.
Es wurde ein Schreibvorgang in einen
Speicherbereich ausgeführt, der nicht
vorhanden ist (siehe Hinweis).
Es wurde ein Schreibvorgang in einen
EM-Bereich ausgeführt, der als
EM-Dateispeicher definiert ist.
Es wurde ein Schreibvorgang in einen
schreibgeschützten Bereich ausgeführt.
Der in einer indirekten DM/EM-Adresse
im BCD-Modus spezifizierte Wert war
nicht in BCD.
Der in einer indirekten DM/EM-Adresse
im BCD-Modus spezifizierte Wert ist
nicht in BCD.
Bei der Online-Bearbeitung wurden
mehr als 131.071 Befehle mit Flankenauswertung eingefügt oder gelöscht.
Es wurde versucht, Befehlsdaten auszuführen, die jenseits der höchsten
Adresse im Anwenderspeicher liegen,
die als Programmspeicherbereich definiert ist.
führbaren Befehl auszuführen.
Der END-Befehl-fehlt-Merker (A29511)
wird auf EIN gesetzt.
Der Task-Fehlermerker (29512) wird
auf EIN gesetzt.
Wenn für Befehlsfehler im SPS-Setup
eine Betriebsunterbrechung festgelegt
wurde, werden der P_ER -Merker und
der Befehlsverarbeitungs-Fehlermerker
(A29508) auf EIN gesetzt.
Wenn für Befehlsfehler im SPS-Setup
eine Betriebsunterbrechung festgelegt
wurde, werden der P_AER-Merker und
der Unzulässiger-Zugriff-Fehlermerker
(A29510) auf EIN gesetzt.
Wenn für Befehlsfehler im SPS-Setup
eine Betriebsunterbrechung festgelegt
wurde, werden der P_AER-Merker und
der BCD-Fehler-bei-indirekter-DM/EMAdressierung-Merker (A29509) auf EIN
gesetzt.
Der Flankenauswertungs-ÜberlaufFehlermerker (A29513) wird auf EIN
gesetzt.
Der AnwenderprogrammspeicherÜberlauffehlermerker (A29515) wird
auf EIN gesetzt.
Der Unzulässiger-Befehl-Merker
(A29514) wird auf EIN gesetzt.
69
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.