放置プレー状態だったAM32計画。
今日仲間の1人から「ドローン用のESCを入手して設定をしている」という連絡をもらったので、刺激を受けて僕もやってみることにしました。
AM32自体はまだ暗礁に乗り上げています。
AM32についてのおさらい
「AM32」とは、アメリカのAlkaMotorsというエンジニアが公開しているオープンソースのESC用ファームウェアです。
Githubで入手可能。
ドローン用のESCを利用し、RCクローラー向けのセッティングが行える発展途上ではあるが優れたシステムです。
このAM32ファームウェアをインストールし製品化しているのが、昨年登場したHolmes HobbiesのCRAWLMASTER MINI ESCです。
他にもAM32を組み込んだクローラー用ESCがガレージレベルで販売されたり仲間内で出回ったりもしているそうです。というのもこのプログラムは"オープンソース"なのでそれが可能なんです。
自分でAM32を適用するには?
このAM32の良いところは、安いドローン用のESCをソフトウェア上の改造でAM32へと変身させることが出来てしまう点に尽きます。
たとえばAM32が出始めた頃は$20のESCで十分なアウトランナーのクローリング駆動性能を保持していました。
が、半導体不足の今、ESCの値段も高騰。
ぶっちゃけそこまで安く無いESCを失敗のリスクを犯してまで改造するメリットがあるのかは、それぞれの価値観次第でしょう。
ちなみに、AM32がインストール出来るのは黄色●の部分のチップが"STM32F051"の物に限ります。
チップから出ている2つの端子をPCと接続して元々インストールされているファームウェアを削除する必要があります。
これが難関。
小さすぎてハンダ付け時に失敗する可能性大。
基盤そのものを壊すことも。
僕は壊しました(笑)
もしこの削除に成功したら、あとはAM32をインストールするだけです。
※実際にはブートローダーのフラッシュ後にAM32をフラッシュ
そうすれば各種設定が出来る様になるという訳。
ただし!!!
AM32をインストールせずとも、このESCにはBLHELI32というソフトウェアが元々入っているのです。
整理します。
AM32を入れたい場合
- STM32F051チップ搭載のESCを用意する
- そのESCにはBLHELI32が初めから入ってる
- BLHELI32はESCのセッティングを行うシステムの名称
- PCでBLHELIを削除
- PCでAM32をインストール
- 完成
という感じ。
※BLHELI32を削除したESCには、二度とBLHELI32を再インストールする事は出来ません。
BLHELI32
ESCに元々インストールされている(正しくはフラッシュされていると言うらしい)BLHELI32の設定画面がこちら。
普通にPWM周波数とかスロットル、ブレーキ、タイミング、などなど設定が可能です。
起動時の音楽も作曲できます。
なので、BLHELI32でもアウトランナーモーターは動きます。
ということで、手持ちのESCをBLHELIで設定可能な状態にしてみることにしました。
これがその ESC。
もともとはコレ。
保護チューブを剥がしました。
サーボコネクタと電源線が初めから付いているのが良いです。
基盤へのハンダ付けは極力時間を短くしたいので、、、、また壊しちゃうから(笑)
XT60コネクタは自分で付けました。
実際に運用する場合は外部BECも必要になりますが、テスト段階では必要無いです。
Arduino NanoのD3にシグナル線、GNDはD3の2つ隣のGNDに接続。
サーボコネクタをそのまま刺せばOKです。
BLHELI32ソフトウェアでESCを認識させる
こんな感じで準備出来たらArduino NanoをPCにUSBで接続。
BLHELI32の専用ソフトウェア「BLHeliSuite32」をインストールして起動します。
※MAXOS版があるのが嬉しい。
まだバッテリーとESCは接続しなくてOKです。
Arduino Nanoですが、これはPCとESCを接続するための橋渡し的な役割です。
ESCにはUSBポート無いですからね。
サーボコネクタのシグナル線のデータをPCとリンクさせるには、ArduinoシリーズかUSBリンカーが必要になります。
で、こっからなんですが、まずは、
Make interfacesの欄で、
"Aruduino BLHeli Bootloader"を選択して、下の”Aruduino BLHeli Bootloader"“ボタンを押す。
Arduino Booardの所は、NanoならNano w/ATmega328を選択。(oldでもNewでもどっちでもイケるはず。僕はOldで)
そうするとArduinoにBLHeliとやり取りをする為のデータが書き込まれます。
これで始めてESCと相互やり取りが出来る様になります。
そしたら上の”Select BLHELI 32 Interface"で "USB/COM"を選択。
左下のPORTでは、"usbserial"と記載が入っている物を選択。
※USB接続している機器、という意味。
ここでESCをArduino Nanoへ。
そしてESCとバッテリーを接続
そしてConnectを押せばESCをソフトウェアが認識します。
そしたら、始めに"Read Setup"を押して現在の設定を読み込む。
設定を変更して"Write Setup"を押すとESCに書き込まれます。
"Flash BLHeli"はESCのBLHeliファームウェアのアップデート時に使います。
今日試して見たらココまでは成功しました。
まだモーターを繋いでないので動くのか分かりませんが、多分動きます。
ただこのESC、35Aなので負荷がかかると停止するかもしれません。
近日中にモーターを接続してサイコケージで運用テストしてみようと思います。
そしてその後、AM32がインストール出来ればやってみるのもアリかな、と思ってます。
コメント