MC_AxAdsPtrArrCommServer_BkPlcMc
Der Funktionsbaustein stattet die Applikation mit den Fähigkeiten eines ADS-Servers aus. Er ruft bei Bedarf Bausteine vom Typ MC_AxAdsReadDecoder_BkPlcMc und MC_AxAdsWriteDecoder_BkPlcMc auf. Eine Auflistung der nutzbaren ADS-Codes finden Sie in der Knowledge Base.
Für die meisten Applikationen ist die Nutzung eines MC_AxAdsCommServer_BkPlcMc ausreichend und vorzuziehen. |
Eingänge
VAR_INPUT
nFirstAxisIndex: INT;
nLastAxisIndex: INT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
nFirstAxisIndex | INT | Hier ist die Dimensionierung des Axis_Ref_BkPlcMc Arrays anzugeben. Eine nicht zutreffende Angabe an dieser Stelle schließt einen Teil der Achsen von der Kommunikation aus oder führt zum Absturz der PLC-Applikation durch Auslösung von schweren Laufzeitfehlern (Page Fault Exception). |
nLastAxisIndex | INT |
Ein-/Ausgänge
VAR_INOUT
pAxItfArr: POINTER TO DWORD;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
pAxItfArr | POINTER | Hier ist die Adresse einer Variablen vom Typ ARRAY [ncnstFirstAxId..ncnstLastAxId] OF POINTER TO Axis_Ref_BkPlcMc zu übergeben. Eine nicht zutreffende Angabe an dieser Stelle führt unausweichlich zum Absturz der PLC-Applikation durch Auslösung von schweren Laufzeitfehlern (Page Fault Exception). |
Ausgänge
VAR_OUTPUT
PlcMcManOffline: BOOL;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
PlcMcManOffline | BOOL | Dieser Parameter entspricht dem gleichnamigen Parameter des Bausteins MC_AxAdsCommServer_BkPlcMc. |
Verhalten des Bausteins
Durch zyklischen Aufruf dieses Bausteins in der PLC-Applikation erhält diese den Charakter eines ADS-Servers und beantwortet ADS-Read- und ADS-Write-Zugriffe wie jeder andere ADS Server. Dies schließt die Dekodierung einer IdxGroup/IdxOffset-Adressierung ein. Dazu werden bei Bedarf Bausteine vom Typ MC_AxAdsReadDecoder_BkPlcMc und MC_AxAdsWriteDecoder_BkPlcMc aufgerufen.
Ist die PLC-Applikation bereits ein ADS-Server darf dieser Baustein nicht verwendet werden. |
In diesem Fall sind die Bausteine vom Typ MC_AxAdsReadDecoder_BkPlcMc und MC_AxAdsWriteDecoder_BkPlcMc aus dem vorhandenen ADS Server-Baustein der Applikation aufzurufen.
Es steht ein Programm-Beispiel #16 zur Verfügung.