Input Description¶
EN
Data_Type | Default_Value | Range | Unit |
---|---|---|---|
BOOL | FALSE | TRUE/FALSE | - |
The input EN has to be driven in edge triggered mode.
The execution of the Function Block is started with a positive edge on the input EN.
In the first call it evaluates its inputs and creates a local copy of them. Afterwards it starts its internal algorithm. It may take several PLC task cycles until it is executed.
Once the execution is completed DONE and its other outputs are set. To start the Function Block again a new positive edge on the input EN has to be applied.
SLOT
Data_Type | Default_Value | Range | Unit |
---|---|---|---|
BYTE | 0 | 0 … 4 (6) | - |
At input SLOT, the Communication Module slot is specified which should be used by the Function Block.
The internal Communication Module always has the index 0. All external Communication Modules are serially numbered from right to left, starting with 1.
LEN (length)
Data_Type | Default_Value | Range | Unit |
---|---|---|---|
UINT | 0 | 1 … 65535 | byte |
LEN tells the function block how large the buffer in SLV_STATE is. For each slave 4 bytes are needed.
SLV_STATE (slave \ state)
Data_Type | Default_Value | Range | Unit |
---|---|---|---|
POINTER_TO_ARRAY_OF_BYTE | 0 | - | - |
The address of the buffer is required in order to write the state of each slave <no title>. The size of the buffer is directly related to the number of slaves. A byte for each slave is needed. In case the buffer is too small, an error will be returned. If the value of LEN does not reflect correctly the size of the buffer, this might be overrun with unpredictable consequences.
Example
A master is configured with 20 slaves.
LEN and SLV_STATE should be configured as follows.
ECATBusDiag_LEN := 20;
ECATBusDiag_SLV_STATE: ARRAY [1..20] of BYTE;