市販されているブラシレスモータとRC用のアンプとラズベリーパイでモーターを自由に動かせるか試してみた→成功した。という記事です。なんかアクセスが増えたのでちょっと加筆します(2017/7/10)
なぜラジコン用ブラシレスモータを使いたくなったのか
クアッドコプター用のブラシレスモータを、自分で制御してみようと思いました。いわゆるドローンの普及で、驚くほど安く、モータとサーボ用のアンプが手に入るようになっています。
ラジコン用の資材は価格が安く、高速・高品質のモータ駆動が手に入ることが分かりました。最初は遊びで動かしていたのですが、最近では私はこれを、アルミ切削のための工作機に使ったり、その他の用途でしばしば使っています。
ベアリングまわりの部品などはやはり耐久性がなく、モノによっては寿命も産業用モータと比べて長くないです。ただ、何より安価で消耗品的に使える金額で買えますのでそちらのメリットが買ってしまいます。
私はラジコン愛好家ではないので、ブラシレスモータの駆動はまったく初めての経験でした。初めてなら初めてなりのメモが残せると思うのでここに記録します。最近だとArduinoやRaspberry-PIが手に入るので、とくに深いハードウェア開発をしなくても簡単に動かすことができます。もちろん、適当なマイコンがあれば動かすことはできます。
高回転で使ってしまう場合が多いので、ベアリングの寿命計算はちゃんと見積もった方が良いです。(ベアリング定格荷重・寿命は100万回転で表示されているのが普通です)
手に入れたモーター
この記事をかいたときに手に入れたモーターは、A2212/13T 1000KVとマークされていました。13Tというのは中のコイルが13ターン巻いてあるということであり、1000KVとは、無負荷だと1Vあたり1000rpmの回転数で回るという意味だそうです。
ケーブルは3本でていた。これは三極の、センサレスタイプのブラシレスモータだということです。
そのほかの仕様はこんな感じでした。
無負荷電流: 10 V : 0.5 A。
最大電流: 12A/60s。対応ESC: 30A。
対応リポ: 2 – 3S。対応ニッカド/ニッケル水素: 6 – 9S。
対応プロペラ: 8×4.5″ 9×4.5″ 10×4.5″ 10×4.7″。対応3プロペラ: 7×4.5″ 8×4.5″ 9×4.5″。
軸径: 3.175mm。重量: 2.20oz
最近は、Amazonで一式がセットになったものも売っているようです。こういうのを買うと動かせます。
- 軸径3.175mm、すなわち1/8インチのモーターカップリングはなかなか手に入りません。しかたないので、とりあえずaliexpressに手配しておきました。そのうち届くでしょう。
ブラシレスモータのアンプの選び方
次に、ESCというモジュールが必要です。
Electric Speed Controllerの略です。ラジコンの人たちは、スピコンあるいはアンプとも呼びます。
ブラシレスモータにパルスを送るためのコントローラ・アンプに相当します。上位のコントローラからは、TTLレベルのPWM信号を送れば、適切に増幅してモーターを動かしてくれます。
今回使ったのはセンサなしなのでセンサなし用のアンプを調達しました。普通の電気回路では非常識なほどの大電流をスイッチングするアンプですが、ラジコン用は安く手に入るし、プロポからコントロールできるようにある程度マイコンのインタフェースも標準化されているので便利です。
私は、単にモーターを回転できでばよいので、安くて、0.5Aに対して十分な出力のあるものを選びました。
ARRIS 12A 2-3S ブラシレスESC SIMONK プログラム付き 250/FPV250/QAV250 250 MINIワッドローター対応
というのがとりあえず¥ 1,843 でした。Amazonのレビューは燃えたとか燃えたとか書いてあるけど、なにしろ安いし、そんなに12Aの定格に対して0.5Aの話だから十分だと判断しました。実際、十分でした。
センサ付きのブラシレスモータというものもあって、磁場を感じるホール素子が回転子の位置を検出するようになってます。このセンサ出力を使ってアンプ側で正しい位相進度になるように制御するというわけです。
マニュアルはオンラインにありました。配線図が、ブラシモーターだったりして妖しいけど、まぁ多分動くだろうということにして買ってみました。
この製品のマニュアルはこちらにあった。
http://site.hobby-wing.com/images/Manual/ARRIS-ESC-User-Manual.PDF
制御の準備
とりあえず、物品手配はできた。
次は、ソフトウェアの準備だ。上記のマニュアルには、スロットルレンジ設定の手順が書いてある。最初にESCを使うときに、スロットルをキャリブレーションしなければならないとのこと。
ラジコンの場合、プロポにあるコントロールスティックのレンジやゼロ点とモータの回転数を対応付ける調整となる。
マニュアルを訳すとこんな感じ。
- まず、安全のため、モータシャフトからプロペラなどの付属物を外す。
- 送信機の電源を入れて、スロットルを上に倒す。
- 受信機と電源を接続して、確実に受信機と送信機を接続する。
- その後、バッテリーパックをESCにつなぐ。
- モーターからBEEP BEEP・ short BEEPという音が出る。(振動する)
- これで、スロットル最大のキャリブレーションが終わる。
- 次に、スロットルスティックをボトムにする。モーターはBEEPBEEP・long BEEPを発する。
- これで下側のキャリブレーションが終わる。
逆回転するときは、ワイヤのうち二つを入れ替えればよいとのこと。そりゃそうだ。あぁ・・・マルチコプター用のアンプだと配線かえずに逆進できないのか。勉強になった、、、まぁ今回は問題ないな。
プロポなんて持ってないよ
私はラジコンのプロポを持っていないので、同じ作業をソフトウェアから実行しなければならない。というわけで調べたら教えてgooが見つかった。
http://oshiete.goo.ne.jp/qa/8321755.html
ようするにおよそ10ミリ秒ないし20ミリ秒ごとに幅Tのパルスが飛んでくる。
Tは1500~1520μsecあたりがニュートラルで、±500ないし±600μsec
中心と幅は機種メーカによって違う。
ESCは、これの上側と下側を知りたいということのようだ。電源をつないだ直後から上側っぽいパルスが連打されると、調整モードに入るとともに上側のキャリブレーションをする。次に下側っぽいパルスを連打すると、ノーマルモードに突入する。
次に電源を入れるときは、下側のパルスを入れるとゼロで初期化される。上側にいれるとキャリブレーションモードに突入する・・・そんなことはしない、、ということだ。
マイコンからトリガーするのは簡単だな。よし。
ラズベリーパイにOSをインストールし、sshでリモートログインできるようにする。
volumioをインストールしてあったSDカードがあったのでフォーマットしようとしたのだが、パーティションサイズが75MBから変えられない。
Windowsのディスク管理ツールでもパーティションが変更できず・・・途方に暮れた。パナソニックにあるSDFormatterというフリーツールを見つけてダウンロードした。これで、論理サイズ調整をONにしてフォーマットすると、最大サイズとなった。
Noobsというインストーラを使う。探して、ネットインストール用の軽いほうをダウンロードし、zipファイルを解凍した中身をSDカードにコピーしてraspberry PIを起動するとインストーラが立ち上がる。
noobsはいくつかのOSから好きなのをダウンロードしてインストールできるが、raspbianをインストールする。LANケーブルをさしておく。マウスは必要。キーボードも必要。時間にして20分ほどかかった。
sshしようとしたら、ログインできない。キーが以前使ったときと違うという警告だ。ssh-keygenで強制リセットするとつながる。
1 |
$ ssh-keygen -R HOSTNAME |
ブラシレスモータを実際に動かしてみる。
とりあえず、pigpioというプログラムをダウンロードして動かしてみた。
これ、、、そしたら素直に動いた。
https://www.raspberrypi.org/forums/viewtopic.php?f=84&t=48226
1 2 |
root@raspberrypi:/home/pi/# pigpiod ←デーモン起動 root@raspberrypi:/home/pi/# pigs s 18 1500 |
あっさり動いたので今日はここまで。
便利なテスタ
手動でテストしたいときは、こういうテスタもあるそうです。
2019年版 3D CAD/数値計算のためのGPU入りコンパクト高速PCを作る, MetisPlus+第九世代Core+GeForceGTX2060+m.2 SSD