ST_TcPfw_TempMparamFromHmi_Itf

Such a structure contains the machine data of a zone.

Syntax

TYPE ST_TcPfw_TempMparamFromHmi_Itf :
(* last modification: 20.12.2010 *)
STRUCT
(*
==========================================
temperature zone machine parameters see cnv_TempMparamFromHmi_TcPfw for format definition
==========================================
*)
ZoneName: STRING(79);

AbsoluteHigh         : LREAL;
AbsoluteLow          : LREAL;
ExtruderComp         : LREAL;
KpCool               : LREAL;
KpHeat               : LREAL;
TdCool               : LREAL;
TdHeat               : LREAL;
TnCool               : LREAL;
TnHeat               : LREAL;
TvCool               : LREAL;
TvHeat               : LREAL;
Overshoot            : LREAL;
Tracking_Td          : LREAL;
Ramping_Rate         : LREAL; (* starting with cnv_TempMparamFromHmi_TcPfw=9 *)
Ramping_RateC        : LREAL; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
Ramping_Tolerance    : LREAL; (* starting with cnv_TempMparamFromHmi_TcPfw=9 *)
dTmax                : LREAL;
SensorOffset         : LREAL;
SettlingTime         : LREAL;
SupplyLoad_Cooler    : LREAL;
SupplyLoad_Heater    : LREAL;
SupplyLoad_Tolerance : LREAL;
TuneEnd              : LREAL;
TuneKp               : LREAL;
TuneTd               : LREAL;
TuneTn               : LREAL;
TuneTv               : LREAL;
TuneTrackingTd       : LREAL:=0.0; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
TuneY                : LREAL;

L_LoadIdle           : LREAL;
Weighting_C          : LREAL;

ErrorHeatingFactor   : LREAL:=0.0; (* starting with V1.0.8: will define default heating in error state *)
fPwmStdMaxOnTime     : LREAL;
fPwmMaxOnTime        : ARRAY[cnv_TempCtrl_SetpointFirst..cnv_TempCtrl_SetpointLast] OF LREAL:=0.0;
fPwmMinOnTime        : LREAL:=0.0;
fc_OnTime            : LREAL:=0.0; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
fc_OffTime           : LREAL:=0.0; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *
ActTempGain          : LREAL:=1.0; (* starting with cnv_TempMparamFromHmi_TcPfw=18 *)
ActTempOffset        : LREAL:=0.0; (* starting with cnv_TempMparamFromHmi_TcPfw=18 *)
SaveDelay            : DINT:=-1; (* starting with cnv_TempMparamFromHmi_TcPfw=17 *)

OutputSel_H          : E_TcPfw_TctrlOutSelect:=eTcPfwTcOut_PWM;
OutputSel_C          : E_TcPfw_TctrlOutSelect:=eTcPfwTcOut_PWM;
TempSensTerm         : E_TcPfw_TerminalType :=eTcPfwTermT_NoTerminal;
SensorType           :E_TcPfw_TempSensType:=eTcPfwTempSensT_NoSensor;
App_HmiType          : INT:=0;
TermChannel          : INT;
ExtruderId           : INT;
ModuleId             : INT;
ZoneId               : INT;
SupplyId             : INT;

CJ_CompMode          : INT; (* starting with cnv_TempMparamFromHmi_TcPfw=8 *)
CJ_CompZone          : INT; (* starting with cnv_TempMparamFromHmi_TcPfw=8 *)
TermIdx              : INT; (* used to connect the zone to a terminal *)
HeaterSwapIdx        : INT; (* used for I/O re-location of selected heater signal *)
CoolerSwapIdx        : INT; (* used for I/O re-location of selected cooler signal *)
nPwmFactorC          : INT;
eTuningMethod        : E_TcPfw_TctrlTuningMethod;

InUse                : BOOL;
UseCooling           : BOOL;
ExtruderCompEna      : BOOL;
TuneCooling          : BOOL;
Autotune             : BOOL;
StartReTune          : BOOL;
Enable               : BOOL;
Update               : BOOL;
EnaExtruderBlock     : BOOL;
NoFanWhileTrackDown  : BOOL;
Ena_TuneIdleLoad     : BOOL;
LooptestUpdate       : BOOL:=FALSE;
EnableErrorHeating   : BOOL:=FALSE; (* starting with V1.0.8: will enable default heating in error state *)
ReadBack             : BOOL:=FALSE;
TuneExtruderComp     : BOOL;
TuneHeaterLoad       : BOOL:=FALSE; (* tuning heater power monitoring *)
OpenloopHeating      : BOOL:=FALSE; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *

