« 【Arduino】ブラシレスモーターのホールICを読む | トップページ | 【Arduino】OpenLogを使ってみる »

2017/06/04

【Arduino】ブラシレスモーター回転数を計測

 ブラシレスモーターのホールセンサーを問題なくArduinoで読めたので、ブラシレスモータの回転数を計測してみます。

 今回の実験装置はこちら。

Img_3707

 ヨコモのBL-RS2のコンボセットを使って、モーターの回転数を計測してみます。

 プログラムはこちら。

◇MSTimer_rpm_test01

 

#include  <MsTimer2.h>

volatile long cnt = 0; //カウント用の変数
int val = 0;  //電圧値格納用
boolean state  = false; //状態判定用

void flash() {    //タイマー割り込みで回転数を表示させる
  cnt = cnt*100;        // cnt*100 = rpm
  Serial.print(cnt);
  Serial.println("rpm");  
  cnt = 0; 
}

void setup() {
  pinMode(14, INPUT);           // ピンを入力に設定
  digitalWrite(14, HIGH);       // プルアップ抵抗を有効に

  MsTimer2::set(600, flash); // 600msごとに出力
  MsTimer2::start();

  Serial.begin(9600) ;
}

void loop() {
  val = analogRead(0);  //ホールICの電圧を読む

  if (val > 512 && state == false){
    state = true;
    cnt++;
  }
  if (val < 256 && state == true) {
    state = false;
  }
}

   

◇結果

D004

   


 モーターの回転数は17800rpmくらい。  このモーターのKV値が2700なので、リフェだとおおよそ妥当な値。


 ということで、ブラシレスモーターの回転数は簡単に計測できることがわかりました。

|

« 【Arduino】ブラシレスモーターのホールICを読む | トップページ | 【Arduino】OpenLogを使ってみる »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/29844/65370136

この記事へのトラックバック一覧です: 【Arduino】ブラシレスモーター回転数を計測:

« 【Arduino】ブラシレスモーターのホールICを読む | トップページ | 【Arduino】OpenLogを使ってみる »