「負荷慣性をモーター軸へ換算する|減速比の二乗・等価慣性・慣性比」の内容を表す技術イラスト
UNIT 01機械設計 FIG.00 · EYECATCH

負荷慣性をモーター軸へ換算する|減速比の二乗・等価慣性・慣性比

負荷慣性をモーター軸へ換算する方法を、減速比の二乗、速度比、直線移動質量、慣性比から解説。計算例とPythonコードで複数軸の等価慣性を整理し、モーター選定時の二重換算や効率混同を防ぎます。

DOC NO.EKP-01-1152
DATE
REVB
READ約 11 分
目次

負荷慣性はモーター軸から見た値へそろえる

モーター選定では、必要トルクだけでなく負荷慣性モーメントも確認します。慣性が大きい機構は加速・減速に時間がかかり、指令への追従、停止時の振動、整定時間に影響するためです。

ただし、ローラー、テーブル、歯車、カップリング、モーターローターの慣性を、そのまま足すことはできません。各部品は異なる回転数で動くため、すべてを同じ軸へ換算してから合計する必要があります。

実務では、モーター軸へ換算した負荷慣性を求め、モーターローター慣性との比を計算します。減速機がある場合、負荷側の慣性は減速比の二乗で小さく見えることが重要です。

慣性モーメントとは何か

直線運動で質量 $m$ が速度変化に抵抗するように、回転運動では慣性モーメント $J$ が角速度変化に抵抗します。角加速度を $\alpha$、慣性トルクを $T_J$ とすると、基本式は次のとおりです。

$$ T_J=J\alpha $$

$J$ のSI単位は $\mathrm{kg\cdot m^2}$、$\alpha$ は $\mathrm{rad/s^2}$、$T_J$ は $\mathrm{N\cdot m}$ です。

代表的な形状の重心軸まわりの慣性モーメントは次のようになります。

形状慣性モーメント
中実円柱・円板J = m r² / 2
薄肉円筒・リングJ = m r²
直線移動質量のプーリー軸換算J = m r²

ここで $r$ は回転半径またはプーリーのピッチ円半径です。ベルト駆動では外径ではなく、ベルトが運動を伝えるピッチ円半径を使います。

減速比の二乗で換算される理由

本記事では減速比を次のように定義します。

$$ i=\frac{\omega_m}{\omega_L} $$

$\omega_m$ はモーター角速度、$\omega_L$ は負荷側角速度です。減速機でモーターが負荷の5倍の速さで回るなら $i=5$ です。

負荷側の慣性モーメントを $J_L$ とすると、負荷が持つ回転運動エネルギーは、

$$ E_L=\frac{1}{2}J_L\omega_L^2 $$

です。このエネルギーと等価になるモーター軸換算慣性を $J_{Lm}$ とすると、

$$ \frac{1}{2}J_{Lm}\omega_m^2=\frac{1}{2}J_L\omega_L^2 $$

となります。$\omega_L=\omega_m/i$ を代入すれば、

$$ J_{Lm}=\frac{J_L}{i^2} $$

です。

つまり減速比5では負荷側慣性がモーター軸から見て25分の1、減速比10では100分の1になります。減速機が大きな慣性負荷の駆動に有効なのは、トルクを増幅するだけでなく、モーター軸から見た負荷慣性も小さくするためです。

複数軸を一般式で換算する

機構内の各回転体について、慣性モーメントを $J_k$、その軸の角速度を $\omega_k$ とします。モーター軸へ換算した慣性は、

$$ J_{ref,k}=J_k\left(\frac{\omega_k}{\omega_m}\right)^2 $$

です。すべての回転体を合計すると、

$$ J_{ref}=\sum_k J_k\left(\frac{\omega_k}{\omega_m}\right)^2 $$

となります。

この式なら、単段減速機だけでなく、複数段歯車、ベルト比、チェーン比が混在する機構にも使えます。重要なのは、各部品がモーターの何倍または何分の1の角速度で回るかを明確にすることです。

直線移動質量を回転慣性へ置き換える

ベルトやラックで質量 $m$ を直線移動させ、負荷側プーリーまたはピニオンの有効半径を $r$ とします。直線速度と角速度の関係は、

$$ v=r\omega_L $$

です。直線運動エネルギーと回転運動エネルギーを等しく置くと、

