## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

© Copyright 2002

1 of 9

Internal Model Control

Part of a set of lecture notes on Introduction to Robust Control by Ming T. Tham (2002)

The Internal Model Principle

The Internal Model Control (IMC) philosophy relies on the Internal Model Principle, which

states that control can be achieved only if the control system encapsulates, either implicitly or

explicitly, some representation of the process to be controlled. In particular, if the control

scheme has been developed based on an exact model of the process, then perfect control is

theoretically possible. Consider, for example, the system shown in the diagram below:

Figure 1. Open loop control strategy

A controller, G s

c

( ), is used to control the process, ) (s G

p

. Suppose ) (

~

s G

p

is a model of

) (s G

p

. By setting G s

c

( ) to be the inverse of the model of the process,

G s G s

c p

( )

~

( ) ·

−1

,

and if G s G s

p p

( )

~

( ) · , (the model is an exact representation of the process)

Then it is clear that the output will always be equal to the setpoint. Notice that this ideal

control performance is achieved without feedback. What this tells us is that if we have

complete knowledge about the process (as encapsulated in the process model) being

controlled, we can achieve perfect control. It also tells us that feedback control is necessary

only when knowledge about the process is inaccurate or incomplete.

Internal Model Control

© Copyright 2002

2 of 9

The IMC Strategy

In practice, however, process-model mismatch is common; the process model may not be

invertible and the system is often affected by unknown disturbances. Thus the above open

loop control arrangement will not be able to maintain output at setpoint. Nevertheless, it

forms the basis for the development of a control strategy that has the potential to achieve

perfect control. This strategy, known as Internal Model Control (IMC) has the general

structure depicted in Fig. 1.

Figure 2. Schematic of the IMC scheme

In the diagram, d(s) is an unknown disturbance affecting the system. The manipulated input

U(s) is introduced to both the process and its model. The process output, Y(s), is compared

with the output of the model, resulting in a signal ) (

ˆ

s d . That is,

[ ]

!

( ) ( )

~

( ) ( ) ( ) d s G s G s U s d s

p p

· − +

If d(s) is zero for example, then ) (

ˆ

s d is a measure of the difference in behaviour between the

process and its model. If G s G s

p p

( )

~

( ) · , then ) (

ˆ

s d is equal to the unknown disturbance.

Internal Model Control

© Copyright 2002

3 of 9

Thus ) (

ˆ

s d may be regarded as the information that is missing in the model, ) (

~

s G

p

, and can

therefore be used to improve control. This is done by subtracting ) (

ˆ

s d from the setpoint R(s),

which is very similar to effecting a setpoint trim. The resulting control signal is given by,

[ ] [ ] { }

U s R s d s G s R s G s G s U s d s G s

c p p c

( ) ( )

!

( ) ( ) ( ) ( )

~

( ) ( ) ( ) ( ) · − · − − −

Thus,

[ ]

[ ]

U s

R s d s G s

G s G s G s

c

p p c

( )

( ) ( ) ( )

( )

~

( ) ( )

·

−

+ − 1

Since Y s G s U s d s

p

( ) ( ) ( ) ( ) · +

the closed loop transfer function for the IMC scheme is therefore

[ ]

[ ]

Y s

R s d s G s G s

G s G s G s

d s

c p

p p c

( )

( ) ( ) ( ) ( )

( )

~

( ) ( )

( ) ·

−

+ −

+

1

or

[ ]

[ ]

Y s

G s G s R s G s G s d s

G s G s G s

c p c p

p p c

( )

( ) ( ) ( ) ( )

~

( ) ( )

( )

~

( ) ( )

·

+ −

+ −

1

1

From this closed loop expression, we can see that if G s G s

c p

( )

~

( ) ·

−1

, and if G s G s

p p

( )

~

( ) · ,

then perfect setpoint tracking and disturbance rejection is achieved. Notice that, theoretically,

even if G s G s

p p

( )

~

( ) ≠ , perfect disturbance rejection can still be realised provided

G s G s

c p

( )

~

( ) ·

−1

.

Additionally, to improve robustness, the effects of process model mismatch should be

minimised. Since discrepancies between process and model behaviour usually occur at the

high frequency end of the system's frequency response, a low-pass filter G s

f

( ) is usually

added to attenuate the effects of process-model mismatch. Thus, the internal model controller

is usually designed as the inverse of the process model in series with a low-pass filter, i.e.

Internal Model Control

© Copyright 2002

4 of 9

) ( ) ( ) ( s G s G s G

f c IMC

· . The order of the filter is usually chosen such that G s G s

c f

( ) ( ) is

proper, to prevent excessive differential control action. The resulting closed loop then

becomes

[ ]

[ ] ) ( ) (

~

) ( 1

) ( ) (

~

) ( 1 ) ( ) ( ) (

) (

s G s G s G

s d s G s G s R s G s G

s Y

IMC p p

p IMC p IMC

− +

− +

·

Practical Design of IMC

Designing an internal model controller is relatively easy. Given a model of the process,

) (

~

s G

p

, first, factor ) (

~

s G

p

into "invertible" and "non-invertible" components.

) (

~

) (

~

) (

~

s G s G s G

p p p

− +

·

The non-invertible component, ) (

~

s G

p

−

, contains terms which if inverted, will lead to

instability and realisability problems, e.g. terms containing positive zeros and time-delays.

Next, set

1

) (

~

) (

− +

· s G s G

p c

and then ) ( ) ( ) ( s G s G s G

f c IMC

· , where G s

f

( ) is a low-pass

function of appropriate order.

Worked Example

Given the process model

s

s

s G

p

20 1

) 5 exp( 2

) (

~

+

−

· , ) (s G

IMC

is designed as follows:

Do the factorisation ) (

~

) (

~

) (

~

s G s G s G

p p p

− +

· where

) 20 1 (

2

) (

~

s

s G

p

+

·

+

and ) 5 exp( ) (

~

s s G

p

− ·

−

.

Next, set ) (s G

IMC

to be the inverse of ) (

~

s G

p

+

in series with a low pass filter

( )

n

f

f

s

s G

τ +

·

1

1

) ( , where

f

τ is the filter parameter and n is the order of the filter. That is,

Internal Model Control

© Copyright 2002

5 of 9

( )

n

f

IMC

s

s

s G

τ +

+

·

1 2

) 20 1 (

) (

) (s G

IMC

is proper if n = 1, and a good rule-of-thumb is to choose

f

τ to be twice as fast as the

open loop response. Hence, in this example,

f

τ =10.

Let us now look at the close-loop properties for the system, assuming that G s G s

p p

( )

~

( ) · .

Substituting the relevant information into

[ ]

[ ] ) ( ) (

~

) ( 1

) ( ) (

~

) ( 1 ) ( ) ( ) (

) (

s G s G s G

s d s G s G s R s G s G

s Y

IMC p p

p IMC p IMC

− +

− +

·

we get [ ] ) ( ) (

~

) ( ) (

~

1 ) ( ) ( ) ( ) (

~

) (

1 1

s d s G s G s G s R s G s G s G s Y

p f p p f p

− + − +

− + ·

Hence [ ] ) ( ) ( ) (

~

1 ) ( ) ( ) (

~

) ( s d s G s G s R s G s G s Y

f p f p

− −

− + ·

Or ) (

) 1 (

) 5 exp(

1 ) (

) 1 (

) 5 exp(

) ( s d

s

s

s R

s

s

s Y

f f 1

1

]

