液压传动课程里经常会接触换向、调速、顺序动作、保压、卸荷、同步以及闭环控制等典型回路。看原理图时可以理解油液大致怎么流,但真正涉及“压力什么时候升高”“卸荷以后泵出口压力会降到多少”“PID能不能把马达转速稳定在给定值”这些动态问题,只靠静态原理图并不直观。
前段时间我在 MoHub 上看到一个 液压系统教学案例库,用 TYHydraulics 把 18 类常见液压系统整理成了可以直接仿真的 Modelica 模型。
案例地址:
https://mohub.net/model/26114/summary
这次我重点跑了其中的液压泵卸荷回路和液压马达转速 PID 控制两个案例,正好一个关注压力与卸荷,一个关注闭环转速控制。
18个案例都包含什么?
整个案例库包含 18 个独立模型,大致可以分成三类。
基础液压回路:
- 双作用液压缸换向
- 节流调速
- 差动快速回路
- 顺序动作
- 夹紧与保压
- 马达正反转
- 蓄能器回路
- 同步升降
压力与辅助回路:
- 压力控制
- 泵卸荷
- 缓冲与制动
- 锁紧与平衡
闭环控制:
- 伺服缸位置PID
- 马达转速PID
- 比例压力控制
- 液压缸力控制
模型运行在 Sysplorer + Modelica 环境中,主要使用 TYHydraulics 组件库。每个案例都可以独立打开、检查、翻译和运行,比较适合按照液压传动课程中的不同知识点分别练习。
下面直接看两个实际仿真结果。
案例一:液压泵卸荷回路是怎么工作的?
先看泵卸荷回路的模型结构。
从图1可以看到,整个系统主要由几部分组成:
-
恒速驱动与液压泵
-
单向阀
-
供油容腔节点
-
溢流阀
-
卸荷支路
-
双作用液压缸
-
200 kg 垂直负载
-
油箱
液压泵从油箱吸油,经过单向阀进入 supplyManifold 供油节点,再分成不同支路。
一条支路进入液压缸,负责驱动执行机构;另一条支路经过 unloadingValve 回到油箱,用于实现泵卸荷。
模型中还设置了压力传感器 pumpPressure 和流量传感器,用于观察泵出口压力以及主油路、卸荷支路的流量变化。
这里有一个比较重要的建模处理:
泵出口分支处加入了一个容性压力节点 supplyManifold。
它并不是简单把多个阀件直接连接在一起,而是给系统提供一个能够建立和变化压力的液压容腔。这种“容腔 + 阻性元件”的组合,更适合表示实际液压回路中的压力动态。
液压缸杆端还连接了一个:
200 kg 的垂直负载
模型中对应的重力约为:
1962 N
因此这个回路不只是让液压缸空载运动,还需要考虑负载产生的液压力需求。
8秒打开卸荷阀以后,压力发生了什么?
模型中的卸荷控制信号 unloadSignal 设置为:
startTime = 8 s
也就是说,在仿真运行到 8 s 时,卸荷阀开始打开。
对应的泵出口压力曲线如下。
这张曲线可以分成几个阶段来看。
0~约2.4 s:启动和执行机构动作阶段
仿真开始以后,泵出口压力并没有立即稳定在8 MPa。
前约2.4 s内,压力主要在:
约0~2.5 MPa
范围内变化,并伴随比较明显的动态波动。
这说明系统刚启动时,液压缸运动、油液流动以及容性压力节点建立压力的过程会产生明显瞬态。
约2.4~8 s:系统进入高压状态
约2.4 s后,泵出口压力迅速上升并稳定在:
约8.1 MPa
附近。
这一压力水平与系统的压力限制设定基本一致。
从曲线看,这一阶段泵处于明显的高压工作状态,直到8 s时卸荷阀被触发。
8 s:卸荷阀打开
图中虚线标出了:
t = 8 s
这一时刻。
卸荷阀打开以后,泵出口压力立即从约:
8.1 MPa
快速下降到约:
1 MPa
左右。
随后经过一段短暂状态变化,在约9.5 s以后进一步下降,并最终稳定在:
约0.24 MPa
附近。
这就是卸荷回路最直观的效果:
泵不再长期顶着高压工作,而是通过卸荷通道以较低压力把油液送回油箱。
为什么要给液压泵做卸荷?
如果执行机构暂时不需要工作,而定量泵还在持续供油,最简单的处理方式是让多余油液通过溢流阀返回油箱。
但这样意味着:
泵仍然在高压下持续输出。
大量液压功率最终会转化成热量,不仅降低效率,还会带来明显的系统发热。
卸荷回路的思路则是:
执行机构工作时 → 泵建立工作压力
执行机构停止时 → 打开卸荷支路 → 泵低压回油
从图2就能直接看到两种状态之间的区别:
卸荷前约8.1 MPa → 卸荷后最终约0.24 MPa
所以卸荷回路的价值并不是“让泵停止供油”,而是让泵在不需要驱动负载时进入低压、小功率工作状态。
这也是很多定量泵液压系统中很典型的节能措施。
案例二:液压马达如何实现500 rpm转速闭环?
第二个比较有代表性的案例是液压马达转速 PID 控制。
模型结构如下。
这个模型可以分成液压回路和控制回路两部分。
液压部分主要包括:
-
液压动力源
-
比例流量阀
-
马达入口容腔
-
流量传感器
-
液压马达
-
转动惯量负载
-
转速传感器
-
油箱
控制部分则包括:
-
目标转速
targetSpeed -
PID 控制器
speedPID -
控制信号限幅器
-
实际转速反馈
整体闭环关系非常清楚:
目标转速 → 转速误差 → PID → 比例流量阀开度 → 马达流量 → 马达转速 → 转速反馈
目标转速在:
t = 1 s
时阶跃到:
500 rpm
马达轴端连接了:
J = 0.05
的转动惯量负载,所以马达转速不会在给定变化后瞬间达到目标值,而是需要经历一个动态加速过程。
500 rpm能不能跟上?
对应的转速跟踪结果如下。
绿色虚线表示目标转速,蓝色实线表示实际马达转速。
1 s以前:
目标转速 = 0 rpm
实际转速同样保持在0附近。
到1 s时,目标值突然阶跃到:
500 rpm
PID控制器检测到较大的转速误差以后迅速提高比例流量阀控制量,液压马达开始加速。
从图4可以看到,实际转速很快上升到:
约480 rpm
附近。
随后继续缓慢逼近目标值,并最终稳定在:
约500 rpm
附近。
整个过程中没有出现明显的大幅超调,实际转速主要是从目标值下方向上逼近。
到约3~4 s以后,目标曲线和实际曲线已经基本重合。
仿真结束时,转速传感器对应角速度约为:
52.36 rad/s
换算成转速:
52.36 × 60 / (2π) ≈ 500 rpm
与目标值一致。
也就是说,这个模型中的PID闭环已经基本消除了稳态转速误差。
PID到底在调什么?
这个案例比较适合说明一个容易被忽略的问题:
PID并不是直接控制液压马达的转速。
真正的控制链路是:
转速误差
↓
PID输出
↓
改变比例流量阀开度
↓
改变进入马达的液压油流量
↓
改变马达输出转速
↓
转速传感器反馈
当目标转速突然从0增加到500 rpm时,误差很大,所以PID会快速增大阀的开度,让更多液压油进入马达。
马达转速越来越接近500 rpm以后,转速误差逐渐减小,PID输出也随之回落。
根据模型结果,启动阶段控制输出约为:
0.73
而进入稳态以后,控制量下降到约:
0.089
左右。
也就是说,启动阶段需要比较大的阀口开度让马达快速加速;真正进入稳态以后,只需要较小的持续流量就能够维持500 rpm。
这就是典型的:
给定—反馈—误差—调节
闭环控制过程。
两个案例放在一起看
虽然泵卸荷和马达转速PID看起来是完全不同的液压问题,但把两组结果放在一起,刚好可以看到液压系统中两个很典型的分析方向。
泵卸荷关注的是“系统压力状态”
图1和图2主要回答:
当执行机构不再需要高压供油时,怎样让液压泵退出高压工作状态?
结果非常直观:
卸荷前约8.1 MPa → 卸荷后最终约0.24 MPa
重点在于压力和能量管理。
马达PID关注的是“执行机构输出”
图3和图4回答:
怎样根据转速误差自动调整流量,让液压马达跟踪目标转速?
最终实现:
目标500 rpm → 实际约500 rpm
重点在于闭环控制和动态响应。
这也是这个18案例库比较有价值的地方:它并不是只展示液压缸怎么伸缩,而是同时覆盖了压力、流量、速度、位置、力以及闭环控制等不同问题。
18个案例更适合怎么用?
如果是在学习液压传动,我觉得可以按照“从基础回路到闭环控制”的顺序去跑。
先看:
换向 → 节流调速 → 差动连接 → 顺序动作
理解液压缸和阀件之间最基础的关系。
再看:
压力控制 → 保压 → 卸荷 → 平衡 → 锁紧
理解液压系统如何管理压力和负载。
最后再看:
位置PID → 转速PID → 比例压力控制 → 力控制
把前面的液压元件和自动控制结合起来。
相比一次只看一张教材原理图,这种方式的好处是每个模型都能真正运行起来,并观察:
-
压力怎么变化
-
流量走哪条支路
-
液压缸怎么运动
-
马达转速怎么变化
-
PID能不能达到目标值
这样更容易把“原理图上的连接关系”和“实际动态结果”对应起来。
模型使用时也需要注意边界
案例库的定位主要还是教学演示和系统级建模练习。
其中部分模型直接基于TYHydraulics已有系统示例进行组织,另外像泵卸荷、马达转速PID、电液比例压力控制和液压缸力控制等案例,则是在库组件基础上进行了独立装配。
这些模型更强调:
回路结构是否正确、控制逻辑是否成立、动态趋势是否符合预期。
因此,不能简单把它们当成实际工程系统的元件选型计算模型。
如果需要进一步进行:
-
阀口压降
-
管路压力损失
-
油液压缩性
-
泵效率
-
泄漏
-
温升
-
元件动态特性
等工程级定量分析,还需要根据真实液压系统进一步补充参数和物理细节。
小结
这个TYHydraulics教学案例库把18类常见液压系统整理成了可以直接运行的Modelica模型,从基础回路一直覆盖到闭环控制。
这次重点看的两个案例分别展示了两类典型问题。
液压泵卸荷回路:
在高压工作阶段,泵出口压力约为8.1 MPa;8 s打开卸荷阀后,压力迅速下降,并最终稳定在约0.24 MPa,比较直观地体现了液压泵低压卸荷的工作过程。
液压马达转速PID:
1 s时给定500 rpm目标转速,实际转速迅速上升,随后逐渐逼近目标,并在约3~4 s以后基本稳定在500 rpm附近,实现了较好的闭环跟踪。
如果正在学习液压传动、液压回路或者Modelica多领域系统建模,这套案例比较适合拿来逐个拆解:
先看元件怎么连,再看油液怎么走,最后通过曲线验证压力、流量和执行机构是否真的按照预期工作。
完整案例库、模型源码和说明可以在这里获取:


被折叠的 条评论
为什么被折叠?



