能既是开环又是闭环吗?)
我先直接给结论可以但又不完全可以。这句话听起来像抬杠但控制理论里很多困惑都出在这种“既对又不对”的地方。题主的问题其实把三个概念揉在一起了传递函数、开环、闭环。简单说传递函数 G(s) 只是系统输入到输出的数学外壳它不告诉你盒子内部有没有反馈线开环和闭环说的是盒子内部有没有一条从输出绕回输入的信号通路。把这个事情掰开串级控制、等效变换、内环外环这些概念就都好说了。下面我按“先澄清概念、再讲数学反解、再讲工程差异、再回到串级控制的真实场景、最后给判断方法”的顺序把这个题目彻底说透。这篇文章既适合正在学《自动控制原理》的初学者也适合做运动控制、过程控制相关工作但被类似概念绕晕的工程师。1. 先把三个概念剥开传递函数、开环、闭环根本不是同一维度的东西1.1 传递函数是数学外壳开环/闭环是结构标签传递函数的定义很直白零初始条件下输出信号的拉普拉斯变换与输入信号的拉普拉斯变换之比写成[ G(s)\frac{Y(s)}{U(s)} ]它描述的是系统“外部端口”看到的映射关系你给一个输入输出怎么变。至于这个映射是怎么实现的是电阻电容搭出来的是控制器和被控对象合出来的还是一个电机电枢加上机械负载凑出来的传递函数本身不携带这些信息。开环和闭环就不一样了。开环指的是从输入到输出只有一条前向通路没有任何从输出反向回到输入、再参与比较的信号通道。闭环指的是存在反馈通道信号从输出端取出来经过反馈路径回到输入端的比较点再和给定值相减或相加形成一个闭合的信号回路。所以严格讲开环、闭环是系统结构属性不是函数本身自带的属性。这个区分很重要。一个传递函数表达式摆在你面前如果不给出方框图你根本无法只凭式子是多项式相除就判断它来自开环还是闭环系统。举个最基础例子。一个二阶系统传函[ G(s)\frac{\omega_n^2}{s^22\zeta\omega_n s\omega_n^2} ]它可以是一个RLC电路可以是一个质量弹簧阻尼机械系统也可以是一个位置闭环系统经过整理后得到的等效传函。表达式一模一样但内部过程完全不同。拿到 G(s) 时它顶多告诉你有两个极点、没有零点至于是开环还是闭环函数本身回答不了。1.2 一个 G(s) 能不能既被叫开环、又被叫闭环能而且这恰恰是很多教材术语造成混淆的地方。平时我们画闭环框图时候经常提到“开环传递函数”这个词。它指的是从参考输入信号到反馈信号比较点沿着前向通道和反馈通道走一整圈看到的总增益。单位反馈系统里开环传递函数就是 Gc(s)Gp(s)其中 Gc 是控制器Gp 是被控对象。如果反馈通道还有传感器动态 H(s)那就再乘上一个 H(s)。这里的关键是开环传递函数这个概念本身是定义在闭环系统内部的。它是你为了分析闭环稳定性把反馈回路在比较点处“剪开”后看到的环路增益。所以你既不能说“开环系统一定有开环传函”也不能把“开环传递函数”和“开环系统”划等号。理解了这一点题主第一句话就顺了“一个传递函数可认为是一个开环的一环”。这说的是在一个大的闭环系统里某个环节或某几个环节的串联组合可以单独拿出来当成一个传递函数 G(s)这个 G(s) 对上一层来说就是前向通路的一个组成部分或者干脆就是一个开环环节。那下一个问题自然就来了既然这个 G(s) 在更大系统里能当开环的一环那如果把它单独拿出来它自己能不能被看成一个闭环系统这就进入第二部分的数学推导。2. 数学上可以从任意 G(s) 反解出一个等效单位反馈闭环2.1 单位负反馈下的反推P(s) G(s) / (1 - G(s))我们先不看物理只看数学。假设有一个单位负反馈闭环系统前向通路传函是 P(s)反馈通道是单位反馈也就是反馈传函为 1。则闭环传递函数是[ \Phi(s)\frac{P(s)}{1P(s)} ]现在题目说我们希望这个闭环传递函数恰好等于某个给定的传递函数 G(s)也就是[ \frac{P(s)}{1P(s)}G(s) ]解这个方程[ P(s)G(s)(1P(s)) ][ P(s)-G(s)P(s)G(s) ][ P(s)\frac{G(s)}{1-G(s)} ]这就是核心结论只要 G(s) 不恒等于 1就能从它反解出一个前向通路 P(s)使得 P(s) 加单位负反馈后的闭环传函正好等于 G(s)。用正反馈也可以只不过公式变成[ P(s)\frac{G(s)}{1G(s)} ]所以从数学角度答案是明确的任何一个传递函数 G(s)都可以被当成某个闭环系统的闭环传递函数来看待。更准确的说法是存在一个闭环系统它的闭环传函恰好等于 G(s)。这里要稍微咬一下字眼。题主问“对于这个 Gs我可以认为它自己是一个闭环么”。严格说G(s) 本身不会因为数学反解就从一个开环对象“变成”一个闭环对象。正确的是说G(s) 可以被“翻译”成一组等价闭环结构的闭环传函。它是某个闭环系统的外部表达式。这个差异听着绕但后面讲工程时你会感受到它的分量。2.2 用 RC 低通传函做例子积分器加反馈就等于一阶惯性理论推完看一个电类读者一定见过的例子。RC 低通滤波器的传递函数是[ G(s)\frac{1}{RCs1} ]这是一个没有反馈的电路物理结构上看纯粹是开环输入接电阻再进电容输出从电容两端取没有任何信号从输出端绕回输入端。现在按上面的公式反解[ P(s)\frac{G(s)}{1-G(s)} \frac{\frac{1}{RCs1}}{1-\frac{1}{RCs1}} \frac{1}{RCs} ]你看到了什么P(s) 是一个纯积分环节增益为 1/RC。也就是说一个 RC 低通滤波器在数学上完全等价于“一个积分器外面套一圈单位负反馈”之后的闭环传函。很多有源滤波电路就是这么干的拿运放搭一个积分器再从输出端引回反相输入端形成单位负反馈得到的闭环传函就是典型的一阶惯性环节。这个例子特别能说明问题同一个输入输出关系也就是同一个 G(s)既可以由开环电路实现也可以由闭环电路实现。表达式不告诉你它内部是哪一种只有拿到具体电路或方框图你才能说清楚它到底是开环还是闭环。2.3 更让人意外的是反解出的前向对象可能本身不稳定再往下走一步控制理论的乐趣就出来了。假设[ G(s)\frac{K}{sa} ]其中 a0K0。按理说这是一个稳定的一阶惯性环节极点 s-a 在左半平面。现在反解出对应的前向通路[ P(s)\frac{G(s)}{1-G(s)} \frac{\frac{K}{sa}}{1-\frac{K}{sa}} \frac{K}{sa-K} ]P(s) 的极点是 sK-a。这个极点位置完全取决于 K 和 a 的大小关系。分三种情况我列个表参数关系P(s) 的极点前向通路 P(s) 是否稳定闭环传函 G(s) 是否稳定K asK-a0稳定稳定K as0临界稳定稳定K asK-a0不稳定稳定看到最后一行没有P(s) 是一个不稳定对象但只要把它放到单位负反馈里闭环传函仍然稳定。这其实就是“反馈可以镇定不稳定对象”的数学本质。换句话说一个闭环传函稳定不代表构成它的前向对象本身稳定反过来说你要是拿到一个不稳定的被控对象别急着下结论配上合适的反馈它完全可能被镇成一个稳定闭环。这个结论非常反直觉但它是真实且严谨的。经典控制里“开环不稳定、闭环稳定”的例子非常多例如倒立摆、飞行器姿态控制都是靠反馈把开环不稳定对象镇住的。传递函数表达式里的极点和闭环之后系统真正的极点本来就不该混为一谈。3. 工程上要另算账数学等价不等于物理等价3.1 开环环节没有内环给不了你扰动抑制和鲁棒性数学上能反解工程上却不能想当然。原因很简单一个实际设备如果内部没有反馈它就没有比较点没有误差信号没有任何机制根据输出偏差去修正输入。拿直流电机速度控制举例。电机电枢电压到转速的传递函数可以写成[ G(s)\frac{K_m}{JsB} ]这是一个典型惯性环节形式上就是一个开环传函。如果我只是在纸上把它反解成一个闭环结构把前向通路改成 Km/(JsB-Km)外面套单位负反馈得到闭环传函还是 Km/(JsB)。但现实中的电机内部并没有“转速比较器”没有把给定转速和实际转速相减的环节也没有误差放大器去纠正电压。负载一加大转速照样下降没人帮你补电压。真正速度闭环系统不一样给定转速和编码器测到的实际转速在比较点相减产生误差经过 PI 调节器调整电压负载突变时转速稍有下跌误差就会被检测到控制器马上补电压把转速拉回来。所以传递函数只能表达“参考输入到输出”的名义映射。它画不出扰动通道也画不出反馈对扰动的压制能力。开环结构和闭环结构即使名义传函相同一旦加入负载扰动、电源波动、参数漂移行为方式完全不同。3.2 反解出来的 P(s) 能不能造出来是另一回事再关心一个实际问题反解出来的前向通路 P(s)工程上能直接搭出来吗第一看正则性。物理可实现系统要求传递函数分母阶次不低于分子阶次。常见物理系统的 G(s) 都是严格正则的反解出的 P(s) 通常也是严格正则这一点一般没问题。但如果遇到分子的阶次比分母高的非正则 G(s)那 P(s) 也会跟着非正则物理上没法直接造。第二看稳定性。前面已经看到Ka 时反解出来的 P(s) 是不稳定对象。想实现这个不稳定的 P(s)要么你手里的被控对象本身就不稳定要么你需要一个不稳定控制器这在工程实现上困难得多。就算造出来了还要仔细处理上电、限幅、保护逻辑不是套一个反馈公式就能交差的。第三看最小相位性。原 G(s) 没有右半平面零点反解出来的 P(s) 却可能带右半平面零点或者反过来。非最小相位环节对相位裕度、截止频率的约束都不同。实际设计时这些约束都会跳出来。第四也是最容易被忽略的即便你反解出 P(s) 并且顺利搭出了闭环这个闭环内部还有传感器噪声、执行机构饱和、积分饱和、采样延迟等一系列问题。这些问题在数学传函里看不见工程上却会实实在在影响你。所以我的建议是反解公式当概念理解工具用别真按它去搭控制器。实际工程中你想要一个闭环传函近似成 G(s)会老老实实选一个可实现的控制器比如 PI、PID 或超前滞后然后调整参数去逼近。反解出来的 P(s) 更多是揭示“闭环传函和前向对象之间到底有什么关系”而不是最佳设计路径。3.3 同一个 G(s)不同内部结构灵敏度可以完全不同假设一个参数 p 发生变化比如电阻值、电机电阻、惯量。开环传函 TG(p) 对参数变化的灵敏度直接用微商就行。闭环传函如果写成 P/(1P)它对对象参数 P 变化的灵敏度会变成大约[ \frac{1}{(1P)^2} ]等价地在对象增益较大的频段反馈会把参数摄动对输出的影响压得很低。这就是为什么伺服系统、温度控制系统都要用闭环不是因为闭环传函看起来多高级而是因为闭环能对付参数漂移和模型误差。于是出现一个很微妙的情况两个系统一个开环、一个闭环它们在设计工况下的传递函数都等于同一个 G(s)。但把电阻或惯量稍微改一改开环系统的输出已经明显偏离原传函了闭环系统却还能稳稳保持住。名义传函相同真实行为不同。这再次说明传递函数只是“路线图”不是“地形图”。路线图告诉你从 A 到 B 怎么走但路上有没有坑、有没有护栏得看实际结构。开环与闭环的区别就在这些图中看不到的部分。4. 串级控制里每天都在发生内环闭环就是外环的开环对象4.1 三环套娃电流环、速度环、位置环的逐层等效题主问这个问题多半是从串级控制或者系统化简里冒出来的念头。控制工程里有一个特别典型的场景内环闭环传函被上层当作开环对象来用。以电机运动控制为例。伺服驱动器里通常有三环电流环、速度环、位置环。电流环先闭合经过整定后它的闭环传函可以近似成[ G_i(s)\frac{K_i}{T_i s1} ]一个一阶惯性环节。现在做速度环设计时电流环这个闭环系统就被当成速度环的前向通道对象。也就是说速度环控制器后面串的“被控对象”不是电机本体而是“电流环闭环电机负载”的等效传函。接着速度环再闭合整定完又得到一个闭环传函近似成[ G_v(s)\frac{K_v}{T_v s1} ]位置环设计时就把速度环闭环当作被控对象。位置环控制器后面串的是这个速度环等效传函。这就是典型的俄罗斯套娃最内层的电流环是闭环但站在速度环的高度看它只是一个方块、一个环节、一条前向通道的一部分。你再往上一层速度环又变成一个方块被位置环当作对象。每一层闭环的内部都藏着几条反馈线但外层设计者不需要关心因为它已经被封装成一个传递函数了。所以如果题主在调试伺服驱动器的“全闭环设置参数”或者听到“位置环、速度环、电流环”这些词应该能立刻反应过来最外层的位置反馈可以来自外部光栅尺或编码器内部是速度环和电流环。你配置的全闭环本质就是在原有内环之上再套一个外环而内环闭环传函对这次外环设计来说就是开环对象。4.2 把内环当“新对象”时外环设计的变化把内环闭环等效成对象听起来很省事但有一个隐藏前提你特别容易忽略内环带宽要明显高于外环带宽。为什么因为把速度环闭环等效成一阶惯性是基于“电流环动态已经足够快可以忽略高阶动态”的近似。如果内环带宽和外环带宽靠得太近外环拿一个低阶对象做设计实际相位裕度会和计算值差很多可能出现“图纸上稳定现场却抖起来”的情况。工程上一般建议最外层带宽取内环带宽的三分之一到五分之一甚至更低具体要看对象。另外内环闭环传函里可能还带着反馈滤波、电流采样延迟、PWM 延迟等附加惯性环节。这些都不会写在一个漂亮的一阶惯性近似式里。如果你把等效对象看得太理想外环控制器参数往往得在现场重新往下调。所以结论是你可以把内环闭环当成外环的开环对象这是一个非常实用的工程手法但必须确认时间尺度分离并且留出足够的相位裕度。这个手法不是随随便便“数学等价”就成立的它依赖工程近似条件。4.3 回到题主的问题站在不同层级答案不同现在可以把完整答案总结出来了。数学层级任意传递函数 G(s)只要不是退化情形都存在一个闭环系统让闭环传函等于它。单位负反馈下前向通路是 G(s)/(1-G(s))。物理层级一个实际开环硬件就是开环它没有比较点、没有反馈线。你不能靠“反解公式”就让一个 RC 电路身上长出一条反馈线来。系统层级一个闭环环节在更高层确实可以被当成“开环的一环”。这是串级控制、方框图化简的标准做法。问题不在于 G(s) 到底是开环还是闭环而在于你从哪个层级、哪个虚线框去看它。如果你开一个方框图软件把内环框起来只露出一个输入一个输出那这个框对外面来说就是一个传递函数把框打开里面能看到反馈线绕回来了那它就是闭环。开环闭环从来不是 G(s) 的属性而是你画图时选的那条虚线的属性。5. 判断准则与常见误区下次再遇到按这个思路走5.1 三步画圈法信号从输出回到输入了吗每次有学生拿一个 G(s) 来问我“这是开环还是闭环”我都让他做三件事做完基本就不会再问这种问题了。第一步把方框图画出来。不要只看表达式必须画出输入信号、输出信号、比较点、反馈路径。没有图就别谈论开环闭环因为表达式真的看不出来。第二步沿着信号流找一圈。从输出端出发有没有一条路径能把输出信号取出来经过反馈环节回到输入端的比较点再参与运算是非作歹如果存在这样一条闭合信号路径这个方框内部就是闭环如果不存在就是开环。第三步把你关心的系统用一个虚线框圈起来。虚线框内如果有反馈线它是闭环虚线框外面只看到一个输入和一个输出它只是一个传递函数。你说它是“开环的一环”也好说它是“一个环节”也好都没问题因为对框外系统而言它确实就是一条前向通道。这个方法能解决绝大多数“G(s) 自己是不是闭环”的困惑。核心永远是信号有没有绕回来而不是表达式长什么样。5.2 常见翻车误区清单我在实际看图纸和答疑过程中发现下面几个误区反复出现列个清单给你避坑。误区一开环系统没有传递函数。错。开环环节完全有自己的 G(s)比如电机电压到转速、电阻两端电压到电流这些都是开环传函。有没有传函和有没有反馈是两码事。误区二闭环传函一定和开环传函长得不一样。错。上一节已经给出反例同一个 G(s) 可以被开环结构实现也可以被闭环结构实现。有关系的是结构不是表达式形式。误区三闭环传函稳定里面的前向对象就一定稳定。错。Ka 那个例子已经说明前向对象可以是不稳定对象单位负反馈照样能镇出稳定闭环。反过来也不能看到被控对象有右半平面极点就直接放弃治疗。误区四只要闭环传函一样扰动响应就一样。错。扰动进入系统的位置不同、反馈增益不同对扰动的抑制效果天差地别。传函只是参考输入到输出的端口描述它不描述负载通道、电源通道这些额外输入。误区五公式 PG/(1-G) 能用来设计真实控制器。错。它是概念反解不是工程配方。真实控制器设计要考虑带宽、相位裕度、噪声、饱和、离散化等一堆问题。真要按这个 P 去搭大概率会在现场撞得满头包。这是一个判断误区小汇总建议收藏。以后分析系统时随时拿它对照一下。5.3 再留一个进阶尾巴非单位反馈和 G(s)1 的情况最后给愿意深挖的读者再留一个进阶知识点。前面反解用的是单位反馈所以式子简洁。如果换成非单位反馈闭环传函是[ \Phi(s)\frac{P(s)}{1P(s)H(s)} ]要求它等于 G(s)可以解出满足条件的一组 P 和 H。而且你会发现P 和 H 的解不是唯一的有无限多组。举个极端例子取 P(s)1也就是前向通道是纯比例 1那么要求[ \frac{1}{1H(s)}G(s) ]得到[ H(s)\frac{1}{G(s)}-1 ]只要 G(s) 物理上可逆、可实现这种分配是成立的。即使 G(s)1单位反馈下要求 P(s) 为无穷大好像没解但非单位反馈下我可以取 P2、H0.5闭环传函仍然是[ \frac{2}{12\times 0.5}1 ]所以任意传函都可以作为闭环传函这一点在非单位反馈下更加宽泛。但别高兴太早这种自由度恰恰说明传递函数只决定“输入输出端口外观”完全不决定“内部结构”。你有一万种方法把它装进一个闭环外壳里但每一种外壳的响应特性、抗扰能力、稳定性裕度都不同。我在课堂上遇到这个问题的学生十有八九是先背了“开环传函”和“闭环传函”的定义却没有把“数学表达式”和“物理结构”分开。所以我一般会让他做一件事拿方框图软件或者直接用笔把同一个 G(s) 分别画成开环结构和闭环结构然后在两个结构里故意加一个扰动信号对比输出变化。画过一次这个问题就再也不会犯。判断开环还是闭环永远不是看 G(s) 长什么样而是看信号有没有绕回来。