Digital Controller
一、基本思想
- 将系统中被控对象及零阶保持器进行离散化,得到广义对象
- 根据系统的性能指标及约束条件,确定闭环期望传递函数 或误差传递函数
- 进一步得到数字控制器
- 将 写为差分方程的形式,得到控制算法
二、数字控制器一般形式

广义对象传递函数: 信号保持
G(z)=\mathscr{Z}[G_{h}(s)G_{0}(s)]=G_{h}G_{0}(z)=(1-z^{-1}) \mathscr{Z}[ \dfrac{G_{0}(s)}{s}] \end{align}$$ **误差传递函数**及误差序列: $$\begin{align} \varPhi_{e}(z)= \dfrac{E(z)}{R(z)}= \dfrac{1}{1+D(z)G(z)}\quad \quad e(k)=\mathscr{Z}^{-1} [\varPhi_{e}(z)R(z)] \end{align}$$ **闭环传递函数**及输出序列: $$\begin{align} \varPhi(z)= \dfrac{Y(z)}{R(z)}= \dfrac{D(z)G(z)}{1+D(z)G(z)}=D(z)G(z)\varPhi_{e}(z) = 1- \varPhi_{e}(z)\quad \quad y(k)=\mathscr{Z}^{-1}[\varPhi(z)R(z)] \end{align}$$ $$\begin{align} Y(z)+E(z)=R(z)\quad \quad y(k)=r(k)-e(k) \end{align}$$ **数字控制器**及控制序列: $$\begin{align} D(z)=\dfrac{U(z)}{E(z)}= \dfrac{1}{G(z)} \dfrac{\varPhi(z)}{1-\varPhi(z)}\quad \quad u(k)=\mathscr{Z}^{-1}[D(z)E(z)] \end{align}$$ > [!question] > > 离散序列指的是 $u(kT)$,为书写方便,可以直接写为 $u(k)$ ### 三、零阶保持器和惯性环节串联的 z 变换 #### 1. 零阶保持器和一阶惯性环节串联 (一阶) $$\begin{align} & \mathscr{Z} \left[ \dfrac{1-e^{ -sT }}{s}\times \dfrac{1}{T_{1}s+1}\right] \\ =& (1-z^{-1})\mathscr{Z} \left[ \dfrac{1}{s(T_{1}s+1)} \right] = (1-z^{-1})\mathscr{Z} \left[ \dfrac{1}{s} -\dfrac{T_{1}}{T_{1}s+1} \right] \\ = &(1-z^{-1}) \mathscr{Z} \left[ \dfrac{1}{s}- \dfrac{1}{s+ \dfrac{1}{T_{1}}} \right] = \left(1- \dfrac{1-z^{-1}}{1- e^{ -T/T_{1} }z^{-1}}\right) \\ = & \dfrac{ (1-e^{ -T/T_{1} } ) z^{-1}}{1-e^{ -T/T_{1} }z^{-1}} \end{align}$$ #### 2. 零阶保持器和一阶惯性环节与一阶积分串联 (二阶) $$\begin{align} & \mathscr{Z} \left[ \dfrac{1-e^{ -sT }}{s}\times \dfrac{1}{s(T_{1}s+1)} \right] =(1-z^{-1})\mathscr{Z} \left[ \dfrac{1}{s^{2}(T_{1}s+1)}\right] \\ = & (1-z^{-1})\mathscr{Z} \left[ \dfrac{1}{s^{2}}+ \dfrac{-T_{1}}{s}+ \dfrac{T_{1}}{s+\dfrac{1}{T_{1}}} \right] \\ = & \dfrac{Tz^{-1}-T_{1}(1-z^{-1})}{1-z^{-1}}+ \dfrac{T_{1}(1-z^{-1})}{ 1-e^{ -T/T_{1} }z^{-1}} \\ = & \dfrac{(T-T_{1}+T_{1}e^{ -T/T_{1} })z^{-1}+(T_{1}-Te^{ -T/T_{1} }-T_{1}e^{ -T/T_{1} })z^{-2}}{(1-z^{-1})(1-e^{ -T/T_{1} }z^{-1})} \\ = & \dfrac{c_{1} z^{-1}+c_{2}z^{-2}}{(1-z^{-1})(1-e^{ -T/T_{1} }z^{-1})} \\ \\ & \begin{cases} c_{1}=T-T_{1}+T_{1}e^{ -T/T_{1} } \\ c_{2}=T_{1}-(T+T_{1})e^{ -T/T_{1}} \end{cases} \end{align}$$ #### 3. 零阶保持器和二阶惯性环节串联(二阶) $$\begin{align} & \mathscr{Z} \left[ \dfrac{1-e^{ -Ts }}{s} \dfrac{1}{(T_{1}s+1)(T_{2}s+1)} \right] \\ = & (1-z^{-1})\mathscr{Z} \left[ \dfrac{1}{s}+\dfrac{-\dfrac{T_{1}}{T_{1}-T_{2}}}{s+\dfrac{1}{T_{1}}}+\dfrac{-\dfrac{T_{2}}{T_{2}-T_{1}}}{s+\dfrac{1}{T_{2}}} \right] \\ = & (1-z^{-1}) \left[ \dfrac{1}{1-z^{-1}} +\dfrac{-\dfrac{T_{1}}{T_{1}-T_{2}}}{1-e^{ -T/T_{1} }z^{-1}}+\dfrac{-\dfrac{T_{2}}{T_{2}-T_{1}}}{1-e^{ -T/T_{2} }z^{-1}} \right] \\ = & \dfrac{ \left(1-(e^{ -T/T_{1} }+e^{ -T/T_{2} })z^{-1}+ e^{ (-T/T_{1}) -(T/T_{2})}z^{2}\right) + (1-z^{-1}) \left( -1+ \dfrac{T_{1}}{T_{1}-T_{2}}e^{-T/T_{2}}z^{-1} +\dfrac{T_{2}}{T_{2}-T_{1}}e^{ -T/T_{1} }z^{-1} \right) } {(1-e^{ -T/T_{1} }z^{-1})(1-e^{ -T/T_{2} }z^{-1})} \\ =& \dfrac{ \left(1-(e^{ -T/T_{1} }+e^{ -T/T_{2} })z^{-1}+ e^{ (-T/T_{1}) -(T/T_{2})}z^{2}\right) + -1 + \left( 1+ \dfrac{T_{1}}{T_{1}-T_{2}}e^{-T/T_{2}} + \dfrac{T_{2}}{T_{2}-T_{1}}e^{ -T/T_{1} } \right) z^{-1} +(\dfrac{T_{1}}{T_{2}-T_{1}}e^{ -T/T_{2} }+\dfrac{T_{2}}{T_{1}-T_{2}}e^{ -T/T_{1} })z^{2}} {(1-e^{ -T/T_{1} }z^{-1})(1-e^{ -T/T_{2} }z^{-1})} \\ =& \dfrac{ \left( 1+ \dfrac{T_{1}}{T_{1}-T_{2}}e^{-T/T_{2}} + \dfrac{T_{2}}{T_{2}-T_{1}}e^{ -T/T_{1} } + e^{ -T/T_{1} }+e^{ -T/T_{2} } \right) z^{-1} +\left(e^{ (-T/T_{1}) -(T/T_{2})} +\dfrac{T_{1}}{T_{2}-T_{1}}e^{ -T/T_{2} }+\dfrac{T_{2}}{T_{1}-T_{2}}e^{ -T/T_{1} }\right)z^{2}} {(1-e^{ -T/T_{1} }z^{-1})(1-e^{ -T/T_{2} }z^{-1})} \\ = & \dfrac{(c_{1}+c_{2}z^{-1})z^{-1}}{(1-e^{ -T/T_{1} }z^{-1})(1-e^{ -T/T_{2} }z^{-1})} \\ \\ & \begin{cases} c_{1}=1+\dfrac{T_{2}}{T_{1}-T_{2}}e^{ -T/T_{2} }+\dfrac{T_{1}}{T_{2}-T_{1}}e^{ -T/T_{1} } =1+ \dfrac{T_{1}e^{ -T/T_{1} }-T_{2}e^{ -T/T_{2} }}{T_{2}-T_{1}}\\ \\ c_{2}=e^{ -T(1/T_{1}+1/T_{2}) }+\dfrac{T_{1}e^{ -T/T_{2} }-T_{2}e^{ -T/T_{1} }}{T_{2}-T_{1}} \end{cases} \end{align}$$ $$\begin{align} \mathscr{L}[f(t)]=\int _{0}^{+\infty}e^{ -st } \, dt \end{align}$$ > [!important] > > 由于出现的频率十分高,甚至可以作为结论来简化计算量! > > 计算反复出现错误 > 1. 符号 > 2. 漏乘 $(1-z^{-1})$,非常容易漏项!!!注意次数要相等 > 3. $e^{-T/T_{1}}\cdot e^{ -T/T_{2} }=e^{ -T(1/T_{1} + 1/T_{2}) }$ 幂次相加,而不是 $e^{ T^{2}/(T_{1}T_{2}) }$ > 4. 千万注意公式的记忆!!!注意是和零阶保持器相乘得到的结果 > 5. 注意次数!!!注意 $z^{-1}$ > 6. 公式都是不带放大倍速的,实际做题要乘以系数! ### 四、数字控制器的可实现性 所谓控制器的可实现性,是指在控制算法中,不允许出现未来时刻的偏差值,即要求数字控制器 $G(z)$ 中不能有 $z$ 的正幂次项(如果出现了,就要上下同除以 $z$) ### 五、常用数字控制器 [[参数优化的低阶算法\|参数优化的低阶算法]] [[数字 PID 控制器\|数字 PID 控制器]] [[最小拍控制器\|最小拍控制器]] [[大林算法控制器\|大林算法控制器]]