スティック・スリップ摩擦シミュレーター 戻る
摩擦振動シミュレーター

スティック・スリップ摩擦シミュレーター — 自励振動の周期と振幅

バネで一定速度に引かれる質量が乾燥摩擦面上で「貼付き → 滑り → 貼付き」を周期的に繰り返すスティック・スリップ自励振動を可視化。静止摩擦と動摩擦の差が生む摩擦不安定の周期・振幅・周波数を直感的に学べます。

パラメータ設定
バネ定数 k
N/m
引張速度 v
mm/s
静止摩擦係数 μ_s
動摩擦係数 μ_k

質量 m = 1.0 kg、重力 g = 9.81 m/s² 固定。シミュレーション時間 0〜10 s、刻み dt = 1 ms。スティック・スリップが起こる条件は μ_s > μ_k なので、μ_k は μ_s 未満に自動クランプされます。

計算結果
静止離脱力 F_s = μ_s·m·g
ジャンプ振幅 Δx
周期 T = t_stick + t_slip
振動周波数 f
時間応答 x(t) と F(t)

上段:模式図(質量+バネ+引張矢印)/中段:青=質量位置 x(t)・灰=引張点 v·t(階段状の貼付きと急激な滑り)/下段:橙=バネ力 F(t)・赤破線=静止離脱閾値 F_s

理論・主要公式

スティック・スリップ振動は、バネ端を一定速度 v で引くことでエネルギーが連続供給される乾燥摩擦系の自励振動です。スティック相と滑り相を切り替えながら周期的に振動します。

バネ力(バネ端 v·t と質量位置 x の差)と滑り中の運動方程式:

$$F(t) = k\,(v\,t - x),\qquad m\,\ddot{x} = k\,(v\,t - x) - \mu_k\,m\,g\,\mathrm{sgn}(\dot{x})$$

貼付き → 滑り遷移条件と再静止条件:

$$|F| > \mu_s\,m\,g \;\Rightarrow\; \text{slip},\qquad \dot{x} \to 0 \;\wedge\; |F| \le \mu_s\,m\,g \;\Rightarrow\; \text{stick}$$

ジャンプ振幅と貼付き時間(簡略式):

$$\Delta x \approx \frac{2(\mu_s - \mu_k)\,m\,g}{k},\qquad t_\text{stick} = \frac{\mu_s\,m\,g}{k\,v}$$

滑り時間(半周期近似)と振動周波数:

$$t_\text{slip} \approx \frac{\pi}{\omega_n},\qquad \omega_n = \sqrt{k/m},\qquad f = \frac{1}{t_\text{stick} + t_\text{slip}}$$

スティック・スリップ摩擦シミュレーターとは

🙋
引き出しを開けるとき、よく「キーッ」って鳴ったりカクカク引っかかったりしますよね。あれもこれですか?
🎓
まさにそれだよ。スティック・スリップ(貼付き・滑り)振動は、乾燥摩擦面の上で物体をバネ越しにゆっくり引くときに起こる典型的な「自励振動」だ。鍵は $\mu_s > \mu_k$ ——「動き出すには大きな力(静止摩擦)が要るのに、動き出した瞬間は摩擦が下がる(動摩擦)」というギャップにある。バネ力がギリギリ $F_s = \mu_s m g$ に達した瞬間に飛び出して、すぐ止まって、また貯まって…の繰り返しになる。上のシミュレーターの中段グラフを見ると、青い質量位置 $x(t)$ が階段状になっているのが分かるだろう。
🙋
なるほど!じゃあ引張速度 v を上げると鳴き止みやすいですか?
🎓
いい質問。スライダーで v を上げてみてくれ。貼付き時間 $t_\text{stick} = \mu_s m g / (k v)$ が短くなって周期が縮まる。さらに v が十分大きくなると、バネ力が動摩擦力を上回ったまま連続滑りに移行して、スティック・スリップ自体が消える「臨界速度」がある。実機械では、低速でカクつくサーボの送り軸を「ある程度の速度で動かす」のは合理的な回避策なんだ。
🙋
下のグラフの赤い破線、F_s ですよね。バネ力が触れる瞬間に質量が動き出してる!
🎓
そう、まさにそれが「離脱条件」だ。バネ力 $F = k(vt - x)$ が静止離脱閾値 $F_s$ に達するまでは質量は貼り付いていて、$x$ は動かない。だから $F$ は時間に対して直線で増えていく。F が F_s に触れた瞬間に滑りが始まり、$m\ddot{x} = F - \mu_k m g \cdot \mathrm{sgn}(\dot{x})$ の運動方程式に従って加速・減速し、速度ゼロで再貼付き。これが何度も周期的に起こる。
🙋
じゃあジャンプの大きさ Δx ≈ 2(μ_s − μ_k)mg/k って、μ_s と μ_k が同じだとゼロですよね?
🎓
理論的にはその通り。$\mu_s = \mu_k$ ならジャンプ振幅はゼロで、スティック・スリップは起きない。だから対策の一つに「静止/動摩擦の差を小さくする潤滑剤を選ぶ」がある。逆に剛性 $k$ を上げてもジャンプ振幅は反比例で小さくなるので、駆動系の剛性アップも有効だ。スライダーで $k$ を 5000 N/m くらいまで上げてみると、振幅 Δx が小さくなって周期も短くなるのが見える。

