公司动态
控制系统建模:从结构图到信号流图,掌握复杂系统分析与设计
1. 从“黑箱”到“白箱”为什么我们需要数学模型在自动控制领域刚入门的朋友常常会有一个困惑我手里有一个物理系统比如一个电机、一个水箱或者一个化学反应釜我给它一个输入信号它就会给我一个输出响应。我直接去测、去试不就行了吗为什么还要费劲去建立什么“数学模型”这个问题问到了根子上。想象一下你面前有一个密封的“黑箱”上面有一个旋钮输入下面有一个仪表盘输出。你拧动旋钮仪表盘的指针会摆动。如果你只是想知道“拧到某个位置指针大概会指到哪”那你确实不需要知道箱子里面是什么。早期的控制比如瓦特蒸汽机上的离心调速器就有点这个意思——它是一种基于机械反馈的直接、朴素的调节。但如果你想做下面任何一件事这个“黑箱”就让你寸步难行了预测未来我想让水箱水位在5分钟后精确稳定在1.5米现在应该怎么调节进水阀优化性能我希望电机启动又快又稳没有超调和抖动PID控制器的三个参数比例、积分、微分到底该设成多少分析稳定性为什么我的无人机飞着飞着会突然开始剧烈晃动是哪个环节出了问题设计高级算法我想实现无人车的自适应巡航让它能根据前车距离自动平滑地加减速该用什么控制策略要回答这些问题你必须打开“黑箱”理解里面各个部件电阻、电容、质量块、弹簧、阀门、惯性轮……是如何连接、如何相互作用的。数学模型就是我们用数学语言方程、函数、图形对这个物理系统内部动态行为进行描述的“白箱”蓝图。它抽象掉了具体的物理形态是电路还是机械抓住了“因果关系”和“动态特性”的本质。本次内容聚焦的“2.7-2.10”节正是搭建这份蓝图的核心工具包。如果说前面的章节微分方程、传递函数是学会了描述单个元件的“单词”和“句子”那么这几节就是教你如何将这些句子组合成一篇完整的“文章”——即整个控制系统的动态描述。这里的关键在于“互联”系统从来不是孤立的元件而是元件的有机组合。结构图和信号流图就是两种最直观、最强大的“语法”用于描述系统中信号信息、能量的流动、汇总、分支和变换过程。掌握了它们你才能对一个复杂系统进行有效的分析、简化和设计。2. 结构图控制工程师的“电路原理图”在电子工程里我们看电路原理图在控制工程里我们看系统结构图。它用一些标准的图形符号把系统各环节的功能和信号流向一目了然地呈现出来。2.1 结构图的基本元素三种核心图形结构图主要由三种基本元素构成理解它们就理解了结构图的语法方框Block这是最核心的元素。它代表一个具有输入输出关系的环节或元件方框里面写着这个环节的传递函数G(s)。例如一个电机可以用传递函数G(s) K / (Js B)表示其中J是转动惯量B是阻尼系数。方框的意义是输出信号等于输入信号乘以方框内的传递函数。Y(s) G(s) * U(s)。信号线Signal Line带箭头的直线或折线表示信号的流向。箭头指向方框的线是输入从方框引出的线是输出。信号线上通常标注信号的名字如R(s)参考输入、E(s)误差、Y(s)输出。求和点Summing Point或比较点用一个圆圈中间画一个“X”表示有时也简化为一个圆圈。它代表信号的相加或相减。进入求和点的箭头旁标有“”或“-”表示该信号是加上还是减去。最常见的求和点就是比较设定值和反馈值产生误差的地方E(s) R(s) - Y(s)。注意求和点的加减运算是在相同物理量或已归一化的量之间进行的。你不能直接把电压信号和温度信号相加除非它们都通过传感器和变送器转换成了统一的标准信号如4-20mA。2.2 一个完整的闭环控制系统结构图示例让我们把这些元素组合起来看一个经典的负反馈控制系统结构图R(s) ---()---[控制器 Gc(s)]---[执行机构/被控对象 Gp(s)]--- Y(s) ^ - | | | -----------------[传感器 H(s)]---解读流程系统有一个目标即参考输入R(s)比如你设定的水温。系统的实际输出Y(s)实际水温通过一个传感器/测量环节H(s)被检测出来得到反馈信号B(s) H(s)Y(s)。这里H(s)可能包含传感器的增益、滤波特性甚至延时。在求和点参考输入R(s)与反馈信号B(s)进行比较相减产生误差信号E(s) R(s) - B(s)。这个误差代表了“目标”与“现状”的差距。误差信号E(s)送入控制器Gc(s)比如一个PID控制器。控制器的任务就是根据误差的大小和变化趋势计算出一个合适的控制量U(s)。U(s) Gc(s) * E(s)。控制量U(s)驱动执行机构和被控对象Gp(s)比如加热棒和水箱使其输出Y(s)发生变化试图缩小误差E(s)。整个过程形成一个闭合的环路这就是“闭环控制”或“反馈控制”。只要环路是负反馈求和点为减号系统就会自动朝着消除误差的方向努力。这个结构图清晰地揭示了反馈控制的精髓利用误差来消除误差。它也是我们后续进行系统分析稳定性、稳态误差、动态性能的图形化起点。2.3 结构图的等效变换化繁为简的艺术实际系统往往非常复杂可能有多个反馈环、前馈通路、交叉耦合。直接分析一个错综复杂的结构图是困难的。因此我们需要一套“等效变换”规则在保证系统输入输出总关系即总传递函数不变的前提下对结构图进行简化。这就像用串并联公式简化复杂电路一样。以下是几个最常用、最关键的等效变换规则规则一方框的串联多个方框首尾相连中间没有分支和求和点隔开可以合并为一个方框其传递函数等于各串联方框传递函数的乘积。U(s) --[G1(s)]-- X(s) --[G2(s)]-- Y(s) 等效于 U(s) --------[G1(s)*G2(s)]-------- Y(s)为什么可以因为X(s)G1(s)U(s),Y(s)G2(s)X(s)G2(s)G1(s)U(s)。规则二方框的并联多个方框具有相同的输入它们的输出在求和点相加或相减可以合并为一个方框其传递函数等于各并联方框传递函数的代数和。|---[G1(s)]---| U(s) ----| |--()--- Y(s) |---[G2(s)]---| 等效于 U(s) ----------[G1(s) G2(s)]-------- Y(s)规则三反馈连接的化简最重要这是闭环系统最核心的化简公式必须牢记。R(s) ---()---[G(s)]--- Y(s) ^ - | | | -----[H(s)]-----这个结构称为“单位反馈”如果H(s)1否则为“非单位反馈”。其闭环传递函数为Φ(s) Y(s)/R(s) G(s) / [1 G(s)H(s)]推导过程根据信号流向Y(s) G(s) * E(s),E(s) R(s) - H(s)Y(s)。将第二式代入第一式Y(s) G(s)[R(s) - H(s)Y(s)]。整理得Y(s) G(s)H(s)Y(s) G(s)R(s)即Y(s)[1 G(s)H(s)] G(s)R(s)。所以Φ(s) G(s) / [1 G(s)H(s)]。规则四求和点的前移和后移有时为了合并方框或消除交叉需要移动求和点的位置。移动后需要在相关通路上增加或减少一个方框以保证等效。求和点前移如果求和点在一个方框G(s)的后面想移到它的前面则需要在被移动的输入信号通路上除以G(s)。求和点后移如果求和点在一个方框G(s)的前面想移到它的后面则需要在被移动的输入信号通路上乘以G(s)。规则五分支点的前移和后移分支点是信号线分叉的地方。移动规则与求和点类似但操作相反乘变除除变乘务必区分清楚。分支点前移分支点在一个方框G(s)的后面想移到它的前面则需要在被移动的分支信号通路上乘以G(s)。分支点后移分支点在一个方框G(s)的前面想移到它的后面则需要在被移动的分支信号通路上除以G(s)。实操心得化简复杂结构图时我的习惯是“先内后外先局部后整体”。首先识别并化简最内层的小反馈环将其等效为一个方框。然后逐步向外层推进像剥洋葱一样。多利用“串联”、“并联”和“反馈公式”这三种最直接的化简方式。移动求和点和分支点是最后的手段因为容易出错。在纸上化简时每做一步变换最好在旁边写下当前系统的总传递函数表达式以便校验。3. 信号流图另一种简洁的“信号地图”结构图非常直观但对于特别复杂的多回路、多变量系统化简起来可能仍然繁琐。信号流图提供了另一种更紧凑、更代数化的表示方法尤其适合与梅森增益公式配合使用能一步到位地求出复杂系统的总传递函数。3.1 信号流图的基本概念信号流图由节点和有向支路构成。节点用小圆圈表示代表系统中的一个变量。可以是输入、输出、中间变量或者求和点的输出。有向支路连接两个节点的带箭头线段。代表信号从一个节点流向另一个节点。支路上标注增益即传递函数。输入节点源点只有输出支路没有输入支路的节点对应系统的输入。输出节点阱点只有输入支路没有输出支路的节点对应系统的输出。一个非输入节点可以通过添加一条增益为1的支路变为输出节点。通路沿支路箭头方向从一个节点到另一个节点连续经过的支路构成一条通路。前向通路从输入节点到输出节点且不经过同一节点两次的通路。回路起点和终点为同一节点且不经过同一节点两次的闭合通路。不接触回路没有任何公共节点的回路。3.2 从结构图到信号流图一个转换实例让我们把前面那个闭环系统的结构图转换为信号流图。结构图变量R(s),E(s),U(s),Y(s),B(s)。其中E R - B,U Gc * E,Y Gp * U,B H * Y。转换步骤将每个变量包括求和点的输出E设为一个节点。根据方程画出支路从R到E增益为1。从B到E增益为-1因为E R - B。从E到U增益为Gc(s)。从U到Y增益为Gp(s)。从Y到B增益为H(s)。指定输入节点R和输出节点Y。得到的信号流图如下1 Gc(s) Gp(s) R(s) --- E ---- U ---- Y ^ | | -1 | H(s) ------ B -----注上图是文本示意B是中间节点从Y到B的支路增益为H(s)从B到E的支路增益为-1。可以看到信号流图用节点和带增益的支路清晰地表达了变量间的代数关系省略了结构图中的方框和求和点符号更加简洁。3.3 梅森增益公式信号流图的“终极武器”这是信号流图理论中最强大的工具可以直接根据图形写出从任意输入节点到任意输出节点的总传递函数无需一步步化简。梅森增益公式P (1/Δ) * Σ( P_k * Δ_k )其中P从输入节点到输出节点的总增益传递函数。Δ流图的特征式。Δ 1 - ΣL_i ΣL_iL_j - ΣL_iL_jL_k ...ΣL_i所有不同回路的增益之和。ΣL_iL_j所有两两不接触回路的增益乘积之和。ΣL_iL_jL_k所有三个互不接触回路的增益乘积之和。……P_k从输入到输出的第k条前向通路的增益。Δ_k第k条前向通路对应的余子式。即把特征式Δ中与第k条前向通路相接触有公共节点的所有回路的增益项置为0后剩下的Δ。3.4 应用梅森公式求解示例对上面转换得到的信号流图我们用梅森公式求Y(s)/R(s)。找出所有前向通路只有一条。P1 1 * Gc(s) * Gp(s)路径R - E - U - Y找出所有回路回路L1:E - U - Y - B - E增益为Gc(s) * Gp(s) * H(s) * (-1) -Gc(s)Gp(s)H(s)。计算特征式Δ 只有一个回路L1所以ΣL_i L1 -GcGpH。 不存在两个或以上不接触的回路。 因此Δ 1 - ΣL_i 1 - (-GcGpH) 1 GcGpH。计算余子式Δ1 前向通路P1与唯一的回路L1完全接触它们共享所有节点E, U, Y, B。因此将与P1接触的回路L1从Δ中移除即将其增益视为0。移除后Δ1 1。代入公式求总增益PP Y(s)/R(s) (1/Δ) * (P1 * Δ1) [Gc(s)Gp(s)] / [1 Gc(s)Gp(s)H(s)]结果与之前用结构图反馈公式推导出的闭环传递函数完全一致对于简单系统梅森公式的优势不明显。但对于多前向通路、多回路的复杂系统其一步到位的威力是巨大的。避坑指南使用梅森公式时最常见的错误是漏掉回路或误判回路是否接触。我的建议是在图上用不同颜色的笔耐心地找出所有可能的闭合路径。对于“不接触”的判断要格外小心两个回路只要共享一个节点就是接触的。另一个易错点是增益的符号特别是求和点引入的“-1”增益一定要算在回路增益内。4. 数学模型的应用从理论到实践的桥梁掌握了结构图和信号流图我们就获得了描述任何线性定常控制系统的强大工具。但这不仅仅是纸上谈兵这些数学模型是通往实际工程应用的桥梁。以当前热门的“基于MATLAB/Simulink的PID温度控制系统”和“自适应巡航控制系统”为例数学模型是如何发挥作用的4.1 案例一PID温度控制系统的建模与仿真假设我们要设计一个电烤箱的温度控制器。建立被控对象模型Gp(s)电烤箱可以简化为一个一阶惯性加纯滞后环节。热量控制量U如加热功率传递到温度传感器输出Y需要时间。其传递函数常建模为Gp(s) K * e^(-τs) / (Ts 1)。其中K是增益T是时间常数τ是纯滞后时间。这些参数可以通过实验如阶跃响应测试辨识获得。构建系统结构图T_set ---()---[PID控制器]---[功率放大器]---[电烤箱 Gp(s)]--- T_actual ^ - | | | --------------------------------------[温度传感器] ---------传感器模型H(s)可能也是一个一阶低通滤波器用于模拟传感器的响应速度。在Simulink中搭建模型利用Simulink的库你可以直接拖拽PID Controller块、Transfer Fcn块、Transport Delay块模拟纯滞后和Scope块按照上述结构图连接起来。这个过程就是对你数学模型的可视化实现。分析与设计稳定性分析你可以通过理论计算闭环特征方程或者直接在Simulink中运行观察系统是否发散。PID参数整定这是数学模型的核心价值。你可以在Simulink中不断调整PID的Kp, Ki, Kd三个参数然后运行仿真观察温度曲线的上升时间、超调量、稳定时间。通过反复试凑或使用一些自动整定工具如MATLAB的pidtune找到一组使系统响应快、稳、准的参数。这完全是在虚拟的数学模型上进行“实验”成本极低效率极高避免了在真实烤箱上反复烧坏东西的风险。抗干扰测试你可以在模型中加入一个代表开门散热的干扰信号观察系统能否有效抑制干扰恢复设定温度。4.2 案例二自适应巡航控制系统的层次化建模汽车自适应巡航控制系统更复杂它是一个多环、多变量的系统。纵向动力学模型这是最内层、最基础的模型。描述的是油门/刹车指令控制量U与车辆实际速度/加速度输出Y之间的关系。这通常是一个包含发动机滞后、车辆质量、空气阻力、轮胎摩擦等因素的模型可能是一个高阶传递函数或状态空间方程。距离-速度控制环这是外层控制器。它根据雷达测得的与前车的实际距离D_actual和相对速度V_relative以及本车期望距离D_set计算出一个期望的加速度指令A_desired。这个控制器本身可能就是一个PID或其变种。整体结构图系统呈现出典型的串级控制结构。D_set ---| 距离-速度 | A_desired | 油门/刹车 | U | 车辆纵向 | V, A | 控制器 |-------------------| 控制器 |--------| 动力学 |---------- V_relative---| Gc_outer(s) | | Gc_inner(s)| | Gp(s) | |_____________| | | |_________| | | | | | | (反馈实际速度、加速度) | |------------- | | (前馈道路坡度、风阻补偿等)外环控制器Gc_outer的输出期望加速度作为内环控制器Gc_inner的设定值。内环控制器负责快速、精确地跟踪这个加速度指令并输出油门或刹车信号给车辆模型Gp。这种结构将复杂的控制问题分解外环处理“策略”保持多远的车距内环处理“执行”如何精确产生所需的加速度。模型的作用设计控制器分别为内外环设计合适的控制算法PID、模糊PID、模型预测控制MPC等。内环要求响应快外环要求平稳。验证性能与安全在仿真中可以创建各种极端场景如前车急刹、有车加塞等测试ACC系统的响应是否安全、舒适。这比在实车上测试风险小得多。分析“时延导致控制系统不稳定”网络热词中提到这个问题。在模型中你可以在反馈回路或控制指令通路中故意加入一个延迟环节e^(-Td*s)然后仿真。你会发现随着延迟时间Td增大系统会从稳定变得振荡最终失稳。数学模型定量地揭示了时延对稳定性的破坏作用并指导工程师必须将处理延迟控制在某个临界值以内。5. 超越经典控制数学模型在现代智能控制中的身影你可能也注意到了网络热词中出现了“量化交易因素 数据 数学模型 统计分析 计算机 网络 人工智能”和“BP神经网络结构图”、“YOLO系列网络结构图”、“卷积神经网络结构图”。这说明了数学建模的思想早已超越了传统的自动控制领域渗透到更广泛的智能系统设计中。神经网络的结构图一张BP神经网络或CNN的结构图本质上就是一个超级复杂的“信号流图”。输入层的节点是输入特征隐藏层和输出层的节点是神经元对应一个求和与激活函数连接线上的权重就是“增益”。训练神经网络的过程就是利用数据输入-输出对来反向调整所有这些“增益”权重使得整个网络的总传递函数从输入到输出能够最佳地拟合训练数据。这与我们调整PID参数使系统输出跟踪设定值在思想上一脉相承——都是基于模型无论是机理模型还是数据驱动的黑箱模型的参数优化。量化交易系统你可以将其视为一个庞大的反馈控制系统。市场数据价格、成交量等是输入交易信号是控制量投资组合的损益是输出同时也是反馈。系统中的各种数学模型统计分析、机器学习预测模型就是“控制器”它们根据市场状态反馈和历史数据计算出交易决策控制量旨在使输出收益最大化风险波动最小化。这里的“稳定性”可能意味着策略的鲁棒性不会因市场微小波动而崩溃。因此学习自动控制原理中的数学模型建立方法尤其是用结构化的图形结构图、信号流图来描述系统内部变量间的交互关系是一种极其重要的系统化思维能力。这种能力不仅适用于调节一个电机或一个水箱更是你理解和设计任何复杂工程系统、甚至分析社会经济系统的基础框架。当你再看YOLO的网络结构图时如果能将其视为一个精密的信号处理与决策系统理解每一层卷积、池化、全连接如何变换和提取特征最终完成目标检测这个“控制”任务那么你的理解就已经深入了一个层次。从经典的PID到现代的深度学习模型的表达形式在变但“建模-分析-设计-优化”的核心逻辑从未改变。