磁気浮上シミュレーター(PID制御) 戻る
電磁気・制御工学

磁気浮上シミュレーター(PID制御)

磁気浮上のリアルタイムシミュレーション。受動浮上(永久磁石)の不安定性とPID制御による能動安定化を体験。アーンショーの定理からリニアモーターカーの原理まで。

浮上モード
システムパラメータ
物体質量 m (kg)0.10
目標ギャップ d₀ (mm)10.0
磁力定数 K5.0
PID ゲイン
比例ゲイン Kp800
積分ゲイン Ki200
微分ゲイン Kd40
外乱
外力 F_ext (N)0.0
計算結果
現在ギャップ (mm)
コイル電流 (A)
誤差 (mm)
状態

EMS磁気浮上モデル

$F_{mag}= K \cdot \dfrac{i^2}{d^2}$

$m\ddot{d}= mg - F_{mag}+ F_{ext}$

PID: $u = K_p e + K_i\!\int\!e\,dt + K_d\dot{e}$
磁気浮上アニメーション
ギャップ d(t) — 時間
コイル電流 i(t) — 時間

磁気浮上(PID制御)とは

🧑‍🎓
磁石だけで物を浮かせるって、なんか簡単そうな気がするんですけど、永久磁石だけだとダメって聞きました。どうしてなんですか?
🎓
それは「アーンショーの定理」という物理法則があるからなんだ。ざっくり言うと、永久磁石の静磁力だけでは、上下左右の全方向で安定な浮上点を作れないんだよ。例えば、上下方向で反発させようとすると、横方向では逆に引き寄せられてしまう。だからリニアモーターカーみたいなものは、電磁石の力をリアルタイムで制御して、初めて安定に浮いているんだ。このシミュレーターで「磁力定数K」を大きくして永久磁石モードで遊んでみると、すぐに横にずれて落ちるのがわかるよ。
🧑‍🎓
え、そうなんですか!じゃあ、どうやって安定させるんですか?「PID制御」ってやつが関係してる?
🎓
その通り!PID制御は、浮かせたい物体と電磁石の間の「ギャップ(隙間)」をセンサーで測り、目標値との誤差を元にコイル電流を調整するんだ。例えば、物体が下がりすぎたら電流を強くして磁力を強くし、押し戻す。この調整を「比例(P)」「積分(I)」「微分(D)」の3つの要素を組み合わせて行うのがPIDだよ。上のスライダーで「比例ゲインKp」だけを大きくしてみて。応答は速くなるけど、行き過ぎてカタカタ振動するのがわかるはずだ。
🧑‍🎓
振動を止めて、もっと滑らかに浮かせるには、どうしたらいいんですか?
🎓
そこで「微分ゲインKd」の出番だ。Kdは変化の速さ(速度)を見て、振動を抑えるダンピング効果を加えるんだ。実務では、まずKpで応答を整え、次にKdで振動を抑え、最後に「積分ゲインKi」で定常誤差(いつも少しだけ目標より下がっているような誤差)をゼロに近づける調整が多いね。シミュレーターで「外力F_ext」を加えてみよう。外力で押されても、PIDが電流を調整して元の高さに戻してくれる様子が観察できるよ。

物理モデルと主要な数式

電磁石(EMS型)が発生する吸引力は、コイル電流の2乗に比例し、浮上ギャップ(物体との距離)の2乗に反比例します。

$$F_{mag}= K \cdot \dfrac{i^2}{d^2}$$

$F_{mag}$: 電磁吸引力 (N), $K$: 磁力定数 (N·m²/A²), $i$: コイル電流 (A), $d$: 浮上ギャップ (m)

浮上物体の運動は、重力、電磁吸引力、外部からの力のバランスで決まります。この式(運動方程式)をPID制御で解くことで安定浮上が実現します。

$$m\ddot{d}= mg - F_{mag}+ F_{ext}$$

$m$: 物体質量 (kg), $g$: 重力加速度 (m/s²), $F_{ext}$: 外力 (N), $\ddot{d}$: ギャップの加速度 (m/s²)

目標ギャップ $d_0$ と現在ギャップ $d$ の誤差 $e = d_0 - d$ に対して、PIDコントローラが制御電流 $i$(または電圧)を計算します。

$$u = K_p e + K_i\int e\, dt + K_d \frac{de}{dt}$$

$u$: 制御出力, $K_p$: 比例ゲイン, $K_i$: 積分ゲイン, $K_d$: 微分ゲイン。積分項は過去の誤差の蓄積、微分項は誤差の変化速度を反映します。

実世界での応用

リニアモーターカー(EMS方式):車体下部の電磁石と軌道との間のギャップをPID制御で常に一定に保ち、接触せずに浮上走行を実現しています。高速・低騒音・低振動が特徴です。

磁気軸受:回転機械の軸を磁気で浮上させ支持するため、摩擦や潤滑油が不要です。半導体製造装置や真空ポンプ、超高速ターボ機械などで応用され、メンテナンスフリーと高精度を両立させています。

