ADSREADINDEX

ADSREADINDEX 1:

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.

ADSREADINDEX 2: 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.

ADSREADINDEX 3: 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