生成AI依存症にご注意。でもモーターは回せた~3Dプリンターで自律ドローン作成(9)
今回は、ハマってしまい動かせていなかったモーターをやっと動かせた顛末です。気が付いてみればなんてことはない原因だったのですが、解決までに1~2週間かかりました。生成AIの使い方など私的な教訓もあったので、きちんと記録しておきます。
ちなみに前回の記事までで、自律ドローン(人が操作しなくても、事前の指示通りに自分で飛ぶドローン)の機体のモデリングやセンサー類の動作確認を行っています。
モーターが動かなかった理由
下の記事で、バッテリーを接続したらモーターから異音・異臭がしたことや、その後もモーターを回せなかったと書きました。
試してみたこと
何をやってもモーターが回せなくなったので、本当に色々調べました。結果としては、めちゃくちゃ簡単なポイントで引っかかっていました。
まずはやってみたことリストです。
電流テスターで、フライトコントローラーの端子間の導通確認を行った。配線がつながっているべきところ、逆につながっていてはいけないところを確認した。
ミッションプランナー(PCにインストールしているドローンを制御するアプリ)で、モーター関連の設定を細かくチェックした。設定ファイルやログをチャッピーに貼り付けて壁打ちもした。
ESC(モーターを制御するコントローラー)のファームウェアをインストールし直したり、設定を変更してみたりした。
電圧が足りないかと思い、さらに高電圧(2S→3Sに変更)のバッテリーを購入してつなげてみた。
いずれを試してもだめで泣きそうでした。
結局モーターが回らなかった理由は…
ドローンは、プロペラが勝手に動くと怪我をするので、コントローラーなどから、モーター回してよし=アーム(武装)の指令を出します。私がモーターが回らないと言っているのは、アームできないという意味でした。
結果としてモーターが回らなかった理由は、アームする条件が、コントローラーのボタン一つだけでなく、二つに割り当てられていて、両方のボタンを押さないとアームできない設定になっている事に私が気が付いていなかったからでした。
間違ってボタンを押してプロペラを動かしてしまう事故を防ぐための機能だと思いますが、いつの間に設定していたのか、記憶にありませんでした…。
以下は、ミッションプランナーの設定画面です。コントローラーの、とあるボタン(ここではRC10)に、RC10_OPTIONという設定があって、ここでボタンに様々な機能を割り当てることができます。

公式ページによると、100個以上の機能から選んで割り当てることができます。その中で私はこのボタンにアーム/緊急モーター停止という機能を割り当てていました。
この機能を割り当てていると、RC10のボタンを押した状態でさらに別のボタンを押してアーム操作をする必要があります。この機能をONにした記憶がない(忘れているだけ)ので、同時にボタンを押す必要があるということに思い至らず、全然見当違いの確認を散々したのでした。
一時、ChatGPTの下僕になりかけました
解決に時間がかかった理由として、初めてバッテリーをつないだ時に配線ミスでモーターが異常動作したショックを引きずっていて、頭のどこかで、ハードウェアのどこかがおかしくなったかもという先入観がありました。
チャッピーもそれに同調して、基盤の故障も疑うべきとかこの設定がおかしい、間違いない、などと返してくるので、全然関係ないチェックや確認を堂々巡りのようにしてしまいました。
動かない理由が全くわからなかったので、チャッピー依存症になって、言われた設定変更を思考ゼロでやってみる、みたいなことにも一時なりました。
自分で調査したり考えたりする前に、設定やスクショを貼り付けてログ送って考えてもらって、しかもそれで解決してしまうこともあるので、毎回期待してしまうんですよね。
生成AIは本当に使いどころの見極めが肝心だと改めて思いました。
教訓:問題の原因を探るときにはチャッピー依存症(脳死)に注意する
モーターは回りました。次にプロペラをつけて浮かばせてみます
とはいえ、モーターは動かせるようになりました。モーターが回った時のキュイ~ンという音、私は好きです。
次回はついに、ドローンを浮かばせるところまで行きたいと思います。
