ece509 analysis of linear systems project 3 version 3 100 pts 1 40 pts
Search for question
Question
ECE509 Analysis of Linear Systems
Project #3 Version 3 (100 pts.)
1. (40 pts.) Consider the SISO system from:
-3
−1
0
0
21
7
1
-2
x(t)
=
-1702 -354
-824
x(t) +
-120
209
-168 -58 100
y(t)= [135 45
8 -15] x(t)
102
u(t)
Verify that this system is controllable and observable in MATLAB. In Simulink, design a state feedback
controller such that the system meets or exceeds the following specifications when tracking a square wave
alternating between -2 and 1 at 1.5 Hz for seconds:
(a) Maximum settling time for 98% criterion: 0.15s
(b) 0.95 ≤ y(t) ≤ 1.05 for 2.5s ≤ t < 2.66s
(c) -2.05 y(t) ≤ -1.95 for 3.5s ≤ t < 3.66s
Plot the reference signal r(t) along with the output y(t) for 5 seconds. In a separate figure, plot the control
signal u(t). Also state what your final poles and k vector are.
A state feedback flow diagram is given below. You can implement the model however you like in Simulink
as long as the implementation can accommodate a system of arbitrary order N.
u(t)
x(t)
x(t)
r(t)
KF
+
b
S
C
y(t)
k
A
2. (40 pts.) Now consider the system from (1) and implement feedback via a state observer:
Here you no longer have access to the state vector ☑(t), only the output y(t). Design a system using
a state observer that is able to track a square wave alternating between 0 and 3 with a frequency of your
choice
following:
-
but make sure the frequency is chosen so that steady-state tracking can take place. Do the
(a) Describe your overall control design solution.
(b) State the frequency of the reference signal.
(c) Simulate the system with your control solution. Demonstrate your design by plotting, in one figure, the
real state and its estimate, and in another, the real and estimated output together with the reference
to be tracked. Show two full periods of your reference. Make sure the plant and observer have different initial conditions (of your choice), so that the
effect of the observer can be clearly seen.
The figure below gives a flow diagram for state feedback control using an observer. You may implement the
system in Simulink however you wish as long as the implementation can accommodate a system of arbitrary
order N.
u(t)
x(t)
x(t)
r(t)-kF
+
b
S
C
y(t)
k
+
x(t)
2
A
L
S
A - Lc 3. (20 pts.) A More Realistic Example: Mechanical Press
A simple mechanical press can be modeled as two rotating masses joined by a torsional spring, as depicted
in Figure 1. 01 and wi ė₁ are, respectively, the angle and angular speed of the press motor spindle.
=
01, W1
J₁
02,W2
k1, C1
и
J2
Similarly, W2
=
Figure 1: Schematic diagram of a mechanical press.
№2. In a typical press application, it is of interest to control the motor angle, 0₁. The
parameters of the system are as follows:
• J₁ = 0.1722kg • m²: inertia of rotating mass 1;
• J₂ = 0.1392kg • m²: inertia of rotating mass 2;
.
• kı
20491N m/rad: torsional spring constant; and
• C₁ = 4.7521N s/m: damping coefficient.
By choosing the states x(t) = [01, W1, 02, W2]T, the press can be modeled by the state equation
x(t) =
=
0
1
0
0
0
-k1/J1 -C1/J1
k1/J1
C1/J1
J₁
x(t) +
u(t)
0
0
0
1
k1/J2 C1/J2
-k1/J2-C1/J2]
0
y(t) = [1000] x(t),
and the output y(t) is in radians. It is desired to track a reference r(t) that can be produced by using the
following code:
% Set time vector
t =
[0:0.001:4];
% Set reference signal
r =
(t<=0.6).*t*12/0.6 + (t>0.6 & t<=1)*12 +...
(t>1 & t<=2).* (18-6*t) +...
(t>2 & t<=2.6)*6 + (t>2.6 & t<=3)*12 +...
(t>3 & t<=4)*9;
figure (1)
plot(t, r 'LineWidth', 2)
grid
,
xlabel('Time (s)')
ylabel('Reference (rad)')
title('Desired reference position')
Set the initial conditions as follows: ✗(0) = [7, −3, 2, 1]T, and (0) = 0. Let the tracking error be defined
as e(t) = r(t) − y(t). Design a state feedback controller together with a state observer that can track the
reference given in the MATLAB code above while satisfying the following design specifications:
(a) e(t)|≤7 rad for 0 ≤ t ≤ 0.25s.
(b) e(t) ≤ 0.3 rad for t = 0.6s. (c) The settling time (98% criterion) for the step at t = 2.6s should be less than 0.05s.
(d) The e(t) ≤6 rad for 2.5s < t <= 4s.
A good way to solve such a problem is to first design the state feedback, temporarily assuming that the
state vector x(t) is available, and meet the requirements. Then, use x(t) from the observer instead of x(t)
and design the observer to still meet the requirements.
Provide enough support via plots to show that your design meets all the given specifications.
General notes and hints:
• Your report should be well written and presented. If you need assistance with writing, contact The Write
Place. Be clear and concise. A report not satisfying these requirements will lose 15% credit.
• Only include your result plots and any pertinent analysis in the main portion of your report. Submit MATLAB
code and Simulink files separately, NOT in the report.
• All figures must be carefully labeled. The x and y axes should be labeled, a title used, and a legend should
be included when more than one signal is plotted in the same figure.
• Submit your report as a PDF along with MATLAB code and Simulink files in electronic form in a ZIP file
via Isidore. A report submitted in any format other than PDF will automatically lose 10% credit.
• Last, but not least, ensure the work you turn in is your own, from the code to the report. It is OK
to talk with other students about the project. It is NOT OK to claim a design or technical explanation very
similar to anyone else's as your own. Any evidence of exchanging code, models, model parameters, text,
figures, etc., between students past or present will result in an automatic 0 for the project. If you have
concerns regarding your design, implementation, report, etc., contact Dr. Kaufman more than 24 hours
prior to the due date.
4