Stap 8: ブラシレス・ジンバルの自作例(2)
ブラシレス・モータをArduinoで直接制御したいのですが、知識も経験もない上、実用的な工作の事例も見当たりませんでした。 それで実物を見るため、ジンバル用の安価なブラシレス・モータを一つ購入しました。 しかし説明書は付いておらず、使用方法はやはり見当がつきませんでした。
そこで参照したのが、英語版のinstructablesの「Brushless Gimbal met Arduino」という記事です。 タイトルはそのものズバリですが、完成品の動画を見る限り、著者も認めるように実用レベルとは言い難い仕上がりです。
ただこの記事は、参考にした別の記事をいくつか紹介しており、その中にブラシレス・モータをArduinoで直接回す記事がありました。 この参考記事が、この段階での事実上の出発点になりました。 その詳細は次のステップに譲り、ここではまず、この参考記事を知ることになったinstructablesの元の記事を簡単に整理します。
:
この記事は米国の2人の学生が自らの工作を紹介したものです。 この記事と今回の工作の共通点は次の3つです。
- 専用の制御基板を使わずに、ブラシレス・モータを使ったジンバルを作りたい
- 具体的には、Arduinoで全て制御したい
- 他の事例を調べても、こうした工作を見つけることができなかった
一方、今回の工作との相違点は次の通りです。
- 搭載するカメラはGoPro
- ジンバルの躯体とモータは、GoPro用の市販セットを使用
- ブラシレス・モータの制御プログラムは、上述の参考記事をほぼ流用
- ジャイロ・モジュールは特殊なものを使用(MPU6050搭載)
- このモジュールの使用方法は、公開されている既存のプログラムをほぼ流用
:
「専用機材を使わずに、ブラシレス・モータをArduinoで制御したい」という目標、および「実用的な工作の事例が見当たらない」という状況認識は、この記事も今回の工作も同じです。 ただしこの記事の著者は、この目標を実現するために、利用できる市販品や公開情報を積極的に利用しています。
これは、「独自性の強い目標を、他人の手を借りて実現する」、もしくは「汎用性の高い目標を、特殊な部品や方法で実現する」アプローチと言えます。 この点に思い至った際、「水平分業」という言葉を思い出し、何ともいえぬ感慨を覚えました (*) 。
(*) 「垂直統合」を得意とする日本の製造業が、水平分業の前に苦戦しているという話を聞いたことがあります。. 「自力で作る (webの先人になるべく頼らない) 」という今回の方針は、垂直統合に近いように感じました
:
閑話休題。 ここで紹介した記事では、MPU6050というセンサを載せたモジュールが使われています。 このセンサはDMP (Digital Motion Processor)という特殊かつ強力な機能を有しています。 これにより、標準的なセンサを超えるノイズ処理だけでなく、3次元での「座標の回転(*1)」をリアルタイムで評価できます(*2)。
(* 1) 固定された座標軸まわりの回転ではなく、座標そのものの回転
(* 2) この計算はなかなか大変なので、以前やった工作ではパソコンのソフトで事後処理していました
現時点でこれは驚くべき機能ですが、逆に言うと「特殊な部品」と言えます。 したがって、今回の工作ではこのセンサ (正確にはDMP) の使用は見送ることにしました。 なお今回の工作では、モータドライバとしてL298を使いましたが、これはここで紹介した記事に倣ったものです。 記事の著者には感謝します。