倒立振子はトルク制御と速度制御のどちらの夢をみるのか?

アバター画像 お父ちゃん  2025.11.16 
Home > 電子工作 > 倒立振子はトルク制御と速度制御のどちらの夢をみるのか?

本記事にはアフィリエイト広告が含まれます。

すき 1
うんこ 0

BLDCをFOCで制御したりQDDモータをいじくるようになり、ふと思ったのです。

 

トルク制御と速度制御 どっちがいいんだろうか?
当然用途によるんだろうけど

倒立振子で比較してみましょう。

 

AudiostockでBGM・効果音を販売中!

QDDモータ ROBSTRIDE 05

Robstride 05 で車輪タイプの倒立振子を作ってトルク制御/速度制御の比較を実施しました。

 

トルク制御

見事に倒立

ATOM matrix内蔵のIMUで姿勢検知してCAN通信でモータを動かしてます。

以下のようにトルク(モータ電流)を制御
 トルク(電流) = Kp × 姿勢角 + Kd × 姿勢角速度 + Kw × モータ回転速度

速度制御

同様に速度モードでROBSTRIDE 05 を駆動して倒立振子動作

こちらも素晴らしい動作。

倒立振子自体の制御はトルク制御と全く同じ形式
 速度 = Kp × 姿勢角 + Kd × 姿勢角速度 + Kw × モータ回転速度

速度モード内部の速度制御器 (回転速度→モータ電流)のパラメータはいじらず初期値を使用しました (PI制御らしい)。

 

負荷に依存せずに指令通り速度を保ってくれるので、以下のように起き上がり制御も容易にできました。

 

車輪倒立振子はダイレクトドライブ一択かなと思っていたけど、QDDでも上の動画のように小さくて軽い倒立振子の起き上がりにも追従できるし、パワーがあってむしろ最適でしたね。

 

参考

BLDC Roller485 Lite 

Roller485のリアクションホイール倒立振子でもトルク制御/速度制御の比較実施

 

トルク制御

トルク制御によるRoller485 リアクションホイール倒立振子は以前にも確認済み

制御はQDD倒立振子と全く同じ
 トルク(電流) = Kp × 姿勢角 + Kd × 姿勢角速度 + Kw × モータ回転速度

速度制御

速度モードでも倒立を確認

回転速度管理が容易なので起き上がりもお手のもの

 

Roller485の速度モードPIDゲインが芳しくなかったので、以下のようにがっつり調整しています。

 

Roller485のリアクションホイール倒立振子の起き上がり動作はトルク制御でもできていたのですが、この時は起上り時だけ速度検知してPI制御で動かしておりました。

参考

おわりに

ここではQDDモータとBLDCユニットによる倒立振子でトルク制御と速度制御の比較を行いました。

制御ループがシンプルなトルク制御がよいか制御ループは増えるが回転精度が増す速度モードが良いか悩みどころです。

今のところの結論は
よい速度制御器を組めれば速度モードのほうが良い
としておきます。

 

SimpleFOCによるBLDCリアクションホイール (2025/11/19 追記)

よいBLDCドライバを入手しましたのでリアクションホイール倒立振子を製作しました。

BLDCモータはこれを使用
5010 360KV

 

いい機会なので同様にトルク制御と速度制御の比較をしてみます。

トルク制御

スペーサ長は90mmと足長ですが立派に倒立できております。
倒立振子自体の制御方式はRoller485のものと全く同じです。

モータの駆動はSimpleFOCライブラリを使用してベクトル制御 (FOC)で実施しています。

SimpleFOCのトルク制御の制御ループは以下の通りです。

モータ電流を検知して Iq、IdをPID制御して駆動します。

速度制御

速度制御モードでもリアクションホイール倒立を実施
特に差は感じませんでしたが以下のブロック図のように速度のPID制御のゲイン調整も必要になります。

 

ただ単に倒立させるだけならトルク制御のほうがゲイン調整が容易で最適かもしらんね。

 

SimpleFOCによるBLDC車輪倒立振子 (2025/11/28 追記)

これまでを踏まえて速度制御で車輪倒立振子を製作

 
BLDCはドローン用のヤツを使用

 

無事倒立

 

速度制御でぶんぶん動かす

車輪倒立振子はトルク制御の時も車輪回転速度もフィードバックしていたので普通に動かす分にはさほどご利益は感じなかった。

 

ただやはり起き上がり動作時に速度制御モードのありがたみを感じる。

 

速度制御のPIDパラメータの調整方法の感覚がまだフワフワしてるので、たくさん経験を積むなりモノの本を読んで勉強したい。

現状は一旦トルクモードで動かして、同じように動くように速度モードパラメータ調整してる

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください