cycle-to-cycle control of plastic sheet heating on...
TRANSCRIPT
Cycle-to-Cycle Control of Plastic Sheet Heating on the AAA Thermoforming Machine
ShuonanYang
Department of Electrical and Computer Engineering
Centre for Intelligent Machines—Systems and Control Group
Industrial Automation Laboratory
McGill University, Montreal, Canada
June 2008
A thesis submitted to McGill University in partial fulfilment of the requirements of the
degree of Master of Engineering in Electrical and Computer Engineering
© Shuonan Yang 2008
1*1 Library and Archives Canada
Published Heritage Branch
395 Wellington Street Ottawa ON K1A 0N4 Canada
Bibliotheque et Archives Canada
Direction du Patrimoine de I'edition
395, rue Wellington Ottawa ON K1A 0N4 Canada
Your file Votre reference ISBN: 978-0-494-66961- 7 Our file Notre reference ISBN: 978-0-494-66961- 7
NOTICE: AVIS:
The author has granted a non-exclusive license allowing Library and Archives Canada to reproduce, publish, archive, preserve, conserve, communicate to the public by telecommunication or on the Internet , loan, distribute and sell theses worldwide, for commercial or non-commercial purposes, in microform, paper, electronic and/or any other formats.
L'auteur a accorde une licence non exclusive permettant a la Bibliotheque et Archives Canada de reproduire, publier, archiver , sauvegarder, conserver, transmettre au public par telecommunication ou par ('Internet, preter , distribuer et vendre des theses partout dans le monde, a des fins commerciales ou autres, sur support microforme, papier, electronique et/ou autres formats.
The author retains copyright ownership and moral rights in this thesis. Neithe r the thesis nor substantial extracts from it may be printed or otherwise reproduced without the author's permission.
L'auteur conserve la propriete du droit d'auteur et des droits moraux qui protege cette these. Ni la these ni des extraits substantiels de celle-ci ne doivent etre imprimes ou autrement reproduits sans son autorisation.
In compliance with the Canadian Privacy Act some supporting forms may have been removed from this thesis.
Conformement a la loi canadienne sur la protection de la vie privee, queiques formulaires secondaires ont ete enleves de cette these.
While these forms may be included in the document page count, their removal does not represent any loss of content from the thesis.
Bien que ces formulaires aient inclus dans la pagination, il n'y aura aucun contenu manquant.
• + •
Canada
Abstract
The objectives of this project are (1) to reduce the excursions between real heater
temperatures and the desired values, and (2) to realize cyclic production of plastic sheets
on the AAA thermoforming machine.
At first, present relevant knowledge and modeling of the AAA machine are covered. A
programmable pre-processing module is inserted before the heaters to prevent the input
commands from delaying in heater response. The results prove that the excursions can be
theoretically reduced to zero.
Based on the Terminal Iterative Learning Control (TILC) algorithm, a hybrid dual-mode
cascade-loop system is designed: the inner loop monitors the real-time temperatures for
PID control in Mode 0, while the outer loop reads temperatures and commands once per
cycle to decide the necessity of switching mode. A more realistic version with flexible
cycle length and instant response to operator's commands is also designed to simulate the
real operating circumstance.
Resume
Les objectifs de ce projet consistent a: (1) reduire l'erreur entre les temperatures
d'elements reelles et les temperatures desirees ; et (2) implementer une production
cyclique de feuilles de plastique sur la machine de thermoformage AAA.
En premier lieu, la modelisation de la machine AAA ainsi que l'etat des connaissances
sur cette machine sont traites. Un module programmable de pr6-traitement est insere
avant les elements chauffants pour enlever le delai de reponse des elements du a la
commande. Les rdsultats demontrent que les excursions de temperature peuvent
theoriquement Stre reduites a z6ro.
Une commande en cascade hybride bimodale basee sur Talgorithme de commande
iterative terminale avec apprentissage est con?ue. La boucle interne de cette commande
surveille les temperatures en temps r6el pour la commande PID dans le Mode 0, alors
que la boucle externe lit les temperatures et les commandes une fois par cycle afin de
decider de la n6cessite de changer de mode. Nous proposons une version plus realiste
avec un temps de cycle flexible et une reponse instantanee a la commande de
l'operateur pour simuler des circonstances replies d'operation.
II
Acknowledgements
First and foremost, I would like to express my most sincere gratitude to my supervisor,
Dr. Benoit Boulet, who gave me the honor of studying in the Department of Electrical
and Computer Engineering, McGill University, for his crucial comments on framework,
guidance based on experience and anticipation, sparkling pieces of advice, as well as
stimulating encouragements. Only for his valuable help, I could never develop my
research smoothly and finally complete this thesis.
I appreciate my laboratory mates Yuan Hao, Wadih Maalouf, Yan Chen, and Xiaodong
Li. With his research experience of the same apparatus despite different research topic,
Mr. Hao used to discuss with me for many times regarding the projects of us both, and
thus we benefit each other. Mr. Maalouf helped me get access to knowledge and
appliances of thermodynamics used in this project. Ms. Chen and Mr. Li taught me the
cautions of preparing a thesis in Canada and other miscellaneous stuff.
I will keep grateful all the time to two McGill graduates, Mark Ajersch and Guy Gauthier,
for their excellent research work and data about the control of AAA machine and the
TILC algorithm, based on which I could conduct my own ideas. I will also never forget
Dr. Yingxuan Duan and CNRC-NRC IMI, who let me contact the AAA machine for the
first time.
At last, I would bring my special thanks to my parents. They always reserve their unique
care for me, no matter at present or 20 years ago. When I enjoy success, they remind me
of prevention of complacency; when I encounter failure, they encourage me to advance
despite difficulties. No saying can be enough to express my appreciation to them, and
nothing can replace their stature in my mind.
HI
Table of Contents
Abstract..... I
Resume I I
Acknowledgements Il l
Table of Contents I V
Chapter 1: Introduction 1
1.1. About Thermoforming 1
1.2. AAA Thermoforming Machine 3
1.3. The Current Research Topic 6
Chapter 2: Original Modeling of the Oven Process 8
2.1. Classical Transfer of Thermal Energy 8
2.2. View Factors 12
2.3. The Theoretical State Space Model based on a View in Layers 16
2.4. Linearly Approximated State-Space Model 22
2.5. Structure and Data Flow of the Original Control System 25
Chapter 3: Reduction of the Excursions of Heater Temperatures 2 8
3.1. Severe Delay of Actuators 28
3.2. Prototype of Actuators 31
3.3. Introduction of the Preprocessing Module of Actuators 34
3.4. Industrial Improvement of the Preprocessing Module 38
3.5. Theoretical Support of the Feedback Improvement 44
Chapter 4: Dual-Mode Hybrid Control System 4 7
4.1. Iterative Learning Control (ILC) and Terminal ILC (TILC) 47
4.2. Modeling of the Plant Based on Ending (Stable) Output Values 51
4.3. Introduction of the Mode of Adjustment (MA) 56
4.4. Determination of MA Command Signals and Complete Implementation of the
Dual-Mode Hybrid Control System 58
IV
4.5. Experimental Results 66
Chapter 5: Miscellaneous Improvements 7 1
5.1. Improved Modeling of the Plant Based on Ending Output Values , 71
5.2. Flexible PID Control Design 76
5.3. Performance Analyses & Discussion 80
5.4. Dual-Mode Variable Cycle Control (I): Theoretical Preparation 83
5.5. Dual-Mode Variable Cycle Control (II): Visualized Real-Time Commands &
Logical Design of Variable Cycles 87
5.6. Dual-Mode Variable Cycle Control (III): Design ofMATLAB Script and
Simulation Analysis 94
Chapter 6: Summary & Future Work 9 9
6.1. Summary 99
6.2. Future Work 100
Appendix 10 2
7.1. MATLAB Codes 102
7.2. Quantitative Computation of the View Factor Matrix 108
References I l l
V
Chapter 1: Introduction
The first chapter of the thesis provides sketchy but necessary knowledge of the research
topic. Firstly, the concept of thermal forming (thermoforming) is demonstrated, and the
history of development of thermal forming is listed. Secondly, the main experimental
facility, the AAA plastic forming oven, is demonstrated with figures; the previous
research work regarding the automatic control strategies of this oven is reviewed. At last,
the problems of the control system and the oven are brought into discussion, and the
corresponding solutions are introduced with the train of thought.
1.1. About Thermoforming
Thermoforming is an industrial process in which plastic sheets are heated and then
formed into useful parts. It consists of three consecutive phases, namely heating, forming
and cooling. The sheet is heated, usually in some kind of oven, until it becomes soft or
reaches the desired temperature. Then, the softened sheet is formed over the mold and
cooled until it can retain its shape. Figure 1.1t2] demonstrates the procedure of drape
forming, a typical example of thermoforming. A more detailed description of the
thermoforming process is found in the following chapters.
Before During After
Mold _^A TTTt
Fig. 1.1[2]: The Process of Drape Forming
1
In fact, thermoforming originated much earlier than the invention of the plastic. The
Romans imported tortoise shell (Keratin) from the Orient and used hot oil to shape this
thermoplastic material into food utensils11]. J.W. Hyatt developed the first commercially
viable plastic material, called "celluloid" in the mid-19th century[2]. Most products in this
age were made by drape-forming softened plastic sheets. During the World War II
(WWII), aircraft canopies, turrets, domes, relief maps and many other items were vacuum
formed, which caused both material-based and technological-based development111.
Decades ago, thermoforming only applied to some special occasions, where the volume
of necessary formed parts is small and the desired shapes are easy to form. When the
quantity and the quality are mandated, people generally turned to the injection forming
technique. However, such problems had been solved soon after. Thermoforming could
produce plastic parts in much bigger size than before, while the prices of thermoforming
molds became much cheaper than the injection ones. Therefore, thermoforming had
rapidly established the image of a viable and profitable method of processing plastics
after the WWII; Table 1.1[3] is obvious evidence. The most representative example is that
thermoforming became the primary choice for the packaging industry[3].
Polymer
ABS
PMMA
HDPE
PP
PS
Total
Consumption of Thermoformed Plastic (Mkg)
1977
70
36
10
8
392
544
1983-4
127
38
26
22
480
782
1992
202
42
59
72
640
1181
1995
240
50
87
115
720
1450
Annual Growth 1984-1992 (%)
6
2
11
16
4
5
Table 1.1L J: Increasing Consumption of Thermoformed Plastic
2
After thermoforming took advantage when competing with injection forming,
developments of this industry gradually transferred on enhancing the production rate,
inventing new materials, attempting special materials, and satisfying more specific
processing requirements. Producto, Inc. has invented a complete set of thermoforming
tools for roll-feeding of materials[4]. The thermoforming production line newly set up by
ILLIG Maschinenbau GmbH & Co. KG[5] is said to be able to work as fast as injection
forming. RTP company has invented thermoformed chromatic-shifting sheet materials,
whose colors change upon change in exterior conditions (like temperature and other
ones)[6]. Ex-Tech Plastics, Inc. has invented annually renewable thermoformed packaging
material for food applications'71 and thermoformed UV-inhibited material for the
architecture industry'81. J. Schroers has carried experiments and discussion on the
thermoforming of bulk metallic glass191. R. Truckenmuller has introduced a new method
for micro-thermoforming of chip structures for life sciences applications'101. Avery
Dennison, Inc. provides personalized innovative solutions besides its own patent
thermoforming production line[11]. Today, thermoforming has become one of the fastest,
if not the fastest growing methods of processing plastics.
1.2. AAA Thermoforming Machine
The AAA thermoforming machine at CNRC-NRC IMI is the main facility of our
thermoforming research topic. All the critical experiments of this project, mainly heating
process prototype work, actuator prototype work, and design of a converter for cyclic
control, are carried out with the AAA thermoforming machine. These parts are analyzed
with more details in the following chapters.
The front view of the AAA thermoforming machine is shown in Fig. 1.2[2]. Compared
with other types of thermoforming machine, it has a small size and applies to small sheets
of 69 cm x 99 cm maximum121. Sheets enter the oven between the trays of heating
elements (heaters), which are situated above and below the entry space. .
Fig. 1.21 : Front View of AAA Thermoforming Machine
Fig. 1.31 provides the distribution of heating elements inside the AAA thermoforming
machine. 36 ceramic heating elements are split equally on top and at the bottom of the
oven (18 elements in each side), divided in 12 groups (heating zones) so that each zone
encloses 3 heating elements connected in parallel. Each heating element can supply up to
650W of 3-phase power. The basic design of a ceramic infrared heater is evenly
distributing a resistance coil made of nickel-chromium alloy into the ceramic during the
casting process. The coil is embedded as close as possible to the element surface in order
to deliver maximum efficiency.'21 The infrared wavelengths vary from 2 to 10 um[12].
4
Fig. 1 . 3 . Heating Elements at the Bottom Side with Specific Measurements
The heating process of this thermoforming machine can be modeled using
thermodynamic theory. The heating of a plastic sheet is done via radiant heaters located
above and below the sheet. The radiant energy hit the 2 surfaces of sheet directly from
heaters, and it is absorbed and transmitted penetrating the sheet by synthetic effects of
radiation and conduction[I3]. The convection energy occurs as the energy exchange
between the sheet surfaces and the ambient air when difference in temperature exists. The
detailed part of energy transfer inside the oven is demonstrated in Chapter 2. Moreover, B.
Moore has tried further modeling by analyzing the in-cycle performance[14].
Generally speaking, the control design and implementation of the AAA machine stayed
at a relatively primitive stage before the current research topic. Despite B. Boulet and R.
5
DiRaddo's blueprint of model-based control11 1[16], the temperature control and
adjustment were based on traditional PID feedback control, and the adjustment of the
temperature setpoint was made by trial and error. It thus had caused the damage of lots of
plastic sheets, which is a monetary waste we should prevent^71. In contrast, relevant
theoretical research is far more advanced. Since the repetitive production of sheets
meeting the standards is very demanding in the industry, the implementation of cyclic
control over the machine has naturally become an obvious object that researchers wish to
overcome. A representative prominent achievement is the Iterative Learning Control
approach, which is surveyed by K. L Moore[18] and then introduced to areas of thermal
processes1191. Based on this approach, the Terminal Iterative Learning Control (TILC) is
invented, further analyzed[201[211t22], and redesigned for various applications12311241, which
has paved the way for the research of the thesis.
1.3. The Current Research Topic
The research work and publications listed above provide a solid basis for our research
topic; however, these cannot be directly applied to the system. Two main problems are
induced from previous simulations and other research backgrounds:
(1) Simulations with traditional PID control strategy prove that a certain kind of serious
delay always exists in the response of control signals (heater temperatures) to their
commands, which is discussed and analyzed in Chapter 3.
(2) The TILC model established by G. Gauthier and B. Boulet needs constant control
signals within each cycle, while the delay of control signals stops them from keeping
steady upon different setpoints.
Based on the theoretical background and the bottleneck of the current PID controlled
system, the main plan of the thesis consists of:
6
(1) Model the heater temperature-sheet temperature process and determine the function
of crucial parts.
(2) Reduce the excursion (error) between the temperatures of the heating elements
(heater, actuator) and their setpoints;
(3) Design a cyclic (cycle-to-cycle) control system using MATLAB;
(4) According to the control results, improve the cycle-to-cycle control system achieved
in the 2nd step.
This plan is conducted in the following Chapter 2 ~ 5, and methods of implementation
are subject to specific problems necessary to overcome.
7
Chapter 2: Original Modeling of the Oven Process
So far, most controllers or control plans are oriented to specific models or plants to be
controlled; therefore, it is necessary to identify the oven heating process before we take
any further glance at controller design. Regarding the oven heating system, it is easy to
determine sheet temperature as the output of the system and heater temperature and the
control signal, which is exerted by the actuator (heater) on the heating process. In this
chapter, we will start from the relations between the heater temperatures and the sheet
temperatures in order to establish both the theoretical model and a simplified linear one
for observer. However, both models respond much more slowly than expected, thus
Chapter 3 is introduced to find and solve the problem.
2.1. Classical Transfer of Thermal Energy
In thermal physics, transfer of thermal energy, or heat transfer in a short form, happens
when the temperatures of an object or some fluid is different from that of its surroundings
or another object until they reach the thermal equilibrium. Classical transfer of thermal
energy occurs through conduction, convection, radiation or any combination of them.
Conduction is the spontaneous transmission of thermal energy by means of transferring
continuous random motion of the particles of the matter; thus, it is through direct physical
contact. Thermal energy is conducted from a region of higher temperature to another
region with lower temperature, and it acts to equalize the temperature difference.
The quantization of conduction is governed by Fourier's Law[30]:
8
ox or (2.1)
dt ox
Here Q and Thave their general concept as heat and temperature. The heat flux q x (W/m )
denotes the "flow" rate of heat per unit area, which is predetermined to be perpendicular
to the direction of qx. With the same reason, the area A of the cross section through which
heat is transferred must be also perpendicular to the direction of qx, otherwise it should be
multiplied with the corresponding sine or cosine factor.
Equation (2.1) describes the conduction within one direction; thus it is possible to expand
the application of the equation to our three-dimensional world by using the sum of the
partial derivative in the three directions. However, since the thickness of the plastic sheet
are much smaller in size than the distance from heaters and thus the corresponding
section is much larger than those of the other 2 dimensions, it is recommended to keep
the one-dimensional equation in use for the following analysis.
Convection refers to the movement of molecules and the de facto heat transfer effect
within fluids or between some fluid and a container (surface). According to the cause of
fluid motion, the heat convection can be classified into two major types. The first is
forced convection, where the fluid motion carrying the heat occurs whether the heating
process happens (for example, the fluid motion caused by a fan). The second is natural
convection, or "free convection", where the heating process itself may lead to the fluid
motion via expansion and buoyancy force[31].
Convection obeys Newton's law of cooling1 [32].
9
q = h(T s-Tf) or (2.2)
f-wr.-V
Here Q, t, A have the same meaning as in Equation (2.1), and q denotes the heat flux per
unit area caused by convection (W/m 2). h is the convection coefficient (W/(m 2 • K)), T s
denotes the surface temperature, and 2/ denotes the fluid temperature. Concerning the
heating process of sheets, this free convection happens between the sheet surface and the
surrounding air within the oven. Therefore, h should be endowed with the coefficient of
quiescent air (5 ~ 10 W/(m 2-K))), T s should denote the temperature of the sheet surface,
and Tf should denote the temperature of the air ambient.
Thermal radiation is a kind electromagnetic radiation emitted from the surface of the heat
source due to its temperature. It is generated when the heat from the movement of
charged particles within atoms is converted to electromagnetic radiation. Thermal
radiation is also the main means of heat transfer of the oven heating, since the heaters
have no direct contact with the sheet and the convection effect is relatively negligible.
Fig. 2.1[26] clearly shows the energy distribution spectrum of radiation wave lengths
concerning different temperatures of a black body. According to that figure, it is easy to
observe that the thermal radiation effect usually occurs within the range of 0.1 ~ lOOum,
although the zone of wave length distribution is usually wider. However, in the rest part
of the thesis, total value of the energy emitted in the form of radiation and the effect on
the surface temperature on the sheets will be discussed, rather than the distribution.
10
1000
A,[nm] 2000
Fig. 2.V ': Energy Distribution Spectrum of Wave Lengths (Varying with Temperature)
To determine the quantitative effect caused by radiation, now we introduce the Stefan-
Boltzmann law[27]:
q = oTA (2.3)
This law describes the relation between an ideal heat source (black body) temperature T (K) and the radiative energy flux q (W/m 2) that it emits. <7 is the Stefan-Boltzmann
constant.
11
According to Equation (2.3) and considenng the reciprocity of radiative effects, the net
radiative heat flux between an emitter (heater) and a receiver (plastic sheet) is derived121
as in Equation (2.4):
£<ff—\ 1 (2.4) —+—-1 £h £ s
Here 7/, means the heater temperature, and T s means the temperature of the receiver's
surface. The effect of reflection of non-black bodies has been considered in the form of
coefficient £ h and £ s, respectively denoting the emissivity of the heater and the plastic
sheets.
2.2. View Factors
In Equation (2.1) ~ (2.4), it is pre-determined that the heat fluxes mentioned above are
subject to be orthogonal to the surfaces; otherwise the quantities should be multiplied
with the cosine values of their angles to the corresponding vertical axes. Since the heaters
have a square shape and their surfaces are nearly flat, the concept of view factor is
introduced to help to implement this consideration. The view factors are multiplicative
coefficients, which depends on both the angle from the emitted heat flux to the heater's
surface and the one from the received heat flux to the sheet's surface.
The Sensitivity Matrix Documentation1281 of MAGI Control Inc. provides specific method
to compute the view factor between each heater to each sensor. Since the heaters are
fixed parallel to the 2 surfaces of plastic sheets, now the only necessary angle is the one
between the heater layer (or the sheet) and the line connecting the center of the heater
12
with the projection of the sensor on the sheet. The following part quantitatively analyzes
the computation from the perspective of radiation between 2 areas (bodies).
Define 2 bodies: body j (heating zone) and the body k (small area of sensor's projection
on the sheet).
JE
Fig. 2.2l28J: Define the 2 Bodies
The mutual relation states that:
M=FkjAj (2.5)
Geometrically, we define the following 3-dimensional coordinates and measures:
13
Fig. 2.3 : Geometric Measures for Computing View Factors
Then the view factor F,y = / between the /-th heater and the 7th infrared (IR) sensor could
be computed in the following way:
2 2 2 2
f=-( r, rllllHf^fr.y,.^)
g{x,y,Tf,§) = —
{y-rijix-tf + z2**-1' y-rj
V(*-tf+*2J Hx-^yKy-riy+z2*™-1- *-$
.JFT) 2+z2
-|-ln[(*-<f)2+(),-7)2
+ z2
(2.6)
(2.7)
These calculations must be implemented for each pair of heating zone and IR sensor
combination for the upper half of the oven. Note that in the AAA oven the sensors are
distributed in the way shown in Fig. 2.4:
14
78 cm
57.1 cm
IRTB. IBB 8 2oneTi,Bi;
26.5 cm
Zone T4.B4
IILTO?,
24.6 cm
IRT5.IRB5
JEoflatKBi^ -iofit-'WM.-:
24.4 cm
•4" IRT1 , IRB 1
•.SatMeSSSfT:
H r 2.1 cm
Zone TB.S6
BW IB M
4.1 cm
4.1 cm
6.1 cm
Fig. 2.4: Top View of AAA oven with IR sensors
Bottom heaters and sensors are the mirror-symmetric image of their upper counterparts
across the horizontal sheet plane; as a result, Fig. 2.4 also applies to the bottom view of
the AAA machine.
For the view factor matrix from the upper 6 heaters to the 5 real sensors inspecting the
temperatures around the upper surface of sheet, the quantitative measures and
computation (listed in the appendix) lead to the result in Equation (2.8):
15
F„„„ = upper
Fn F, C21
D31
12
L22
L32
42
L13
L23
L33
L43
L14
L24
L34
L15
L25
L35
L4S x 41
. F 51 F 52 F 53 F 54 F 55
0.0467 0.239 1 0.046 7
0.0226 0.022 6 0.006 2
0.0062 0.022 6 0.022 6
0.0175 0.252 6 0.25.2 6
0.2526 0.252 6 0.017 5
L16
L26
L36
L46
r56.
0.0467
0.2526
0.0175
0.0062
0.0226
0.2391
0.2526
0.2526
0.0226
0.0226
0.0467
0.0175
0.2526
0.0226
0.0062
(2.8)
The entries for the lower half will be identical due to symmetry, thus the entire view
factor matrix (10x12) is in the form of diagonal matrix as Equation (2.9) shows:
F = upper
0 0
upper
(2.9)
,th With the computed view factors, the radiative heat flux to the i sensor (•$•,) from all the
heaters (hj,j = l ~ 6 o r 7 ~ 1 2 ) within the same side could be written as[2]:
Qrad = dQL J^rad
Ahdt =%zv,fc4-^4) (2.10)
2.3. Th e Theoretical State Space Model based on a View in Layers
The radiative heating forms the main process of heat passing from heaters to sheets, but it
does not contain all the thermal effects causing temperature variations. Since plastic is
not a good conductor of heat, the temperature actually varies over the entire sheet during
the heating process. Besides, the typical thickness of sheets is much smaller than their
length and width, thus the vertical heat conduction also obviously affects the
temperatures of the two surfaces. In order to design an accurate model with such factors,
16
Moore developed a discretized model of a plastic sheet[18], which is visually depicted in
M. Ajersch's thesis, as in Fig. 2.5[2]. The model divides the sheet into layers, and all the
thermal behaviors are between layers.
Fig. 2.5[2] shows the way of dividing a sheet with the width z into n layers: (1) the sheet is
divided into n nodes with the same interval in the direction perpendicular to its surfaces;
(2) the 1st and the n* node are respectively placed on the upper and bottom surfaces; (3)
the other layers are centered at their corresponding nodes. Therefore, the (n - 2 ) layers in
z the middle have the width Az = , while the 2 surface layers only have the half width.
n-\
Note that the division of layers has its directivity and the sensors are placed
symmetrically in pair, we can subtract the indices of sensors to half ( 1 - 5 ) . The bottom
temperature (/ = 6, ..., 10) detected by the corresponding sensor could be expressed as T\ = ?s~S•> and similarly the radiative heat flux hitting the bottom surface detected by the •th i sensor could be expressed as q' rad = q'rad_t = q\ i-5
rad_top Hrad^bottom
• l
# 2
• 3
• N - 2
• N - I
* N
Az/2
Az
Az
Az
Az
Az/2
Fig. 2.5: Plastic Sheet Discretization
17
Then it is not difficult to notice that the total thermal effects within a five-layer model
include:
(1) Conduction between layers;
(2) Convection between the surrounding air and the surface layers;
(3) Radiation from the heaters to each layer, including the heat transmitted to the layer
and absorbed by the layer.
Following these instructions, Ajersch describes the heat-temperature relation[2] for each
layer regarding any Ith sensor (i = 1,. . . , 5). The equations of the 1st layer and the 2nd layer,
which are respectively the example of surface layers and middle layers, are listed below:
\ _ ! / < i « \ {• _ 1 C \ ~~7~ "Tlylcondl "* " Qconvl + Q-rad_top ) ( l — 1 , . .. , J )
at p c —
=^c4r{£ ( r /"2^+ 7 ; i ) + (^2 +^2 )} (2,12 )
Here p denotes the density and C p denotes the specific heat coefficient, which only
depends on the properties of the plastic material. Az is the thickness of middle layers and
also double the thickness of surface layers. All q with various indices represent various
kinds of heat fluxes scaled in (W/ m 2).
18
Then, the heat absorption and transmission must be discussed. The Beer-Lambert law[29]
provides an access to the quantitative analysis of absorbed energy: the transmittivity T x
depends on the spectral absorption coefficient A x and the material thickness Az:
ln(rA) = -AaAz
Tx = e~ A^ (2.13)
Notice that both T x and A x are wavelength-dependent. Define A as the average
absorption coefficient, and then the absorbed fraction f} of the heat flux transmitted to
each layer could be computed[2]:
Az
middle layers: p in = /?(Az) = J Ae^dz = l-e A&z
Az Az/2
surface layers: P a=P — •= \ Ae Az dz = l-e 0 I J
AM 2
(2.14)
(2.15)
With these fractions, it is easy to analyze the absorption and the transmission of heat
radiated from the top heaters, whose direction is from the 1st to the 5th zone. The
procedure is shown in Table 2.1:
\ jdnds of fluxes
layer indices v
1
2
3
4
5
Ttotal _n
total (radiative) heat flux hitting the n* zone
(J (detected in the form of (J ratl)
(i-A,)«
{l-Pin){\-Pex)q
( i -A) a ( i - /U?
( i - /U 3 ( i - /U*
"abs_n
heat flux absorbed in the n* zone
raH.
A(i-A.)«
A(i -A)( i -A.)«
A(i-A)a( i-A,)«
A»(i-A.)3(i-A.)«
Ttrans _n
heat flux transmitted through the n"1 zone
(i-A.)*
(I-A.)(I-AJ«
(i-A)2(i-A.)«
( i -A) 3 ( i - /U«
(i-A.)3(i-A,)a«
Table 2.1: Heat Absorption and Transmission in the Descendent Direction (Layer 1 to Layer 5)
19
According to Equation (2.10) and the symmetry of the view factor matrix F, the radiative
heat flux hitting the z,th heating zone/sensor (i = 1, ..., 5) on both the top and bottom
surfaces can be identified as:
7=1 U J
<L_boltom=<*«t[MK. - r ^ J ] (2 -17)
Based on Equation (2.11) (2.12) and Table 2.1, we can establish the theoretical state
space model of the oven heating process. The form of (2.11) and (2.12) points out that it
is appropriate to use the node temperatures as the state variables. Define x'„ = Tn as the
form of the state variables with the layer index n and the heating zone (sensor) index i; JC[
and x l5 can be directly detected by their corresponding sensors.
In addition, define the following parameters
1 a = -pCM
* = - * -Az
c2 = o**A.(i-A.)
c3-oBrfA.(i-A,)(i-A.) c4 = «^A.(i-A,)(i-A)a
5 = «vA,(i-A,)(i-A)3
20
so that the terms with b come from conduction, the terms with c„ (n = 1,2, ... ,5) come
from radiation or absorption of the radiation heat, and the terms with h (h is the
convection coefficient) come from convection. Then a state-space model tightly based on •th thermodynamics is established for every i heating zone (sensor):
x<
-la(h+b) lab ab -lab 0 0 0
lah 0 0 0 0
0 0 0 0
lah
ab 0 0
0 ab
-lab ab 0
air _ top
air_bottom
0 0
ab -lab lab
a OE. 'ff
0
0
0
ab -la(h+b)_
" • * ( "
4 4 4
A. lc, 1c*
ICe lC,
-top i
"rod _ bottom (2.18)
Abbreviate (2.18) by substituting relevant terms according to (2.16) and (2.17), Equation
(2.19) can be written:
x'=Ax'+BconvTai>+a
-lc, c2
c3
CA
_2c5
icA CA
c3
c2
2cJ
=Ax'+B_T\+«
.7=1
6
;=1
-a
"2c,
c2
c3
CA
lc5
2c 5 l
CA
C*
Cl
2cJ "2q
c2
c3
Q lc,
icA c4
c3
c2
2cJ
6
HFaTL j=i
zvr, ;=i 6
A 'i^bottom
-a
~lcx
Cl
c3
CA
lc5
icA CA
c3
c2
2cJ ±fM4 y=i
(2.19)
21
2.4. Linearly Approximated State-Space Model
The 4th power terms of Equation (2.19) demonstrate that the theoretical model is
nonlinear because of radiation effects. However, the traditional robust control (H2 and #«,)
strategies are specially designed for Linear Time-Invariant (LTI) systems; they may
hardly implement accurate control of the oven. For the further analyses, it is preferable to
have a linearized model.
An incremental model is established in this subtopic. The idea is to approximate the small
change of function value with the multiplication of the corresponding change of variable
and the derivative at the predefined operating point. Since the 4th power terms appear on
state variables J£ and heater temperatures T h , we can define operating point
;» _ T ,• * ,- • ,• » ,• * ,- * ~\J A "" " .An A/ry ^ \ "A vV c I
th Introduce the concept of increment, the 4 power terms could be linearized as
K)4* d(A4)4
dA4 V
•A4 = d4
4=4',
A<=4«) 3 Axj
(Axi) =4(^*) Axi, i=l, 2, ...,5
(ArfcJ4 = 4(r;)3Arv j =1,2, ...,1 2
(2.20)
Substitute (2.20) for relevant terms in (2.19):
22
~Axf
Ax2
Ax3
Ax;
_Ai; j
=
+
=
+
—*
-2a(h+b) ab 0
0
0
~2ah 0 "
0 0
0 0
0 0
0 2ah
~-2a(h+b) ab 0
0
0
~2ah 0 "
0 0
0 0
0 0
0 2ah_ 2cx 2c 5
c2 c 4
c4 c 2
2c5 2c,
2ab 0 0
-2ab ab 0
ab -2ab ab 0 ab -2ab 0 0 2ab
AT 1 air_top A T
air _ bottom
+a
> c2
c3
c4
_2c5
2ab 0 0
-2afc afc 0
a& -2ab ab 0 a& -2a£
0 0 2ab
A T* air_top
A T"* air_bottom
+ a
'2c,
c4
_2c5
[ ( 6 \ . 1 4 2X I ;*T)A*;
f 6 > 4
L 2X1
U=i y [4) ^ 5
0 1
0
0
ab -2a(h+b)_
2c,' c4
c3
c2
2c, _
~Axf
A4
Ax;
A^;
. ^ 5 J
" 6 "1
EV^ 6
2X<, -a
- j=1 J
0
0
0
ab -2a{h+b)
2C;
c4
c3
c2
2c, _
"Ax|
Ax;
Ax;
Ax;
[Ax
'2c, c2
c3
c4
2c5
6 3
Z^fc) AThj
. j = i
2C; c* c3
Cl
2c, _
6
5XK') 6
Z*.(*9 _ J ' = 1
Define
i ;=4F s ( r , ; ) ! , y = l ,2. . . . ,6
U=1 J
23
Ax;
Ax'
Axl
-2a(h+b) ab 0
0
0
2q 2c 5
+a
+a
2c5 2c x
-2a(h+b) ab 0
0
0
2a 2c,
2c5 2c x
2ab -2ab
ab 0
0
(d'T 0
2ab -2ab
ab 0
0
o
0
ab -2ab
ab 0
0
(d ' ) r
0
ab -2ab
ab 0
0
o 0
ab -2ab 2ab
0 0 0 ab
-2a(h+b)
Ax[ Axi Ax; Ax; Ax;_
+
2ah 0
0
0
0
AT, -a
0
0
ab -2ab
2cx 2c 5
2c5 2cx
0
0
0
ab
e;'Ax;
2afc -2a(h+b)
2ah 0 '
0 0
0 0
0 0
0 2ah
-a
2e[Cl
e{c4
2e{c5
ATh + AT,
0
0
0
0
2ah
AT air _ top
AT air_bottom
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
2elc, 5U5
e5c4
e5c3
e5c2
2e\c,
Ax
24
Ax' =a
+a
-2(h+b + b-e[c2
~61C3
-e[c4
-2e[c5
2Cl(df
_2c5(df
e[Cl) 2b -2b b 0 0
2c5(df
c2(df
2cM
0 b
-2b b 0
2h
0
0
0
0
0 0 b
-2b
-2e\c, —e5c2
—e5c3
b-e'5c4
2b ^(h+b+e^)
0
0
0
0
2h
.ATa,_
Ax''
(2.21)
= A1Ax'+B1Au
From the analysis above, Equation (2.21) is deduced as a linearly approximated
incremental model of the oven heating system. The previous research work of M. Ajersch
uses a simplified linear model (without considering d1 and e1) as the observer of virtual
sensor outputs.
2.5. Structure and Data Flow of the Original Control System
As a typical computer-controlled system, the original version of computer-controlled
system by M. Ajersch has the following components: controller, actuator, process, and
observer (for estimating virtual sensor outputs), which are interconnected through
feedback paths. Note that besides the real sensors as in Fig. 2.4, the original prototype of
the system introduced 8 virtual sensors (each 4 corresponding to each surface of the
sheet)[21, where temperatures are is read via the observer rather than via any IR sensors, in
order to raise the measuring accuracy of temperature distribution on the sheet. However,
previous statement concerning only real IR sensors, especially the part of view factors, is
25
enough for research of the project, since the knowledge highlighting distinctness between
real sensors and virtual ones are seldom used in the following chapters.
Fig. 2.6 (1) shows the structure and the flows of data inside this system. However, if we
treat the combination of the process for real sensor outputs and the observer as the
equivalent of the process for virtual sensor outputs, the structure can be simplified to an
ordinary one-loop feedback control system without any loss of accuracy, as in Fig. 2.6 (2).
yd_Re
+ yd_Vir\
~> J-i
+ \
~\ fc
» V
Programmable Part
Controller_Re
Controller_Vir
rH
rH
Observer
Mapping Factor
(18-> 12)
4 4
1 V
Physical Part
Actuator (Heater)
— V
^—•
Process R e
Process_Vir \=*
Fig. 2.6 (1): Structure of Original Computer-Controlled System
yd
Programmable Part
<^^{ Controller (Mapping included)
Physical Part
Actuator (Heater) 1 Proces s
Fig. 2.6 (2): Simplified Structure of Original Computer-Controlled System
26
It is worth noticing that nearly all the previous research work about the AAA oven treats
only the process or kinds of process model as the object for control, while from the
figures above it can be determined that the object for control should be the combination
of the actuator (heater) and the process. In fact, the heaters of the AAA thermoforming
machine impose considerable effect on control results, and the analysis of these actuators
in Chapter 3 is a positive step towards reducing such effect.
27
Chapter 3: Reduction of the Excursions of Heater Temperatures
As is caused by the lag or other hardware-limits of the heaters themselves, as well as the
disturbance outside, the actual heater temperatures are not certainly equal to the desired
(given) values at every moment during the whole heating process. The excursions of
heater temperatures can cause waste of heat (energy), difficulties in designing/improving
controllers, and forced inaccuracy in some displaying panels of the apparatus. Therefore,
reducing the excursions is a main objective of the whole project. Chapter 3 discusses the
reasons of the excursions, analyzes the hardware properties, and finally describes a way
to reach that objective.
3.1. Severe Delay of Actuators
Now a simulation to show the excursions without any improvement steps is performed.
The experiment is based upon the given parameters and original conditions: proportional
coefficient P = 25, original oven temperature 27 °C (including original sheet temperature,
original air temperature inside the oven, and original heater temperatures), desired sheet
temperature in the form of step input at 150°C, and simulation duration 1000s. Then, we
can draw the curves of actual heater temperatures, desired heater temperatures, and
excursions, as in Fig. 3.1:
28
AAA antiwindup.md l - Initia l Conditions: P = 25, Sheet Initia l Temp. = Heater Initial Temp. = Air Initial Temp. = 27 Celsius
Desired Heater Temperatures (as commands of the original controller) 1000
500
-500
400
-1000
100 200 300 400 600 700 500 Time (s)
Actual Heater Temperatures (actual control signals)
800
500 Time (s)
Excursions of Heater Temperatures (actuator errors)
500 Time (s)
900 1000
1000
1000
Fig. 3.1: Desired Heater Temperatures, Actual Heater Temperatures, and Excursions of Heater
Temperatures Measured when P = 25 and the initial oven temperature = 27°C
Fig 3.1 shows the big excursions (error) between the actual heater temperatures and the
desired values. (Note that the curves A denote data from 4 heaters in the central column,
while the curves B denote data from the other 8 heaters in the 2 side columns.) The
"command" given to the heater consists of two step (pulse) signals and a slope within the
first 500s, while the actual heater temperatures are similar to three slopes within the same
interval; after 500s, the desired values and the actual ones tent to be the same. It is worth
noticing that the two step (pulse) parts of the desired heater temperature curves
29
correspond to the first two slopes of the actual ones. Obviously, there exists severe delay
between the given signals and the actual ones.
A traditional thought is that the slow increase in the actual signal is caused by not-big-
enough proportional coefficient P, since larger P can generally give larger controlling
input signal, seemingly causing actual heater temperatures to tightly catch the given
command. To confirm whether this conjecture are correct or not, another simulation is
performed, where a larger proportional coefficient P = 40 are adopted but other original
conditions are not changed. Fig. 3.2 is produced as follows:
1000
AAAantiwindup.mdl - Initia l Conditions: P=40, Sheet Initia l Temp. = Heate r Initia l Temp. = Air Initia l Temp. = 27 Celsius
Desired Heater Temperatures (a s commands of the original controller)
500 h
& ri. E
-500
(Cel
sius
) Te
mp.
*eo"
400
300
200
100
0 (
1000
500
100
500 Time (s)
Actual Heater Temperatures (actua l control signals)
200 300 400 600 700 500 Time (s)
Excursions of Heater Temperatures (actuator errors)
500 Time (s)
900 100 0
800 900 100 0
900 100 0
30
Fig. 3.2: Desired Heater Temperatures, Actual Heater Temperatures, and Excursions of Heater
Temperatures Measured when P = 40 and the initial oven temperature = 27°C
In contrast with Fig. 3.1, the "slopes" of the actual heater temperature curves in Fig 3.2
have not become any steeper, while the large oscillations occur (after the temperatures
become stable) due to relatively large P. In other words, the increasing rate and the
decreasing rate of the actual heater temperatures can hardly become higher because of
enlarged proportional coefficient P. Besides, the excursions in Fig. 3.2 perform nearly the
same curves as in Fig 3.1, implying the conjecture to speed up the heater by larger P proves to be impracticable.
The experiments above show obviously that heaters tend to generate uniform outputs
despite different command signals. To find out the reason, the following research turns
the focus to the properties of the heaters themselves.
3.2. Prototype of Actuators
Further analysis on actuators is carried on because of the low response speed. Since the
12 actuators are not coupled, structural decoupling will not affect the results of simulation.
The analysis method is to add input to the actuator model, and then to observe the output.
The block diagram of one structurally decoupled heater and the internal structure of its
saturation block show as Fig. 3.3 and Fig 3.4[2]. The two characteristic structures were the
unit-delay feedback route and the flexible-bound saturation.
31
^ * ^ # ^ g ^ H ' g * ? - f r t ^ |
o Actual Temperatures
cz> Initial Conditions Heating elements
d> Desired Setpoints
Product
>€>
temp error New temp
saturation block
error kWh
energy calc
—•CJD Heating Zones Temperatures
<D Actuator Error
Energy
G > temp
Fig. 3.3: Structure of a Decoupled Heater (Actuator)
max heate r temp rising rate (reducing with the growing process of the temperature )
-0.005 *u+3
Upper lim sat
(0.0018 *u-0.06 ) S Lower lim sat
max heater temp falling rate (reducing with the falling process of the temperature
Saturation Detect & Selection
• MATLAB Function
MATLAB Fe n -*€>T<I=>
New temp
Scope 1
• Scope
Fig. 3.4[2]: Internal Structure of the Saturation Block in Fig. 3.3
32
Actuator Discrete Model (One Element): u(kh) —> y(kh) from Ajersch's research results121
describes the relationship between the heater input u and the heater output y, where h is
the default sampling period and k is the total number of sampling periods passed after the
start point. Consider the default case h = ls:
e(k) = u(k)-y(k-l) y(k) = y(k-l) + sat(e(k))
According to the function blocks "upper lim sat" and "lower lim sat" in Fig. 3.4, the
saturation conditions are:
sat(e(k)) =
-0.005y(ifc-l)+3 (upper) e(k) (medium) (3.2)
-0.0018y(*-l) + 0.06(low)
Since e(k) = u(k) - y(k-1), the flexible upper and lower boundary conditions of the
saturation block are equivalent to
\ upper: u(k)>0.995y(k-l) + 3 I low: u(k) < 0.99S2y(k -1) + 0.06
Since u(k) and y(k) are generally from 30°C ~ 600°C, then we could easily find that the
unsaturated range is rather narrow. Thus the conditions listed in Equation (3.3) can be
approximately equivalent to: (1) when u(k) > y(k -1), e(k) reaches the upper bound, the
output y(k) is rising to match the input u(k). (2) when u(k) < y(k-l), e(k) reaches the
lower bound, the output y(k) is rising to match the input u(k). The following discussion
highlights the rise and fall of the actual heater curves in either case of saturation.
(1) temperature rising process
33
When the temperature is rising, the saturation function of e(k) generally obeys the upper
bound because of the slow rising speed. Thus, the actuator model takes the form as:
y(*) = 0.995y(*-l) + 3 (3.4)
Thus, the rising actuator temperature cannot be impacted by the input u{k), and from
Equation (3.4) the largest possible value of y(k) could be computed: ymax = 600°C.
(2) temperature falling process
When the temperature is falling, the saturation function of e(k) generally obeys the low
bound because of the slow falling speed. Thus, the actuator model takes the form as:
y(fc) = 0.9982y(fc-l) + 0.06 (3.5)
Thus, the falling actuator temperature cannot be impacted by the input u(k), and from
Equation (3.5) the smallest possible value of y(k) could be computed: y^n = 100/3 °C.
Since the actuator temperature will not be controlled by input signal once the increasing
amount reaches the upper or lower saturation bound, all the improvement on desired
heater temperature curve become useless in the two cases. Now there is only one way to
subtract the heating process: to rise the average heater temperature. However, it means
abandoning the policy of keeping the sheet temperature steady at the end of each cycle; in
other words, it is necessary to take the sheet out of the oven exactly at the desired time
point, otherwise the sheet will be overheated.
3.3. Introduction of the Preprocessing Module of Actuators
From the experiments and analyses above, it can be concluded that the changing rate of
heater temperatures mainly depends on the speed-limited module actually existing in the
34
heater, rather than control strategies. Now a new thought appears: as it is not possible to
reduce the excursions between the actual heater temperatures and the desired ones by
improving control strategies, could it be feasible that constraining the given controlling
signals to the nearly fixed-shape curves of the actual heater temperatures?
Based on the first thought, a polynomial fit should be the first choice to "reshape" the
original command signal curve directly generated by controllers. Now the feasibility of
polynomial fit on the curve is discussed: the different equation in Part 3.2 shows the
desired heater temperature curve is some combination of exponential curves. Since
exponential functions can actually be considered as infinite-order polynomials according
to the concept of Taylor series and consecutive differentiation (up to infinitely many
times), so that the results of emulating exponential curves with polynomial curves
generally contain obvious flaws (which is proven by relevant experiment in Chapter 4),
another way should be find out instead of polynomial fit.
Reference to the properties of heaters themselves gradually becomes the key to realizing
the "reshaping" object. Now that most original command signals could be scaled to the
exponential curves, why not insert a preprocessing module acting like the heaters in front
of the real heaters? If such a link is introduced, exponential curves are expected to take
place of the original ones before given as commands to the heater.
Compared with the original actuator (heaters), the improved actuator with a virtual heater
block added in front is demonstrated in the form of Simulink .mdl block diagram (Fig.
3.5). The terms "physical part" and "programmable part" are used to determine the two
sources from which the excursions are defined. Notice that a data displayer is also set up
for measuring the real-time excursions between the desired heater temperatures (the input
of the actuator) and the actual ones.
35
Physical Part
Programmable Part
nominal desired heater temp
Virtual Heating Element s
Initial Heater Temp
actual signal input into tne neate r
Physical Part
KjiD Tz de s
Real Heating Element s
+Q—KID Heaters' excursion
actual heater output signal (contrbl inpu t )
•CD Energy
Fig. 3.5: (1) the Original Actuator;
(2) the Virtual-Real Actuator Combination with the Denotation of the Excursion Output
Following the structure adopted in Fig. 3.5 and the given conditions generating Fig. 3.1,
the figure of the nominal desired heater temperatures, the actual desired heater
temperatures, the actual heater temperatures, as well as the excursions, are plotted as Fig.
3.6:
36
1000
jn 50 0
ri. E
-500
400
400
ri. E
0.5
0
-0.5
-1
AAA traceactuator.mdl - P = 25, Sheet Initia l Temp = Heater Initial Temp = Air Initial Temp = 27 Celsius
Nominal Desired Temperatures of Heaters (commands from the original controller)
100
100
200 300 400 600 700 800 500 Time (s)
Actual Desired Temperatures of Heaters (actual inputs of the physical heaters)
500 Time (s)
Actual Heater Temperatures (actua l control signals)
500 Time (s)
Excursions of the Actual Heater Temperatures from the Desired Values
200 300 400 500 Time (s)
600 700 800
900
900
1000
1000
1000
1000
Fig. 3.6: Experiment of the Virtual-Heater-Connected Case with the Same Initial Condition as in Fig. 3.1
Both Fig. 3.6 and the data display in Simulink show that the excursion can be
theoretically reduced to zero, while simply improving the controller seems not to
approach that goal. Thus the task of reducing the excursions of heater temperatures
reaches its basic achievement.
37
3.4. Industrial Improvement of the Preprocessing Module
Part 3.3 shows the excursion can be reduced to zero with a virtual actuator block
connected in front of the real one; however, problems like perturbation would occur with
the implementation. A representative example is some uncertain disturbance imposed
upon the forward route between the output of the virtual actuator and the real one. Such a
kind of disturbance will not only cause some excursions in spite of the reducing effect of
the virtual actuator, but also slow down the speed of heating in certain cases.
The following part concentrates on minimizing the effect of additive disturbances
appearing in the forward route between the virtual heating elements and the hardware.
Now begin with a simple, representative additive external disturbance:
n(t) = r(t-200)-2r(t-250) + r(t-300), where r(i) denotes the unit ramp function and
thus n(t) is a triangular function, as in Fig. 3.7:
A Triangula r Functio n Disturbanc e n(t )
Fig 3.7: A Triangular Function Disturbance
38
With the effect of n(t), the curve of actual heater temperatures is blended with some
unexpected slowly rising slopes, reflecting themselves a concave part in Fig. 3.8. As a
result, the ending heater temperatures and the sheet temperatures are effected by n(t).
Perturbed Heater Temperatures 1 1 1 1 : 1 1
J I I I I J "0 10 0 20 0 30 0 40 0 50 0 60 0
Time (s)
Fig. 3.8: The Curves of Perturbed Heater Temperatures
Fig. 9 shows that such a n(t) generates considerable excursions of heater temperatures.
Referring to Fig. 3.6 (2) (3), we know that the rising part of disturbance n(t) becomes
effective during the falling period of the heater temperatures, causing e(t) touch the
opposite saturation bound and thus changing the trend of the heater temperatures.
350
300
„ 25 0 01
_3 jo
| 20 0 1 u a E u
>- 15 0
100
50
39
Perturbed Excursions of Heater Temperatures
0 -
-ID-
.2
'to
& | -20-
I-
-30 -
-40 -
-50 L
0 10 0 20 0 30 0 40 0 50 0 60 0 Time (s)
Fig. 3.9: Perturbed Excursions of Heater Temperatures
It is worth noticing that the rising slope of n(t) in Fig. 3.7 and the falling slopes of the
perturbed excursions in Fig. 3.9 shares the opposite gradient and the same largest value.
(The rising parts of excursions in Fig. 3.9 do not remain a strict ramp, since n(t) does not
change the trend of curves after 250s.) After the consideration of structural limitation of
improvement, (that is, "besides the programmable part the sensors/inspectors could only
be put in the oven to measure the heater and sheet temperatures,) an intuitive try appears
to solve the perturbation problem: opening a simple feedback route from the excursions
to the input of the heaters as in Fig. 10, in order to neutralize the perturbed excursions in
Fig. 9.
40
Programmable Part Physical Part
Heaters' excursio n
Energy'
Fig. 3.10: Actuator with Improved Pre-processing Module
Since the rising slope of n(t) in Fig. 3.7 and the falling slopes of the perturbed excursions
in Fig. 3.9 shares the opposite gradient, it is natural to think the feedback factor K in the
feedback route in Fig. 3.10 should be given the value of 1.
When K = 1, however, the excursions are half-subtracted instead of fully cancelled, as is
shown in Fig. 3.11. We try some larger K and get other more restricted curves, which is
also plotted in Fig. 3.11:
41
10 Perturbed Excursions: Actuator improved with Feedback Design (Different Feedback Coefficient K)
-10
§, -2 0
-30
-40
-50
I \ V\ X:25 0 ___!___—-—- — ~ I""" " i i 1 \\ \ jY:-lii.&j i _ — i ^
i \ \ \ " ^ i ^ — " ~
i ' 1 \ " """ ' ' ^ r" ! ! \ \ ! X: 250 j J ^ - " ^ " " ^ , , _ _L _L _j y. .1 6 6 7 I ^ ^ _ ^ ^ ^ j ,
i i I m ^ ^ ^ i i i
] \ j X : 250! ! ] i i ' 1 j Y : -25 i ' ' '
i
i
\ \ 'C^f ' i iX:25ol yS\ i i
| | Y : -50 ]\ yS ]
100 200 300 Time (s)
400 500 600
Fig. 3.11: Perturbed Excursions with the Feedback Route Connected, Regarding Different K
From the different gradients of the falling slopes and the recorded data points in Fig. 11,
the law between feedback coefficient K and the corresponding peak value ep(K) of the
excursions could be induced as Equation (3.6):
p 1+K (3.6)
Thus a deduction of Equation (3.6) appears: the excursions in Fig. 9, which is caused by
the disturbance n(t) in Fig. 6, could be fully cancelled if K = <*>. Since "inf' does not
work in the current Simulink block diagram, we can use a large K instead. Fig. 3.12
shows the curve of perturbed excursions when K = 50:
42
Perturbed Excursions: Actuator improved with Feedback design (K = 50)
5 - 0.2
J -0. 4
-0.6
~~ i i r p
100 200 300 Time (s)
400 500 600
Fig. 3.12: Perturbed Excursions with the Feedback Route Connected and K = 50
From the scale of Y-axis of Fig. 3.12, it could be found that when K = 50, the infinity
norm of excursions' values, that is, the maximal values of every branch of excursion, is
smaller than 1. Now the heater temperatures show in Fig. 3.13:
43
350 Heater Temperatures: Perturbed Actuator Improved with Feedback Design (K = 50)
300 Time (s)
Fig. 3.13: Perturbed Heater Temperatures with the Feedback Route Connected and K = 50
Please note the curves (including values) in Fig 3.13 are nearly the same as those in Fig
3.6 (2) (3), which are the curves in the ideal case. That means the feedback route from
excursions to the input signal of the real heaters works well and thus can be practically
applied, when the feedback coefficient K is given a large enough value (for example, 50).
3.5. Theoretical Support of the Feedback Improvement
Theoretical analyses are organized in the following part in order to inspect the
mechanism of such a kind of feedback route. From Fig. 3.11 we can only confirm that the
„ 1
\+K " operation only applies to the descendent slope (during 200s ~ 250s) and the
maximal excursion, since the time points when the excursions come back to zero are
different according to flexible K. However, from another perspective, if the slopes before
44
250 can be totally analyzed, this kind and the similar kinds of disturbances could be also
totally known and thus removed.
Observe a saturation block's choices in two cases: K = 0 and K = 50, and plot the result
curves in Fig. 3.14:
Real-Time sat(e(k)): Response of A Saturation Block, e(k) as In Equation 3.1 (1)K = 0
0
-0.5
-1 100 200 300
Time (s)
- upper bound - actual sat(e(k)) - lower bound
400 500 600
3r
2.5
1 'f | 0.5 -
0
-0.5
-1
(2) K = 50
\
100 200 300 Time (s)
400 500 600
Fig. 3.14: sat(e(fc)) Regarding Different Selection of Feedback Factor £
Note that the green curves (sat(e(&)), e(k) as in Equation (3.1) and saturated according to
(3.2)) are seated in the unsaturated ranges in both of the cases during 201s ~ 250s. Since
Fig. 3.11 shows a continuous trend of excursions' values when K shifts, it can be
determined that e{k) is unsaturated during 201s ~ 250s for any K between 0 and 50.
45
Combine Equation (3.1) and (3.2) according to the unsaturated case, as well as the effect
of n(t) and the feedback root with the factor K, we can compute out Equation (3.7) as
follows:
y(k) = y(k-l) + e(k) = y(k-l)+{u(k) + n(k) + K[u(k)-y(k)]-y(k-l)} = (K+l)u(k) + n(k)-Ky(k), when 201 < k < 250
(3.7)
Equation (3.7) could be easily transferred to Equation (3.8):
u(k)-y(k) = —^-, when 201 < it < 250 (3.8) K. +1
Obviously, Equation (3.8) has the identical form as Equation (3.6). Since u{k)-y{k)
here means the excursion of the corresponding heater at the k^ second, the " "
operation, which is the main motivation to improve the pre-processing module, has been
theoretically proved.
46
Chapter 4: Dual-Mode Hybrid Control System
In Chapter 3 we have successfully completed the first, main objective (reduction of
excursions of heater temperatures) of this project and improved the performance of
actuators by introducing a pre-processing module and some actuator feedback
connections. However, the control result cannot become better solely based on the
modification in Chapter 3, since the excursions have no impact on the actual control
signals (heater outputs). Besides guaranteeing more precise sheet temperatures during a
single heating cycle, the research work in Chapter 4 focuses on innovative improvement
regarding mass, consecutive production of plastic sheets, like cycle-to-cycle control and
dual controller.
4.1. Iterative Learning Control (ILC) and Terminal ILC (TILC)
Iterative Learning Control (ILC) is a new method of tracking control, overcoming
traditional problems, and improving the performance for systems that work in a repetitive
mode. According to the description by Kevin L. Moore, ILC is "a technique for
improving the transient response and tracking performance and processes, machines
equipment, or systems that execute the same trajectory, motion, or operation over and
over"[18]. Along with general robotic and manufacturing operations, mass production of
plastic sheets requires the oven to repeat the same heating process. Then ILC can be used
to improve the system response in the following steps: (1) record frequently happening
errors caused by the same production conditions from cycle to cycle; (2) use the recorded
error to compute the input signal for the next cycle. Note that the input signals computed
in the above way receive the elements of refinement at the beginning of each cycle,
which is the essence of learning control.
47
u (effective at the end
of each cycle)
Memory A
Uk+l
L
* w ^ \ . i IV/l*~>/-Jek l O y o ^ i i i IVIV^UC^ I
V
Memory
Learning Controller M ^ ^ ^
1
w
r
Memory
y<i
Fig. 4.1[18): Basic ILC Configuration
Fig. 4.1[18] shows the basic idea of ILC; note that the subscript index k denotes any
unspecified repeated operation (cycle) number. Viewing clockwise from the top-left
corner, we can find that the input Uk(t) during the ^ cycle forces the system model to
produce the output yk(t); both of w* and y* are stored in memory units. The real-time error
ek(t) during the k01 cycle could be computed according to the desired output yd{t), and then
the learning controller part selects the control input w+iCO for the next cycle from the
stored Uk and y*.
There is more than one method of determining the control signals in the learning
controller part, but nearly all the methods obey the optimal (minimal) norm principle as
in Equation (4.1):
™*\\yd (t)-fs (M(O,0|=||y* (t)-fs (u(t),t)\ (4.1)
48
Here f s indicates the system model in function form, and u{t) denotes the optimal real
time control input signal. The criteria of norm selection depend on the properties of the
system and other conditions.
G. Gauthier and B. Boulet applied the Terminal Iterative Learning Control (TILC) to a
model of the heating oven used in this project. They carried out the experiments with the
premise of constant control inputs u during each cycle, thus the determination of Uk(t) on
every time point t is simplified to the determination of only one constant value only
according to the control constant input of the last cycle, the known desired output, and
the calibrated output at the end of the last cycle. The following part[251 provides the
theoretical support of their experiments.
Given the linear model of the oven with the control input u constant within each cycle:
(xk(t) = Axk(t) + Buk
\yk(t) = Cxk(t)
where t e [0, T] and T is the pre-determined cycle length. The solution of the output
signal could be easily computed from Equation (4.2):
yk(t) = ^uk+Txk(0) (4.3)
where x k (0) denotes the initial state vector of kA cycle, and
T xV = c\e A{T")Bdt
0 T
T = c\e Mdt (4.4)
49
Here comes the spark of Gauthier and Boulet's research: an exchange of variables is
carried out, which means the cycle number k becomes the main variable instead of the
instant time t.
yT(k) = Vu(k) + Tx0(k) (4.5)
Since y T(k) and x 0(k) are one-point value rather than variables on the time axis, and K*
is constant during the cycle, yT, x 0, u can be treated as discrete functions on the axis of k.
The purpose of such exchange now becomes obvious as preparation for z-transform from
the fc-domain, while the z-transform leads to:
YT(z) = VU(z) + rX0(k) (4.6)
Note that TELC is the terminal control version of ILC, which mainly depends on the
terminal value of cycles and thus has the following common law:
uk+l(t) = uk(T) + K(yd(t)-yk(T)) (4.7)
Since the experiment shows the heating process could not be completed in only one cycle,
yd should keep constant during each cycle. Therefore, the exchange of variable and the
following z-transform can also be applied to Equation (4.7), then produce Equation (4.8):
U(z) = K(z-lT1{Yd(z)-YT(z)) (4.8)
The closed loop transfer function with the initial stately = H(Yd)\ is computed from
both Equation (4.6) and (4.8):
Y^^zI-I + ^KY'l^KY + iz-DrX^z)] (4.9)
50
The initial condition should be unique valid for every cycle, because the unheated sheets
are generally thought to have identical initial states. Apply the final value theorem on
(4.9), we can find the ending temperature y T (k) converges at yd, if the system converges
with the cycle number k growing to infinity.
Gauthier and Boulet's experimental result inspired the research on this project. However,
the research of Chapter 3 shows that the heater temperatures are typically varying during
each cycle, while industrial mass production requires repetitive cycles. Moreover, as
stated in Part 4.2, we use a cycle period T= 600s due to some consideration of security of
mass production, while Gauthier and Boulet use a shorter cycle period. As steps of
implementation and improvement, the following several sections focus on designing a
controller reaching the industrial standards while keeping the excursions restricted.
4.2. Modeling of the Plant Based on Ending (Stable) Output Values
Generally speaking, most controllers are designed according to the corresponding plant
models, and the preciseness of plant has direct effect on controller design and control
results. Mark Ajersch and K. Moore contribute to a strict nonlinear model of the oven
according to thermodynamics, as described in subtopic 2.3. Since radiation effect
contains the 4th power of temperatures, which is not covered for most controller design
methods, he also designs a linear model by means of Taylor expansion of high-order
power at a base point (200°C), as described in subtopic 2.4. Now we can see that the
linear model of the heating oven plant, appearing as the two observers in the Simulink
block diagram, is accurate enough when the oven temperature are around 200°C, but not
so accurate when the oven temperature is beyond the approximately linear range, e.g.
120°C. Since we are facing the desired wider linear range centered at 150°C and the fact
that desired control signals in Chapter 3 cannot keep constant as those in the TILC
experiment, it is necessary to design a new model with a completely new concept.
51
Modeling has two methodologies: one is based on its structure, and the other is based on
the relationships between inputs and outputs. Mark Ajersch's nonlinear model is strictly
designed in the first way. However, we only wish to drive the system output (sheet
temperature) to the corresponding desired value by the end of each cycle, thus the second
method is a convenient and appropriate choice for our new modeling. From previous
experiments we can find that heater temperatures have positive relationship with sheet
temperatures, and it is natural to guess that some kind of relations exists between the
ending values (concerning each cycle). Obviously, such relations will help us establish
the new model. Therefore, the relationship between sheet temperatures and heater
temperatures should be determined first, since the control of sheet temperatures is the
ultimate goal while the control of heaters is no more than a method.
There are several specifications to weigh the relationship between sheet temperatures and
heater temperatures, from which we must carefully select one. Here appears a
consideration of security of mass production: since the placement (replacement) of sheets
at each beginning (ending) is a manual operation (that is, an operator must repeat this
movement periodically), it is expected the sheet temperature keep the desired value yd instead of becoming overheated and melting, in case the operator forgets or delays
(without intention) one or more replacements. Therefore, the ending values (at each cycle)
of heater temperatures should make the sheet temperature eventually stable at y<* (that is,
y<»(k) = yd, when the (k + if* cycle and the upcoming cycles does not happen); we
define such ending values as uend{k) = «stabie = u^uziydk))-
The experiment of measuring the relationship between given yd and corresponding wstabie
= «stabie(vd) is carried out on a bare oven model (without the nonlinear model of actuator).
According to different positions of the 12 heaters, we can establish a simplified format of
"stable a s U tabl — stable_edge
stable_center instead of 12 irrelevant values, regarding the asymmetry
between the 8 sided heaters and the other 4 central heaters but the respective symmetry. It
could also be explained intuitively: the central heaters cover a larger sheet area (which
means higher efficiency of heating) compared to the side ones, and wstabie_center should be
52
less than wstabie_edge in order to keep the consistency of sheet temperature (everywhere in
the sheet). Regarding the industrial accident mentioned above, we give the control inputs
as step signals to simulate such accidents. Now the goal of the experiment becomes
trying different step control input combinations of u ead(k) = u. end_edge -
w. end_center
to let all of the
output values stable around given yd, which are passed by the inspecting sensors
regarding the temperatures at different spots on the sheet surface.
Fig. 4.2 shows the response of the plant model when given an ideal combination of
u. stable_edge
stable_center
184.2
169.464 . The sheet temperature in this case finally stops at 150°C; both
Mstabie_edge and wstabie_center are recorded in Table 4.1 regarding the case y<* = 150.
Model Test: Find out u stabl e when given yd = 150
IX: 8000 ! Y:150
4000 Time (s)
5000 7000
Fig. 4.2: a decent selection of ustab]e when yd = 150
53
Similarly, give different step control input signals wstabie to the heating process model
(without the nonlinear model of actuator), so that the sheet temperatures finally become
stable at different yd (simulation time t > 8000s) ranging from 120 to 180. The records of
all the tested cases are shown in Table 4.1:
yd u_stabl e edge cente r
120 130
140
150
160
170
180
151.4124
162.4644
173.5164
184.2000
194.8836
205.4935
215.8824
139.2994
149.4672
159.6351
169.4640
179.2929
189.0540
198.6118
Table 4.1: Data of desired sheet temperatures yd and the corresponding heater temperatures «stabie which
makes actual sheet temperatures eventually stable at yd
Use yd as the horizontal axis and wstabie as the vertical axis, we can plot Fig. 4.3, which
indicating the linear relationship between calibrated ustabie and given yd in Table 4.1.
54
220
210
200
190
Relation between given yd and corresponding u stabl e
i i 180 -CL
E '
» 17 0
160
150
140,
130 I 140
I 150
yd - Temp . (Celsius)
i 160
- -© - - edg e - - • - cente r
i 170 120 130 180
Fig. 4.3: Visual Relation between yd and corresponding wstable
The linear relationship can be computed with the MATLAB command "polyfit.m" by
giving the value 1 to the parameter of the order:
w. 'stable_edge
u. stable_center
1.075 0.989 y* +
22.3510 20.5629
(4.10)
That helps create the theoretical support for actuator control.
After Equation (4.10) is computed, it is used as a pre-converter converting desired sheet
temperatures yj(k) into the corresponding desired ending/beginning heater temperatures
55
Wend(fc) = uo(k+l), which will be used in the Mode of Adjustment of the dual-mode
controller demonstrated in the following parts.
Fig 4.2 shows it takes longer than 600s (the desired cycle period) to drive the sheet
temperature around 150°C. Since Equation (4.10) describes a positive linear relation
between, it is deducible from Fig. 4.2 that the sheet temperature cannot generally reach y<*
within one cycle when the control input is given as in Table 4.1. According to Chapter 3,
combinations of rising curve and falling curve should be applied as control inputs instead
of step signals, in that case the value of y«, - y600 is generally small; thus it is still
acceptable for us to adopt the relation described in Table 4.1 in the rest part of Chapter 4.
However, from relevant discussion in Chapter 5 some better choice of desired
beginning/ending heater temperatures udk) can be discovered instead of wstabie(fc) =
Wstable(y^)).
4.3. Introduction of the Mode of Adjustment (MA)
The cycle-to-cycle production of sheets in a unified format calls for the self-tracking
ability of heater temperatures; that is, the final value of each heater's temperature in each
cycle should track its corresponding initial value, the ideal case is uo(k) = uend(k) = Ud(y<i(k)) = Ud(k) (uo(k) and u end(k) respectively denote the heater temperatures at the
beginning and at the end of the A* cycle) for every cycle number k. Note that the heater
temperatures must be continuous in the time axis due to the limit of their response speeds,
that is, uo(k+l) = uend(k); thus, in the ideal case there would be uo(k+l) = uo(k), creating a
consistently identical condition of production for every sheet.
From the previous analyses and experiments, it is easy to discover that uend(k) depends on
both yd(k) and u0(k), in case that no change happens with the system properties. That
means uo(k+l) = u end(k) = uo(k) could theoretically happen, if the initial heater
temperatures uo(k) are tuned to appropriate values according to the current yd. Part 4.2
provides a decent way to select uo(k) = Mstabie(y<*(&)) according to Table 4.1 or Equation
56
(4.10). For example, a proportional controller with KP=\A shows the self-tracking ability
of MO when parameters are selected as in Table 4.1 (yd = 150°C, uo_ed ge(k) = 184.2,
wo_center(&) = 169.464). It can lead to not only fairly short rising time, small overshoot, but
also small deviations of heater temperatures from their initial values. Thus we use Kp = 14 as the default Kp of the classic PE) control mode (Mode 0) in the rest of Chapter 4.
However, such a kind of self-tracking ability of the oven itself is vulnerable. If w0 edge and
" center happens to be far from their desired values (according to Table 4.1), there will be
no guarantee that uo_edge and uo_Center will return, which would cause consecutively
producing no sheet up to standard. Besides, the difference between the final values of
heater temperatures and the initial values always exists, although the controller and the
setting of wo_edgeand wo_center help to reduce it. The error would probably be cumulative if
caused by imprecisely modeling; in this case, it would grow noticeable after a couple of
cycles, and the sheets would not meet the standards any more.
Now we introduce the concept of dual mode controller to solve the problems. The most
characteristic improvement is adjoin the mode of adjustment (MA) with the original
mode of PID control, in order to constrain uo(k) of every cycle number k to a range with
tolerant errors. MA is expected to directly control the heater temperatures and only
appear in necessary cases (cycles). Since the main purpose of MA is not controlling the
sheet temperature, no sheets should be placed in the oven during MA cycles, in order to
prevent unnecessary waste of materials.
An auto-switching mechanism should be designed with MA to form a complete set. Let
uo(k) be consecutively examined at the beginning of each cycle. If the results show any
element of uo(k) (any heater's initial temperature) goes out of the desired range, the
system will automatically switch to the MA. The MA will last until all the wo components
are driven back to the desired range; it is designed to accomplish the goal in one cycle,
which is the general case (two or more cycles are also possible because of the limitations
of heaters' hardware properties).
57
In MATLAB implementation, an acceptable plan is to define a Boolean variable mode, which could be assigned a value cyclically and depends on uo(k) and y<i(k), as is shown in
Equation (4.11):
fl, (Mode of Adjustment) mode(k) = mode(u0(k),yd(k)) = \ . (4.11)
0, (Mode of Classic PID Control)
The experiments in Chapter 4 adopt wstabie as the "representative" of yd in deciding modes.
Then Equation (4.12) is deduced from (4.11):
' , / ,v , / „ , / „,w fl, (Mode of Adjustment) „ „„ mode(k) = mode(u0(k),ust!i>le(yd(k))) = -\ T>TT,^ „ n ( 4 , 1 2 )
10, (Mode of Classic PID Control)
Nevertheless, the control signal when mode = 1 (MA) is still unknown, the analysis of
which is the main task of Part 4.4.
4.4. Determinatio n o f M A Comman d Signal s an d Complet e Implementation of the Dual-Mode Hybrid Control System
Part 3.2 shows the command signals are composed of the rising and falling curves, which
are described by their corresponding different equations. According to the previous
analyses, the rising and descending curves, which obey the upper and the lower bound of
the saturation block, are depicted by the differential equations:
Jrising: u(k) = 0.995u(k -1) + 3 {descending: u(k) = 0.99S2u(k -1) + 0.06
Here u is adopted to denote heater temperatures instead of v in Chapter 3, where y
denotes the actual heater temperature (Celsius), u < 600 is a necessary condition of the
rising curve equation, while u > 100/3 is a necessary condition of the descending curve, k
58
denotes unspecified the A* second within any unspecified cycle, since the saturation
bounds are computed once per second.
The expressions based on continuous time can be reached by solving those differential
equations and placing k with the continuous time variable t, which is still relative to the
moment of the beginning of the corresponding cycle:
rising: u(t) = e^005' (w(0) - 600) + 600
descending: u{t) = e^°°m (w(0) - — ) + HUXUB,, ^ 100. . 100 (4-13)
y(0) denotes the initial value within that cycle.
In order to mass-produce heated sheets, the cycle-to-cycle control concept is adopted.
Generally, the variation of heater temperatures within one cycle should cause short rising
time of sheet temperatures as well as reduce their overshoots (inertia), which requests
combinations of both kinds of the curves mentioned above. A typical model of one-
rising-one-descending curve is introduced to simplify the computation:
u(t) = g-UU0M(w(0)-600) + 600, when t < r (rising)
e-00018( '-T)(u(r)-—)+—,whenr<t<T(descending) i4M)
x is the turning point within the cycle and should satisfy 0 < -r < T, where T is the period
of each cycle. It is easy to discover and also should be paid attention that wend(&) is
uniquely determined when uo(k) and x are known.
With such knowledge about the curves, we desire to write the curves of (4.14) into an
acceptable form in MATLAB .m file, which is acceptable and convenient for MATLAB
programming. One direct thought is to approximate the curves in the form of finite order
polynomials by using the MATLAB command polyfit.m to compute the coefficients of
59
the prospective polynomial, then using polyval.m to compute the function values upon
the giving domain. However, exponential functions are equivalent (in order) to infinite
order polynomials, which is proven by Taylor's Expansions, thus we should use a high-
order polynomial to get satisfying approximation.
Simulate the default proportional control plan with K p - 14 with UQ = «stat>ie and
184.2 stable_edge
stable_center 169.464 , which is corresponding to yd = 150 in Fig. 4.2 and Table 4.1,
and save all the data of side heater temperatures (w ge) collected from the Simulink
display module as a structure with time. Use the heaters' actual outputs as the reference,
and we devote to find some curve to approximate them. The codes using polyfitm and
polyval.m is as follows:
P=polyfit(Heaters.time, Heaters.signals.values(:,1),7); % the last parameter is the desired order of the prospective polynomial; % 7 and 15 are used in the experiment Y=polyval(P,Heaters.time); % to generate the function values of the polynomial upon the given domain plot(Heaters.time,Heaters.signals.values(:,1),Heaters.time, Y);
Fig. 4.4 shows the approximation result of T^-order polynomial, from which it could also
be noticed that u0 nearly equals to uend-
60
380
360
340
320 h
— 30 0
3 28 0
7th-Order Polyfi t o f Heater Temperature Curve
260
240 h
220
200
180 100 200
- Original Heate r Temperature (Edge) Curve - Approximation Resul t with a 7th-Order Polynomia l
300 Time (s)
400 500 600
Fig. 4.4: T^-Order Polynomial Fit of a Given Sided Heater Temperature Curve
Redo this part with the order parameter equal to 15. Fig. 4.5 shows the result of the
polyfit command:
61
380
180
15th-Order Polyfi t o f Heater Temperature Curv e
- Original Heate r Temperature (Edge ) Curv e - Approximation Resul t with a 15th-Orde r Polynomia l
100 200 300 Time (s)
400 500 600
Fig. 4.5: 15 -Order Polynomial Fit of a Given Sided Heater Temperature Curve
We can see by comparing the two figures that higher order polynomials lead to better
approximation results, but neither of the polynomials can trace the curves near the turning
point at T very well. Moreover, Part 3.2, Part 3.4, and Part 3.5 provides an important
notice that the input desired temperature into any heater should be equal to or higher than
actual heater output temperature within the rising curve, and equal to or lower within the
falling curve; otherwise the heater will possibly enter the unstable state, so that the
heating speed and efficiency will be reduced. That request cannot be satisfied with the
whole approximated heating curve in Fig. 4.4 and 4.5, especially the part around the
turning point.
After the trying above, it seems hard to find out a MATLAB command for generating or
directly storing the combinations of such curves as data inputs. One possible solution is
to find an alternative variable to replace complicated expressions (if there is any) of the
62
control signal curves. Since it is known that wend(fc) is uniquely determined when uo(k) and T are known from (4.14), we can try a transformed controller with the input as the
desired heater temperatures, which is determined by desired sheet temperatures, and with
the output as r. The following analysis of control signal curves is developed based on this
thought.
Now the MA controller has several equivalent general forms:
r(k) = f(u0(k), y d(k)) with equivalent form
u0(k + l)=uead(k) = fu(u0(k), y d(k)) (4.15)
In Chapter 4 we use wstabie as the "representative" of yd, and it denotes desired heater
temperatures (combination) causing sheet temperatures still at the corresponding yd values (the relationship between wstabie and yd is in Table 4.1). Then Equation (4.15) could
be transformed as:
r(k) = g(u0(k), u sMt(yd(k))) with equivalent form
u0(k + l)=uead(k) = gu(u0(k),usMe(yd(k))) (4.16)
The index k means the Jk* cycle, t is the time of the turning point between the rising and
descending curves, as is described in the former subtopics. All of the function
expressions don't contain feedback value of sheet temperature y(k), showing the MA
controller is an open-loop controller.
Upon the definition above, curve expression equation (4.14) could be written in a new
form for the MA controller with exchange of indexes as Equation (4.3) ~ (4.5). Define
the form g' 1 according to the function g u in Equation (4.16), then
63
u,(k) = g ;1{u0(k),t(k)) V0005'(w0(k)-600) + 600, when 0 < t <r (rising curve) (4.17)
g-o.ooi8(,-r) ( ^ (A;) _ 100)+I°°_t w n e n T < t < T (descending curve) (4.18)
Here t(k) denotes the t second within the MA cycle with the index k.
Now selecting x for each cycle becomes the core of the newly introduced controller.
Since uo(k) and wstabie(fc) are known at the beginning of the fc* cycle, and the expressions
of the two available kinds of curves are determined, unique uend(k) will come out based
on each determined x(k). In order to reach the best control results, x(k) is selected so that
the difference between u ead(k) and wstabie(fc) is reduced to its minimized value
(theoretically, zero).
MATLAB optimal toolbox command fsolve.m could be applied to solve the equivalent
optimization non-linear problem:
Mr W " "stable ( f c ) = 0 „ ^
UT(k) = g-T\u0(k),T(k)) ' '
The usage of fsolve.m has a general form: X = FSOLVE (FUN, X0). X0 is the initial
value of X before the iteration process, when the error is less than the tolerance X is
thought to be solved for the equation FUN(X) = 0. Besides, the two possible cases of MA
(heater temperatures are not able to rise or descend to the desired range by the end of the
current cycle period) are discussed and examined before the usage of fsolve.m.
Note that computed values of x could not be directly applied as the control command
signal; it is necessary for us to add a transforming step to transfer x into desired heater
temperature data at every second of the corresponding cycle. Due to the saturation block
within each heater element and the directly control property of MA, the given control
signal source for MA could be generated as in Fig. 4.6, which depends upon x:
64
Flag Edge L _
Flag Edge 1
Fig. 4.6: Decoupled Forced Control Signal Source for MA
Both the positive "Flag Edge" and the negative one give step signals with high absolute
values, and the negative step signal happens at the Xth second. Such a compound signal
will satisfy the saturation block—upper bound before T and lower bound after r, and it
will be transferred by the pre-processing module into the curves we desire, which are
described by Equation (4.14).
Now the Dual-Mode Controller is completely formed:
(1) At (before) the beginning of each cycle (specified as the k^ cycle), the values of
Wstabie(fc) = wstabie(v<i(fc)), containing both «stabie_edge(fc) and «stabie_center(&), are computed
upon the linear relation in Equation (4.10) and the desired sheet temperature constant
yd{k) of the A* cycle.
(2) Then the difference between wstabie(fc) and the current heater temperature uo(k) at the
beginning of the A* cycle, that is, u0(k)-ust!lblt(k), is computed for every heater. If
u0(k) -wstable(&) of all the heating elements is smaller than the desired tolerance, then
the classical PID control mode (Mode 0) will be carried out for the fc* cycle.
Otherwise, if w0 (^)~ "stable (^) of some heater(s) exceeds the value of the desired
tolerance, then the mode of adjustment (MA, Mode 1) will be carried out for the k^
cycle.
(3) The MA controller shown in Equation (4.15) and (4.16) will be activated when MA is
selected. The computed output r(k) for each heater will be applied to the external
9 To Pre -processing module of heaters
(i.e. virtual heater elements )
65
signal source in Fig. 4.6, in order to compute ideal control signal u t(k) for every
moment t within the cycle.
The complete structure of the dual-mode controlled system is finally designed as in Fig.
4.7. Fig. 4.7 shows the dual-mode controlled system is structured as a hybrid cascade-loop syste m under the PID control mode, or a hybri d open-loo p syste m under MA,
since the inner loop of PID mode and the open loop of MA pass real-time signals, while
selection of modes and the switching point r happens at most once per cycle. The legend
is listed as follows:
(1) Colors: light green flows denote actual input signals, red flows denote actual output
signals with their feedback routes, and purple diamonds denote mode selectors.
(2) Flow patterns: Wide, hollow arrows denote values computed only once per cycle
(at/before the beginning of each cycle), and 4-line arrows denote real-time values.
I Externa l Forced Source for MA
Fig. 4.7: Block Diagram of the Dual-Mode Controlled AAA Thermoforming Machine
4.5. Experimental Results
66
Now we carry out a finite-time simulation in the form of a script file, in which the desired
sheet temperature
[150, k<5 y" [170, k > 6
The temperatures are in Celsius, and k denotes the corresponding cycle number.
Upon the given ydk), the MATLAB codes (main script and MA controller function) are
provided, in which the dual mode selection part is provided within the main script file,
while the MA controller is provided within the function file called by the script.
Based on Fig. 4.7, we can design the flow charts of the expected script and the MA
controller function as Fig. 4.8:
67
Main Script
MA Controller Module
Fig. 4.8: Flow Charts of Script and MA Controller Function
68
Then the MATLAB codes could be easily composed following Fig. 4.8, which is attached
in the part of appendix.
Fig. 4.9 shows the results of the dual-mode control, especially the ability of switching
between the two modes according to the given tolerance.
200
500
400
w 30 0 -& a. 200
I -100
1000
1000
sheet temperatures - time plot
3000 Time (s)
heater temperatures - time plot
2000 3000 Time (s)
4000
2000 3000 Time (s)
4000
5000
5000
6000
6000
11
0.8
0.6
0.4
0.2
0 i ' • • '
mode - c
•
ycle plot i
i ' • • ' •
-
-
-
-
6000
Fig. 4.9: Data Collected from a Dual-Mode Control Simulation with Fixed Kp = 14
69
The 3rd plot shows the mode switches with time. The read marks denote when the
commands of modes are generated and become valid for the entire cycle.
It can be noticed that the examining module asks the controller to switch to MA at the
beginning of the 6th cycle (when yd changes from 150 to 170) and come back to the PID
control mode at the beginning of the next cycle. When an obvious change appears on
desired sheet temperature yd, the examining part of the program script will catch it, and
switch to the MA (mode = 1) if any of the 12 heating elements satisfies
|Mend(£)-M()'d(fc+l))|L > t o l e r a n c e • After some cycle(s), the system will switch back to
the original PID control mode (mode = 0). Since the batch production of sheets request
the heaters generally to stay between 100°C ~ 250 °C, MA lasts only one cycle in most
cases.
The dual mode controller could be improved in its yd- wend_desired linear model, as well as
the PID controller used in Mode 0. The prospective improvement will reduce the
opportunities of unnecessary mode switching caused by the actual nonlinear model and
produce smaller errors of control results (sheet temperatures) under Mode 0.
70
Chapter 5: Miscellaneous Improvements
In Chapter 4 we established an applicable dual-mode controller, which can intelligently
switch between MA and the PID control mode according to the heater temperatures.
Nevertheless, attentive observation tells us that this initially configured dual-mode
controller is still far from perfect and needs improvements. We are about to carry on
further verification on system model and parameters' configuration of the controller in
the following Chapter 5, in order to achieve improvements on performances, especially
preciseness of control and reduction of unnecessary mode changes.
5.1. Improved Modeling of the Plant Based on Ending Output Values
Chapter 4 provides an acceptable control plan as in Fig 4.6. However, it is noticeable in
Fig. 4.6 that a 5 Celsius error exists between the experimental uend(k) and uo(k), and both
of them are expected to be equal to the corresponding wstabie(&) in Table 4.1 and Fig. 4.3,
which converts desired sheet temperatures y<i(k) into the corresponding desired
ending/beginning heater temperatures wend(&) = uo(k+l). It is still acceptable that the
difference between the experimental wend(fc) and uo(k) is within the range of the declared
tolerance; Fig 4.6 is an example of this case. Nevertheless, since we use a linear model of
plant to carry out all the experiments with a linear range centered at 150°C while the
actual oven plan is not linear, the difference between uend(k) and u0(k) will become more
obvious when desired sheet temperatures further from 150°C are needed and the system
obeys the original control plan. If the difference between u end(k) and uo(k) exceed the
tolerance, serious unexpected accidents will happen, in which case the oven works but
the efficiency of the mass production is halved and much more raw material are wasted.
Fig. 5.1 gives us an example of such accidents, where we start the dual-mode controlled
fl50, k<5 system with the desired sheet temperature y d(k) = i , and compress the
71
tolerance range to ±10 °C. The temperatures are in Celsius, and k denotes the
corresponding cycle number.
250
500
— 400 CO 3 V)
8 a. E 0)
300
200
100
I
sheet temperatures - time plot
1000
1000
3000 Time (s)
heater temperatures - time plot
2000 3000 Time (s)
mode - cycle plo t
4000
6000
f i ' i T r r
5000 6000
1(
0.8
0.6
0.4
0.2
0
h- 1
i
1 i 1 > 1 1 ^ I 1 — i < 1 r
-
-
-
2000 3000 Time (s)
4000 5000 6000
Fig. 5.1: Unexpected Alternation of the 2 Modes
Fig. 5.1 shows Mode 1 (MA) and Mode 0 (the classical PID mode) alternately take
control of the following cycles, which is unexpected and desired to be prevented in the
72
previous work of controller design. It is directly caused by the difference between uend(7)
and w0(7) at the 7th cycle, which appears larger than the allowed tolerance (although the
ending sheet temperatures yend(7) at the end of the 7th cycle are acceptable) and cause the
functional part of mode judgment to "think" that MA should be used at that moment,
while real cases are not necessarily so.
The reason behind is discovered by further analysis: the modeling methodology
demonstrated in Fig. 4.2 is based on steady-state outputs of the oven model, yet in cycle-
to-cycle production the sheet temperature outputs sometimes seems not likely to reach the
steady state within the relatively short cycle length. In other words, the heating process
with the initial condition equal to ustabie(fc) cannot manage to drive heater temperatures
back to wstabie(fc) within one cycle in some occasions. The reasons could be classified into
2 types: (1) K p is not big enough (usually happening with large yd) so that the sheet
temperature rises somewhat slowly, or (2) Kp is too big (usually happening with small yd) so that after a big overshoot the sheet temperature cannot come back to y d on time.
Therefore, this problem could be relieved if the desired wend_desired(fc) is selected a bit
higher than uStabie(fc) when Kp is not big enough, or a bit lower than wstabie(fc) when Kp is
bigger than 14. The specific implementation comes with the following analyses of Part
5.1 and 5.2.
The specific procedures to establish such an improved converter model are:
(1) Use the PID controlled system as the prototype. Set the simulation time equal to the
cycle length (600s).
(2) Based on the experimental data in Table 4.1 and Equation (4.10), slightly change «o
and the comparative value set in the comparison block at the end of the PID controller
module, and then simulate. When the heater temperatures at the end of the cycle reach
or approach the initial values, they will be considered as desired beginning/ending
heater temperatures Ud(k).
73
However, ideal Ud(k) are subject to the controller used in the closed-loop system to some
extent. In other words, different controllers have effects on Ud(k). According to the
previously known experimental results, it is necessary to reduce the proportional
coefficient K p when yd is smaller than 150 and increase Kp when yd is larger than 150.
Table 5.1 shows the results of simulations:
yd u d actua l y_end after 600s edge cente r edg e cente r
120 130
140
150
160
170
180
154.7000
167.0000
177.4000
188.9000
201.8000
215.6000
227.5000
137.4000
149.5000
159.6000
170.5000
182.5000
194.8000
205.8000
119.0
128.5
138.6
148.2
156.7
165.5
173.4
121.8
131.7
142.1
152.1
160.7
169.7
177.7
Table 5.1: Collected Data for New Model of the Converter Module (yd -> ud)
Use ya as the horizontal axis and Ud as the vertical axis, we can plot Fig. 5.2, which
indicating the linear relationship between calibrated Ud and given yd in Table 5.1.
74
(sri!S|9o)
Q. E t-1
3
230
220
210
200
190
180
170
160
Relation beween given yd and corresponding ud
i i i i i At
,m'
,A*
„ • ' ' , > - ' '
- - ' ' , • ' „ • ' , - ' '
• . ' ' ' ' . - • ' '
«' ^-' ' 150
140 (
•can
, • ' '
, ' ' >'
i i i i
- - • - u dedge
- - • - ud cente r
i
-
_
120 130 140 15 0 16 0 yd - Temp . (Celsius)
170 180
Fig. 5.2: Linearity of Data Collected for the New Converter
Then a new linear relationship in Equation (5.1) could be computed using "polyfit.m", as
we have done in Part 4.2:
w, i_edge
U d_ceoter
1.2154 1.1393 y,+
8.0679 0.5071
• (5.1)
This linear relationship will be used as the new converter model in the following design
parts.
75
5.2. Flexible PID Control Design
Re-modeling the converter can improve the "stability" of the converter by reducing the
difference between uo(k) and uend(k) and thus preventing the unnecessary switches to MA,
However, the system can be improved in many other places.
Now we take a detailed review at the sheet temperature curves of each cycle Fig. 4.9. In
the first 5 cycles, the curves have a slight overshoot and a relatively short stable time; yet
in the following 4 cycles, when the desired sheet temperature yd switches to 170°C and
the controller works in the PID control mode (the 7th, 8th, 9th, 10th cycle), each curve keep
rising during the corresponding 600 seconds and don't have any overshoots. Moreover,
all of the ending temperatures (wend) of heaters at these cycles are lower than the desired
value 170, which means the proportional coefficient K p of the PID controller should
become larger than the original value 14 in order to reach better control results.
After some attempts, a decent Kp = 40 has been reached for the case where yd = 170. Fig.
5.3 visually compares the sheet temperature curves (one cycle) with Kp = 40 and with Kp
= 14.
76
180
160
140
120
Step Respons e Curves o f Sheet Temperatures : ( 1 ) K p = 1 4 ; ( 2 ) K p = 4 0
a 10 0
20
- K = 14 , Centra l Senso r
K = 14 , Come r Senso r
- K = 40 , Centra l Senso r
K_ = 40 , Come r Senso r P
600 Time (s )
800
Fig. 5.3: Step Response Curves of Sheet Temperatures (yd = 170): (1) Kp = 14; (2) Kp = 40
From Fig. 5.3 we can calibrate the performance parameters for the two cases, which are
listed in Table 5.2:
Comparison of Performance
Kp = 14
Kp = 40
Sensor
central corner central corner
Delay Time (50%)
(s) 139 150 138 148
Rise Time (10%-90%)
(s) 299 356 285 333
Settling Time (A = 2%)
(s) 537 771 446 710
77
Table 5.2: Performance Parameters of the two Control Plans in Fig. 5.3
According to those performance parameters, it is concluded that Kp = 40 leads to better
performance compared with Kp = 14. The main reason is the overall response time has
been reduced with the new Kp = 40, especially the settling time (nearly 100s).
Use the same way to find out the other Kp respectively corresponding to the cases with yd
= 120,130,140,160, and 180, then a data list of Kp related to yd appears as Table 5.3:
Robustness Test yd and corresponding proper Kp
yd K p
120 130
140
150
160
170
180
3 4
7
14
25
40
58
Table 5.3: Performance Parameters of the two Control Plans in Fig. 5.3
It is necessary to build some certain relationship or functional model between Kp and yd, in order to realize the auto-selection of proportional parameters. Apparently, linear
models can hardly describe the relation between Kp and yd in Table 5.3; a second-order
model would be a better choice.
Use MATLAB command polyfit.m, and we can establish the second-order model below:
Kp = 0.0182y* - 4.5536yd + 287.5000 (5.2)
78
Then we use MATLAB command polyval.m to generate a smooth second-order curve
according to Equation (5.2). We put both this curve and the data points in Table 5.3 in the
following Fig. 5.4, in order to examine the accuracy of the second-mode model for auto-
selection. Fig 5.4 shows the second-order relation fits well with the Kp determined from
experiments; thus the second-order relation of Equation (5.2) can be used as the criterion
of auto-selecting Kp in the rest part of the thesis.
Flexible K Relate d to Given y , p d
(Discrete Point s and Fitting Curve )
150 y . (Celsius )
Fig. 5.4: The Second-Order Curve of Flexible Kp and Data Points Used for Fitting the Curve
Redo the simulation adopting both the new converter (5.1) and the variable proportional
fl50, it<5 parameter K p selection (5.2). Upon the same reference signal y d(k) = -180, k>6
79
improved performance appears as in Fig. 5.5, where the iinexpected alternation of the 2
modes" in Fig. 5.1 has disappeared.
300
55 200
8 a. E
100
600
S 40 0 J2
(0
Q. E a)
200
1*
"8 0.5
1000
1000
sheet temperatures - time plot
3000 Time (s)
heater temperatures - time plot
2000 300 0 Time (s)
mode - cycle plo t
4000
2000 3000 Time (s)
I m 4000
5000
6000
6000
5000 6000
Fig. 5.5: Improvement of the New Converter and the Dynamic Kp Selection
5.3. Performance Analyses & Discussion
80
The inductive equations (5.1) and (5.2) represent all the improvement work in Part 5.1
and 5.2. Then, some tests must be carried on to examine the results of such improving
implementations and thus to determine further steps. Since that performance becomes
unsatisfactory outside the linear range of the oven model mainly displays in the form of
unexpected MA cycles, as shown in Fig. 5.1, the minimal allowable tolerance (MAT), which means the minimal tolerance preventing the system from such unexpected MA
cycles, can be used for measuring the performance of the dual-mode controlled systems.
Endow the dual-mode controlled systems represented by Fig. 4.7 with
u d_edge
U Reenter
1.2154
1.1393 yd +
8.0679 0.5071
Kp = 0.0185y* -4.6510^+295.2872
And carry out the simulations for several cases where yd = 120, 130, 140, 150, 160, 170,
and 180, which can generally cover the operating range of the machine. We simulate 10
cycles for every case above, since a system not encountering problems with unexpected
MA cycle in 10 cycles can be classified as in the normal operating state. The
corresponding MATs are calibrated and collected in Table 5.4:
Robustness Test minimal allowable tolerance (in Celsius, 10 cycles)
yd
120 130 140 150 160 170 180
Original Converter & Proportional Coefficient
-5 2 5 6 10 12 13
Improved Converter & Proportional Coefficient
1 2 2 2 2 9 8
81
Table 5.4: Comparison of Minimal Allowable Tolerances (MATs) of Original Plan (Converter & Kp) and
Improved Plan
Table 5.4 shows that improved plan helps to reduce necessary tolerances, which means
the Ud(k) (and thus y<nd(k)) fits better. Positive tolerances mean that any tolerance with
less absolute value can cause unexpected MA cycle k, accompanying with:
w0(^)-M(i(A;)>|tolerance| (5.3)
While negative tolerances mean any tolerance with less absolute value causes such a
problem in the reverse direction:
u0 (k) - ud (k) < -|tolerance| (5.4)
More obvious contrast between the 2 group MATs (absolute values) could be obtained in
following data points and fitting curves in Fig. 5.6:
82
Absolute Values of Minimal Allowable Tolerances (MAT) 1 4 , , 1 1 ,
Ol i i I - J I I 120 13 0 14 0 15 0 16 0 17 0 18 0
y. (Celsius)
Fig. 5.6: Comparison of Minimal Allowable Tolerances (MATs) of Original Plan (Converter & Kp) and
Improved Plan
Fig. 5.6 shows that the new converter and Kp can reduce the MAT to a rather low level
during the usual operating sheet temperature (yj) zone (140°C ~ 160°C), which reflects a
practical advantage of the new plan.
5.4. Dual-Mode Variable Cycle Control (I): Theoretical Preparation
It could be concluded from various tables and figures that the dual-mode control system,
with the help of flexible K p and improved converter, reaches a high performance level
83
during the consecutive cyclic mass production process. However, it is noticeable that all
the previous research work excludes some other considerations of design because of the
limitation of the hardware; the most obvious example is that at least one whole cycle has
to be "wasted" if MA is activated upon the default design with fixed cycles. Now
research in other respects concerning the oven has made the progress about the
realization of some kind of semi-variable cycle control; that is, an operator is necessary to
decide the length of each cycle (or consecutively use the last cycle duration) before each
beginning. According to the new background, we can pay attention to the design of
automatic adjustment module of cycle length, despite the fact that the real variable cycle
control is still not technically available.
Before any specific design work, it must be realized that variable cycles are used for
saving unnecessary time from original "clumsy" MA cycles. Note that Fig. 4.4, 4.5, and
4.9 shows cycles of the classical PID mode can hardly be reduced from the current level
of 600s, since (1) it generally takes more than 560 seconds for the heater temperature to
return around the beginning temperature, and (2) in the PID control mode the control
results must be guaranteed. Now the variable cycle design could be explicated as the
design of shortening MA cycles while fixing the PID mode cycle duration to 600s.
In addition, we need to set up a Boolean value to examine which of the two fix-shaped
curves (the rising or the descendent one) should be adopted; this value is updated every
MA cycle with the name "submode". The case that submode = 1 denotes the rising curve
should be adopted, while the opposite case denotes the descendent curve should be used.
Refer to Equation (4.15) and (4.16), the new MA controller regarding uncertain cycle
period TV and the submode of the current cycle could be defined in the form of:
(submode(k), TV(k)) = fv (u0(k), y d (k)) with equivalent form
^ ( * ) = K , ¥ ( * ) = / ; ( « O ( * ) . yAV) (5-5)
-or
84
(submode(k), Tv(k)) = gv(u0(k), u d(k)) = gv(u0(k), u d 0 (k))
with equivalent form
K«»(*) = KrT(*) = £"("(>(*)' u d(k)) = 8uv(u0(k), u d 0 (k)) (5.6)
Here f", g" , and rv indicate that those variables or functions are related to variable cycle.
Please note that not all the cycles has a TV; TV is valid only in MA cycles.
Besides, changeable cycle duration actually weakens the inherent of cyclic control. It
makes the operator free to set up yd (thus Ud), which can also immediately become valid
at any time point based on the variable cycle design. The form u d0 emphasizes that rv of
each MA cycle only depends on Ud read at the beginning of that cycle. If a new yd (ud) is
given during a cycle (when the time index is t), and \u d -ut\ is outside the range bounded
by the given tolerance, the controller in the form of (5.5) or (5.6) will
(1) Terminate the current cycle;
(2) Re-compute new xv\ (3) Begin a new MA cycle.
All of the three steps take place concurrently.
Upon the redefinition above, curve expression equation (4.14) could be rewritten for the
new MA controller. Define the form g~) according to the function gv in Equation (5.6),
then
85
ut(k) = gv^(u0(k), '(*). submode(k))
<Tauu5'(u0 -600) + 600,0<t<tv (submodel) = 1) (5.7) or
-0.0018,, 100 , . 100 ut = e-°uul8'(M0 - — ) + — , 0<t<rv(submode(k) = 0) (5.8)
Here t(k) denotes the f* second from the beginning of the MA cycle with the index k. Note that (5.7) and (5.8) do not become activated concurrently. At the beginning of each
MA cycle, the relation between M0 and u d=ud(yd) will be examined. If wo is smaller than
Ud, Equation (5.7) will be adopted so as to reduce u to Ud at the time point xv; otherwise,
Equation (5.8) will be adopted to raise u to Ud at rv.
Then the MATLAB optimal toolbox command "fsolve.m" can be applied to compute xv
as the same way in Chapter 4, following the way of solving an equivalent optimization
problem in Part 4.4. The corresponding optimization problem has the form as Equation
(5.9):
ut(k)-ud 0(*) = 0 (5.9)
uT{k) = 8v,riu0{k), T v(k), submodel))
However, since mono-exponential curves replace dual-exponential curves and become
the MA control output, it is simpler and more dependable to use the command "log.m"
instead, which carries out natural logarithmic computation.
The whole structure of the variable cycle control system could still follow Fig. 4.7; the
meaning of t(k) changes to TV, however.
Next, an experiment is carried out upon the improved variable cycle control system with
a continuous input yd signal.
86
5.5. Dual-Mod e Variabl e Cycl e Contro l (II) : Visualize d Real-Tim e Commands & Logical Design of Variable Cycles
It is possible to draw a conclusion at the theoretical stage from Part 5.1-5.4. Compared
with its counterparts in Chapter 4, the current simulation design requests some new
elements: real-time commands, variable cycles, auto-detection and response of change on
input signals, as well as monotypic curves for MA cycles. Since the variable cycle
periods depend on both the real-time input commands, which totally depends on the
operator's desire, it is difficult to combine those functions with the existing MATLAB
script file. In contrast with that, Simulink functional blocks can read and write data
from/to the workspace for MATLAB in the memory at any time during any (call of)
cycles, and thus it is appropriate to realize the new functions by adding blocks or
structurally changing the existing Simulink diagram of the dual mode control system.
Considering the special characteristics of the Simulink blocks and connections, we should
design:
(1) A visualized input signal (yd) source;
(2) A functional block of auto-detecting the changes of yd and determining whether to
stop the current cycle;
(3) A new forced signal source block for open-loop control during the MA cycles.
Now we start to give detailed instructions from the beginning. The following y<i(0 upon
the time axis is given in order to simulate the occasion that the desired sheet temperature
is adjusted with real-time operations.
yd(t) = 150, ?<1300 170, 1300<r<1350 (5.10) 140, f>1350
87
Obviously such a yd is not limited to the bounds of any known cycles, which is
completely different from the yd used in the last chapter. Since the essence of the
MATLAB main script file is calling one-time simulation with the command "sim" once
per cycle, the ya described in Equation (5.10) should be represented as a part of the
Simulink block diagram instead of staying in the script program file. In fact, this
modification meets the "decoupling" principle of system engineering.
Visualize the yd in (5.10) with Simulink elements as the block diagram in Fig. 5.7:
e-^i Clock A
Cumula until the enc
-C-
ed tote of the
^ ) L .
Itime last cycle
140
triaaer time II
I7n
* :\
H v Switch
Switch
complex signa l ±( WK
Out1
150
Fig. 5.7: Simulink Diagram Used for Simulating the Input yd Signal of Equation (5.10)
In this block diagram, the clock counts the time from the beginning of the cycle to the
current moment, while the constant block cumulates the time from the beginning of the
entire simulation to the end of the last cycle. Therefore, the sum of them both actually
functions as uninterrupted timing from the beginning of the simulation, and it helps to
accomplish all the switching movements of yd by giving thresholds to the two switches.
Then, we switch to the design of detecting changes on yd and breaking off a cycle. At first,
note the length of cycles in PID control mode is 600s, which is considered as the
88
"natural" cycle length of the Simulink block diagram system. As is expected in Part 5.4,
"unnatural" discontinuance of a cycle only happens when a new yd (ud) is given during
the current cycle (with cyclic-internal time index t), and the current heater temperatures
Ud satisfies that \u d -ut\ is outside the range bounded by the given tolerance. Besides, in
general cases TV of MA cycles is shorter than 600s, which also require the system break
from cycles with a default duration of 600s.
Gathering those requirements and conditions above, we conclude conditions for the
system to break out of the current cycle:
(1) A new yd is given, and \u d - w, | < tolerance, where Ud is decided by the new given yd;
or
(2) The system is in a MA cycle, and the current cyclic-internal time has reached xv.
Following these logical relations, we can design the functional block diagram of auto-
detecting yd and "unnaturally" discontinue a cycle as in Fig. 5.8.
89
Stop Simulation
BreakSimulation
To Workspace
Fig. 5.8: Simulink Diagram Used for detecting changes on yd and deciding whether to exit the current cycle
In Fig. 5.8, the magenta, orange and green tags (in the order from up to down, below the
most upper blue tag "Abort Simulation Module") represent all the cases necessary for
composing such logical relations. The block of time unit delay is used for endowing the
state that "a new yd is given" with an accurate definition of \yd (t) - y d(t-1)1 > 0.5, and
the switch on this route prevents the potential error of invalidyd(t-l) when t = 0. The
other switch treats the maximum value of the 12 dimensioned (for 12 vectors) vector TV as
the threshold value; changes (from 1 to 0) on the output of that switch represents that the
system judges that the current MA cycle has finished. If a cycle is interrupted for the
reasons above through the "Stop Simulation" output, the end value of the time-based
vector "BreakSimulation" is 1. Such a value of each cycle is collected for statistical uses
and one of the stop conditions of the whole simulation process.
90
As for the design of new forced signal source block for open-loop control during the MA
cycles, the variable "submode", deciding if the system should choose rising curve or
descending curve, should be adopted as the threshold value to switch between the
positive step and negative step used in Fig. 4.6. Besides, it is important to notice that xv
generally varies from heater to heater. It would not like to cause problems in fixed cycle
control, since that would generate neither variation on cycle time or new cycles; however,
the case is totally different in variable cycle control. Those heaters arriving at their
corresponding Ud earlier will keep tracking the pre-determined rising or descendent curve,
when no restriction is posed; it will cause extra deviations from Ud for these heaters at the
end of the cycle. In order to prevent this case, 12 switches are added with thresholds
valued as xv(n) for the /1th (n ranges from 1 to 12) heaters; if the actual temperature of
some heater reaches Ud but others do not, the switching function can keep the temperature
of that heater sticks to Ud until the break-off of this MA cycle.
Fig. 5.9 shows both the entire forced signal source block for open-loop control in MA
cycles and a decoupled version only regarding one heater.
91
Q > tao{n) is used as the threshold value
to generate rising curve Flag Edge
Flag Edge 1
generate descendant curve
( 2 ) -
W _ ! I Switc h
r v j
e
M e
e 7M
:M
Switch 11
Switch 2
m m
m te
• X D 0ut1
3& ^
m-B-
92
heater de s
u d 1
clock_in_cycle tao is used as the threshold value
to generate rising curve
Flag Edge m to generate descendant curve
Flag Edge 1
m Switch 1
- K J D Output Signal
Switch
submode
Fig 5.9: (1) Forced Signal Source for Open-Loop Control in MA Cycles (Variable Cycle Design)
(2) Decoupled Version (One Heater) of the Signal Source
The two functional blocks in Fig. 5.8 and Fig. 5.9 are connected in a way presented in Fig.
5.10, in which the 2 blocks are colored in red. In Fig 5.10 the rightmost block represents
heaters, and the output of this block is actual temperatures of heaters. The signals coming
from the bottom and flowing to the 2 sum blocks denote the real-time sheet temperatures.
So far, the Simulink block design for variable cycle control has been finished. The next
step will focus on the MATLAB script, which calls the simulation command of the
Simulink block diagram in a certain way.
93
actual heater lempsratures
Lead Controllers Initia l Heaters Temp
Fig 5.10: Connection of the 2 functional blocks marked in red
5.6. Dual-Mode Variable Cycle Control (III): Design of MATLAB Script
and Simulation Analysis
Following nearly the same way as in Part 4.5, we hereby begin preparing for a simulation,
which still succeed the form of a script file that runs the Simulink block diagram once per
cycle and an MA controller function.
Based on the data-flow diagram Fig 4.7, and all the design work above in Chapter 5, we
make slight modifications to the original flow charts of the script and the MA controller
function of the fixed-cycle, fixed K p dual-mode control, and then achieve an updated
version of flow charts of them both as Fig. 5.11. The codes are attached in the appendix.
94
Main Script
mode = 0
< ' |uO(k)-u_d(k)|>toleranc e " •
t
Compute NewKp
mode = 1!
MA Controller selection 01
tau
Call the simulation of Simulink md l file
Update Data. Cumulate Cyc.e
Information. Expand the Time Axis
MA Controlle r Module
/( S t 3 r t ) /
/ Rea d / / inpu t /
/ variable s /
/ Y / / \ / /
submode = 1
" Compute tau_v for rising curve
u_0(k)'
•
: " .
'
jm ^> N
v
sufenode=0 '
" Compute tau_v for descendant'
curve
Draw Plots
f .Eric f \ )
Fig. 5.11: How Charts of Script and MA Controller Function for Variable Cycle and Variable PID Control
95
Use the signal indicated in Equation (5.10), that is
yd(t) = 150, r<1300 170, 1300<*<1350 140, r>1350
as the input signal during the entire simulation process, the output data and the switch of
modes are clearly shown in the output figure (Fig. 5.12) as results, which is similar to Fig.
4.9 and Fig. 5.5.
96
desired sheet temperatures - time plot
1 1
1 1
I I I ! 1 1 1 1 1 1 1 I ' 1 1 1 1
1 i i I
1 »
500
500
1000 150 0 200 0 Time (s)
actual sheet temperature s - time plo t
2500
1500 2000 Time (s)
actual heate r temperatures - time plo t
1000 150 0 200 0 Time (s)
mode - time plo t • • - n • 1 —
2500
3000 3500
3500
3000 3500
500 1000 1500 200 0 Time (s)
2500 3000 3500
Fig. 5.12: Data Collected from a Dual-Mode Control Simulation with variable cycles and Kp, as well as the
Instant Response Mechanism
97
It could be clearly found that Fig. 5.12 shows the ability of switching between the two
modes and extending or shortening the current cycle period according to both the given
tolerance and the commands from the operator, which makes Fig 5.12 different from Fig.
4.9 and Fig. 5.5. The thought of comparing the input of desired sheet temperatures and
the output data in the same time scale is applied to examine if the ability of immediate
response of the system appears as expected and the cycle lengths are able to be flexible to
the given commands.
In Fig 5.12, we use a temperature of 0°C to represent that no plastic sheets are heated
during any MA cycles. It shows clearly that the 1st cycle is an MA cycle, because the
initial heater temperature of the first cycle, «o(l), is determined to equal to 27°C as a fully
cooled down temperature. Please notice that the first cycle improves the performance by
only taking up 68 seconds rather than 600s in the fixed cycle design; the reason is that
MA cycles of variable cycle design expect to adjust the heater to the desired temperature
in the possible shortest time, while the MA cycles of fixed cycle design expect to adjust
the heater to the desired temperature at the end of the 600th second. Besides, the system
gives response immediately (reflecting in the actual heater temperatures and the switch of
the mode) to the 2 changes in yd, which respectively happens at 1300s and 1350s: At
1300s, the current PHD control cycle ends and is replaced with a MA cycle; at 1350s, that
MA cycle ends and is replaced with a new MA cycle. Afterwards, the system recovers to
work with yd = 140. All these above indicate the current control plan is mature and robust
enough under the real mass production circumstance.
98
Chapter 6: Summary & Future Work
In summary, the prototype of actuator and reduction of the excursions of heaters (Chapter
3), the design of a fixed-cycle dual-mode system producing sheets cyclically (Chapter 4),
and miscellaneous improvements of the system designed above (Chapter 5) have been all
realized and generated satisfying experimental results. The summary and future plans are
conducted within the following subtopics.
6.1. Summary
After experiments and simulations, we can conclude that the past research work is orderly
and logically organized from Chapter 3 to Chapter 6, as is described in the next 4
paragraphs, based on the knowledge of the general research background listed in Chapter
1 and the heater temperature-sheet temperature modeling work demonstrated in Chapter 2.
Chapter 3: Find out the prototype of the actuator and its limitation of response speed.
Insert a preprocessing module before the plant model so as to optimize the setpoint
curves and to reduce the limitation of hardware to its minimum. Theoretical analysis of
the function of the preprocessing module is also conducted.
Chapter 4: Design a dual-mode cascade control system with fixed cycle. The 2 modes are
the normal PID control mode (Mode 0) and the mode of adjustment (Mode 1). The 2
calibrated outputs are: (a) real-time monitored sheet temperatures; (b) sheet temperatures
measured at the end of each cycle, which is used for decide whether to switch between
the modes. The TILC model for the AAA machine by G. Gauthier and B. Boulet[25] is an
important reference, while the current topic has developed further by adopting control
signal (heater temperature) varying in cycle. The designed system characters that: at the
end of each fixed cycle, the system will decide its mode; if not all of the heat
temperatures (u^ik)) are within the tolerant range, which centered at the desired values
99
ud (k+V) derived from the desired sheet temperature y d (k +1) by the converting module,
the system will switch to the adjustment mode, and the main task of the following (k+lf1
cycle is to adjust heater temperatures to the desired values ud (k +1).
Chapter 5(1): Improve the system designed in Chapter 4 with a more suitable converting
module ( y d(k)->ud(k) ) and a flexible PID controller, in order to reduce the
incompatible effect brought about by the nonlinearity.
Chapter 5 (2): According to the real process of control and the preference of instant
response to given commands, redesign a dual-mode cascade control system with variable
cycle, which can automatically adjust heater temperatures immediately bearing new
commands given by the operator. Critical modification of Simulink block diagrams and
MATLAB codes is made to simulate the effect of instant responses, including the
introduction of an abort-simulation module, the change of the forced signal selection
module for the mode of adjustment, and the change of the real-time input signal (yd (t) ).
Finally, the system will respond immediately upon any modified desired sheet
temperature command and change its mode if it is necessary; the length of each adjusting
cycle is computed for its minimal value.
6.2. Future Work
The previous research has posed a feasible continuous control plan from sketchy
definitions of functional modules to detailed connections of every Simulink component;
however, it is still far from perfect. There is still much room of improvement, which will
enhance the computer control system by removing its bottlenecks if realized.
Design work in Chapter 4 ~ 5 is based on the coordination of PID control mode and
mode of adjustment; if the ending heater temperature of a cycle u end {k) deviates from the
desired value u d(k+l) for the next cycle, which is computed from the given sheet
100
temperature setpoint y d (k+1), the mode of adjustment will become valid until the end of
the (k+l)^ cycle. That mode is designed for only adjusting heater temperatures rather
than considering any temperature change within the sheet in the oven, however; thus,
mode of adjustment will waste more or less plastic materials, and the current research
result of the dual-mode system is not economical enough. One possible solution is to
design amore complex algorithm (u t(k + l),T(k + l)) = f(uend(k),yend(k)) while abandon
the concept of modes. Compared with the dual-mode control strategy with flexible cycles,
this algorithm will decide the trend of the sheet temperature curve besides the ending
heater temperature u^ik+1) and the cycle time, in order to force the sheet temperature
to catch its setpoint at the end of the (k+ly* cycle, namely y md(k+l) = yd(k+l). From
the analysis above we can determine: if it works well, it is expected to theoretically lead
to zero material loss.
The previous research work is carried out under the presumption that all the heaters and
sensors work normally as expected. However, damage of any heater or mal-calibration
via any sensor because of hardware reasons will probably generate wrong curves and thus
lead to the loss of accurate data. Therefore, it is necessary to introduce some mechanism
of fault detection and solution. As a branch of technology, fault detection is generated
and improved for detecting the reason of systematic failure or anticipating possible faults.
The classification of fault detection depends on its basis; for example, it can be divided
into 3 types according to the cause of faults: parametric, nonparametric, and combined
diagnosis, while it can also be divided into observer and neural network detection
according to the method of diagnosis. The results of theoretical and experimental efforts
above have opened the possibility for designing a fault detection function. Since both the
problems with heaters (miscalibration of system states) and those with sensors
(miscalibration of system outputs) belong to the nonparametric type, it is expected to
realize satisfactory fault detection results through only a reliable observer.
101
Appendix
7.1. MATLAB Codes
(1) Fixed Cycle and Fixed PID Control
a) the main script of cycle-to-cycle simulation
* o " o " o " 5 * o o ' o o o o o o o o o o o o o o o o o o o o ' S ' 5 * 5 " o " 5 " o o " o ' 6 o o " o o o o ' 6 o o o o o o " o o o o o o o o o o o o o o
% script of cycle-to cycle control with dual mode controller % Q. Q .
*S "6
% A u t h o r : Shuonan Yang % "15 "o " 6 " o " o " o o O O " O O O O O O O O O O O O O O O O O * S " S " S " O " 5 " 5 " 5 ' O ' O " S " O O ' O ' S O O O O ' O O ' ^ O O ' O ' O ' O O O O O O O O O O O
c l e a r ; c l c ; run Sensitivity_Matrix;
CycleLength = 600; % length of each cycle CycleNum = 10; % numbers of cycles during the simulation tolerance = 15; % tolerance
Tdes=150; % desired sheet surface temperature heater_initial=27*ones(1,12) ; air_initial=27; % the initial values at the beginning of the first cycle, the oven starts % at a cold state.
t i m e _ c y c l e s t a r t = l ; t i m e _ t o t a l = [ ] ; T r _ t o t a l = [ ] ; T v _ t o t a l = [ ] ; h e a t e r _ t o t a l = [ ] ; a i r _ t o t a l = [ ] ; T e - [ ] ; H e = [ ] ; M_time=[] ; M= [ ] ;
for N=l:CycleNum Tdes_cycle=Tdes; heater_stable_edge = 1.075 * Tdes_cycle + 22.3510; heater_stable_centre = 0.989 * Tdes_cycle + 20.5629; heater_stable = ...
[heater_stable_edge, heater_stable_centre, ...
102
heater_stable_edge, heater_stable_edge, .. . heater_stable_centre, heater_stable_edge, .. . heater_stable_edge, heater_stable_centre, .. . heater_stable_edge, heater_stable_edge, .. . heater_stable_centre, heater_stable_edge];
% compute the desired final value heater temperature according to % the linear model and the value of the current desired sheet % temperatures
% mode examination and auto-switching if norm(heater_initial-heater_stable,inf) > tolerance
% initial heater temp, detection: inside tolerance range or not mode=l; % mode of adjustment, available when heater_initial i s far from % heater_stable for n = 1 : 12
tau(n)= hccomp(heater_initial(n),... heater_stable(n) , CycleLength);
% MA controller: tau(k)=f(uk(0), us, T); end
else mode=0;
end
sim('AAA_DualController'); % simulate the ith cycle
% make records of the data of the previous cycles to use in the % newest cycle and to draw the plots Tr_initial=Tr.signals.values(end,:); Tv_initial=Tv.signals.values(end, :) ; heater_initial=heaters.signals.values(end,:); air_initial=air.signals.values(end, :) ; time_total=[time_total; heaters.time(2:end,:)+...
time_total(end)*ones(size(heaters.time(2:end, :)))]; time_cyclestart=[time_cyclestart; time_total(end)+1]; % start point of the NEXT cycle Tr_total=[Tr_total;Tr.signals.values(2:end,:)]; Tv_total=[Tv_total;Tv.signals.values(2:end, :)] ; heater_total=[heater_total; heaters.signals.values(2rend,:)]; air_total=[air_total; air.signals.values(2:end,:)];
% save the corresponding values at the end of each cycle Te=[Te; [Tr.signals.values(end,: ) Tv.signals.values(end,:)]]; He=[He; heaters.signals.values(end, :)]; M_time=[M_time; mode*ones(size(heaters.time(2:end,:)))]; M=[M; mode] ;
% change yd after 5 cycles, as the yd in subtopic 5.1 and 5. 2 % varies, if N == 5
Tdes=170; end
end
103
% sheet temperatures - time plot subplot(3,1,1); p l o t ( t i m e _ t o t a l , T r _ t o t a l , ' r - ' , t i m e _ t o t a l , Tv_ to t a l , ' b — ' ) t i t l e ( ' s h e e t t empera tu res - t ime p l o t ' ) ; x l abeK 'T ime (s) ') ; ylabel('Temp. (Celsius) 1); grid on
% heater temperatures - time plot subplot(3,1,2) ; p l o t ( t i m e _ t o t a l , h e a t e r _ t o t a l ) t i t l e ( ' h e a t e r t empera tures - t ime p l o t ' ) ; x l abeK 'T ime (s) ') ; ylabel('Temp. (Celsius)') ; grid on
% mode - cycle plot subplot(3,1,3); time_cyclestart=time_cyclestart(l:end-l) ; plot(time_total,M_time); hold on; plot(time_cyclestart,M,'o'); hold off; title('mode - cycle plot') ; xlabel('Time (s)') ; ylabel('Mode');
b) MA controller function
9-9-9-9-9-2-9-2-2-9-&-S-9-2-9-2-2-9-9-9-2-2-2-9-9-S-9-9'9'2--9-2-9-9-9-9-S-9-2-9-S-B-2-" 5 " S " S * S " o " o " S " o " o o " o o " 5 o o o o o o o o o o o o o o ' o o o ' o o o o o o o o o o o o o
% Mode of Adjustment: controller function %
% Author: Shuonan Yang % 'S"o"o"o"o^5'o*o'o*o'o'o"o"o"o'5"5"5"o"o*o"o'o"o"o G"6"5"5^5'5"O'O'6'O"5'6'5'5'5"5'O' O
function tau = hccomp (ui , us, T)
% two special cases: only rising/descendent curv e exists ui_min=fsolve(@(ui_min)exp(-0.005*T)*(ui_min-600)+600-US,40); % rising ui_max=fsolve(@(ui_max)exp(-0.0018*T)*(ui_max-100/3)+100/3-us,400); % descendent
if u i <= ui_min % rising curve, tau = T tau = T;
elseif ui >= ui_max % descendent curve, tau = 0 tau = 0;
else % dual exponential curve, 0 < tau <T tau = fsolve(@(tau)exp(-0.0018*1)*(ui-600)*exp(-0.0032*tau)...
+ exp(-0.0018*T)*(1700/3)*exp(0.0018*tau) + 100/3 - us, 100) ; % use fsolve.m (optima l toolbox) to solve the non-linear equation % f(tau,ui,T)-us=0, which is dual exponential.
104
end
(2) Variable Cycle and Variable PID Control
a) the main script of cycle-to-cycle simulation
"o"ooooo*5'S'S'S'S"S"^"5'S'5'o"S'o"5'o"ooooooooooooooo"ooooooooooooooooooooooo'ooo
% script of variable cycle control with dual mode controller % g, _ _ Q .
% Author: Shuonan Yang % ^^^^^^^^*6"o"o'5'o"6"o''6'5'o'5*o"o',6'o'o''o',o'"5"o'o"o''o'o'o ° o "o "o 'o o o o o o o o o'5'o'o"o*o"o"o"o o o o o"o o o o
clear; clc; run Sensitivity_Matrix ;
% CycleLengt h = 600 ; % length o f eac h cycl e CycleNum_des = 40 ; % desired th e maximal numbe r o f cycle s CycleNum_ModeO_des = 4 ; %- desired th e maximal numbe r o f cycle s i n PID mod e tolerance = 10;
heater_initial=27*ones(1,12) ; air_initial=27; % th e initia l value s a t th e beginnin g o f th e firs t cycle , th e ove n % start s a t a cold state .
time_cyclestart=l; time_total=0; time_end=[] ; N_mode0 = 0 ; N = 0 ;
Tdes_total=150*ones(1,10); Tr_total=[]; Tv_total=[] ; heater_total=[] ; air_total=[] ; Te=[]; He=[]; M_time=[]; M= [ ] ;
% Se t independen t variable s K p an d Kp_las t t o prevent th e varyin g % proportiona l paramete r fro m being affecte d b y othe r operation s Kp_last = P ;
while (N<CycleNum_des)&&(N_mode 0 < CycleNum_Mode0_des ) .% set boundar y condition s fo r both tota l cycl e numbe r an d PI D cycl e % numbe r
105
Tdes_cycle = Tdes_total(end); heater_des_edge.= 1.2154 * Tdes_cycle + 8.0679; heater_des_centre = 1.1393 * Tdes_cycle + 0.5071; heater_des = ...
[heater_des_edge, heater_des_centre, heater_des_edge, .. . heater_des_edge, heater_des_centre, heater_des_edge, .. . heater_des_edge, heater_des_centre, heater_des_edge, .. . heater_des_edge, heater_des_centre, heater_des_edge];
% compute the desired final value heater temperature according to % the linear model and the value of the current desired sheet % temperatures
% mode examination and auto-switching if norm(heater_initial-heater_des,inf) > tolerance
% initial heater temp, detection: inside tolerance range or not mode=l; % mode of adjustment, available when heater_initial is far from % heater_stable Kp=Kp_last; for n = 1 : 12
[submode(n), tau(n)] = ... hccomp_variablecycle(heater_initial(n), heater_des(n));
% MA controller: tau(k)=f (uk (0), us, T) ; end
else mode=0; Kp=polyval([0.0182 -4.5536 287.5000],Tdes_cycle); 1=0; D=0; % flexible closed-loop PID controller: second-order model of % yd-Kp curv e
end
% simulate the Nth cycle sim('AAA_DualVariableCycleController') ;
% save the data read from workspace % make records of the data of the previous cycles to use in % the newest cycle and to draw the plots Tr_initial=Tr.signals.values(end, :) ; Tv_initial=Tv.signals.values(end,:); heater_initial=heaters.signals.values(end,:); air_initial=air.signals.values(end, :) ; time_total=[time_total; heaters.time(2:end,:)+...
time_total(end)*ones(size(heaters.time(2:ehd,:)))]; time_cyclestart=[time_cyclestart; time_total(end)+1]; % start point of the NEXT cycle time_end=[time_end; time_total(end)];
Tdes_total=[Tdes_total;Input.signals.values(2:end,:)]; heater_total=[heater_total; heaters.signals.values(2:end,:)]; air_total=[air_total; air.signals.values(2:end,:)]; % use zero Celsius to indicate that no sheet is placed in the oven % during MA cycles. Tr_total=[Tr_total;(mode==0)*Tr.signals.values(2:end,:)]; Tv_total=[Tv_total; (mode==0)*Tv.signals.values(2:end, :)] ;
106
% save the corresponding values concerning the end of each cycle Te=[Te; [Tr.signals.values(end,: ) Tv.signals.values(end,:)]]; He=[He; heaters.signals.values(end,:)]; M_time=[M_time; mode*ones(size(heaters.time(2 rend,:)))]; M=[M; mode] ;
Kp_last = Kp;
N_modeO = N_modeO + (-mode)*(~BreakSimulation(end)) ; % accumulate the number of PID cycles N=N+1;
end
time_total=time_total(2:end,:); Tdes_total=Tdes_total(2:end, :) ;
% desired heater temperatures input - time plot subplot(4,1,1); plot(time_total, Tdes_total); title('desired shee t temperatures - time plot'); xlabel('Time (s)') ; ylabel('Temp. (Celsius)') ; grid on
% sheet temperatures - time plot subplot(4,1,2); plot(time_total, Tr_total, 'r-' , time_total, Tv_total, ' b — ' ) ; title ('actual sheet temperatures - time plot'); xlabel('Time (s)') ; ylabel('Temp. (Celsius)') ; grid on
% heater temperatures - time plot subplot(4,1,3); plot(time_total, heater_total); title ('actual heater temperatures - time plot'); xlabel('Time (s)') ; ylabel('Temp. (Celsius)') ; grid on
% mode - cycle plot subplot(4,1,4); time_cyclestart=time_cyclestart(1:end-1) ; plot(time_total,M_time); hold on; plot(time_cyclestart,M,'o'); hold off; title('mode - time plot'); xlabel('Time (s)') ; ylabel('Mode');
b) MA controller function
107
% Mode of Adjustment: controller function % Q, _ _ Q .
"5 * 5
% Author: Shuonan Yang % 9-9-9-° 9-9-9-9-9-S-2-S-9-2-9-9-9-9-9-9-S-2-9-9-S-S-9-9-9-9-9-2-S-9-9-2-9-Q-9-9-9-9-9-'o'o o o *5 "5 "5 "6 "5 o 0*0 o o o "6 "5 "6 o 0*0 o o o o o "o "5 "S "6 "o o o o o o o o "6 *5 "5 "6 *5
function [submode , tau] = hccomp_variablecycle (ui , ud)
if u i < ud % rising curve submode = 1; tau = log((ud-600)/(ui-600))/(-0.005); % ud == exp(-0.005*tau)*(ui-600)+60 0
elseif ui >= ud % descendent curv e submode = 0; tau = log((ud-100/3)/(ui-100/3))/(-0.0018); % ud == exp(-0.0018*tau)*(ui-100/3)+100/ 3
end
if tau > 600 tau = 600; % Iud(600)-ut(600) I coul d be examined at the beginning of the next % cycle,.thus the MA cycle with tau > 600 could be separated into % two or more cycles,
end
7.2. Quantitative Computation of the View Factor Matrix1281
The parameters in this section must be well defined to be able to generate a sensitivity
matrix F, or the left-upper part FUpper due to the symmetry. These parameters include
locations of the heating zones and IR sensors as well as a. reference frame. For this
particular case, the origin will be at the front left heating zone (#4 in Fig. El) to assure
that all entries will be positive. The height z is defined as the distance between the
heating zones and the sheet surface (z = 16 cm in AAA oven). The IR sensors are located
slightly higher than the heating zones (20cm). The resulting temperature measurement on
the surface of the sheet therefore has an area of 2cm2 (respecting the 10:1 distance to spot
ratio).
108
Fig. El: Referential frame
Table El and Table E2 show the coordinates for the IR sensors spots and the heating
zones respectively.
Table El: Coordinates of the IR sensors spots
IR1
I R :
1R3
1R5
IR6
\1
*S
24.65
51.35
51.35
24.65
\2
40
26.65
53.35
53.35
26.65
\1
2" 55
7.15
7.15
47.95
47.95
\2
29 55
9.15
9.15
49.95
49.95
Table E2: Coordinates of the heating zones
/one 1
Zone 2
Zone 3
Zone 4
Zone 5
Zone 6
t\ 0
26.7
53.4
0
26.7
53.4
*9 -
24.6
51.3
78
24.6
51.3
78
ni 30.6
30.6
30.6
0
0
0
r\l
57.1
57.1
57.1
26.5
26.5
26.5
The view factors detailed above generates the sub-matrix F,
109
F = upper
"0.0467 0.2391 0.0467 0.0467 0.2391 0.0467" 0.0226 0.0226 0.0062 0.2526 0.2526 0.0175 0.0062 0.0226 0.0226 0.0175 0.2526 0.2526 0.0175 0.2526 0.2526 0.0062 0.0226 0.0226 0.2526 0.2526 0.0175 0.0226 0.0226 0.0062
110
References
1. http://www.plasticwebsite.com.au/thermoforming historv.htm
2. M. Ajersch, "Modeling and real-time control of sheet reheat phase in
thermoforming," M. Eng. Thesis, Department of Electrical and Computer
Engineering, McGill University, Aug. 2004.
3. J. L. Throne, Technology of Thermoforming. Munich, Germany: Hanser Gardner
Publications, Inc., 1996, pp. 882.
4. http://www.producto.com/thermoform-tooling.html
5. http://www.illig.de/en/werkzeuge/pg2/f seite.htm
6. http://www.rtpcompanv.com/products/color/effects.htm
7. http://www.extechplastics.com/en/PVC/exallov5000uv.php
8. http://www.extechplastics.com/en/natureworks/
9. J. Schroers; Q. Pham, and A. Desai, 'Thermoplastic Forming of Bulk Metallic
Glass—A Technology for MEMS and Micro structure Fabrication," Journal of Microelectromechanical Systems, vol. 16, no. 2, pp. 240-247.
10. R. Truckenmuller; S. Giselbrecht, "Microthermoforming of flexible, not-buried
hollow microstructures for chip-based life sciences applications," in IEE Proc-Nanobiotechnol, Aug. 2004, vol. 151, no. 4, pp. 163-166.
11. http://www.avervdennison.com/corporate.nsf/50e86d296559306188256a3b00693bd7
/ld3c5062ace6334588256a7d0064e9d5?OpenDocument
12. Raytek Corporation, Thermalert® MID™ MIC™ Miniature IR Sensor Operator's Guide.
13. G. Gauthier; M. Ajersch; B. Boulet; A. Haurani; P. Girard; R. DiRaddo, "A new
absorption based model for sheet reheat in Thermoforming," SPE Annual Technical Conference (ANTEC), May 2005.
14. B. Moore; P. Girard; B. Boulet; R. DiRaddo, "In-cycle dynamics of forming
operations," in Proc. of the American Control Conference, May 2002, vol. 4, pp.
3349-3350.
I l l
15. B. Boulet; R. DiRaddo; P. Girard; V. Thomson, "An agent based architecture for
model based control," IEEE International Conference on Systems, Man and
Cybernetics, Oct. 2004, vol. 2, pp. 2002-2007.
16. R. DiRaddo; P. Girard; S. Chang, "Process drift and model-based control of forming
operations," in Proc. of the American Control Conference, May 2002, vol.5, pp.
3588-3593.
17. J. L. Throne, Understanding Thermoforming. Hanser Gardner Publications, Inc., 1999.
18. K. L. Moore, "Iterative Learning Control: an expository overview," in Applied and
Computational Controls, Signal Processing, and Circuits, 1998, vol. 1, no. 1, pp.
151-214.
19. Y. Chen; J.-X. Xu; T. H. Lee; S. Yamamoto, "An iterative learning control in rapid
thermal processing," in Proc. The IASTED Int. Conf. on Modeling, Simulation and
Optimization (MSO '97), Aug. 1997, pp. 189-192.
20. Y. Chen; J.-X. Xu; C. Wen, "A high-order terminal iterative control scheme," in Proc.
of the 36th IEEE Conf. on Decision and Control, Dec. 1997, pp. 3771-3772.
21. G. Gauthier; B. Boulet, "Convergence analysis of Terminal ILC in the z domain,"
American Control Conference—2005 Portland (Oregon), 2005, pp. 184-189.
22. G. Gauthier, B. Boulet, Terminal Iterative Learning Control Applied to
Thermoforming Machine Reheat Phase, Proc. IEEE International Symposium on
Industrial Electronics (ISIE-2006) - 2006, Montreal, Canada, July 9-13,2006.
23. Y. Chen; C. Wen, "High-order Terminal Iterative Learning Control with an
application to a rapid thermal process for chemical vapor deposition," in Iterative
Learning Control, Convergence, Robustness and Applications, Lecture notes in
control and information sciences, vol. 248, Springier-Verlag, 1999, pp. 95-104.
24. J.-X. Xu; Y. Chen; T. H. Lee; S. Yamamoto, "Terminal Iterative Learning Control
with an application to RTPCVD thickness control," Automatica, vol. 35, 1999, pp.
1535-1542.
25. G. Gauthier; B. Boulet, "Terminal Iterative Learning Control applied to
thermoforming machine reheat phase" in IEEEISIE, 2006, vol. 1, pp. 353-357.
26. http://en.wikipedia.org/wiki/Thermal radiation:
http://en.wikipedia.org/wiki/Planck%27s law
112
27. http://en.wikipedia.org/wiki/Stefan boltzmann law
28. MAGI Control Inc., Sensitivity Matrix Document. 29. http://en.wikipedia.org/wiki/Beer-Lambert law
30. http://en.wikipedia.org/wiki/Heat conduction
31. http://en.wikipedia.org/wiki/Convection
32. http://en.wikipedia.org/wiki/Heat transfer
113