对称双弹簧曲柄连杆机构
S1→S2 全程运动数学模型(v5 · 能量法修正版)
v5 更新说明(2026-07-21):计算范围由「S1 → OFF
双分位置」扩展为 S1 → S2 全程(主轴共转
90°)。利用两侧触头完全对称的结构:S1 侧触头分离的转角增量 Δθ₁ 同时也是
S2
侧触头从接触到停止的转角增量,因此摩擦阻力由两段式改为三段式(S1
分断 → 双分行程 → S2 关合),终点改为 θ_end = θ₀ + 2×Δθ₂(默认
100°)。全部结果按全程重算(S1→S2 总时间 11.76
ms,其中到达 OFF 中点 8.80 ms)。
v4
更新说明(2026-07-18):角度参数改为「起始曲柄角度 +
相对转角增量」表达——起始曲柄角度 θ₀ =
10°(曲柄角度,非触头角度),触头分离角 θ₁ = θ₀ + Δθ₁(默认 Δθ₁ =
17.68°,即 27.68°),双分位置角 θ₂ = θ₀ + Δθ₂(默认 Δθ₂ = 45°,即
55°),并新增约束 Δθ₁ ≤ Δθ₂;全部计算结果按新行程重算(总时间 6.95 →
8.80 ms,末速 158.0 → 217.7
rad/s)。
v3 更新说明(2026-07-18):新增第 9
节「输入参数有效性约束与失效判定」,明确每个输入物理量的合法域、失效模式与处理方式(与配套
Excel / 交互网页的校验逻辑一致)。
v2 更新说明(2026-07-18) 1.
修正运动方程:补充变惯量修正项 -\frac{1}{2}\frac{dJ}{d\theta}\dot{\theta}^2(详见第
6 节); 2.
积分方法由时间步进法改为能量法,严格满足能量守恒; 3.
新增第 4 节「分断时间计算 · 简明版」,用最少公式说明完整计算流程; 4.
计算结果更新为修正后数值(总时间 6.79 → 6.95 ms,末速
170.9 → 158.0 rad/s)。
1. 机构运动逻辑
1.1 机构结构
本模型描述一个对称双弹簧曲柄滑块机构,用于双电源切换开关的分断操作。机构组成如下:
- 中央转轴:两侧各有一套曲柄滑块机构,共用同一转轴,两侧曲柄刚性连接(夹角
180°)
- 右侧机构:曲柄、连杆、滑块、弹簧(弹簧位于滑块右侧,推动滑块向左)
- 左侧机构:与右侧机构轴对称,弹簧位于滑块左侧,推动滑块向右
- 触头系统:刀闸式双断点结构,4 极,每极 2
个断点,每个断点 2 个摩擦面(动触头夹住静触头),共 16 个摩擦接触点
1.2 运动阶段划分(v5 · S1→S2
全程)
曲柄从 S1 位置(θ₀ = 10°)静止状态开始运动,主轴共转
90°,到 S2 停止位置(θ_end = θ₀ + 2×Δθ₂ =
100°) 结束。由于 S1、S2
两侧触头结构完全对称,S1 侧「接触→分离」的转角增量 Δθ₁
同时就是 S2 侧「接触→停止」的转角增量,全程关于 OFF 双分中点(θ₂ = θ₀ +
Δθ₂ = 55°)镜像,分为三个阶段:
| 阶段一(S1 分断) |
10° → 27.68° |
S1 接触中 |
主轴摩擦 + 触头摩擦 |
触头提供较大摩擦阻力,速度增长较慢 |
| 阶段二(双分行程) |
27.68° → 82.32° |
两侧均断开 |
仅主轴摩擦 |
摩擦骤降,速度快速增加,经过 OFF 中点 |
| 阶段三(S2 关合) |
82.32° → 100° |
S2 接触中 |
主轴摩擦 + 触头摩擦 |
动触头滑入静触头,摩擦重新出现并阻碍运动 |
关键角度(默认参数): - θ₁ = θ₀ + Δθ₁ = 27.68°:S1
触头分离点,此后 S1 侧触头摩擦消失; - θ₂ = θ₀ + Δθ₂ = 55°:OFF
双分中点,两侧触头均处于断开状态; - θ₃ = θ₀ + 2Δθ₂ − Δθ₁ = 82.32°:S2
触头接触点(对称性:终点前 Δθ₁),此后 S2 侧触头摩擦出现; - θ_end = θ₀
+ 2Δθ₂ = 100°:S2 停止位置(限位挡块)。
角度定义约定(v4/v5):θ₀
为起始曲柄角度(曲柄角度,非触头角度);各关键角均以「起始曲柄角度
+ 转角增量」表达,且必须满足 Δθ₁ ≤
Δθ₂(分离位置不晚于双分位置)。弹簧驱动扭矩公式全程不变(默认参数下终点弹簧仍有约
8.6 mm 压缩量,见 9.2 节)。
2. 输入物理量参数
2.1 几何参数
| r |
曲柄长度 |
15.4 |
mm |
转轴到曲柄销的距离 |
| l |
连杆长度 |
30.57 |
mm |
曲柄销到滑块销的距离 |
| \theta |
曲柄转角 |
变量 |
° |
以水平向右为 0°,逆时针为正 |
| \theta_0 |
起始曲柄角度 |
10 |
° |
曲柄角度(非触头角度),运动初始位置 |
| \Delta\theta_1 |
分离转角增量 |
17.68 |
° |
触头分离角 \theta_1 = \theta_0 + \Delta\theta_1 =
27.68° |
| \Delta\theta_2 |
双分转角增量 |
45 |
° |
双分位置角 \theta_2 = \theta_0 + \Delta\theta_2 =
55° |
约束:\Delta\theta_1 \le
\Delta\theta_2(触头分离位置必须不晚于双分位置);0° \le \theta_0 且 \theta_0 + \Delta\theta_2 \le
90°(模型适用角域)。
2.2 弹簧参数(两侧相同)
| L_0 |
弹簧自由长度 |
52.2 |
mm |
弹簧不受力时的长度 |
| L_{s0} |
θ=0°时弹簧长度 |
21.5 |
mm |
曲柄水平向右时弹簧的压缩长度 |
| k |
弹簧刚度 |
14.5 |
N/mm |
弹簧力与压缩量的比例系数 |
2.3 触头摩擦参数
| n_{pole} |
极数 |
4 |
— |
开关极数 |
| n_{break} |
断点数/极 |
2 |
— |
双断点结构 |
| n_{surface} |
摩擦面数/断点 |
2 |
— |
动触头夹住静触头(两侧摩擦) |
| N_{contact} |
总摩擦接触点数 |
16 |
— |
N_{contact} =
n_{pole} \times n_{break} \times n_{surface} |
| F_{pressure} |
单边触头压力 |
11 |
N |
每个摩擦面的正压力 |
| r_{contact} |
触头摩擦半径 |
26 |
mm |
摩擦位置到旋转轴的直线距离 |
| \mu |
触头摩擦系数 |
0.2 |
— |
铜镀银典型值 |
摩擦系数推荐范围: - 铜-铜(干摩擦):0.3 ~ 0.5 -
铜镀银:0.15 ~ 0.25 - 银-银:0.1 ~ 0.2 - 有润滑:0.05 ~ 0.1
2.4 主轴摩擦参数
| T_{bearing} |
主轴摩擦扭矩 |
1000 |
N·mm |
转轴轴承摩擦阻力矩 |
推荐范围: - 滚动轴承:100 ~ 500 N·mm -
滑动轴承:500 ~ 3000 N·mm - 含密封/润滑不良:1000 ~ 5000 N·mm
2.5 质量与转动惯量参数
| J_{shaft} |
轴系转动惯量 |
124.57 |
kg·mm² |
含驱动轴、输出轴、主轴、动触头锁扣、动触头、触头支架、触头弹簧等 |
| m_{slider} |
单侧滑块质量 |
0.20562871 |
kg |
含滑块及连接件 |
3. 导出常数
| x(0) |
θ=0°时右侧滑块位置 |
45.97 |
mm |
x(0) = r +
l |
| x_{fix,R} |
右侧弹簧固定端位置 |
67.47 |
mm |
x_{fix,R} = x(0)
+ L_{s0} |
| x_{fix,L} |
左侧弹簧固定端位置 |
-67.47 |
mm |
x_{fix,L} =
-x(0) - L_{s0} |
| F_{normal,total} |
总正压力 |
176 |
N |
F_{normal,total}
= N_{contact} \times F_{pressure} |
| T_{contact} |
触头摩擦扭矩 |
915 |
N·mm |
T_{contact} =
F_{normal,total} \times \mu \times r_{contact} |
4. 分断时间计算 · 简明版
4.1 一句话原理
弹簧做的功 − 摩擦耗掉的功 = 机构攒下的动能。
对每个转角 \theta
算出净功,就能反推出该处的转速 \omega;把每一小段的「转角 ÷
转速」累加起来,就是分断时间。
这个方法叫能量法。它不需要解微分方程,只需要会算四则运算和开平方,且严格满足能量守恒。
4.2 七步计算流程
θ 从 θ₀=10° 扫到 θ₂=55°(每 0.01° 一步),每一步算 7 个量:
① 滑块位置 x(θ) = r·cosθ + √(l² − r²·sin²θ)
② 弹簧力 Fs = k·(L₀ − Ls),其中 Ls = 67.47 − x(θ)
③ 传动比 dx/dθ = −r·sinθ·(1 + r·cosθ/√(l² − r²·sin²θ))
④ 驱动扭矩 T_spring = −2·Fs·(dx/dθ) ← 虚功原理,两侧弹簧 ×2
⑤ 总惯量 J_total = 124.57 + 2·m_slider·(dx/dθ)²
⑥ 净功累积 W_net(θ) = Σ ½(T_净,n₋₁ + T_净,n)·Δθ ← 梯形累加,T_净 = T_spring − T_摩擦
⑦ 转速与时间 ω = √(2·W_net×1000/J_total),Δt = Δθ/ω̄,t 累加
其中只有 ⑥⑦ 是「积分」,其余都是代数代入。\omegā 指相邻两步转速的平均值。
4.3 数值演算示例(θ = 27.68°
脱离点)
| ① x |
15.4\cos27.68° +
\sqrt{30.57^2 - 15.4^2\sin^2 27.68°} |
43.36 mm |
| ② Fs |
Ls = 67.47-43.36
= 24.11 mm → 14.5\times(52.2-24.11) |
407.3 N |
| ③ dx/dθ |
-15.4\sin27.68°\times(1+\frac{15.4\cos27.68°}{\sqrt{30.57^2-15.4^2\sin^2
27.68°}}) |
−10.44 mm/rad |
| ④ T_spring |
-2\times
407.3\times(-10.44) |
8501 N·mm |
| ⑤ J_total |
124.57 +
2\times0.20563\times10.44^2 |
169.4 kg·mm² |
| ⑥ W_net |
弹簧功 1915.1 − 摩擦功
591.0(梯形累加至此角) |
1324.1 N·mm |
| ⑦ ω |
\sqrt{2\times1324.1\times1000/169.4} |
125.0 rad/s |
时间:把 10°→27.68° 之间每一步的 \Delta t =
\Delta\theta/\bar{\omega} 累加,得 6.05
ms;继续扫到 OFF 中点 55° 得 8.80 ms,扫到 S2
触头接触点 82.32° 得 10.72 ms,扫到终点 100° 得 S1→S2
全程总时间 11.76 ms。
单位说明:功的单位 N·mm = mJ;动能 \frac{1}{2}J\omega^2 的单位 kg·mm²/s²,需乘
1000 才是 N·mm,这就是 ⑦ 中 ×1000 的由来。
4.4 为什么不用「角加速度 ×
时间步长」逐步积分?
传统做法 J\cdot\ddot\theta = T_{net}
配上 \omega_{n+1} = \omega_n + \alpha\Delta
t
也能算,但有一个隐蔽陷阱:本机构的转动惯量随转角变化(131
→ 238 kg·mm²,增幅 82%),此时方程左边不再是简单的 J\ddot\theta,必须补一项 -\frac{1}{2}\frac{dJ}{d\theta}\dot\theta^2(见第
6 节)。漏掉它,能量就不守恒,末速会被高估约
12%。能量法从功-能关系出发,天然包含了这一项,是最稳妥的算法。
5. 计算过程与公式(完整版)
5.1 滑块位置函数
曲柄转角 \theta 与右侧滑块位置 x_R 的关系:
x_R(\theta) = r\cos\theta + \sqrt{l^2 -
r^2\sin^2\theta}
左侧滑块位置(由对称性):x_L(\theta) =
-x_R(\theta)
5.2 弹簧长度与弹簧力
右侧弹簧长度:L_{s,R}(\theta) = x_{fix,R} -
x_R(\theta)
左侧弹簧长度(由对称性):L_{s,L}(\theta) =
L_{s,R}(\theta) —— 两侧弹簧长度始终相等。
弹簧力(胡克定律,受压为正):
F_s(\theta) = k \cdot (L_0 -
L_s(\theta))
5.3 传动比(力臂系数)
滑块位置对转角的导数:
\frac{dx}{d\theta} = -r\sin\theta \left(1
+ \frac{r\cos\theta}{\sqrt{l^2 - r^2\sin^2\theta}}\right)
物理意义: - \frac{dx}{d\theta} < 0(\theta > 0):逆时针旋转时滑块向左移动 -
\frac{dx}{d\theta} = 0(\theta = 0):死点位置,力臂为零 - |\frac{dx}{d\theta}| 随 \theta
增大而增大:同样的弹簧力,越往后产生的扭矩越大(这是驱动扭矩随角度上升的主要原因)
5.4 弹簧驱动扭矩
由虚功原理,单侧弹簧产生的驱动扭矩 T_{single} = -F_s \cdot
\frac{dx}{d\theta},两侧对称叠加:
T_{spring}(\theta) = -2F_s(\theta) \cdot
\frac{dx}{d\theta} \quad [\text{N·mm}]
5.5 转动惯量(随转角变化)
轴系惯量为 Creo 实测恒定值 J_{shaft} =
124.57 kg·mm²。滑块平动动能经等效折算:
J_{slider}(\theta) =
m_{slider}\left(\frac{dx}{d\theta}\right)^2,\qquad
J_{total}(\theta) = J_{shaft} +
2m_{slider}\left(\frac{dx}{d\theta}\right)^2
特性:\frac{dx}{d\theta} 随角度增大 →
滑块等效惯量(双侧合计)从 10° 时的 6.6 kg·mm² 增至 55° 时的 113.5
kg·mm²,总惯量从 131.2 增至 238.1
kg·mm²(+82%)。正是这个变化引出了第 6 节的修正项。
5.6 摩擦阻力矩(分段)
T_{friction}(\theta) =
\begin{cases}
T_{bearing} + T_{contact} = 1915, & 10° \leq \theta \leq 27.68°
\quad\text{(S1 分断)}\\
T_{bearing} = 1000, & 27.68° < \theta < 82.32°
\quad\text{(双分行程)}\\
T_{bearing} + T_{contact} = 1915, & 82.32° \leq \theta \leq 100°
\quad\text{(S2 关合)}
\end{cases}
对称性依据:S1、S2
两侧触头结构完全相同,关合侧动触头滑入静触头的转角行程与分断侧滑出相同(均为
Δθ₁),滑动摩擦大小相同、方向均阻碍运动,故阶段三阻力与阶段一相同。
5.7 运动方程(v2 修正)
变惯量系统的完整运动方程(拉格朗日方程导出):
J_{total}(\theta)\cdot\ddot{\theta} =
T_{spring}(\theta) - T_{friction}(\theta)
\;\underbrace{-\;\frac{1}{2}\frac{dJ_{total}}{d\theta}\,\dot{\theta}^2}_{\text{v2
补充的修正项}}
5.8 数值积分:能量法(v2)
对任意转角 \theta,弹簧与摩擦的累积功:
W_{spring}(\theta) =
\int_{\theta_0}^{\theta} T_{spring}(\varphi)\,d\varphi,\qquad
W_{fric}(\theta) = \int_{\theta_0}^{\theta}
T_{friction}(\varphi)\,d\varphi
由能量守恒 \frac{1}{2}J(\theta)\omega^2 =
W_{spring} - W_{fric}(静止启动,初动能为零)直接解出转速:
\boxed{\;\omega(\theta) =
\sqrt{\frac{2\,(W_{spring}(\theta) - W_{fric}(\theta)) \times
1000}{J_{total}(\theta)}}\;}\quad [\text{rad/s}]
运动时间为:
t =
\int_{\theta_0}^{\theta_2}\frac{d\theta}{\omega(\theta)}
离散化(Excel 实现,步长 Δθ = 0.01°):
W_net,n = W_net,n₋₁ + ½(T_net,n₋₁ + T_net,n)·Δθ_rad ← 梯形法累积净功
ω_n = √(2·W_net,n×1000 / J_n)
Δt_n = Δθ_rad / ½(ω_n₋₁ + ω_n)
t_n = t_n₋₁ + Δt_n
终止条件:\theta \geq
\theta_2 = 55° 时停止,记录 t_{total} 与 \omega_{final}。步长收敛性已验证:0.01° 与
0.001° 步长的结果差 < 0.001%。
6. 变惯量修正项
-\frac{1}{2}\frac{dJ}{d\theta}\dot{\theta}^2
详解
6.1 这一项是什么?
它是转动惯量随转角变化时,运动方程里必须出现的附加阻力矩。当
J 不是常数时,「惯量 × 角加速度 =
合外力矩」这条熟悉的公式不再成立,右边必须补上 -\frac{1}{2}J'(\theta)\,\dot\theta^2。
- J'(\theta) =
\frac{dJ}{d\theta}:转角每增加 1 弧度,系统惯量增加多少(本机构
> 0,因为滑块越转越快、传动比越来越大)
- \dot\theta^2:转速的平方
- 整体带负号:惯量随角度增大 →
等效于一个阻力矩,且转速越高阻力越大
6.2 从哪来的?(两步推导)
系统动能 T =
\frac{1}{2}J(\theta)\,\dot\theta^2,代入拉格朗日方程 \frac{d}{dt}\frac{\partial T}{\partial \dot\theta} -
\frac{\partial T}{\partial \theta} = Q:
\frac{d}{dt}\underbrace{J(\theta)\dot\theta}_{\partial
T/\partial\dot\theta} = J\ddot\theta + J'(\theta)\dot\theta^2,
\qquad \frac{\partial T}{\partial\theta} =
\frac{1}{2}J'(\theta)\dot\theta^2
两式相减得:J\ddot\theta +
\frac{1}{2}J'(\theta)\dot\theta^2 =
Q,移项即修正后的运动方程。该项本质上是动能对角度的偏导数——惯量变化本身也储存/释放能量。
6.3 直观理解:花样滑冰类比
花样滑冰运动员收臂时 J
变小、转速自动升高;张臂时 J
变大、转速自动降低——不需要任何外力矩,仅仅是 J
在变。本机构中,曲柄每转过一个角度,滑块的等效惯量都在增大,效果等同于运动员持续”张臂”:即使没有摩擦,转速也比「J
恒定」算出来的要低。这个”自动减速效应”量化后就是 -\frac{1}{2}J'(\theta)\dot\theta^2。
6.4
本机构中有多大?(为什么不能忽略)
以触头脱离点(27.68°)为例:
| \frac{dJ}{d\theta}(实测曲线斜率) |
≈ 159 kg·mm²/rad |
| \omega(脱离点转速) |
125.0 rad/s |
| 修正项 \frac{1}{2}\frac{dJ}{d\theta}\omega^2 |
≈ 1244 N·mm |
| 对比:触头摩擦扭矩 |
915 N·mm |
| 对比:主轴摩擦扭矩 |
1000 N·mm |
它比任何一项摩擦都大。
若忽略该项:能量不守恒(末态动能比净功多出 1440.8 N·mm,占净功
25.5%),末速被高估 12.0%(217.7 → 243.9 rad/s),分断时间被低估
3.9%(8.80 → 8.47 ms),末态动能被高估约
25.5%——会直接影响触头冲击、机构强度的评估结论。行程越长,该项影响越大。
6.5 为什么能量法”自动包含”它?
能量法直接对动能积分:\frac{1}{2}J(\theta)\omega^2 = W_{net}。由于
J(\theta)
逐点代入,惯量变化的影响已经含在等式左边,无需显式写出修正项。可以验证:能量法与「带修正项的时间步进法」结果完全一致。
7. 计算结果(v5 · S1→S2
全程,能量法)
7.1 触头摩擦参数汇总
| 摩擦系数 \mu |
0.2(铜镀银) |
| 总正压力 F_{normal,total} |
176 N |
| 触头摩擦扭矩 T_{contact} |
915 N·mm |
| 主轴摩擦扭矩 T_{bearing} |
1000 N·mm |
| 阶段一/三总摩擦(触头接触区段) |
1915 N·mm = 1.915 N·m |
| 阶段二总摩擦(双分行程) |
1000 N·mm = 1.000 N·m |
7.2 运动时间计算结果
| S1 → 触头脱离 |
10° → 27.68° |
6.05 ms |
6.05 ms |
51.4% |
125.0 rad/s |
| 触头脱离 → OFF |
27.68° → 55° |
8.80 ms |
2.75 ms |
23.4% |
217.7 rad/s |
| OFF → 触头接触 |
55° → 82.32° |
10.72 ms |
1.92 ms |
16.4% |
280.2 rad/s |
| 触头接触 → S2 |
82.32° → 100° |
11.76 ms |
1.03 ms |
8.8% |
317.7 rad/s |
| 全程 S1 → S2 |
10° → 100°(90°) |
— |
11.76 ms |
100% |
— |
阶段按 OFF 双分中点切分后可见:双分行程(脱离→接触)合计 4.68
ms,其中前半(脱离→OFF)2.75 ms 慢于后半(OFF→接触)1.92 ms——机构过 OFF
后已积累更高速度。
注:OFF→S2 半程(2.96 ms)远快于 S1→OFF 半程(8.80
ms)——进入后半程时机构已具有 217.7 rad/s
的速度,后半程是「带着动能冲刺」,这正是储能式切换机构的工作特性。
7.3 关键中间状态
| 10°(S1 起始) |
0 ms |
0 rad/s |
131.2 kg·mm² |
起始 |
| 18.84° |
4.53 ms |
79.9 rad/s |
146.9 kg·mm² |
阶段一 |
| 27.68°(θ₁ =
θ₀+17.68°) |
6.05 ms |
125.0 rad/s |
169.4 kg·mm² |
S1 触头分离 |
| 41.34° |
7.60 ms |
180.1 rad/s |
208.1 kg·mm² |
阶段二 |
| 55°(θ₂ = θ₀+45°) |
8.80 ms |
217.7 rad/s |
238.1 kg·mm² |
OFF 双分中点 |
| 68.66° |
9.82 ms |
249.1 rad/s |
248.0 kg·mm² |
阶段二 |
| 82.32°(θ₃ =
θ₀+72.32°) |
10.72 ms |
280.2 rad/s |
235.8 kg·mm² |
S2 触头接触 |
| 91.16° |
11.26 ms |
298.9 rad/s |
219.8 kg·mm² |
阶段三 |
| 100°(θ_end =
θ₀+90°) |
11.76 ms |
317.7 rad/s |
201.1 kg·mm² |
S2 停止 |
7.4 能量收支表(自检)
| 弹簧总功 W_{spring} |
12283.2 N·mm |
| 摩擦总耗 W_{fric} |
2135.6 N·mm |
| 净功 W_{net} |
10147.6 N·mm |
| 末态动能 \frac{1}{2}J\omega^2 |
10147.6 N·mm ✓ 守恒 |
7.5 结果解读
- S1 分断仍是全程时间瓶颈:阶段一耗时 6.05 ms,占全程
51.4%;行程 17.68° 仅占全程
19.6%,时间占比却过半——触头摩擦是分断速度的决定性因素。
- 后半程为带速冲刺:机构以 217.7 rad/s 通过 OFF
中点,即使 S2 关合段(最后 17.68°)摩擦回升至 1915 N·mm,也只用 1.03 ms
便完成关合,摩擦对后半程几乎无减速作用。
- 变惯量效应随行程放大:总惯量从 131.2 增至峰值 248.0
kg·mm²(+89%),修正项等效阻力矩在脱离点约 1244
N·mm,超过触头摩擦;能量法已天然包含该项。
- 末态动能大:全程净功 10147.6 N·mm ≈ 10.15
mJ,机构最终靠 S2
侧限位挡块撞停,冲击与强度校核时应采用修正后的数值。
8. 公式汇总(v2)
【角度定义(v5 · S1→S2 全程)】
θ₁ = θ₀ + Δθ₁ (S1 触头分离角,默认 27.68°)
θ₂ = θ₀ + Δθ₂ (OFF 双分中点,默认 55°)
θ₃ = θ₀ + 2Δθ₂ − Δθ₁ (S2 触头接触角,默认 82.32°)
θ_end = θ₀ + 2Δθ₂ (S2 停止位置,默认 100°,主轴共转 90°)
约束 Δθ₁ ≤ Δθ₂,θ₀ + 2Δθ₂ ≤ 180°
【几何关系】
x_R(θ) = r·cos(θ) + √(l² - r²·sin²(θ))
x_L(θ) = -x_R(θ)
【弹簧模型】
Ls(θ) = (r + l + Ls₀) - x_R(θ)
Fs(θ) = k · (L₀ - Ls(θ))
【传动比】
dx/dθ = -r·sin(θ) · [1 + r·cos(θ)/√(l² - r²·sin²(θ))]
【驱动扭矩】
T_spring(θ) = -2 · Fs(θ) · (dx/dθ) [N·mm]
【转动惯量】
J_slider(θ) = m_slider · (dx/dθ)² [kg·mm²]
J_total(θ) = J_shaft + 2 · J_slider(θ) [kg·mm²]
【摩擦阻力】
T_fric(θ) = T_bearing + T_contact (θ₀ ≤ θ ≤ θ₁)
T_fric(θ) = T_bearing (θ₁ < θ ≤ θ₂)
T_contact = N_contact · F_pressure · μ · r_contact
【运动方程(v2 修正,含变惯量项)】
J(θ)·θ̈ = T_spring(θ) - T_fric(θ) - ½·(dJ/dθ)·θ̇²
【能量法积分(v2 推荐)】
W_net(θ) = ∫(T_spring - T_fric) dθ (梯形累积)
ω(θ) = √(2·W_net(θ)×1000 / J(θ))
t = ∫ dθ/ω(θ),离散步进 Δt = Δθ/ω̄
9.
输入参数有效性约束与失效判定(v3 新增)
分断时间计算成立是有前提的。本节列出每个输入物理量的合法域与失效模式,配套
Excel 与交互网页均按此实现三级校验:参数域错误(⛔ 无法计算)→
物理/模型失效(⛔ 结果无意义)→ 工程警告(⚠️
结果有效但需注意)。
9.1
第一级:参数域约束(违反则无法计算)
| r |
r >
0 |
机构无意义 |
| l |
l >
r |
l^2 -
r^2\sin^2\theta < 0,根号内出现负值,机构无法成立 |
| \theta_0,
\Delta\theta_1, \Delta\theta_2 |
0° \le
\theta_0;\Delta\theta_1,
\Delta\theta_2 > 0;\Delta\theta_1
\le \Delta\theta_2;\theta_0+\Delta\theta_2 \le 90° |
阶段划分错误;分离晚于双分逻辑矛盾;超出
90° 后模型对称性与接触假设不再适用 |
| L_0 |
L_0 >
0 |
物理量无意义 |
| L_{s0} |
0 < L_{s0}
< L_0 |
θ=0° 时弹簧未压缩,预压假设不成立 |
| k |
k >
0 |
物理量无意义 |
| F_{pressure} |
F_{pressure}
> 0 |
物理量无意义 |
| r_{contact} |
r_{contact} >
0 |
物理量无意义 |
| \mu |
\mu >
0 |
物理量无意义 |
| T_{bearing} |
T_{bearing} \ge
0 |
物理量无意义 |
| J_{shaft} |
J_{shaft} >
0 |
角加速度发散,物理量无意义 |
| m_{slider} |
m_{slider} \ge
0 |
取 0 时为忽略滑块惯量的理想化,合法 |
9.2 第二级:物理
/ 模型失效(可计算但结果无意义,必须拦截)
| 无法启动 |
T_{spring}(\theta_0) \le T_{bearing} +
T_{contact} |
起始驱动力矩不足以克服静摩擦,机构静止,分断时间
= ∞。 当前参数上限:T_{bearing} < T_{spring}(\theta_0) - T_{contact}
= 3526 - 915 \approx 2611 N·mm。 ⚠️
数值积分若对该工况”跳过负功区间继续累加”,会输出虚假的短时间——必须显式判定并输出
∞ |
| 中途停滞 |
存在 \theta <
\theta_{end} 使 W_{net}(\theta) \le
0 |
净功耗尽,机构停在半途,无法到达 S2
停止位置 |
| 弹簧进入拉伸 |
L_s(\theta_{end}) = x_{fix} - x(\theta_{end}) \ge
L_0 |
弹簧在某转角达到自由长度后进入拉伸;实际压簧会失去接触、作用力消失,胡克定律模型失效,结果不可信。处理:增大
L_0、减小 L_{s0}(增大预压量)或减小 \Delta\theta_2(缩短行程) |
弹簧拉伸失效的单调性说明:x(\theta) 在 0°\le\theta\le180° 单调递减 → L_s(\theta) 单调递增,因此只需检查全程终点
L_s(\theta_{end});网页实现中会同时给出弹簧达到自由长度的临界转角
\theta^*。默认参数下 L_s(100°)=43.6 mm < L_0=52.2 mm,终点弹簧仍保有约 8.6 mm
压缩量,模型成立。
9.3
第三级:工程警告(结果有效,但需注意)
| 启动裕度偏低 |
1 <
\dfrac{T_{spring}(\theta_0)}{T_{fric}(\theta_0)} < 1.3 |
工程建议启动裕度 ≥ 1.3;当前默认参数为
3526/1915 ≈ 1.84,健康 |
| 摩擦系数超范围 |
\mu >
0.6 |
超出常见金属接触摩擦范围,确认输入 |
| 行程提示 |
\theta_0 +
\Delta\theta_2 > 60° |
确认大行程符合实际机构设计 |
9.4 失效时的输出约定
- 无法启动 /
中途停滞:全程时间与各阶段时间输出「无法分断(→ ∞)」,\omega(t)、t(\theta) 曲线归零(物理真实 =
机构静止);
- 弹簧拉伸:输出「模型失效」,并标注弹簧达到自由长度的临界转角,所有时间类结果标记为不可信;
- 参数域错误:不执行计算,全部输出显示
“—”,并逐条列出错误原因;
- 三类信息在交互网页中以红色(失效/错误)与橙色(警告)横幅区分。
文档版本:v5(S1→S2 全程 90° + 三段式摩擦 + 能量法 +
参数有效性约束)· 更新时间:2026-07-21 v1:2026-07-17
初版;v2:补充变惯量项、改用能量法积分、更新计算结果;v3:新增第 9
节参数有效性约束与失效判定;v4:角度改为 θ₀+Δθ
增量表达(Δθ₁=17.68°、Δθ₂=45°),结果按 10°→55° 行程重算;v5:扩展为
S1→S2 全程(θ₀→θ₀+2Δθ₂,默认 90°
主轴转角),利用触头对称性采用三段式摩擦(S1 分断 → 双分行程 → S2
关合),结果按 10°→100° 全程重算
模型适用于对称双弹簧曲柄滑块机构的 S1→S2
全程运动时间计算,配套交付物:《双弹簧曲柄分断运动计算模型.xlsx》、交互仿真网页
Mathematical
Model of S1→S2 Full-Travel Motion for a Symmetric Dual-Spring
Crank-Slider Mechanism (v5 · Energy-Method Corrected)
v5 (2026-07-21): Scope extended from “S1 → OFF
double-break position” to the full S1 → S2 travel (90°
total shaft rotation). Because the two contact systems are fully
symmetric, the angle increment from S1 to contact separation (Δθ₁) is
also the increment from S2-side contact engagement to the S2 stop.
Friction is therefore upgraded from two-segment to
three-segment (S1 break → both-open travel → S2 make),
and the end point becomes θ_end = θ₀ + 2×Δθ₂ (default 100°). All results
recomputed (S1→S2 total time 11.76 ms, of which the OFF
midpoint is reached at 8.80 ms).
v4 (2026-07-18): Angle parameters are now expressed
as “initial crank angle + relative increments” — initial crank angle θ₀
= 10° (crank angle, not contact angle), contact
separation angle θ₁ = θ₀ + Δθ₁ (default Δθ₁ = 17.68°, i.e. 27.68°),
double-break position θ₂ = θ₀ + Δθ₂ (default Δθ₂ = 45°, i.e. 55°), with
the new constraint Δθ₁ ≤ Δθ₂. All results are recomputed for the new
stroke (total time 6.95 → 8.80 ms, final speed 158.0 →
217.7 rad/s).
v3 (2026-07-18): Added §9 “Input Validity
Constraints and Failure Criteria” — the valid domain, failure modes, and
handling for every input (consistent with the companion Excel workbook
and interactive web simulator).
v2 (2026-07-18) 1. Corrected the equation of motion
by adding the variable-inertia term -\frac{1}{2}\frac{dJ}{d\theta}\dot{\theta}^2
(see §6); 2. Replaced time-stepping integration with the energy
method, which satisfies energy conservation exactly; 3. Added
§4 “Break-Time Calculation · Simplified” — the full procedure with
minimal formulas; 4. Results updated (total time 6.79 → 6.95
ms, final speed 170.9 → 158.0 rad/s, for the
v2 stroke).
1. Mechanism and Motion Logic
1.1 Structure
This model describes a symmetric dual-spring crank-slider
mechanism used for the break operation of a dual-power transfer
switch:
- Central shaft: one crank-slider unit on each side,
sharing the same shaft; the two cranks are rigidly connected (180°
apart)
- Right unit: crank, connecting rod, slider, spring
(spring on the right of the slider, pushing it leftward)
- Left unit: mirror-symmetric to the right unit;
spring on the left of the slider, pushing it rightward
- Contact system: knife-type double-break structure,
4 poles, 2 breaks per pole, 2 friction surfaces per break (moving
contact clamps the stationary contact) — 16 friction contact points in
total
1.2 Motion Stages (v5 · full
S1→S2 travel)
The crank starts from rest at the S1 position (θ₀ =
10°), the shaft rotates 90° in total, and the
motion ends at the S2 stop (θ_end = θ₀ + 2×Δθ₂ = 100°).
Since the S1 and S2 contact systems are fully
symmetric, the S1-side “contact → separation” increment Δθ₁ is
also the S2-side “contact → stop” increment; the whole travel mirrors
about the OFF double-break midpoint (θ₂ = θ₀ + Δθ₂ = 55°), giving three
stages:
| Stage 1 (S1 break) |
10° → 27.68° |
S1 in contact |
shaft friction + contact friction |
large contact friction, slower speed
build-up |
| Stage 2 (both open) |
27.68° → 82.32° |
both sides open |
shaft friction only |
friction drops sharply, speed rises fast
through OFF |
| Stage 3 (S2 make) |
82.32° → 100° |
S2 in contact |
shaft friction + contact friction |
moving contact slides into the stationary
one; friction reappears and opposes motion |
Key angles (default parameters): - θ₁ = θ₀ + Δθ₁ =
27.68°: S1 contact separation — S1-side contact friction vanishes; - θ₂
= θ₀ + Δθ₂ = 55°: OFF double-break midpoint — both sides open; - θ₃ = θ₀
+ 2Δθ₂ − Δθ₁ = 82.32°: S2 contact engagement (by symmetry, Δθ₁ before
the end) — S2-side contact friction appears; - θ_end = θ₀ + 2Δθ₂ = 100°:
S2 stop (end stop).
Angle convention (v4/v5): θ₀ is the initial
crank angle (crank angle, NOT contact angle); all key angles
are expressed as “initial crank angle + increment”, with the mandatory
constraint Δθ₁ ≤ Δθ₂ (separation no later than
double-break). The spring driving-torque formula holds over the whole
travel (with defaults the spring still has ≈ 8.6 mm compression at the
end — see §9.2).
2.1 Geometry
| r |
Crank length |
15.4 |
mm |
shaft center to crank pin |
| l |
Connecting rod length |
30.57 |
mm |
crank pin to slider pin |
| \theta |
Crank angle |
variable |
° |
0° = horizontal right, CCW positive |
| \theta_0 |
Initial crank angle |
10 |
° |
crank angle (not contact
angle), motion start |
| \Delta\theta_1 |
Separation angle increment |
17.68 |
° |
S1 separation \theta_1 = \theta_0 + \Delta\theta_1 =
27.68°; by symmetry the S2 contact re-engages \Delta\theta_1 before the end (82.32°) |
| \Delta\theta_2 |
Half-stroke increment (to OFF) |
45 |
° |
OFF midpoint \theta_2 = \theta_0 + \Delta\theta_2 = 55°;
full S1→S2 \theta_{end} = \theta_0 +
2\Delta\theta_2 = 100° (90° shaft rotation) |
Constraints: \Delta\theta_1 \le \Delta\theta_2 (separation
no later than double-break); 0° \le
\theta_0 and \theta_0 + 2\Delta\theta_2
\le 180° (model validity range).
2.2 Spring Parameters
(identical on both sides)
| L_0 |
Spring free length |
52.2 |
mm |
length when unloaded |
| L_{s0} |
Spring length at θ=0° |
21.5 |
mm |
installed length with crank horizontal
right |
| k |
Spring stiffness |
14.5 |
N/mm |
force-to-compression ratio |
| n_{pole} |
Number of poles |
4 |
— |
switch poles |
| n_{break} |
Breaks per pole |
2 |
— |
double-break structure |
| n_{surface} |
Friction surfaces per break |
2 |
— |
moving contact clamps stationary
contact |
| N_{contact} |
Total friction points |
16 |
— |
N_{contact} =
n_{pole} \times n_{break} \times n_{surface} |
| F_{pressure} |
Contact pressure (one side) |
11 |
N |
normal force per friction surface |
| r_{contact} |
Contact friction radius |
26 |
mm |
distance from friction point to rotation
axis |
| \mu |
Contact friction coefficient |
0.2 |
— |
typical for silver-plated copper |
Recommended ranges for μ: - Cu–Cu (dry): 0.3 ~ 0.5 -
Silver-plated copper: 0.15 ~ 0.25 - Ag–Ag: 0.1 ~ 0.2 - Lubricated: 0.05
~ 0.1
2.4 Shaft Friction
| T_{bearing} |
Shaft friction torque |
1000 |
N·mm |
bearing friction torque (constant
throughout) |
Recommended ranges: - Rolling bearings: 100 ~ 500
N·mm - Sliding bearings: 500 ~ 3000 N·mm - Sealed / poorly lubricated:
1000 ~ 5000 N·mm
2.5 Mass and Inertia
| J_{shaft} |
Shaft-assembly inertia |
124.57 |
kg·mm² |
measured in Creo: drive shaft, output
shaft, main shaft, moving-contact latch, moving contacts, contact
carrier, contact springs, etc. |
| m_{slider} |
Slider mass (one side) |
0.20562871 |
kg |
slider and attachments |
3. Derived Constants
| x(0) |
Slider position at θ=0° |
45.97 |
mm |
x(0) = r +
l |
| x_{fix,R} |
Right spring fixed end |
67.47 |
mm |
x_{fix,R} = x(0)
+ L_{s0} |
| x_{fix,L} |
Left spring fixed end |
-67.47 |
mm |
x_{fix,L} =
-x(0) - L_{s0} |
| F_{normal,total} |
Total normal force |
176 |
N |
F_{normal,total}
= N_{contact} \times F_{pressure} |
| T_{contact} |
Contact friction torque |
915 |
N·mm |
T_{contact} =
F_{normal,total} \times \mu \times r_{contact} |
4. Break-Time Calculation ·
Simplified
4.1 One-Sentence Principle
Spring work − friction work = kinetic energy stored in the
mechanism. Compute the net work at every crank angle θ to get
the speed ω there; accumulate “angle ÷ speed” step by step to get the
break time.
This is the energy method: no differential equation
to solve, only arithmetic and square roots, and it satisfies energy
conservation exactly.
4.2 Seven-Step Procedure
Sweep θ from θ₀=10° to θ₂=55° (0.01° per step); at each step compute 7 quantities:
① Slider position x(θ) = r·cosθ + √(l² − r²·sin²θ)
② Spring force Fs = k·(L₀ − Ls), where Ls = 67.47 − x(θ)
③ Velocity ratio dx/dθ = −r·sinθ·(1 + r·cosθ/√(l² − r²·sin²θ))
④ Driving torque T_spring = −2·Fs·(dx/dθ) ← virtual work, ×2 for two springs
⑤ Total inertia J_total = 124.57 + 2·m_slider·(dx/dθ)²
⑥ Net work (cum.) W_net(θ) = Σ ½(T_net,n₋₁ + T_net,n)·Δθ ← trapezoid, T_net = T_spring − T_friction
⑦ Speed & time ω = √(2·W_net×1000/J_total), Δt = Δθ/ω̄, t accumulated
Only ⑥⑦ involve “integration”; everything else is direct
substitution. ω̄ is the mean speed of two adjacent steps.
4.3 Worked Example (θ =
27.68°, separation point)
| ① x |
15.4\cos27.68° +
\sqrt{30.57^2 - 15.4^2\sin^2 27.68°} |
43.36 mm |
| ② Fs |
Ls = 67.47-43.36
= 24.11 mm → 14.5\times(52.2-24.11) |
407.3 N |
| ③ dx/dθ |
-15.4\sin27.68°\times(1+\frac{15.4\cos27.68°}{\sqrt{30.57^2-15.4^2\sin^2
27.68°}}) |
−10.44 mm/rad |
| ④ T_spring |
-2\times
407.3\times(-10.44) |
8501 N·mm |
| ⑤ J_total |
124.57 +
2\times0.20563\times10.44^2 |
169.4 kg·mm² |
| ⑥ W_net |
spring work 1915.1 − friction work 591.0
(trapezoid up to this angle) |
1324.1 N·mm |
| ⑦ ω |
\sqrt{2\times1324.1\times1000/169.4} |
125.0 rad/s |
Time: summing \Delta t =
\Delta\theta/\bar{\omega} from 10° to 27.68° gives 6.05
ms; continuing to the OFF midpoint 55° gives 8.80
ms, to the S2 contact point 82.32° gives 10.72
ms, and to the end 100° gives the full S1→S2 total of
11.76 ms.
Units: work in N·mm = mJ; kinetic energy \frac{1}{2}J\omega^2 is in kg·mm²/s² and must
be multiplied by 1000 to give N·mm — hence the ×1000 in step ⑦.
4.4 Why Not “Angular
Acceleration × Time Step”?
The classical scheme J\ddot\theta =
T_{net} with \omega_{n+1} = \omega_n +
\alpha\Delta t works too, but hides a trap: the inertia
of this mechanism varies with angle (131 → 238 kg·mm², +82%),
so the left-hand side is no longer simply J\ddot\theta; a term -\frac{1}{2}\frac{dJ}{d\theta}\dot\theta^2
must be added (§6). Omitting it breaks energy conservation and
overestimates the final speed by ~12%. The energy method starts from the
work-energy relation and includes this term naturally — the safest
algorithm.
5.1 Slider Position
Crank angle θ vs. right slider position x_R:
x_R(\theta) = r\cos\theta + \sqrt{l^2 -
r^2\sin^2\theta}
Left slider position (by symmetry): x_L(\theta) = -x_R(\theta)
5.2 Spring Length and Force
Right spring length: L_{s,R}(\theta) =
x_{fix,R} - x_R(\theta)
Left spring length (by symmetry): L_{s,L}(\theta) = L_{s,R}(\theta) — the two
springs always have equal length.
Spring force (Hooke’s law, compression positive):
F_s(\theta) = k \cdot (L_0 -
L_s(\theta))
5.3 Velocity Ratio (Lever
Coefficient)
\frac{dx}{d\theta} = -r\sin\theta \left(1
+ \frac{r\cos\theta}{\sqrt{l^2 - r^2\sin^2\theta}}\right)
Physical meaning: - \frac{dx}{d\theta} < 0 (\theta > 0): CCW rotation moves the slider
leftward - \frac{dx}{d\theta} = 0
(\theta = 0): dead point — zero lever
arm - |\frac{dx}{d\theta}| grows with
θ: the same spring force produces more torque later in the stroke (the
main reason the driving torque rises with angle)
5.4 Spring Driving Torque
By the virtual-work principle, one spring produces T_{single} = -F_s \cdot \frac{dx}{d\theta};
both sides are symmetric, so:
T_{spring}(\theta) = -2F_s(\theta) \cdot
\frac{dx}{d\theta} \quad [\text{N·mm}]
5.5 Moment of Inertia
(angle-dependent)
The shaft-assembly inertia is constant (Creo measurement): J_{shaft} = 124.57 kg·mm². The slider’s
translational KE is converted to an equivalent inertia:
J_{slider}(\theta) =
m_{slider}\left(\frac{dx}{d\theta}\right)^2,\qquad
J_{total}(\theta) = J_{shaft} +
2m_{slider}\left(\frac{dx}{d\theta}\right)^2
Behavior: \frac{dx}{d\theta} grows with angle → the
slider equivalent inertia (both sides combined) rises from 6.6 kg·mm² at
10° to 113.5 kg·mm² at 55°, and the total inertia from 131.2 to 238.1
kg·mm² (+82%). This variation is exactly what gives rise to the
correction term in §6.
5.6 Friction Torque (piecewise)
T_{friction}(\theta) =
\begin{cases}
T_{bearing} + T_{contact} = 1915, & 10° \leq \theta \leq 27.68°
\quad\text{(S1 break)}\\
T_{bearing} = 1000, & 27.68° < \theta < 82.32°
\quad\text{(both open)}\\
T_{bearing} + T_{contact} = 1915, & 82.32° \leq \theta \leq 100°
\quad\text{(S2 make)}
\end{cases}
Symmetry basis: the S1 and S2 contact systems are
identical; on the make side the moving contact slides into the
stationary one over the same angular travel (Δθ₁) as on the break side,
with the same sliding friction magnitude, always opposing motion — hence
stage 3 resistance equals stage 1.
5.7 Equation of Motion (v2
corrected)
For a system with angle-dependent inertia, the full equation (from
Lagrange’s equation) is:
J_{total}(\theta)\cdot\ddot{\theta} =
T_{spring}(\theta) - T_{friction}(\theta)
\;\underbrace{-\;\frac{1}{2}\frac{dJ_{total}}{d\theta}\,\dot{\theta}^2}_{\text{correction
term added in v2}}
5.8 Numerical
Integration: Energy Method (v2)
Cumulative work of spring and friction up to any angle θ:
W_{spring}(\theta) =
\int_{\theta_0}^{\theta} T_{spring}(\varphi)\,d\varphi,\qquad
W_{fric}(\theta) = \int_{\theta_0}^{\theta}
T_{friction}(\varphi)\,d\varphi
From energy conservation \frac{1}{2}J(\theta)\omega^2 = W_{spring} -
W_{fric} (starts from rest, zero initial KE), the speed follows
directly:
\boxed{\;\omega(\theta) =
\sqrt{\frac{2\,(W_{spring}(\theta) - W_{fric}(\theta)) \times
1000}{J_{total}(\theta)}}\;}\quad [\text{rad/s}]
and the motion time is:
t =
\int_{\theta_0}^{\theta_{end}}\frac{d\theta}{\omega(\theta)}
Discretization (Excel / web implementation, step Δθ =
0.01°):
W_net,n = W_net,n₋₁ + ½(T_net,n₋₁ + T_net,n)·Δθ_rad ← trapezoid accumulation of net work
ω_n = √(2·W_net,n×1000 / J_n)
Δt_n = Δθ_rad / ½(ω_n₋₁ + ω_n)
t_n = t_n₋₁ + Δt_n
Termination: stop at \theta \geq \theta_2 = 55°; record t_{total} and \omega_{final}. Step-size convergence
verified: results at 0.01° and 0.001° differ by < 0.001%.
6.
The Variable-Inertia Term -\frac{1}{2}\frac{dJ}{d\theta}\dot{\theta}^2
Explained
6.1 What Is It?
An additional resisting torque that must appear in the
equation of motion whenever the inertia varies with angle. When
J is not constant, the familiar
“inertia × angular acceleration = net torque” no longer holds; the
right-hand side must include -\frac{1}{2}J'(\theta)\,\dot\theta^2.
- J'(\theta) =
\frac{dJ}{d\theta}: how much the system inertia grows per radian
of rotation (positive here, because the sliders move faster and
faster)
- \dot\theta^2: squared speed
- Overall negative sign: inertia growing with angle acts as a
resisting torque, stronger at higher speeds
6.2 Where Does It
Come From? (two-step derivation)
With kinetic energy T =
\frac{1}{2}J(\theta)\,\dot\theta^2 in Lagrange’s equation \frac{d}{dt}\frac{\partial T}{\partial \dot\theta} -
\frac{\partial T}{\partial \theta} = Q:
\frac{d}{dt}\underbrace{J(\theta)\dot\theta}_{\partial
T/\partial\dot\theta} = J\ddot\theta + J'(\theta)\dot\theta^2,
\qquad \frac{\partial T}{\partial\theta} =
\frac{1}{2}J'(\theta)\dot\theta^2
Subtracting gives J\ddot\theta +
\frac{1}{2}J'(\theta)\dot\theta^2 = Q; rearranging yields the
corrected equation. The term is essentially the partial
derivative of kinetic energy with respect to angle — a changing
inertia itself stores/releases energy.
A figure skater spins faster pulling arms in (J decreases) and slower extending arms (J increases) — no external torque
needed; only J changes. In
this mechanism, each degree of crank rotation increases the sliders’
equivalent inertia, equivalent to the skater continuously “extending
arms”: even without friction, the speed is lower than a constant-J calculation predicts. Quantified, this
“automatic deceleration” is exactly -\frac{1}{2}J'(\theta)\dot\theta^2.
6.4 How Large Is
It Here? (why it cannot be ignored)
At the separation point (27.68°):
| \frac{dJ}{d\theta} (slope of inertia
curve) |
≈ 159 kg·mm²/rad |
| \omega
(speed at separation) |
125.0 rad/s |
| Correction term \frac{1}{2}\frac{dJ}{d\theta}\omega^2 |
≈ 1244 N·mm |
| For comparison: contact friction
torque |
915 N·mm |
| For comparison: shaft friction torque |
1000 N·mm |
It exceeds every single friction term. Ignoring it
breaks energy conservation (final KE exceeds net work by 1440.8 N·mm,
i.e. 25.5% of net work), overestimates the final speed by 12.0% (217.7 →
243.9 rad/s), underestimates the break time by 3.9% (8.80 → 8.47 ms),
and overestimates the final KE by ≈ 25.5% — directly affecting
contact-impact and strength assessments. The longer the stroke, the
larger the effect.
6.5 Why
Does the Energy Method “Automatically Include” It?
The energy method integrates kinetic energy directly: \frac{1}{2}J(\theta)\omega^2 = W_{net}. Since
J(\theta) is substituted point by
point, the inertia variation is already inside the left-hand side — no
explicit correction term is needed. It can be verified that the energy
method gives results identical to time-stepping with the correction term
included.
7. Results (v5 · full
S1→S2 travel, energy method)
| Friction coefficient \mu |
0.2 (silver-plated copper) |
| Total normal force F_{normal,total} |
176 N |
| Contact friction torque T_{contact} |
915 N·mm |
| Shaft friction torque T_{bearing} |
1000 N·mm |
| Stage-1/3 total friction (contact
engaged) |
1915 N·mm = 1.915 N·m |
| Stage-2 total friction (both open) |
1000 N·mm = 1.000 N·m |
7.2 Motion Time
| S1 → separation |
10° → 27.68° |
6.05 ms |
6.05 ms |
51.4% |
125.0 rad/s |
| separation → OFF |
27.68° → 55° |
8.80 ms |
2.75 ms |
23.4% |
217.7 rad/s |
| OFF → touch |
55° → 82.32° |
10.72 ms |
1.92 ms |
16.4% |
280.2 rad/s |
| touch → S2 |
82.32° → 100° |
11.76 ms |
1.03 ms |
8.8% |
317.7 rad/s |
| Total S1 → S2 |
10° → 100° (90°) |
— |
11.76 ms |
100% |
— |
Splitting the both-open travel at the OFF midpoint shows: the
open-gap travel (separation→touch) totals 4.68 ms, of which the first
half (separation→OFF, 2.75 ms) is slower than the second (OFF→touch,
1.92 ms) — the mechanism carries more speed past OFF.
Note: the OFF→S2 half (2.96 ms) is far faster than the S1→OFF half
(8.80 ms) — the mechanism enters the second half already at 217.7 rad/s
and “coasts through with stored kinetic energy”, which is exactly how a
stored-energy transfer mechanism is meant to work.
| 10° (S1 start) |
0 ms |
0 rad/s |
131.2 kg·mm² |
start |
| 18.84° |
4.53 ms |
79.9 rad/s |
146.9 kg·mm² |
stage 1 |
| 27.68° (θ₁ =
θ₀+17.68°) |
6.05 ms |
125.0 rad/s |
169.4 kg·mm² |
S1 separation |
| 41.34° |
7.60 ms |
180.1 rad/s |
208.1 kg·mm² |
stage 2 |
| 55° (θ₂ = θ₀+45°) |
8.80 ms |
217.7 rad/s |
238.1 kg·mm² |
OFF midpoint |
| 68.66° |
9.82 ms |
249.1 rad/s |
248.0 kg·mm² |
stage 2 |
| 82.32° (θ₃ =
θ₀+72.32°) |
10.72 ms |
280.2 rad/s |
235.8 kg·mm² |
S2 engagement |
| 91.16° |
11.26 ms |
298.9 rad/s |
219.8 kg·mm² |
stage 3 |
| 100° (θ_end =
θ₀+90°) |
11.76 ms |
317.7 rad/s |
201.1 kg·mm² |
S2 stop |
7.4 Energy Budget (self-check)
| Total spring work W_{spring} |
12283.2 N·mm |
| Total friction loss W_{fric} |
2135.6 N·mm |
| Net work W_{net} |
10147.6 N·mm |
| Final KE \frac{1}{2}J\omega^2 |
10147.6 N·mm ✓ conserved |
7.5 Interpretation
- The S1 break is still the time bottleneck: stage 1
takes 6.05 ms, 51.4% of the total; its stroke (17.68°) is only 19.6% of
the full travel, yet takes over half the time — contact friction
dictates the break speed.
- The second half is a high-speed coast: the
mechanism passes OFF at 217.7 rad/s; even though friction rises back to
1915 N·mm in the S2 make stage (final 17.68°), that stage finishes in
just 1.03 ms with virtually no deceleration.
- Variable-inertia effect grows with stroke: total
inertia rises from 131.2 to a peak of 248.0 kg·mm² (+89%); the
correction term reaches ≈ 1244 N·mm near separation, exceeding the
contact friction — and it is inherently included in the energy
method.
- Large final kinetic energy: net work over the full
travel is 10147.6 N·mm ≈ 10.15 mJ; the mechanism is finally stopped by
the S2-side end stop — use the corrected values for impact and strength
checks.
【Angle definitions (v5 · full S1→S2 travel)】
θ₁ = θ₀ + Δθ₁ (S1 separation, default 27.68°)
θ₂ = θ₀ + Δθ₂ (OFF double-break midpoint, default 55°)
θ₃ = θ₀ + 2Δθ₂ − Δθ₁ (S2 engagement, default 82.32°)
θ_end = θ₀ + 2Δθ₂ (S2 stop, default 100° — 90° shaft rotation)
constraint Δθ₁ ≤ Δθ₂, θ₀ + 2Δθ₂ ≤ 180°
【Geometry】
x_R(θ) = r·cos(θ) + √(l² - r²·sin²(θ))
x_L(θ) = -x_R(θ)
【Spring model】
Ls(θ) = (r + l + Ls₀) - x_R(θ)
Fs(θ) = k · (L₀ - Ls(θ))
【Velocity ratio】
dx/dθ = -r·sin(θ) · [1 + r·cos(θ)/√(l² - r²·sin²(θ))]
【Driving torque】
T_spring(θ) = -2 · Fs(θ) · (dx/dθ) [N·mm]
【Inertia】
J_slider(θ) = m_slider · (dx/dθ)² [kg·mm²]
J_total(θ) = J_shaft + 2 · J_slider(θ) [kg·mm²]
【Friction (v5 three-segment)】
T_fric(θ) = T_bearing + T_contact (θ₀ ≤ θ ≤ θ₁, S1 break)
T_fric(θ) = T_bearing (θ₁ < θ < θ₃, both open)
T_fric(θ) = T_bearing + T_contact (θ₃ ≤ θ ≤ θ_end, S2 make)
T_contact = N_contact · F_pressure · μ · r_contact
【Equation of motion (v2 corrected, with variable-inertia term)】
J(θ)·θ̈ = T_spring(θ) - T_fric(θ) - ½·(dJ/dθ)·θ̇²
【Energy-method integration (v2, recommended)】
W_net(θ) = ∫(T_spring - T_fric) dθ (trapezoid accumulation)
ω(θ) = √(2·W_net(θ)×1000 / J(θ))
t = ∫ dθ/ω(θ), discrete step Δt = Δθ/ω̄
The break-time calculation is valid only under preconditions. Every
input’s valid domain and failure mode is listed below. The companion
Excel workbook and the interactive web simulator implement the same
three-level validation: domain error (⛔ cannot compute) →
physical/model failure (⛔ results meaningless) → engineering warning
(⚠️ results valid but noteworthy).
9.1
Level 1: Domain Constraints (computation impossible if violated)
| r |
r >
0 |
mechanism meaningless |
| l |
l >
r |
l^2 -
r^2\sin^2\theta < 0 — negative under the square root;
mechanism impossible |
| \theta_0,
\Delta\theta_1, \Delta\theta_2 |
0° \le
\theta_0; \Delta\theta_1,
\Delta\theta_2 > 0; \Delta\theta_1
\le \Delta\theta_2; \theta_0+\Delta\theta_2 \le 90° |
stage split error; separation later than
double-break is a logical contradiction; beyond 90° the symmetry/contact
assumptions no longer apply |
| L_0 |
L_0 >
0 |
meaningless quantity |
| L_{s0} |
0 < L_{s0}
< L_0 |
spring uncompressed at θ=0° — preload
assumption broken |
| k |
k >
0 |
meaningless quantity |
| F_{pressure} |
F_{pressure}
> 0 |
meaningless quantity |
| r_{contact} |
r_{contact} >
0 |
meaningless quantity |
| \mu |
\mu >
0 |
meaningless quantity |
| T_{bearing} |
T_{bearing} \ge
0 |
meaningless quantity |
| J_{shaft} |
J_{shaft} >
0 |
angular acceleration diverges |
| m_{slider} |
m_{slider} \ge
0 |
0 is legal (idealization ignoring slider
inertia) |
9.2
Level 2: Physical / Model Failures (computable but meaningless — must be
intercepted)
| Cannot start |
T_{spring}(\theta_0) \le T_{bearing} +
T_{contact} |
Initial driving torque cannot overcome
static friction; the mechanism stays still and break time =
∞. Current limit: T_{bearing} < T_{spring}(\theta_0) - T_{contact}
= 3526 - 915 \approx 2611 N·mm. ⚠️ A naive integrator that
“skips the negative-work region and keeps accumulating” would output a
falsely short time — this case must be detected and reported as ∞ |
| Stall mid-stroke |
exists \theta
< \theta_2 with W_{net}(\theta) \le
0 |
Net work exhausted; the mechanism stops
midway and never reaches the double-break position |
| Spring enters
tension |
L_s(\theta_2) =
x_{fix} - x(\theta_2) \ge L_0 |
The spring reaches its free length at some
angle and goes into tension; in reality a compression spring loses
contact and its force vanishes — Hooke’s-law model fails, results
untrustworthy. Remedies: increase L_0,
decrease L_{s0} (more preload), or
decrease \Delta\theta_2 |
Monotonicity note: x(\theta) decreases monotonically for 0°\le\theta\le90°, so L_s(\theta) increases monotonically —
checking only the endpoint L_s(\theta_2) suffices; the web
implementation additionally reports the critical angle \theta^* at which the spring reaches free
length.
9.3
Level 3: Engineering Warnings (results valid, but noteworthy)
| Low start margin |
1 <
\dfrac{T_{spring}(\theta_0)}{T_{fric}(\theta_0)} < 1.3 |
engineering recommendation ≥ 1.3; current
defaults give 3526/1915 ≈ 1.84, healthy |
| Friction coefficient out of range |
\mu >
0.6 |
beyond common metal-contact values —
confirm input |
| Stroke hint |
\theta_0 +
\Delta\theta_2 > 60° |
confirm the long stroke matches the actual
design |
9.4 Output Conventions on
Failure
- Cannot start / stall: total and stage times display
“Cannot break (→ ∞)”; \omega(\theta)
and t(\theta) curves are zeroed
(physical truth = no motion);
- Spring tension: displays “Model invalid” with the
critical free-length angle; all time results marked untrustworthy;
- Domain errors: no computation; all outputs show “—”
with itemized reasons;
- The web simulator shows failures/errors in red banners and warnings
in orange.
Document version: v5 (full S1→S2 90° travel + three-segment
friction + energy method + validity constraints) · updated
2026-07-21 v1: 2026-07-17 initial; v2: variable-inertia term,
energy-method integration, updated results; v3: added §9 validity
constraints and failure criteria; v4: angles as θ₀+Δθ increments
(Δθ₁=17.68°, Δθ₂=45°), results recomputed for the 10°→55° stroke; v5:
extended to full S1→S2 travel (θ₀→θ₀+2Δθ₂, 90° shaft rotation),
three-segment friction by contact symmetry (S1 break → both open → S2
make), results recomputed for 10°→100° Applies to S1→S2
full-travel time calculation of symmetric dual-spring crank-slider
mechanisms. Companion deliverables: 《双弹簧曲柄分断运动计算模型.xlsx》,
interactive web simulator.