PnioCntrlWrite (FB)

FUNCTION_BLOCK PnioCntrlWrite EXTENDS AbbETrig

Writes specific data to a Pnio-device asynchronious through channel mailbox. No automatical sequenced packets, only single packets.

InOut:

Scope

Name

Type

Initial

Comment

Inherited from

Input

Execute

BOOL

FALSE

A rising edge starts the 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.

AbbETrig

Output

Done

BOOL

FALSE

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

AbbETrig

Busy

BOOL

FALSE

Operation is running (while outputs Done and Error are FALSE)

AbbETrig

Error

BOOL

FALSE

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.

AbbETrig

Input

Slot

BYTE

0

Slot number of assigned coupler

DevName

STRING(PNIOCNTRL_GLOBALS.PNIO_DEVNAME_LEN)

‘’

Name of the device (Station Name, e.g. ‘ci501-pn-03’)

DevApi

DWORD

0

API

DevSlot

WORD

0

Slot

DevSubSlot

WORD

0

Sub slot

DevIdx

WORD

0

Index

Data

POINTER TO BYTE

0

Pointer to data to write (via ADR operator)

DataLen

WORD

0

Size of/number of bytes in DATA

Output

ErrorID

ERROR_ID

ERROR_ID.NO_ERROR

Error code describing error condition

AddErrNo

UDINT

16#0

additional internal error code

Status

DWORD

0

PNIO state code

AddVal1

WORD

0

Additional value 1

AddVal2

WORD

0

Additional value 2