3. Simscape Foundation库概览
Simscape 的 Foundation 库是物理建模的“元件仓库”。它不像 Simulink 那样以信号线连接功能块,而是以物理连接线(实线)连接真实元件,让能量在电气、机械、热等不同物理域之间自然流动。要建立组件选用直觉,关键不是背下所有模块名,而是理解库的组织逻辑:按物理域划分大类,按能量端口类型划分连接规则,按元件功能划分具体模块。掌握这三层结构,就能在需要时快速定位到正确的组件。
Foundation 库的顶层结构
打开 Simscape 库浏览器,Foundation 下通常包含以下主要分支:Electrical(电气)、Mechanical(机械,含 Translational 平动与 Rotational 转动)、Thermal(热)、Magnetic(磁)、Hydraulic(液压)、Pneumatic(气动)、Two-Phase Fluid(两相流)以及 Utilities(工具)等。每个分支内部再按“理想元件—传感器—源—接口”细分。例如 Electrical 下有 Resistor、Capacitor、Inductor 等无源元件,也有 Voltage Sensor、Current Sensor 等传感器,还有 DC Voltage Source、AC Voltage Source 等源模块,以及 Electrical Reference 这种必须存在的参考节点。
理解“参考节点”是 Simscape 建模的第一个门槛。电气域需要 Electrical Reference 定义零电位,机械平动域需要 Mechanical Translational Reference 定义绝对静止参考,转动域需要 Rotational Reference 定义零角度参考。没有参考节点,求解器无法确定绝对量,仿真会报错。因此,选用组件时先问:这个域有没有参考?没有就补一个。
按端口类型筛选:两端口、单端口与信号端口
确定物理域后,下一步是看端口类型。Simscape 元件端口分三类:物理守恒端口(如电气 +/−、机械 R/C、热 A/B)、物理信号端口(细线,传递无能量损耗的信号,如传感器输出)和Simulink 信号端口(需经 PS-Simulink Converter 转换)。两端口元件如 Resistor、Spring、Thermal Mass,能量从一端流入另一端流出;单端口元件如 Electrical Reference、Mechanical Rotational Reference,只提供一个参考势;源模块如 DC Voltage Source 提供两个物理端口,但内部产生能量。
一个常见错误是把传感器输出直接连到 Simulink 示波器。传感器输出是物理信号(PS),必须经过 PS-Simulink Converter 才能被 Simulink 域接收。反过来,Simulink 的控制信号要驱动物理元件,需经 Simulink-PS Converter。这两个转换器在 Utilities 中,是跨域建模的桥梁。
查找方法与选用直觉
在库浏览器中查找组件,有三种高效方式。第一,按域展开:知道是电气问题就展开 Electrical,再按“无源/有源/传感器/参考”逐层点开。第二,用搜索框:输入关键词如“resistor”“inertia”“thermal mass”,库浏览器会跨域过滤。第三,看端口图标:物理端口是实心方块或圆形,信号端口是细箭头,Simulink 端口是尖角箭头。图标形状本身就是筛选依据。
建立选用直觉的核心是记住每个域的“最小完备集”:一个参考、一个源、一个耗能元件、一个储能元件、一个传感器。电气域最小集:Electrical Reference + DC Voltage Source + Resistor + Capacitor + Voltage Sensor。机械平动最小集:Translational Reference + Force Source + Damper + Mass + Position Sensor。转动最小集:Rotational Reference + Torque Source + Rotational Damper + Inertia + Ideal Rotational Motion Sensor。热域最小集:Thermal Reference + Heat Flow Source + Conductive Heat Transfer + Thermal Mass + Temperature Sensor。记住这些最小集,遇到新问题就能快速拼出可运行的模型骨架。
域间接口与能量转换
真实机电系统往往跨域。Foundation 库提供了域间接口模块,如 Rotational Electromechanical Converter(电气↔转动)、Translational Electromechanical Converter(电气↔平动)、Translational-Rotational Interface(平动↔转动)。这些模块不是理想变压器,而是带有转换系数和损耗参数的物理元件。例如,直流电机模块需要设置转矩常数 Kt 和反电动势常数 Ke,二者在理想情况下数值相等(SI 单位下)。选用接口模块时,必须确认能量流向和参数单位,否则会出现量纲错误或能量不守恒。
以直流电机驱动转动惯量为例,完整模型包含:电气侧 DC Voltage Source(12 V)→ Resistor(1 Ω)→ Rotational Electromechanical Converter(Kt = 0.05 N·m/A)→ Electrical Reference;机械侧 Converter 转动端口 → Inertia(J = 0.001 kg·m²)→ Rotational Reference;传感器 Ideal Rotational Motion Sensor 测角速度,经 PS-Simulink Converter 送入 Scope。Solver Configuration 接在电气参考节点上。运行 0.5 s,可观察到转速从 0 按指数规律上升,稳态转速约 12/(1×0.05) × 0.05 = 12 rad/s(忽略机械阻尼时)。这个例子说明:选用组件时,先搭最小完备集,再逐步添加传感器和接口,比一开始就堆砌模块更高效。
从库到模型:一个可复用的选用流程
综合以上,建议按以下流程操作:第一步,在纸上画出物理系统的能量流图,标出各域和接口;第二步,对每个域列出最小完备集,从 Foundation 库中拖入对应模块;第三步,用物理连接线按能量流方向连接,注意端口匹配;第四步,添加传感器和 PS-Simulink Converter,将关注变量引出到 Simulink 示波器;第五步,放置 Solver Configuration 并设置求解器步长;第六步,运行并检查是否有“未连接参考”“端口类型不匹配”等报错。这个流程不依赖记忆具体模块名,而是依赖对物理域和端口类型的理解,因此可迁移到液压、气动等未在本文展开的域。
最后提醒:Foundation 库的模块数量庞大,但常用核心模块不超过 40 个。建议在初期只掌握电气、机械平动、机械转动、热四个域的最小完备集和域间接口,其余域在需要时按相同逻辑查找。组件选用直觉的本质,是把“物理系统的能量结构”映射到“库中的端口连接关系”,而不是背诵模块列表。