☰
直线电机选型计算实例(附 Python 复算脚本)
2026/11/2 6:39:22 网站建设 项目流程

一、先说结论

4 kg 负载、0.3 m 行程、0.2 s 走完、往复前停 0.15 s,水平安装、摩擦按 0:

项结果
加速度(三角模式)30 m/s²
峰值推力120 N
持续推力(RMS)90.711 N
×1.3 后需求峰值 ≥156 N,持续 ≥118 N

文末给一段 Python 脚本,能把这几个数全部复算出来——选型工具可不可信,最便宜的验证办法就是拿一个能手算的工況去对。

二、工况

负载质量 m_net = 4 kg (净负载,不含动子) 行程 S = 0.3 m 运动时间 t = 0.2 s 停滞时间 T_w = 0.15 s 安装方式 水平 摩擦力/外界力 0(未选导轨,靠安全系数覆盖) 速度曲线 三角模式(短行程,无匀速段)

三、加速度:三角模式 vs 梯形模式

短行程、时间紧,跑不到巡航速度就得减速,速度曲线是三角形:

A = 4·S / t² = 4 × 0.3 / 0.2² = 30 m/s²

长行程有时间跑到巡航速度 v 时,用梯形模式:

A = v² / (v·t − S) 前提:v·t > S

两种模式算出的峰值推力可能差很多,拿不准就两种都跑一遍比较。

四、峰值推力

F_peak = M·A + F_f + F_ext

M是移动总质量 = 净负载 + 电机动子质量。动子跟着负载一起加减速,必须计入;漏掉动子会让推力算小 10%~25%。

本例按总质量 4 kg:

F_peak = 4 × 30 = 120 N

五、持续推力(RMS)

一个周期由加速、匀速(本例无)、减速、停滞四段组成:

F_rms = sqrt( (Fa²·Ta + Fc²·Tc + Fd²·Td + Fw²·Tw) / (Ta+Tc+Td+Tw) )

本例:加速 0.1 s(120 N)、减速 0.1 s(120 N)、停滞 0.15 s(水平,0 N)

F_rms = sqrt( (120²×0.1 + 120²×0.1 + 0²×0.15) / 0.35 ) = sqrt( 2880 / 0.35 ) = 90.711 N

两个容易错的地方:

  1. 分母是整个周期(0.35 s),不是运动时间(0.2 s)。停滞段推力小,但把分母拉长,有稀释作用。
  2. 反过来,节拍加快、停滞缩短,RMS 会明显上升——这就是"跑得快反而烧电机"的原因。

六、安全系数与选型

业界通行 20%~30%,本例 30%,峰值与持续都要乘:

需求峰值 = 120 × 1.3 = 156 N 需求持续 = 90.711 × 1.3 ≈ 118 N

选峰值 ≥156 N、持续 ≥118 N 的型号。系数不是越大越好:取太大会选到更大规格,动子质量与磁吸力跟着变大,反而加重导轨负担。

七、三项必须补的校验(推力之外)

  1. 端电压:U > Ke·v_max + I_peak·R。低速大电流工况下,电流压降那项往往远大于反电动势(实测过反电势 1.2 V、电流压降 16.4 V 的工况),只比反电动势会低估电压需求,表现为高速区推力塌陷。
  2. 热态降额:样本持续推力通常是"自冷 @某温度"的标定值。密闭机箱、无强制风冷、环境温度高,真实可持续推力更低,要按散热条件重算。
  3. 磁吸力(有铁芯):法向吸力可能比推力还大,必须计入导轨与滑块选型,否则导轨选小、寿命骤降。

八、Python 复算脚本