fc_Enable            : BOOL:=FALSE; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
HibernateI_Cool      : BOOL:=FALSE; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
HibernateI_Heat      : BOOL:=FALSE; (* starting with cnv_TempMparamFromHmi_TcPfw=15 *)
bSavingParams        : BOOL:=FALSE; (* *)
bLoadParams          : BOOL:=FALSE; (* *)
bHighPrecision       : BOOL;
bDisableTerminalCom  : BOOL;
bReset               : BOOL;
END_STRUCT
END_TYPE

Variable

Monitoring

Action

Control

Confi-guration

Auto-tuning

Description

AbsoluteHigh

x

 

 

 

 

An alarm is triggered if the actual zone temperature exceeds this limit value.

AbsoluteLow

x

 

 

 

 

An alarm is triggered if the actual zone temperature falls below this limit value.

ActTempGain

 

 

 

x

 

Scaling for the current temperature (for subsequent calibration)

ActTempOffset

 

 

 

x

 

Offset for the current temperature (for a subsequent calibration)

Autotune

 

x

 

 

 

A TRUE here activates the autotuning (automatic parameter determination) of the zone. In order to perform the autotuning successfully, the zone must be stable, InUse, Enable and be able to pass through at least a 40 °C temperature lift.

App_HmiType

 

 

 

 

 

Represents a numbering used only by the application, but stored by the library. Group formations (hot runner, cylinder1, cylinder2, etc.) are to be made possible via this.

bDisableTerminalCom

 

x

 

 

 

Disables terminal communication for this zone.

bHighPrecision

 

 

x

 

 

The control of the actual temperature is highly accurate. As a result, heating up may take more time.

bReset

 

x

 

 

 

Performs a reset in this zone.

bSavingParams

 

x

 

 

 

This indicates that machine data are being stored.

bLoadParams

 

x

 

 

 

A TRUE triggers the loading of machine parameters.

CJ_CompMode

 

 

 

 

 

Activates external compensation for thermocouples.

CJ_CompZone

 

 

 

 

 

Zone that measures the temperature to be compensated.

CoolerSwapIdx

 

 

 

x

 

Defines the output of fan switching signals via the redirectable I/O level.

dTmax

 

 

 

 

x

This is where the maximum rate of rise is recorded during autotuning. The determined value is displayed in °C/s.

Enable

 

 

 

x

 

A TRUE gives the enable for an active heating or cooling.

EnableErrorHeating

 

x

 

 

 

A TRUE here activates the output of heating power when the temperature sensor is disturbed. As soon as a sensor error occurs, the temperature necessary to maintain the current temperature is output. This function is only fully functional if the Ena_TuneIdleLoad was successfully executed before.

EnaExtruderBlock

 

 

 

 

 

reserved

Ena_TuneIdleLoad

 

x

 

 

 

A TRUE activates the parameter determination for the "IdleLoad". In this optimization, the system is not excited in any way.

ErrorHeatingFactor

 

 

 

x

 

This parameter influences the output of heating power when the temperature sensor is disturbed. It can take values between 0% and 100%, where 100% is the maximum power to keep the zone at the current temperature.

eTuningMethod

 

 

 

 

 

eTcPfwTcTun_StepResponse: Is the default autotune operation. The parameters are determined via a step response.

eTuningMethod

 

 

 

 

 

eTcPfwTcTun_OscillationTest: In preparation

ExtruderComp

 

 

 

 

 

This parameter compensates the friction and transport energy in a zone.

ExtruderCompEna

 

 

 

 

 

With a TRUE the extruder compensation is activated. When the path is switched on, the appropriate energy is automatically provided in the respective zone, minimizing controller settling. Speed changes in the range of 20% (related to the adjustment speed) are compensated without any problems, whereas in case of large speed changes (e.g. product change) a new compensation is necessary.

ExtruderId

 

 

 

 

 

reserved

fc_Enable

 

 

x

 

 

Activation of a fluid forced cooling. In order not to overheat the fluid under the heating tape, the fluid must circulate at certain intervals. Activation automatically causes the fault to be calculated in the controller.

fc_OnTime

 

 

