Download 6 - GE Intelligent Platforms: Support Home

Transcript
6
COMMREQ #13: Datagramm aus Warteschlange nehmen
Der GBC bearbeitet die meisten ankommenden Datagramme automatisch ohne zusätzliche Programmierung. Unter bestimmten Umständen müssen jedoch ankommende Daten mit dem Befehl ”Datagramm aus Warteschlange nehmen” zur CPU übertragen werden. Dieser Befehl wird
in folgenden Fällen verwendet:
H
H
Antworten, die nach dem Aussenden eines Antworttyp-Datagramms mit dem Befehl ”Datagramm senden” empfangen werden (wird stattdessen ”Sende Datagramm mit Antwort”
benutzt, wird die Antwort automatisch bearbeitet).
Freilaufende Datagramme, die vom GBC nicht erkannt werden (Funktionscode nicht 20).
Befehlsblock für Befehl ”Datagramm aus Warteschlange
nehmen”
Adresse
Parameter
Inhalt
Adresse
Befehlslänge
7
Adresse +1:
kein Warten
0
Adresse +2:
Statusblock-Speichertyp
70 (%I), 72 (%Q), 8 (%R), 10 (%AI), oder 12
(%AQ)
Adresse +3:
Statusblock-Offset
Anfangsadresse für COMMREQ-Status.
Adresse +4:
Pausenüberwachungswert
0
Adresse +5:
Max. Kommunikationszeit
0
Adresse +6:
Befehlsnummer
13
Adresse +7:
Max. Datenspeicherlänge
Bit- oder Wortwert (hängt vom achstehend eingestellten Speichertyp ab) eingeben. Dieser Eintrag
sagt der CPU, wieviel Speicher für die Ablage
aller Daten benötigt wird.
Sind die vom Gerät zurückgegebenen Daten länger als dieser Wert, schreibt der GBC so viel Daten wie möglich zur SPS CPU und gibt an die
COMMREQ-Statusadresse einen Datenfehler zurück.
Adresse +8:
Speichertyp
Die Zahl für den Datenbereich eingeben, in dem
der GBC die Daten in der CPU ablegt: 70 (%I),
72 (%Q), 8 (%R), 10 (%AI), oder 12 (%AQ)
Adressen 9–12
nicht benutzt
nicht benutzt
Anzahl der benötigten Befehle ”Datagramm aus Warteschlange
nehmen”
Für jedes ankommende Datagramm wird ein Befehl ”Datagramm aus Warteschlange nehmen”
benötigt. Werden in einem CPU-Zyklus mehrere Datagramme erwartet, müssen im Programm
mehrere Befehle ”Datagramm aus Warteschlange nehmen” enthalten sein, um eine wirkungsvolle Übertragung zur CPU sicherzustellen.
Die benötigte Anzahl der Befehle ”Datagramm aus Warteschlange nehmen” hängt davon ab, ob
die Datagramme mit normaler oder hoher Priorität gesendet wurden und von den relativen Längen von CPU-Zykluszeit und Bus-Zykluszeit (siehe unten).
GFK-1034B-GE
Kapitel 6 Kommunikationsanforderungen
6-15