Process control Ziegler-Nichols PID Tuning Method

A control system with a Ziegler-Nichols PID controller is represented as shown below.

Ziegler-Nichols PID controller

The Ziegler-Nichols rule for PID loop tuning is used to obtain approximate values for three gain parameters of the PID controller: the controller’s path gain, Kp, the derivative time constant, Td and integrator time constant, Ti. From the feedback transfer function of the system, the gain margin, Ku and the period of oscillation, Tu at the system stability limits are measured and used for tuning the PID parameters. The goal of Ziegler-Nichols PID tuning is to achieve good disturbance rejection.

In the MATLAB Code attached, the plant transfer function, G(s) is first generated from the inputs entered by the user (numerator and denominator of the transfer function). The plant transfer function is used to obtain the closed loop margins (Ku and Tu). The margins are used to calculate the critical path gain (Kc), integrator time (Ti) and the derivative time (Td) to be used for the Ziegler-Nichols PID tuning. For a classical Ziegler-Nichols controller, the values are calculated as: Kc=0.6 ×Ku,; Ti=0.5 × Tu; Td=0.125 ×Tu

The Ziegler-Nichols PID controller is then obtained as: Wc=Kc (1+1/(Ti s)+Td s). The compensated closed loop response is obtained by combining the Ziegler-Nichols controller in series with the plant in a unity feedback system as CLTF=feedback(series(G,Wc ),1)

As an example, the step response of the uncompensated and compensated (controlled) systems for a third-order system transfer function, G=1/(s3+4s2+6s+1) is shown in the figure below:

step response of the controlled systems for a third-order system
%% To run the code, write the function name into the command window
% For Example:
%............and press enter

%% Inputs to the Ziegler Nichols PID Tuner
% num : Numerator(starting from highest order of coefficients)in
% form of []
% den : Denomerator(starting from highest order of coefficients)in
% form of []

function ZN =Ziegler_NicholsPID()
num=input("Enter the numerator of the open-loop system transfer function, num : ");
den=input("Enter the denominator of the open-loop system transfer function, den : ");
G=CreatePlant(num,den) %Plant transfer function
[Kcr,Pm,Wcg,Wcm]=margin(G1); %Finding margins of the uncompensated system
Tcr=2*pi/Wcg; %Finding the time from the gain margin frequency.
Kc=0.6*Kcr; %Critical gain
Ti=0.5*Tcr; %Reset time (minutes)
Td=0.125*Tcr; %Derivative time (minutes)

%Creating Ziegler-Nichols PIDController transfer function
Wc=ZieglerNicholsPIDController( Kc,Ti,Td )

%Closed loop system function with Z-N controller in series with the
% Wp : Plant transfer function
% Wc : Ziegler-Nichols PIDController transfer function
% CLTF : Closed Loop transfer function (H=1, Unity feedback).
figure (1)
step(G1,t, 'b')
hold on
step(CLTF,t, 'r')
hold off
legend ("Untuned system","Zieler-Nichols Tuned System")

%% Creating the plant to control
%CreatePlant will create the open loop plant's transfer function with the
%num and denomitor values entered
function [ Plant ] = CreatePlant( num,den )
syms s;

%% ZieglerNicholasPIDController function to generate the PID controller transfer function
function Wc  = ZieglerNicholsPIDController( Kc,Ti,Td )
% Kc : Critical gain
% Ti : Reset time (minutes)
% Td : Derivative time (minutes)
% Wc : Ziegler-Nichols PID controller in Laplace
Want latest solution of this assignment

+ Submit Your Assignment Here

AssignmentHippo Features

On Time Delivery

Our motto is deliver assignment on Time. Our Expert writers deliver quality assignments to the students.

Plagiarism Free Work

Get reliable and unique assignments by using our 100% plagiarism-free.

24 X 7 Live Help

Get connected 24*7 with our Live Chat support executives to receive instant solutions for your assignment.

Services For All Subjects

Get Help with all the subjects like: Programming, Accounting, Finance, Engineering, Law and Marketing.

Best Price Guarantee

Get premium service at a pocket-friendly rate at AssignmentHippo


Client Review

I was struggling so hard to complete my marketing assignment on brand development when I decided to finally reach to the experts of this portal. They certainly deliver perfect consistency and the desired format. The content prepared by the experts of this platform was simply amazing. I definitely owe my grades to them.

Tap to Chat
Get instant assignment help