1

¸

τ +

−

− +

τ +

−

·

Thus, we can see that the IMC scheme has the following properties:

• it provides time-delay compensation

• the filter can be used to shape both the setpoint tracking and disturbance rejection

responses

• at the steady-state, the controller will give offset free responses

Implementing the IMC within a Conventional PID framework

The IMC philosophy can also be used to generate settings for conventional PI or PID

controllers. Note that the IMC block diagram in Fig. 2 can be reduced to a conventional

closed loop structure by first re-arranging to the following form:

Internal Model Control

© Copyright 2002

6 of 9

and then to:

Thus

) ( ) (

~

1

) ( ) (

~

) (

~

) ( 1

) (

) (

1

s G s G

s G s G

s G s G

s G

s G

f p

f p

p IMC

IMC

PID

−

− +

−

·

−

·

Assume that the process is a first-order plus time-delay system. Thus, its model has the

following general form:

s

s K

s G

p

τ +

θ −

·

1

) exp(

) (

~

At this point, we can proceed in one of two ways.

Series approximation for the time-delay

We can approximate the time-delay term using a 1

st

-order series, i.e. s s θ − ≈ θ − 1 ) exp( .

Internal Model Control

© Copyright 2002

7 of 9

Thus, ( ) s

s

K

s

s K

s G

p

θ −

,

_

¸

¸

τ +

≈

τ +

θ −

· 1

1 1

) exp(

) (

~

with

) 1 (

) (

~

s

K

s G

p

τ +

·

+

and s s G

p

θ − ·

−

1 ) (

~

.

and

( ) ( )

( )s K

s

s

s

s

K

s

s G s G

s G s G

s G

f

f

f

f p

f p

PID

θ + τ

τ +

·

τ +

θ −

−

τ +

τ +

·

−

·

−

− +

1

1

1

1

1

1

.

1

) ( ) (

~

1

) ( ) (

~

) (

1

This can be rearranged to

( )

1

]

1

¸

τ

+

θ + τ

τ

·

s K

s G

f

PID

1

1 ) (

Comparing this with the ideal PID controller,

1

]

1

¸

+ +

d

i

c

sT

s T

K

1

1 , we can see that the

corresponding proportional gain and integral time are:

( ) θ + τ

τ

·

f

c

K

K and τ ·

i

T

Pade approximation for the time-delay

Alternatively, we can replace the time-delay with its Pade approximation,

s

