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