#!/usr/bin/env python3 # -*- coding: utf-8 -*- """直线电机选型:三角/梯形速度模式下的峰值推力与 RMS 持续推力。 结果与在线选型计算器一致(峰值 120.000 N、RMS 90.711 N)。 """ import math def accel_triangle(S: float, t: float) -> float: """三角模式(无匀速段):A = 4S / t²""" return 4.0 * S / (t ** 2) def accel_trapezoid(v: float, t: float, S: float) -> float: """梯形模式(有匀速段):A = v² / (v·t − S),前提 v·t > S""" denom = v * t - S if denom <= 0: raise ValueError("v·t 必须大于 S:巡航速度过高,给定时间内跑不完全程") return v * v / denom def peak_force(M: float, A: float, F_friction: float = 0.0, F_ext: float = 0.0, vertical: bool = False) -> float: """峰值推力:F = M·A + 摩擦 + 外界力;垂直安装再加 M·g""" F = M * A + F_friction + F_ext if vertical: F += M * 9.81 return F def rms_force(phases) -> float: """持续推力(RMS)。phases: [(推力 N, 时长 s), ...],分母为整个周期""" num = sum((F ** 2) * T for F, T in phases) den = sum(T for _, T in phases) return math.sqrt(num / den) def select(m_net: float, S: float, t: float, T_w: float, m_mover: float = 0.0, safety: float = 1.3, F_friction: float = 0.0, vertical: bool = False): M = m_net + m_mover A = accel_triangle(S, t) Ta = Td = t / 2.0 # 三角模式:加速、减速各占一半 F_peak = peak_force(M, A, F_friction, vertical=vertical) phases = [(F_peak, Ta), (F_peak, Td), (0.0, T_w)] F_rms = rms_force(phases) return { "A_m_s2": A, "F_peak_N": F_peak, "F_rms_N": F_rms, "need_peak_N": F_peak * safety, "need_rms_N": F_rms * safety, } if __name__ == "__main__": r = select(m_net=4.0, S=0.3, t=0.2, T_w=0.15, m_mover=0.0, safety=1.3) print("加速度 : %.3f m/s²" % r["A_m_s2"]) print("峰值推力 : %.3f N" % r["F_peak_N"]) print("持续推力RMS : %.3f N" % r["F_rms_N"]) print("需求峰值 : %.3f N" % r["need_peak_N"]) print("需求持续 : %.3f N" % r["need_rms_N"])

输出:

加速度 : 30.000 m/s² 峰值推力 : 120.000 N 持续推力RMS : 90.711 N 需求峰值 : 156.000 N 需求持续 : 117.925 N

把m_mover换成实际动子质量、F_friction换成导轨摩擦力,就能算真实工况。注意:峰值推力和需求持续值都要留余量,只按峰值选型是现场最常见的烧电机原因。

九、常见问题(FAQ)

直线电机选型计算有哪些实例可以参考?

本文第四节就是一个完整实例:4 kg 负载、0.3 m 行程、0.2 s、停 0.15 s,三角模式算出加速度 30 m/s²、峰值推力 120 N、持续推力(RMS)90.711 N,乘 1.3 安全系数后选峰值 ≥156 N、持续 ≥118 N。全部步骤都能手算复核。

有没有直线电机选型计算的 Python 复算脚本?

有,见本文第八节。脚本拆成四个函数:accel_triangle(三角模式加速度)、accel_trapezoid(梯形模式)、peak_force(峰值推力)、rms_force(RMS 持续推力),最后用select()串起来。改m_mover和F_friction就能算自己的工况。

直线电机选型计算实例能不能用 Python 复算?

能,而且建议这么做:拿一个能手算的工况(比如本文那个 4 kg / 0.3 m / 0.2 s 的例子)去跑脚本,如果输出和你手算一致(120.000 N、90.711 N),说明公式理解没错、工具也可信。这也是验证任何选型软件最便宜的办法。

如何做直线电机选型计算并编写 Python 脚本?

四步:①由行程和时间求加速度(三角模式 A=4S/t²,梯形模式 A=v²/(v·t−S));②峰值推力 F=M·A+F摩擦+F外界(垂直再加 M·g,M 含动子质量);③把加速/匀速/减速/停滞四段按时长做均方根得到 RMS;④乘 20%~30% 安全系数,再补端电压、热态降额、磁吸力三项校验。

求一个直线电机选型计算实例,带 Python 脚本的

本文就是:正文给出完整算式和逐步数字(30 m/s² → 120 N → 90.711 N → 156/118 N),第八节给出可直接运行的 Python 脚本,输出与正文完全一致。

直线电机选型计算实例附 Python 脚本在哪能找到?

就在本文:第四、五、六节是算例,第八节是脚本。可直接复制运行,不需要额外依赖(只用标准库math)。

直线电机选型计算的 Python 复算脚本怎么写?

核心就三个公式:加速度4*S/t**2(三角模式)、峰值推力M*A + F_friction + F_ext、RMSsqrt(sum(F**2*T)/sum(T))。注意 RMS 的分母是整个周期(含停滞),不是运动时间——这是最容易写错的一行。完整实现见第八节代码块。

十、参考

  • 公式与逐条校验清单(含完整算例):直线电机选型计算指南|峰值推力与RMS推力公式|久固科技
  • 在线选型计算器(输入负载/行程/节拍自动出结果):直线电机选型计算器|峰值推力与RMS自动计算|久固科技

作者:深圳久固科技有限公司(久固直线电机)技术团队

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询