FB_BA_RolBldActr

FB_BA_RolBldActr 1:

The function block FB_BA_RolBldActr is used to position a roller blind via two outputs: Up and Down. The roller blind can be driven to any desired position with the positioning telegram stSunBld. In addition, the positioning telegram stSunBld also contains manual commands with which the roller blind can be moved individually to certain positions. These manual commands are controlled by the function block FB_BA_SunBldSwi.

The current height position is not read by an additional encoder, but is determined internally by the runtime of the roller blind.
The two different runtime parameters nTiUp(runtime roller blind up [ms]) and nTiDwn (runtime roller blind down [ms]) take account of the different travel characteristics.

The function block fundamentally controls the roller blind via the information from the positioning telegram stSunBld. If automatic mode is active (bManMod=FALSE), the current position is always approached, and changes are immediately taken into account. In manual mode (bManMod=TRUE) the commands bManUp and bManDwn control the roller blind.

Referencing

Safe referencing refers to a situation when the roller blind is upwards-controlled for longer than its complete travel-up time. The position is then always "0". Since a roller blind positioning without encoder is always error-prone by nature, it is important to reference automatically as often as possible: every time the position "0" is to be approached, the roller blind first moves up normally with continuous position calculation. Once the calculated position value 0% is reached, the output bUp continues to be held for the complete travel-up time + 5 s.

The referencing process can be interrupted by a manual "down" command or by repositioning.

After a plant restart, the function block executes a reference run.

FB_BA_RolBldActr 2: Inputs

VAR_INPUT
  bEn          : BOOL;
  stSunBld     : ST_BA_Sunblind;
  nTiUp        : UDINT;
  nTiDwn       : UDINT;
END_VAR

Name

Type

Description

bEn

BOOL

Enable input for the function block. As long as this input is TRUE, the actuator function block accepts and executes commands as described above. A FALSE signal on this input resets the control outputs bUp and bDwn and the function block remains in a state of rest.

stSunBld

ST_BA_SunBld

Positioning telegram

nTiUp

UDINT

Complete time for driving up [ms]

nTiDwn

UDINT

Complete time for driving down [ms]

FB_BA_RolBldActr 3: Outputs

VAR_OUTPUT
  bUp            : BOOL;
  bDwn           : BOOL;
  fActlPos       : REAL;
  bRef           : BOOL;
  nRefTi         : UDINT;
  bBusy          : BOOL;
  bErr           : BOOL;
  sErrDescr      : T_MAXSTRING
END_VAR

Name

Type

Description

bUp

BOOL

Roller blind control output up

bDwn

BOOL

Roller blind control output down

fActlPos

READ

Current position in percent.

bRef

BOOL

The roller blind is in referencing mode, i.e. the output bUp is set for the complete travel-up time + 5s. Only a manual "down" command can move the roller blind in the opposite direction and terminate this mode.

nRefTi

UDINT

Referencing countdown display [s]

bBusy

BOOL

A positioning or a referencing procedure is in progress.

bErr

BOOL

In case of a fault, e.g. if warning stages are active, this output is set to TRUE.

sErrDescr

T_MAXSTRING

Contains the error description.

Error description

01: Error: The total travel-up or travel-down time (nTiUp / nTiDwn) is zero.

Requirements

Development environment

Required PLC library

TwinCAT from v3.1.4024.22

Tc3_BA2 from v5.2.5.0