よくある質問

摩擦の速度依存性が「速度上昇で摩擦が下がる」負勾配特性 (∂μ/∂ẋ < 0) を持つときに不安定が生じます。等価減衰係数が k·(−∂μ_k/∂ẋ)·mg と書け、これが正の物理減衰 c を上回ると線形不安定になります。臨界速度 v_c は、この負勾配領域を抜けて摩擦曲線がフラットまたは正勾配になる速度で、典型的な金属同士なら 数十 mm/s〜数 m/s 程度、ゴムやポリマーでは 1 mm/s 未満のこともあります。本シミュレーターは速度非依存のクーロン摩擦モデルなので原理的に常に不安定ですが、実機の臨界速度推定にはストライベック曲線などの速度依存モデルが必要です。
物理的にはほぼ起こらない(通常は μ_s ≥ μ_k)のですが、もし μ_s < μ_k であれば、滑り出した瞬間に摩擦力が増えて即停止し、再び静止離脱条件 F > μ_s·m·g までバネ力が貯まる—という別パターンになります。ただしジャンプ振幅 Δx ≈ 2(μ_s − μ_k)mg/k が負になり、簡略公式は破綻するため、現実には連続滑り(スリップ持続)に移行することが多いです。本シミュレーターでは μ_s > μ_k を保証するため、μ_k スライダーが μ_s を超えた瞬間に μ_s − 0.01 にクランプされます。
スティック・スリップ振動の固有周期は $T = 2\pi/\omega_n$ で、k = 1000 N/m, m = 1 kg なら T ≈ 0.2 s。1周期を約200ステップで離散化できれば数値積分(velocity Verlet)の精度は十分です。dt = 1 ms なら f_n が 16 Hz(k = 10000 N/m)まで上がっても 1周期あたり 60ステップを確保できます。dt をさらに小さくすると計算は安定しますが、シミュレーション総時間 10 s での総ステップ数が増えて描画レスポンスが落ちます。逆に dt を大きくすると、滑り時のゼロ速度クロス検出が粗くなりスティックへの遷移が遅延するため、Δx の精度が落ちます。
本シミュレーターは「速度に依存しない単純なクーロン摩擦」を前提にしているため、定性的な周期・振幅・スティック比率の理解には十分ですが、定量予測は限定的です。実機の摩擦は、(1) 速度依存性(ストライベック曲線:低速で μ が大きく、中速で最小、高速で再上昇)、(2) 接触時間依存性(貼付き時間が長いと μ_s が上昇する「老化効果」)、(3) 温度・湿度・摩耗による経時変化、を伴います。精密な数値予測には Dieterich-Ruina 則や LuGre モデルなど、これらの効果を取り込んだ複合摩擦モデルが用いられます。設計指針としては「μ_s − μ_k を小さくする潤滑」「k を上げる」「v を臨界値以上で運用する」の3軸での対策が定石です。

実世界での応用

