Journal of Robotics, Networking and Artificial Life
Vol. 8(2); September (2021), pp. 108–111
DOI: https://doi.org/10.2991/jrnal.k.210713.008; ISSN 2405-9021; eISSN 2352-6386
https://www.atlantis-press.com/journals/jrnal

Research Article

Design of Nonlinear Internal Model Controller usingLocal Linear Models, and its Application
Shinichi Imai*
Graduate School, Tokyo Gakugei University, 4-1-1, Nukuikita-machi, Koganei, Tokyo 184-8501, Japan

ARTICLE INFOABSTRACTArticle History

In chemical plants and other process industries, desired conditions are achieved by adjusting controllers. However, it is difficult
to obtain the desired control response because most of the controllers use fixed Proportional-Integral-Differential (PID) control.
On the other hand, the internal model control method, in which the control target is described by a detailed mathematicalexpression, has been proposed. The internal model control is simple to control system structure and is characterized by highrobust stability against uncertainties of the control target. However, there are few examples of applying internal model control
to nonlinear systems. In this paper, we propose a new method for designing an internal model control system that constructs
multiple local linear models for a nonlinear system and adjusts the system parameters corresponding to the models. The
effectiveness of the proposed method is verified through experiments.

Received 27 October 2020
Accepted 15 May 2021
Keywords
Feedback control
local linear models
internal model controller© 2021 The Author. Published by Atlantis Press International B.V.
This is an open access article distributed under the CC BY-NC 4.0 license (http://creativecommons.org/licenses/by-nc/4.0/).

1. INTRODUCTION
In the process industries such as chemical plants, the desired stateis achieved by adjusting the controllers. However, most of the controllers use fixed PID control, and it is difficult to obtain the desired
control response with a simple controller using fixed parameterswhen the system has nonlinearity or the system characteristics
change significantly due to changes in operating conditions or theenvironment.
A model-driven control method [1,2] has been proposed in which
the control target is described in as detailed a mathematical expression as possible and the model of the control target is incorporated
into the control system. One of these model-driven control methods is Internal Model Control (IMC) [3,4]. Internal model control ischaracterized by the simplicity of the control system structure andits high robust stability against uncertainties of the control target.
For example, a data-driven internal model control system has been
proposed, which uses a database to control the system by retrieving
data similar to the current data as a neighborhood according to thedemand point.
However, these methods require a huge amount of computational time. The authors proposed a method to calculate control
parameters using the idea of local linear model method [5]. In
this method, multiple local linear models are constructed for anonlinear system, and the system parameters corresponding toeach local linear model are calculated and weighted to design thecontrol system.

Email: shimai@u-gakugei.ac.jp*In this paper, we propose a method of designing an internal model
for a nonlinear system by calculating the system parameters corresponding to each local linear model individually and weighting
them. In this method, the system parameters are determined foreach local linear model, and the system is expected to be tuned more
appropriately for nonlinear systems. Since the database required by
the data-driven internal model control system does not need to beconstructed, the time required for construction can be reduced. Asa result, the load and processing time can be significantly reduced
in terms of memory capacity and computation time.

2. IMC DESIGN USING A LOCAL
LINEAR MODEL
Local linear models around the equilibrium point are constructed
for the nonlinear model according to the characteristics of its staticproperties. The control parameters corresponding to each local linear
model are calculated, and the estimated system output is obtained.
Then, the distance between the actual system output and the estimated value is calculated, and the system parameters are loadadjusted according to the distance to achieve nonlinear control. The
block diagram of the proposed control system is shown in Figure 1.

2.1. System Description
It is assumed that the system dealt with in this paper is given by thefollowing Equation (1).
y(t ) = f (j (t − 1)) 		 (1)S. Imai / Journal of Robotics, Networking and Artificial Life 8(2) 108–111

109

where, l is the design parameter of the filter used in the rangeof 0 ≤ l < 1, and n is the order of the filter. In addition, by using
B(1), even if B(z−1) contains an unstable zero point (non-minimumphase system), it can be dealt with because pole-zero cancellation
is avoided.
In addition, e(t) is a control error signal and can be defined as­follows with r(t) as the target value.		 e(t ) := r (t ) − { y(t ) − y(t )} where, ŷ(t) is the internal model output and is shown by the­following Equation (9).

Figure 1 | Block diagram of the proposed method.

where, y(t) represents the system output and f (×) represents the nonlinear function. In addition, j (t – 1) represents the state (historical data)
before the time t − 1 of the system, and is called an information vector.
The information vector j (t – 1) is defined by the following Equation (2).
j (t − 1) :=  y(t − 1), y(t − 2),, y(t − n y )u(t − 1), u(t − 2),, u(t − nu )

(2)Furthermore, u(t) is the control input, and ny and nu are the output
and input orders, respectively. Now, suppose that the nonlinear
system represented by Equation (1) can be locally represented by alinear model like the following Equation (3)	    A(z -1 ) y(t ) = z - ( km +1) B(z -1 )u(t ) (3)where, z−1 represents a time-delayed operator that means z−1 y(t) =y(t − 1). In addition, km represents the minimum estimate of wasted
time. In many process systems represented by chemical processes,
it is often impossible to clearly specify the dead time. Therefore, ifthe dead time is known, set km to that value, and if the range of deadtime is unknown, set km = 0.
In addition, A(z−1) and B(z−1) are given by the following Equations(4) and (5).
A(z −1 ) = 1 + a1z −1 +  + any z	 − ny(4)-n-1-1	     B(z ) = b0 + b1z +  + bnu z u (5)where, if the dead time is unknown or ambiguous, the insufficientdead time information is supplemented by securing the order ofB(z−1) in nu dimensions.

2.2. Designing an Internal Model Controller
using a Local Linear ModelIn this paper, we consider the control law (IMC) of the following
Equations (6) and (7)		  u(t ) = Q(z -1 )e(t ) -1(6)nA(z ) æ 1 - l öQ( z ) =		  
B(1) çè 1 - lz -1 ÷ø-1(8)(7)	    y(t ) = − A(z −1 ) y(t ) + z − ( km +1) B(z −1 )u(t ) (9)Since many real systems have non-linearity, it is difficult to always
obtain good control results when the system parameters are fixed.
Therefore, in this method, the system parameters included inEquations (4) and (5) are self-adjusted according to the characteristics of the system based on the local linear model, so they are
replaced as follows.
−n (z −1 : t ) = 1 + 
Aa1 (t )z −1 +  + any (t )z y  (z −1 : t ) = 
Bb0 (t ) + 
b1 (t )z −1 +  + bn (t )z − nu (10)(11)

u (z −1 : t ) and B (z −1 : t ) represent the control target at time t,where, A
and the above assumptions are inherited. Also, ny is the order of theoutput. Along with this, Equations (7) and (9) are described as thefollowing Equations (12) and (13).
  Q(z −1 : t ) =           (z −1 : t ) 1 − λ nA  (1: t )  1 − λz −1 B(12)y(t ) = − A(z −1 : t ) y(t ) + z − ( km +1) B(z −1 : t )u(t ) (13)After the above preparations, design an internal model controller
using a local linear model. The specific algorithm is summarizedbelow.
[STEP 1] Construction of multiple linear models
For the nonlinear model, multiple linear models are constructed,
the system is identified by the collective least squares method, andthe parameters of A(z−1) and B(z−1) included in the linear modelof the following equation are estimated.		

Ai (z −1 ) y(t ) = z − ( km +1) Bi (z −1 )u(t )(i = 1, 2,, N )(14)where, N represents the number of divisions of the local linear
model, and i = 1, 2, ..., N or less Unless otherwise specified, i takesthese values. In addition, Ai(z−1) and Bi(z−1) are given by the following Equations (15) and (16).
-1-1	    Ai (z ) = 1 + ai ,1z +  + ai ,ny z-1-1- ny	    Bi (z ) = bi ,0, + bi ,1z +  + bi ,nu z- nu(15)(16)S. Imai / Journal of Robotics, Networking and Artificial Life 8(2) 108–111

110[STEP 2] Weight calculation
Next, for each local linear data calculated in [STEP 1], the estimation error ¨i(t); is calculated for each model, and the weight wi
is calculated based on this. ¨i(t); is the error between the system
output value y(t); and the estimated output value ỹi(t) of each linear
model. Here, ỹi(t) is calculated by the following equation based on
Equation (14).	   yi (t ) = − Ai (z −1 ) y(t ) + z − ( km +1) Bi (z −1 )u(t ) (17)where, Ai(z−1) and Bi(z−1) use the system parameters of each linear
model estimated in [STEP 1].		¨i (t ) = y(t ) − y i (t ) (18)1¨ (t )		 w i (t ) = N i∑ i =1 1¨i (t )(19)Furthermore, w i(t) is the weight corresponding to the selected i-th
information vector. The smaller the difference between the output
value of the actual system and each linear model, the larger thisweight becomes. Note that the following equation is satisfied whenw i(t) is calculated based on Equation (19).
N			 ∑w i (t ) = 1 

(20)

i =1

[STEP 3] Determining system parameters
Using the weights obtained in [STEP 2] and Ai(z ) and Bi(z ) inEquations (15) and (16), the system parameters are calculated by
the following Equations (21) and (22).
−1−1

N−1
 −1		 A(z : t ) = ∑w i Ai (z ) (21)−1 −1		 B(z : t ) = ∑w i Bi (z ) (22)

i =1
N

i =1

With this system parameter, Equations (10) and (11) are updated toobtain the output ŷ(t) of the local linear model.

3. EXPERIMENTAL EXAMPLE
The effectiveness of the proposed method will be examinedthrough application to the thermal process system shown in Figure 2.
This system uses an incandescent light bulb (40 W) as the control target, and controls the surface temperature of the light bulb
by changing the voltage applied to the light bulb by controlling
the Joule heat of the filament. A heat transfer pair (R52-CA10AE)
sensor is attached to the top of the light bulb. Also, measure thetemperature of the light bulb with a thermocouple. Furthermore,
the temperature of the thermocouple is converted into a voltage
by the thermocouple conversion IC, and after A/D conversion,
the data is output to the computer. The control input is calculatedusing the output data.

Figure 2 | Process system.

A PWM signal with a duty ratio according to the control input is
output through D/A conversion, and a current flows through theheater by a Solid State Relay (SSR).
Therefore, the control input u(t) in this experiment is the duty ratio(0–100%) of the PWM signal given to the SSR, and the control
output y(t) is the temperature of the surface of the light bulb.
First, the target value r(t) is given as follows.		

 50 (0 ≤ t < 50)
 70 (50 ≤ t < 100) r (t ) = (23)100 (100 ≤ t < 150)
130 (150 ≤ t < 200)

Next, a local linear model is constructed in the control input range
shown below. The number of divisions was N = 2.
0 ≤ u1 < 30		    20 ≤ u2 < 100(24)Here, the input/output data in the range of u is saved as the initial database. In Equation (24), there is a place where the area of u
overlaps, but this avoids that a good response cannot be obtainedby selecting the database when the request point is selected near thedivision of each database. It is provided for this purpose. The valuesof various design parameters included in the proposed method areny = 2, ny = 2, and km = 0. Furthermore, the parameters of IMC arel = 0.5 and n = 1. Here, l was designed to have the desired risingcharacteristics.
First, for comparison with the conventional method, the fixed PID
control method widely used in the industry is applied. However, for
the PID parameter, the value calculated based on the CHR method
is used. Its PID parameters are shown below.	   K P = 3.66, K I = 0.38, K D = 5.98 (25)First, Figure 3 shows the control results of the fixed PID method
and the control results of the proposed method. In addition, Figure 4
shows the temporal change of the weight by the proposed methodin this case. From the results in Figures 3 and 4, it can be seen thatthe weight of the proposed method changes according to the characteristics of the system, and the responsiveness is greatly improved.

S. Imai / Journal of Robotics, Networking and Artificial Life 8(2) 108–111

111

4. CONCLUSION
In this paper, we have proposed a new method of designing aninternal model control system that constructs multiple local linearmodels for a nonlinear system and adjusts the system parameters
corresponding to the models. As a result, it is verified throughexperiments that the system parameters are appropriately adjusted
according to the characteristics of the system and good control
results can be obtained. In the future, we plan to study the partitioning method of the local linear model in this method.

CONFLICTS OF INTEREST
The author declares no conflicts of interest.
Figure 3 | Experimental result.

Figure 4 | Change in weight.

AUTHOR INTRODUCTION
Dr. Shinichi Imai
He graduated doctor course atdepartment of engineering inHiroshima University. He works at
department of education in Tokyo
Gakugei University. His researcharea is about control system design,
educational engineering.

REFERENCES[1] Y. Ashida, S. Wakitani, T. Yamamoto, Design of a data-driven
multi-loop self-tuning PID controller, IEEJ Trans. Electron.
Inform. Sci. 139 (2019), 356–363.
[2] T. Yamamoto, K. Takao, T. Yamada, Design of a data-driven
PID controller, IEEE Trans. on Control Syst. Technol. 17 (2009),
29–39.
[3] T. Shigemasa, M. Yukitomo, R. Kuwata, A model-driven PID control system and its case studies, Proceedings of the International
Conference on Control Applications, IEEE, Glasgow, UK, 2002,
pp. 571–576.
[4] K. Tsutsumi, T. Yamamoto, Design of a data-driven internal modelcontroller, IEEJ Trans. Electron. Inform. Sci. 131 (2011), 781–787.
[5] S. Imai, T. Yamamoto, A design of a self-tuning control systemusing a local linear model for nonlinear systems, IEEJ Trans.
Electron. Inform. Syst. 132 (2012), 860–865.