[W_TI] Write time

Function block W_TI converts a value with unit Time to a Double Integer and updates properties 'Present value' and 'Reliability' for a calculated value object with the present value of type Double Integer.

W_TI converts a value with unit Time to a Double Integer and updates properties 'Present value' and 'Reliability' for a calculated value object with the present value of type Double Integer.

W_TI converts the value for time to a unit that is sent in property 'Units'.

W_TI can process the following units:

If the property 'Units' is set to a value that is different from the listed units, the present value is ignored and the output disturbance is set to 1. The present value is assumed to be milliseconds if the property 'Unit' is set no unit.

info

The units month and years are not supported since the present value 1 already exceeds the maximum value of the S7 data type Time.

Functioning

Compatible data points:

  • Integer calculated value [ICalcVal]

Required properties:

  • Present value
  • Tracking value
  • Status flag
  • Reliability
  • Unit
Pins

Input

Description

Data type

Default value
Value range

EnWrit

Enable write

If [EnWrit] = 1, writing values from inputs [Val] and [SetValid] to the BACnet object is enabled.
If [EnWrit] changes from 0 to 1, writing occurs.

Boolean

1

Val

Value

Virtual value, calculated and assigned by the control program to update the present value.
[Val] is used to update the property 'Tracking value'; followed by the BACnet object internally updating the present value with the written tracking value.

[Val] is written if [EnWrit] = 1 and one of the items applies:

  • [Val] changes.
  • [SetValid] changes.
  • [RptWrit] is 1.

Time

0 ms

SetValid

Set valid value indication

A value calculated and assigned by the control program that indicates whether [Val] is reliable.

[SetValid] is mapped to an error code that updates reliability if [EnWrit] = 1 and one of the following items applies:

  • [SetValid] changes.
  • [Val] changes.
  • [RptWrit] is 1.

Boolean

1

0 - Reliability error code 7 (unreliable - other).
1 - Reliability error code 0 (no fault).

RptWrit

Repeat write

Forces writing of [Val], and [SetValid] to the data point. Write is repeated with each program cycle until [RptWrit] = 1.
The control program typically calculates and sets [RptWrit].

Note:
[RptWrit] cannot be permanently forced to 1. This may influence performance and communications traffic.

Boolean

0

0 - No action.
1 - [Val] and [Sta] are written to the data point with each programming cycle.

BaObjRef

BA-Object reference
Link between function block and BACnet object.

Structure

---

BaObjRef
> DeviceID

Device identifier
[DeviceID] includes object type and object instance in one ID.
Identifies the device object: local or remote. A local device object can also be identified by value 16#3FFFFF.

Double Word

16#3FFFFF

BaObjRef
> ObjectID

Object identifier
[ObjectID] includes object type and object instance in one ID.
Identifies the object on a device.

Double Word

16#3FFFFF

BaObjRef
> ItemID

Item identifier
[ItemID] represents an index in a view node object that references the BACnet object.
[ObjectID] and [ItemID] together define an indirect reference to the BACnet object.
Value -1 indicates a direct interface.

Integer

-1

 

Output

Description

Data type

Default value
Value range

PrVal

Present value

Value of property 'Present value' for the referenced BACnet object. [PrVal] supplies the last valid value in the event of a fault.

Time

0 ms

Dstb

Disturbed

[Dstb] indicates whether the referenced BACnet object is in fault.

[Dstb] = 1 if:
BACnet object = Error during access
OR
'Status flag' = Fault

Otherwise [Dstb] = 0

Boolean

0

Rlb

Reliability
Indicates the value of property 'Reliability', if the property is available.

Integer

0: No fault detected

ErrCode

Error code indication

Integer

0: No error

= 0 - No error
> 0 - XFB error codes

Troubleshooting

The write function is not available if the BACnet object is on another device.