精密測定・加工ステージ:微細な加工や測定を行う装置のステージ(台)に採用され、摩擦によるブレや振動を排除することで、ナノメートルレベルの超高精度な位置決めを可能にします。

展示用・教育用浮上デモ:アーンショーの定理を体感できる教材や、美術館などの展示物として、磁気浮上の原理を視覚的に示す装置に使われています。制御理論を学ぶ実践的な教材としても重要です。

よくある誤解と注意点

まず、「Pゲインさえ大きくすれば速く安定する」というのは大きな誤解だ。確かにKpを上げれば誤差に素早く反応するけど、行き過ぎるとシミュレーターで見たように激しく振動(ハンチング)する。これは、システムが「過制御」状態になってるんだ。実機だとコイルが過熱したり、制御装置が発振して故障の原因になる。目安としては、振動が収まるギリギリ手前の値が「最適ゲイン」の第一歩だね。

次に、「Dゲインは大きければ大きいほど振動を抑えられる」と思いがちだが、これも落とし穴。微分項は誤差の「変化速度」を見ているので、センサーのノイズ(ごく小さな測定誤差)を極端に増幅してしまうんだ。例えば、ギャップ測定値に0.01mmのノイズが乗っていたら、Kdが大きいとそれが巨大な制御信号の乱れに変わってしまう。実務では、ノイズ対策として「不完全微分」を使うことが多いよ。

最後に、「Iゲインで定常誤差をゼロにできるから、最初から大きくしておこう」という考え方。これが一番危険かもしれない。積分項は過去の誤差をずっと蓄積するから、例えば急に外力がかかった後などに、誤差は解消されたのに蓄積した値(積分ワインドアップ)が残り、制御が大きくオーバーシュートする原因になる。実装時には「アンチワインドアップ」という対策が必須だ。シミュレーターで、Kiを大きくしてから急に外力を加えて離すと、この現象を体感できるはずだ。

関連する工学分野

この磁気浮上シミュレーターの核心は、「動く物体をセンサーで測り、リアルタイムで力を加えて目標位置に保つ」というフィードバック制御そのものだ。だから、全く別のモノを扱っているように見える分野でも、全く同じ考え方が応用されているんだ。

例えば、自動車のクルーズコントロールは、速度センサーで測った現在速度と設定速度の誤差を元に、エンジンのスロットル開度(これが制御出力u)をPID制御で調整している。ドローンや航空機のオートパイロット(姿勢制御)も同じ。ジャイロセンサーで機体の傾き(角度)を測り、モーターの回転数を調整して水平を保つ。ここでのPゲインが強すぎると、機体がピッチング(上下振動)を始めてしまうんだ。

さらに一歩進んだ応用が、精密工作機械や半導体製造装置の位置決めステージだ。ナノメートル単位の精度が要求されるここでは、PIDだけでは不十分で、前もって目標軌道を計算して動作させる「フィードフォワード制御」と組み合わせるのが一般的。また、ロボットアームの制御では、アームの動き自体が複雑な力(慣性力、遠心力)を生むので、それを数式モデル(動力学モデル)として事前に打ち消す「モデルベース制御」が使われる。磁気浮上の運動方程式 $$m\ddot{d}= mg - F_{mag}+ F_{ext}$$ を解くことが、まさにその第一歩なんだ。

発展的な学習のために

このシミュレーターで遊び尽くしたら、次のステップは「伝達関数」と「周波数解析」の概念に触れてみよう。今まで時間領域(横軸が時間のグラフ)で見ていた振動や応答を、周波数領域(横軸が周波数のグラフ)で見ると、システムの本質的な性質がクリアに見えるんだ。例えば、どの周波数の外乱に対してシステムが弱いか(感度)、制御が効かなくなる限界の周波数(ゲイン余裕、位相余裕)がわかる。これが分かると、PIDの各ゲインがシステムの「帯域幅」や「安定余裕」にどう影響するかを理論的に設計できるようになる。

数学的には、ラプラス変換を学ぶことが鍵だ。微分方程式で書かれた運動方程式やPIDの式を、代数方程式(sの方程式)に変換して扱う強力なツールで、制御工学の教科書はほぼこれで書かれている。最初は難しく感じるかもしれないが、ツールとしての使い方から入れば大丈夫。例えば、比例制御(P)のみの閉ループ系の伝達関数を導いてみるのが良い練習だ。

実践的な次のトピックとしては、「状態空間表現」と「オブザーバ(状態推定器)」がおすすめだ。PIDは出力(ギャップd)の誤差だけを見ていたけど、状態空間では速度や加速度など、システム内部の全ての状態変数を明示的に扱う。そして、全ての状態をセンサーで測れない場合(例えば速度センサーが無い場合)、オブザーバという仕組みで測定可能な出力(ギャップd)から内部状態(速度$\dot{d}$)を推定して制御に使う。これは現代制御理論の入り口で、より高度でロバストな制御系設計への第一歩になるよ。