BACnetClientSubscribeCOVPropertyMultiple (FB)

FUNCTION_BLOCK PUBLIC FINAL BACnetClientSubscribeCOVPropertyMultiple EXTENDS BACnetClientBase

Common Behaviour Model conform (ETrigA) FB to execute a Subscribe-COV-Property-Multiple-Request in the BACnet-Network. If execution completed successfully and xDone is TRUE, the COV-Property-Multiple-Subscription was successful. In any other case eStatus and errorResult may hold additional information of what failed.

InOut:

Scope

Name

Type

Initial

Comment

Inherited from

Input

xExecute

BOOL

Rising edge: Starts defined operation
FALSE: Resets the defined operation after ready condition was reached

ETrigATo

xAbort

BOOL

TRUE: Aborts the operation

ETrigATo

udiTimeOut

UDINT

Max. operating time for executing [µs], 0: No operating time limit

ETrigATo

Output

xDone

BOOL

TRUE: Ready condition reached

ETrigATo

xBusy

BOOL

TRUE: Operation is running

ETrigATo

xError

BOOL

TRUE: Error condition reached

ETrigATo

xAborted

BOOL

TRUE: Abort condition reached

ETrigATo

Input

dwTargetDeviceNumber

DWORD

The device number of the targeted device in the BACnet- Network.

BACnetClientBase

pTargetDeviceAddress

POINTER TO CmpBACnet.IEC_BACNET_ADDRESS

0

Optional: The device address of the targeted device in the BACnet-Network. If an adress is given the given device number is ignored.

BACnetClientBase

pAPDUParams

POINTER TO CmpBACnet.IEC_BACNET_APDU_PROPERTIES

0

A pointer to the structure which contains a set of APDU properties to control the timing and size of transmitted frames for this request. It temporarily overwrites the global APDU settings made in the source device from which this request is sent and which parameters would control this request if this pointer is NULL.

BACnetClientBase

Output

eStatus

CmpBACnet.IEC_BACNET_STATUS

CmpBACnet.IEC_BACNET_STATUS.BACNET_STATUS_OK

If an error occured, the error state.

BACnetClientBase

errorResult

CmpBACnet.IEC_BACNET_ERROR

STRUCT(tag := CmpBACnet.IEC_BACNET_FAILURE_TYPE._FAILURE_MAX_SIZE)

If an error occured (this means eStatus <> BACNET_STATUS_OK), whereas the sent BACnet-Request was answered with an specific error information, the latter is contained in this structure.

BACnetClientBase

iState

DINT

0

The State in which the FB is during execution:
  • 0: No execution, resetted state

  • 1: Searching for the Target-Device and a valid address for it

  • 2: Sending the BACnet-Request into the network

  • 3: Waiting for the answer (if there is one) to the BACnet-Request made in 2

  • 4: Finishing the call, setting of the output variables

BACnetClientBase

Input

xSubscribe

BOOL

TRUE

Describes whether the COV subsciption shall be made/renewed or deleted.

xIssueConfirmedNotifications

BOOL

This parameter shall transport whether the COV-server device shall issue ConfirmedCOVNotifications (TRUE) or UnconfirmedCOVNotifications (FALSE) when changes occur. This parameter, if present, shall indicate that a subscription or re-subscription is to occur and that the lifetime shall be refreshed to its initial state.

lifetime

CmpBACnet.IEC_BACNET_UINT

This parameter, of type Unsigned, contains the desired lifetime of the subscription in seconds. A value of zero means there is no (end of) lifetime. A non-zero value shall indicate the number of seconds that may elapse before the subscription shall be automatically cancelled.

fMaxNotificationDelayPresent

CmpBACnet.IEC_BACNET_BOOLEAN

If set to True the maxNotificationDelay parameter is valid.

maxNotificationDelay

CmpBACnet.IEC_BACNET_UINT

This parameter, of type Unsigned, shall convey the maximum notification delay for the subscription in seconds. This parameter indicates the maximum number of seconds that may elapse before a notification is issued if changes of properties occurred for which the ‘Timestamped’ parameter is TRUE and which were queued up for notification. The value of this parameter shall be less than the value of the Lifetime parameter.

numberOfCovpMulSubsSpec

CmpBACnet.IEC_BACNET_ELEMENT_COUNT

This parameter contains the number subscribe specifications to send.

listOfCovpMulSubsSpec

POINTER TO CmpBACnet.IEC_BACNET_COVP_MUL_SUBS_SPEC

The array with subscribe specifications to send.

pValueSrc

POINTER TO CmpBACnet.IEC_BACNET_AUDIT_VALUE_SOURCE

0

Optional: A pointer to a data structure which contains the value source information for generating an logged and/or reported audit notification for this initiated request. If generating an logged and/or reported audit notification for this request is not intended, pValueSrc can be set to 0.

Output

subsError

CmpBACnet.IEC_BACNET_SUBSCRIBE_MUL_ERROR_INFO

In case of any interrupted service execution error the error result will be stored in the structure this pointer references. This parameter may be NULL if the application isn’t interested in detailed error information.

Properties:

Methods:

Structure: