2016年10月10日 星期一

Arduino_馬達1

在生活中,許許多多的物品裡都有馬達的存在。馬達的尺寸和種類有好多種。

例如一般的直流馬達、伺服馬達、步進馬達等。今天要來試試連接最普遍常見

的小馬達。

最簡單使用馬達的方式就是給它適當的電源,它就會不停地旋轉,將正負極交

 換,它就反轉。但想要進一步控制它,可以配合使用馬達控制器,便能做不同

的控制。這次是使用常見的L298N馬達控制器來驅動馬達,配合PWM輸出來調

控馬達的轉速。


電路圖:(馬達控制器L298N實物與電路圖上的有所不同)






程式碼:


const byte speed = 100;    // 馬達的PWM輸出值

const byte ENA = 6;  // 馬達A的致能接腳
const byte IN1 = 10;  // 馬達A的正反轉接腳
const byte IN2 = 9;  // 馬達A的正反轉接腳

void stop() {  // 馬達停止
 analogWrite(ENA, 0); // 馬達A的PWM輸出
}

void setup(){
   pinMode(IN1, OUTPUT);
   pinMode(IN2, OUTPUT);
}

void loop(){
  analogWrite(ENA, speed);
  digitalWrite(IN1, HIGH);   // 馬達正轉
  digitalWrite(IN2, LOW);
    delay(1000);     // 持續1秒
  stop();     // 暫停馬達0.5秒
  delay(500);
  analogWrite(ENA, speed);
  digitalWrite(IN1, LOW);   // 馬達反轉
  digitalWrite(IN2, HIGH);
    delay(1000);     // 持續1秒
  stop();     // 暫停馬達0.5秒
  delay(500);
}


 完成影片: