【ESC/AM32】AM32とはなんなのか?〜RCクローラーの駆動が可能なESC用オープンソースファームウェア by AlkaMotors

今回から新企画を始動させます。
以前から小出ししてきていた「AM32」というESC用のファームウェアに関するネタです。

前提として僕もまだ計画を実行しておらず、ソースが英語のみということもあり、理解度70%という感じです。
ですが、大まかにどういうものなのか?どうすればいいのか?何が必要なのか?
という所までは分かって来ましたのでここに報告します。

今回は序章ということでその概要を説明します。

その前にまずは結論というか答えから。

  • AM32はESCに書き込まれているファームウェアの名称
  • AM32はオープンソースなので誰でも無料で利用可能
  • AM32はオープンソースなので誰でもプログラムの改竄が可能
  • RCクローラー向けのファームウェアが存在する
  • アウトランナーモーターの高周波音(磁歪)をブラシモーター並みに静音化出来る
  • 中国製モーターを使えばESCと含めて50〜60ドルで実現可能

簡単に書くとこういうものになります。
といって、これだけじゃチンプンカンプンですよね。

以下で詳しく説明していきます。

目次

コトの発端はYouTube動画とHolmes Hobbies

7ヶ月ほど前にEXOCAGED RCさんが投稿した動画。

QUIET RECOLVER???

という内容で、Holmesのアウトランナーモーター"リボルバー"が静かに駆動出来るESCを検証している内容でした。
実際非常に静かです。

この時は、
「いつかこういうESCが発売されるんだろうなぁ」くらいに思ってたんです。
リボルバーも持っていませんでしたしね。

彼の説明によると、
「このESCがPeteから送られてきた」という事でした。
さらにPeteさんとHolmesホビーで現在ESCの開発が進んでいるという事も話していました。

そうです、最近Holmes Hobbiesからリリースされた"HOLMES HOBBIES CRAWLMASTER MINI V1 ESC"のプロトタイプという事だったんだと思います。

その後今年の初めにHolmesのSNSでESCが開発中である事が告知され始めました。

安いアウトランナーモーターでRCクローラーを動かす実験

少し前に中国の安いアウトランナーモーターとESCでクローラーを動かす実験企画をしました。

あわせて読みたい
【ブラシレスモーター】ドローン用のアウトランナーモーターはRCクローラーで使えるのか? 〜 Part.3 〜... 今朝アップした記事の連動動画をYouTubeにアップしました。 https://rccrawlers.net/2021/04/29/outrunner-motor-test_surpass_crawler_120aesc/ やっぱり動画だと一目...

この企画を始動する前に色々調査をしていて、とある動画に出会いました。

この方が行っているのは、

中国の安いアウトランナーモーターと、なにやら小さなESCの組み合わせでRCクローラー(TOYZUKI)を動かすという内容。

その動きが実にスムーズで、「スゲーーー」と思ったんです。
そこから調査を進めて今回のAM32に辿り付いた訳であります。

AM32-MultiRotor-ESC-firmware by AlkaMotors

アメリカ人エンジニアのPeteさんが作り出したマルチローターESC用のファームウェアです。
Peteさん、そうです、Holmesと共にESCの開発をしていたExocagedさんの動画で名前が出てきた人です。

そもそもはPeteさんが初めにこの技術を生み出して、それに着目したHolmes Hobbiesが共同開発で製品化をしたというのが正しいシナリオだと思います。

この動画でインタビューに答えているサムネの方です。

このAM32ファームウェアをESCに書き込むと

こういう専用のセッティングソフト(WINのみ)で調整する事が可能になります。
CastleLinkのセッティングみたいなモノです。

セッティング項目は多くはありません。
MambaやSidewinderシリーズの様に、細かい設定をする事は出来ませんが、その他の動画を確認する限り十分ロッククローリングでも使える!と思ったので、僕もマネしてみようと思ったわけです。

ドラッグブレキーもバッチリ効きますし、リバースだって普通に使えます。

ちょっと試して見たいでしょ?

AM32を実行するためには何が必要なのか?

ここからが本題です。
AM32をESCに書き込んで走れるようにするには、ちょっと面倒くさい行程が必要になります。

