G = (s + 1)/(s^3 + 6*s^2 + 10*s - 15);
Tcl = simplifyFraction(Tcl)
Tcl =

[den, term] = coeffs(den, s, 'All')
den = 
term = 
sympref('FloatingPointOutput', true);
eq1 = exp(-zeta*pi / sqrt(1 - zeta^2)) == Mp;
zeta = double(vpasolve(eq1, zeta, [0 1]));
Pd = s^2 + 2*zeta*wn*s + wn^2;
Pr = (s + e)*(s + e + img*1i)*(s + e - img*1i);
[Pe, term] = coeffs(Pe, s, "All")
term = 
Eq1 = eq2(1)
Eq1 = 
Eq2 = eq2(2)
Eq2 = 
Eq3 = eq2(3)
Eq3 = 
Eq4 = eq2(4)
Eq4 = 
Eq5 = eq2(5)
Eq5 = 
Eq6 = eq2(6)
Eq6 = 
Eqs = [Eq3, Eq4, Eq5, Eq6];
sol = solve(Eqs, [K1, K2, K3, e], 'Real', true, 'ReturnConditions', true)
sol =
K1: 86.5771
K2: 65.6520
K3: 20.2595
e: 1.6131
parameters: [1x0 sym]
conditions: symtrue
C = pid(Kp, Ki, Kd)
C =
1
Kp + Ki * --- + Kd * s
s
with Kp = 65.7, Ki = 86.6, Kd = 20.3
Continuous-time PID controller in parallel form.
G = (s + 1)/(s^3 + 6*s^2 + 10*s - 15)
G =
s + 1
-----------------------
s^3 + 6 s^2 + 10 s - 15
Continuous-time transfer function.
H = 10/(s + 10)
H =
10
------
s + 10
Continuous-time transfer function.
Tcl = feedback(series(C, G), H)
Tcl =
20.26 s^4 + 288.5 s^3 + 1011 s^2 + 1609 s + 865.8
-----------------------------------------------------
s^5 + 16 s^4 + 272.6 s^3 + 944.1 s^2 + 1372 s + 865.8
Continuous-time transfer function.
[ncl, dcl] = tfdata(Tcl, 'v');
Gf = tf(dcl(end), ncl)
Gf =
865.8
-------------------------------------------------
20.26 s^4 + 288.5 s^3 + 1011 s^2 + 1609 s + 865.8
Continuous-time transfer function.
Fcl = minreal(series(Gf, Tcl))
Fcl =
865.8
-----------------------------------------------------
s^5 + 16 s^4 + 272.6 s^3 + 944.1 s^2 + 1372 s + 865.8
Continuous-time transfer function.
S2 = stepinfo(Fcl)
S2 =
RiseTime: 1.8913
TransientTime: 4.0858
SettlingTime: 4.0858
SettlingMin: 0.9077
SettlingMax: 1.0200
Overshoot: 2.0000
Undershoot: 0
Peak: 1.0200
PeakTime: 4.0855
step(Tcl, 2*round(S2.SettlingTime))
step(Fcl, 2*round(S2.SettlingTime))
legend('Tcl', 'Fcl', 'location', 'east')