Top > blog > 2015-07-22

広告

ブラシレスモーターを回してみる2

前回Allegro MicroSystemsA4960で回したが今回は、電動ラジコン飛行機などで使われるESCを使って回してみた。
かなりハイパワーなモーターまで回せるものがあるので何かと面白いと思う

制御はArduinoを使った。
もともとラジコン用なのでサーボモータと同じように動かすことができる。なのでServoライブラリを使った。

単純にサーボモータの代わりにESCをつなげれば良いのだけれどいくつか注意点がある。

  • パルスの最小幅がある。
    • サーボライブラリのデフォルト値は544μsなので短い場合がある。
    • 短いと認識されない。
  • 同様に最大幅もある。

この値は説明書に書いてない場合もあるので、その時はいろいろ調整してみる。
サーボ用のピンを

servo.attach(pin, min, max);

と設定して最小幅と最大幅を決める。

実は普通のサーボモータも同様に調整する必要がある。これも説明書に書いてない場合は自分で調整する必要がある。

ESCに話題を戻すと、いろいろな設定をコマンドで行う必要があるのだけれど、最低出力と最大出力を使うので上で書いた調整をしておく必要がある。

今回はHOBBYWINGのFlyFunシリーズを使った。
Flyfunの場合、まず、最低出力と最大出力を設定する。

  • 最大の状態でESCの電源を入れる
    • Servoライブラリの場合は0が最小、180が最大(writeMicroseconds(uS)を使わない場合)なので、write コマンドで180を送る
  • ドレミと鳴る
  • ビープが2回連続して鳴ったら最大出力を認識したことになる。
    • これがならなければパルス幅が違うかも
  • 最小値を送る。write コマンドで0を送る
  • ビープが何回か鳴る。
  • 長いビープが鳴ったら設定終わり。
  • 少しずつ値(サーボで言うところの角度)を大きくしていくとモーターが回るはず

最大と最小が設定できれば、それを使っていろいろな設定ができるようになる。

  • 最大にしてESCの電源を入れると、ビープが2回連続してなる。
  • 更に5秒待つと「ソラシドレ」と鳴る
  • その後はビープのなり方で設定する項目を選ぶ
    • いろいろあるので説明書を参照してください。

大体こんな感じ

Category: [motor][Arduino] - 23:55:35


広告

リロード   差分   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Wed, 22 Jul 2015 23:55:35 JST (3172d)