Assignment 2

Due Date

Friday, June 19, 2015 (i.e., Saturday before 1 am)


  • Introduction to PID controllers
  • Introduction to Ziegler-Nichols Method
  • Ziegler-Nichols Rules for Tuning PID Controllers
  • Design a simple PID controller for a resource control problem
  • Simulate a PID controller using MATLAB


This assignment consists of two parts. In Part I you are to study Proportional Integral Derivative controllers. In Part II you are to implement design and implement a PID controller and simulate it using MATLAB.

Part I

In Part I you are to answer some basic questions about PID controllers. To get started read the Ziegler-Nichols Rules for Tuning PID Controllers.

The answers for these questions should fit into Maximum 3 typeset pages.

Question 1: List any three Control Types Associated with Using the Ziegler-Nichols method.

Question 2: Use the Ziegler-Nichols Method to Solve for i) classic PID ii) no overshoot PID. (where: ultimate gain Ku = 2.3, oscillation period Tu = 0.8s)

Question 3: Describe a scenario where no overshoot PID would be advantageous over classic PID.

Question 4: Use MATLAB to develop any controller for the following LTI system. Make up any controller you want and play with it until you’re happy with the Step Response produced. What is your control equation C?


r is the desired output of system G

e = r - y is the error or difference between desired and current output

u is the input to the system that will hopefully correct the output y to be closer to e

Provide a printout of the step response of the system when using your C.

Question 5: Repeat Question 4, but use the Ziegler Nichols method to create a PID C and print the Step Response as well.

what were your values for:

Proportional Gain Kp:

Integral Gain Ki:

Derivative Gain Kd:


Do not copy verbatim from any source. Cite your sources.

Part II - Group Project (4 people max per group)

In Part II you are to design and simulate a simple PID controller. Moreover, you are to document your experience in the form of a tutorial.

  • Study the PID controllers as discussed in class.
  • Watch the videos posted in the resource section on PID controllers.
  • Define a simple resource control problem.
  • Design a simple PID controller for this resource control problem.
  • Simulate your PID controller using MATLAB.
  • Write a tutorial for software engineering or computer science undergraduate students on how to build a simple PID controller using MATLAB.

The answers for this question should fit into Maximum 4 typeset pages.

You only need to submit one document and m file per group.

Do not copy verbatim from any source. Cite your sources.



Evan Wilde, Sean Debroni, Navdeep Bahia


Parminder Kaur, Navpreet Kaur,


Eli Wyman, David Bayly, Jon Bowen


Daniel Oon, Alex Li, Samuel Navarrete


Mohammed Nader Zuhri Yafi, Adnan Duale, Miles Barr


Arturo Reyes Lopez, Maria Ferman Guerra, Babak Tootoonchi


Adel Adil, Jason Yu, Richard Wagner


Simon Taft, Jason Cho, Anthony Kohan, Fraser DeLisle


Ernest Aaron, Stephan Heinemann, Harshit Jain, Simar Arora


Patrick Lavoie, Carly Lebeuf, Dustin Faulkner


Junnan Lu, Colum McClay, Bill Xiong, Sahibdeep Sran


Francis Harrison, Muhammad Zubair, Jorge Conde Gomez Llanos


Zhuoli Xiao, Zhanxue Zhu, Scott Li, Pufan Zheng, Zhenyu Zh


Tory Borsboom-Hanson, John Cox, Tim Dalton



Khushboo Gandhi, Abhi Jagdev, Adithya Rathakrishnan


Sumit Kadyan, Waseem Ullah Khan, Ian Leslie


MacKay McGillivray, Mohammad Bin Abdulsalam  


Rodney Gelera, Conner McConkley, Darren Prince

How to submit

Send e-mail with solution in pdf format to Ensure e-mail subject line is in the following format:




and filename is in the following format:




where course_number is either seng480a, csc485a, or csc586a. 



subject: seng480a-A2

filename: seng480a-john-doe-v00666.pdf or


For Part II, the person submitting for the group must include the list of their group members in the following format:




This list should be added at the end of Part II i.e.: inside the pdf.


Part I is worth 50%; and Part II 50%