PR

Arduino + ESC でブラシレスモーターを制御

記事内に広告が含まれています。

ブラシレスモーター 分解 3Dモデル
ドローン(クアッドコプター)用のブラシレスモーターをArduinoから制御してみました。

 ブラシレスモーターは普通のDCモーターと違い、通電すれば回転するというわけではないため、マイコンから制御するにはハード、ソフトともに工夫が必要です。がESCを使用すればハード、ソフトともに随分敷居が低くなるため、Arduino + ESC(Electronic Speed Controller)の組み合わせでブラシレスモーターを制御してみました。

 

 今回はいろいろと試すことが目的でとりあえず動けばいいということで、ノーブランド品のESC+ブラシレスモーターのセット品をamazonで購入しました。

ブラシレスモーターとESC

 プロペラ + ブラシレスモーター + ESC のセットで1100円程度と非常に安いです。あまりに安いので動作が心配です。型番も何もわかりません。製品マニュアルも付属していないため、使い方はさっぱり不明です。ただまあ一般的な使用方法は同じだろうと、ネットで情報集めて動作確認です。

 

 まずはArduino、モーター、ECSの結線。ECSにはBEC(Battery Eliminator Circuit)端子もありましたが、今回Arduinoの電源はモータと分けて別電源を準備してます。ESCから3本出ている線をモーターへ、太目の2本線は電源±へ、細目の線はArduinoへ繋ぎます。

 

 ESCへの制御信号は基本的に、周期20ms程度、パルス幅はだいたい1000μs~2000μsを出力すれば良いようです。まただいたいのESCは、通電時(電源On時)にパルス幅Maxを入力、その後Minを入力すればキャリブレーションができる仕様となっているようです。

 

 早速動作確認してみました。シリアルモニタの入力からパルス幅が可変できるスケッチを、事前にArduinoへ書き込んでおきます。

 

スポンサーリンク

 いきなりプロペラを付けると、非常に危険な感じでしたので最初は付けずに動作確認です。
ブラシレスモータinArduino

 回転が分かるようにティッシュを付けてます。

 

 ESCへ通電後、Maxパルス幅をESCへ入力。モーターからピロピロ、ピッピという感じのビープ音。その後、Minパルス幅を入力するとピッピッピーという感じのビープ音が・・・。恐らくキャリブレーション完了?。

 

その後、パルス幅を変更してみるとモーターが回転しました。

ブラシレスモータinArduino

 

 Arduinoからの信号に合わせて、スピードコントロールも問題無くできました。スピードコントロールのレスポンスは悪い感じでしょうか?といっても音でしか判断できないためよくわかりません。

 

 もう少し苦戦するかと思ったのですが、わりとあっさり Arduino からの制御は成功しました。

 

こちらでもう少し詳しく解説した記事をアップしました。

 

コメント

タイトルとURLをコピーしました