วิธีใช้ไดรเวอร์มอเตอร์ BTS7960 กับ Arduino

How to Use the BTS7960 Motor Driver with Arduino

BTS7960 เป็นโมดูลไดรเวอร์ H-Bridge Motor ที่ทรงพลังซึ่งสามารถรองรับกระแสไฟฟ้าและแรงดันไฟฟ้าสูงทำให้เหมาะสำหรับการขับขี่มอเตอร์ DC ขนาดใหญ่ มันให้การควบคุม PWM การป้องกันกระแสเกินและการกระจายความร้อนที่มีประสิทธิภาพทำให้เหมาะสำหรับหุ่นยนต์รถยนต์ RC และแอปพลิเคชันมอเตอร์พลังงานสูงอื่น ๆ บทช่วยสอนนี้จะแนะนำคุณผ่านการเชื่อมต่อ BTS7960 กับ Arduino

สิ่งที่คุณต้องการ

  1. BTS7960 โมดูลไดรเวอร์มอเตอร์
  2. คณะกรรมการ Arduino (เช่น Uno, Mega, Nano)
  3. มอเตอร์ DC
  4. แหล่งจ่ายไฟภายนอกสำหรับมอเตอร์ (ตรงกับแรงดันไฟฟ้าของมอเตอร์)
  5. สายจัมเปอร์
  6. คอมพิวเตอร์ที่ติดตั้ง Arduino IDE

ขั้นตอนที่ 1: ทำความเข้าใจกับหมุด BTS7960

โมดูล BTS7960 มีหมุดสำคัญต่อไปนี้:

เข็มหมุด การทำงาน
VCC แหล่งจ่ายไฟลอจิก (5V)
gnd พื้น
r_en เปิดใช้งานมอเตอร์ขวา (ใช้งานสูง)
l_en เปิดใช้งานมอเตอร์ซ้าย (ใช้งานสูง)
r_pwm อินพุต PWM มอเตอร์ขวา
l_pwm อินพุต PWM มอเตอร์ซ้าย
motor_a ขั้วมอเตอร์ก
motor_b ขั้วมอเตอร์ b
VMS แหล่งจ่ายไฟมอเตอร์ (อินพุตแรงดันไฟฟ้า)
gnd พื้น

ขั้นตอนที่ 2: เดินสาย BTS7960 ถึง Arduino

ด้านล่างนี้เป็นคู่มือการเดินสายสำหรับการเชื่อมต่อ BTS7960 กับ Arduino UNO:

bts7960 pin พิน Arduino
VCC 5V
gnd gnd
r_en พิน 4
l_en พิน 5
r_pwm พิน 6
l_pwm พิน 7
motor_a ขั้วมอเตอร์ก
motor_b ขั้วมอเตอร์ b
VMS พลังงานมอเตอร์ (+)
gnd พลังงานมอเตอร์ (-)

บันทึก: ตรวจสอบให้แน่ใจว่าแหล่งจ่ายไฟภายนอกของคุณตรงกับแรงดันไฟฟ้าและข้อกำหนดปัจจุบันของมอเตอร์ของคุณ

ขั้นตอนที่ 3: อัปโหลดรหัส

นี่คือรหัสตัวอย่างเพื่อควบคุมทิศทางและความเร็วของมอเตอร์:

#define R_EN 4
#define L_EN 5
#define R_PWM 6
#define L_PWM 7

void setup() {
  pinMode(R_EN, OUTPUT);
  pinMode(L_EN, OUTPUT);
  pinMode(R_PWM, OUTPUT);
  pinMode(L_PWM, OUTPUT);

  Serial.begin(9600);
  Serial.println("BTS7960 Motor Driver Test");
}

void loop() {
  // Forward motion
  digitalWrite(R_EN, HIGH);
  digitalWrite(L_EN, LOW);
  analogWrite(R_PWM, 150); // Set speed (0-255)
  analogWrite(L_PWM, 0);
  delay(2000);

  // Stop
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, LOW);
  analogWrite(R_PWM, 0);
  analogWrite(L_PWM, 0);
  delay(1000);

  // Reverse motion
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, HIGH);
  analogWrite(R_PWM, 0);
  analogWrite(L_PWM, 150); // Set speed (0-255)
  delay(2000);

  // Stop
  digitalWrite(R_EN, LOW);
  digitalWrite(L_EN, LOW);
  analogWrite(R_PWM, 0);
  analogWrite(L_PWM, 0);
  delay(1000);
}

ขั้นตอนที่ 4: ทดสอบการตั้งค่า

  1. เชื่อมต่อ Arduino ของคุณกับคอมพิวเตอร์ของคุณผ่าน USB
  2. เปิด Arduino IDE และเลือกที่ถูกต้อง กระดาน และ ท่าเรือ จาก เครื่องมือ เมนู.
  3. อัปโหลดรหัสโดยคลิกที่ อัพโหลด ปุ่ม.
  4. เมื่ออัปโหลดรหัสมอเตอร์จะสลับระหว่างการเคลื่อนที่ไปข้างหน้าและย้อนกลับโดยมีการหยุดชั่วคราวในระหว่าง

การแก้ไขปัญหา

  • มอเตอร์ไม่หมุน: ตรวจสอบให้แน่ใจว่าแหล่งจ่ายไฟมอเตอร์ของคุณเชื่อมต่อและตรงกับข้อกำหนดของแรงดันไฟฟ้าของมอเตอร์
  • การเคลื่อนไหวที่ผิดปกติ: ตรวจสอบการเชื่อมต่อทั้งหมดโดยเฉพาะขั้วมอเตอร์และพิน PWM
  • ความร้อนสูงเกินไป: หากผู้ขับขี่มอเตอร์ร้อนเกินไปตรวจสอบให้แน่ใจว่าการกระจายความร้อนที่เหมาะสมและตรวจสอบว่ากระแสของมอเตอร์ไม่เกินคะแนนของโมดูล

แอปพลิเคชันของ BTS7960

  1. ยานพาหนะหุ่นยนต์
  2. ระบบสายพานลำเลียง
  3. ประตูเครื่องยนต์
  4. การควบคุมมอเตอร์พลังงานสูงในการตั้งค่าอุตสาหกรรม

บทสรุป

คุณประสบความสำเร็จในการเชื่อมต่อไดรเวอร์ BTS7960 ด้วย Arduino และควบคุมมอเตอร์ DC ไดรเวอร์อเนกประสงค์นี้เหมาะสำหรับแอพพลิเคชั่นที่ใช้พลังงานสูงซึ่งต้องการการควบคุมที่แม่นยำ ทดลองกับค่า PWM ที่แตกต่างกันเพื่อควบคุมความเร็วของมอเตอร์และสร้างโครงการเครื่องยนต์ของคุณเอง!

แสดงความคิดเห็น

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.