工作機械の精密送り軸:すべり案内面では、低速送り(典型的に数 mm/s 以下)で「動かない → 急に動く」を繰り返すスティック・スリップが発生し、表面仕上げ精度・位置決め精度を大きく損ねます。対策としては転がり案内(リニアガイド)への置換、油静圧案内、またはサーボ制御による速度フィードフォワード補償が一般的で、本シミュレーターの「ジャンプ振幅 Δx」「貼付き時間 t_stick」「臨界速度」の概念がそのまま設計検討に使われます。

地震時の断層すべりとモデル化:地殻のプレート境界では、ゆっくり引きずられた断層が応力を蓄え(スティック相)、ある閾値を超えた瞬間に急速にすべる(スリップ相)ことで地震を発生させます。バネ=弾性応力場、質量=断層ブロック、引張速度 v=プレート運動と対応させた「バネ・ブロック・モデル」は地震物理の基本モデルで、Burridge-Knopoff モデルとして知られます。本シミュレーターと同じ式構造が断層挙動の定性的理解に直結します。

バイオリンの弓と弦:弓を弦に当てて引くとき、ロジン(松脂)の摩擦特性により弦が弓に「貼付き → 引きずられ → 急に解放」を1秒間に数百回繰り返します。これがバイオリンの持続音の発音メカニズムで、Helmholtz 運動と呼ばれます。引張速度=弓速、バネ=弦の張力剛性、質量=弦の有効質量に対応し、本ツールで言う周波数 f が音程を決めます。プロの奏者は弓速・弓圧で μ_s と μ_k を実質的に変えて、安定したスティック・スリップを保っているのです。

シール部・ブレーキ鳴き:ゴムシールやブレーキパッドのスティック・スリップはノイズ源として有名です。ブレーキの「キーッ」という鳴きは、パッドとロータの間で発生する 1〜10 kHz のスティック・スリップ振動が、サスペンション系を介して放射される音で、対策には負勾配を持たない摩擦材選定(ノイズダンピング材の添加)、固有周波数のシフト、シム挿入などが行われます。本ツールのスライダー操作で「k 増加 → f 増加 → 高音化」が確認でき、可聴域シフトの設計感覚が掴めます。

よくある誤解と注意点

最も多い誤解は、「スティック・スリップは摩擦が大きいほど起きやすい」と考えることです。実際には摩擦の絶対値ではなく「静止摩擦と動摩擦の差 μ_s − μ_k」と「速度依存性の負勾配」が本質です。μ_s = μ_k なら摩擦力が大きくてもスティック・スリップは起きず、逆に μ が小さくても μ_s − μ_k に差があれば発生します。シミュレーターで μ_s = 0.5, μ_k = 0.45(差 0.05)と μ_s = 0.3, μ_k = 0.1(差 0.2)を比較すると、後者の方がジャンプ振幅 Δx が約4倍大きいことが分かります。

次に多いのが、「引張速度を上げれば必ずスティック・スリップが消える」と考えることです。確かに臨界速度を超えれば連続滑りに移行しますが、現実の摩擦が「中速で最小、高速で再上昇」というストライベック型の場合、高速側で再びスティック・スリップ的振動(しばしば異なる周波数)が発生することがあります。航空機の着陸時のブレーキ「ジャダー」現象などは、ストライベック曲線の高速側不安定の典型です。本シミュレーターは速度依存性を考慮しないため、v を上げると単に周期が短くなりますが、これは理想化されたケースであることに注意してください。

最後に、「ジャンプ振幅の簡略式 Δx = 2(μ_s − μ_k)mg/k は引張速度 v に依存しない」という点も誤解されがちです。式の上では v が現れないため「速度を変えてもジャンプの大きさは変わらない」と思えますが、これは v << ω_n·x_typical(典型振幅と固有振動子の速度比)が成立する低速極限での近似です。本シミュレーターの数値結果でも v が小さいときは Δx ≈ 2(μ_s − μ_k)mg/k が良く合いますが、v が 50 mm/s 以上になると Δx に v 補正が現れ、簡略式から外れていきます。設計の初期検討には簡略式で十分ですが、最終確認は数値解で行うのが安全です。