CM579PnioImplicitRead (FB)
FUNCTION_BLOCK CM579PnioImplicitRead EXTENDS CM579PnioBase
Function block that implements acyclic read service. It has to be considered that the execution of the function block could take a few seconds when devices are not existing or not reachable.
- InOut:
Scope
Name
Type
Initial
Comment
Inherited from
Input
ExecuteBOOLFALSE
A rising edge starts a single operation, the output Busy goes to TRUE. In the first cycle all other inputs are read and stored, afterwards they are ignored. A falling edge does not stop the operation. After Done = TRUE or Error = TRUE and Execute = FALSE all outputs will be reset. For executing another operation the Execute input needs to be retriggered by another rising edge!
AbbETrig3
Output
DoneBOOLFALSE
Operation is completed without error (while outputs Busy and Error are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE
AbbETrig3
BusyBOOLFALSE
Operation is running (while outputs Done and Error are FALSE)
AbbETrig3
ErrorBOOLFALSE
Operation is stopped with error (while outputs Busy and Done are FALSE). This output is TRUE for at least one cycle or until Execute is set to FALSE. The output ErrorID gives more details about the error.
AbbETrig3
Input
DeviceAC500_IoDrvCM579Profinet.IDeviceCM579Profinetinstance of CM579-PNIO device
CM579PnioBase
Output
ErrorIDerror code that describes occurred error
CM579PnioBase
AddErrorIDUDINTadditional description of error, meaning depends on value of output ErrorID
CM579PnioBase
Input
DevIPAddrUDINTIP address of device
DevVendorIDUINTVendor ID of device
DevDeviceIDUINTDevice ID of device
DevInstanceIDUINTInstance ID of device
DevApiUDINTAPI of submodule from which the data object is to be read
DevSlotUINTslot of submodule from which the data object is to be read
DevSubSlotUINTsubslot of submodule from which the data object is to be read
DevIdxUINTindex of data object to read
DataPOINTER TO BYTE
pointer to buffer where the read data will be copied to
DataMaxUINTsize of buffer provided at input Data
Output
StatusCodeUDINTPROFINET status code of read service according to PROFINET specification
AddVal1UINTadditional value 1 returned from PROFINET IO Device
AddVal2UINTadditional value 2 returned from PROFINET IO Device
DataLenUDINTnumber of bytes that was read