ADSREADINDEX

Der Funktionsbaustein registriert ADSREAD-Anfragen (ADSREAD-Requests) an eine SPS-Task als Indications und erlaubt deren Bearbeitung. Das Anstehen einer Indication wird über eine steigende Flanke am VALID-Ausgang gemeldet. Über eine positive Flanke am CLEAR-Eingang wird die Indication als bearbeitet gemeldet. Eine negative Flanke am CLEAR-Eingang gibt den Funktionsbaustein für die Verarbeitung weiterer Indications frei. Nachdem eine Indication bearbeitet wurde, muss eine Antwort über den ADSREADRES-Funktionsbaustein an das Quellgerät gesendet werden. Die Parameter PORT und NETID können dafür benutzt werden, um das Quellgerät zu adressieren. Der INVOKEID-Parameter dient dem Quellgerät der Zuordnung der Antworten zu den Anfragen und wird ebenfalls als Parameter an das Quellgerät zurückgesendet.
Gegenüber dem Funktionsbaustein ADSREADIND besteht über einen zusätzlichen Eingang die Möglichkeit einen gewünschten Bereich der IndexGroup anzugeben.
So werden die Anfragen gefiltert und nur auf gewünschte Bereiche reagiert.
Es stehen hierbei 16 frei wählbare Bereiche zu Verfügung:
0x80000000 – 0x80FFFFFF
0x81000000 – 0x81FFFFFF
…
0x8E000000 – 0x8EFFFFFF
0x8F000000 – 0x8FFFFFFF
Um an einem Indication-Funktionsbaustein einen solchen Bereich der Index-Group anzugeben, wird am Eingang MINIDXGRP der Index-Group-Wert angegeben, mit dem der gewählte Bereich beginnt.
Beispiel: Mit MINIDXGRP:=16#85000000 werden alle Anfragen gefiltert und Anfragen mit einer Index-Group im Bereich 0x85000000 – 0x85FFFFFF als Indication registriert.
Eingänge
VAR_INPUT
CLEAR : BOOL;
MINIDXGRP : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
CLEAR | BOOL | Mit einer steigenden Flanke an diesem Eingang wird eine Indication als bearbeitet gemeldet und die Ausgänge des ADSREADIND-Funktionsbausteins zurückgesetzt. Eine fallende Flanke gibt den Funktionsbaustein für die Verarbeitung weiterer Indications frei. |
MINIDXGRP | UDINT | Dieser Eingang ermöglicht die Filterung der Anfragen nach IndexGroup-Bereichen. Angabe des IndexGroup-Wertes, mit dem der gewählte Bereich beginnt. |
Ausgänge
VAR_OUTPUT
VALID : BOOL;
NETID : T_AmsNetId;
PORT : T_AmsPort;
INVOKEID : UDINT;
IDXGRP : UDINT;
IDXOFFS : UDINT;
LENGTH : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
VALID | BOOL | Der Ausgang ist gesetzt, wenn von dem Funktionsbaustein eine Indication registriert wurde und bleibt gesetzt, bis diese über eine positive Flanke an dem CLEAR-Eingang als bearbeitet gemeldet wurde. |
NETID | T_AmsNetId | String, der die AMS-Netzwerkkennung des Quellgerätes enthält, von dem der ADS-Befehl gesendet wurde (Typ: T_AmsNetId). |
PORT | T_AmsPort | Portnummer des ADS-Quellgerätes, von dem der ADS-Befehl gesendet wurde (Typ: T_AmsPort). |
INVOKEID | UDINT | Handle des Befehls, der gesendet wurde. Die InvokeID wird von dem Quellgerät festgelegt und dient der Identifizierung der Befehle. |
IDXGRP | UDINT | Index-Gruppennummer (32 Bit, unsigned) des angeforderten ADS-Dienstes. |
IDXOFFS | UDINT | Index-Offsetnummer (32 Bit, unsigned) des angeforderten ADS-Dienstes. |
LENGTH | UDINT | Anzahl der zu lesenden Daten in Bytes. |
Entwicklungsumgebung | Zielplattform | Einzubindende SPS- Bibliotheken |
---|---|---|
TwinCAT v3.1.4024.35 | PC oder CX (x86, x64, ARM) | Tc2_System (System) >= 3.4.26.0 |