$$ \frac{1}{2}mv^2=\frac{1}{2}J_{linear}\omega_L^2 $$

なので、

$$ J_{linear}=mr^2 $$

となります。さらに減速比 $i$ を介してモーター軸へ換算すると、

$$ J_{linear,m}=\frac{mr^2}{i^2} $$

です。

ボールねじでは、1回転当たりの移動量であるリードを $p$ とすると、直線移動質量のねじ軸換算慣性は、

$$ J_{linear}=m\left(\frac{p}{2\pi}\right)^2 $$

です。ねじ軸とモーターの間に減速比がある場合は、さらに $i^2$ で割ります。

計算例:ベルト駆動テーブルの等価慣性

次の条件で計算します。数値は換算手順を示すための例です。実機では各部品の仕様値を使用してください。

項目記号値
移動質量m80 kg
負荷側プーリーのピッチ円半径r0.050 m
負荷側回転体の慣性J_out0.012 kg·m²
減速比i5
モーター側歯車・カップリング慣性J_in0.00035 kg·m²
モーターローター慣性J_M0.00025 kg·m²

まず、移動質量を負荷側プーリー軸の慣性へ換算します。

$$ J_{linear}=mr^2=80\times0.050^2=0.200\ \mathrm{kg\cdot m^2} $$

負荷側回転体を加えた負荷側合計慣性は、

$$ J_{L,out}=0.200+0.012=0.212\ \mathrm{kg\cdot m^2} $$

です。これをモーター軸へ換算します。

$$ J_{L,m}=\frac{0.212}{5^2}=0.00848\ \mathrm{kg\cdot m^2} $$

モーターと同じ速度で回る歯車・カップリングの慣性は、減速比で割らずに加えます。

$$ J_{ref}=0.00848+0.00035=0.00883\ \mathrm{kg\cdot m^2} $$

モーター軸換算負荷慣性は0.00883 kg·m²です。

慣性比を計算する

慣性比は、モーター軸換算負荷慣性をモーターローター慣性で割った値です。

$$ R_J=\frac{J_{ref}}{J_M} $$

例の条件では、

$$ R_J=\frac{0.00883}{0.00025}=35.32 $$

となります。

この35.32という値だけで適否は判断できません。許容慣性比は、サーボモーター、ステッピングモーター、ブラシレスモーターなどの方式、ドライバの制御能力、オートチューニング、機械剛性、運転パターンによって異なります。メーカーが対象シリーズに示す許容慣性比または許容負荷慣性と照合します。

また、慣性比を満たしていても、必要回転数、最大トルク、実効トルク、回生エネルギーの確認は別に必要です。

加速トルクとの関係

モーター自身の慣性を含む理想的な総慣性は、

$$ J_{total}=J_M+J_{ref} $$

です。モーター角加速度を $\alpha_m$ とすると、理想的な加速トルクは、

$$ T_A=J_{total}\alpha_m $$

で求められます。

ただし、実際の減速機には損失があります。慣性比を計算するときは、運動エネルギーに基づく軸換算として効率を混ぜません。一方、モーター必要トルクを求めるときは、負荷側の加速トルクや外力トルクをモーター軸へ換算する過程で伝達効率を考慮します。

「等価慣性の換算」と「損失を含む必要トルク計算」を同じ式に押し込まず、計算目的を分けると二重補正を防げます。

Pythonで軸換算を自動化する

各回転体について、慣性モーメントとモーターに対する速度比を登録すれば、複数段機構も同じ関数で計算できます。

from dataclasses import dataclass


@dataclass(frozen=True)
class RotatingPart:
    name: str
    inertia_kg_m2: float
    speed_ratio_to_motor: float


def reflected_inertia(parts: list[RotatingPart]) -> dict[str, float]:
    result: dict[str, float] = {}

    for part in parts:
        if part.inertia_kg_m2 < 0:
            raise ValueError(f"{part.name}: inertia must be non-negative")
        if part.speed_ratio_to_motor < 0:
            raise ValueError(f"{part.name}: speed ratio must be non-negative")

        result[part.name] = (
            part.inertia_kg_m2 * part.speed_ratio_to_motor**2
        )

    result["total_reflected_load"] = sum(result.values())
    return result


moving_mass_kg = 80.0
pitch_radius_m = 0.050
gear_ratio = 5.0

