FB_ReadAdsSymByName

Der Funktionsbaustein FB_ReadAdsSymByName ermöglicht das Lesen eines beliebigen Wertes von einer anderen Steuerung mithilfe des Symbolnamens.
Bei einer positiven Flanke am Eingang bRead liest der Baustein den Wert der Variablen sVarName von dem ausgewählten ADS-Gerätes (z. B. SPS). Das ADS-Gerät wird durch die AMS-NetId (sNetId) und die AMS-Portnummer (nPort) angegeben. Der Wert wird in die Variable geschrieben, auf die nDestAddr zeigt.
Mithilfe des Eingangs eComMode kann die interne Arbeitsweise des Bausteins verändert werden:
- eComMode := eAdsComModeSecureCom: Nach jedem Lesevorgang wird der Handle der SPS-Variablen wieder freigegeben. Dieser Modus sollte verwendet werden, wenn sehr langsam Werte ausgetauscht werden.
- eComMode := eAdsComModeFastCom: Solange sich die Eingänge sVarName, sNetID und nPort nicht verändern, wird der Handle der SPS-Variablen nicht nach jedem Lesevorgang freigegeben. Dieser Modus sollte verwendet werden, wenn sehr häufig Werte ausgetauscht werden.
Eingänge
VAR_INPUT
bRead : BOOL;
sNetId : T_AmsNetId;
nPort : T_AmsPort := 851;
sVarName : STRING(255);
nDestAddr : PVOID;
nLen : UDINT;
tTimeout : TIME := DEFAULT_ADS_TIMEOUT;
eComMode : E_AdsComMode := eAdsComModeSecureCom;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bRead | BOOL | Der Baustein liest den Inhalt der Variablen sVarName des ausgewählten ADS-Gerätes und schreibt diesen in die Variable, auf die der Zeiger nDestAddr zeigt. |
sNetId | T_AmsNetID | AMS-NetId des ADS-Gerätes, von dem der Wert gelesen werden soll. |
nPort | T_AmsNetID | AMS-Portnummer des ADS-Gerätes, von dem der Wert gelesen werden soll. |
sVarName | STRING(255) | Symbolname der zu lesenden Variablen auf dem ausgewählten ADS-Gerät (max. 255 Zeichen). |
nDestAddr | PVOID | Adresse der Variablen, in der der gelesene Wert geschrieben wird. |
nLen | UDINT | Länge der zu lesenden Variable in Byte. |
tTimeout | TIME | Zeit bis zum Abbruch der Abarbeitung. |
eComMode | Enum, mit dem bestimmt wird, ob der Handle der SPS-Variablen nach jedem Lesen wieder freigegeben wird. |
Ausgänge
VAR_OUTPUT
bBusy : BOOL;
bError : BOOL;
nErrorId : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
bBusy | BOOL | Die Übertragung ist aktiv. |
bError | BOOL | Bei der Übertragung ist ein Fehler aufgetreten. |
nErrorId | UDINT | ADS-Fehlernummer, falls ein Fehler aufgetreten ist. |
Voraussetzungen
Entwicklungsumgebung | erforderliche TC3 SPS-Bibliothek |
---|---|
TwinCAT v3.1.0 | Tc2_DataExchange |