ブラシレスモータを動かす試みです。
※ネット情報かき集めて動かしたものの、充分な制御には至りませんでした(少なくともこの記事を書いている時点では)。
以下はわかったところまでの記事ですのであしからず。
目次:
経緯
以前DCサーボモータ(DC(Direct Current:直流))を調べていたところ、最近DC整流子モータは産業用に(特に新規には)あまり使われず、模型・ホビー用途が主流だとの情報に触れました。
(DCサーボモータの記事 →DCサーボモータをArduinoで動かす①とにかく動かす)
ところが模型・ホビー用途ですらも、整流子モータに替わってブラシレスモータ(ブラシレスモータをDCモータと呼ぶかどうかは意見が分かれるようですが)も使われるようです。
少なくとも産業用でモータを扱うわたしは整流子ではないモータについても経験値を積まなくてはこの先不味いかもしれません。
ネットで動かしている例をいくつか見かけので、できるところまで動かしてどのように使うものかを把握します(部材も手ごろに入手できそうです)。
ブラシレスモータとは
DC整流子モータはブラシ+整流子によるメカニカルな電流切り替え機構を使うモータです。モータ外部から直流を与えながらも、内部で回転に連動して電流切り替えを行います。
ブラシレスモータは電流切り替えをセンサの回転検知+外部制御で実現してます。モータ外部からの直流を外部で切り替えして与える(つまり交流)ことになるので、原理的にAC(Alternating Current:交流)モータとも言えそうです。
そんな原理上、直流を繋げば動くDC整流子モータに対して、ブラシレスモータには周辺回路が必要です。
それでもブラシ+整流子は使えば使うほど摩耗することが嫌われるため(産業用の例では分解・粉塵の清掃・部品交換など定期メンテナンスを要します)、最近ではACモータやブラシレスモータが普及しているようです。
使用する器材
器材接続
動かし方と注意
- Arduinoをモバイルバッテリー(パソコン可)に繋ぐことで電源ON
- 安定化電源(DC12V)ON。可変抵抗でA0入力は5V(最大)とする
- キャリブレーション開始される(モータから電子音が響く)
- 適切なタイミング(電子音で判別)で可変抵抗を最小に絞る(A0入力最小)
- 適切なタイミング(電子音で判別)で可変抵抗を中間に絞る(A0入力中間)?
- 適切なタイミング(電子音が消えた後)で可変抵抗を最大方向に捻る
- モータが可変抵抗(A0入力の大きさ)に応じた回転速度で回転する
Arduinoスケッチ
色々と不明なままではありますが、スケッチです。
#include<Servo.h> //ライブラリ「Servo.h」を呼び出しますint vrmpin = 0; // 変数「vrmpin」に”0”を代入Servo motor; //「motor」なるオブジェクトを作成void setup() {Serial.begin(9600); //9,600bpmでシリアルポートを開くmotor.attach(9); //Digital 9番ピンをオブジェクト「motor」の出力に設定}void loop() {int vrm = analogRead(vrmpin); //「vrmpin」(0番ピン(Analog))を「vrm」に読み込むvrm = map(vrm, 0, 1023, 0, 179); //「vrm」読み込み値を0~Serial.println(vrm); //「vrm」をシリアルで伝送motor.write(vrm); //オブジェクト「motor」に「vrm」を入力}
0 件のコメント:
コメントを投稿