某通販サイトで現在構想中の脚車輪倒立振子ロボットに使用するモーターを探していたのですが、うっかりドローンのキットを買ってしまいました。
というわけでちょっと作ってみようと思います。
ちなみに普段はクアッドコプターとかクアッドロータ型ドローンとか呼んでいますが、結局なじみが深い表現は「ドローン」だと思うのでそう呼びます。
はじめに
ドローンの思い出
実はドローンは仕事でちょっと触ったことがあります。
触れたことがあるというと語弊があって、僕はパワポエンジニアなので直接触れたことは殆ど無いのですが、まあ人が触れているのを傍で見たことがあります。
ものづくりに興味があるのに触れられないというのは悲しいもので、代わりに自分で作ってみたくなるんですね。
もう4~5年前になりますが、当時Amazonで売っていたキットを購入して、フライトコントローラは折角覚えたArduinoで自作して・・・という野望を持っていました。
以下は当時買ったものと違う商品ですが、構成はほぼ同じです。
www.amazon.co.jp
一応モータは回す所までは行ったのですが、電子工作熱が冷めてしまったのと、あまりにも大きすぎて取り回しが悪かったんですね。それ以来4~5年も放置していました。
プロペラ軸間対角距離が450mmのキットって、プロペラガードまで付けると端から端までは対角700mm以上ですからね。
置いておくだけでもかなり圧迫感がありますし、野外ではおいそれと飛ばせないから室内で試験するにしたって限度ってものがありました。
唯一の飛行実績
代わりと言ってはなんですが、Parrot社のMamboを買って、ネットで見つけたpythonのスクリプトを弄ってPCから遠隔操縦して遊んだりしていました。
この品は既にディスコンのためリンクとかは貼れませんが、逆に簡単すぎてあまり面白くなかった覚えがあります。小さすぎて自分の手を入れる余地が無かったというのも大きいです。
当時参考にしたサイト:
github.com
意欲が再燃した
身近にドローンを作ろうとしている人が居てそれに触発されたのと、上で述べたように別のロボット用にドローン用のブラシレスDCモータを選定していたら物欲が急に湧き出てきて、思わず買ってしまいました。
辛うじて冷静な気持ちが残っていて、今度はグッと小型化してプロペラ軸間対角距離は250mmです。
www.aliexpress.com
技適とか怪しかったのと、使い方もわからないので、プロポが付いていないタイプを買いました。
今回の製作方針
フライトコントローラを自作する
前回同様Arduinoでフライトコントローラを自作しようと思います。
フライトコントローラとしても売り物があるようですが、なんとなく心理的ハードルが高いというか、どう使えば良いのかがよくわかりません。
逆にポン付け&ゲインチューニング(それもある程度は機体寸法から特定できそう)で動いてしまってもつまらないので。
Arduinoから出せるPWMで動かして、姿勢角に応じてPID制御する、という概念だけはすぐ頭に思い浮かびますので、それで行ける所まで行ってみようと思います。
自動飛行の実装
せっかく限定的ながらROSを使えるようになっているので(当時もラズパイとArduino連携くらいはできた気がしますが)、Raspberry PiやJetson Nanoみたいなシングルボードコンピュータと、何かのセンサを組み合わせて自動飛行でも実現したいと思います。
ROS連携をすればゲームパッドも使えるので、通信距離はともかくとして遠隔操縦のシステムも簡単に組めますし。
候補はやはりRealsenseとかでしょうか。マシンパワーに余裕がないので三次元環境認識まではやらず、センサ側でオドメトリだけ出せるRealsenseのT265とかが丁度いいかもしれません。
別記事で書いたように障害物を回避しながら、地図も作りながら・・・というのができればそれに越したことはありませんが、マシンパワー、ペイロード、僕自身の能力、全てにおいて不足しそうです。
複数機体の連携
手元に複数のロボット製作構想を持つようになったことで、それらをチームとして運用したい衝動に駆られるようになりました。
ちょうど群れ制御がニュース記事になってたし。
www.itmedia.co.jp
まあ、1機も完成していないのですが。
ウチのロボットは1機ゝゝがルンバサイズなので、複数同時運用は相当(僕にとって)タフな環境になりそうですが・・・
プログラマブルな小型ドローンもあることだし、今回自作するドローンを親機として、こういうのを子分的なロボットとして試してみても良いかもですね。
www.ryzerobotics.com