EE402 Mini Project 1
EE402 Mini Project 1
M. Mert Ankarali∗
Department of Electrical and Electronics Engineering
Middle East Technical University
Important: In this mini project, there are 7 problems. In problems 4 to 7, you are supposed to perform
some computations/simulations in MATLAB/Simulink and plot some results. You should provide all of your
source codes, Simulink models, and results with your submission.
1. For each of the following systems with input u and output y, for CT systems t ≥ 0, whereas for DT
systems k ≥ 0; determine whether the system is memoryless, linear, time-invariant, causal, finite-
dimensional ? Justify your answers!
(a) y(t) = sin t3 u(t)
3
(b) y[k] = (sin[k]u[k])
Rt
(c) y(t) = τ 2 u(t − τ )dτ
0
(d) y[k] = 4u[k] + 8
(e) y(t) = u(t) − u(t − T )
(f) y[k] = u[k] − u[k − N ]
2. Compute Y (s)/U (s) for the following system and then comment on the function/role of the dynamical
system
Zt
y(t) = h(t − τ )u(τ )dτ
t−T
1
T if t > 0
h(t) =
0 if t ≤ 0
3. Find the Z-transform (manually without using computational tools) of the following discrete-time
signals (given that x[k] = 0 for k < 0 for all parts.).
1
x[k]
1
2/3
...
1/3
4. In this problem your goal is to take the inverse Z-transform of the following z-domain function using
4 different methods and compare all solutions in MATLAB.
z −1
X(z) =
(1 − z −1 ) (1 + 0.1z −1 − 0.2z −2 )
(a) Find a closed form expression of the inverse Z-transform of X(z) using partial fraction expansion
and Z-transform tables
(b) In this part, your goal is to find the inverse Z-transform by long division method. However,
unlike the example in the class (or examples in textbook), you will not perform the long-division
by hand. Instead, you are supposed to write a MATLAB code that performs the long-division
iteratively and finds the inverse Z-transform of X(z) until k = 15.
(c) Inside the Lecture Notes 3, we covered a method of inverse Z-transform which treats the X(z) as
a “system”, then transforms this synthetic system to the difference equation form, and finally the
inverse Z transform is found by “simulating” this new difference equation form.
• Following the procedure detailed in the Lecture notes 3, find the necessary difference equation
form.
• Write a custom code that “simulates” the difference equation (with proper input) until k = 15.
The output of this simulation should give x[k] = Z −1 {X(z)}
(d) MATLAB has built-in toolboxes (Control System Toolbox, Signal Processing Toolbox, Symbolic
Math toolbox, etc.) that can compute the inverse Z-transform of a function using different ap-
proaches (One of them is explained in the textbook). Compute/find the inverse Z-transform of
X(z) using one of the built-in methods of MATLAB.
5. In this problem, your goal is to solve the following difference equation using 3 different methods.
(a) Solve the difference equation (in time domain or using Z-transform) and find an analytic closed
form expression.
(b) Simulate the difference equation in MATLAB until k = 15. You can either implement your own
custom code, or use one of the built-in features of MATLAB.
2
6. Consider the following transfer function of a discrete time controller/filter.
0.5z 3 − z 2 + 0.625z
G(z) =
z 4 − 1.1z 3 − 0.16z 2 + 0.32z
• Find a minimal realization of the discrete time transfer function.
• In Simulink, build the block diagram realization (use delay block and other necessary elements)
and connect a Step/DC input source to the input terminal and connect a scope to the output
terminal.
• On the same model page, implement the transfer function now using the Discrete Filter block
and connect the input of this block to the same input source, and connect the output to the same
scope.
• Simulate the Simulink model(s) and compare the outputs.
7. Consider the digital time control system block-diagram given in the Figure below.
+ + y(t)
r(t) ZOH
− +