วิธีใช้ MPU6050 accelerometer และ gyroscope กับ Arduino

How to Use the MPU6050 Accelerometer and Gyroscope with Arduino

MPU6050 เป็นเซ็นเซอร์ที่หลากหลายและราคาไม่แพงที่รวม accelerometer 3 แกนและไจโรสโคป 3 แกนเข้ากับแพ็คเกจเดียว มันสื่อสารผ่านอินเตอร์เฟส I2C และเหมาะสำหรับการติดตามการเคลื่อนไหวการปรับสมดุลหุ่นยนต์และการควบคุมตามท่าทาง บทช่วยสอนนี้จะแสดงวิธีการเชื่อมต่อ MPU6050 กับ Arduino

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

  1. โมดูล MPU6050
  2. คณะกรรมการ Arduino (เช่น Uno, Mega, Nano)
  3. กระดาน
  4. สายจัมเปอร์
  5. คอมพิวเตอร์ที่ติดตั้ง Arduino IDE

ขั้นตอนที่ 1: เดินสาย MPU6050 ไปยัง Arduino

MPU6050 ใช้โปรโตคอล I2C ซึ่งต้องการเพียงสองบรรทัดข้อมูลเท่านั้น: SDA (ข้อมูล) และ SCL (นาฬิกา). นี่คือการเชื่อมต่อทั่วไป:

MPU6050 PIN Arduino uno pin
VCC 5V
gnd gnd
SDA A4 (SDA)
SCL A5 (SCL)

บันทึก: ตรวจสอบ i2c pinout ของบอร์ด Arduino เฉพาะของคุณหากคุณใช้โมเดลอื่น

ขั้นตอนที่ 2: ติดตั้งไลบรารี MPU6050

เพื่อให้ง่ายต่อการเชื่อมต่อกับ MPU6050 เราจะใช้ไลบรารี "MPU6050"

  1. เปิด Arduino IDE
  2. ไป ร่าง > รวมห้องสมุด > จัดการห้องสมุด.
  3. ใน Library Manager ค้นหา "MPU6050 โดย Electronic Cats"
  4. เลือกไลบรารีและคลิก ติดตั้ง.

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

นี่คือตัวอย่างพื้นฐานในการอ่านข้อมูล accelerometer และ gyroscope จาก MPU6050:

#include <Wire.h>
#include <MPU6050.h>

MPU6050 mpu;

void setup() {
  Serial.begin(9600);
  Wire.begin();

  Serial.println("Initializing MPU6050...");
  if (!mpu.begin()) {
    Serial.println("Failed to find MPU6050 sensor!");
    while (1) {
      delay(10);
    }
  }
  Serial.println("MPU6050 Initialized.");
}

void loop() {
  mpu.update();

  Serial.print("Accel X: ");
  Serial.print(mpu.getAccX());
  Serial.print(" | Accel Y: ");
  Serial.print(mpu.getAccY());
  Serial.print(" | Accel Z: ");
  Serial.println(mpu.getAccZ());

  Serial.print("Gyro X: ");
  Serial.print(mpu.getGyroX());
  Serial.print(" | Gyro Y: ");
  Serial.print(mpu.getGyroY());
  Serial.print(" | Gyro Z: ");
  Serial.println(mpu.getGyroZ());

  delay(500);  // Update every 500ms
}

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

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

ทำความเข้าใจกับข้อมูล

  • accelerometer (Accel X, Y, Z): วัดการเร่งความเร็วเชิงเส้นในสามแกน
  • Gyroscope (Gyro X, Y, Z): วัดความเร็วเชิงมุม (ความเร็วในการหมุน) ประมาณสามแกน

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

  • ไม่พบเซ็นเซอร์: ตรวจสอบสายไฟอีกครั้งและตรวจสอบให้แน่ใจว่าสาย I2C เชื่อมต่ออย่างถูกต้อง
  • ไม่มีเอาต์พุตบนจอภาพอนุกรม: ตรวจสอบว่าอัตราการรับส่งข้อมูลตรงกับการตั้งค่ารหัส (9600)
  • การอ่านที่ไม่ถูกต้อง: รักษาระดับเซ็นเซอร์ในระหว่างการเริ่มต้นเพื่อป้องกันการดริฟท์

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

  1. ปรับสมดุลหุ่นยนต์
  2. การรับรู้ท่าทาง
  3. การติดตามการเคลื่อนไหวสำหรับ VR/AR
  4. อุปกรณ์ติดตามออกกำลังกาย

บทสรุป

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

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

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.