s

s

2

1

2

1

) exp(

θ

+

θ

−

≈ θ − .

In this case,

,

_

¸

¸ θ

+

,

_

¸

¸ θ

−

,

_

¸

¸

τ +

≈

τ +

θ −

·

s

s

s

K

s

s K

s G

p

2

1

2

1

1 1

) exp(

) (

~

Internal Model Control

© Copyright 2002

8 of 9

with

,

_

¸

¸ θ

+ τ +

·

+

s s

K

s G

p

2

1 ) 1 (

) (

~

and s s G

p

2

1 ) (

~ θ

− ·

−

.

Thus

( )

s

s

s

K

s s

s G s G

s G s G

s G

f

f

f p

f p

PID

τ +

θ

−

−

τ +

,

_

¸

¸ θ

+ τ +

·

−

·

−

− +

1

2

1

1

1

1

.

2

1 1

) ( ) (

~

1

) ( ) (

~

) (

1

Simplifying, we obtain

( )

s K

s s

s G

f

PID

,

_

¸

¸ θ

+ τ

,

_

¸

¸ θ

+ τ +

·

2

2

1 1

) (

Again, by comparing this against the ideal PID controller,

1

]

1

¸

+ +

d

i

c

sT

s T

K

1

1 , we get

( )

( ) 2 /

2 /

θ + τ

θ + τ

·

f

c

K

K τ +

θ

·

2

i

T

,

_

¸

¸

τ +

θ

τθ

·

2

2

d

T

Sensitivity and Complementary Sensitivity Functions for IMC

Finally, let us consider the sensitivity functions for the IMC scheme and compare this with

those for conventional feedback control. We want to do this to see how the change in control

structure facilitates the design of robust control systems.

Recall that ε( )

( )

( ) ( )

( )

( )

s

E s

R s d s

Y s

d s

·

−

·

For IMC, since

[ ]

[ ] ) ( ) (

~

) ( 1

) ( ) (

~

) ( 1 ) ( ) ( ) (

) (

s G s G s G

s d s G s G s R s G s G

s Y

IMC p p

p IMC p IMC

− +

− +

·

Internal Model Control

© Copyright 2002

9 of 9

[ ] ) (

~

) ( ) ( 1

) (

~

) ( 1

) (

) (

) (

s G s G s G

s G s G

s d

s Y

s

p p IMC

p IMC

− +

−

· · ε

Further, supposing that G s G s

p p

( )

~

( ) · , then

) (

~

) ( 1 ) (

~

s G s G s

p IMC

− · ε and ) (

~

) ( ) (

~

s G s G s

p IMC

· η

Therefore, in the IMC strategy, the controller appears linearly in the respective functions.

Compare this with the corresponding functions for the conventional control scheme,

ε( )

( ) ( )

s

G s G s

c p

·

+

1

1

and η( )

( ) ( )

( ) ( )

s

G s G s

G s G s

c p

c p

·

+ 1

Since the sensitivity function determines performance whilst the complementary sensitivity

function determines robustness, this implies that (compared to the conventional control

scheme) the IMC provides a much easier framework for the design of robust control systems.

- 03733
- Predictive Control in Olive Oil Production
- Lab Report Control...
- Che642 Lab Manual
- AEI504
- Exciter Notes For
- Experiment 5 - Heat Exchanger Process Control
- Exp1_P4E9Flow_Jan2015
- PID
- 62426_01
- Process control lecture 22_Dr Pratik N Sheth_BITS.pdf
- system dynamics and control itü program
- motorcontrol.pdf
- Simulink Coursework
- Harriot Process Control Indice
- Factura Ejemplo PDF
- ujeee.2013.010302
- TG20-July-2009
- TENUGHAT Commissioning Report.doc
- CPM Brochure Mar2012 Final
- Sliding mode control without reaching phase for multimachine power system combined with fuzzy PID based on PSS
- Selectors
- PID Controller for Lego Mindstorms Robots (1)
- FX2N-2LC_-_User's_Manual_JY992D85801-D_(03.07)
- 99518698 Pid Controllers Explained
- Managing Your BAS Workshop_OCT13
- s-z-conv-1.pdf
- Esm-xx20 Eng Brochure
- Engineering journal ; A Professional PID Implemented using a Non-singleton Type-1 Fuzzy Logic System to Control a Stepper Motor
- Os Toggle

- 493-297
- Java Script
- Resident Forms
- 08
- AcousticPhonetics
- CS481
- Acoustic Phonetics
- Sri Sivas toTra Malika
- Convocation Registration
- March 1007
- 1_1
- LalithaSahasraNamam-1
- accel_matlab
- 49XZ
- General Electric Company History
- NITWJAF 2014
- etgate2012
- Relay
- alekhya
- Introduction to Numpy Exercise
- 2013 Internship Employment Report
- alekhya
- Lecture 10
- ge internship
- all patterns....
- ee
- psoc
- EED-M.Tech

Close Dialog## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

Loading