Y_SB_DataRecordRead
This function block is able to read data records from modules configured on the SliceBus Node.
Parameters
| * | Parameter | Data Type | Description | Default |
|---|---|---|---|---|
|
VAR_IN_OUT
|
||||
| E | Record | ANY | Provides the data read. The Length output indicates the number of bytes read. | |
| VAR_INPUT | ||||
| B | Execute | BOOL | Upon the rising edge of the Execute input, all other inputs are read and the function block becomes operational. If an input needs to be modified, the value will have to be changed and the Execute input will have to be re-triggered. | FALSE |
| E | SlotID | WORD | Slot ID of the Slicebus node module. The Slicebus nodeMaster has Slot ID 0. | WORD#0 |
| E | Index | WORD | Index of the data record that is to be read. See Notes below for details on which index should be used to read diagnostic and parameter data. | WORD#0 |
| E | MaxLength | UDINT | Maximum number of bytes which are to be read from the object. The variable connected to the VAR_IN_OUT Record must have at least this length, otherwise Error is set and an ErrorID is provided. If a value of 0 is passed, then the full size of the connected VAR_IN_OUT Record data type is used by default. | UDINT#0 |
| VAR_OUTPUT | ||||
| B | Done | BOOL | The Done output is set to TRUE when the commanded action has completed successfully. If another function block takes control before the action is completed, the Done output will never become TRUE. This output is reset when Execute becomes FALSE. | |
| B | Busy | BOOL | For function blocks with Execute input, the Busy output is set to TRUE upon the rising edge of the Execute, and set to FALSE when Done, CommandAborted or Error outputs becomes TRUE. In the case of a function block with an Enable input, Busy indicates that the function block is operating, but may not be ready to provide valid outputs. | |
| B | Error | BOOL | The Error output is set to TRUE if an error has occurred during the operation of the function block. The output is cleared when the Execute or Enable input becomes FALSE. | |
| E | ErrorID | UINT | The ErrorID output provides the identifier of the error when there is an active error in the function block execution. The output is cleared when the Execute or Enable input becomes FALSE. | |
| E | Length | UDINT | Length of the read data in number of bytes | |
Notes
- All Input and In-Output values are read in the FB call with the rising edge of Execute. If a command is ongoing a change of the Execute input has no influence.
- Use the index numbers shown in the following table to read diagnostic and parameter data.
| Reading Index | Description |
|---|---|
| 16#0000 | Read DS 00h of the diagnostic data. |
| 16#0001 | Read DS 01h of the diagnostic data. |
| 16#007D | Read the whole parameter data. |
| 16#007E | Read DS 00h of the parameter data. |
| 16#007F | Read DS 01h of the parameter data. |
| 16#0080 … 16#0090 | Read DS 80h ... DS 90h of the parameter data. |
Error Description
See the
Function Block ErrorID List
Example
The following example shows how to read the Diagnostic interrupt information of the Parameter data from the 050-1BA10 counter module. According to the product manual this information can be found in DS 00h of the Parameter data.
Using the information from the Notes section, this parameter needs to be read using Index 16#007E. In the example below, the value of DS 00h is 16#40, indicating that the Diagnostic interrupt is enabled.