Controller Requirements
Contents
Controller Requirements#
Plant Approximation#
Second Order System
\[\begin{align*}
P(s) = K\dfrac{\omega_0^2}{s^2 + 2\zeta \omega_0 s + \omega_0^2}
\end{align*}\]
Convert Time Requirements#
Given
\(t_r\) rise time
\(t_p\) peak time
\(t_s\) settling time
Use given phase margin (or calculate) to solve for \(\zeta\).
\[\begin{align*}
M_p &= \dfrac{\text{overshoot}}{V_{ref}} \dfrac{[V]}{[V]}\ \text{ [unitless]} \\[1em]
M_p &= e^{-\bigg(\dfrac{\pi \zeta}{\sqrt{1-\zeta^2}}\bigg)}
\end{align*}\]
Use \(\zeta\) to solve for \(\omega_0\).
\[\begin{align*}
t_r &= \dfrac{\pi - \tan^{-1}\bigg(\sqrt{\frac{1-\zeta^2}{\zeta}}\bigg)}{\omega_0 \sqrt{1-\zeta^2}}
\approx \dfrac{5}{3 \omega_0 \sqrt{1-\zeta^2}} \\[1em]
t_p &= \dfrac{\pi}{\omega_0 \sqrt{1-\zeta^2}}
\end{align*}\]
Solve for \(\omega_n\) based on settling requirements
\[\begin{align*}
\text{[2% of $V_{ref}$] }\ \ t_s &= \dfrac{4}{\zeta \omega_n} \\[1em]
\text{[5% of $V_{ref}$] }\ \ t_s &= \dfrac{3}{\zeta \omega_n}
\end{align*}\]
Controller Properties#
Open Loop general design:
\( |C(s) \cdot P(s) | \) has high gain at frequencies where disturbance is present
\(|C(s) \cdot P(s) |\) has low gain at frequencies where noise is present
Step 1. Integral Controller
\[\begin{align*}
C(s) = \dfrac{K_1}{s}
\end{align*}\]
Step 2. Proportional Integral (PI) Controller
Add zero immediately after gain cross frequency \(\omega_c\)
\[\begin{align*}
C(s) &= K_p + \dfrac{K_i}{s} \\[1em]
&= \dfrac{sK_p+K_i}{s} \\[1em]
&= K_1\dfrac{s/\alpha+1}{s}
\end{align*}\]
Check Design#
Bode response should have the following properties
\[\begin{align*}
\text{PM (deg)} &= \bigg[\tan^{-1}\bigg(\frac{2\zeta}{\sqrt{1-2\zeta^2}}\bigg) \bigg] \cdot \dfrac{180}{\pi} \\[1em]
\omega_c \text{ (rad)} &= \omega_0 \sqrt{1-2\zeta^2}
\end{align*}\]
MATLAB Bode Response: MATLAB defines multiple cross over frequencies. The gain crossover frequency we’re interested in is Wcp.