Republic of the Philippines
BATANGAS STATE UNIVERSITY
The National Engineering University
Alangilan Campus
Golden Country Homes, Alangilan Batangas City, Batangas, Philippines 4200
Tel Nos.: (+63 43) 425-0139 local 2121 / 2221
E-mail Address:[Link]@[Link] | Website Address: [Link]
CHAPTER 5 -ANALYSIS AND DESIGN OF FEEDBACK SYSTEMS
PRE-LABORATORY SIMULATION (MATLAB OFFLINE)
Procedures:
1. Open the script in MATLAB and locate the student_exoskeleton_reduction function
within Part 1.
2. Initialize the Laplace variable by defining s = tf('s');.
3. Construct the PD Controller transfer function C(s) and the mechanical Plant transfer
1
function G(s) by assigning 𝐶 = 𝐾𝑝 + 𝐾𝑑𝑠; and 𝐺 = 2 ;.
𝐽𝑠 + 𝑏𝑠
4. Perform the block diagram reduction to find the total closed-loop system using T_sys =
minreal(feedback(C * G, 1));.
5. Run the script to execute your code and launch the "Exoskeleton Joint Digital Twin"
dashboard.
6. Use the sliders in the "Patient Specific Parameters" panel to define the physical
characteristics of the user, then tune the "Controller Tuning Parameters" panel.
7. Click the "EXECUTE STEP" button to simulate a commanded leg movement and
observe the real-time effects across the 3D exoskeleton render and the time-domain
tracking plots.
Guide Questions:
1. Based on the "Mathematical Engine: Block Reduction" panel, how do the Proportional
Gain (Kp) and Derivative Gain (Kd) mathematically combine with the Plant's denominator
to form the characteristic equation of the final T(s)?
2. Looking at the "Time Domain: Knee Angle Tracking" plot, what happens to the system's
overshoot and settling time if you significantly increase the "Body Mass (m)" without
appropriately increasing the Controller Gains to compensate?
Republic of the Philippines
BATANGAS STATE UNIVERSITY
The National Engineering University
Alangilan Campus
Golden Country Homes, Alangilan Batangas City, Batangas, Philippines 4200
Tel Nos.: (+63 43) 425-0139 local 2121 / 2221
E-mail Address:[Link]@[Link] | Website Address: [Link]
LABORATORY SIMULATION (MATLAB ONLINE)
Procedures:
1. Open the script within your MATLAB Online workspace.
2. Review STEP 1 and STEP 2 to identify the inherently unstable plant (Gp) and the
Proportional-Derivative controller (C), noting how they are initially combined into an
open-loop architecture using the series() command.
3. Navigate to STEP 3 to observe how the feedback(G_ol, 1) command is utilized to apply
unity negative feedback, effectively closing the loop around the system.
4. Examine the use of the pole() function in both STEP 2 and STEP 3, which
programmatically extracts the mathematical roots of both the open-loop and closed-loop
transfer functions.
5. Run the script. Compare the numerical poles printed in your Command Window against
the generated Figure window to visually correlate how shifting the poles mathematically
translates into the physical difference between a diverging unstable trajectory and a
stabilized step response.
Guide Questions:
1. Looking at the open-loop analysis in STEP 2, the pole(G_ol) function extracts the
mathematical roots of the uncompensated system. What specific numerical property of
these extracted roots (specifically regarding their real parts) strictly defines the magnetic
levitation plant as inherently unstable?
2. In STEP 3, the closed-loop system is generated using the command feedback(G_ol, 1). If
the physical position sensor in this control loop had a specific measurement gain of 0.5
instead of a direct 1:1 unity reading, how would you need to modify the arguments inside
this specific MATLAB function?