You are on page 1of 16

ChE 411/558 Advanced Process Control

MATLAB / SIMULINK Lab Demonstration No.2


by Faye & Shahin 2009

Contents
Simulink Control Design Graphical User Interface (GUI): 1. Configure the model and GUI for controller design 2. Design a PID controller using ZieglerNichols tuning and Bode graphical design. 3. Simulate the closed-loop system.

1. Problem
Cascade control: CST composition mixer
AC

FC FT

F1, C1

F2, C2

AT

Product, C

CV: Product composition, MV: F1 flow rate, DV: Changes in F1 flow rate Aim: To eliminate the disturbance from F1 flow rate, and good setpoint tracking. Tuning Criteria: 1. The fluctuations after tuning for disturbance rejection should lie within 5%. 2. Whereas for setpoint tracking, the overshoot less than 50%, and 3. The rise time less than 5 seconds.

Process transfer functions: Gpp: Product composition subject to changes in F1 flowrate:

G PP

C ( s) 0.73 = = e 0.19 s F1 ( s ) 0.65s + 1

Gps: Valve stem position subject to changes in F1 flowrate:

1 X (s) 0.02 s = GPS = e F1 ( s ) 0.1s + 1


Assume negligible sensor dynamics.

NOTE:

Note Dont forget to change all To Workspace blocks to array format


Model configuration in Simulink:
Continuous Transfer Function, Transport Delay Sources Step, Clock Sinks To Workspace, Scope Math Operations Sum (double-click to change the signs) Simulink Extras Additional Linear PID Controller

2. Controller Design & Tuning


1. Open-loop step test 2. Design the controllers using Ziegler-Nichols

method:
Select Tools > Control Design > Compensator Design Click Select Blocks tick the controllers - OK Right click on the input line to the closed loop Select Linearization Points > Input Point . Right click on the output line from the closed loop Select Linearization Points > Output Point. Click Tune Blocks.

Under the tab Analysis plot, select Step and tick the closed loop box. Under the tab Automated tuning, select any of the design method, in this case, we have chosen PID tuning ZN open loop Update compensator Update simulink block parameters Alternatively, you can use Graphical tuning/ Compensator editor. Check if the responses meet the tuning criteria

After tuning:

Store Design

Disturbance Rejection:

0.05 0.04 0.03 0.02 0.01 0 -0.01 -0.02 -0.03 -0.04

Fluctuations appro. 3% when subject to a unit step change in D(s).

10

Setpoint Tracking:
>> stepinfo(y)
1.5

ans = RiseTime: 3.8370 SettlingTime: 139.7210 SettlingMin: 0.8769 SettlingMax: 1.4054 Overshoot: 40.4407 Undershoot: 0 Peak: 1.4054 PeakTime: 22

1.4 1.3 1.2 1.1 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 2 4 6 8 10

Criteria achieved~

3. Stability Analysis
Carry out at least 1 stability analysis, such as open-loop bode plot, root locus, nyquist, nichols, etc. Describe.

4. Performance Evaluation
Disturbance rejection
+5 and +10 increase in D(s): Others: +5 and -5, Etc. Describe.
0.4 0.3 0.2 0.1 0 -0.1 -0.2 -0.3 -0.4 D(s)=+5 D(s)=+10 0 2 4 6 8 10

>> plot(t,y,t1,y1) > > legend('D(s)=+5','D(s)=+10')

Can your controller eliminate large disturbances? What range?

8 7 6 5 4 3 2 1 0 Ysp(s)=+1 Ysp(s)=+2 Ysp(s)=+5

Setpoint tracking
+1, +2 and +5 step changes in Ysp(s): Others: -1,-2, -5 changes Etc.

10

5 4 3 2 1 0 -1 -2 -3 -4

Describe. Can work well for large setpoint changes?

10

12

14

16

18

20

Reference: [1] The MathWorksTM Do free out some time to go through this tutorial: http://www.mathworks.com/access/helpdesk/help/toolbox/slc ontrol/index.html?/access/helpdesk/help/toolbox/slcontrol/gs/ brrzwxv.html

Have fun~!

You might also like