linear_inertia_at_output = moving_mass_kg * pitch_radius_m**2

parts = [
    RotatingPart(
        name="linear_mass",
        inertia_kg_m2=linear_inertia_at_output,
        speed_ratio_to_motor=1 / gear_ratio,
    ),
    RotatingPart(
        name="output_rotating_parts",
        inertia_kg_m2=0.012,
        speed_ratio_to_motor=1 / gear_ratio,
    ),
    RotatingPart(
        name="input_gear_and_coupling",
        inertia_kg_m2=0.00035,
        speed_ratio_to_motor=1.0,
    ),
]

result = reflected_inertia(parts)
motor_rotor_inertia = 0.00025
inertia_ratio = result["total_reflected_load"] / motor_rotor_inertia

for name, value in result.items():
    print(f"{name}: {value:.8f} kg m^2")
print(f"inertia_ratio: {inertia_ratio:.2f}")

主な結果は次のとおりです。

linear_mass: 0.00800000 kg m^2
output_rotating_parts: 0.00048000 kg m^2
input_gear_and_coupling: 0.00035000 kg m^2
total_reflected_load: 0.00883000 kg m^2
inertia_ratio: 35.32

speed_ratio_to_motorには「その部品の角速度 ÷ モーター角速度」を入れます。減速比5の出力軸なら 1 / 5、モーターと同速なら1.0です。この定義を固定すると、減速比を掛けるか割るかの混乱を防げます。

実務で起こりやすい失敗

減速比を一乗で換算する

トルクは減速比の一乗で変換されますが、慣性は速度比の二乗で換算します。トルク換算式をそのまま慣性へ使わないでください。

モーターローター慣性を負荷慣性へ混ぜる

慣性比の分子は、モーター軸へ換算した負荷側・伝達系の慣性です。モーターローター慣性は分母に使います。加速トルクを計算するときに、初めて両者を合計します。

入力軸換算値をもう一度換算する

減速機メーカーが「入力軸換算慣性」として示した値は、すでに入力軸基準です。さらに減速比の二乗で割ると、過小評価になります。カタログ値がどの軸を基準にしているかを確認します。

外径を有効半径に使う

ベルト、チェーン、歯車、ラックでは、運動を伝えるピッチ円半径を使います。フランジ外径や歯先円半径を使うと、直線移動質量の換算慣性がずれます。

慣性比だけでモーターを選ぶ

慣性比は制御性に関係する一つの条件です。最大回転数、加速トルク、連続運転の実効トルク、回生能力、機械強度、バックラッシ、ねじり剛性も確認します。

データ化するときの持ち方

自動選定やWebツールへ展開する場合は、慣性値だけでなく基準軸をデータとして持たせます。

  • 部品名と形番
  • 慣性モーメント
  • 慣性値の基準軸
  • モーターに対する速度比
  • 換算後慣性
  • 値の出典と資料版
  • モーターローター慣性
  • メーカー指定の許容慣性比または許容負荷慣性
  • 計算に使用した減速比の定義

この構造なら、減速比やモーター候補を変更したときに換算値と慣性比を再計算できます。計算結果だけでなく、各部品がどの速度で回るかを残すことが再利用の鍵です。

まとめ

負荷慣性をモーター選定へ使うには、すべての慣性をモーター軸基準へそろえます。負荷側慣性 $J_L$ を減速比 $i$ で換算する基本式は、

$$ J_{Lm}=\frac{J_L}{i^2} $$

です。複数軸では、

$$ J_{ref}=\sum_k J_k\left(\frac{\omega_k}{\omega_m}\right)^2 $$

を使います。直線移動質量は、プーリーやピニオンの有効半径 $r$ を使って $mr^2$ へ置き換えます。

モーター軸換算負荷慣性を求めたら、ローター慣性との比を計算し、対象モーター・ドライバの仕様と照合します。慣性比に共通の万能基準はありません。メーカーがシリーズごとに示す許容値を使い、トルク、回転数、回生、機械剛性と合わせて判断することが重要です。

参考情報

参考になったらシェアしてください
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

機械設計・油圧・CAD・Python・AIなど、ものづくりに関わる技術を扱っています。工学知識を整理・構造化し、設計や自動化に再利用できる形へ変えていくことを目指しています。

目次