ドローン(マルチコプター、飛行機、船、車などなど)システムを組み上げて、テストすることは面倒です。
そもそも、ドローンを作っている人でテストシステムをもっている人は世界的にも少数なようです。
おそらく飛ばすのが趣味だからなんじゃないかな、と思います。
たとえば、コントローラー(GCSであろうとフライトコントローラーであろうと)から指令を出して、結局、どういう出力になっているのかは動かすよりも、ベンチマークテストをしたほうが簡単なはずなのですが。
今、私がボート用にもっているBlueroboticsのT-200は陸上で10秒以上回すな、過負荷になって壊れるとマニュアルに書いてありますので、おいそれと地上で回せません。確かにバケツに水を入れて回すと強力なモーターのため、悲惨なことになることはわかっています。
ESCの先に壊れてもいいテスト用モーターをつけて、ドローンシステムをテストするのもよい考えだと思います。
全体の動きを知るために、ボートのテストの前段階としてキャタピラーカーを制作することにしました。
なんでもいいわけではなく、スラスターx2で動作する船を考えるとモーター2個で動作し、かつ、それほど早くなくノロノロ動いてくれるものが好ましいです。
これでボートのモーター以外は動作確認や開発を行うことができます。
キャタピラーカーの外観
パーツの大部分は余っているものを使っています。
シャーシはAliexpressでモーター2個で動作するものを購入しました。
(以前、購入した戦車はメカが特殊で改造できませんでした。注意してくださいね。)
以下はまるでカンタンに出来たような書き方ですが、いっぱい失敗しています。()内に失敗経験を書いておきます。
これが完成写真です。機体名はPathFinderです。火星探査計画でマース・パスファインダーって名前がかっこよかったのでマネします。
見づらいですが、全体は3階建てです。
もっとも下の層は電池
真ん中が後述するESC SMARTDriveDuo-10とラズパイ用電源の5Vを作り出すDC-DCコンバーター。
最上段はPixhawk、ラズパイ、レシーバーとGPS他
てな感じで構成しました。
強力にモーターを回すものではないので、ラジコントイと同じ程度の電線とコネクターで構成しています。
SMARTDriveDuo-10
キャタピラータイプでモーターがブラシレスのものなんぞありません(数十万円クラスではあるみたい)。模型のマブチモーターが巨大化したDCモーターが主流です。あれをブラシ付きモーターと呼びます。
したがってESCの代わりにモータードライブボードを載せることになります。
(最初、L298NというモータードライブICをのせたモジュールを使ってみたのですが、Ardupilotでは回転方向制御がサポートされていません。こちらを参照)
ボートで使用するスラスターのT-200は正回転、逆回転できるので方向転換も簡単です。同じ機能が欲しいものです。
そこで採用したのがSmartDriveDuo-10です。
マレーシアのメーカー製です。きちんとドキュメントもついています。
(DCモーター用の一個900円程度の安いESCをAmazonで購入しましたが、猛烈な熱を発し焦げてしまいました。)
このボードはパワーのプラス、マイナスを間違えさえしなければ、さまざまなサポートシステムによりほぼ間違いなく動きます。(スイッチサイエンスで売ってます)
- 関係するところだけ書いておきます。
- A. 右モーターに電流が供給されると光るLED
- B.右モーターの出力
- C. 電源供給
- D.左モーターの出力
- E. 左モーターに電流が供給されると光るLED
- F. モードをセットするディップスイッチ
- G. モーター左テストボタン
- I. ESCのケーブルをつなぐ箇所
- J. モーター右テストボタン
- K.モーター右を走らせる司令が来ている
- L. エラー表示LED
- M. モーター左を走らせる司令が来ている
ディップスイッチはArduinoで使う場合は、
SW | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
on/off | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
これでプロポの左側のスティック(スロットル)が中心でストップ前に倒せば前進、後ろに倒せば後退で動くはずです。
ESCケーブルはPixhawkの1と3に挿します。
もちろんESCキャリブレーションは不要です。1000-1500-1900にプロポをあわせる感じです。
Ardupilotの設定
Roverなので
FRAME CLASS=1
FRAME TYPE=0
先に書いたようにSKIDタイプにするので
SERVO1_FUNCTION=73 #Thruster LEFT
SERVO3_FUNCTION=72 #Thruster RIGHT
セーフティスイッチは空を飛ばないので省略します。
BRD_SAFTYDEFALT = 0
ラジコンのモードセットスイッチをch5にするために
MODE_CH = 5
とチャネルの数値を書き込んで、「パラメーター書き込み」
なぜか、GPSキャリブレーションをしないと電源電圧の把握ができませんでした。
RovarのプロポによるARM/DISARMはデフォルトでは、プロポの左スティックを右に倒します。
左スティックを左に倒すとDISARMです。
Arm/DisArmは明確にしたいので、SwAにArm/Disarmを設定します。(左スティックを右に寄せてのArmは止めます)(ドキュメントはここ)チャネル5スイッチに機能をもたせます。
RC5_OPTION=153
複数のスイッチに割り当てると警告が出されるので注意してください。
force ArmはできないのでArmに失敗した場合はミッションプランナーに繋いでログを見てください。
多くの場合、スロットルが中立じゃないという、なかなか微妙なことが原因です。
でも中立じゃない状態で、強制的にArmしたらいきなり走り出すのでご注意を。
ARM時のチェックはスタンダードパラメーターで見つかります。
コンパニオンコンピューター
コンパニオンコンピューターのセットアップ(まとめ)をご覧ください。
完成です。