ばね質量系シミュレーター 戻る
振動・波動

ばね質量系シミュレーター

ばね定数・質量・減衰係数を変えて1自由度系の振動をリアルタイムアニメーション。過減衰・臨界減衰・不足減衰の違いを視覚的に体験。強制加振にも対応。

パラメータ設定
ばね定数 k
N/m
質量 m
kg
減衰係数 c
N·s/m
初期変位 x₀
m
強制加振
加振力 F₀
N
加振周波数 f
Hz
固有振動数 fₙ
減衰比 ζ
減衰種別
計算結果
ωₙ [rad/s]
減衰比 ζ
fₙ [Hz]
現在変位 [m]
不足
減衰種別
アニメーション
変位時刻歴 x(t)
可視化
理論・主要公式
$$m\ddot{x}+ c\dot{x}+ kx = F_0\cos(\Omega t)$$ $$\omega_n = \sqrt{\frac{k}{m}}, \quad \zeta = \frac{c}{2\sqrt{mk}}, \quad \omega_d = \omega_n\sqrt{1-\zeta^2}$$

不足減衰($\zeta < 1$):$x(t) = Ae^{-\zeta\omega_n t}\cos(\omega_d t + \phi)$

数値積分はRunge-Kutta 4次法(Δt = 1ms)を使用

ばね質量系シミュレーターとは

🙋
「減衰比」って何ですか?シミュレーターのζ(ゼータ)のスライダーを見て気になりました。
🎓
大まかに言うと、振動がどれだけ早く収まるかを決めるパラメータだよ。ζを変えると、動きが大きく変わるんだ。例えば、上のスライダーで質量`m`とばね定数`k`はそのままに、減衰係数`c`を大きくしてζを1以上にしてみて。振動せずにゆっくり戻る「過減衰」になるよ。
🙋
え、そうなんですか!じゃあ、ζを1ピッタリにすると一番早く止まるということですか?
🎓
その通り!これが「臨界減衰」で、振動することなく最も速く平衡位置に戻る理想的な状態だ。実務では、ドアが静かに閉まるダンパーや、精密機器の防振設計でこの状態を目指すことが多いね。シミュレーターで`c`を微調整してζ=1に近づけると、その違いが一目瞭然だ。
🙋
「強制加振」のチェックボックスもありますね。これは何に使うんですか?
🎓
これは外から力を加え続けるモードだ。例えば、エンジンの振動が車体に伝わる現象を再現できる。加振周波数`f`を固有振動数に近づけると、振幅が急激に大きくなる「共振」が起こるんだ。パラメータを変えながらアニメーションを見ると、共振の恐ろしさと、減衰(ζ)がそれを抑える効果がよく分かるよ。

よくある質問

減衰係数cを変更してください。cを小さくすると不足減衰(振動しながら収束)、大きくすると過減衰(ゆっくり戻る)になります。臨界減衰はc=2√(mk)で、最も速く振動せずに平衡点に戻る状態です。質量mとばね定数kも影響するため、それらを固定してcだけを変化させると比較しやすいです。
加振周波数Ωを系の固有角周波数ωn=√(k/m)に近づけてください。減衰係数cが小さいほど、共振時に振幅が大きく増幅されます。シミュレーターでΩをスライダーで変化させながら、質量の振れ幅が最大になる点を探すと共振現象を確認できます。
自由振動は外力がなく初期変位や初速度で振動が始まるモードです。強制加振は外部から周期的な力F0cos(Ωt)が加わり続けるモードです。シミュレーターでは加振力の振幅F0を0に設定すると自由振動、0より大きく設定すると強制加振になります。
数値積分の時間刻みに対して系の固有周期が極端に短くなると、1ステップで変化する量が大きくなり計算が発散します。質量を小さくする、ばね定数を大きくしすぎない、または減衰係数を適度に大きくすることで安定したアニメーションが得られます。

実世界での応用

自動車のサスペンション設計:ばね(コイルスプリング)とダンパー(ショックアブソーバー)の組み合わせは、まさにこのモデルそのものです。乗り心地(振動の伝わり方)と接地性(車輪の上下動の収束性)を両立するため、減衰比ζは0.2〜0.4程度に設計されることが多いです。

建物の耐震・制振設計:地震時の建物の揺れを単純化した1自由度モデルとして解析されます。制振ダンパーを設置することで減衰比ζを大きくし、共振による大きな揺れを抑制することが目的です。

精密機器の防振台:顕微鏡や半導体製造装置などは、床の微振動から隔離する必要があります。防振ゴムやエアスプリングは、システムの固有振動数を極力低くし、外界の振動周波数から離すことで振動の伝達を防ぎます。

CAE(コンピュータ支援工学)における振動解析:FEM(有限要素法)を用いたモーダル解析の基本単位です。NastranやAbaqusなどのソフトウェアで計算される固有振動数や減衰比の概念は、この1自由度系のモデルと直結しており、複雑な構造物の振動特性を理解する基礎となります。

よくある誤解と注意点

このシミュレーターを使い始めるとき、いくつかつまずきやすいポイントがあるよ。まず「質量とばね定数を変えても、固有振動数だけが同じなら挙動は同じ」と思いがちな点だ。確かに固有振動数 $\omega_n$ は $\sqrt{k/m}$ で決まるから、$m=1, k=100$ でも $m=4, k=400$ でも $\omega_n$ は同じ10 rad/sになる。しかし、減衰比 $\zeta = c / (2\sqrt{mk})$ の式を見てほしい。$m$と$k$が4倍になると、同じ減衰比を維持するために必要な減衰係数 $c$ は2倍になるんだ。つまり、見かけの振動数が同じでも、系の「重さ」や「硬さ」そのものが設計に与える影響は別で考える必要がある。例えば、軽くて硬い系と、重くて柔らかい系では、必要なダンパーのサイズ($c$の値)が変わってくるんだ。

次に、「強制振動の加振周波数は、常に固有振動数ぴったりで共振が最大になる」という誤解。減衰が大きい($\zeta$が0.1を超えるくらい)と、最大振幅が生じる周波数は固有振動数 $\omega_n$ から少し低い方にずれる。このシミュレーターでも、$\zeta=0.3$くらいに設定してから加振周波数 $f$ をゆっくり変えていくと、振幅のピークが $\omega_n/(2\pi)$ より少し低いところにあるのが確認できるはず。これは実務でも重要で、共振点を避ける設計をするときは、このずれも考慮に入れる必要がある。

最後に、「臨界減衰が常に最適」という思い込み。確かに単純に「最も早く静止させる」という目的では臨界減衰が理想だ。でも、自動車のサスペンションのように「乗り心地」も考慮すると話は別。臨界減衰($\zeta=1$)だと路面の凹凸がダイレクトに車体に伝わる「ガチガチ」な乗り心地になる。振動を適度に吸収しながらも早く収束させるためには、$\zeta=0.2〜0.4$ のような「不足減衰」の領域が選ばれる。目的に応じて最適な減衰比は変わる、というのが実務の知恵だね。