(Photos by: [Link]
com/automation-wallpapers; Siemens)
Automatización & Control de Procesos
V261 Juan Manuel Aranda L. K.,Ph.D.
Learning Lectures
Strategies
Simulation Based Learning
Knowledge Based Learning
Project Based
Learning
*Images generated with AI.
2
Student
Outcomes
3
Important information!
This material serves solely as a class
development guide, rather than a
comprehensive study resource. To
enhance your learning process, kindly
refer to your lecture notes and the
bibliography section in the syllabus.
Gif Source: [Link]
4
Agenda
1. Recap
2. Continuous Controller (PID)
1. General tips for designing
2. Tuning
3. Implementation
5
Agenda
1. Recap
2. Continuous Controller (PID)
1. General tips for designing
2. Tuning
3. Implementation
6
Offset is the difference
between the SP and CV value
(above or below the SP)
[sustained error]
Recap
The DC gain of the plant transfer
function is 1/20→0.05 is the final
value of the output to a unit step
input. ess = 0.95 (quite large) , the
Tr≈1 sec, and Ts≈1.5 secs.
7 Based on: CTMS
Recap
P controller reduced both the
rise time and the steady-state
error, increased the overshoot,
and decreased the settling time
by a small amount.
8 Based on: CTMS
Recap
D controller reduced both the
overshoot and the settling time,
and had a negligible effect on
the rise time and the steady-
state error.
9 Based on: CTMS
Recap
I controller eliminated the
steady-state error in this case.
10 Based on: CTMS
Recap
11 Based on: CTMS
Recap
A closed-loop system with no
overshoot, fast rise time, and no
steady-state error.
12 Source: Ogata; tutorialspoint
Agenda
1. Recap
2. Continuous Controller (PID)
1. General tips for designing
2. Tuning
3. Implementation
13
Systems with self-regulation only change Dead time (process lag) describes how
until a new stable output value is reached long it takes before a process begins to
[ex]. Systems without self-regulation do respond to a change in controller output,
not reach a new state of equilibrium (need and the time constant describes how
Continuous Controller closed-loop control) [ex]. fast the process responds once it has
begun moving [src].
● Now, to solve a control task, it is generally required that:
○ the controlled system be analyzed and,
○ a suitable controller be selected and designed (tuning of parameters).
● What to consider when selecting a controller?
○ Which controller is suitable to use, it depends on some factors, such as:
■ Is the system based on integral or proportional control action (with or
without self-regulation)?
■ How great is the process lag (time constants and/or dead times)?
■ How fast must errors be corrected?
■ Is steady-state error acceptable?
14 Source: Samson
Continuous Controller
● In the old days, PI controllers was one of the best choice for to engineer, because
○ It reduces steady-state error drastically (main advantage),
○ Designing (tuning of parameters) of the PID controller was a little difficult
● Nowadays, thanks to software development, tuning (designing) PID controllers has
become an easy task.
○ e.g., MATLAB/Simulink or Google “pid tuner software” to see some software
● Why Controller need tuning?
○ Controllers are tuned to match the characteristics of the control equipment to the
process so that two goals are achieved:
■ The CS responds quickly to errors.
■ The CS remains stable,
● i.e., CV does not oscillate around the SP!
15 Source: Deepesh_gupta; Samson; electrical4u
Continuous Controller
● A general guideline for designing of PID controllers (tuning parameters) usually provides the
following steps:
○ Obtain an open-loop response and determine what needs to be improved.
○ Add a P control to improve the rise time.
○ Add a D control to reduce the overshoot & transient time.
○ Add an I control to reduce the steady-state error.
○ Adjust each of the gains Kp, Ki, and Kd until you obtain a desired overall response, using
sustainable software.
● Keep the controller as simple as possible!
○ Do not need to implement all three controllers (P, I, D) into a single system, if not necessary.
■ If PI provides a desired response, don’t need the D action on the system!
16 Source: electrical4u;: CTMS;
Continuous Controller
● There is no unique solution for the settings for the three gains (Kp, Ki, Kd) of a PID
controller.
○ So, the values are dependent upon the specific system and the application, e.g.,
■ Sometimes, overshoot reduction is more important than settling time (heaters,
ventilators).
■ In other cases, reducing settling time may be crucial and some overshoot is an
acceptable trade off (camera focus lens).
● Many methods for “Tuning” these parameters exist, and often form the first estimate,
before refinement based on testing real system.
○ Selecting these parameters is known as tuning!
17 Source: Open_Polytech: PID controller
Automatic & Manual tuning give an estimate
of the gains, which could be modified
Continuous Controller manually once implemented in HW!
● So, controller tuning is the process of determining the controller parameters which
produce the desired output.
○ It allows for optimization of a process and minimizes the error between the variable of
the process and its set point.
● For tuning, we can employ manual method such trial and error method (guess-and-
check) and heuristics or rule-based methods, such as
○ Ziegler-Nichols method→ used for both closed and open loop systems.
○ Cohen-Coon method→ used for open loop systems.
● Also, we can use software tools for automatically find the optimal PID gains based on the
requirements of the system (automatic tuning).
○ e.g., MATLAB (pidtuner)
18 Source: Peter Woolf et al. CTMS; mathworks
Continuous Controller
● Manual (Trial & Error) tuning method:
○ Simple method of tuning a PID controller.
○ Relies on your knowledge of control theory.
○ Tends to be iterative and time-consuming, and if used on hardware, can risk damage.
○ In this method, the P action is the main control, while the I and D actions refine it.
● This method consists of the following steps:
○ Set Kp to small value and Ki = 0 & Kd = 0
○ ↑Kp until output oscillates, then decrease by factor of 2-4 (e.g., half that value).
○ ↑Ki until any offset is corrected in sufficient time (too much will cause instability)
○ ↑Kd until acceptably quick to reach the set point (too much will cause excessive response &
overshoot)
○ Iterate
19 Source: Peter Woolf et al. CTMS; mathworks; Open Polytech: PID controller; CSE P567
Continuous Controller Challenge
Manual Tuning
20
Continuous Controller
● Rule-based tuning methods are also today but instead using the work of people with proven
methods such as Ziegler-Nichols.
○ These methods do not support certain types of plant models, such as unstable plants, high-
order plants, or plants with little or no time delay. Assume the controller does not have a
parallel structure and it is also used when the mathematical model of the system is unknown.
○ Even with computer aids, these methods are still employed today but tend to disappear!
● A popular rule-based method for tuning PID controller is the Ziegler and Nichols approach.
○ Advantages:
■ Quick and easier to use than other methods Ziegler & Nichols provided two methods:
■ It is a robust and popular method Open-loop & closed-loop (not implemented at
Industrial level)!
○ Disadvantages
■ Approximations of the gains might not be entirely accurate for different systems.
21 Source: Peter Woolf et al. mathworks;
1st Method Ziegler & Nichols - Open-loop
Continuous Controller
PID Controller
22 Source: S. Castaño
Example
Continuous Controller
The plant/proccess
can be controlled!!!
23 Source: S. Castaño
Example
Continuous Controller
P Controller
PI Controller
PID Controller
24 Source: S. Castaño
2nd Method Ziegler & Nichols - Closed-Loop
Continuous Controller
Ku → Critical gain, obtained by increasing
Kp until a steady state oscillation occurs.
Pu → Critical
period in sec!
PID Controller
25 Source: S. Castaño; jenkins_he
Challenge
Continuous Controller
● Design the controller for the following system using the Z-N method. Determine the
Ku & Pu parameters with MATLAB and find the C(s) expression. Finally, show the
output (time response) of the resulting CS in Simulink.
26
Solution
Continuous Controller
Pu = 1.9
Ku = 6
27
Solution
Continuous Controller
28 𝑪(𝒔) = 𝟑. 𝟔 (𝟏 + 𝟏/𝟎. 𝟗𝟓𝒔 + 𝟎. 𝟐𝟒𝒔)
Continuous Controller
● Automatic tuning method:
○ Automatically tune PID controllers using software tools:
■ Makes the trial-and-error process described above unnecessary.
■ Achieves the optimal system design and,
■ Meets design requirements, even for plant models that traditional rule-based
methods cannot handle well.
● An automated PID tuning workflow involves:
○ Identifying the plant model from input-output test data.
○ Modelling PID controllers (e.g., Control System Toolbox for MATLAB/Simulink).
○ Automatically tuning PID controller gains and fine-tuning your design interactively.
29 Source: CTMS; mathworks; Open_Polytech: PID controller
Example
Continuous Controller
𝑮𝒄 𝒔 = ? ? ?
30 Source: Matlab
Example
Continuous Controller
31 Source: Matlab
Example
Continuous Controller
32 Source: Matlab
Example
Continuous Controller
33 Source: Matlab
Challenge
Continuous Controller
𝑒𝑠𝑠 = 0
𝑀𝑝 < 5%
Automatic Tuning
34
Solution
Continuous Controller
Automatic Tuning
35
RA#1.3 Optional
PID Controller
● Design the controller for the following system using the automatic tuning method.
Find the C(s) expression. Finally, show the output (time response) of the resulting CS
in Simulink. Assume that the process (two tanks) is part of a unity feedback system.
Source: SAMSON, Controllers and Controlled Systems
Overshoot between 7% and 8%, faster rise time (50% better than
uncompensated feedback system), and zero steady-state error.
36
Continuous Controller
● Implementing a PID controller:
○ Can be done with analog components (OP)
41 Source: CSE P567; Control_Automation
Continuous Controller
● Implementing a PID controller:
○ Microcontroller is much more flexible!
■ In hardware & Software (C language)!
42 Source: CSE P567; pic-microcontroller
DC Motor Position Control
Continuous Controller
Current_Error = Set Point – Process Variable
Control Variable = Kp * Current_Error
The integral is merely an accumulated error signals
encountered since startup.
Integral = Integral + Current_Error
Control Variable = (Ki*Integral)
The derivative of any variable describes how that
variable changes over time.
PID: The derivative is the rate of change of the error.
Derivative = Current_Error – Previous_Error
Control Variable = (Kd * Derivative)
43 Source: Kong Wai Weng
Continuous Controller
● Implementing a Simple DC motor PID
controller using Arduino
[Link]
ngs/6nzeZ1nk8sJ-dc-motor-pid-
control
44
:)
Your brain ran into a need that could be
handled by taking a break!!!
You can go for a glass of water, coffee, stretch, bath...
45