You are on page 1of 40

Rockwell Automation Application Content

Machine Builder Libraries

Reference Manual
Sealer Temperature Control

raM_Tec_SealerTemp v3.x

January, 2021
Machine Builder Libraries

Important User Information

Solid-state equipment has operational characteristics differing from those of electromechanical equipment. Safety
Guidelines for the Application, Installation and Maintenance of Solid State Controls (publication SGI-1.1 available
from your local Rockwell Automation sales office or online at http://literature.rockwellautomation.com) describes
some important differences between solid-state equipment and hard-wired electromechanical devices. Because of
this difference, and because of the wide variety of uses for solid-state equipment, all persons responsible for
applying this equipment must satisfy themselves that each intended application of this equipment is acceptable.

In no event will Rockwell Automation, Inc. be responsible or liable for indirect or consequential damages resulting
from the use or application of this equipment.

The examples and diagrams in this manual are included solely for illustrative purposes. Because of the many
variables and requirements associated with any particular installation, Rockwell Automation, Inc. cannot assume
responsibility or liability for actual use based on the examples and diagrams.

No patent liability is assumed by Rockwell Automation, Inc. with respect to use of information, circuits, equipment,
or software described in this manual.

Reproduction of the contents of this manual, in whole or in part, without written permission of Rockwell Automation,
Inc., is prohibited.

Throughout this manual, when necessary, we use notes to make you aware of safety considerations.

Identifies information about practices or circumstances that can cause an explosion in a


hazardous environment, which may lead to personal injury or death, property damage, or
economic loss.

Identifies information that is critical for successful application and understanding of the
product.

Identifies information about practices or circumstances or death, property damage, or


economic loss. Attentions avoid a hazard, and recognize the consequence.

Labels may be on or inside the equipment, that dangerous voltage may be present.

Labels may be on or inside the equipment, for example, a drive or motor, to alert people
that surfaces may reach dangerous temperatures.

Allen-Bradley, Rockwell Automation, and TechConnect are trademarks of Rockwell Automation, Inc.Trademarks not belongin g to Rockwell Automation are property of their respective companies.

2
Machine Builder Libraries

Table of Contents
Table of Contents .................................................................................................................................................................. 3

1 Overview ...................................................................................................................................................................... 4
1.1 Prerequisites ......................................................................................................................................................... 4
1.2 Functional Description ........................................................................................................................................... 5
1.3 Execution ............................................................................................................................................................ 13

2 Instruction .................................................................................................................................................................. 15
2.1 Footprint ............................................................................................................................................................. 15
2.2 Input Data ........................................................................................................................................................... 15
2.3 Output Data ........................................................................................................................................................ 15
2.4 Error Codes ......................................................................................................................................................... 16

3 Application Code Manager.......................................................................................................................................... 17


3.1 Definition Object: raM_Tec_SealerTemp .............................................................................................................. 17
3.2 Implementation Object: raM_LD_SealerTemp...................................................................................................... 17
3.3 Attachments ....................................................................................................................................................... 17
3.4 ACM Instantiation Example for IO ........................................................................................................................ 18

4 Application ................................................................................................................................................................. 23
4.1 Instruction Configuration Example ....................................................................................................................... 23
4.2 Input Feedforward............................................................................................................................................... 24

5 Procedure to obtain the System Response Curve ........................................................................................................ 25


5.1 Overview ............................................................................................................................................................. 25
5.2 Description .......................................................................................................................................................... 25

6 User Interface ............................................................................................................................................................. 29


6.1 Image Files .......................................................................................................................................................... 29
6.2 Global Object ...................................................................................................................................................... 29
6.3 Faceplate ............................................................................................................................................................ 30

7 Appendix .................................................................................................................................................................... 36
General............................................................................................................................................................................ 36
Common Information for All Instructions .......................................................................................................................... 36
Conventions and Related Terms ....................................................................................................................................... 36

3
Machine Builder Libraries

1 Overview
raM_Tec_SealerTemp:

• This is instruction provides Temperature Control (PID) for a sealer mechanism controlled by a
pulse output that applies voltage to a heater mechanism. There must also be a thermal
feedback device such as a thermocouple, thermistor or a RTD installed in the sealer to provide
temperature close loop control.

Use when:

• Need to control temperature in a sealer mechanism (typical in VFFS or HFFS machines)


• Thermal System behaves as a pseudo-integral system
• Controlled Output is acting in a solid state or a relay to apply voltage in a heater resistance

Do NOT use when:

• Thermal System does not behave as a pseudo-integral system

1.1 Prerequisites

• Studio 5000 - Logix Designer


o v30.0 →

• FactoryTalk View Studio ME/SE


o v9.0 →

• Studio 5000 - Application Code Manager


o v2.0 →

• Studio 5000 – Architect


o v2.0 →

4
Machine Builder Libraries

1.2 Functional Description

The instruction will provide the capability of controlling the temperature of a sealing bar in rotary knife or
a sealing disc in a HFFS machine or a sealing jaw in a VFFS machine. The object will control a digital
output which will turn on and turn off a resistance at the necessary rate to bring the temperature as fast
as possible to the desire stable setpoint.

There will be only a resistance heating mechanism (heater). There is no cooling mechanism other than
turning off the heater. There is one digital output to control each heater device. Often a sealer has more
than one heater. Each sealer section will have its specific setpoint. Each section makes up a single
temperature control loop and is composed of a heater (resistance), a heated device (sealer), a digital
output to turn on/off the resistance and a feedback device to measure the temperature.

Usually there is just one command that will initiate the heating sequence for all sections.

1.2.1 Temperature Loop – Self-Regulating vs. Pseudo-Integrating

A thermal system is characterized by a first order decay, with the temperature of the heat source being
the terminal value. Liquid-liquid heat exchanger processes tend to be self-regulating because the
temperature of the heat source is close to the process temperature. However, electrically heated
systems tend to exhibit behavior similar to integrating processes (like the level control of a tank),
because the heater temperature is typically far greater than the process temperature. As such,
electrically heated processes are characterized as “pseudo” integrating, because although the behavior
is “integrator-like”, they are not true integrating processes. This impacts the tuning procedure and
resulting gain calculations, as the method used for a self-regulating process may not be successful for
an integrating or pseudo-integrating process.

Figure 1 shows a typical step response for a self-regulating process, like flow or liquid-liquid heat
transfer. The PV (white line) reaches a terminal value following a step change in the CV. Comparing this
to Figure 2, note that the “pseudo-integrating” process does not reach a terminal value following a step
change in CV, but instead shows a steady increase as long as the CV is at its higher value. Only when
CV returns to its original value does the PV stabilize and begin to fall off. Note also that the rate of
decrease is far less than the rate of rise, a common characteristic of electrically heated thermal systems.
The rate of decrease is directly influenced by how well the system is insulated from its surroundings;
well-insulated systems will exhibit very slow rate of decrease.

One additional difference worth noting is the disparity in process delays. The effect of changing CV is
seen almost immediately in Figure 1, while Figure 2 shows substantial delay. This is sometimes, albeit
incorrectly, described as “thermal inertia.” A more accurate description of the phenomena is the transit
time of thermal energy between its source (heater) and measurement device. Thermal systems do not
exhibit characteristics of inertia. Once the heat is turned off, the energy in the process begins to decline
immediately. It is only this transit delay that makes it seem like the temperature is still increasing. It is
this delay that makes this type of temperature system difficult to control.

5
Machine Builder Libraries

Figure 1 - Self-regulating Process

Figure 2 - "Pseudo-Integrating" Process

1.2.2 Control Solution

The instruction uses a combination of a PID Loop Control along with a Pulse Modulation Instruction to
control the on/off frequency of the digital output.

PID loop update is configurable – typical configuration could be between 0.5 to 2 seconds.

Scan Rate for the task where temperature block is located– typical configuration is within 20ms – 100ms.

6
Machine Builder Libraries

1.2.3 Simulation

A Simulation Mode is available where PV come from simulation instead of coming from thermocouple.

The system model is based on an integrating process, with adjustments to simulate heat loss such that
the simulated loop becomes pseudo-integrating.

System Model Parameters as seen in Figure 3:

▪ Dead Time (seconds)


▪ System Time Constant (seconds)
▪ System Heat-On Slope (°Fahrenheit/sec or °Celsius/sec)
▪ System Heat-Off Slope (°Fahrenheit /sec or °Celsius/sec)
▪ PV Rise after Heater Off (°F or °C)
▪ Execution Interval for PID Algorithm (seconds)

Figure 3 – Model Parameters Diagram

7
Machine Builder Libraries

In order to identify the system model parameters, follow these steps:

▪ Place machine in manual/maintenance mode


▪ Ensure Sealer Axis is in movement at normal production speed
▪ Ensure Sealer TC instruction enabled and Inp_HeatEnab true
▪ PID in Manual Mode
▪ Put CV% at 0.0
▪ Wait for Heater to reach Ambient Temperature
▪ Give a Large CV% Step (minimum 50%, ideally 100% if system allows)
▪ Wait for a clear measurement of Heat-On Slope
▪ Wait for PV to reach a temperature value close to real process value
▪ Put CV% at 0.0
▪ Wait for a clear measurement of Heat-Off Slope
▪ Measures all parameters according to the graphic
▪ Enter simulation parameters values in the Faceplate

1.2.4 PID Modes

HMI or Program can select the PID Mode. Selection will be available only if Heater is Enabled.

Manual (Man):

▪ CV output set by Operator on the faceplate


▪ PID algorithm is not calculated
▪ The last calculated CV used as initial value

Automatic (Auto):

▪ The PID algorithm uses the difference between SP and PV to calculate a CV

1.2.5 Setpoint Selection

The setpoint could come from Operator (HMI) or from the program.
The setpoint used by the PID instruction will be the last one entered.
The HMI Faceplate setpoint will display the current setpoint either from HMI or from program.

1.2.6 Sequence of Operation

A “Heater On” Enable Command (from HMI Faceplate or from program) will start the sequence.

The sequence will have a pre-heat time where the heater stays on.
The pre-heat time varies depending on setpoint value and system model parameters.

If Heater On command is disabled, the PID and Output of the instruction will be OFF.

1.2.7 Alarms

HMI Faceplate has fields to set Alarm threshold value.


There is only one level of deviation alarm (high or low).
• High Deviation - PV exceeds SP by High threshold
• Low Deviation - PV falls below SP by Low threshold

8
Machine Builder Libraries

There is also an Alarm of Maximum Temperature which Alarms high and turns off the output /
resistance regardless of operational mode.

1.2.8 Relay and Pulse Output Configuration

Configuration for relay or pulse operation is available in Faceplate

Relay Type (Configuration Tab – Page 2)


• Solid State Relay
• Mechanical Relay

Pulse Parameters (Settings Tab – Page 3)


• Minimum Pulse Duration
• Pulse Cycle Time

Limits of Pulse Parameters:


• Minimum Pulse Duration low limit is the task scan rate.
• Pulse Cycle minimum limit is 100 times the task rate (minimum control resolution of 1%).

Mechanical Relay Behavior Description:


• This mode provides a single pulse within the interval specified by Pulse Cycle.
• The On-pulse time is proportional to Sts_CV
• Pulse Cycle (seconds) is the ON/OFF cycle time
• Minimum Pulse parameter limits pulse width to a minimum value
• Minimum Pulse parameters cancels the pulse if the value in Sts_CV is less than minimum

9
Machine Builder Libraries

Solid State Relay Behavior Description:

• This mode provides a duty-cycle-driven pulse train.


• Minimum Pulse specifies pulse width.
• Pulse Cycle Time is not used.
• Sts_CV defines the ON/OFF cycle duration.

1.2.9 Pre-Heat Cycle Configuration

Configuration for Pre-Heat is available in the Faceplate

Pre-Heat Parameters (Tab Settings – Page 1)

• Pre-Heat Activate Deviation (degrees – negative value)


Pre-Heat will deactivate when feedback is within this amount of setpoint. The parameter
should be between three and four times the Pre-Heat PV Rise.

• Pre-Heat CV Release (%)


CV Release parameter represents the initial CV to be used when pre-heat is deactivated. The
value input should be the one to which CV stabilizes during normal PID control with machine
running.

• Pre-Heat PV Rise (degrees – positive value)


PV Rise parameter represents the value the feedback device reaches when pre-heat is
deactivated. Since values are different depending on the final temperature reached during
measurement of system response, it is important that temperature reached during
measurement of system response measurement was a normal process temperature.

10
Machine Builder Libraries

Pre-Heat Behavior Description:


• Pre-Heat activates only while instruction is in Program Mode
• Pre-Heat activates when deviation between PV and SP is larger than Activate Deviation value.
• Pre-Heat sets the CV at 100%
• Pre-Heat sets the CV to “CV Release value” when deviation reaches “PV Rise value”
• Pre-Heat will keep CV at “CV Release value” for 2.5x the duration of “System Time Constant“ (see
simulation for definition of this parameter).
• Pre-Heat will deliver control to PID after this period

11
Machine Builder Libraries

General Status Bit Behavior:

Note: Status bit not shown on the output side of the instruction are not used and will not exist in
the instruction backing tag.

Status Bit Description / Behavior


• Enable Out indicated the status of the output line of the instruction.
• If false (logically LO) any instruction on the ladder rung between the instruction and the neutral rail
*.Sts_EO will not be energized.
• If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.
• The rung-in condition of the ladder rung is true and the instruction is being evaluated.
*.Sts_EN • If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.
• If the instruction experiences an internal error, the *. Sts_ER bit will be set. Error codes / Extended
codes can be found by monitoring the backing tag *.Sts_ERR / *.Sts_EXERR members respectively.
*.Sts_ER
• If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.
• Used when the execution of the instruction completes within a single scan.
*.Sts_DN • If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.
• Used to identify the instruction is in the process
*.Sts_IP • If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.
• Used when the execution of the instruction requires more than a single scan to complete, and
indicates the ‘process’ carried out by the instruction has successfully completed.
*.Sts_PC
• If the instruction is removed from ladder scan either in a conditional subroutine, MCR zone, JMP/LBL
etc., the bit will remain in its last evaluated state.

12
Machine Builder Libraries

1.3 Execution

1.3.1 Overview

• Level

Rung in condition transition response:


• False → True
o *.Sts_EO = 1
o *.Sts_EN = 1
▪ IF: Error
• THEN: *.Sts_ER =1

• Prescan
o *.Sts_EO = 0
o *.Sts_EN = 0

13
Machine Builder Libraries

1.3.2 Execution Table

Rung-In = TRUE

PreHeat
*.Sts_ER = 1
CV Release (%) No
DeadTime *.Sts_ERR = 1022
*.Sts_ER = 1 >= 0% and <= 100%
>= 0.01 and <= 9999.99 No
*.Sts_ERR = 1010
seconds

Yes
Yes

PreHeat
PVRise > 0 *.Sts_ER = 1
No
System Time Constant and *.Sts_ERR = 1023
*.Sts_ER = 1
>= 0.01 and <= 9999.99 No PVRise < 10000
*.Sts_ERR = 1011
seconds

Yes
Yes

Alarm Temperature
*.Sts_ER = 1
Heat-On Slope High Temp (degrees) No
*.Sts_ER = 1 *.Sts_ERR = 1024
>= 0.01 and <= 9999.99 No >= 0.01 and <= 9999.99
*.Sts_ERR = 1012
degrees/second

Yes
Yes

Heat-off Slope Alarm Temperature


*.Sts_ER = 1 *.Sts_ER = 1
>= -9999.99 and <= -0.01 No High Deviation (degrees) No
*.Sts_ERR = 1013 *.Sts_ERR = 1025
degrees/second >= 0.01 and <= 9999.99

Yes
Yes

CV Step (%) *.Sts_ER = 1


No Alarm Temperature
>= 50.0 and <= 100.0 *.Sts_ERR = 1014 *.Sts_ER = 1
Low Deviation (degrees) No
*.Sts_ERR = 1026
>= -9999.99 and <= -0.01

Yes
Yes

Responsiveness Multiplier *.Sts_ER = 1


No Alarm Temperature
>= 1.00 and <= 2.00 *.Sts_ERR = 1015 *.Sts_ER = 1
Dead Band (degrees) No
*.Sts_ERR = 1027
>= 0.01 and <= 9999.99

Yes
Yes

PID Update Internal


*.Sts_ER = 1
Seconds No
*.Sts_ERR = 1016 Alarm Temperature
>= 0.0 and <= 9999.99 *.Sts_ER = 1
Maximum PV (degrees) No
*.Sts_ERR = 1028
>= 0.01 and <= 9999.99

Yes

Yes

PID Gains
*.Sts_ER = 1
Proportional Gain No
*.Sts_ERR = 1017
>= 0.01 and <= 9999.99
PID Configuration
*.Sts_ER = 1
Manual CV (%) No
*.Sts_ERR = 1029
>= 0.00 and<= 100.00

Yes

Yes

PID Gains
*.Sts_ER = 1
Integral Gain No
*.Sts_ERR = 1018
>= 0.01 and <= 9999.99 Output Pulse Configuration
*.Sts_ER = 1
Minimum Pulse (seconds) No
*.Sts_ERR = 1030
>= 0.01 and <= 9999.99

Yes
Yes

PID Gains
*.Sts_ER = 1 Output Pulse Configuration
Derivative Gain No *.Sts_ER = 1
*.Sts_ERR = 1019 Cycle Time (seconds) No
>= 0.01 and <= 9999.99 *.Sts_ERR = 1031
>= 0.01 and <= 9999.99

Yes
Yes

Simulation is Enabled ? No Instruction in Process


PID Loop Mode PowerUP
*.Sts_ER = 1
Min Value = 0 (Last Mode) No
*.Sts_ERR = 1020
Max Value = 2 (Auto)

Yes

Yes

Deadtime (seconds) *.Sts_ER = 1


No
<= 500.5*task rate *.Sts_ERR = 1032

PreHeat
*.Sts_ER = 1
Activate Deviation (degrees) No
*.Sts_ERR = 1021
>= -9999.99 and <= -0.01
Yes

Yes
Instruction in Process

14
Machine Builder Libraries

2 Instruction

2.1 Footprint

Characteristic Description Value Unit


Definition Estimated memory required to store the object definition, including all dependents. 44 kB
Instance Estimated memory required per object instantiated. This includes the object 3.2 kB
instance and all datatypes required to verify the project. In the case of user
configurable arrays, an application relevant array length will be used for
estimation.
Execution L7x Estimated execution time / scan footprint evaluated in 1756-L7x PAC 230 us

2.2 Input Data

Input Function / Description Data Type


Ref_RecipeSP External Set Point (typically from Recipe) – In/Out reference REAL
Inp_PV Process Variable Temperature Input (Celsius or Fahrenheit) BOOL
Inp_PVBad Process Variable Failure Input (1=Failed) BOOL
Inp_FF Feed Forward CV Bias Input REAL
Inp_HeatEnab Set to enable temperature controller output BOOL
Set_CVManual Desired CV % in Manual Mode REAL
Cmd_ResetAckAll Reset and Acknowledge all Active Alarms BOOL
PCmd_Auto Program Request for Auto Mode (Cleared Every Scan) BOOL
PCmd_Manual Program Request for Manual Mode (Cleared Every Scan) BOOL

2.3 Output Data

Output Function / Description Data Type


raM_Tec_SealerTemp Sealer Temperature Control Object BOOL
Sts_EN Heat control is Enabled BOOL
Sts_EO Instruction has enabled the rung output. BOOL
Sts_ER Instruction has experienced an internal error BOOL
Sts_ERR Instruction Error Code - See Instruction Help for Code Definition DINT
Sts_EXERR Instruction Extended Error Code - See Instruction Help for Code Definition DINT
Sts_PV Current temperature value (Process Variable) REAL
Sts_SP Current Operating Set Point REAL
Sts_CV Output Percent – Current duty cycle of Out_HtrCR (% on) REAL
Sts_E PID Loop Process Error (SP - PV) REAL
Out_HtrCR Output to Heater Relay BOOL
Sts_HeaterEnabled Heat control is Enabled (no faults and no alarms) BOOL
Sts_Auto Set to (1) when AOI is in Auto mode, (0) when in Manual Mode BOOL
Sts_Preheat Preheat Function is Active BOOL
Sts_AlmFail Inp_PVBad is set, indicating unreliable temperature feedback value (PV) BOOL
Sts_AlmHi High Alarm – Temp above Temp Max (Overtemperature) BOOL
Sts_AlmHiDev High Alarm – Temp above DevMax BOOL

15
Machine Builder Libraries

Output Function / Description Data Type


Sts_AlmLowDev Low Alarm – Temp below DevMax BOOL

2.4 Error Codes

Sts_ERR Description
0 No errors present
1010 System Model parameter “DeadTime” out of valid range - min= 0.01 and max = 9999.99 (seconds)
1011 System Model parameter “System time constant” out of valid range - min= 0.01 and max = 9999.99 (seconds)
1012 System Model parameter “Heat-On Slope” out of valid range - min= 0.01 and max = 9999.99 (deg/sec)
1013 System Model parameter “Heat-Off Slope” out of valid range – min=-9999.99 and max = -0.01 (deg/sec)
1014 System Model parameter “CV Step” out of valid range – min=50.0 and max = 100.0 (%)
1015 System Model parameter “Responsiveness Multiplier” out of valid range – min=1.0 and max =2.0
1016 PID parameter “Execution Interval” out of valid range – min=0.01 and max = 9999.99 (seconds)
1017 PID parameter “PGain” out of valid range – min=0.0 and max = 9999.99 (seconds)
1018 PID parameter “IGain” out of valid range – min=0.0 and max = 9999.99 (seconds)
1019 PID parameter “DGain” out of valid range – min=0.0 and max = 9999.99 (seconds)
1020 PID parameter “PID Loop Mode PowerUp” out of valid range – min=0 (Last Mode) and max = 2 (Auto)
1021 Pre-Heat parameter “Activate Deviation” out of valid range – min=-9999.99 and max =-0.01 (degrees)
1022 Pre-Heat parameter “CV Release (%)” out of valid range – min=0.00 and max =100.00 (%)
1023 Pre-Heat parameter “PV Rise (deg)” out of valid range – min=0.01 and max = 9999.99 (degrees)
1024 Alarm parameter “Overtemp” out of valid range – min=0.1 and max = 9999.99 (degrees)
1025 Alarm parameter “High Deviation” out of valid range – min=0.01 and max = 9999.99 (degrees)
1026 Alarm parameter “Low Deviation” out of valid range – min=-9999.99 and max = -0.01 (deg/sec)
1027 Alarm parameter “Dead Band” out of valid range – min=0.01 and max = 9999.99 (degrees)
1028 Alarm parameter “Maximum PV Temp” out of valid range – min=0.01 and max = 9999.99 (degrees)
1029 Configuration parameter “CV (%)” out of valid range – min=0.00 and max = 100.00 (%)
1030 Configuration Output Pulse parameter “Minimum Pulse” out of valid range – min=0.01 and max = 9999.99 (seconds)
1031 Configuration Output Pulse parameter “Cycle Time” out of valid range – min=0.01 and max = 9999.99 (seconds)
1032 raM_Tec_DeadTime internal error, Deadtime value must be less than (500.5 * task rate (seconds))

Sts_EXERR Description
< Number > If native instruction error occurs internally (PID), the value of the instruction*.ERR DINT will be placed in Sts_EXERR

16
Machine Builder Libraries

3 Application Code Manager

3.1 Definition Object: raM_Tec_SealerTemp

This object contains the AOI definition and used as linked library to implement object. This gives flexibility to
choose to instantiate only definition and create custom implement code. User may also create their own implement
library and link with this definition library object.

3.2 Implementation Object: raM_LD_SealerTemp

Implement Language: Ladder Diagram

Parameter Name Default Value Instance Name Definition Description

ObjectName raM_LD_SealerTemp Object Name

RoutineName {ObjectName} {RoutineName} Routine Name of the routine where


the object will be placed
TagName _{ObjectName} Local Tag Instruction backing tag
name
HeaterOutput - - Input Select from existing Digital
Parameter Channel’s Inp_Data or
Digital Output Module’s
Channel.Address or
Process Digital Output
ProcessVariableInput - - Input Select from existing Analog
Parameter Channel’s Out_Data or
Analog Input Module’s
Channel.Address or
Process Analog Input

Linked Library
Link Name Catalog Number Revision Solution Category
raM_Tec_SealerTemp raM_Tec_SealerTemp >=2.0 (RA-LIB) Machine Temperature Control

Configured HMI Content


HMI Content Instance Name Description
Callup Button {ObjectName}_GrpName Global Object configured callout instance

3.3 Attachments

Name Description File Name Extraction path

V3_{LibraryName} Reference Manual RM-{LibraryName}.pdf {ProjectName}\Documentation

V3_{LibraryName} Faceplate ME (raM-ME) {LibraryName}-Faceplate.gfx {ProjectName}\Visualization\FTViewME\Displays

V3_{LibraryName} Global Object ME (raM-ME) {LibraryName}-Global.gfx {ProjectName}\Visualization\FTViewME\GlobalObjects

V3_{LibraryName} Faceplate SE (raM-SE) {LibraryName}-Faceplate.gfx {ProjectName}\Visualization\FTViewME\Displays

V3_{LibraryName} Global Object SE (raM-SE) {LibraryName}-Global.gfx {ProjectName}\Visualization\FTViewME\GlobalObjects

V2_Images Images Images.zip {ProjectName}\Visualization\Images

17
Machine Builder Libraries

3.4 ACM Instantiation Example for IO

IO Connection parameter allows the object input and outputs to be connected to a Digital/Analog Channel or
Digital/Analog Module. Each of the connection parameter can be independently chosen to be connected to a
Channel or Module or left unassigned.

To assign a connection click the browse button.

1. IO connection linked to a channel


a. Heater Output

b. Process Variable Input

Generated code

18
Machine Builder Libraries

2. IO connection linked to IO Module


a. Heater Output

b. Process Variable Input

19
Machine Builder Libraries

Generated code

3. Leave connection empty if no connection to be assigned

Generated Code

20
Machine Builder Libraries

4. For connecting with a tag, enter the tag name in the connection field. Neglect the error indication. The tag
can be created when the generated ACD is opened in Logix Designer.

Generated Code

21
Machine Builder Libraries

22
Machine Builder Libraries

4 Application

4.1 Instruction Configuration Example

• Sealer Temperature Block unconditionally true (continuous operation):

Configure the AOI input parameters:

• Input Heater Enable On


• Setpoint 200 degrees (F)

AOI Status:
• Instruction Enabled
• Instruction Output Enabled
• Heater Enabled
• PID in Auto Mode
• Pre-Heat Status On
• Heater Output On
• Alarm Low Deviation On

23
Machine Builder Libraries

Example of a system response to variation in setpoint value.

• First Step – SP from 0 to 200 F


• Second Step – SP from 200 to 220 F
• PV Simulation Enabled
• Gains Calculated with Responsiveness Multiplier at maximum value (2.0)

4.2 Input Feedforward

Preferably Input Feedforward should be used when a known disturbance is applied to the system.
For example, if system is stable at a certain setpoint with CV at 30% and when machine starts to move, the
new CV is 70% to maintain the same setpoint, a 40% (or a smaller value to be conservative) can be applied
to the Inp_FF every time machine starts to move. The Inp_FF should return to 0% when machine stops.

24
Machine Builder Libraries

5 Procedure to obtain the System Response Curve

5.1 Overview

The goal is to follow a known and repeatable procedure to obtain a system response curve.
Based on the system response curve it is possible to extract the model system parameters and the preheat
parameters. Once you have entered the system model parameters, request the gains to be calculated. If you
intend to use those gains to control your system, request to “Use Model Gains”. Before you try it in your real
heating system, you can get test the gains enabling the simulation and observe the behavior of the simulated
system. Since real and simulated system are “pseudo-integrating” systems, real and the simulated system
should have similar behavior.

5.2 Description

1. Connect all system together (control and mechanical system)


2. Log in to HMI as “engineering”
3. Use Studio5000 or the Faceplate to trend the following variables:
a. PV (Process Variable – Sealer Temperature)
b. CV (Control Variable)
4. Go to Configuration Tab – Page 1
a. Select relay type (mechanical or solid state)
5. Enable Inp_HeatEnab parameter (value = 1)
6. Go to Tab Home
a. Put PID in Manual Mode
b. Set CV to 100%
7. Wait until PV is 80% of maximum SP then set CV to 0%
8. Wait enough time to be able to measure the heat-off slope
a. See simulation section of this manual to review the model parameters
9. Save the Trend
10. Extract the System Model Parameters from Trend

25
Machine Builder Libraries

26
Machine Builder Libraries

a. Numerically extract System Time Constant from trend. See Microsoft Excel file example
“SealerTempTimeConstant.xlsx” for reference.
i. Save a copy of the trend into a .CSV and open with Excel.
ii. Trim off system response data for when the CV is initially 0
iii. Next to the time column, create a time scale starting at 0 and incrementing in the same
amount of time as the Logix trend sampling rate
iv. Calculate PV average value using 10 samples.
v. Determine deadtime value (look for a variation of 0.2 degrees from initial average
temperature value).
vi. Calculate slope for each sample point (time, PV).
vii. Determine maximum slope. Maximum slope is the Heat-On Slope.
viii. Determine equation that describes straight line that passes through maximum slope point.
ix. Determine time when this straight line reaches the initial PV average temperature.
x. Subtract this time from deadtime to determine Time constant.

11. Extract the Pre-Heat PV Rise from trend (Pre-Heat Parameter)

12. Go to Settings Tab - Page 1


a. Enter Pre-Heat PV Rise
b. Enter an appropriate value to start pre-heat (pre-heat activate deviation parameter)
13. Use Studio5000 or the Faceplate to trend the following variables:
a. PV (Process Variable – Sealer Temperature)
b. SP (Setpoint)
c. CV (Control Variable)
d. HtrOn (Heater On Output)
14. Go to Configuration Tab – Page 2
a. Enter System Model Parameters
b. Press Calculate Model Gains
c. Press Enable PV Simulation
d. Observe the trend behavior of Simulate System to a 0 to 100% CV Step
e. Observe the trend behavior of Simulate System to a 100% to 0% CV Step
f. If simulated system behavior is close to real system behavior, press Use Model Gains

27
Machine Builder Libraries

Example of a Trend using a CV Step of 100% (Engineering Units in Fahrenheit).

28
Machine Builder Libraries

6 User Interface

6.1 Image Files

The global objects used to generate these displays make heavy use of the image files developed for the
Rockwell Automation Library. These image files must be made part of the HMI application if the pre-
developed graphics are to be used.

6.2 Global Object

(raM-xE) raM_Tec_SealerTemp-Global.ggfx

Global Object file with the “call-to-action” buttons available to go to the faceplate display.

29
Machine Builder Libraries

6.3 Faceplate

(raM-xE) raM_Tec_SealerTemp-Faceplate.gfx

6.3.1 Home

30
Machine Builder Libraries

6.3.2 Settings – Page 1

6.3.3 Settings – Page 2

31
Machine Builder Libraries

6.3.4 Settings – Page 3

6.3.5 Configurations – Page 1

32
Machine Builder Libraries

6.3.6 Configurations – Page 2

6.3.7 Configurations – Page 3

33
Machine Builder Libraries

6.3.8 Trend

6.3.9 Faults

34
Machine Builder Libraries

6.3.10 Help

35
Machine Builder Libraries

7 Appendix

This document provides a programmer with details on this instruction for


a Logix-based controller, its Application Code Manager library content,
and visualization content, if applicable. This document assumes that the
General programmer is already familiar with how the Logix-based controller
stores and processes data.
Novice programmers should read all the details about an instruction
before using the instruction. Experienced programmers can refer to the
instruction information to verify details.

This object includes a Logix Designer Asset for use with


Version 30 or later of Studio 5000 Logix Designer.

Rockwell Automation Application Content may contain many common


Common Information for attributes or objects. Refer to the following reference materials for more
information:
All Instructions
• Foundations of Modular Programming, IA-RM001C-EN-P

Conventions and Related


Data - Set and Clear
This manual uses set and clear to define the status of bits (Booleans) and
Terms values (non-Booleans):

This Term: Means:

Set The bit is set to 1 (ON)


A value is set to any non-zero number

Clear The bit is cleared to 0 (OFF)


All the bits in a value are cleared to 0

36
Machine Builder Libraries

Signal Processing - Edge and Level


This manual uses Edge and Level to describe how bit (BOOL) Commands,
Settings, Configurations and Inputs to this instruction are sent by other logic and
processed by this instruction.

Send/Receive
Method: Description:

Edge • Action is triggered by "rising edge" transition of input


(0-1)
• Separate inputs are provided for complementary
functions (such as "enable" and "disable")
• Sending logic SETS the bit (writes a 1) to initiate the
action; this instruction CLEARS the bit (to 0)
immediately, then acts on the request if possible
• LD: use conditioned OTL (Latch) to send
• ST: use conditional assignment [if (condition) then
bit:=1;] to send
• FBD: OREF writes a 1 or 0 every scan, should use
Level, not Edge.

Edge triggering allows multiple senders per Command,


Setting, Configuration or Input (many-to-one relationship)

Level • Action ("enable") is triggered by input being at a level


(in a state, usually 1)
• Opposite action ("disable") is triggered by input being
in opposite state (0)
• Sending logic SETS the bit (writes a 1) or CLEARS
the bit (writes a 0); this instruction does not change
the bit
• LD: use OTE (Energize) to send
• ST: use unconditional assignment [bit:=
expression_resulting_in_1_or_0;] or "if-then-else"
logic [if (condition) then bit:= 1; else bit:= 0;]
• FBD: use OREF to the input bit

Level triggering allows only one sender can drive each


Level

37
Machine Builder Libraries

Instruction Execution - Edge and Continuous


This manual uses Edge and Continuous to describe how an instruction is
designed to be executed.

Method: Description:

Edge • Instruction Action is triggered by "rising edge"


transition of the rung-in-condition

Continuous • Instruction Action is triggered by input being at a level


(in a state, usually 1)
• Opposite action is triggered by input being in opposite
state (0)
• Instructions designed for continuous execution should
typically be used on rungs without input conditions
present allowing the instruction to be continuously
scanned

38
Machine Builder Libraries

Relay Ladder Rung Condition


The controller evaluates ladder instructions based on the rung condition
preceding the instruction (rung-in condition). Based on the rung-in condition and
the instruction, the controller sets the rung condition following the instruction
(rung-out condition), which in turn, affects any subsequent instruction.

If the rung-in condition to an input instruction is true, the controller evaluates the
instruction and sets the rung-out condition based on the results of the
instruction. If the instruction evaluates to true, the rung-out condition is true; if
the instruction evaluates to false, the rung-out condition is false.

The rung-in condition is reflected in the EnableIn


parameter and determines how the system performs each
Add-On Instruction. If the EnableIn signal is TRUE, the
system performs the instruction’s main logic routine.
Conversely, if the EnableIn signal is FALSE, the system
performs the instruction’s EnableInFalse routine.
The instruction’s main logic routine sets/clears the
EnableOut parameter, which then determines the rung-out
condition. The EnableInFalse routine cannot set the
EnableOut parameter. If the rung-in condition is FALSE,
then the EnableOut parameter and the rung-out condition
will also be FALSE.

39
Machine Builder Libraries

Pre-scan
On transition into RUN, the controller performs a pre-scan before the first scan.
Pre-scan is a special scan of all routines in the controller. The controller scans
all main routines and subroutines during pre-scan, but ignores jumps that could
skip the execution of instructions. The controller performs all FOR loops and
subroutine calls. If a subroutine is called more than once, it is performed each
time it is called. The controller uses pre-scan of relay ladder instructions to reset
non-retentive I/O and internal values.
During pre-scan, input values are not current and outputs are not written. The
following conditions generate pre-scan:
• Transition from Program to Run mode.
• Automatically enter Run mode from a power-up condition.

Pre-scan does not occur for a program when:


• Program becomes scheduled while the controller is running.
• Program is unscheduled when the controller enters Run mode.

The Pre-scan process performs the Process Add-On


Instruction’s logic routine as FALSE and then performs its
Pre-scan routine as TRUE.

40

You might also like