まず必要なパーツ類について説明します。

AM32に必要なパーツ

  • ESC
  • ST-LINK
  • フライトコントローラーかARDUINO

この3つが必要になります。

ESC - BLHeliファームウェア搭載タイプ

まずESCですが、クァッドコプターとかマルチローターと言われるドローン用のESCが必要です。
しかも重要なのが「BLHeli」と言われるファームウェアが搭載されているものである必要があります。

「BLHeliとは?」
これは簡単に言えばGoogleでいうAndroidみたいなもんです。プログラムの中枢を担う重要な部分で、BlHeliというOSが各ESCにインストールされていると思えばイメージしやすいかと思います。※実際はOSではなくファームウェアです。

このBLHeliはいろいろなメーカーのESCに最初からインストールされており、広く普及しているため、いくつかの設定ツールがあります。

代表的なモノはBlHeliSuite。
CASTLE LINKのそれにあたります。

余談ですが、CASTLE製やホビーウイング、TEKINなどのESCはスマホでいうApple製のiOSにあたり、そのメーカー独自のファームウェアになっているので、書き換えたりする事はできません。他の端末にインストールする事もできません。なので専用のアプリケーションが必要です。
BlHeliはAndroidみたいなものなので、各メーカーがBlHeliファームウェアのみインストールしてスペックの違うESCを多数リリースしているため汎用性が高いという特徴があります。

といってもこのBLHeli、ちょっと古いものでしてESCの種類は年々減ってきています。

現在動作確認が取れているESCのリストはこちら

Target NameCompatible ESCsBootloader
IFLIGHTiFlight 20x20 35APB4
iFlight Succexx 55A
iFlight Succexx 80A
iFlight Succexx 55A Slim
JHEMCU 55A
Aikon AK32Pin 35A mini V1
DarwinFpv 50A
Flywoo Goku GN745
HifionRC H60a Pro 4-in-1
Aikon AK32 35ASingle
TMOTOR55T-Motor 55A 4-in-1PB4
TMOTOR45T-Motor 45A 4-in-1PA2
Airbot Ori32 4-in-1
Aikon AK32PIN 35A mini V2
MP6531Wraith32PA2
Aikon AK32 35a 20x20
AM MP6531 open esc variants
FD6288AM FD6288 open esc variantsPA2
SISKINSiskin 50APA2
RacerStar Tatoo 8A
HGLRCHGLRC 60A (T-Rex)PA2
MAMBA F40DIATONE MAMBA F40PROPB4
MAMBA F50DIATONE MAMBA F50PROPB4
MAMBA F60DIATONE MAMBA F60PROPB4

このリストに無いものでも実行可能なESCは報告されており、僕も今回入手したのはこのリストには乗っていないものです。

RCクローラーに使う場合で一番代表的なESCは、
Airbot社のWraith32というESCです。

上記で紹介したVoodooさんが使用しているESCです。
ですがこちら、現在世界的に品薄で入手困難です。
なので僕はiFlight Succexxシリーズを入手しました。
めっちゃ小さいです。
バングッドで20ドルくらいでした。

ほかのESCは完全なドローン用で、基盤に4つのESCが組み合わさっているタイプだったりするので使えません。

ST-LINK

これはAliexpressで3ドルくらいで売ってる謎のUSBコネクタ。

調べて見ると、「STM32/STM8用デバッガ」という情報が出てきました。
簡単にいうと、マイコンとパソコンを接続してマイコンを操作するためのパーツです。
片方がUSBコネクタになっています。

ESCの指定箇所2つと電源±の合計4箇所をコイツに接続するとESCにアクセス出来ます。

フライトコントローラーかARDUINO

これが面倒くさい部分なんですが、フライトコントローラーが必要です(ARDUINOでも代用可能)。
フライトコントローラーはドローンにある各種センサーからの情報を元に姿勢制御を行う基盤で、ドローンには必ずついている装置です。

なぜコレが必要かというと、

このAM32の専用設定画面にアクセスするためにはフライトコントローラーをパススルーしないとESCを認識してくれないからです。

これは技術的にどうしようも無く、ESCから直で接続してもソフトウェアは認識してくれません。

でもこのフライトコントローラーなんて物はクローラーユーザーは持ってませんし、買うと4.5千円は安くてもしてしまうので困りましたね。。。


そこで登場するのがARDUINO NANOです。
これは中華の定評ある互換品ですが、これでもバッチリ動作するそうです。

ARDUINOは電子工作でよく使われるマイコンボードです。
入出力ポートが沢山あり、様々な制御が可能です。

こちらをESCとパソコンの間に入れてあげる事で細かい設定が可能になるそうです。

以上が必要なパーツ3点です。

AM32を実行するためにすること

  • ESCのBLHeliファームウェアを削除
  • ESCにAM32ファームウェアを書き込む
  • ARDUINOで設定を行う

簡単に書くとこういう手順です。

「アンドロイド端末に別のOSをインストールする」
みたいなイメージです。
単純です。

ですが手順はちょっと複雑です。
それはやってみてから報告しますね。
ESCによって対応するブートローダーが違ったりするので注意が必要です。
ちなみにBLHeliは削除したら二度と元には戻せません。

これは僕がつくった配線図です。
たぶんコレであってるはず!
現在Slackで助言を貰っているところです。

具体的に少し書くと、
ESCのSWDIOとSWSLK端子をSTLINKの対応箇所に、
バッテリーの±もSTLINKの対応箇所に
これでまずファームウェアの書き換えは出来るハズです。

その後、ESCのシグナル線とマイナスをARDUINOの対応箇所に接続。
そうするとPCでの設定が出来る様になります。
多分。。。

実際の運用では、
シグナル線とマイナスのコネクタをレシーバーに。
外部BECの電源を取得してレシーバーに。
ほかのコネクタは再設定の時に必要なのでそのまま残しておく

そんな感じです。

間違いあるかも。

このAM32の面白い所

繰り返しますが、このAM32はオープンソースです。

ソースコードを商用、非商用の目的を問わず利用、修正、頒布することを許し、それを利用する個人や団体の努力や利益を遮ることがないソフトウェア開発の手法。(from wikipedia)

なので色々な人が独自の設定を公開することが出来ます。

VooDooさんのGoogleドライブには

  • Iflight_crawler_1.64-1400kv_FULL.BIN.bin
  • Iflight_crawler_1.64-1800kv_FULL.BIN.bin
  • Wraith_1.65_PARTIAL.bin
  • wraith_crawler_1.64_PARTIAL.bin
  • wraith_crawler_1.64-1000kv_FULL.BIN.bin
  • wraith_crawler_1.64-1400kv_FULL.BIN.bin
  • wraith_crawler_1.64-1800kv_FULL.BIN.bin
  • wraith_crawler_1.64-2000kv_FULL.BIN.bin
  • wraith_crawler_1.64-2500kv_FULL.BIN.bin
  • wraith_crawler_1.64-dixie_PARTIAL.bin
  • Wraith_crawler_1.65-Dixie-1450kv_PARTIAL.bin

モーターKV値やESCの種類によって違うファームウェアが公開されています。

今後色々なファームウェアが登場してくることも期待出来ますね。
僕も独自のファームウェアを公開出来るように勉強してみたいと思います。

情報ソース

いかに情報のソースリンクを記載して起きます。

GitHub - AlkaMotors
https://github.com/AlkaMotors
ここが開発者PeteさんのGitHubページです。
全ての情報やデータ類はここにあります

■VOODOOさんのスレッド
http://www.rccrawler.com/forum/electronics/622544-silent-outrunner-esc-less-then-%2460.html

活発に情報公開をしてくれているVOODOOさんがRCCRAWLER.comに投稿したスレッド。
詳しい接続の手順などWRAITH32ESCベースで説明されています。
彼はその他にもGoogleDriveなどでもソースの公開をしてくれています。

その他は、Slackというチームコミュニケーションツールを使っています。
こちらだと最新の情報が常にアップされており、質問もできますので便利です。

近いうちに配線関係済ませて実行に移してみたいと思います。
AM32をインストールしていない状態でどういう動きをするのかも試して見たいのですが、ちょっと怖いので素直にAM32を入れてから実験する予定です。


Rock'n Crawlers ブログの新着記事をメール購読する

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!

コメント

コメントする

目次