x

 

 

For this time (in seconds ) the forced cooling is active (the cooling output is switched). If cooling is performed via the controller output during the "fc_OffTime" phase, this is taken into account.

fc_OffTime

 

 

x

 

 

For this time duration (in seconds ) the forced cooling is inactive, but can be activated at any time via the controller output.

fPwmMinOnTime

 

 

x

 

 

This factor can be used to define the minimum PWM switch-on time in relation to the cycle time. A value between 0.1 and 1.0 must be entered.

fPwmMaxOnTime

 

 

x

 

 

This factor can be used to define the maximum PWM switch-on time in relation to the cycle time. A value between 0.05 and 0.75*PwmMaxOn must be entered. A PWMMaxOn time is assigned to each setpoint in the array. If null the PWMMaxOn Time from the SupplyLine is used.

fPwmStdMaxOnTime

 

 

x

 

 

This factor can be used to define the maximum PWM switch-on time in relation to the cycle time. A value between 0.05 and 0.75*PwmMaxOn must be entered. This variable is active when controlling to the setpoint. If null the PWMMaxOn Time from the SupplyLine is used.

HeaterSwapIdx

 

 

 

x

 

Defines the output of heating switching signals via the redirectable I/O level.

HibernateI_Heat

 

 

 

 

 

A TRUE causes the I-part of the heating control to freeze.

HibernateI_Cool

 

 

 

 

 

A TRUE causes the I-part of the cooling controller to freeze.

InUse

 

 

 

x

 

The zone becomes an active part of the temperature control by TRUE. If FALSE, the zone will not be active even if Enable is set and the group is switched on. It will not signal a fault at any time or for any reason and will not be considered in load balancing or optional current measurement.

KpCool

 

 

x

 

 

The parameter for the P part of the temperature controller.

This parameter should be determined by autotuning.

KpHeat

 

 

x

 

 

The parameter for the P part of the temperature controller.

This parameter should be determined by autotuning.

L_LoadIdle

 

 

x

 

 

This parameter represents the base load. A properly set IdleLoad enables the set temperature to be reached without overshoot, as well as good system behavior during "error heating".

This parameter should be determined by an Idle-Tune.

LooptestUpdate

 

 

 

 

 

reserved.

ModuleId

 

 

 

x

 

This parameter assigns a temperature group to the zone. A number of functions (e.g. switching on, lowering, etc.) are organized and controlled within a temperature group.

NoFanWhileTrackDown

 

 

 

x

 

If this parameter is set, an existing cooling is not used to reach the set temperature when the preset is reduced.

nPwmFactorC

 

 

x

 

 

The PWM cycle time is multiplied by this factor to realize an appropriate cycle time during cooling.

OutputSel_C

 

 

 

x

 

These parameters determine which of the offered signals are selected for heating.

OutputSel_H

 

 

 

x

 

These parameters determine which of the offered signals are selected for (optional) cooling.

Overshoot

 

 

 

 

x

This is where the amount of overshoot is recorded during autotuning. This allows conclusions to be drawn about the dynamics of the system.

OpenloopHeating

 

x

 

 

 

If a zone has no sensor, the zone can be heated in a controlled manner via a fixed control value.

Ramping_Rate

 

 

x

 

x

Specifies the slope with which the controller setpoint should reach the entered setpoint during heating. The input is to be made in °C/min

This parameter should be determined by autotuning.

Ramping_RateC

 

 

x

 

x

Specifies the slope with which the controller setpoint should reach the entered setpoint during cooling. The input is to be made in °C/min

This parameter should be determined by autotuning.

Ramping_Tolerance

 

 

x

 

 

Specifies from when a setpoint change is to be increased via a ramp. It is recommended to approach setpoint changes of 5 to 10 °C via ramping. If the slope of the automatically determined ramp is too small, it can be changed via the Ramping_Rate parameter.

ReadBack

 

 

 

 

 

reserved.

SaveDelay

 

 

 

x

 

Time in ns. The value is counted down continuously. If the value reaches 0, saving is activated. -1 means idle state.

SensorOffset

 

 

 

 

 

An offset to be used when determining the actual temperature can be specified here. The specification has to be made in °C.

SensorType

 

 

 

x

 

These parameters determine which of the supported sensor types are used to record the actual temperature.

SettlingTime

x

 

x

 

x

