影片動作依序為 1.順時針 2.剎車 3.逆時針 4.停止
既上篇技術文L298N DC馬達驅動模組
已經打算使用Arduino控制DC馬達,理由就不再贅述
arduino UNO,請孤狗可找到板子資料
驅動電路接線
總接線
以下是程式資料,也可到此處下載-驅動DC馬達 CG309A
//--------------------------------------
//程式名稱:驅動DC馬達 CG309A
//版本:V1.0
//配合硬體:L298N DC馬達驅動模組
//驗證Y/N:Y
//備註:驅動單顆直流馬達
//--------------------------------------
//--------------------------------------
//定義區
const byte speed = 250; //速度設定 0~255
const byte ENA = 9; //請選可輸出pwm的腳位
const byte INA1 =7;
const byte INA2 =6;
//--------------------------------------
//--------------------------------------
//初始化區
void setup(){
pinMode(INA1,OUTPUT);
pinMode(INA2,OUTPUT);
}
//--------------------------------------
//--------------------------------------
//主程式區
void loop(){
dcMFO(); //順轉
delay(2000);
dcMBrake(); //剎車
delay(2000);
dcMRE(); //逆轉
delay(2000);
dcMStop(); //停止
delay(2000);
}
//--------------------------------------
//--------------------------------------
//函式區
//====================================
//馬達停止
void dcMStop(){
analogWrite(ENA,0);
}
//====================================
//====================================
//馬達啟動-正轉
void dcMFO(){
analogWrite(ENA,speed);
digitalWrite(INA1,HIGH);
digitalWrite(INA2,LOW);
}
//====================================
//====================================
//馬達啟動-正轉
void dcMRE(){
analogWrite(ENA,speed);
digitalWrite(INA1,LOW);
digitalWrite(INA2,HIGH);
}
//====================================
//====================================
//馬達剎車
void dcMBrake(){
analogWrite(ENA,speed);
digitalWrite(INA1,LOW); //LOW OR HIGH
digitalWrite(INA2,LOW); //LOW OR HIGH
}
//====================================
//--------------------------------------
以下是測試影片
順時針轉
逆時針轉
剎車 可看到影片是立刻停止
停止 可看到影片為停止後馬達軸心繼續滑行自然停止
留言列表