Output DescriptionΒΆ

../_images/ffc9edf65bb3337f0a3313904ddca4bd

DONE (done)

Data type: BOOL

Output DONE indicates the processing state of the block.

If DONE = FALSE, the Function Block is not processed due to EN = FALSE and all outputs are set to 0.

ERR (error)

Data type: BOOL

Output ERR indicates whether an error occurred during block processing. This output always has to be considered together with output DONE. If DONE = TRUE and ERR = TRUE, an error occurred. In this case, the error number can be read at output ERNO.

ERNO (error number)

Data type: WORD

Output ERNO provides an error identifier, if an invalid value was applied to an input or if an error occurred during request processing. ERNO always has to be considered together with the outputs DONE and ERR. The value output at ERNO is only valid, if DONE is TRUE and ERR is TRUE.

The encoding of the error messages output at ERNO is explained in a separate table of Error Messages (see, error messages): Error Messages of the Function Block Libraries

BUSY (busy)

Data type: BOOL

Output BUSY = TRUE is indicating that the Function Block is enabled.

In case of an error of this block, the BUSY output will be set to FALSE while ERR = TRUE. In case of a read / write error of a Function Block that is attached to the DRIVE_DATA variable, the BUSY will stay TRUE and ERR = TRUE.

Calling of ACS_COM_PB in ST

AcsComPb (EN \ \ \ \ \ \ \ \ \ := xAcsComPb_EN,
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ PPO_TYPE \ \ \ := iAcsComPb_Ppo_Type,
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ DRIVE_TYPE\ \ := iAcsComPb_Drive_Type,
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ADR_IN\ \ \ \ \ \ := ADR(pAcsComPb_AdrIn),
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ADR_OUT \ \ \ \ := ADR(pAcsComPb_AdrOut),
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ DRIVE_DATA \ := AcsComPb_DriveData);

xAcsComPb_Done\ := AcsComPb.DONE;
xAcsComPb_Err\ \ := AcsComPb.ERR;
wAcsComPb_Erno\ := AcsComPb.ERNO;
xAcsComPb_Busy := AcsComPb.Busy