This parameter is used in various places to take into account the time behavior of the zone.

StartReTune

 

 

 

 

x

If the controller does not regulate ideally during operation, there is the possibility of subsequent self-optimization. This can be done during production.

SupplyId

 

 

 

x

 

This parameter assigns the zone to a supply line. It will take some parameters for the PWM output from this group. A range of functions (e.g. load balancing, current measurement etc.) is organized and synchronized within a supply line. By default, there are 4 different supply groups, with 1 to 3 to be used for phases 1 to 3. Two or three-phase heating tapes can be entered in supply line 4.

SupplyLoad_Cooler

 

 

 

 

 

The cooling capacity of the zone in watts.

SupplyLoad_Heater

x

 

x

 

x

The heating power of the zone in watts. In the case of (optional) monitoring of the heating power, this is the setpoint.

SupplyLoad_Tolerance

x

 

 

 

 

If the deviation of the measured heating power exceeds this tolerance, an alarm is triggered. The tolerance is specified in % between 0.0 and 100.0. If 0.0 is set here or the FB_TempCtrlMainBody_TcPfw() function block is called with Looptest_Enable:=FALSE, no monitoring takes place.

TdCool

 

 

x

 

 

The parameter for the D-part (damping time) of the temperature controller.

This parameter should be determined by autotuning.

TdHeat

 

 

x

 

 

The parameter for the D-part (damping time) of the temperature controller.

This parameter should be determined by autotuning.

TempSensTerm

 

 

 

x

 

These parameters determine which of the supported I/O terminals is used to acquire the actual temperature.

TermChannel

 

 

 

x

 

For multi-channel terminals, the channel within the terminal must be specified here.

TermIdx

 

 

 

x

 

Defines the redirection of the actual temperature acquisition.

TnCool

 

 

x

 

 

The parameter for the I-part of the temperature controller.

This parameter should be determined by autotuning.

TnHeat

 

 

x

 

 

The parameter for the I-part of the temperature controller.

This parameter should be determined by autotuning.

Tracking_Td

 

 

x

 

 

This parameter is used for controlling of large set value changes.

This parameter should be determined by autotuning.

TuneCooling

 

 

 

 

x

Only if a TRUE is entered here, the cooling behavior is evaluated during autotuning.

TuneEnd

 

 

 

 

x

This percentage of the temperature setpoint is used in autotuning.

TuneExtruderComp

 

 

x

 

 

A TRUE here calculates the ExtruderComp.

TuneHeaterLoad

 

 

x

 

 

A TRUE here calculates the heating power of this zone.

Tune_IdleLoad

 

 

x

 

 

A TRUE here calculates the IdleLoad of this zone during autotuning.

TuneKp

 

 

 

 

x

The P part of the autotuning mechanism. This factor is used to weight the P part in autotuning.

TuneTd

 

 

 

 

x

The D-part of the autotuning mechanism. This factor is used to weight the delay of the D-part in autotuning.

TuneTn

 

 

 

 

x

The I-part of the autotuning mechanism. This factor is used to weight the I-part in autotuning.

TuneTv

 

 

 

 

x

The D-part of the autotuning mechanism. This factor is used to weight the D-part in autotuning.

TuneTrackingTd

 

 

 

 

x

The D-part of the autotuning mechanism. This factor is used to set the D-part of the Beckhoff algorithm. A value between zero and one means aggressive control; a value greater than one means cautious control. Default is zero.

TuneY

 

 

 

 

x

This percentage of the available heating power is used in autotuning.

TvCool

 

 

x

 

 

The parameter for the D-part (rate time) of the temperature controller.

This parameter should be determined by autotuning.

TvHeat

 

 

x

 

 

The parameter for the D-part (rate time) of the temperature controller.

This parameter should be determined by autotuning.

Update

 

x

 

 

 

With a TRUE the user interface signals here that it has changed values in this structure. The framework will check these values, adjust them if necessary and adopt them.

UseCooling

 

 

 

x

 

Only if a TRUE is entered here, the controller outputs to the cooling.

Weighting_C

 

 

x

 

x

Weighting factor, which is used to determine the cooling parameters for the control.

ZoneId

 

 

 

x

 

This parameter numbers the zones inside the machine. The numerical value may only be used in a single zone.

ZoneName

 

 

 

x

 

The textual name of the zone. Example: 'Ext_1' or 'Head_5'.