Manipulate[
(*by Nasser M. Abbasi, oct 21, 2015*)
Module[{sol,out1,out0,kLow,kHigh,sys1,sys0,t,p,x,y},
sol=Reduce[f[k,Rationalize@z,Rationalize@gamma]≤1&&g[k]<=Rationalize@eps&&k>0,k,Reals];

If[sol===False,
out1={};
sol=Style[Text["No K was found, please try again"],12]
,
{kLow,kHigh}=N@sol/.Inequality[x_,LessEqual,k,LessEqual,y_]->{x,y};
(*sys=TransferFunctionModel[  kLow/(1+kLow)  wNew[wn,kLow]^2/(s^2+2*zNew[z,kLow]*wNew[z,kLow]*s+wNew[z,kLow]^2),s];*)
sys1=TransferFunctionModel[  kLow  wn^2/(s^2+2*z*wn *s+wn^2(1+kLow)),s];
out1=OutputResponse[sys1,UnitStep[t],{t,0,timeRange}];
sol=N@sol
];

sys0=TransferFunctionModel[   wn^2/(s^2+2*z*wn *s+wn^2),s];
out0=OutputResponse[sys0,UnitStep[t],{t,0,timeRange}];
If[out1==={},
p=Plot[{1,out0},{t,0,timeRange},PlotRange->All,GridLines->Automatic,
GridLinesStyle->LightGray,
ImageSize->400,
PlotStyle->{Dashed,Red}
,Frame->True,FrameLabel->{{"y(t)",None},{"time (sec)","Step response (G(s) only)"}}
,ImagePadding->All
]
,
p=Plot[{1,out1,out0},{t,0,timeRange},PlotRange->All,GridLines->Automatic,
GridLinesStyle->LightGray,
ImageSize->400,
PlotStyle->{Dashed,Blue,{Dashed,Thin,Red}}
,Frame->True,FrameLabel->{{"y(t)",None},{"time (sec)","Step response (Blue is T(s), red is G(s)))"}}
,ImagePadding->All
]
];

Grid[{
{Pane[sol,ImageSize->{400,20},Alignment->Center]},
{Pane[Row[{"(open loop) G(s)=((Subscript[ω, n]^2)/((s^2) + 2 (Subscript[ξω, n]) s + (Subscript[ω, n]^2)))=",((wn^2)/((s^2)+2 z wn s+wn^2))}],ImageSize->{400,40},Alignment->Center]},
If[out1==={},
{Pane[Row[{"(closed loop) T(s)=\!\(\*FractionBox[\(\(\\ \)\(k\\ \*SubsuperscriptBox[\(ω\), \(n\), \(2\)]\)\), \(\*SuperscriptBox[\(s\), \(2\)] + 2 \*SubscriptBox[\(ξω\), \(n\)] s + \((1 + k)\) \*SubsuperscriptBox[\(ω\), \(n\), \(2\)]\)]\)= ??"}],ImageSize->{400,40},Alignment->Center]},
{Pane[Row[{"(closed loop) T(s)=\!\(\*FractionBox[\(\(\\ \)\(k\\ \*SubsuperscriptBox[\(ω\), \(n\), \(2\)]\)\), \(\*SuperscriptBox[\(s\), \(2\)] + 2 \*SubscriptBox[\(ξω\), \(n\)] s + \((1 + k)\) \*SubsuperscriptBox[\(ω\), \(n\), \(2\)]\)]\)=",((kLow*wn^2)/((s^2)+2 z wn s+kLow* wn^2))}],ImageSize->{400,40},Alignment->Center]}
],
{Pane[p,ImageSize->400,Alignment->Center]}},Frame->All,Alignment->Center
]

],
{{z,0.1,Row[{"damping (",ξ,")"}]},0.01,0.99,0.01,Appearance->"Labeled",ImageSize->Small},
{{gamma,1.4,Row[{ "(Subscript[y, max]) (",γ,") ⩽ "}]},1,2,.01,Appearance->"Labeled",ImageSize->Small},
{{eps,0.29,Row[{"|(Subscript[y, ss])-1| (",ϵ,") ≲"}]},0.01,0.4,.01,Appearance->"Labeled",ImageSize->Small},
{{wn,0.1,(Subscript[ω, n])},0.01,0.4,.01,Appearance->"Labeled",ImageSize->Small},
{{timeRange,400,"range"},10,1000,1,Appearance->"Labeled",ImageSize->Small},
ContinuousAction->False,
SynchronousUpdating->False,ControlPlacement->Left,Alignment->Center,ImageMargins->0,FrameMargins->0,
TrackedSymbols:>{z,gamma,eps,wn,timeRange},
Initialization:>
{
zNew[z_,k_]:=z/Sqrt[1+k];
wNew[wn_,k_]:=wn*Sqrt[1+k];
f[k_,z_,gamma_]:=Module[{},
Log[(k/(gamma *(1+k)-k))]1/Pi * Sqrt[1-zNew[z,k]^2]/zNew[z,k]
];
g[k_]:=1/(1+k);
}
]