Variables

Variable kann an den unterschiedlichen Stellen auftreten: Interfaces, Boxes und Channels.
Name ist der gemappte SPS oder NC Variablenname.
IoName ist der Name, der im TwinCAT System Manager angezeigt wird.Für den Fall, dass sichVariable unterInterface undBox befindet, muss der IoName mit dem im TwinCAT System Manager identisch sein.
IoDataType ist der IEC Datentyp der SPS Variablen.
IsInput wird zur Definition der Variablen in TwinCAT PLC Control verwendet.
Zum Beispiel in einem SPS Projekt:
myInVar AT%I* : BOOL;
myOutVar AT%Q* : BOOL;
zeigt %I den Eingang und %Q den Ausgang an.
Instance wird zum Mapping der Gerätevariablen NC oder SPS verwendet.
Für NC sollte der Name wie der Modulname lauten, wie z.B. "Axis1" oder "Axis1^Axis_Enc"
Für SPS wird zukünftig das Mappen von non-globalen SPS Variablen, z.B. eine Variable eines Funktionsblock möglich sein (in Bearbeitung).
Destination definiert in welches Gerät und Task die Variable gemappt werden soll.
Beispiel für eine Variable:
<Variable>
<Name><![CDATA[nInData1[0]]]></Name>
<IsInput>true</IsInput>
<IoName>Counter</IoName>
<IoDataType>UINT16</IoDataType>
<Instance>
<Name><![CDATA[Achse 1 (Oberdruck)^Achse 1 (Oberdruck)_Enc]]></Name>
<DataType>UINT16ARR2</DataType>
<IsInput>true</IsInput>
</Instance>
<Destination>
<Device>NC</Device>
<Task>NC-Task 1 SAF</Task>
</Destination>
</Variable>
Beispiel für die entsprechende gemappte Variable im Gerät:
<Variable>
<Name><![CDATA[Achse 1 (Oberdruck)_Enc_In^nInData1^nInData1[0]]]></Name>
<DataType>UINT16</DataType>
<IsInput>true</IsInput>
<LinkedWith>
<Name><![CDATA[Counter]]></Name>
<DataType>UINT16</DataType>
<IsInput>true</IsInput>
<Device>IO</Device>
</LinkedWith>
</Variable>
Info:
Die Variable unter Channel unterscheidet sich teilweise von der unter Interface oder Box. Unter einem Channel ist generell nur eine ( z.B. im Falle einer digitalen Busklemme), oder nur eine interessante Variable.
In diesem Fall kann IoName frei benannt werden und IsInput kann ausgelassen werden.
Wenn jedoch eine andere als die Default I/O-Variable unter Channel mit einer SPS Variablen gemappt werden soll, muss IoName mit dem Namen im TwinCAT System Manager identisch sein.
Neu: Ab der Version 2.0.1.9, sind folgende Ergänzungen für die EhterCAT Slaves hinzugekommen:
IoGroup ist für die EtherCAT Slave Variablen verbindlich. Es ist der Name der Variablengruppe, wie im folgenden Bild zu sehen ist. IoGroup kann das Attribut Index besitzen. Dieses sollte mit dem Index des PDO Eintrags identisch sein.
IoName kann nun optional die Attribute Index, SubIndex and IndexInArray besitzen. Diese sollten identisch sein mit den Attributen der Einträge der Prozessdaten der EtherCAT slaves. IndexInArray ist notwendig, wenn die Variable ein Arrayelement ist.